uawdijnntqw1x1x1
IP : 216.73.216.219
Hostname : webm009.cluster128.gra.hosting.ovh.net
Kernel : Linux webm009.cluster128.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
Disable Function : _dyuweyrj4,_dyuweyrj4r,dl
OS : Linux
PATH:
/
home
/
chauffn
/
vuzelia
/
2023
/
cf455
/
..
/
components
/
..
/
assets
/
..
/
cc5e2
/
administrator.zip
/
/
PKAA#][=6^CCmanifests/libraries/joomla.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="library"> <name>lib_joomla</name> <libraryname>joomla</libraryname> <version>13.1</version> <description>LIB_JOOMLA_XML_DESCRIPTION</description> <creationDate>2008-01</creationDate> <copyright>(C) 2008 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <author>Joomla! Project</author> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>https://www.joomla.org</authorUrl> <packager>Joomla!</packager> <packagerurl>https://www.joomla.org</packagerurl> <files folder="libraries"> <folder>compat</folder> <folder>joomla</folder> <folder>legacy</folder> <file>import.legacy.php</file> <file>import.php</file> <file>loader.php</file> <file>platform.php</file> </files> </extension> PKAA#]AO Q88manifests/libraries/phpass.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="library" method="upgrade"> <name>lib_phpass</name> <libraryname>phpass</libraryname> <description>LIB_PHPASS_XML_DESCRIPTION</description> <creationDate>2004-01</creationDate> <author>Solar Designer</author> <authorEmail>solar@openwall.com</authorEmail> <authorUrl>https://www.openwall.com/phpass/</authorUrl> <license>PD / GWC</license> <version>0.3</version> <packagerurl>https://www.openwall.com/phpass/</packagerurl> <files folder="phpass"> <file>PasswordHash.php</file> </files> </extension> PKAA#]K���rr+manifests/files/fr-FR.com_sppagebuilder.xmlnu�[���<?xml version="1.0" encoding="UTF-8" ?> <extension method="upgrade" type="file" version="3.6"> <name>SP Page Builder (fr-FR)</name> <creationDate>13 Apr 2017</creationDate> <author>JoomShaper</author> <authorEmail>info@joomshaper.com</authorEmail> <authorUrl>www.joomshaper.com</authorUrl> <copyright>Copyright (c)2009-2017</copyright> <description><![CDATA[<div><![CDATA[ <style type="text/css"> .sppb-installation-wrap{ padding: 20px 0 40px; overflow: hidden; } .sppb-installation-wrap .sppb-installation-left { float: left; width: 250px; margin-right: 15px; } .sppb-installation-wrap .sppb-installation-footer{ margin-top: 30px; } .sppb-installation-wrap .sppb-installation-footer a{ margin-right: 10px; } </style> <div class="sppb-installation-wrap row-fluid"> <div class="span4 sppb-installation-left span2"> <img src="../media/com_sppagebuilder/images/logo-pagebuilder.jpg" alt="SP Page Builder" /> </div> <!-- /.sppb-installation-left --> <div class="sppb-installation-right span8"> <div class="sppb-installation-texts"> <h2>SP Page Builder Pro</h2> <p>Trusted by 250,000+ people worldwide, SP Page Builder is an extremely powerful drag & drop design system.<br/> Whether you're a beginner or a professional, you must love taking control over your website design.</p> <p>With SP Page Builder, you can build a unique, stunning and functional site without coding a single line.<br/> Using the tool, anyone can build a professional quality site in minutes.</p> </div> <div class="sppb-installation-footer"> <div class="pagebuilder-links"> <a class="btn btn-success" href="index.php?option=com_sppagebuilder">Get Started</a> <a class="btn btn-info" href="index.php?option=com_sppagebuilder&task=page.add" target="_blank">Create a New Page</a> <a class="btn btn-warning" href="https://www.joomshaper.com/documentation/joomla-extensions/sp-page-builder-2-x" target="_blank">Documentation</a> </div> </div> </div> <!-- /.sppb-installation-right --> </div> <!-- /.sppb-installation-wrap -->]]></description> <version>1.0</version> <fileset> <files folder="admin" target="administrator/language/fr-FR/"> <file>fr-FR.com_sppagebuilder.ini</file> <file>fr-FR.com_sppagebuilder.sys.ini</file> <file>fr-FR.mod_sppagebuilder_admin_menu.ini</file> <file>fr-FR.mod_sppagebuilder_admin_menu.sys.ini</file> <file>fr-FR.mod_sppagebuilder_icons.ini</file> <file>fr-FR.mod_sppagebuilder_icons.sys.ini</file> </files> <files folder="site" target="language/fr-FR/"> <file>fr-FR.com_sppagebuilder.ini</file> </files> </fileset> </extension> PKAA#]��>4manifests/files/joomla.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="file" method="upgrade"> <name>files_joomla</name> <author>Joomla! Project</author> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <version>4.4.14</version> <creationDate>2025-09</creationDate> <description>FILES_JOOMLA_XML_DESCRIPTION</description> <scriptfile>administrator/components/com_admin/script.php</scriptfile> <update> <schemas> <schemapath type="mysql">administrator/components/com_admin/sql/updates/mysql</schemapath> <schemapath type="postgresql">administrator/components/com_admin/sql/updates/postgresql</schemapath> </schemas> </update> <fileset> <files> <folder>administrator</folder> <folder>api</folder> <folder>cache</folder> <folder>cli</folder> <folder>components</folder> <folder>images</folder> <folder>includes</folder> <folder>language</folder> <folder>layouts</folder> <folder>libraries</folder> <folder>media</folder> <folder>modules</folder> <folder>plugins</folder> <folder>templates</folder> <folder>tmp</folder> <file>htaccess.txt</file> <file>web.config.txt</file> <file>LICENSE.txt</file> <file>README.txt</file> <file>index.php</file> </files> </fileset> <updateservers> <server name="Joomla! Core" type="collection">https://update.joomla.org/core/list.xml</server> </updateservers> </extension> PKAA#]���b�� manifests/packages/pkg_en-GB.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="package" method="upgrade"> <name>English (en-GB) Language Pack</name> <packagename>en-GB</packagename> <version>4.4.14.1</version> <creationDate>2025-09</creationDate> <author>Joomla! Project</author> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>https://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> <url>https://github.com/joomla/joomla-cms</url> <packager>Joomla! Project</packager> <packagerurl>www.joomla.org</packagerurl> <description><![CDATA[en-GB language pack]]></description> <blockChildUninstall>true</blockChildUninstall> <files> <folder type="language" client="site" id="en-GB">language/en-GB</folder> <folder type="language" client="administrator" id="en-GB">administrator/language/en-GB</folder> <folder type="language" client="api" id="en-GB">api/language/en-GB</folder> </files> <updateservers> <server type="collection" priority="1" name="Accredited Joomla! Translations"> https://update.joomla.org/language/translationlist_4.xml </server> </updateservers> </extension> PKAA#]��#: manifests/packages/pkg_fr-FR.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="package" method="upgrade"> <name>French (fr-FR) Language pack</name> <packagename>fr-FR</packagename> <version>4.3.1.1</version> <creationDate>Mai 2023</creationDate> <author>Joomla! Project - French translation team</author> <authorEmail>traduction@joomla.fr</authorEmail> <authorUrl>www.joomla.fr</authorUrl> <copyright>Copyright (C) 2019 Open Source Matters, Inc.</copyright> <license>https://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> <url>https://github.com/joomla/joomla-cms</url> <packager>Joomla! Project - French translation team</packager> <packagerurl>www.joomla.fr</packagerurl> <description><![CDATA[<div style="text-align: left;"> <h3>Joomla! 4 Full French (fr-FR) Language Package - Version 4.3.1 v1</h3> <h3>Pack de langue Joomla! 4 français (fr-FR) complet - Version 4.3.1 v1</h3> <p><a href="https:/www.joomla.fr" target="_blank">www.joomla.fr</a> - <a href="mailto:traduction@joomla.fr">traduction@joomla.fr</a></p> </div>]]></description> <blockChildUninstall>true</blockChildUninstall> <files> <folder type="language" client="site" id="fr-FR">language/fr-FR</folder> <folder type="language" client="administrator" id="fr-FR">administrator/language/fr-FR</folder> <folder type="language" client="api" id="fr-FR">api/language/fr-FR</folder> </files> <updateservers> <server type="collection" priority="1" name="Traductions accréditées de Joomla!"> https://update.joomla.org/language/translationlist_4.xml </server> </updateservers> </extension> PKAA#]�� �dd7manifests/packages/akeebabackup/script.akeebabackup.phpnu�[���<?php /** * @package akeebabackup * @copyright Copyright (c)2006-2022 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 3, or later */ /** @noinspection PhpUnused */ defined('_JEXEC') || die; use Akeeba\Component\AkeebaBackup\Administrator\Model\UpgradeModel; use Joomla\CMS\Factory; use Joomla\CMS\Installer\Adapter\PackageAdapter; use Joomla\CMS\Installer\InstallerAdapter; use Joomla\CMS\Log\Log; use Joomla\Database\DatabaseDriver; use Joomla\Database\DatabaseInterface; /** * Akeeba Backup package extension installation script file. * * @see https://docs.joomla.org/Manifest_files#Script_file * @see UpgradeModel */ class Pkg_AkeebabackupInstallerScript extends \Joomla\CMS\Installer\InstallerScript { /** * @var DatabaseDriver|DatabaseInterface|null * @since 9.3.0 */ protected $dbo; protected $minimumPhp = '7.2.0'; protected $minimumJoomla = '4.0.0'; public function preflight($type, $parent) { if (!parent::preflight($type, $parent)) { return false; } $this->setDboFromAdapter($parent); // Do not run on uninstall. if ($type === 'uninstall') { return true; } define('AKEEBABACKUP_INSTALLATION_PRO', is_file($parent->getParent()->getPath('source') . '/com_akeebabackup-pro.zip')); return true; } /** * Called after any type of installation / uninstallation action. * * @param string $type Which action is happening (install|uninstall|discover_install|update) * @param PackageAdapter $parent The object responsible for running this script * * @return bool * @since 9.0.0 */ public function postflight(string $type, PackageAdapter $parent): bool { $this->setDboFromAdapter($parent); // Do not run on uninstall. if ($type === 'uninstall') { return true; } $model = $this->getUpgradeModel(); if (empty($model)) { return true; } return $model->postflight($type, $parent); } /** * Get the UpgradeModel of the installed component * * @return UpgradeModel|null The upgrade Model. NULL if it cannot be loaded. * @since 9.0.0 */ private function getUpgradeModel(): ?UpgradeModel { // Make sure the latest version of the Model file will be loaded, regardless of the OPcache state. $filePath = JPATH_ADMINISTRATOR . '/components/com_akeebabackup/src/Model/UpgradeModel.php'; if (function_exists('opcache_invalidate')) { opcache_invalidate($filePath = JPATH_ADMINISTRATOR . '/components/com_akeebabackup/src/Model/UpgradeModel.php'); } // Can I please load the model? if (!class_exists('\Akeeba\Component\AkeebaBackup\Administrator\Model\UpgradeModel')) { if (!file_exists($filePath) || !is_readable($filePath)) { return null; } /** @noinspection PhpIncludeInspection */ include_once $filePath; } if (!class_exists('\Akeeba\Component\AkeebaBackup\Administrator\Model\UpgradeModel')) { return null; } try { $upgradeModel = new UpgradeModel(); } catch (Throwable $e) { return null; } if (method_exists($upgradeModel, 'setDbo')) { $upgradeModel->setDbo($this->dbo ?? Factory::getContainer()->get('DatabaseDriver')); } return $upgradeModel; } /** * Set the database object from the installation adapter, if possible * * @param InstallerAdapter|mixed $adapter The installation adapter, hopefully. * * @since 9.3.0 * @return void */ private function setDboFromAdapter($adapter): void { $this->dbo = null; if (class_exists(InstallerAdapter::class) && ($adapter instanceof InstallerAdapter)) { /** * If this is Joomla 4.2+ the adapter has a protected getDatabase() method which we can access with the * magic property $adapter->db. On Joomla 4.1 and lower this is not available. So, we have to first figure * out if we can actually use the magic property... */ try { $refObj = new ReflectionObject($adapter); if ($refObj->hasMethod('getDatabase')) { $this->dbo = $adapter->db; return; } } catch (Throwable $e) { // If something breaks we will fall through } } $this->dbo = Factory::getContainer()->get('DatabaseDriver'); } }PKAA#]�V�manifests/packages/index.htmlnu�[���<!DOCTYPE html><title></title> PKAA#]�g�cuu'manifests/packages/pkg_akeebabackup.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <!--~ ~ @package akeebabackup ~ @copyright Copyright (c)2006-2022 Nicholas K. Dionysopoulos / Akeeba Ltd ~ @license GNU General Public License version 3, or later --> <extension version="3.9.0" type="package" method="upgrade"> <name>pkg_akeebabackup</name> <author>Nicholas K. Dionysopoulos</author> <creationDate>2022-10-10</creationDate> <packagename>akeebabackup</packagename> <version>9.3.3</version> <url>https://www.akeeba.com</url> <packager>Akeeba Ltd</packager> <packagerurl>https://www.akeeba.com</packagerurl> <copyright>Copyright (c)2006-2022 Akeeba Ltd / Nicholas K. Dionysopoulos</copyright> <license>GNU GPL v3 or later</license> <description>PKG_AKEEBABACKUP_XML_DESCRIPTION</description> <files> <file type="component" id="com_akeebabackup">com_akeebabackup-core.zip</file> <file type="plugin" group="quickicon" id="akeebabackup">plg_quickicon_akeebabackup.zip</file> </files> <languages folder="language"> <language tag="en-GB">en-GB/pkg_akeebabackup.sys.ini</language> </languages> <scriptfile>script.akeebabackup.php</scriptfile> <updateservers> <server type="extension" priority="1" name="Akeeba Backup Core for Joomla!">https://cdn.akeeba.com/updates/pkgakeebabackupcore.xml</server> </updateservers> </extension> PKAA#]m^���manifests/packages/pkg_jce.xmlnu�[���<?xml version="1.0" encoding="UTF-8" ?> <extension type="package" version="3.8" method="upgrade"> <name>PKG_JCE</name> <author>Ryan Demmer</author> <creationDate>10-02-2022</creationDate> <packagename>jce</packagename> <version>2.9.20</version> <url>https://www.joomlacontenteditor.net</url> <packager>Widget Factory Limited</packager> <packagerurl>https://www.joomlacontenteditor.net</packagerurl> <description>PKG_JCE_XML_DESCRIPTION</description> <updateservers> <server type="extension" priority="1" name="JCE Editor Package"> <![CDATA[https://cdn.joomlacontenteditor.net/updates/xml/editor/pkg_jce.xml]]> </server> </updateservers> <scriptfile>install.pkg.php</scriptfile> <files folder="packages"> <file type="component" id="com_jce">com_jce.zip</file> <file type="plugin" id="jce" group="editors">plg_editors_jce.zip</file> <file type="plugin" id="jce" group="content">plg_content_jce.zip</file> <file type="plugin" id="jce" group="extension">plg_extension_jce.zip</file> <file type="plugin" id="mediajce" group="fields">plg_fields_mediajce.zip</file> <file type="plugin" id="jce" group="installer">plg_installer_jce.zip</file> <file type="plugin" id="jce" group="quickicon">plg_quickicon_jce.zip</file> <file type="plugin" id="jce" group="system">plg_system_jce.zip</file> </files> <languages folder="language"> <language tag="en-GB">en-GB/en-GB.pkg_jce.sys.ini</language> </languages> <variant>core</variant> <compatibility> <version>3</version> <version>4</version> </compatibility> </extension>PKAA#]`��b�^�^&manifests/packages/jce/install.pkg.phpnu�[���<?php /** * @copyright Copyright (c) 2009-2021 Ryan Demmer. All rights reserved * @license GNU/GPL 2 or later - http://www.gnu.org/licenses/old-licenses/gpl-2.0.html * JCE is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses */ defined('JPATH_PLATFORM') or die('RESTRICTED'); class pkg_jceInstallerScript { private function addIndexfiles($paths) { jimport('joomla.filesystem.folder'); jimport('joomla.filesystem.file'); // get the base file $file = JPATH_ADMINISTRATOR . '/components/com_jce/index.html'; if (is_file($file)) { foreach ((array) $paths as $path) { if (is_dir($path)) { // admin component $folders = JFolder::folders($path, '.', true, true); foreach ($folders as $folder) { JFile::copy($file, $folder . '/' . basename($file)); } } } } } private function installProfiles() { include_once JPATH_ADMINISTRATOR . '/components/com_jce/helpers/profiles.php'; return JceProfilesHelper::installProfiles(); } public function install($installer) { // enable plugins $plugin = JTable::getInstance('extension'); $plugins = array( 'content' => 'jce', 'extension' => 'jce', 'installer' => 'jce', 'quickicon' => 'jce', 'system' => 'jce', 'fields' => 'mediajce', ); $parent = $installer->getParent(); foreach ($plugins as $folder => $element) { $id = $plugin->find(array('type' => 'plugin', 'folder' => $folder, 'element' => $element)); if ($id) { $plugin->load($id); $plugin->enabled = 1; $plugin->store(); } } // install profiles $this->installProfiles(); $language = JFactory::getLanguage(); $language->load('com_jce', JPATH_ADMINISTRATOR, null, true); $language->load('com_jce.sys', JPATH_ADMINISTRATOR, null, true); // set layout base path JLayoutHelper::$defaultBasePath = JPATH_ADMINISTRATOR . '/components/com_jce/layouts'; // override existing message $message = ''; $message .= '<div id="jce" class="mt-4 mb-4 p-4 card border-dark well" style="text-align:left;">'; $message .= ' <div class="card-header"><h1>' . JText::_('COM_JCE') . ' ' . $parent->manifest->version . '</h1></div>'; $message .= ' <div class="card-body">'; // variant messates if ((string) $parent->manifest->variant != 'pro') { $message .= JLayoutHelper::render('message.upgrade'); } else { // show core to pro upgrade message if ($parent->isUpgrade()) { $variant = (string) $parent->get('current_variant', 'core'); if ($variant == 'core') { $message .= JLayoutHelper::render('message.welcome'); } } } $message .= JText::_('COM_JCE_XML_DESCRIPTION'); $message .= ' </div>'; $message .= '</div>'; $parent->set('message', $message); // add index files to each folder $this->addIndexfiles(array( __DIR__, JPATH_SITE . '/components/com_jce', JPATH_PLUGINS . '/jce', )); return true; } private function checkTable() { $db = JFactory::getDBO(); $tables = $db->getTableList(); if (!empty($tables)) { // swap array values with keys, convert to lowercase and return array keys as values $tables = array_keys(array_change_key_case(array_flip($tables))); $app = JFactory::getApplication(); $match = str_replace('#__', strtolower($app->getCfg('dbprefix', '')), '#__wf_profiles'); return in_array($match, $tables); } // try with query $query = $db->getQuery(true); $query->select('COUNT(id)')->from('#__wf_profiles'); $db->setQuery($query); return $db->execute(); } public function uninstall() { $db = JFactory::getDBO(); if ($this->checkTable() === false) { return true; } $query = $db->getQuery(true); $query->select('COUNT(id)')->from('#__wf_profiles'); $db->setQuery($query); // profiles table is empty, remove... if ($db->loadResult() === 0) { $db->dropTable('#__wf_profiles', true); $db->execute(); } } public function update($installer) { return $this->install($installer); } protected function getCurrentVersion() { // get current package version $manifest = JPATH_ADMINISTRATOR . '/manifests/packages/pkg_jce.xml'; $version = 0; $variant = "core"; if (is_file($manifest)) { if ($xml = @simplexml_load_file($manifest)) { $version = (string) $xml->version; $variant = (string) $xml->variant; } } return array($version, $variant); } public function preflight($route, $installer) { // skip on uninstall etc. if ($route == 'remove' || $route == 'uninstall') { return true; } $parent = $installer->getParent(); $requirements = '<a href="https://www.joomlacontenteditor.net/support/documentation/editor/requirements" title="Editor Requirements" target="_blank" rel="noopener">https://www.joomlacontenteditor.net/support/documentation/editor/requirements</a>'; // php version check if (version_compare(PHP_VERSION, '7.4', 'lt')) { JFactory::getApplication()->enqueueMessage('JCE requires PHP 7.4 or later - ' . $requirements . '. Although JCE may function with earlier PHP versions, we recommend you upgrade your server as soon as possible, as future versions of JCE will not install on sites running obsolete versions of PHP.'); } $jversion = new JVersion(); // joomla version check if (version_compare($jversion->getShortVersion(), '3.9', 'lt')) { throw new RuntimeException('JCE requires Joomla 3.9 or later - ' . $requirements); } // set current package version and variant list($version, $variant) = $this->getCurrentVersion(); // set current version $parent->set('current_version', $version); // set current variant $parent->set('current_variant', $variant); // core cannot be installed over pro if ($variant === "pro" && (string) $parent->manifest->variant === "core") { throw new RuntimeException('JCE Core cannot be installed over JCE Pro. Please install JCE Pro. To downgrade, please first uninstall JCE Pro.'); } // end here if not an upgrade if ($route != 'update') { return true; } $extension = JTable::getInstance('extension'); // disable content, system and quickicon plugins. This is to prevent errors if the install fails and some core files are missing foreach (array('content', 'system', 'quickicon') as $folder) { $plugin = $extension->find(array( 'type' => 'plugin', 'element' => 'jce', 'folder' => $folder, )); if ($plugin) { $extension->publish(null, 0); } } // disable legacy jcefilebrowser quickicon to remove when the install is finished $plugin = $extension->find(array( 'type' => 'plugin', 'element' => 'jcefilebrowser', 'folder' => 'quickicon', )); if ($plugin) { $extension->publish(null, 0); } } public function postflight($route, $installer) { $app = JFactory::getApplication(); $extension = JTable::getInstance('extension'); $parent = $installer->getParent(); $db = JFactory::getDBO(); JTable::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_jce/tables'); // remove legacy jcefilebrowser quickicon $plugin = JPluginHelper::getPlugin('quickicon', 'jcefilebrowser'); if ($plugin) { $inst = new JInstaller(); // try uninstall if (!$inst->uninstall('plugin', $plugin->id)) { if ($extension->load($plugin->id)) { $extension->publish(null, 0); } } } if ($route == 'update') { $version = (string) $parent->manifest->version; $current_version = (string) $parent->get('current_version'); // process core to pro upgrade - remove branding plugin if ((string) $parent->manifest->variant === "pro") { // remove branding plugin $branding = JPATH_SITE . '/components/com_jce/editor/tiny_mce/plugins/branding'; if (is_dir($branding)) { JFolder::delete($branding); } // clean up updates sites $query = $db->getQuery(true); $query->select('update_site_id')->from('#__update_sites'); $query->where($db->qn('location') . ' = ' . $db->q('https://cdn.joomlacontenteditor.net/updates/xml/editor/pkg_jce.xml')); $db->setQuery($query); $id = $db->loadResult(); if ($id) { JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_installer/models'); $model = JModelLegacy::getInstance('Updatesites', 'InstallerModel'); if ($model) { $model->delete(array($id)); } } } $theme = ''; // update toolbar_theme for 2.8.0 and 2.8.1 beta if (version_compare($current_version, '2.8.0', 'ge') && version_compare($current_version, '2.8.1', 'lt')) { $theme = 'modern'; } // update toolbar_theme for 2.7.x if (version_compare($current_version, '2.8', 'lt')) { $theme = 'default'; } // update toolbar_theme if one has been set if ($theme) { $table = JTable::getInstance('Profiles', 'JceTable'); $query = $db->getQuery(true); $query->select('*')->from('#__wf_profiles'); $db->setQuery($query); $profiles = $db->loadObjectList(); foreach ($profiles as $profile) { if (empty($profile->params)) { $profile->params = '{}'; } $data = json_decode($profile->params, true); if (false !== $data) { if (empty($data)) { $data = array(); } // no editor parameters set at all! if (!isset($data['editor'])) { $data['editor'] = array(); } $param = array( 'toolbar_theme' => $theme ); // add variant for "mobile" profile if ($profile->name === "Mobile") { $param['toolbar_theme'] .= '.touch'; } if (empty($data['editor']['toolbar_theme'])) { $data['editor']['toolbar_theme'] = $param['toolbar_theme']; if (!$table->load($profile->id)) { throw new Exception('Unable to update profile - ' . $profile->name); } $table->params = json_encode($data); if (!$table->store()) { throw new Exception('Unable to update profile - ' . $profile->name); } } } } } // enable content, system and quickicon plugins foreach (array('content', 'system', 'quickicon') as $folder) { $plugin = $extension->find(array( 'type' => 'plugin', 'element' => 'jce', 'folder' => $folder, )); if ($plugin) { $extension->publish(null, 1); } } // fix checkout_out table if (version_compare($current_version, '2.9.18', 'lt')) { $query = "ALTER TABLE #__wf_profiles CHANGE COLUMN " . $db->qn('checked_out') . " " . $db->qn('checked_out') . " INT UNSIGNED NULL"; $db->setQuery($query); $db->execute(); } // fix checked_out_time deafult value if (version_compare($current_version, '2.9.18', 'lt')) { $query = "ALTER TABLE #__wf_profiles CHANGE COLUMN " . $db->qn('checked_out_time') . " " . $db->qn('checked_out_time') . " DATETIME NULL DEFAULT NULL"; $db->setQuery($query); $db->execute(); } self::cleanupInstall($installer); } } protected static function cleanupInstall($installer) { $parent = $installer->getParent(); $current_version = $parent->get('current_version'); $admin = JPATH_ADMINISTRATOR . '/components/com_jce'; $site = JPATH_SITE . '/components/com_jce'; $folders = array(); $files = array(); $folders['2.6.38'] = array( // admin $admin . '/classes', $admin . '/elements', $admin . '/media/fonts', $admin . '/img/menu', $admin . '/views/preferences', $admin . '/views/users', // site $site . '/editor/elements', $site . '/editor/extensions/aggregator/vine', $site . '/editor/extensions/popups/window', // site - tinymce plugins $site . '/editor/tiny_mce/plugins/advlist/classes', $site . '/editor/tiny_mce/plugins/article/classes', $site . '/editor/tiny_mce/plugins/browser/classes', $site . '/editor/tiny_mce/plugins/caption/classes', $site . '/editor/tiny_mce/plugins/charmap/classes', $site . '/editor/tiny_mce/plugins/cleanup/classes', $site . '/editor/tiny_mce/plugins/clipboard/classes', $site . '/editor/tiny_mce/plugins/code/classes', $site . '/editor/tiny_mce/plugins/colorpicker/classes', $site . '/editor/tiny_mce/plugins/emotions/classes', $site . '/editor/tiny_mce/plugins/filemanager/classes', $site . '/editor/tiny_mce/plugins/fontcolor/classes', $site . '/editor/tiny_mce/plugins/fontselect/classes', $site . '/editor/tiny_mce/plugins/fontsizeselect/classes', $site . '/editor/tiny_mce/plugins/format/classes', $site . '/editor/tiny_mce/plugins/formatselect/classes', $site . '/editor/tiny_mce/plugins/iframe/classes', $site . '/editor/tiny_mce/plugins/imgmanager/classes', $site . '/editor/tiny_mce/plugins/imgmanager_ext/classes', $site . '/editor/tiny_mce/plugins/inlinepopups/classes', $site . '/editor/tiny_mce/plugins/link/classes', $site . '/editor/tiny_mce/plugins/media/classes', $site . '/editor/tiny_mce/plugins/mediamanager/classes', $site . '/editor/tiny_mce/plugins/microdata/classes', $site . '/editor/tiny_mce/plugins/preview/classes', $site . '/editor/tiny_mce/plugins/searchreplace/classes', $site . '/editor/tiny_mce/plugins/source/classes', $site . '/editor/tiny_mce/plugins/style/classes', $site . '/editor/tiny_mce/plugins/styleselect/classes', $site . '/editor/tiny_mce/plugins/tabfocus/classes', $site . '/editor/tiny_mce/plugins/table/classes', $site . '/editor/tiny_mce/plugins/templatemanager/classes', $site . '/editor/tiny_mce/plugins/textpattern/classes', $site . '/editor/tiny_mce/plugins/visualblocks/classes', $site . '/editor/tiny_mce/plugins/visualchars/classes', $site . '/editor/tiny_mce/plugins/xhtmlxtras/classes', ); // remove flexicontent if (!JComponentHelper::isInstalled('com_flexicontent')) { $files['2.7'] = array( $site . '/editor/extensions/links/flexicontentlinks.php', $site . '/editor/extensions/links/flexicontentlinks.xml', ); $folders['2.7'] = array( $site . '/editor/extensions/links/flexicontentlinks' ); } // remove inlinepopups $folders['2.7.13'] = array( $site . '/editor/tiny_mce/plugins/inlinepopups', ); // remove classpath / classbar $folders['2.8.0'] = array( $site . '/editor/tiny_mce/plugins/classpath', $site . '/editor/tiny_mce/plugins/classbar', ); // remove help files $folders['2.8.6'] = array( $admin . '/views/help' ); // remove mediaplayer $folders['2.8.11'] = array( $site . '/editor/libraries/mediaplayer' ); // delete img folder in Image Manager Extended $folders['2.9.1'] = array( $site . '/editor/tiny_mce/plugins/imgmanager_ext/img' ); // remove getid3 $folders['2.9.7'] = array( $site . '/editor/libraries/classes/vendor/getid3' ); // remove media folder $folders['2.9.17'] = array( $admin . '/media' ); // remove font manifest and window $files['2.9.18'] = array( $site . '/editor/libraries/fonts/selection.json', $site . '/editor/tiny_mce/plugins/browser/js/window.min.js' ); $files['2.6.38'] = array( $admin . '/install.php', $admin . '/install.script.php', // controller $admin . '/controller/preferences.php', $admin . '/controller/popups.php', $admin . '/controller/updates.php', // helpers $admin . '/helpers/cacert.pem', $admin . '/helpers/editor.php', $admin . '/helpers/toolbar.php', $admin . '/helpers/updates.php', $admin . '/helpers/xml.php', // includes $admin . '/includes/loader.php', // css $admin . '/media/css/cpanel.css', $admin . '/media/css/legacy.min.css', $admin . '/media/css/module.css', $admin . '/media/css/preferences.css', $admin . '/media/css/updates.css', $admin . '/media/css/users.css', // js $admin . '/media/js/cpanel.js', $admin . '/media/js/jce.js', $admin . '/media/js/preferences.js', $admin . '/media/js/updates.js', $admin . '/media/js/users.js', // models $admin . '/models/commands.json', $admin . '/models/config.xml', $admin . '/models/cpanel.xml', $admin . '/models/model.php', $admin . '/models/plugins.json', $admin . '/models/plugins.php', $admin . '/models/preferences.php', $admin . '/models/preferences.xml', $admin . '/models/pro.json', $admin . '/models/updates.php', $admin . '/models/users.php', // views $admin . '/views/cpanel/tmpl/default_pro_footer.php', $admin . '/views/profiles/tmpl/form_editor.php', $admin . '/views/profiles/tmpl/form_features.php', $admin . '/views/profiles/tmpl/form_plugin.php', $admin . '/views/profiles/tmpl/form_setup.php', $admin . '/views/profiles/tmpl/form.php', // site - extensions $site . '/editor/extensions/aggregator/vine.php', $site . '/editor/extensions/aggregator/vine.xml', $site . '/editor/extensions/popups/window.php', $site . '/editor/extensions/popups/window.xml', // site - libraries $site . '/editor/libraries/classes/token.php', // site - fonts $site . '/editor/libraries/fonts/fontawesome-webfont.eot', $site . '/editor/libraries/fonts/fontawesome-webfont.woff', // sites - img $site . '/editor/libraries/img/cloud.png', $site . '/editor/libraries/img/power.png', $site . '/editor/libraries/img/spacer.gif', // site - tinymce plugins $site . '/editor/tiny_mce/plugins/caption/licence.txt', $site . '/editor/tiny_mce/plugins/caption/README', $site . '/editor/tiny_mce/plugins/iframe/licence.txt', $site . '/editor/tiny_mce/plugins/imgmanager_ext/install.php', $site . '/editor/tiny_mce/plugins/imgmanager_ext/licence.txt', $site . '/editor/tiny_mce/plugins/imgmanager_ext/README', $site . '/editor/tiny_mce/plugins/mediamanager/README', $site . '/editor/tiny_mce/plugins/spellchecker/classes/config.php', $site . '/editor/tiny_mce/plugins/templatemanager/licence.txt', $site . '/editor/tiny_mce/plugins/templatemanager/README', ); // remove help files $files['2.8.6'] = array( $admin . '/controller/help.php', $admin . '/models/help.php' ); $files['2.8.11'] = array( $admin . '/views/cpanel/default_pro.php' ); foreach ($folders as $version => $list) { // version check if (version_compare($version, $current_version, 'gt')) { continue; } foreach ($list as $folder) { if (!@is_dir($folder)) { continue; } $items = JFolder::files($folder, '.', false, true, array(), array()); foreach ($items as $file) { if (!@unlink($file)) { try { JFile::delete($file); } catch (Exception $e) {} } } $items = JFolder::folders($folder, '.', false, true, array(), array()); foreach ($items as $dir) { if (!@rmdir($dir)) { try { JFolder::delete($dir); } catch (Exception $e) {} } } if (!@rmdir($folder)) { try { JFolder::delete($folder); } catch (Exception $e) {} } } } foreach ($files as $version => $list) { // version check if (version_compare($version, $current_version, 'gt')) { continue; } foreach ($list as $file) { if (!@file_exists($file)) { continue; } if (@unlink($file)) { continue; } try { JFile::delete($file); } catch (Exception $e) {} } } } } PKAA#]mrPТ�$manifests/packages/pkg_BaGallery.xmlnu�[���<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <extension type="package" version="3.0" method="upgrade"> <name>BaGallery</name> <creationDate>18 June 2015</creationDate> <packagename>BaGallery</packagename> <author>Balbooa</author> <copyright>Balbooa 2017</copyright> <license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license> <authorEmail>support@balbooa.com</authorEmail> <authorUrl>http://balbooa.com</authorUrl> <version>2.3.4</version> <packager>Balbooa</packager> <packagerurl>support@balbooa.com</packagerurl> <description>Gallery successfully installed and published.</description> <updateservers> <server type="extension" name="BaGallery">https://www.balbooa.com/updates/bagallery/joomla_gallery_update.xml</server> </updateservers> <files folder="packages"> <file type="component" id="com_bagallery">com_bagallery.zip</file> <file type="plugin" id="bagallery" group="editors-xtd">plg_content_galleryshortcode.zip</file> <file type="plugin" id="bagallery" group="system">plg_system_gallery.zip</file> </files> <scriptfile>script.php</scriptfile> </extension>PKAA#]wK=='manifests/packages/BaGallery/script.phpnu�[���<?php /** * @package BaGallery * @author Balbooa http://www.balbooa.com/ * @copyright Copyright @ Balbooa * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ defined('_JEXEC') or die; class pkg_bagalleryInstallerScript { public function install($parent) {} public function uninstall($parent) { } public function update($parent) {} public function preflight($type, $parent) {} public function postflight($type, $parent) { $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->update('#__extensions') ->set('enabled = 1') ->where('element='.$db->quote('bagallery')) ->where('folder='.$db->quote('editors-xtd')); $db->setQuery($query); $db->execute(); $query = $db->getQuery(true); $query->update('#__extensions') ->set('enabled = 1') ->where('element='.$db->quote('bagallery')) ->where('folder='.$db->quote('system')); $db->setQuery($query); $db->execute(); $conf = JFactory::getConfig(); $options = array( 'defaultgroup' => '', 'storage' => $conf->get('cache_handler', ''), 'caching' => true, 'cachebase' => $conf->get('cache_path', JPATH_SITE . '/cache') ); $cache = JCache::getInstance('', $options); $data = $cache->getAll(); if ($data) { foreach ($data as $item) { $cache->clean($item->group); } } $cache = JFactory::getCache(''); $cache->gc(); } }PKAA#]�ɮ�22templates/system/index.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Template.system * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; include __DIR__ . '/component.php'; PKAA#]���� � templates/system/error.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Template.system * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; /** @var \Joomla\CMS\Document\ErrorDocument $this */ // Load template CSS file $this->getWebAssetManager()->registerAndUseStyle('template.system.error', 'media/system/css/system-admin-error.min.css'); // Set page title $this->setTitle($this->error->getCode() . ' - ' . htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8')); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body> <table class="outline"> <tr> <td style="text-align: center;"> <h1><?php echo $this->error->getCode() ?> - <?php echo Text::_('JERROR_AN_ERROR_HAS_OCCURRED'); ?></h1> </td> </tr> <tr> <td style="text-align: center;"> <p> <?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?> <?php if ($this->debug) : ?> <br><?php echo htmlspecialchars($this->error->getFile(), ENT_QUOTES, 'UTF-8');?>:<?php echo $this->error->getLine(); ?> <?php endif; ?> </p> <p><a href="<?php echo Route::_('index.php'); ?>"><?php echo Text::_('JGLOBAL_TPL_CPANEL_LINK_TEXT'); ?></a></p> <?php if ($this->debug) : ?> <div> <?php echo $this->renderBacktrace(); ?> <?php // Check if there are more Exceptions and render their data as well?> <?php if ($this->error->getPrevious()) : ?> <?php $loop = true; ?> <?php // Reference $this->_error here and in the loop as setError() assigns errors to this property and we need this for the backtrace to work correctly?> <?php // Make the first assignment to setError() outside the loop so the loop does not skip Exceptions?> <?php $this->setError($this->_error->getPrevious()); ?> <?php while ($loop === true) : ?> <p><strong><?php echo Text::_('JERROR_LAYOUT_PREVIOUS_ERROR'); ?></strong></p> <p> <?php echo htmlspecialchars($this->_error->getMessage(), ENT_QUOTES, 'UTF-8'); ?> <br><?php echo htmlspecialchars($this->_error->getFile(), ENT_QUOTES, 'UTF-8');?>:<?php echo $this->_error->getLine(); ?> </p> <?php echo $this->renderBacktrace(); ?> <?php $loop = $this->setError($this->_error->getPrevious()); ?> <?php endwhile; ?> <?php // Reset the main error object to the base error?> <?php $this->setError($this->error); ?> <?php endif; ?> </div> <?php endif; ?> </td> </tr> </table> <jdoc:include type="modules" name="debug" style="none" /> </body> </html> PKAA#];��#MMtemplates/system/component.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Template.system * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; /** @var \Joomla\CMS\Document\HtmlDocument $this */ ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="head" /> </head> <body class="contentpane"> <jdoc:include type="message" /> <jdoc:include type="component" /> </body> </html> PKAA#][q����"templates/atum/templateDetails.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="template" client="administrator"> <name>atum</name> <version>1.0</version> <creationDate>2016-09</creationDate> <author>Joomla! Project</author> <authorEmail>admin@joomla.org</authorEmail> <copyright>(C) 2016 Open Source Matters, Inc.</copyright> <description>TPL_ATUM_XML_DESCRIPTION</description> <inheritable>1</inheritable> <files> <filename>component.php</filename> <filename>cpanel.php</filename> <filename>error.php</filename> <filename>error_full.php</filename> <filename>error_login.php</filename> <filename>index.php</filename> <filename>joomla.asset.json</filename> <filename>login.php</filename> <filename>templateDetails.xml</filename> <folder>html</folder> </files> <media destination="templates/administrator/atum" folder="media"> <folder>js</folder> <folder>css</folder> <folder>scss</folder> <folder>images</folder> </media> <positions> <!-- used directly in the template --> <position>bottom</position> <position>debug</position> <position>menu</position> <position>sidebar</position> <position>status</position> <position>title</position> <position>top</position> <position>toolbar</position> <!-- used directly in a component and included here so the position will appear in the list of available positions --> <position>cpanel</position> <position>icon</position> <position>login</position> <position>customtop</position> </positions> <languages folder="language"> <language tag="en-GB">en-GB/tpl_atum.ini</language> <language tag="en-GB">en-GB/tpl_atum.sys.ini</language> </languages> <config> <fields name="params"> <fieldset name="colors" label="TPL_ATUM_COLORS_SETTINGS_LABEL"> <field name="hue" type="color" label="TPL_ATUM_COLORS_HUE" format="hue" control="slider" preview="true" saveFormat="hsl" default="hsl(214,63%,20%)" /> <field name="bg-light" type="color" label="TPL_ATUM_COLORS_SETTINGS_BG_LIGHT_LABEL" default="#f0f4fb" filter="color" /> <field name="text-dark" type="color" label="TPL_ATUM_COLORS_SETTINGS_TEXT_DARK_LABEL" default="#495057" filter="color" /> <field name="text-light" type="color" label="TPL_ATUM_COLORS_SETTINGS_TEXT_LIGHT_LABEL" default="#ffffff" filter="color" /> <field name="link-color" type="color" label="TPL_ATUM_COLORS_SETTINGS_LINK_COLOR_LABEL" default="#2a69b8" filter="color" /> <field name="special-color" type="color" label="TPL_ATUM_COLORS_SETTINGS_SPECIAL_COLOR_LABEL" default="#001B4C" filter="color" /> <field name="monochrome" type="radio" label="TPL_ATUM_COLORS_SETTINGS_MONOCHROME_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="images" label="TPL_ATUM_IMAGE_SETTINGS_LABEL"> <fieldset name="loginLogo" label="TPL_ATUM_LOGIN_LOGO_LABEL"> <field name="loginLogo" type="media" schemes="http,https,ftp,ftps,data,file" validate="url" relative="true" label="TPL_ATUM_IMAGE_LABEL" /> <field name="loginLogoAlt" type="text" label="TPL_ATUM_LOGO_ALT_LABEL" /> <field name="emptyLoginLogoAlt" type="checkbox" label="TPL_ATUM_LOGO_ALT_EMPTY_LABEL" description="TPL_ATUM_LOGO_ALT_EMPTY_DESC" /> </fieldset> <fieldset name="logoBrandLarge" label="TPL_ATUM_SITE_LOGO_LABEL"> <field name="logoBrandLarge" type="media" schemes="http,https,ftp,ftps,data,file" validate="url" relative="true" label="TPL_ATUM_IMAGE_LABEL" /> <field name="logoBrandLargeAlt" type="text" label="TPL_ATUM_LOGO_ALT_LABEL" /> <field name="emptyLogoBrandLargeAlt" type="checkbox" label="TPL_ATUM_LOGO_ALT_EMPTY_LABEL" description="TPL_ATUM_LOGO_ALT_EMPTY_DESC" /> </fieldset> <fieldset name="logoBrandSmall" label="TPL_ATUM_SITE_LOGO_SMALL_LABEL"> <field name="logoBrandSmall" type="media" schemes="http,https,ftp,ftps,data,file" validate="url" relative="true" label="TPL_ATUM_IMAGE_LABEL" /> <field name="logoBrandSmallAlt" type="text" label="TPL_ATUM_LOGO_ALT_LABEL" /> <field name="emptyLogoBrandSmallAlt" type="checkbox" label="TPL_ATUM_LOGO_ALT_EMPTY_LABEL" description="TPL_ATUM_LOGO_ALT_EMPTY_DESC" /> </fieldset> </fieldset> </fields> </config> </extension> PKAA#]�5Y}��3templates/atum/html/layouts/chromes/header-item.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * * Module chrome for rendering the module in a submenu */ defined('_JEXEC') or die; $module = $displayData['module']; if ((string) $module->content === '') { return; } ?> <div class="header-item d-flex"> <?php echo $module->content; ?> </div> PKAA#]v�d|��,templates/atum/html/layouts/chromes/well.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; $module = $displayData['module']; $params = $displayData['params']; $attribs = $displayData['attribs']; if ((string) $module->content === '') { return; } $id = $module->id; // Permission checks $user = Factory::getUser(); $canEdit = $user->authorise('core.edit', 'com_modules.module.' . $id) && $user->authorise('core.manage', 'com_modules'); $canChange = $user->authorise('core.edit.state', 'com_modules.module.' . $id) && $user->authorise('core.manage', 'com_modules'); $moduleTag = $params->get('module_tag', 'div'); $bootstrapSize = (int) $params->get('bootstrap_size', 12); $moduleClass = $bootstrapSize ? 'col-md-' . $bootstrapSize : 'col-md-12'; $headerTag = htmlspecialchars($params->get('header_tag', 'h2'), ENT_QUOTES, 'UTF-8'); $moduleClassSfx = $params->get('moduleclass_sfx', ''); // Temporarily store header class in variable $headerClass = $params->get('header_class') ? ' class="' . htmlspecialchars($params->get('header_class'), ENT_QUOTES, 'UTF-8') . '"' : ''; // Get the module icon $headerIcon = $params->get('header_icon') ? '<span class="' . htmlspecialchars($params->get('header_icon'), ENT_QUOTES, 'UTF-8') . '" aria-hidden="true"></span>' : ''; ?> <div class="<?php echo $moduleClass; ?> module-wrapper"> <<?php echo $moduleTag; ?> class="card mb-3 <?php echo $moduleClassSfx; ?>"> <?php if ($canEdit || $canChange || $headerIcon || $module->showtitle) : ?> <div class="card-header"> <?php if ($canEdit || $canChange) : ?> <?php $dropdownPosition = Factory::getLanguage()->isRtl() ? 'start' : 'end'; ?> <div class="module-actions dropdown"> <button type="button" data-bs-toggle="dropdown" data-bs-display="static" aria-haspopup="true" aria-expanded="false" class="btn" id="dropdownMenuButton-<?php echo $id; ?>"> <span class="icon-cogs" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::sprintf('JACTION_EDIT_MODULE', $module->title); ?></span> </button> <div class="dropdown-menu dropdown-menu-<?php echo $dropdownPosition; ?>" aria-labelledby="dropdownMenuButton-<?php echo $id; ?>"> <?php if ($canEdit) : ?> <?php $uri = Uri::getInstance(); ?> <?php $url = Route::_('index.php?option=com_modules&task=module.edit&id=' . $id . '&return=' . base64_encode($uri)); ?> <a class="dropdown-item" href="<?php echo $url; ?>"><?php echo Text::_('JACTION_EDIT'); ?></a> <?php endif; ?> <?php if ($canChange) : ?> <button type="button" class="dropdown-item unpublish-module" data-module-id="<?php echo $id; ?>"><?php echo Text::_('JACTION_UNPUBLISH'); ?></button> <?php endif; ?> </div> </div> <?php endif; ?> <?php if ($module->showtitle) : ?> <<?php echo $headerTag; ?><?php echo $headerClass; ?>> <?php echo $headerIcon; ?> <?php echo htmlspecialchars($module->title, ENT_QUOTES, 'UTF-8'); ?> </<?php echo $headerTag; ?>> <?php endif; ?> </div> <?php endif; ?> <div class="card-body"> <?php echo $module->content; ?> </div> </<?php echo $moduleTag; ?>> </div> PKAA#]^��,templates/atum/html/layouts/chromes/body.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; $module = $displayData['module']; $params = $displayData['params']; if ((string) $module->content === '') { return; } $id = $module->id; // Permission checks $user = Factory::getUser(); $canEdit = $user->authorise('core.edit', 'com_modules.module.' . $id) && $user->authorise('core.manage', 'com_modules'); $canChange = $user->authorise('core.edit.state', 'com_modules.module.' . $id) && $user->authorise('core.manage', 'com_modules'); $moduleTag = $params->get('module_tag', 'div'); $bootstrapSize = (int) $params->get('bootstrap_size', 6); $moduleClass = $bootstrapSize ? 'col-md-' . $bootstrapSize : 'col-md-12'; $headerTag = htmlspecialchars($params->get('header_tag', 'h2'), ENT_QUOTES, 'UTF-8'); $moduleClassSfx = $params->get('moduleclass_sfx', ''); // Temporarily store header class in variable $headerClass = $params->get('header_class'); $headerClass = $headerClass ? ' ' . htmlspecialchars($headerClass, ENT_QUOTES, 'UTF-8') : ''; ?> <div class="<?php echo $moduleClass; ?> module-wrapper"> <<?php echo $moduleTag; ?> class="card pt-3<?php echo $moduleClassSfx; ?>"> <?php if ($canEdit || $canChange) : ?> <?php $dropdownPosition = Factory::getLanguage()->isRtl() ? 'start' : 'end'; ?> <div class="module-actions dropdown"> <button type="button" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="btn" id="dropdownMenuButton-<?php echo $id; ?>"> <span class="icon-cogs" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::sprintf('JACTION_EDIT_MODULE', $module->title); ?></span> </button> <div class="dropdown-menu dropdown-menu-<?php echo $dropdownPosition; ?>" aria-labelledby="dropdownMenuButton-<?php echo $id; ?>"> <?php if ($canEdit) : ?> <?php $uri = Uri::getInstance(); ?> <?php $url = Route::_('index.php?option=com_modules&task=module.edit&id=' . $id . '&return=' . base64_encode($uri)); ?> <a class="dropdown-item" href="<?php echo $url; ?>"><?php echo Text::_('JACTION_EDIT'); ?></a> <?php endif; ?> <?php if ($canChange) : ?> <button type="button" class="dropdown-item unpublish-module" data-module-id="<?php echo $id; ?>"><?php echo Text::_('JACTION_UNPUBLISH'); ?></button> <?php endif; ?> </div> </div> <?php endif; ?> <?php if ($module->showtitle) : ?> <<?php echo $headerTag; ?> class="card-header<?php echo $headerClass; ?>"><?php echo $module->title; ?></<?php echo $headerTag; ?>> <?php endif; ?> <div class="module-body"> <?php echo $module->content; ?> </div> </<?php echo $moduleTag; ?>> </div> PKAA#]�w�-templates/atum/html/layouts/chromes/title.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * * Module chrome for rendering the module in a submenu */ defined('_JEXEC') or die; $module = $displayData['module']; if ((string) $module->content === '') { return; } ?> <div class="card-header"> <h6><?php echo $module->title; ?></h6> </div> <?php echo $module->content; ?> PKAA#]�< �gg&templates/atum/html/layouts/status.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * * Module chrome for rendering the module in a submenu */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Text; $modulePosition = $displayData['modules']; $renderer = Factory::getDocument()->loadRenderer('module'); $modules = ModuleHelper::getModules($modulePosition); $moduleHtml = []; $moduleCollapsedHtml = []; foreach ($modules as $key => $mod) { $out = $renderer->render($mod); if ($out !== '') { if (strpos($out, 'data-bs-toggle="modal"') !== false) { $dom = new \DOMDocument(); $dom->loadHTML('<?xml encoding="utf-8" ?>' . $out); $els = $dom->getElementsByTagName('a'); if ($els[0]) { $moduleCollapsedHtml[] = $dom->saveHTML($els[0]); } else { $moduleCollapsedHtml[] = $out; } } else { $moduleCollapsedHtml[] = $out; } $moduleHtml[] = $out; } } ?> <div class="header-items d-flex ms-auto"> <?php foreach ($moduleHtml as $mod) { echo '<div class="header-item">' . $mod . '</div>'; } ?> <div class="header-more d-none" id="header-more-items" > <button class="header-more-btn dropdown-toggle" type="button" title="<?php echo Text::_('TPL_ATUM_MORE_ELEMENTS'); ?>" data-bs-toggle="dropdown" aria-expanded="false"> <div class="header-item-icon"><span class="icon-ellipsis-h" aria-hidden="true"></span></div> <div class="visually-hidden"><?php echo Text::_('TPL_ATUM_MORE_ELEMENTS'); ?></div> </button> <div class="header-dd-items dropdown-menu"> <?php foreach ($moduleCollapsedHtml as $key => $mod) { echo '<div class="header-dd-item dropdown-item" data-item="' . $key . '">' . $mod . '</div>'; } ?> </div> </div> </div> PKAA#]v?|%|%templates/atum/index.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * @copyright (C) 2016 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @since 4.0.0 */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; /** @var \Joomla\CMS\Document\HtmlDocument $this */ $app = Factory::getApplication(); $input = $app->getInput(); $wa = $this->getWebAssetManager(); // Detecting Active Variables $option = $input->get('option', ''); $view = $input->get('view', ''); $layout = $input->get('layout', 'default'); $task = $input->get('task', 'display'); $cpanel = $option === 'com_cpanel' || ($option === 'com_admin' && $view === 'help'); $hiddenMenu = $app->getInput()->get('hidemainmenu'); $sidebarState = $input->cookie->get('atumSidebarState', ''); // Getting user accessibility settings $a11y_mono = (bool) $app->getIdentity()->getParam('a11y_mono', ''); $a11y_contrast = (bool) $app->getIdentity()->getParam('a11y_contrast', ''); $a11y_highlight = (bool) $app->getIdentity()->getParam('a11y_highlight', ''); $a11y_font = (bool) $app->getIdentity()->getParam('a11y_font', ''); // Browsers support SVG favicons $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']); $this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']); $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']); // Template params $logoBrandLarge = $this->params->get('logoBrandLarge') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandLarge'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-large.svg'; $logoBrandSmall = $this->params->get('logoBrandSmall') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandSmall'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-small.svg'; $logoBrandLargeAlt = empty($this->params->get('logoBrandLargeAlt')) && empty($this->params->get('emptyLogoBrandLargeAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandLargeAlt', ''), ENT_COMPAT, 'UTF-8'); $logoBrandSmallAlt = empty($this->params->get('logoBrandSmallAlt')) && empty($this->params->get('emptyLogoBrandSmallAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandSmallAlt', ''), ENT_COMPAT, 'UTF-8'); // Get the hue value preg_match('#^hsla?\(([0-9]+)[\D]+([0-9]+)[\D]+([0-9]+)[\D]+([0-9](?:.\d+)?)?\)$#i', $this->params->get('hue', 'hsl(214, 63%, 20%)'), $matches); $linkColor = $this->params->get('link-color', '#2a69b8'); list($r, $g, $b) = sscanf($linkColor, "#%02x%02x%02x"); // Enable assets $wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')) ->useStyle('template.active.language') ->useStyle('template.user') ->addInlineStyle(':root { --hue: ' . $matches[1] . '; --template-bg-light: ' . $this->params->get('bg-light', '#f0f4fb') . '; --template-text-dark: ' . $this->params->get('text-dark', '#495057') . '; --template-text-light: ' . $this->params->get('text-light', '#ffffff') . '; --link-color: ' . $linkColor . '; --link-color-rgb: ' . $r . ',' . $g . ',' . $b . '; --template-special-color: ' . $this->params->get('special-color', '#001B4C') . '; }'); // Override 'template.active' asset to set correct ltr/rtl dependency $wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]); // Set some meta data $this->setMetaData('viewport', 'width=device-width, initial-scale=1'); $monochrome = (bool) $this->params->get('monochrome'); Text::script('TPL_ATUM_MORE_ELEMENTS'); // @see administrator/templates/atum/html/layouts/status.php $statusModules = LayoutHelper::render('status', ['modules' => 'status']); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"<?php echo $a11y_font ? ' class="a11y_font"' : ''; ?>> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body class="admin <?php echo $option . ' view-' . $view . ' layout-' . $layout . ($task ? ' task-' . $task : '') . ($monochrome || $a11y_mono ? ' monochrome' : '') . ($a11y_contrast ? ' a11y_contrast' : '') . ($a11y_highlight ? ' a11y_highlight' : ''); ?>"> <noscript> <div class="alert alert-danger" role="alert"> <?php echo Text::_('JGLOBAL_WARNJAVASCRIPT'); ?> </div> </noscript> <jdoc:include type="modules" name="customtop" style="none" /> <?php // Header ?> <header id="header" class="header"> <div class="header-inside"> <div class="header-title d-flex"> <div class="d-flex align-items-center"> <?php // No home link in edit mode (so users can not jump out) and control panel (for a11y reasons) ?> <?php if ($hiddenMenu || $cpanel) : ?> <div class="logo <?php echo $sidebarState === 'closed' ? 'small' : ''; ?>"> <?php echo HTMLHelper::_('image', $logoBrandLarge, $logoBrandLargeAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> <?php echo HTMLHelper::_('image', $logoBrandSmall, $logoBrandSmallAlt, ['class' => 'logo-collapsed', 'loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> <?php else : ?> <a class="logo <?php echo $sidebarState === 'closed' ? 'small' : ''; ?>" href="<?php echo Route::_('index.php'); ?>"> <?php echo HTMLHelper::_('image', $logoBrandLarge, Text::_('TPL_ATUM_BACK_TO_CONTROL_PANEL'), ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> <?php echo HTMLHelper::_('image', $logoBrandSmall, Text::_('TPL_ATUM_BACK_TO_CONTROL_PANEL'), ['class' => 'logo-collapsed', 'loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </a> <?php endif; ?> </div> <jdoc:include type="modules" name="title" /> </div> <?php echo $statusModules; ?> </div> </header> <?php // Wrapper ?> <div id="wrapper" class="d-flex wrapper<?php echo $hiddenMenu ? '0' : ''; ?> <?php echo $sidebarState; ?>"> <?php // Sidebar ?> <?php if (!$hiddenMenu) : ?> <?php HTMLHelper::_('bootstrap.collapse', '.toggler-burger'); ?> <button class="navbar-toggler toggler-burger collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#sidebar-wrapper" aria-controls="sidebar-wrapper" aria-expanded="false" aria-label="<?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?>"> <span class="navbar-toggler-icon"></span> </button> <div id="sidebar-wrapper" class="sidebar-wrapper sidebar-menu" <?php echo $hiddenMenu ? 'data-hidden="' . $hiddenMenu . '"' : ''; ?>> <div id="sidebarmenu" class="sidebar-sticky"> <div class="sidebar-toggle item item-level-1"> <a id="menu-collapse" href="#" aria-label="<?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?>"> <span id="menu-collapse-icon" class="<?php echo $sidebarState === 'closed' ? 'icon-toggle-on' : 'icon-toggle-off'; ?> icon-fw" aria-hidden="true"></span> <span class="sidebar-item-title"><?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?></span> </a> </div> <jdoc:include type="modules" name="menu" style="none" /> </div> </div> <?php endif; ?> <?php // container-fluid ?> <div class="container-fluid container-main"> <?php if (!$cpanel) : ?> <?php // Subheader ?> <?php HTMLHelper::_('bootstrap.collapse', '.toggler-toolbar'); ?> <button class="navbar-toggler toggler-toolbar toggler-burger collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#subhead-container" aria-controls="subhead-container" aria-expanded="false" aria-label="<?php echo Text::_('TPL_ATUM_TOOLBAR'); ?>"> <span class="toggler-toolbar-icon"></span> </button> <div id="subhead-container" class="subhead mb-3"> <div class="row"> <div class="col-md-12"> <jdoc:include type="modules" name="toolbar" style="none" /> </div> </div> </div> <?php endif; ?> <section id="content" class="content"> <?php // Begin Content ?> <jdoc:include type="modules" name="top" style="html5" /> <div class="row"> <div class="col-md-12"> <main> <jdoc:include type="message" /> <jdoc:include type="component" /> </main> </div> <?php if ($this->countModules('bottom')) : ?> <jdoc:include type="modules" name="bottom" style="html5" /> <?php endif; ?> </div> <?php // End Content ?> </section> </div> </div> <jdoc:include type="modules" name="debug" style="none" /> </body> </html> PKAA#]�P�22templates/atum/cpanel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; require_once __DIR__ . '/index.php'; PKAA#]U<�6�� templates/atum/joomla.asset.jsonnu�[���{ "$schema": "https://developer.joomla.org/schemas/json-schema/web_assets.json", "name": "atum", "version": "4.0.0", "description": "This file contains details of the assets used by Atum, the default Joomla 4 administrator template.", "license": "GPL-2.0-or-later", "assets": [ { "name": "template.atum.ltr", "description": "The css file to be used when the site is left to right (LTR).", "type": "style", "uri": "template.min.css", "dependencies": [ "fontawesome" ] }, { "name": "template.atum.rtl", "description": "The css file to be used when the site is right to left (RTL).", "type": "style", "uri": "template-rtl.min.css", "dependencies": [ "fontawesome" ] }, { "name": "template.active.language", "description": "An asset to allow language specific css, eg 'language/[lang-CODE]/[lang-CODE].css', to use it as a dependency to the active template", "type": "style", "uri": "", "class": "LangActiveAssetItem", "client": "administrator", "dependencies": [ "template.active" ] }, { "name": "template.user", "description": "A file where a user can add their own css.", "type": "style", "uri": "user.css", "weight": 500, "dependencies": [ "template.active", "template.active.language" ] }, { "name": "template.atum-es5", "description": "The file containing the javascript for this template.", "type": "script", "uri": "media/templates/administrator/atum/js/template-es5.min.js", "dependencies": [ "core" ], "attributes": { "nomodule": true, "defer": true } }, { "name": "template.atum", "description": "The file containing the javascript for this template.", "type": "script", "uri": "media/templates/administrator/atum/js/template.min.js", "dependencies": [ "template.atum-es5" ], "attributes": { "type": "module" } }, { "name": "template.active", "description": "A dummy asset to allow extensions to use it as a dependency to the active template", "type": "script", "uri": "", "dependencies": [ "template.atum" ] }, { "name": "template.atum.base", "type": "preset", "dependencies": [ "core#script", "template.atum#script" ] }, { "name": "template.atum.ltr", "type": "preset", "dependencies": [ "template.atum.base", "template.atum.ltr#style" ] }, { "name": "template.atum.rtl", "type": "preset", "dependencies": [ "template.atum.base", "template.atum.rtl#style" ] }, { "name": "searchtools", "type": "style", "uri": "system/searchtools/searchtools.min.css" } ] } PKAA#]n�h�templates/atum/login.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * @copyright (C) 2016 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @since 4.0.0 */ defined('_JEXEC') or die; use Joomla\CMS\Environment\Browser; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Uri\Uri; /** @var \Joomla\CMS\Document\HtmlDocument $this */ $app = Factory::getApplication(); $input = $app->getInput(); $wa = $this->getWebAssetManager(); // Detecting Active Variables $option = $input->get('option', ''); $view = $input->get('view', ''); $layout = $input->get('layout', 'default'); $task = $input->get('task', 'display'); // Browsers support SVG favicons $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']); $this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']); $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']); // Template params $logoBrandLarge = $this->params->get('logoBrandLarge') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandLarge'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-large.svg'; $loginLogo = $this->params->get('loginLogo') ? Uri::root(false) . $this->params->get('loginLogo') : Uri::root(false) . 'media/templates/administrator/atum/images/logos/login.svg'; $logoBrandSmall = $this->params->get('logoBrandSmall') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandSmall'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-small.svg'; $logoBrandLargeAlt = empty($this->params->get('logoBrandLargeAlt')) && empty($this->params->get('emptyLogoBrandLargeAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandLargeAlt', ''), ENT_COMPAT, 'UTF-8'); $logoBrandSmallAlt = empty($this->params->get('logoBrandSmallAlt')) && empty($this->params->get('emptyLogoBrandSmallAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandSmallAlt', ''), ENT_COMPAT, 'UTF-8'); $loginLogoAlt = empty($this->params->get('loginLogoAlt')) && empty($this->params->get('emptyLoginLogoAlt')) ? '' : htmlspecialchars($this->params->get('loginLogoAlt', ''), ENT_COMPAT, 'UTF-8'); // Get the hue value preg_match('#^hsla?\(([0-9]+)[\D]+([0-9]+)[\D]+([0-9]+)[\D]+([0-9](?:.\d+)?)?\)$#i', $this->params->get('hue', 'hsl(214, 63%, 20%)'), $matches); // Enable assets $wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')) ->useStyle('template.active.language') ->useStyle('template.user') ->addInlineStyle(':root { --hue: ' . $matches[1] . '; --template-bg-light: ' . $this->params->get('bg-light', '#f0f4fb') . '; --template-text-dark: ' . $this->params->get('text-dark', '#495057') . '; --template-text-light: ' . $this->params->get('text-light', '#ffffff') . '; --link-color: ' . $this->params->get('link-color', '#2a69b8') . '; --template-special-color: ' . $this->params->get('special-color', '#001B4C') . '; }'); // Override 'template.active' asset to set correct ltr/rtl dependency $wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]); // Set some meta data $this->setMetaData('viewport', 'width=device-width, initial-scale=1'); $monochrome = (bool) $this->params->get('monochrome'); // Add cookie alert message Text::script('JGLOBAL_WARNCOOKIES'); // @see administrator/templates/atum/html/layouts/status.php $statusModules = LayoutHelper::render('status', ['modules' => 'status']); HTMLHelper::_('bootstrap.dropdown'); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body class="admin <?php echo $option . ' view-' . $view . ' layout-' . $layout . ($task ? ' task-' . $task : '') . ($monochrome ? ' monochrome' : ''); ?>"> <noscript> <div class="alert alert-danger" role="alert"> <?php echo Text::_('JGLOBAL_WARNJAVASCRIPT'); ?> </div> </noscript> <?php if (Browser::getInstance()->getBrowser() === 'msie') : ?> <div class="ie11 alert alert-warning" role="alert"> <?php echo Text::_('JGLOBAL_WARNIE'); ?> </div> <?php endif; ?> <header id="header" class="header d-flex"> <div class="header-title d-flex"> <div class="d-flex align-items-center"> <div class="logo"> <?php echo HTMLHelper::_('image', $logoBrandLarge, $logoBrandLargeAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> <?php echo HTMLHelper::_('image', $logoBrandSmall, $logoBrandSmallAlt, ['class' => 'logo-collapsed', 'loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> </div> <jdoc:include type="modules" name="title" /> </div> <?php echo $statusModules; ?> </header> <div id="wrapper" class="wrapper flex-grow-1"> <div class="container-fluid container-main"> <section id="content" class="content h-100"> <div class="login_message"> <jdoc:include type="message" /> </div> <main class="d-flex justify-content-center align-items-center h-100"> <div class="login"> <div class="main-brand logo text-center"> <?php echo HTMLHelper::_('image', $loginLogo, $loginLogoAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> <jdoc:include type="component" /> </div> </main> </section> </div> <div id="sidebar-wrapper" class="sidebar-wrapper px-3 pb-3"> <div id="main-brand" class="main-brand"> <h1><?php echo $app->get('sitename'); ?></h1> <h2><?php echo Text::_('TPL_ATUM_BACKEND_LOGIN'); ?></h2> </div> <div id="sidebar"> <jdoc:include type="modules" name="sidebar" style="body" /> </div> </div> </div> <jdoc:include type="modules" name="debug" style="none" /> </body> </html> PKAA#]ݞtH44templates/atum/error.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @since 4.0.0 */ defined('_JEXEC') or die; use Joomla\CMS\Factory; /** @var \Joomla\CMS\Document\ErrorDocument $this */ // Authenticated versus guest have different displays $user = Factory::getUser(); if ($user->guest) { require __DIR__ . '/error_login.php'; } else { require __DIR__ . '/error_full.php'; } PKAA#]��""templates/atum/error_login.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @since 4.0.0 */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Uri\Uri; /** @var \Joomla\CMS\Document\ErrorDocument $this */ $app = Factory::getApplication(); $input = $app->getInput(); $wa = $this->getWebAssetManager(); // Detecting Active Variables $option = $input->get('option', ''); $view = $input->get('view', ''); $layout = $input->get('layout', 'default'); $task = $input->get('task', 'display'); // Browsers support SVG favicons $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']); $this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']); $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']); // Template params $logoBrandLarge = $this->params->get('logoBrandLarge') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandLarge'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-large.svg'; $logoBrandSmall = $this->params->get('logoBrandSmall') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandSmall'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-small.svg'; $logoBrandLargeAlt = empty($this->params->get('logoBrandLargeAlt')) && empty($this->params->get('emptyLogoBrandLargeAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandLargeAlt', ''), ENT_COMPAT, 'UTF-8'); $logoBrandSmallAlt = empty($this->params->get('logoBrandSmallAlt')) && empty($this->params->get('emptyLogoBrandSmallAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandSmallAlt', ''), ENT_COMPAT, 'UTF-8'); $loginLogo = $this->params->get('loginLogo') ? Uri::root(false) . $this->params->get('loginLogo') : Uri::root(false) . 'media/templates/administrator/atum/images/logos/login.svg'; $loginLogoAlt = empty($this->params->get('loginLogoAlt')) && empty($this->params->get('emptyLoginLogoAlt')) ? '' : htmlspecialchars($this->params->get('loginLogoAlt', ''), ENT_COMPAT, 'UTF-8'); // Get the hue value preg_match('#^hsla?\(([0-9]+)[\D]+([0-9]+)[\D]+([0-9]+)[\D]+([0-9](?:.\d+)?)?\)$#i', $this->params->get('hue', 'hsl(214, 63%, 20%)'), $matches); $linkColor = $this->params->get('link-color', '#2a69b8'); list($r, $g, $b) = sscanf($linkColor, "#%02x%02x%02x"); // Enable assets $wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')) ->useStyle('template.active.language') ->useStyle('template.user') ->addInlineStyle(':root { --hue: ' . $matches[1] . '; --template-bg-light: ' . $this->params->get('bg-light', '#f0f4fb') . '; --template-text-dark: ' . $this->params->get('text-dark', '#495057') . '; --template-text-light: ' . $this->params->get('text-light', '#ffffff') . '; --link-color: ' . $linkColor . '; --link-color-rgb: ' . $r . ',' . $g . ',' . $b . '; --template-special-color: ' . $this->params->get('special-color', '#001B4C') . '; }'); // Override 'template.active' asset to set correct ltr/rtl dependency $wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]); // Set some meta data $this->setMetaData('viewport', 'width=device-width, initial-scale=1'); $monochrome = (bool) $this->params->get('monochrome'); // @see administrator/templates/atum/html/layouts/status.php $statusModules = LayoutHelper::render('status', ['modules' => 'status']); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body class="admin <?php echo $option . ' view-' . $view . ' layout-' . $layout . ($task ? ' task-' . $task : '') . ($monochrome ? ' monochrome' : ''); ?>"> <noscript> <div class="alert alert-danger" role="alert"> <?php echo Text::_('JGLOBAL_WARNJAVASCRIPT'); ?> </div> </noscript> <header id="header" class="header d-flex"> <div class="header-title d-flex"> <div class="d-flex align-items-center"> <div class="logo"> <?php echo HTMLHelper::_('image', $logoBrandLarge, $logoBrandLargeAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> <?php echo HTMLHelper::_('image', $logoBrandSmall, $logoBrandSmallAlt, ['class' => 'logo-collapsed', 'loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> </div> <jdoc:include type="modules" name="title" /> </div> <?php echo $statusModules; ?> </header> <div id="wrapper" class="d-flex wrapper"> <div class="container-fluid container-main"> <section id="content" class="content h-100"> <main class="d-flex justify-content-center align-items-center h-100"> <div id="element-box" class="card"> <div class="card-body"> <div class="main-brand d-flex align-items-center justify-content-center"> <?php echo HTMLHelper::_('image', $loginLogo, $loginLogoAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> <h1 class="text-dark"><?php echo Text::_('JERROR_AN_ERROR_HAS_OCCURRED'); ?></h1> <jdoc:include type="message" /> <blockquote class="blockquote"> <span class="badge bg-secondary"><?php echo $this->error->getCode(); ?></span> <?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?> </blockquote> <?php if ($this->debug) : ?> <div> <?php echo $this->renderBacktrace(); ?> <?php // Check if there are more Exceptions and render their data as well ?> <?php if ($this->error->getPrevious()) : ?> <?php $loop = true; ?> <?php // Reference $this->_error here and in the loop as setError() assigns errors to this property and we need this for the backtrace to work correctly ?> <?php // Make the first assignment to setError() outside the loop so the loop does not skip Exceptions ?> <?php $this->setError($this->_error->getPrevious()); ?> <?php while ($loop === true) : ?> <p><strong><?php echo Text::_('JERROR_LAYOUT_PREVIOUS_ERROR'); ?></strong></p> <p><?php echo htmlspecialchars($this->_error->getMessage(), ENT_QUOTES, 'UTF-8'); ?></p> <?php echo $this->renderBacktrace(); ?> <?php $loop = $this->setError($this->_error->getPrevious()); ?> <?php endwhile; ?> <?php // Reset the main error object to the base error ?> <?php $this->setError($this->error); ?> <?php endif; ?> </div> <?php endif; ?> </div> </div> </main> </section> </div> <div id="sidebar-wrapper" class="sidebar-wrapper"> <div id="main-brand" class="main-brand"> <h1><?php echo $app->get('sitename'); ?></h1> <a href="<?php echo Uri::root(); ?>"><?php echo Text::_('TPL_ATUM_LOGIN_SIDEBAR_VIEW_WEBSITE'); ?></a> </div> <div id="sidebar"> <jdoc:include type="modules" name="sidebar" style="body" /> </div> </div> </div> <jdoc:include type="modules" name="debug" style="none" /> </body> </html> PKAA#]{eո''templates/atum/error_full.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @since 4.0.0 */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Uri\Uri; /** @var \Joomla\CMS\Document\ErrorDocument $this */ $app = Factory::getApplication(); $input = $app->getInput(); $wa = $this->getWebAssetManager(); // Detecting Active Variables $option = $input->get('option', ''); $view = $input->get('view', ''); $layout = $input->get('layout', 'default'); $task = $input->get('task', 'display'); $cpanel = $option === 'com_cpanel'; $hiddenMenu = $app->getInput()->get('hidemainmenu'); // Browsers support SVG favicons $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']); $this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']); $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']); // Template params $logoBrandLarge = $this->params->get('logoBrandLarge') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandLarge'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-large.svg'; $logoBrandSmall = $this->params->get('logoBrandSmall') ? Uri::root(false) . htmlspecialchars($this->params->get('logoBrandSmall'), ENT_QUOTES) : Uri::root(false) . 'media/templates/administrator/atum/images/logos/brand-small.svg'; $logoBrandLargeAlt = empty($this->params->get('logoBrandLargeAlt')) && empty($this->params->get('emptyLogoBrandLargeAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandLargeAlt', ''), ENT_COMPAT, 'UTF-8'); $logoBrandSmallAlt = empty($this->params->get('logoBrandSmallAlt')) && empty($this->params->get('emptyLogoBrandSmallAlt')) ? '' : htmlspecialchars($this->params->get('logoBrandSmallAlt', ''), ENT_COMPAT, 'UTF-8'); // Get the hue value preg_match('#^hsla?\(([0-9]+)[\D]+([0-9]+)[\D]+([0-9]+)[\D]+([0-9](?:.\d+)?)?\)$#i', $this->params->get('hue', 'hsl(214, 63%, 20%)'), $matches); $linkColor = $this->params->get('link-color', '#2a69b8'); list($r, $g, $b) = sscanf($linkColor, "#%02x%02x%02x"); // Enable assets $wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')) ->useStyle('template.active.language') ->useStyle('template.user') ->addInlineStyle(':root { --hue: ' . $matches[1] . '; --template-bg-light: ' . $this->params->get('bg-light', '#f0f4fb') . '; --template-text-dark: ' . $this->params->get('text-dark', '#495057') . '; --template-text-light: ' . $this->params->get('text-light', '#ffffff') . '; --link-color: ' . $linkColor . '; --link-color-rgb: ' . $r . ',' . $g . ',' . $b . '; --template-special-color: ' . $this->params->get('special-color', '#001B4C') . '; }'); // Override 'template.active' asset to set correct ltr/rtl dependency $wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]); // Set some meta data $this->setMetaData('viewport', 'width=device-width, initial-scale=1'); $monochrome = (bool) $this->params->get('monochrome'); // @see administrator/templates/atum/html/layouts/status.php $statusModules = LayoutHelper::render('status', ['modules' => 'status']); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body class="admin <?php echo $option . ' view-' . $view . ' layout-' . $layout . ($task ? ' task-' . $task : '') . ($monochrome ? ' monochrome' : ''); ?>"> <noscript> <div class="alert alert-danger" role="alert"> <?php echo Text::_('JGLOBAL_WARNJAVASCRIPT'); ?> </div> </noscript> <header id="header" class="header d-flex"> <div class="header-title d-flex"> <div class="d-flex align-items-center"> <div class="logo"> <?php echo HTMLHelper::_('image', $logoBrandLarge, $logoBrandLargeAlt, ['loading' => 'eager', 'decoding' => 'async'], false, 0); ?> <?php echo HTMLHelper::_('image', $logoBrandSmall, $logoBrandSmallAlt, ['class' => 'logo-collapsed', 'loading' => 'eager', 'decoding' => 'async'], false, 0); ?> </div> </div> <jdoc:include type="modules" name="title" /> </div> <?php echo $statusModules; ?> </header> <div id="wrapper" class="d-flex wrapper<?php echo $hiddenMenu ? '0' : ''; ?>"> <div class="container-fluid container-main"> <?php if (!$cpanel) : ?> <a class="btn btn-subhead d-md-none d-lg-none d-xl-none" data-bs-toggle="collapse" data-bs-target=".subhead-collapse"><?php echo Text::_('TPL_ATUM_TOOLBAR'); ?> <span class="icon-wrench"></span></a> <div id="subhead" class="subhead mb-3"> <div id="container-collapse" class="container-collapse"></div> <div class="row"> <div class="col-md-12"> <jdoc:include type="modules" name="toolbar" style="none" /> </div> </div> </div> <?php endif; ?> <section id="content" class="content"> <jdoc:include type="message" /> <jdoc:include type="modules" name="top" style="html5" /> <div class="row"> <div class="col-md-12"> <h1><?php echo Text::_('JERROR_AN_ERROR_HAS_OCCURRED'); ?></h1> <blockquote class="blockquote"> <span class="badge bg-secondary"><?php echo $this->error->getCode(); ?></span> <?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?> </blockquote> <?php if ($this->debug) : ?> <div> <?php echo $this->renderBacktrace(); ?> <?php // Check if there are more Exceptions and render their data as well ?> <?php if ($this->error->getPrevious()) : ?> <?php $loop = true; ?> <?php // Reference $this->_error here and in the loop as setError() assigns errors to this property and we need this for the backtrace to work correctly ?> <?php // Make the first assignment to setError() outside the loop so the loop does not skip Exceptions ?> <?php $this->setError($this->_error->getPrevious()); ?> <?php while ($loop === true) : ?> <p><strong><?php echo Text::_('JERROR_LAYOUT_PREVIOUS_ERROR'); ?></strong></p> <p><?php echo htmlspecialchars($this->_error->getMessage(), ENT_QUOTES, 'UTF-8'); ?></p> <?php echo $this->renderBacktrace(); ?> <?php $loop = $this->setError($this->_error->getPrevious()); ?> <?php endwhile; ?> <?php // Reset the main error object to the base error ?> <?php $this->setError($this->error); ?> <?php endif; ?> </div> <?php endif; ?> <p> <a href="<?php echo $this->baseurl; ?>" class="btn btn-secondary"> <span class="icon-dashboard" aria-hidden="true"></span> <?php echo Text::_('JGLOBAL_TPL_CPANEL_LINK_TEXT'); ?></a> </p> </div> <?php if ($this->countModules('bottom')) : ?> <jdoc:include type="modules" name="bottom" style="html5" /> <?php endif; ?> </div> </section> </div> <?php if (!$hiddenMenu) : ?> <button class="navbar-toggler toggler-burger collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#sidebar-wrapper" aria-controls="sidebar-wrapper" aria-expanded="false" aria-label="<?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?>"> <span class="navbar-toggler-icon"></span> </button> <div id="sidebar-wrapper" class="sidebar-wrapper sidebar-menu" <?php echo $hiddenMenu ? 'data-hidden="' . $hiddenMenu . '"' : ''; ?>> <div id="sidebarmenu"> <div class="sidebar-toggle item item-level-1"> <a id="menu-collapse" href="#" aria-label="<?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?>"> <span id="menu-collapse-icon" class="icon-toggle-off icon-fw" aria-hidden="true"></span> <span class="sidebar-item-title"><?php echo Text::_('JTOGGLE_SIDEBAR_MENU'); ?></span> </a> </div> <jdoc:include type="modules" name="menu" style="none" /> </div> </div> <?php endif; ?> </div> <jdoc:include type="modules" name="debug" style="none" /> </body> </html> PKAA#]��ԃ � templates/atum/component.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage Templates.Atum * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; /** @var \Joomla\CMS\Document\HtmlDocument $this */ $wa = $this->getWebAssetManager(); // Get the hue value preg_match('#^hsla?\(([0-9]+)[\D]+([0-9]+)[\D]+([0-9]+)[\D]+([0-9](?:.\d+)?)?\)$#i', $this->params->get('hue', 'hsl(214, 63%, 20%)'), $matches); $linkColor = $this->params->get('link-color', '#2a69b8'); list($r, $g, $b) = sscanf($linkColor, "#%02x%02x%02x"); // Enable assets $wa->usePreset('template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')) ->useStyle('template.active.language') ->useStyle('template.user') ->addInlineStyle(':root { --hue: ' . $matches[1] . '; --template-bg-light: ' . $this->params->get('bg-light', 'var(--template-bg-light)') . '; --template-text-dark: ' . $this->params->get('text-dark', 'var(--template-text-dark)') . '; --template-text-light: ' . $this->params->get('text-light', 'var(--template-text-light)') . '; --link-color: ' . $linkColor . '; --link-color-rgb: ' . $r . ',' . $g . ',' . $b . '; --template-special-color: ' . $this->params->get('special-color', 'var(--template-special-color)') . '; }'); // No template.js for modals $wa->disableScript('template.atum'); // Override 'template.active' asset to set correct ltr/rtl dependency $wa->registerStyle('template.active', '', [], [], ['template.atum.' . ($this->direction === 'rtl' ? 'rtl' : 'ltr')]); // Browsers support SVG favicons $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon.svg', '', [], true, 1), 'icon', 'rel', ['type' => 'image/svg+xml']); $this->addHeadLink(HTMLHelper::_('image', 'favicon.ico', '', [], true, 1), 'alternate icon', 'rel', ['type' => 'image/vnd.microsoft.icon']); $this->addHeadLink(HTMLHelper::_('image', 'joomla-favicon-pinned.svg', '', [], true, 1), 'mask-icon', 'rel', ['color' => '#000']); ?> <!DOCTYPE html> <html lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>"> <head> <jdoc:include type="metas" /> <jdoc:include type="styles" /> <jdoc:include type="scripts" /> </head> <body class="contentpane component"> <jdoc:include type="message" /> <jdoc:include type="component" /> </body> </html> PKAA#]�_���includes/app.phpnu�[���<?php /** * @package Joomla.Administrator * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; // Saves the start time and memory usage. $startTime = microtime(1); $startMem = memory_get_usage(); if (file_exists(dirname(__DIR__) . '/defines.php')) { include_once dirname(__DIR__) . '/defines.php'; } if (!defined('_JDEFINES')) { define('JPATH_BASE', dirname(__DIR__)); require_once JPATH_BASE . '/includes/defines.php'; } // Check for presence of vendor dependencies not included in the git repository if (!file_exists(JPATH_LIBRARIES . '/vendor/autoload.php') || !is_dir(JPATH_ROOT . '/media/vendor')) { echo file_get_contents(JPATH_ROOT . '/templates/system/build_incomplete.html'); exit; } require_once JPATH_BASE . '/includes/framework.php'; // Set profiler start time and memory usage and mark afterLoad in the profiler. JDEBUG ? \Joomla\CMS\Profiler\Profiler::getInstance('Application')->setStart($startTime, $startMem)->mark('afterLoad') : null; // Boot the DI container $container = \Joomla\CMS\Factory::getContainer(); /* * Alias the session service keys to the web session service as that is the primary session backend for this application * * In addition to aliasing "common" service keys, we also create aliases for the PHP classes to ensure autowiring objects * is supported. This includes aliases for aliased class names, and the keys for aliased class names should be considered * deprecated to be removed when the class name alias is removed as well. */ $container->alias('session.web', 'session.web.administrator') ->alias('session', 'session.web.administrator') ->alias('JSession', 'session.web.administrator') ->alias(\Joomla\CMS\Session\Session::class, 'session.web.administrator') ->alias(\Joomla\Session\Session::class, 'session.web.administrator') ->alias(\Joomla\Session\SessionInterface::class, 'session.web.administrator'); // Instantiate the application. $app = $container->get(\Joomla\CMS\Application\AdministratorApplication::class); // Set the application as global app \Joomla\CMS\Factory::$application = $app; // Execute the application. $app->execute(); PKAA#]��_�xxincludes/defines.phpnu�[���<?php /** * @package Joomla.Administrator * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; // Global definitions $parts = explode(DIRECTORY_SEPARATOR, JPATH_BASE); array_pop($parts); // Defines define('JPATH_ROOT', implode(DIRECTORY_SEPARATOR, $parts)); define('JPATH_SITE', JPATH_ROOT); define('JPATH_CONFIGURATION', JPATH_ROOT); define('JPATH_ADMINISTRATOR', JPATH_ROOT . DIRECTORY_SEPARATOR . 'administrator'); define('JPATH_LIBRARIES', JPATH_ROOT . DIRECTORY_SEPARATOR . 'libraries'); define('JPATH_PLUGINS', JPATH_ROOT . DIRECTORY_SEPARATOR . 'plugins'); define('JPATH_INSTALLATION', JPATH_ROOT . DIRECTORY_SEPARATOR . 'installation'); define('JPATH_THEMES', JPATH_BASE . DIRECTORY_SEPARATOR . 'templates'); define('JPATH_CACHE', JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'cache'); define('JPATH_MANIFESTS', JPATH_ADMINISTRATOR . DIRECTORY_SEPARATOR . 'manifests'); define('JPATH_API', JPATH_ROOT . DIRECTORY_SEPARATOR . 'api'); define('JPATH_CLI', JPATH_ROOT . DIRECTORY_SEPARATOR . 'cli'); PKAA#]�Q���includes/framework.phpnu�[���<?php /** * @package Joomla.Administrator * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Version; use Joomla\Utilities\IpHelper; // System includes require_once JPATH_LIBRARIES . '/bootstrap.php'; // Installation check, and check on removal of the install directory. if ( !file_exists(JPATH_CONFIGURATION . '/configuration.php') || (filesize(JPATH_CONFIGURATION . '/configuration.php') < 10) || (file_exists(JPATH_INSTALLATION . '/index.php') && (false === (new Version())->isInDevelopmentState())) ) { if (file_exists(JPATH_INSTALLATION . '/index.php')) { header('Location: ../installation/index.php'); exit(); } else { echo 'No configuration file found and no installation code available. Exiting...'; exit; } } // Pre-Load configuration. Don't remove the Output Buffering due to BOM issues, see JCode 26026 ob_start(); require_once JPATH_CONFIGURATION . '/configuration.php'; ob_end_clean(); // System configuration. $config = new JConfig(); // Set the error_reporting, and adjust a global Error Handler switch ($config->error_reporting) { case 'default': case '-1': break; case 'none': case '0': error_reporting(0); break; case 'simple': error_reporting(E_ERROR | E_WARNING | E_PARSE); ini_set('display_errors', 1); break; case 'maximum': case 'development': // <= Stays for backward compatibility, @TODO: can be removed in 5.0 error_reporting(E_ALL); ini_set('display_errors', 1); break; default: error_reporting($config->error_reporting); ini_set('display_errors', 1); break; } define('JDEBUG', $config->debug); // Check deprecation logging if (empty($config->log_deprecated)) { // Reset handler for E_USER_DEPRECATED set_error_handler(null, E_USER_DEPRECATED); } else { // Make sure handler for E_USER_DEPRECATED is registered set_error_handler(['Joomla\CMS\Exception\ExceptionHandler', 'handleUserDeprecatedErrors'], E_USER_DEPRECATED); } if (JDEBUG || $config->error_reporting === 'maximum') { // Set new Exception handler with debug enabled $errorHandler->setExceptionHandler( [ new \Symfony\Component\ErrorHandler\ErrorHandler(null, true), 'renderException', ] ); } /** * Correctly set the allowing of IP Overrides if behind a trusted proxy/load balancer. * * We need to do this as high up the stack as we can, as the default in \Joomla\Utilities\IpHelper is to * $allowIpOverride = true which is the wrong default for a generic site NOT behind a trusted proxy/load balancer. */ if (property_exists($config, 'behind_loadbalancer') && $config->behind_loadbalancer == 1) { // If Joomla is configured to be behind a trusted proxy/load balancer, allow HTTP Headers to override the REMOTE_ADDR IpHelper::setAllowIpOverrides(true); } else { // We disable the allowing of IP overriding using headers by default. IpHelper::setAllowIpOverrides(false); } unset($config); PKAA#]�g?qqhelp/en-GB/toc.jsonnu�[���{"Articles":"ARTICLES","Articles:_Categories":"ARTICLES:_CATEGORIES","Articles:_Edit":"ARTICLES:_EDIT","Articles:_Edit_Category":"ARTICLES:_EDIT_CATEGORY","Articles:_Featured":"ARTICLES:_FEATURED","Banners":"BANNERS","Banners:_Categories":"BANNERS:_CATEGORIES","Banners:_Clients":"BANNERS:_CLIENTS","Banners:_Edit":"BANNERS:_EDIT","Banners:_New_or_Edit_Category":"BANNERS:_NEW_OR_EDIT_CATEGORY","Banners:_New_or_Edit_Client":"BANNERS:_NEW_OR_EDIT_CLIENT","Banners:_Tracks":"BANNERS:_TRACKS","Contacts":"CONTACTS","Contacts:_Categories":"CONTACTS:_CATEGORIES","Contacts:_Edit":"CONTACTS:_EDIT","Contacts:_Edit_Category":"CONTACTS:_EDIT_CATEGORY","Extensions:_Discover":"EXTENSIONS:_DISCOVER","Extensions:_Install":"EXTENSIONS:_INSTALL","Extensions:_Languages":"EXTENSIONS:_LANGUAGES","Extensions:_Manage":"EXTENSIONS:_MANAGE","Extensions:_Update":"EXTENSIONS:_UPDATE","Field_Groups":"FIELD_GROUPS","Field_Groups:_Edit":"FIELD_GROUPS:_EDIT","Fields":"FIELDS","Fields:_Edit":"FIELDS:_EDIT","Guided_Tours":"GUIDED_TOURS","Guided_Tours:_New_or_Edit_Step":"GUIDED_TOURS:_NEW_OR_EDIT_STEP","Guided_Tours:_New_or_Edit_Tour":"GUIDED_TOURS:_NEW_OR_EDIT_TOUR","Guided_Tours:_Steps":"GUIDED_TOURS:_STEPS","Information:_Database":"INFORMATION:_DATABASE","Information:_Warnings":"INFORMATION:_WARNINGS","Joomla_Update":"JOOMLA_UPDATE","Languages:_Content":"LANGUAGES:_CONTENT","Languages:_Edit_Content_Language":"LANGUAGES:_EDIT_CONTENT_LANGUAGE","Languages:_Edit_Override":"LANGUAGES:_EDIT_OVERRIDE","Languages:_Installed":"LANGUAGES:_INSTALLED","Languages:_Overrides":"LANGUAGES:_OVERRIDES","Mail_Template:_Edit":"MAIL_TEMPLATE:_EDIT","Mail_Templates":"MAIL_TEMPLATES","Maintenance:_Clear_Cache":"MAINTENANCE:_CLEAR_CACHE","Maintenance:_Global_Check-in":"MAINTENANCE:_GLOBAL_CHECK-IN","Mass_Mail_Users":"MASS_MAIL_USERS","Media":"MEDIA","Menu_Item:_New_Item":"MENU_ITEM:_NEW_ITEM","Menus":"MENUS","Menus:_Edit":"MENUS:_EDIT","Menus:_Items":"MENUS:_ITEMS","Modules":"MODULES","Multilingual_Associations":"MULTILINGUAL_ASSOCIATIONS","Multilingual_Associations:_Edit":"MULTILINGUAL_ASSOCIATIONS:_EDIT","News_Feeds":"NEWS_FEEDS","News_Feeds:_Categories":"NEWS_FEEDS:_CATEGORIES","News_Feeds:_Edit":"NEWS_FEEDS:_EDIT","News_Feeds:_Edit_Category":"NEWS_FEEDS:_EDIT_CATEGORY","Permissions_for_User":"PERMISSIONS_FOR_USER","Plugins":"PLUGINS","Plugins:_Name_of_Plugin":"PLUGINS:_NAME_OF_PLUGIN","Post-installation_Messages_for_Joomla_CMS":"POST-INSTALLATION_MESSAGES_FOR_JOOMLA_CMS","Privacy_Dashboard":"PRIVACY_DASHBOARD","Privacy:_Consents":"PRIVACY:_CONSENTS","Privacy:_Extension_Capabilities":"PRIVACY:_EXTENSION_CAPABILITIES","Privacy:_Information_Requests":"PRIVACY:_INFORMATION_REQUESTS","Privacy:_New_Information_Request":"PRIVACY:_NEW_INFORMATION_REQUEST","Privacy:_Review_Information_Request":"PRIVACY:_REVIEW_INFORMATION_REQUEST","Private_Messages":"PRIVATE_MESSAGES","Private_Messages:_Read":"PRIVATE_MESSAGES:_READ","Private_Messages:_Write":"PRIVATE_MESSAGES:_WRITE","Redirects:_Links":"REDIRECTS:_LINKS","Redirects:_New_or_Edit":"REDIRECTS:_NEW_OR_EDIT","Scheduled_Tasks":"SCHEDULED_TASKS","Scheduled_Tasks:_Edit":"SCHEDULED_TASKS:_EDIT","Site_Global_Configuration":"SITE_GLOBAL_CONFIGURATION","Site_System_Information":"SITE_SYSTEM_INFORMATION","Smart_Search:_Content_Maps":"SMART_SEARCH:_CONTENT_MAPS","Smart_Search:_Indexed_Content":"SMART_SEARCH:_INDEXED_CONTENT","Smart_Search:_New_or_Edit_Filter":"SMART_SEARCH:_NEW_OR_EDIT_FILTER","Smart_Search:_Search_Filters":"SMART_SEARCH:_SEARCH_FILTERS","Start_Here":"START_HERE","Tags":"TAGS","Tags:_New_or_Edit":"TAGS:_NEW_OR_EDIT","Templates:_Customise":"TEMPLATES:_CUSTOMISE","Templates:_Customise_Source":"TEMPLATES:_CUSTOMISE_SOURCE","Templates:_Edit_Style":"TEMPLATES:_EDIT_STYLE","Templates:_Styles":"TEMPLATES:_STYLES","Templates:_Templates":"TEMPLATES:_TEMPLATES","User_Actions_Log":"USER_ACTIONS_LOG","User_Notes":"USER_NOTES","User_Notes:_New_or_Edit":"USER_NOTES:_NEW_OR_EDIT","Users":"USERS","Users:_Edit_Profile":"USERS:_EDIT_PROFILE","Users:_Edit_Viewing_Access_Level":"USERS:_EDIT_VIEWING_ACCESS_LEVEL","Users:_Groups":"USERS:_GROUPS","Users:_New_or_Edit_Group":"USERS:_NEW_OR_EDIT_GROUP","Users:_Viewing_Access_Levels":"USERS:_VIEWING_ACCESS_LEVELS"}PKAA#]d��P#modules/mod_submenu/mod_submenu.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_submenu * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Component\Menus\Administrator\Helper\MenusHelper; use Joomla\Module\Submenu\Administrator\Menu\Menu; $menutype = $params->get('menutype', '*'); $root = false; if ($menutype === '*') { $name = $params->get('preset', 'system'); $root = MenusHelper::loadPreset($name); } else { $root = MenusHelper::getMenuItems($menutype, true); } if ($root && $root->hasChildren()) { Factory::getLanguage()->load( 'mod_menu', JPATH_ADMINISTRATOR, Factory::getLanguage()->getTag(), true ); Menu::preprocess($root); // Render the module layout require ModuleHelper::getLayoutPath('mod_submenu', $params->get('layout', 'default')); } PKAA#]� �9#modules/mod_submenu/mod_submenu.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_submenu</name> <author>Joomla! Project</author> <creationDate>2006-02</creationDate> <copyright>(C) 2006 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_SUBMENU_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Submenu</namespace> <files> <filename module="mod_submenu">mod_submenu.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_submenu.ini</language> <language tag="en-GB">language/en-GB/mod_submenu.sys.ini</language> </languages> <help key="Admin_Modules:_Administrator_Dashboard_Menu" /> <config> <fields name="params"> <fieldset name="basic" addfieldprefix="Joomla\Component\Menus\Administrator\Field"> <field name="menutype" type="menu" label="MOD_SUBMENU_FIELD_MENUTYPE_LABEL" clientid="1" > <option value="*">MOD_SUBMENU_FIELD_MENUTYPE_OPTION_PREDEFINED</option> </field> <field name="preset" type="menuPreset" label="MOD_SUBMENU_FIELD_PRESET_LABEL" showon="menutype:*" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]�d����$modules/mod_submenu/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_submenu * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $user = \Joomla\CMS\Factory::getApplication()->getIdentity(); /** @var \Joomla\CMS\Menu\MenuItem $root */ ?> <?php foreach ($root->getChildren() as $child) : ?> <?php if ($child->hasChildren()) : ?> <div class="module-wrapper"> <div class="card"> <?php $child->img = $child->img ?? ''; if (substr($child->img, 0, 6) === 'class:') { $iconImage = '<span class="icon-' . substr($child->img, 6) . '" aria-hidden="true"></span>'; } elseif (substr($child->img, 0, 6) === 'image:') { $iconImage = '<img src="' . substr($child->img, 6) . '" aria-hidden="true">'; } elseif (!empty($child->img)) { $iconImage = '<img src="' . $child->img . '" aria-hidden="true">'; } elseif ($child->icon) { $iconImage = '<span class="icon-' . $child->icon . '" aria-hidden="true"></span>'; } else { $iconImage = ''; } ?> <h2 class="card-header"> <?php echo $iconImage; ?> <?php echo Text::_($child->title); ?> </h2> <ul class="list-group list-group-flush"> <?php foreach ($child->getChildren() as $item) : ?> <?php $params = $item->getParams(); ?> <?php // Only if Menu-show = true ?> <?php if ($params->get('menu_show', 1)) : ?> <li class="list-group-item d-flex align-items-center"> <?php $class = $params->get('menu-quicktask') ? '' : 'class="flex-grow-1"'; ?> <a <?php echo $class; ?> href="<?php echo $item->link; ?>" <?php echo $item->target === '_blank' ? ' title="' . Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_($item->title)) . '"' : ''; ?> <?php echo $item->target ? ' target="' . $item->target . '"' : ''; ?>> <?php if (!empty($params->get('menu_image'))) : ?> <?php $image = htmlspecialchars($params->get('menu_image'), ENT_QUOTES, 'UTF-8'); $class = htmlspecialchars($params->get('menu_image_css'), ENT_QUOTES, 'UTF-8'); $alt = $params->get('menu_text') ? '' : htmlspecialchars(Text::_($item->title), ENT_QUOTES, 'UTF-8'); ?> <?php echo HTMLHelper::_('image', $image, $alt, 'class="' . $class . '"'); ?> <?php endif; ?> <?php echo ($params->get('menu_text', 1)) ? htmlspecialchars(Text::_($item->title), ENT_QUOTES, 'UTF-8') : ''; ?> <?php if ($item->ajaxbadge) : ?> <span class="menu-badge"> <span class="icon-spin icon-spinner mt-1 system-counter float-end" data-url="<?php echo $item->ajaxbadge; ?>"></span> </span> <?php endif; ?> </a> <?php echo $item->iconImage; ?> <?php if ($params->get('menu-quicktask')) : ?> <?php $permission = $params->get('menu-quicktask-permission'); ?> <?php $scope = $item->scope !== 'default' ? $item->scope : null; ?> <?php if (!$permission || $user->authorise($permission, $scope)) : ?> <span class="menu-quicktask"> <?php $link = $params->get('menu-quicktask'); $icon = $params->get('menu-quicktask-icon', 'plus'); $title = Text::_($params->get('menu-quicktask-title')); if (empty($params->get('menu-quicktask-title'))) { $title = Text::_('MOD_MENU_QUICKTASK_NEW'); } $sronly = Text::_($item->title) . ' - ' . $title; ?> <a href="<?php echo $link; ?>"> <span class="icon-<?php echo $icon; ?>" title="<?php echo htmlentities($title); ?>" aria-hidden="true"></span> <span class="visually-hidden"><?php echo htmlentities($sronly); ?></span> </a> </span> <?php endif; ?> <?php endif; ?> <?php if ($item->dashboard) : ?> <span class="menu-dashboard"> <a href="<?php echo Route::_('index.php?option=com_cpanel&view=cpanel&dashboard=' . $item->dashboard); ?>"> <span class="icon-th-large" title="<?php echo htmlentities(Text::sprintf('MOD_MENU_DASHBOARD_LINK', Text::_($child->title))); ?>"></span> </a> </span> <?php endif; ?> </li> <?php endif; ?> <?php endforeach; ?> </ul> </div> </div> <?php endif; ?> <?php endforeach; ?> PKAA#]�R��"�"%modules/mod_submenu/src/Menu/Menu.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_submenu * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Submenu\Administrator\Menu; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Text; use Joomla\CMS\Menu\MenuItem; use Joomla\CMS\Uri\Uri; use Joomla\Component\Menus\Administrator\Helper\MenusHelper; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper class to handle permissions in mod_submenu * * @since 4.0.0 */ abstract class Menu { /** * Filter and perform other preparatory tasks for loaded menu items based on access rights and module configurations for display * * @param MenuItem $parent A menu item to process * * @return void * * @since 4.0.0 */ public static function preprocess($parent) { $app = Factory::getApplication(); $user = $app->getIdentity(); $children = $parent->getChildren(); $language = Factory::getLanguage(); /** * Trigger onPreprocessMenuItems for the current level of backend menu items. * $children is an array of MenuItem objects. A plugin can traverse the whole tree, * but new nodes will only be run through this method if their parents have not been processed yet. */ $app->triggerEvent('onPreprocessMenuItems', ['administrator.module.mod_submenu', $children]); foreach ($children as $item) { if (substr($item->link, 0, 8) === 'special:') { $special = substr($item->link, 8); if ($special === 'language-forum') { $item->link = 'index.php?option=com_admin&view=help&layout=langforum'; } } $uri = new Uri($item->link); $query = $uri->getQuery(true); /** * This is needed to populate the element property when the component is no longer * installed but its core menu items are left behind. */ if ($option = $uri->getVar('option')) { $item->element = $option; } // Exclude item if is not enabled if ($item->element && !ComponentHelper::isEnabled($item->element)) { $parent->removeChild($item); continue; } /* * Multilingual Associations if the site is not set as multilingual and/or Associations is not enabled in * the Language Filter plugin */ if ($item->element === 'com_associations' && !Associations::isEnabled()) { $parent->removeChild($item); continue; } $itemParams = $item->getParams(); // Exclude item with menu item option set to exclude from menu modules if ($itemParams->get('menu-permission')) { @list($action, $asset) = explode(';', $itemParams->get('menu-permission')); if (!$user->authorise($action, $asset)) { $parent->removeChild($item); continue; } } // Populate automatic children for container items if ($item->type === 'container') { $exclude = (array) $itemParams->get('hideitems') ?: []; $components = MenusHelper::getMenuItems('main', false, $exclude); // We are adding the nodes first to preprocess them, then sort them and add them again. foreach ($components->getChildren() as $c) { if (!$c->hasChildren()) { $temp = clone $c; $c->addChild($temp); } $item->addChild($c); } self::preprocess($item); $children = ArrayHelper::sortObjects($item->getChildren(), 'text', 1, false, true); foreach ($children as $c) { $parent->addChild($c); } $parent->removeChild($item); continue; } // Exclude Mass Mail if disabled in global configuration if ($item->scope === 'massmail' && ($app->get('massmailoff', 0) == 1)) { $parent->removeChild($item); continue; } // Exclude item if the component is not authorised $assetName = $item->element; if ($item->element === 'com_categories') { $assetName = $query['extension'] ?? 'com_content'; } elseif ($item->element === 'com_fields') { parse_str($item->link, $query); // Only display Fields menus when enabled in the component $createFields = null; if (isset($query['context'])) { $createFields = ComponentHelper::getParams(strstr($query['context'], '.', true))->get('custom_fields_enable', 1); } if (!$createFields || !$user->authorise('core.manage', 'com_users')) { $parent->removeChild($item); continue; } } elseif ($item->element === 'com_workflow') { parse_str($item->link, $query); // Only display Workflow menus when enabled in the component $workflow = null; if (isset($query['extension'])) { $parts = explode('.', $query['extension']); $workflow = ComponentHelper::getParams($parts[0])->get('workflow_enabled') && $user->authorise('core.manage.workflow', $parts[0]); } if (!$workflow) { $parent->removeChild($item); continue; } [$assetName] = isset($query['extension']) ? explode('.', $query['extension'], 2) : ['com_workflow']; } elseif (\in_array($item->element, ['com_config', 'com_privacy', 'com_actionlogs'], true) && !$user->authorise('core.admin')) { // Special case for components which only allow super user access $parent->removeChild($item); continue; } elseif ($item->element === 'com_joomlaupdate' && !$user->authorise('core.admin')) { $parent->removeChild($item); continue; } elseif ( ($item->link === 'index.php?option=com_installer&view=install' || $item->link === 'index.php?option=com_installer&view=languages') && !$user->authorise('core.admin') ) { continue; } elseif ($item->element === 'com_admin') { parse_str($item->link, $query); if (isset($query['view']) && $query['view'] === 'sysinfo' && !$user->authorise('core.admin')) { $parent->removeChild($item); continue; } } elseif ($item->element === 'com_menus') { // Get badges for Menus containing a Home page. $iconImage = $item->icon; if ($iconImage) { if (substr($iconImage, 0, 6) === 'class:' && substr($iconImage, 6) === 'icon-home') { $iconImage = '<span class="home-image icon-home" aria-hidden="true"></span>'; $iconImage .= '<span class="visually-hidden">' . Text::_('JDEFAULT') . '</span>'; } elseif (substr($iconImage, 0, 6) === 'image:') { $iconImage = ' <span class="badge bg-secondary">' . substr($iconImage, 6) . '</span>'; } $item->iconImage = $iconImage; } } if ($assetName && !$user->authorise(($item->scope === 'edit') ? 'core.create' : 'core.manage', $assetName)) { $parent->removeChild($item); continue; } if ($item->hasChildren()) { self::preprocess($item); } // Ok we passed everything, load language at last only if ($item->element) { $language->load($item->element . '.sys', JPATH_ADMINISTRATOR) || $language->load($item->element . '.sys', JPATH_ADMINISTRATOR . '/components/' . $item->element); } if ($item->type === 'separator' && $item->getParams()->get('text_separator') == 0) { $item->title = ''; } $item->text = Text::_($item->title); } } } PKAA#]V��r..$modules/mod_toolbar/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_toolbar * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; // Echo the toolbar. echo $toolbar; PKAA#]�9���#modules/mod_toolbar/mod_toolbar.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_toolbar * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Toolbar\Toolbar; $toolbar = Toolbar::getInstance('toolbar')->render(); require ModuleHelper::getLayoutPath('mod_toolbar', $params->get('layout', 'default')); PKAA#]�X����#modules/mod_toolbar/mod_toolbar.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_toolbar</name> <author>Joomla! Project</author> <creationDate>2005-11</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_TOOLBAR_XML_DESCRIPTION</description> <files> <filename module="mod_toolbar">mod_toolbar.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_toolbar.ini</language> <language tag="en-GB">language/en-GB/mod_toolbar.sys.ini</language> </languages> <help key="Admin_Modules:_Toolbar" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]CV�ۜ�7modules/mod_privacy_dashboard/mod_privacy_dashboard.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_dashboard * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Layout\LayoutHelper; use Joomla\Module\PrivacyDashboard\Administrator\Helper\PrivacyDashboardHelper; // Only super user can view this data if (!$app->getIdentity()->authorise('core.admin')) { return; } // Boot component to ensure HTML helpers are loaded $app->bootComponent('com_privacy'); // Load the privacy component language file. $lang = $app->getLanguage(); $lang->load('com_privacy', JPATH_ADMINISTRATOR) || $lang->load('com_privacy', JPATH_ADMINISTRATOR . '/components/com_privacy'); $list = PrivacyDashboardHelper::getData(); if (count($list)) { require ModuleHelper::getLayoutPath('mod_privacy_dashboard', $params->get('layout', 'default')); } else { echo LayoutHelper::render('joomla.content.emptystate_module', [ 'textPrefix' => 'COM_PRIVACY_REQUESTS', 'icon' => 'icon-lock', ]); } PKAA#]z�c���7modules/mod_privacy_dashboard/mod_privacy_dashboard.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_privacy_dashboard</name> <author>Joomla! Project</author> <creationDate>2018-06</creationDate> <copyright>(C) 2018 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.9.0</version> <description>MOD_PRIVACY_DASHBOARD_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\PrivacyDashboard</namespace> <files> <filename module="mod_privacy_dashboard">mod_privacy_dashboard.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_privacy_dashboard.ini</language> <language tag="en-GB">language/en-GB/mod_privacy_dashboard.sys.ini</language> </languages> <help key="Admin_Modules:_Privacy_Dashboard" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> <field name="cachemode" type="hidden" default="static" > <option value="static"></option> </field> </fieldset> </fields> </config> </extension> PKAA#]&�x��Cmodules/mod_privacy_dashboard/src/Helper/PrivacyDashboardHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_dashboard * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\PrivacyDashboard\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\Database\Exception\ExecutionFailureException; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper class for admin privacy dashboard module * * @since 3.9.0 */ class PrivacyDashboardHelper { /** * Method to retrieve information about the site privacy requests * * @return array Array containing site privacy requests * * @since 3.9.0 */ public static function getData() { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select( [ 'COUNT(*) AS count', $db->quoteName('status'), $db->quoteName('request_type'), ] ) ->from($db->quoteName('#__privacy_requests')) ->group($db->quoteName('status')) ->group($db->quoteName('request_type')); $db->setQuery($query); try { return $db->loadObjectList(); } catch (ExecutionFailureException $e) { return []; } } } PKAA#]�Q=� � .modules/mod_privacy_dashboard/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_dashboard * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $totalRequests = 0; $activeRequests = 0; ?> <table class="table" id="<?php echo str_replace(' ', '', $module->title) . $module->id; ?>"> <caption class="visually-hidden"><?php echo $module->title; ?></caption> <thead> <tr> <th scope="col" class="w-40"><?php echo Text::_('COM_PRIVACY_DASHBOARD_HEADING_REQUEST_TYPE'); ?></th> <th scope="col" class="w-40"><?php echo Text::_('COM_PRIVACY_DASHBOARD_HEADING_REQUEST_STATUS'); ?></th> <th scope="col" class="w-20"><?php echo Text::_('COM_PRIVACY_DASHBOARD_HEADING_REQUEST_COUNT'); ?></th> </tr> </thead> <tbody> <?php if (count($list)) : ?> <?php foreach ($list as $i => $item) : ?> <?php if (in_array($item->status, [0, 1])) : ?> <?php $activeRequests += $item->count; ?> <?php endif; ?> <?php $totalRequests += $item->count; ?> <tr> <th scope="row"> <a href="<?php echo Route::_('index.php?option=com_privacy&view=requests&filter[request_type]=' . $item->request_type . '&filter[status]=' . $item->status); ?>"> <?php echo Text::_('COM_PRIVACY_HEADING_REQUEST_TYPE_TYPE_' . $item->request_type); ?> </a> </th> <td> <?php echo HTMLHelper::_('privacy.statusLabel', $item->status); ?> </td> <td> <span class="badge bg-info"><?php echo $item->count; ?></span> </td> </tr> <?php endforeach; ?> <?php else : ?> <tr> <td colspan="3"> <?php echo Text::_('COM_PRIVACY_DASHBOARD_NO_REQUESTS'); ?> </td> </tr> <?php endif; ?> </tbody> </table> <?php if (count($list)) : ?> <div class="row p-3"> <div class="col-md-6"><?php echo Text::plural('COM_PRIVACY_DASHBOARD_BADGE_TOTAL_REQUESTS', $totalRequests); ?></div> <div class="col-md-6"><?php echo Text::plural('COM_PRIVACY_DASHBOARD_BADGE_ACTIVE_REQUESTS', $activeRequests); ?></div> </div> <?php endif; ?> PKAA#]��rB��$modules/mod_logged/tmpl/disabled.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_logged * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; ?> <div class="mb-4"> <p class="fw-bold text-center text-muted"> <span class="icon-users" aria-hidden="true"></span> <?php echo Text::_('MOD_LOGGED_NO_SESSION_METADATA'); ?> </p> </div> PKAA#]{R � #modules/mod_logged/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_logged * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; ?> <table class="table" id="<?php echo str_replace(' ', '', $module->title) . $module->id; ?>"> <caption class="visually-hidden"><?php echo $module->title; ?></caption> <thead> <tr> <th scope="col" class="w-50"> <?php if ($params->get('name', 1) == 0) : ?> <?php echo Text::_('JGLOBAL_USERNAME'); ?> <?php else : ?> <?php echo Text::_('MOD_LOGGED_NAME'); ?> <?php endif; ?> </th> <th scope="col" class="w-30"><?php echo Text::_('JCLIENT'); ?></th> <th scope="col" class="w-20"><?php echo Text::_('JDATE'); ?></th> </tr> </thead> <tbody> <?php foreach ($users as $user) : ?> <tr> <th scope="row"> <?php if (isset($user->editLink)) : ?> <a href="<?php echo $user->editLink; ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo htmlspecialchars($user->name, ENT_QUOTES, 'UTF-8'); ?>"> <?php echo htmlspecialchars($user->name, ENT_QUOTES, 'UTF-8'); ?> </a> <?php else : ?> <?php echo htmlspecialchars($user->name, ENT_QUOTES, 'UTF-8'); ?> <?php endif; ?> </th> <td> <?php if ($user->client_id === null) : ?> <?php // This is a shared session so we do not know the client ?> <?php echo Text::_('JGLOBAL_NONAPPLICABLE'); ?> <?php elseif ($user->client_id) : ?> <?php echo Text::_('JADMINISTRATION'); ?> <?php else : ?> <form action="<?php echo $user->logoutLink; ?>" method="post" name="adminForm"> <?php echo Text::_('JSITE'); ?> <button type="submit" class="me-2 btn btn-danger btn-sm"> <?php echo Text::_('JLOGOUT'); ?> </button> </form> <?php endif; ?> </td> <td> <?php echo HTMLHelper::_('date', $user->time, Text::_('DATE_FORMAT_LC5')); ?> </td> </tr> <?php endforeach; ?> </tbody> </table> PKAA#]�èC C .modules/mod_logged/src/Helper/LoggedHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_logged * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Logged\Administrator\Helper; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\Database\DatabaseInterface; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_logged * * @since 1.5 */ abstract class LoggedHelper { /** * Get a list of logged users. * * @param Registry $params The module parameters * @param CMSApplication $app The application * @param DatabaseInterface $db The database * * @return mixed An array of users, or false on error. * * @throws \RuntimeException */ public static function getList(Registry $params, CMSApplication $app, DatabaseInterface $db) { $user = $app->getIdentity(); $query = $db->getQuery(true) ->select('s.time, s.client_id, u.id, u.name, u.username') ->from('#__session AS s') ->join('LEFT', '#__users AS u ON s.userid = u.id') ->where('s.guest = 0') ->setLimit($params->get('count', 5), 0); $db->setQuery($query); try { $results = $db->loadObjectList(); } catch (\RuntimeException $e) { throw $e; } foreach ($results as $k => $result) { $results[$k]->logoutLink = ''; if ($user->authorise('core.manage', 'com_users')) { $results[$k]->editLink = Route::_('index.php?option=com_users&task=user.edit&id=' . $result->id); $results[$k]->logoutLink = Route::_( 'index.php?option=com_login&task=logout&uid=' . $result->id . '&' . Session::getFormToken() . '=1' ); } if ($params->get('name', 1) == 0) { $results[$k]->name = $results[$k]->username; } } return $results; } /** * Get the alternate title for the module * * @param \Joomla\Registry\Registry $params The module parameters. * * @return string The alternate title for the module. */ public static function getTitle($params) { return Text::plural('MOD_LOGGED_TITLE', $params->get('count', 5)); } } PKAA#]?�~@**!modules/mod_logged/mod_logged.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_logged</name> <author>Joomla! Project</author> <creationDate>2005-01</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_LOGGED_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Logged</namespace> <files> <filename module="mod_logged">mod_logged.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_logged.ini</language> <language tag="en-GB">language/en-GB/mod_logged.sys.ini</language> </languages> <help key="Admin_Modules:_Logged-in_Users" /> <config> <fields name="params"> <fieldset name="basic"> <field name="count" type="number" label="MOD_LOGGED_FIELD_COUNT_LABEL" default="5" filter="integer" min="1" validate="number" /> <field name="name" type="list" label="MOD_LOGGED_NAME" default="1" filter="integer" validate="options" > <option value="1">MOD_LOGGED_NAME</option> <option value="0">JGLOBAL_USERNAME</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="automatic_title" type="radio" label="COM_MODULES_FIELD_AUTOMATIC_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> </fields> </config> </extension> PKAA#]\�||!modules/mod_logged/mod_logged.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_logged * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Database\DatabaseInterface; use Joomla\Module\Logged\Administrator\Helper\LoggedHelper; if ($params->get('automatic_title', 0)) { $module->title = LoggedHelper::getTitle($params); } // Check if session metadata tracking is enabled if ($app->get('session_metadata', true)) { $users = LoggedHelper::getList($params, $app, Factory::getContainer()->get(DatabaseInterface::class)); require ModuleHelper::getLayoutPath('mod_logged', $params->get('layout', 'default')); } else { require ModuleHelper::getLayoutPath('mod_logged', 'disabled'); } PKAA#]J����%modules/mod_messages/mod_messages.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_messages * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; // Check permissions. if (!$app->getIdentity()->authorise('core.login.admin') || !$app->getIdentity()->authorise('core.manage', 'com_messages')) { return; } // Try to get the items from the messages model try { /** @var \Joomla\Component\Messages\Administrator\Model\MessagesModel $messagesModel */ $messagesModel = $app->bootComponent('com_messages')->getMVCFactory() ->createModel('Messages', 'Administrator', ['ignore_request' => true]); $messagesModel->setState('filter.state', 0); $messages = $messagesModel->getItems(); } catch (RuntimeException $e) { $messages = []; // Still render the error message from the Exception object $app->enqueueMessage($e->getMessage(), 'error'); } $countUnread = count($messages); require ModuleHelper::getLayoutPath('mod_messages', $params->get('layout', 'default')); PKAA#]��6t��%modules/mod_messages/mod_messages.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_messages</name> <author>Joomla! Project</author> <creationDate>2019-07</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_MESSAGES_XML_DESCRIPTION</description> <files> <filename module="mod_messages">mod_messages.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_messages.ini</language> <language tag="en-GB">language/en-GB/mod_messages.sys.ini</language> </languages> <help key="Admin_Modules:_Messages" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]��uZ��%modules/mod_messages/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_messages * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $hideLinks = $app->getInput()->getBool('hidemainmenu'); if ($hideLinks || $countUnread < 1) { return; } $route = 'index.php?option=com_messages&view=messages'; ?> <a class="header-item-content" href="<?php echo Route::_($route); ?>" title="<?php echo Text::_('MOD_MESSAGES_PRIVATE_MESSAGES'); ?>"> <div class="header-item-icon"> <div class="w-auto"> <span class="icon-envelope icon-fw" aria-hidden="true"></span> <small class="header-item-count"><?php echo $countUnread; ?></small> </div> </div> <div class="header-item-text"> <?php echo Text::_('MOD_MESSAGES_PRIVATE_MESSAGES'); ?> </div> </a> PKAA#] v��� � #modules/mod_popular/mod_popular.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_popular</name> <author>Joomla! Project</author> <creationDate>2004-07</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_POPULAR_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Popular</namespace> <files> <filename module="mod_popular">mod_popular.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_popular.ini</language> <language tag="en-GB">language/en-GB/mod_popular.sys.ini</language> </languages> <help key="Admin_Modules:_Popular_Articles" /> <config> <fields name="params"> <fieldset name="basic"> <field name="count" type="number" label="MOD_POPULAR_FIELD_COUNT_LABEL" default="5" filter="integer" min="1" validate="number" /> <field name="catid" type="category" label="JCATEGORY" extension="com_content" default="" filter="integer" > <option value="">JOPTION_ANY_CATEGORY</option> </field> <field name="user_id" type="list" label="MOD_POPULAR_FIELD_AUTHORS_LABEL" default="0" validate="options" > <option value="0">MOD_POPULAR_FIELD_VALUE_ANYONE</option> <option value="by_me">MOD_POPULAR_FIELD_VALUE_ADDED_OR_MODIFIED_BY_ME</option> <option value="not_me">MOD_POPULAR_FIELD_VALUE_NOT_ADDED_OR_MODIFIED_BY_ME</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="automatic_title" type="radio" label="COM_MODULES_FIELD_AUTOMATIC_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> </fields> </config> </extension> PKAA#]��h˵�#modules/mod_popular/mod_popular.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_popular * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Layout\LayoutHelper; use Joomla\Module\Popular\Administrator\Helper\PopularHelper; $model = $app->bootComponent('com_content')->getMVCFactory()->createModel('Articles', 'Administrator', ['ignore_request' => true]); $list = PopularHelper::getList($params, $model); // Get module data. if ($params->get('automatic_title', 0)) { $module->title = PopularHelper::getTitle($params); } // If recording of hits is disabled. if (!ComponentHelper::getParams('com_content')->get('record_hits', 1)) { echo LayoutHelper::render('joomla.content.emptystate_module', [ 'title' => 'JGLOBAL_RECORD_HITS_DISABLED', 'icon' => 'icon-minus-circle', ]); return; } // If there are some articles to display. if (count($list)) { require ModuleHelper::getLayoutPath('mod_popular', $params->get('layout', 'default')); return; } // If there are no articles to display, show empty state. $app->getLanguage()->load('com_content'); echo LayoutHelper::render('joomla.content.emptystate_module', [ 'textPrefix' => 'COM_CONTENT', 'icon' => 'icon-copy', ]); PKAA#]S�880modules/mod_popular/src/Helper/PopularHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_popular * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Popular\Administrator\Helper; use Joomla\CMS\Categories\Categories; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Content\Administrator\Model\ArticlesModel; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_popular * * @since 1.6 */ abstract class PopularHelper { /** * Get a list of the most popular articles. * * @param Registry &$params The module parameters. * @param ArticlesModel $model The model. * * @return mixed An array of articles, or false on error. * * @throws \Exception */ public static function getList(Registry &$params, ArticlesModel $model) { $user = Factory::getUser(); // Set List SELECT $model->setState('list.select', 'a.id, a.title, a.checked_out, a.checked_out_time, ' . ' a.created_by, a.publish_up, a.hits'); // Set Ordering filter $model->setState('list.ordering', 'a.hits'); $model->setState('list.direction', 'DESC'); // Set Category Filter $categoryId = $params->get('catid', null); if (is_numeric($categoryId)) { $model->setState('filter.category_id', $categoryId); } // Set User Filter. $userId = $user->get('id'); switch ($params->get('user_id', '0')) { case 'by_me': $model->setState('filter.author_id', $userId); break; case 'not_me': $model->setState('filter.author_id', $userId); $model->setState('filter.author_id.include', false); break; } // Set the Start and Limit $model->setState('list.start', 0); $model->setState('list.limit', $params->get('count', 5)); $items = $model->getItems(); if ($error = $model->getError()) { throw new \Exception($error, 500); } // Set the links foreach ($items as &$item) { $item->link = ''; if ( $user->authorise('core.edit', 'com_content.article.' . $item->id) || ($user->authorise('core.edit.own', 'com_content.article.' . $item->id) && ($userId === $item->created_by)) ) { $item->link = Route::_('index.php?option=com_content&task=article.edit&id=' . $item->id); } } return $items; } /** * Get the alternate title for the module * * @param Registry $params The module parameters. * * @return string The alternate title for the module. */ public static function getTitle($params) { $who = $params->get('user_id', 0); $catid = (int) $params->get('catid', null); $title = ''; if ($catid) { $category = Categories::getInstance('Content')->get($catid); $title = Text::_('MOD_POPULAR_UNEXISTING'); if ($category) { $title = $category->title; } } return Text::plural( 'MOD_POPULAR_TITLE' . ($catid ? '_CATEGORY' : '') . ($who != '0' ? "_$who" : ''), (int) $params->get('count', 5), $title ); } } PKAA#]��W� � $modules/mod_popular/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_popular * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; $moduleId = str_replace(' ', '', $module->title) . $module->id; ?> <table class="table" id="<?php echo str_replace(' ', '', $module->title) . $module->id; ?>"> <caption class="visually-hidden"><?php echo $module->title; ?></caption> <thead> <tr> <th scope="col" class="w-60"><?php echo Text::_('JGLOBAL_TITLE'); ?></th> <th scope="col" class="w-20"><?php echo Text::_('JGLOBAL_HITS'); ?></th> <th scope="col" class="w-20"><?php echo Text::_('JDATE'); ?></th> </tr> </thead> <tbody> <?php if (count($list)) : ?> <?php foreach ($list as $i => $item) : ?> <?php // Calculate popular items ?> <?php $hits = (int) $item->hits; ?> <?php $hits_class = ($hits >= 10000 ? 'danger' : ($hits >= 1000 ? 'warning' : ($hits >= 100 ? 'info' : 'secondary'))); ?> <tr> <th scope="row"> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $moduleId . $i, $item->editor, $item->checked_out_time); ?> <?php endif; ?> <?php if ($item->link) : ?> <a href="<?php echo $item->link; ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?>"> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?> </a> <?php else : ?> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?> <?php endif; ?> </th> <td> <span class="badge bg-<?php echo $hits_class; ?>"><?php echo $item->hits; ?></span> </td> <td> <?php echo HTMLHelper::_('date', $item->publish_up, Text::_('DATE_FORMAT_LC4')); ?> </td> </tr> <?php endforeach; ?> <?php else : ?> <tr> <td colspan="3"> <?php echo Text::_('MOD_POPULAR_NO_MATCHING_RESULTS'); ?> </td> </tr> <?php endif; ?> </tbody> </table> PKAA#]����!modules/mod_latest/mod_latest.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latest * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Layout\LayoutHelper; use Joomla\Module\Latest\Administrator\Helper\LatestHelper; $model = $app->bootComponent('com_content')->getMVCFactory()->createModel('Articles', 'Administrator', ['ignore_request' => true]); $list = LatestHelper::getList($params, $model); $workflow_enabled = ComponentHelper::getParams('com_content')->get('workflow_enabled'); if ($workflow_enabled) { $app->getLanguage()->load('com_workflow'); } if ($params->get('automatic_title', 0)) { $module->title = LatestHelper::getTitle($params); } if (count($list)) { require ModuleHelper::getLayoutPath('mod_latest', $params->get('layout', 'default')); } else { $app->getLanguage()->load('com_content'); echo LayoutHelper::render('joomla.content.emptystate_module', [ 'textPrefix' => 'COM_CONTENT', 'icon' => 'icon-copy', ]); } PKAA#]#��̰ � !modules/mod_latest/mod_latest.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_latest</name> <author>Joomla! Project</author> <creationDate>2004-07</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_LATEST_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Latest</namespace> <files> <filename module="mod_latest">mod_latest.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_latest.ini</language> <language tag="en-GB">language/en-GB/mod_latest.sys.ini</language> </languages> <help key="Admin_Modules:_Articles_-_Latest" /> <config> <fields name="params"> <fieldset name="basic"> <field name="count" type="number" label="MOD_LATEST_FIELD_COUNT_LABEL" default="5" filter="integer" min="1" validate="number" /> <field name="ordering" type="list" label="MOD_LATEST_FIELD_ORDERING_LABEL" default="c_dsc" validate="options" > <option value="c_dsc">MOD_LATEST_FIELD_VALUE_ORDERING_ADDED</option> <option value="m_dsc">MOD_LATEST_FIELD_VALUE_ORDERING_MODIFIED</option> </field> <field name="catid" type="category" label="JCATEGORY" extension="com_content" default="" filter="integer" > <option value="">JOPTION_ANY_CATEGORY</option> </field> <field name="user_id" type="list" label="MOD_LATEST_FIELD_AUTHORS_LABEL" default="0" validate="options" > <option value="0">MOD_LATEST_FIELD_VALUE_AUTHORS_ANYONE</option> <option value="by_me">MOD_LATEST_FIELD_VALUE_AUTHORS_BY_ME</option> <option value="not_me">MOD_LATEST_FIELD_VALUE_AUTHORS_NOT_BY_ME</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="automatic_title" type="radio" label="COM_MODULES_FIELD_AUTOMATIC_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> </fields> </config> </extension> PKAA#]k�qE� � #modules/mod_latest/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latest * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; $moduleId = str_replace(' ', '', $module->title) . $module->id; ?> <table class="table" id="<?php echo $moduleId; ?>"> <caption class="visually-hidden"><?php echo $module->title; ?></caption> <thead> <tr> <th scope="col"><?php echo Text::_('JGLOBAL_TITLE'); ?></th> <?php if ($workflow_enabled) : ?> <th scope="col" class="w-20"><?php echo Text::_('JSTAGE'); ?></th> <?php endif; ?> <th scope="col" class="w-20"><?php echo Text::_('JAUTHOR'); ?></th> <th scope="col" class="w-20"><?php echo Text::_('JDATE'); ?></th> </tr> </thead> <tbody> <?php if (count($list)) : ?> <?php foreach ($list as $i => $item) : ?> <tr> <th scope="row"> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $moduleId . $i, $item->editor, $item->checked_out_time, $module->id); ?> <?php endif; ?> <?php if ($item->link) : ?> <a href="<?php echo $item->link; ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?>"> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?> </a> <?php else : ?> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?> <?php endif; ?> </th> <?php if ($workflow_enabled) : ?> <td> <?php echo Text::_($item->stage_title); ?> </td> <?php endif; ?> <td> <?php echo $item->author_name; ?> </td> <td> <?php echo HTMLHelper::_('date', $item->created, Text::_('DATE_FORMAT_LC4')); ?> </td> </tr> <?php endforeach; ?> <?php else : ?> <tr> <td colspan="3"> <?php echo Text::_('MOD_LATEST_NO_MATCHING_RESULTS'); ?> </td> </tr> <?php endif; ?> </tbody> </table> PKAA#]�F1 .modules/mod_latest/src/Helper/LatestHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latest * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Latest\Administrator\Helper; use Joomla\CMS\Categories\Categories; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Content\Administrator\Model\ArticlesModel; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_latest * * @since 1.5 */ abstract class LatestHelper { /** * Get a list of articles. * * @param Registry &$params The module parameters. * @param ArticlesModel $model The model. * * @return mixed An array of articles, or false on error. */ public static function getList(Registry &$params, ArticlesModel $model) { $user = Factory::getUser(); // Set List SELECT $model->setState('list.select', 'a.id, a.title, a.checked_out, a.checked_out_time, ' . ' a.access, a.created, a.created_by, a.created_by_alias, a.featured, a.state, a.publish_up, a.publish_down'); // Set Ordering filter switch ($params->get('ordering', 'c_dsc')) { case 'm_dsc': $model->setState('list.ordering', 'a.modified DESC, a.created'); $model->setState('list.direction', 'DESC'); break; case 'c_dsc': default: $model->setState('list.ordering', 'a.created'); $model->setState('list.direction', 'DESC'); break; } // Set Category Filter $categoryId = $params->get('catid', null); if (is_numeric($categoryId)) { $model->setState('filter.category_id', $categoryId); } // Set User Filter. $userId = $user->get('id'); switch ($params->get('user_id', '0')) { case 'by_me': $model->setState('filter.author_id', $userId); break; case 'not_me': $model->setState('filter.author_id', $userId); $model->setState('filter.author_id.include', false); break; } // Set the Start and Limit $model->setState('list.start', 0); $model->setState('list.limit', $params->get('count', 5)); $items = $model->getItems(); if ($error = $model->getError()) { throw new \Exception($error, 500); } // Set the links foreach ($items as &$item) { $item->link = ''; if ( $user->authorise('core.edit', 'com_content.article.' . $item->id) || ($user->authorise('core.edit.own', 'com_content.article.' . $item->id) && ($userId === $item->created_by)) ) { $item->link = Route::_('index.php?option=com_content&task=article.edit&id=' . $item->id); } } return $items; } /** * Get the alternate title for the module. * * @param \Joomla\Registry\Registry $params The module parameters. * * @return string The alternate title for the module. */ public static function getTitle($params) { $who = $params->get('user_id', 0); $catid = (int) $params->get('catid', null); $type = $params->get('ordering') === 'c_dsc' ? '_CREATED' : '_MODIFIED'; $title = ''; if ($catid) { $category = Categories::getInstance('Content')->get($catid); $title = Text::_('MOD_POPULAR_UNEXISTING'); if ($category) { $title = $category->title; } } return Text::plural( 'MOD_LATEST_TITLE' . $type . ($catid ? '_CATEGORY' : '') . ($who != '0' ? "_$who" : ''), (int) $params->get('count', 5), $title ); } } PKAA#]��:�''modules/mod_login/mod_login.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_login</name> <author>Joomla! Project</author> <creationDate>2005-03</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_LOGIN_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Login</namespace> <files> <filename module="mod_login">mod_login.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_login.ini</language> <language tag="en-GB">language/en-GB/mod_login.sys.ini</language> </languages> <help key="Admin_Modules:_Login_Form" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]������modules/mod_login/mod_login.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_login * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\AuthenticationHelper; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Module\Login\Administrator\Helper\LoginHelper; $langs = LoginHelper::getLanguageList(); $extraButtons = AuthenticationHelper::getLoginButtons('form-login'); $return = LoginHelper::getReturnUri(); require ModuleHelper::getLayoutPath('mod_login', $params->get('layout', 'default')); PKAA#]&�[��,modules/mod_login/src/Helper/LoginHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_login * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Login\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_login * * @since 1.6 */ abstract class LoginHelper { /** * Get an HTML select list of the available languages. * * @return string */ public static function getLanguageList() { $languages = LanguageHelper::createLanguageList(null, JPATH_ADMINISTRATOR, false, true); if (\count($languages) <= 1) { return ''; } usort( $languages, function ($a, $b) { return strcmp($a['value'], $b['value']); } ); // Fix wrongly set parentheses in RTL languages if (Factory::getApplication()->getLanguage()->isRtl()) { foreach ($languages as &$language) { $language['text'] = $language['text'] . '‎'; } } array_unshift($languages, HTMLHelper::_('select.option', '', Text::_('JDEFAULTLANGUAGE'))); return HTMLHelper::_('select.genericlist', $languages, 'lang', 'class="form-select"', 'value', 'text', null); } /** * Get the redirect URI after login. * * @return string */ public static function getReturnUri() { $uri = Uri::getInstance(); $return = 'index.php' . $uri->toString(['query']); if ($return != 'index.php?option=com_login') { return base64_encode($return); } else { return base64_encode('index.php'); } } } PKAA#]�-0M��"modules/mod_login/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_login * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $app->getDocument()->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('field.passwordview') ->registerAndUseScript('mod_login.admin', 'mod_login/admin-login.min.js', [], ['defer' => true], ['core', 'form.validate']); Text::script('JSHOWPASSWORD'); Text::script('JHIDEPASSWORD'); ?> <form class="form-validate" action="<?php echo Route::_('index.php', true); ?>" method="post" id="form-login"> <fieldset> <legend class="visually-hidden"><?php echo Text::_('MOD_LOGIN'); ?></legend> <div class="form-group"> <label for="mod-login-username"> <?php echo Text::_('JGLOBAL_USERNAME'); ?> </label> <div class="input-group"> <input name="username" id="mod-login-username" type="text" class="form-control" required="required" autofocus autocomplete="username" > </div> </div> <div class="form-group"> <label for="mod-login-password"> <?php echo Text::_('JGLOBAL_PASSWORD'); ?> </label> <div class="input-group"> <input name="passwd" id="mod-login-password" type="password" class="form-control input-full" required="required" autocomplete="current-password" > <button type="button" class="btn btn-primary input-password-toggle"> <span class="icon-eye icon-fw" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('JSHOWPASSWORD'); ?></span> </button> </div> </div> <div class="mt-4"> <?php if (!empty($langs)) : ?> <div class="form-group"> <label for="lang"> <?php echo Text::_('MOD_LOGIN_LANGUAGE'); ?> </label> <?php echo $langs; ?> </div> <?php endif; ?> <?php foreach ($extraButtons as $button) : $dataAttributeKeys = array_filter(array_keys($button), function ($key) { return substr($key, 0, 5) == 'data-'; }); ?> <div class="form-group"> <button type="button" class="btn btn-secondary w-100 <?php echo $button['class'] ?? '' ?>" <?php foreach ($dataAttributeKeys as $key) : ?> <?php echo $key ?>="<?php echo $button[$key] ?>" <?php endforeach; ?> <?php if ($button['onclick']) : ?> onclick="<?php echo $button['onclick'] ?>" <?php endif; ?> title="<?php echo Text::_($button['label']) ?>" id="<?php echo $button['id'] ?>" > <?php if (!empty($button['icon'])) : ?> <span class="<?php echo $button['icon'] ?>"></span> <?php elseif (!empty($button['image'])) : ?> <?php echo $button['image']; ?> <?php elseif (!empty($button['svg'])) : ?> <?php echo $button['svg']; ?> <?php endif; ?> <?php echo Text::_($button['label']) ?> </button> </div> <?php endforeach; ?> <div class="form-group"> <button type="submit" id="btn-login-submit" class="btn btn-primary w-100 btn-lg"><?php echo Text::_('JLOGIN'); ?></button> </div> <input type="hidden" name="option" value="com_login"> <input type="hidden" name="task" value="login"> <input type="hidden" name="return" value="<?php echo $return; ?>"> <?php echo HTMLHelper::_('form.token'); ?> </div> </fieldset> </form> <div class="text-center"> <div> <?php echo HTMLHelper::link( Text::_('MOD_LOGIN_CREDENTIALS_LINK'), Text::_('MOD_LOGIN_CREDENTIALS'), [ 'target' => '_blank', 'rel' => 'noopener nofollow', 'title' => Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_('MOD_LOGIN_CREDENTIALS')) ] ); ?> </div> </div> PKAA#]�%�U��modules/mod_title/mod_title.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_title</name> <author>Joomla! Project</author> <creationDate>2005-11</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_TITLE_XML_DESCRIPTION</description> <files> <filename module="mod_title">mod_title.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_title.ini</language> <language tag="en-GB">language/en-GB/mod_title.sys.ini</language> </languages> <help key="Admin_Modules:_Title" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]��BW��modules/mod_title/mod_title.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_title * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; // Get the component title div if (isset($app->JComponentTitle)) { $title = $app->JComponentTitle; } require ModuleHelper::getLayoutPath('mod_title', $params->get('layout', 'default')); PKAA#]x��"modules/mod_title/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_title * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; ?> <?php if (!empty($title)) : ?> <div class="d-flex align-items-center"> <div class="container-title"> <?php echo $title; ?> </div> </div> <?php endif; ?> PKAA#]i�M::7modules/mod_stats_admin/src/Helper/StatsAdminHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_stats_admin * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\StatsAdmin\Administrator\Helper; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Language\Text; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\Database\DatabaseInterface; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper class for admin stats module * * @since 3.0 */ class StatsAdminHelper { /** * Method to retrieve information about the site * * @param Registry $params The module parameters * @param CMSApplication $app The application * @param DatabaseInterface $db The database * * @return array Array containing site information * * @since 3.0 */ public static function getStats(Registry $params, CMSApplication $app, DatabaseInterface $db) { $user = $app->getIdentity(); $rows = []; $query = $db->getQuery(true); $serverinfo = $params->get('serverinfo', 0); $siteinfo = $params->get('siteinfo', 0); $i = 0; if ($serverinfo) { $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_('MOD_STATS_PHP'); $rows[$i]->icon = 'cogs'; $rows[$i]->data = PHP_VERSION; $i++; $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_($db->name); $rows[$i]->icon = 'database'; $rows[$i]->data = $db->getVersion(); $i++; $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_('MOD_STATS_CACHING'); $rows[$i]->icon = 'tachometer-alt'; $rows[$i]->data = $app->get('caching') ? Text::_('JENABLED') : Text::_('JDISABLED'); $i++; $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_('MOD_STATS_GZIP'); $rows[$i]->icon = 'bolt'; $rows[$i]->data = $app->get('gzip') ? Text::_('JENABLED') : Text::_('JDISABLED'); $i++; } if ($siteinfo) { $query->select('COUNT(id) AS count_users') ->from('#__users'); $db->setQuery($query); try { $users = $db->loadResult(); } catch (\RuntimeException $e) { $users = false; } $query->clear() ->select('COUNT(id) AS count_items') ->from('#__content') ->where('state = 1'); $db->setQuery($query); try { $items = $db->loadResult(); } catch (\RuntimeException $e) { $items = false; } if ($users) { $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_('MOD_STATS_USERS'); $rows[$i]->icon = 'users'; $rows[$i]->data = $users; if ($user->authorise('core.manage', 'com_users')) { $rows[$i]->link = Route::_('index.php?option=com_users'); } $i++; } if ($items) { $rows[$i] = new \stdClass(); $rows[$i]->title = Text::_('MOD_STATS_ARTICLES'); $rows[$i]->icon = 'file'; $rows[$i]->data = $items; $rows[$i]->link = Route::_('index.php?option=com_content&view=articles&filter[published]=1'); $i++; } } // Include additional data defined by published system plugins PluginHelper::importPlugin('system'); $arrays = (array) $app->triggerEvent('onGetStats', ['mod_stats_admin']); foreach ($arrays as $response) { foreach ($response as $row) { // We only add a row if the title and data are given if (isset($row['title']) && isset($row['data'])) { $rows[$i] = new \stdClass(); $rows[$i]->title = $row['title']; $rows[$i]->icon = $row['icon'] ?? 'info'; $rows[$i]->data = $row['data']; $rows[$i]->link = isset($row['link']) ? $row['link'] : null; $i++; } } } return $rows; } } PKAA#]p^=lvv(modules/mod_stats_admin/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_stats_admin * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; \Joomla\CMS\Factory::getApplication()->getDocument()->addScriptDeclaration(' (function() { document.addEventListener(\'DOMContentLoaded\', function() { var elms = document.querySelectorAll("a.js-revert"); if (elms.length) { elms.forEach(function(el) { el.addEventListener("click", function(e) { e.preventDefault(); e.stopPropagation(); var activeTab = []; activeTab.push("#" + e.target.href.split("#")[1]); var path = window.location.pathname; localStorage.removeItem(e.target.href.replace(/&return=[a-zA-Z0-9%]+/, "").replace(/&[a-zA-Z-_]+=[0-9]+/, "")); localStorage.setItem(path + e.target.href.split("index.php")[1].split("#")[0], JSON.stringify(activeTab)); return window.location.href = e.target.href.split("#")[0]; }); }); } }); })(); '); ?> <ul class="list-group list-group-flush stats-module"> <?php foreach ($list as $item) : ?> <li class="list-group-item"> <span class="me-2 icon-<?php echo $item->icon; ?> icon-fw" aria-hidden="true"></span> <?php echo $item->title; ?> <?php if (isset($item->link)) : ?> <a class="btn btn-info btn-sm js-revert" href="<?php echo $item->link; ?>"><?php echo $item->data; ?></a> <?php else : ?> <?php echo $item->data; ?> <?php endif; ?> </li> <?php endforeach; ?> </ul> PKAA#]��~� � +modules/mod_stats_admin/mod_stats_admin.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_stats_admin</name> <author>Joomla! Project</author> <creationDate>2004-07</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_STATS_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\StatsAdmin</namespace> <files> <filename module="mod_stats_admin">mod_stats_admin.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_stats.ini</language> <language tag="en-GB">language/en-GB/mod_stats.sys.ini</language> </languages> <help key="Site_Modules:_Statistics" /> <config> <fields name="params"> <fieldset name="basic"> <field name="serverinfo" type="radio" label="MOD_STATS_FIELD_SERVERINFO_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="siteinfo" type="radio" label="MOD_STATS_FIELD_SITEINFO_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> <field name="cachemode" type="hidden" default="static" > <option value="static"></option> </field> </fieldset> </fields> </config> </extension> PKAA#]�-a���+modules/mod_stats_admin/mod_stats_admin.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_stats_admin * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Database\DatabaseInterface; use Joomla\Module\StatsAdmin\Administrator\Helper\StatsAdminHelper; $serverinfo = $params->get('serverinfo'); $siteinfo = $params->get('siteinfo'); $list = StatsAdminHelper::getStats($params, $app, Factory::getContainer()->get(DatabaseInterface::class)); require ModuleHelper::getLayoutPath('mod_stats_admin', $params->get('layout', 'default')); PKAA#]��L��modules/mod_menu/mod_menu.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_menu</name> <author>Joomla! Project</author> <creationDate>2006-03</creationDate> <copyright>(C) 2006 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_MENU_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Menu</namespace> <files> <filename module="mod_menu">mod_menu.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_menu.ini</language> <language tag="en-GB">language/en-GB/mod_menu.sys.ini</language> </languages> <help key="Admin_Modules:_Administrator_Menu" /> <config> <fields name="params"> <fieldset name="basic" addfieldprefix="Joomla\Component\Menus\Administrator\Field"> <field name="menutype" type="menu" label="MOD_MENU_FIELD_MENUTYPE_LABEL" clientid="1" > <option value="*">MOD_MENU_FIELD_MENUTYPE_OPTION_PREDEFINED</option> </field> <field name="preset" type="menuPreset" default="default" label="MOD_MENU_FIELD_PRESET_LABEL" description="MOD_MENU_FIELD_PRESET_DESC" showon="menutype:*" /> <field name="check" type="radio" label="MOD_MENU_FIELD_CHECK_LABEL" description="MOD_MENU_FIELD_CHECK_DESC" layout="joomla.form.field.radio.switcher" default="1" filter="integer" showon="menutype!:*" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="shownew" type="radio" label="MOD_MENU_FIELD_SHOWNEW" layout="joomla.form.field.radio.switcher" default="1" filter="integer" showon="menutype:*" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="showhelp" type="radio" label="MOD_MENU_FIELD_SHOWHELP" layout="joomla.form.field.radio.switcher" default="1" filter="integer" showon="menutype:*" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="forum_url" type="url" label="MOD_MENU_FIELD_FORUMURL_LABEL" description="MOD_MENU_FIELD_FORUMURL_DESC" filter="url" default="" showon="menutype:*" validate="url" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]9��ikkmodules/mod_menu/mod_menu.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_menu * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Module\Menu\Administrator\Menu\CssMenu; $enabled = !$app->getInput()->getBool('hidemainmenu'); $menu = new CssMenu($app); $root = $menu->load($params, $enabled); $root->level = 0; // Render the module layout require ModuleHelper::getLayoutPath('mod_menu', $params->get('layout', 'default')); PKAA#]ۡ�B�F�F%modules/mod_menu/src/Menu/CssMenu.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_menu * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Menu\Administrator\Menu; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Text; use Joomla\CMS\Menu\AdministratorMenuItem; use Joomla\CMS\Table\Table; use Joomla\CMS\Uri\Uri; use Joomla\Component\Menus\Administrator\Helper\MenusHelper; use Joomla\Registry\Registry; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Tree based class to render the admin menu * * @since 1.5 */ class CssMenu { /** * The root of the menu * * @var AdministratorMenuItem * * @since 4.0.0 */ protected $root; /** * An array of AdministratorMenuItem nodes * * @var AdministratorMenuItem[] * * @since 4.0.0 */ protected $nodes = []; /** * The module options * * @var Registry * * @since 3.8.0 */ protected $params; /** * The menu bar state * * @var boolean * * @since 3.8.0 */ protected $enabled; /** * The application * * @var CMSApplication * * @since 4.0.0 */ protected $application; /** * A counter for unique IDs * * @var integer * * @since 4.0.0 */ protected $counter = 0; /** * CssMenu constructor. * * @param CMSApplication $application The application * * @since 4.0.0 */ public function __construct(CMSApplication $application) { $this->application = $application; $this->root = new AdministratorMenuItem(); } /** * Populate the menu items in the menu tree object * * @param Registry $params Menu configuration parameters * @param bool $enabled Whether the menu should be enabled or disabled * * @return AdministratorMenuItem Root node of the menu tree * * @since 3.7.0 */ public function load($params, $enabled) { $this->params = $params; $this->enabled = $enabled; $menutype = $this->params->get('menutype', '*'); if ($menutype === '*') { $name = $this->params->get('preset', 'default'); $this->root = MenusHelper::loadPreset($name); } else { $this->root = MenusHelper::getMenuItems($menutype, true); // Can we access everything important with this menu? Create a recovery menu! if ( $this->enabled && $this->params->get('check', 1) && $this->check($this->root, $this->params) ) { $this->params->set('recovery', true); // In recovery mode, load the preset inside a special root node. $this->root = new AdministratorMenuItem(['level' => 0]); $heading = new AdministratorMenuItem(['title' => 'MOD_MENU_RECOVERY_MENU_ROOT', 'type' => 'heading']); $this->root->addChild($heading); MenusHelper::loadPreset('default', true, $heading); $this->preprocess($this->root); $this->root->addChild(new AdministratorMenuItem(['type' => 'separator'])); // Add link to exit recovery mode $uri = clone Uri::getInstance(); $uri->setVar('recover_menu', 0); $this->root->addChild(new AdministratorMenuItem(['title' => 'MOD_MENU_RECOVERY_EXIT', 'type' => 'url', 'link' => $uri->toString()])); return $this->root; } } $this->preprocess($this->root); return $this->root; } /** * Method to render a given level of a menu using provided layout file * * @param string $layoutFile The layout file to be used to render * @param AdministratorMenuItem $node Node to render the children of * * @return void * * @since 3.8.0 */ public function renderSubmenu($layoutFile, $node) { if (is_file($layoutFile)) { $children = $node->getChildren(); foreach ($children as $current) { $current->level = $node->level + 1; // This sets the scope to this object for the layout file and also isolates other `include`s require $layoutFile; } } } /** * Check the flat list of menu items for important links * * @param AdministratorMenuItem $node The menu items array * @param Registry $params Module options * * @return boolean Whether to show recovery menu * * @since 3.8.0 */ protected function check($node, Registry $params) { $me = $this->application->getIdentity(); $authMenus = $me->authorise('core.manage', 'com_menus'); $authModules = $me->authorise('core.manage', 'com_modules'); if (!$authMenus && !$authModules) { return false; } $items = $node->getChildren(true); $types = array_column($items, 'type'); $elements = array_column($items, 'element'); $rMenu = $authMenus && !\in_array('com_menus', $elements); $rModule = $authModules && !\in_array('com_modules', $elements); $rContainer = !\in_array('container', $types); if ($rMenu || $rModule || $rContainer) { $recovery = $this->application->getUserStateFromRequest('mod_menu.recovery', 'recover_menu', 0, 'int'); if ($recovery) { return true; } $missing = []; if ($rMenu) { $missing[] = Text::_('MOD_MENU_IMPORTANT_ITEM_MENU_MANAGER'); } if ($rModule) { $missing[] = Text::_('MOD_MENU_IMPORTANT_ITEM_MODULE_MANAGER'); } if ($rContainer) { $missing[] = Text::_('MOD_MENU_IMPORTANT_ITEM_COMPONENTS_CONTAINER'); } $uri = clone Uri::getInstance(); $uri->setVar('recover_menu', 1); $table = Table::getInstance('MenuType'); $menutype = $params->get('menutype'); $table->load(['menutype' => $menutype]); $menutype = $table->get('title', $menutype); $message = Text::sprintf('MOD_MENU_IMPORTANT_ITEMS_INACCESSIBLE_LIST_WARNING', $menutype, implode(', ', $missing), $uri); $this->application->enqueueMessage($message, 'warning'); } return false; } /** * Filter and perform other preparatory tasks for loaded menu items based on access rights and module configurations for display * * @param AdministratorMenuItem $parent A menu item to process * * @return void * * @since 3.8.0 */ protected function preprocess($parent) { $user = $this->application->getIdentity(); $language = $this->application->getLanguage(); $noSeparator = true; $children = $parent->getChildren(); /** * Trigger onPreprocessMenuItems for the current level of backend menu items. * $children is an array of AdministratorMenuItem objects. A plugin can traverse the whole tree, * but new nodes will only be run through this method if their parents have not been processed yet. */ $this->application->triggerEvent('onPreprocessMenuItems', ['com_menus.administrator.module', $children, $this->params, $this->enabled]); foreach ($children as $item) { $itemParams = $item->getParams(); // Exclude item with menu item option set to exclude from menu modules if ($itemParams->get('menu_show', 1) == 0) { $parent->removeChild($item); continue; } $item->scope = $item->scope ?? 'default'; $item->icon = $item->icon ?? ''; // Whether this scope can be displayed. Applies only to preset items. Db driven items should use un/published state. if (($item->scope === 'help' && $this->params->get('showhelp', 1) == 0) || ($item->scope === 'edit' && !$this->params->get('shownew', 1))) { $parent->removeChild($item); continue; } if (substr($item->link, 0, 8) === 'special:') { $special = substr($item->link, 8); if ($special === 'language-forum') { $item->link = 'index.php?option=com_admin&view=help&layout=langforum'; } elseif ($special === 'custom-forum') { $item->link = $this->params->get('forum_url'); } } $uri = new Uri($item->link); $query = $uri->getQuery(true); /** * If component is passed in the link via option variable, we set $item->element to this value for further * processing. It is needed for links from menu items of third party extensions link to Joomla! core * components like com_categories, com_fields... */ if ($option = $uri->getVar('option')) { $item->element = $option; } // Exclude item if is not enabled if ($item->element && !ComponentHelper::isEnabled($item->element)) { $parent->removeChild($item); continue; } /* * Multilingual Associations if the site is not set as multilingual and/or Associations is not enabled in * the Language Filter plugin */ if ($item->element === 'com_associations' && !Associations::isEnabled()) { $parent->removeChild($item); continue; } // Exclude Mass Mail if disabled in global configuration if ($item->scope === 'massmail' && ($this->application->get('mailonline', 1) == 0 || $this->application->get('massmailoff', 0) == 1)) { $parent->removeChild($item); continue; } // Exclude item if the component is not authorised $assetName = $item->element; if ($item->element === 'com_categories') { $assetName = $query['extension'] ?? 'com_content'; } elseif ($item->element === 'com_fields') { // Only display Fields menus when enabled in the component $createFields = null; if (isset($query['context'])) { $createFields = ComponentHelper::getParams(strstr($query['context'], '.', true))->get('custom_fields_enable', 1); } if (!$createFields) { $parent->removeChild($item); continue; } list($assetName) = isset($query['context']) ? explode('.', $query['context'], 2) : ['com_fields']; } elseif ($item->element === 'com_cpanel' && $item->link === 'index.php') { continue; } elseif ( $item->link === 'index.php?option=com_cpanel&view=help' || $item->link === 'index.php?option=com_cpanel&view=cpanel&dashboard=help' ) { if ($this->params->get('showhelp', 1)) { continue; } // Exclude help menu item if set such in mod_menu $parent->removeChild($item); continue; } elseif ($item->element === 'com_workflow') { // Only display Workflow menus when enabled in the component $workflow = null; if (isset($query['extension'])) { $parts = explode('.', $query['extension']); $workflow = ComponentHelper::getParams($parts[0])->get('workflow_enabled') && $user->authorise('core.manage.workflow', $parts[0]); } if (!$workflow) { $parent->removeChild($item); continue; } list($assetName) = isset($query['extension']) ? explode('.', $query['extension'], 2) : ['com_workflow']; } elseif (\in_array($item->element, ['com_config', 'com_privacy', 'com_actionlogs'], true) && !$user->authorise('core.admin')) { // Special case for components which only allow super user access $parent->removeChild($item); continue; } elseif ($item->element === 'com_joomlaupdate' && !$user->authorise('core.admin')) { $parent->removeChild($item); continue; } elseif ( ($item->link === 'index.php?option=com_installer&view=install' || $item->link === 'index.php?option=com_installer&view=languages') && !$user->authorise('core.admin') ) { continue; } elseif ($item->element === 'com_admin') { if (isset($query['view']) && $query['view'] === 'sysinfo' && !$user->authorise('core.admin')) { $parent->removeChild($item); continue; } } elseif ($item->link === 'index.php?option=com_messages&view=messages' && !$user->authorise('core.manage', 'com_users')) { $parent->removeChild($item); continue; } if ($assetName && !$user->authorise(($item->scope === 'edit') ? 'core.create' : 'core.manage', $assetName)) { $parent->removeChild($item); continue; } // Exclude if link is invalid if (is_null($item->link) || !\in_array($item->type, ['separator', 'heading', 'container']) && trim($item->link) === '') { $parent->removeChild($item); continue; } // Process any children if exists if ($item->hasChildren()) { $this->preprocess($item); } // Populate automatic children for container items if ($item->type === 'container') { $exclude = (array) $itemParams->get('hideitems') ?: []; $components = MenusHelper::getMenuItems('main', false, $exclude); // We are adding the nodes first to preprocess them, then sort them and add them again. foreach ($components->getChildren() as $c) { $item->addChild($c); } $this->preprocess($item); $children = ArrayHelper::sortObjects($item->getChildren(), 'text', 1, false, true); foreach ($children as $c) { $item->addChild($c); } } // Exclude if there are no child items under heading or container if (\in_array($item->type, ['heading', 'container']) && !$item->hasChildren() && empty($item->components)) { $parent->removeChild($item); continue; } // Remove repeated and edge positioned separators, It is important to put this check at the end of any logical filtering. if ($item->type === 'separator') { if ($noSeparator) { $parent->removeChild($item); continue; } $noSeparator = true; } else { $noSeparator = false; } // Ok we passed everything, load language at last only if ($item->element) { $language->load($item->element . '.sys', JPATH_ADMINISTRATOR) || $language->load($item->element . '.sys', JPATH_ADMINISTRATOR . '/components/' . $item->element); } if ($item->type === 'separator' && $itemParams->get('text_separator') == 0) { $item->title = ''; } $item->text = Text::_($item->title); } // If last one was a separator remove it too. $last = end($parent->getChildren()); if ($last && $last->type === 'separator' && $last->getSibling(false) && $last->getSibling(false)->type === 'separator') { $parent->removeChild($last); } } /** * Method to get the CSS class name for an icon identifier or create one if * a custom image path is passed as the identifier * * @param AdministratorMenuItem $node Node to get icon data from * * @return string CSS class name * * @since 3.8.0 */ public function getIconClass($node) { $identifier = $node->class; // Top level is special if (trim($identifier) == '') { return null; } // We were passed a class name if (substr($identifier, 0, 6) == 'class:') { $class = substr($identifier, 6); } else { // We were passed background icon url. Build the CSS class for the icon if ($identifier == null) { return null; } $class = preg_replace('#\.[^.]*$#', '', basename($identifier)); $class = preg_replace('#\.\.[^A-Za-z0-9\.\_\- ]#', '', $class); } $html = 'icon-' . $class . ' icon-fw'; return $html; } /** * Create unique identifier * * @return string * * @since 4.0.0 */ public function getCounter() { $this->counter++; return $this->counter; } } PKAA#]�(g`��)modules/mod_menu/tmpl/default_submenu.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_menu * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; /** * ========================================================================================================= * IMPORTANT: The scope of this layout file is the `var \Joomla\Module\Menu\Administrator\Menu\CssMenu` object * and NOT the module context. * ========================================================================================================= */ /** @var \Joomla\Module\Menu\Administrator\Menu\CssMenu $this */ $class = 'item'; $currentParams = $current->getParams(); // Build the CSS class suffix if (!$this->enabled) { $class .= ' disabled'; } elseif ($current->type == 'separator') { $class = $current->title ? 'menuitem-group' : 'divider'; } elseif ($current->hasChildren()) { $class .= ' parent'; } if ($current->level == 1) { $class .= ' item-level-1'; } elseif ($current->level == 2) { $class .= ' item-level-2'; } elseif ($current->level == 3) { $class .= ' item-level-3'; } // Set the correct aria role and print the item if ($current->type == 'separator') { echo '<li class="' . $class . '" role="presentation">'; } else { echo '<li class="' . $class . '">'; } // Print a link if it exists $linkClass = []; $dataToggle = ''; $iconClass = ''; $itemIconClass = ''; $itemImage = ''; if ($current->hasChildren()) { $linkClass[] = 'has-arrow'; if ($current->level > 2) { $dataToggle = ' data-bs-toggle="dropdown"'; } } else { $linkClass[] = 'no-dropdown'; } // Implode out $linkClass for rendering $linkClass = ' class="' . implode(' ', $linkClass) . '" '; // Get the menu link $link = $current->link; // Get the menu image class $itemIconClass = $currentParams->get('menu_icon'); // Get the menu image $itemImage = $currentParams->get('menu_image'); // Get the menu icon $icon = $this->getIconClass($current); $iconClass = ($icon != '' && $current->level == 1) ? '<span class="' . $icon . '" aria-hidden="true"></span>' : ''; $ajax = !empty($current->ajaxbadge) ? '<span class="menu-badge"><span class="icon-spin icon-spinner mt-1 system-counter" data-url="' . $current->ajaxbadge . '"></span></span>' : ''; $iconImage = $current->icon; $homeImage = ''; if ($iconClass === '' && $itemIconClass) { $iconClass = '<span class="' . $itemIconClass . '" aria-hidden="true"></span>'; } if ($iconImage) { if (substr($iconImage, 0, 6) == 'class:' && substr($iconImage, 6) == 'icon-home') { $iconImage = '<span class="home-image icon-home" aria-hidden="true"></span>'; $iconImage .= '<span class="visually-hidden">' . Text::_('JDEFAULT') . '</span>'; } elseif (substr($iconImage, 0, 6) == 'image:') { $iconImage = ' <span class="badge">' . substr($iconImage, 6) . '</span>'; } else { $iconImage = ''; } } $itemImage = (empty($itemIconClass) && $itemImage) ? ' <img src="' . Uri::root() . $itemImage . '" alt=""> ' : ''; // If the item image is not set, the item title would not have margin. Here we add it. if ($icon == '' && $iconClass == '' && $current->level == 1 && $current->target == '') { $iconClass = '<span aria-hidden="true" class="icon-fw"></span>'; } if ($link != '' && $current->target != '') { echo '<a' . $linkClass . $dataToggle . ' href="' . $link . '" target="' . $current->target . '">' . $iconClass . '<span class="sidebar-item-title">' . $itemImage . Text::_($current->title) . '</span>' . $ajax . '</a>'; } elseif ($link != '' && $current->type !== 'separator') { echo '<a' . $linkClass . $dataToggle . ' href="' . $link . '" aria-label="' . Text::_($current->title) . '">' . $iconClass . '<span class="sidebar-item-title">' . $itemImage . Text::_($current->title) . '</span>' . $iconImage . '</a>'; } elseif ($current->title != '' && $current->type !== 'separator') { echo '<a' . $linkClass . $dataToggle . ' href="#">' . $iconClass . '<span class="sidebar-item-title">' . $itemImage . Text::_($current->title) . '</span>' . $ajax . '</a>'; } elseif ($current->title != '' && $current->type === 'separator') { echo '<span class="sidebar-item-title">' . Text::_($current->title) . '</span>' . $ajax; } else { echo '<span>' . Text::_($current->title) . '</span>' . $ajax; } if ($currentParams->get('menu-quicktask') && (int) $this->params->get('shownew', 1) === 1) { $params = $current->getParams(); $user = $this->application->getIdentity(); $link = $params->get('menu-quicktask'); $icon = $params->get('menu-quicktask-icon', 'plus'); $title = $params->get('menu-quicktask-title', 'MOD_MENU_QUICKTASK_NEW'); $permission = $params->get('menu-quicktask-permission'); $scope = $current->scope !== 'default' ? $current->scope : null; if (!$permission || $user->authorise($permission, $scope)) { echo '<span class="menu-quicktask"><a href="' . $link . '">'; echo '<span class="icon-' . $icon . '" title="' . htmlentities(Text::_($title)) . '" aria-hidden="true"></span>'; echo '<span class="visually-hidden">' . Text::_($title) . '</span>'; echo '</a></span>'; } } if (!empty($current->dashboard)) { $titleDashboard = Text::sprintf('MOD_MENU_DASHBOARD_LINK', Text::_($current->title)); echo '<span class="menu-dashboard"><a href="' . Route::_('index.php?option=com_cpanel&view=cpanel&dashboard=' . $current->dashboard) . '">' . '<span class="icon-th-large" title="' . $titleDashboard . '" aria-hidden="true"></span>' . '<span class="visually-hidden">' . $titleDashboard . '</span>' . '</a></span>'; } // Recurse through children if they exist if ($this->enabled && $current->hasChildren()) { if ($current->level > 1) { $id = $current->id ? ' id="menu-' . strtolower($current->id) . '"' : ''; echo '<ul' . $id . ' class="mm-collapse collapse-level-' . $current->level . '">' . "\n"; } else { echo '<ul id="collapse' . $this->getCounter() . '" class="collapse-level-1 mm-collapse">' . "\n"; } // WARNING: Do not use direct 'include' or 'require' as it is important to isolate the scope for each call $this->renderSubmenu(__FILE__, $current); echo "</ul>\n"; } echo "</li>\n"; PKAA#]L�J]!modules/mod_menu/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_menu * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Text; $doc = $app->getDocument(); $class = $enabled ? 'nav flex-column main-nav' : 'nav flex-column main-nav disabled'; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $doc->getWebAssetManager(); $wa->getRegistry()->addExtensionRegistryFile('com_cpanel'); $wa->useScript('metismenujs') ->registerAndUseScript('mod_menu.admin-menu', 'mod_menu/admin-menu.min.js', [], ['defer' => true], ['metismenujs']) ->useScript('com_cpanel.admin-system-loader'); // Recurse through children of root node if they exist if ($root->hasChildren()) { echo '<nav class="main-nav-container" aria-label="' . Text::_('MOD_MENU_ARIA_MAIN_MENU') . '">'; echo '<ul id="menu' . $module->id . '" class="' . $class . '">' . "\n"; // WARNING: Do not use direct 'include' or 'require' as it is important to isolate the scope for each call $menu->renderSubmenu(ModuleHelper::getLayoutPath('mod_menu', 'default_submenu'), $root); echo "</ul></nav>\n"; } PKAA#]�i`xJJImodules/mod_post_installation_messages/mod_post_installation_messages.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_post_installation_messages</name> <author>Joomla! Project</author> <creationDate>2019-07</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_POST_INSTALLATION_MESSAGES_XML_DESCRIPTION</description> <files> <filename module="mod_post_installation_messages">mod_post_installation_messages.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_post_installation_messages.ini</language> <language tag="en-GB">language/en-GB/mod_post_installation_messages.sys.ini</language> </languages> <help key="Admin_Modules:_Post_Installation_Messages" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]JP����Imodules/mod_post_installation_messages/mod_post_installation_messages.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_post_installation_messages * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Extension\ExtensionHelper; use Joomla\CMS\Helper\ModuleHelper; // Try to get the items from the post-installation model try { /** @var \Joomla\Component\Postinstall\Administrator\Model\MessagesModel $messagesModel */ $messagesModel = $app->bootComponent('com_postinstall')->getMVCFactory() ->createModel('Messages', 'Administrator', ['ignore_request' => true]); $messagesCount = $messagesModel->getItemsCount(); } catch (RuntimeException $e) { $messagesCount = 0; // Still render the error message from the Exception object $app->enqueueMessage($e->getMessage(), 'error'); } $joomlaFilesExtensionId = ExtensionHelper::getExtensionRecord('joomla', 'file')->extension_id; // Load the com_postinstall language file $app->getLanguage()->load('com_postinstall', JPATH_ADMINISTRATOR); require ModuleHelper::getLayoutPath('mod_post_installation_messages', $params->get('layout', 'default')); PKAA#]�#E2��7modules/mod_post_installation_messages/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_post_installation_messages * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $hideLinks = $app->getInput()->getBool('hidemainmenu'); if ($hideLinks || $messagesCount < 1) { return; } ?> <?php if ($app->getIdentity()->authorise('core.manage', 'com_postinstall')) : ?> <a class="header-item-content" href="<?php echo Route::_('index.php?option=com_postinstall&eid=' . $joomlaFilesExtensionId); ?>" title="<?php echo Text::_('MOD_POST_INSTALLATION_MESSAGES'); ?>"> <div class="header-item-icon"> <div class="w-auto"> <span class="icon-bell icon-fw" aria-hidden="true"></span> <small class="header-item-count"><?php echo $messagesCount; ?></small> </div> </div> <div class="header-item-text"> <?php echo Text::_('MOD_POST_INSTALLATION_MESSAGES'); ?> </div> </a> <?php endif; ?> PKAA#]��ϟ��+modules/mod_privacy_status/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_status * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; ?> <table class="table"> <thead> <tr> <th scope="col" class="w-20"><?php echo Text::_('COM_PRIVACY_DASHBOARD_HEADING_STATUS'); ?></th> <th scope="col"><?php echo Text::_('COM_PRIVACY_DASHBOARD_HEADING_CHECK'); ?></th> </tr> </thead> <tbody> <tr> <td> <?php if ($privacyPolicyInfo['published'] && $privacyPolicyInfo['articlePublished']) : ?> <span class="badge bg-success"> <span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JPUBLISHED'); ?> </span> <?php elseif ($privacyPolicyInfo['published'] && !$privacyPolicyInfo['articlePublished']) : ?> <span class="badge bg-warning text-dark"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('JUNPUBLISHED'); ?> </span> <?php else : ?> <span class="badge bg-warning text-dark"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('COM_PRIVACY_STATUS_CHECK_NOT_AVAILABLE'); ?> </span> <?php endif; ?> </td> <td> <div><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_PRIVACY_POLICY_PUBLISHED'); ?></div> <?php if ($privacyPolicyInfo['editLink'] !== '') : ?> <small><a href="<?php echo $privacyPolicyInfo['editLink']; ?>"><?php echo Text::_('COM_PRIVACY_EDIT_PRIVACY_POLICY'); ?></a></small> <?php else : ?> <?php $link = Route::_('index.php?option=com_plugins&task=plugin.edit&extension_id=' . $privacyConsentPluginId); ?> <small><a href="<?php echo $link; ?>"><?php echo Text::_('COM_PRIVACY_EDIT_PRIVACY_CONSENT_PLUGIN'); ?></a></small> <?php endif; ?> </td> </tr> <tr> <td> <?php if ($requestFormPublished['published'] && $requestFormPublished['exists']) : ?> <span class="badge bg-success"> <span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JPUBLISHED'); ?> </span> <?php elseif (!$requestFormPublished['published'] && $requestFormPublished['exists']) : ?> <span class="badge bg-warning text-dark"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('JUNPUBLISHED'); ?> </span> <?php else : ?> <span class="badge bg-warning text-dark"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('COM_PRIVACY_STATUS_CHECK_NOT_AVAILABLE'); ?> </span> <?php endif; ?> </td> <td> <div><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_REQUEST_FORM_MENU_ITEM_PUBLISHED'); ?></div> <?php if ($requestFormPublished['link'] !== '') : ?> <small><a href="<?php echo $requestFormPublished['link']; ?>" class="break-word"><?php echo $requestFormPublished['link']; ?></a></small> <?php endif; ?> </td> </tr> <tr> <td> <?php if ($numberOfUrgentRequests === 0) : ?> <span class="badge bg-success"> <span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JNONE'); ?> </span> <?php else : ?> <span class="badge bg-danger"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('WARNING'); ?> </span> <?php endif; ?> </td> <td> <div><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_OUTSTANDING_URGENT_REQUESTS'); ?></div> <small><?php echo Text::plural('COM_PRIVACY_STATUS_CHECK_OUTSTANDING_URGENT_REQUESTS_DESCRIPTION', $urgentRequestDays); ?></small> <?php if ($numberOfUrgentRequests > 0) : ?> <small><a href="<?php echo Route::_('index.php?option=com_privacy&view=requests&filter[status]=1&list[fullordering]=a.requested_at ASC'); ?>"><?php echo Text::_('COM_PRIVACY_SHOW_URGENT_REQUESTS'); ?></a></small> <?php endif; ?> </td> </tr> <tr> <td> <?php if ($sendMailEnabled) : ?> <span class="badge bg-success"> <span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JENABLED'); ?> </span> <?php else : ?> <span class="badge bg-danger"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('JDISABLED'); ?> </span> <?php endif; ?> </td> <td> <?php if (!$sendMailEnabled) : ?> <div><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_SENDMAIL_DISABLED'); ?></div> <small><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_SENDMAIL_DISABLED_DESCRIPTION'); ?></small> <?php else : ?> <div><?php echo Text::_('COM_PRIVACY_STATUS_CHECK_SENDMAIL_ENABLED'); ?></div> <?php endif; ?> </td> </tr> <tr> <td> <?php if ($databaseConnectionEncryption !== '') : ?> <span class="badge bg-success"> <span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JENABLED'); ?> </span> <?php else : ?> <span class="badge bg-warning text-dark"> <span class="icon-exclamation-triangle" aria-hidden="true"></span> <?php echo Text::_('COM_PRIVACY_STATUS_CHECK_NOT_AVAILABLE'); ?> </span> <?php endif; ?> </td> <td> <?php if ($databaseConnectionEncryption === '') : ?> <?php echo Text::_('MOD_PRIVACY_STATUS_CHECK_DATABASE_CONNECTION_ENCRYPTION_DISABLED'); ?> <?php else : ?> <?php echo Text::sprintf('MOD_PRIVACY_STATUS_CHECK_DATABASE_CONNECTION_ENCRYPTION_ENABLED', $databaseConnectionEncryption); ?> <?php endif; ?> </td> </tr> </tbody> </table> PKAA#]���nn1modules/mod_privacy_status/mod_privacy_status.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_status * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Component\Privacy\Administrator\Helper\PrivacyHelper; use Joomla\Database\DatabaseInterface; use Joomla\Module\PrivacyStatus\Administrator\Helper\PrivacyStatusHelper; // Only super user can view this data if (!$app->getIdentity()->authorise('core.admin')) { return; } // Boot component to ensure HTML helpers are loaded $app->bootComponent('com_privacy'); // Load the privacy component language file. $lang = $app->getLanguage(); $lang->load('com_privacy', JPATH_ADMINISTRATOR) || $lang->load('com_privacy', JPATH_ADMINISTRATOR . '/components/com_privacy'); $privacyPolicyInfo = PrivacyStatusHelper::getPrivacyPolicyInfo(); $requestFormPublished = PrivacyStatusHelper::getRequestFormPublished(); $privacyConsentPluginId = PrivacyHelper::getPrivacyConsentPluginId(); $sendMailEnabled = (bool) $app->get('mailonline', 1); $numberOfUrgentRequests = PrivacyStatusHelper::getNumberUrgentRequests(); $urgentRequestDays = (int) ComponentHelper::getParams('com_privacy')->get('notify', 14); $databaseConnectionEncryption = Factory::getContainer()->get(DatabaseInterface::class)->getConnectionEncryption(); require ModuleHelper::getLayoutPath('mod_privacy_status', $params->get('layout', 'default')); PKAA#],յ�1modules/mod_privacy_status/mod_privacy_status.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_privacy_status</name> <author>Joomla! Project</author> <creationDate>2019-07</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_PRIVACY_STATUS_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\PrivacyStatus</namespace> <files> <filename module="mod_privacy_status">mod_privacy_status.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_privacy_status.ini</language> <language tag="en-GB">language/en-GB/mod_privacy_status.sys.ini</language> </languages> <help key="Admin_Modules:_Privacy_Status_Check" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> <field name="cachemode" type="hidden" default="static" > <option value="static"></option> </field> </fieldset> </fields> </config> </extension> PKAA#]H詸UU=modules/mod_privacy_status/src/Helper/PrivacyStatusHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_privacy_status * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\PrivacyStatus\Administrator\Helper; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper class for admin privacy status module * * @since 4.0.0 */ class PrivacyStatusHelper { /** * Get the information about the published privacy policy * * @return array Array containing a status of whether a privacy policy is set and a link to the policy document for editing * * @since 4.0.0 */ public static function getPrivacyPolicyInfo() { $policy = [ 'published' => false, 'articlePublished' => false, 'editLink' => '', ]; /* * Prior to 3.9.0 it was common for a plugin such as the User - Profile plugin to define a privacy policy or * terms of service article, therefore we will also import the user plugin group to process this event. */ PluginHelper::importPlugin('privacy'); PluginHelper::importPlugin('user'); Factory::getApplication()->triggerEvent('onPrivacyCheckPrivacyPolicyPublished', [&$policy]); return $policy; } /** * Check whether there is a menu item for the request form * * @return array Array containing a status of whether a menu is published for the request form and its current link * * @since 4.0.0 */ public static function getRequestFormPublished() { $status = [ 'exists' => false, 'published' => false, 'link' => '', ]; $lang = ''; $db = Factory::getDbo(); $query = $db->getQuery(true) ->select( [ $db->quoteName('id'), $db->quoteName('published'), $db->quoteName('language'), ] ) ->from($db->quoteName('#__menu')) ->where( [ $db->quoteName('client_id') . ' = 0', $db->quoteName('link') . ' = ' . $db->quote('index.php?option=com_privacy&view=request'), ] ) ->setLimit(1); $db->setQuery($query); $menuItem = $db->loadObject(); // Check if the menu item exists in database if ($menuItem) { $status['exists'] = true; // Check if the menu item is published if ($menuItem->published == 1) { $status['published'] = true; } // Add language to the url if the site is multilingual if (Multilanguage::isEnabled() && $menuItem->language && $menuItem->language !== '*') { $lang = '&lang=' . $menuItem->language; } } $linkMode = Factory::getApplication()->get('force_ssl', 0) == 2 ? Route::TLS_FORCE : Route::TLS_IGNORE; if (!$menuItem) { if (Multilanguage::isEnabled()) { // Find the Itemid of the home menu item tagged to the site default language $params = ComponentHelper::getParams('com_languages'); $defaultSiteLanguage = $params->get('site'); $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('id')) ->from($db->quoteName('#__menu')) ->where( [ $db->quoteName('client_id') . ' = 0', $db->quoteName('home') . ' = 1', $db->quoteName('language') . ' = :language', ] ) ->bind(':language', $defaultSiteLanguage) ->setLimit(1); $db->setQuery($query); $homeId = (int) $db->loadResult(); $itemId = $homeId ? '&Itemid=' . $homeId : ''; } else { $itemId = ''; } $status['link'] = Route::link('site', 'index.php?option=com_privacy&view=request' . $itemId, true, $linkMode); } else { $status['link'] = Route::link('site', 'index.php?Itemid=' . $menuItem->id . $lang, true, $linkMode); } return $status; } /** * Method to return number privacy requests older than X days. * * @return integer * * @since 4.0.0 */ public static function getNumberUrgentRequests() { // Load the parameters. $params = ComponentHelper::getComponent('com_privacy')->getParams(); $notify = (int) $params->get('notify', 14); $now = Factory::getDate()->toSql(); $period = '-' . $notify; $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('COUNT(*)') ->from($db->quoteName('#__privacy_requests')) ->where( [ $db->quoteName('status') . ' = 1', $query->dateAdd($db->quote($now), $period, 'DAY') . ' > ' . $db->quoteName('requested_at'), ] ); $db->setQuery($query); return (int) $db->loadResult(); } } PKAA#]�f��modules/mod_user/mod_user.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_user</name> <author>Joomla! Project</author> <creationDate>2019-07</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_USER_XML_DESCRIPTION</description> <files> <filename module="mod_user">mod_user.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_user.ini</language> <language tag="en-GB">language/en-GB/mod_user.sys.ini</language> </languages> <help key="Admin_Modules:_User_Menu" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]��-a��modules/mod_user/mod_user.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_user * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; $user = $app->getIdentity(); require ModuleHelper::getLayoutPath('mod_user', $params->get('layout', 'default')); PKAA#]>�5�� � !modules/mod_user/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_user * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\CMS\Uri\Uri; $hideLinks = $app->getInput()->getBool('hidemainmenu'); if ($hideLinks) { return; } // Load the Bootstrap Dropdown HTMLHelper::_('bootstrap.dropdown', '.dropdown-toggle'); ?> <div class="header-item-content dropdown header-profile"> <button class="dropdown-toggle d-flex align-items-center ps-0 py-0" data-bs-toggle="dropdown" type="button" title="<?php echo Text::_('MOD_USER_MENU'); ?>"> <span class="header-item-icon"> <span class="icon-user-circle" aria-hidden="true"></span> </span> <span class="header-item-text"> <?php echo Text::_('MOD_USER_MENU'); ?> </span> <span class="icon-angle-down" aria-hidden="true"></span> </button> <div class="dropdown-menu dropdown-menu-end"> <div class="dropdown-header"> <span class="icon-user-circle icon-fw" aria-hidden="true"></span> <?php echo Text::sprintf('MOD_USER_TITLE', $user->name); ?> </div> <?php $uri = Uri::getInstance(); ?> <?php $route = 'index.php?option=com_users&task=user.edit&id=' . $user->id . '&return=' . base64_encode($uri) . '#attrib-user_details'; ?> <a class="dropdown-item" href="<?php echo Route::_($route); ?>"> <span class="icon-user icon-fw" aria-hidden="true"></span> <?php echo Text::_('MOD_USER_EDIT_ACCOUNT'); ?> </a> <?php $route = 'index.php?option=com_users&task=user.edit&id=' . $user->id . '&return=' . base64_encode($uri) . '#attrib-accessibility'; ?> <a class="dropdown-item" href="<?php echo Route::_($route); ?>"> <span class="icon-universal-access icon-fw" aria-hidden="true"></span> <?php echo Text::_('MOD_USER_ACCESSIBILITY_SETTINGS'); ?> </a> <?php $route = 'index.php?option=com_login&task=logout&' . Session::getFormToken() . '=1'; ?> <a class="dropdown-item" href="<?php echo Route::_($route); ?>"> <span class="icon-power-off icon-fw" aria-hidden="true"></span> <?php echo Text::_('JLOGOUT'); ?> </a> </div> </div> PKAA#]�G��%%*modules/mod_latestactions/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latestactions * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; ?> <table class="table" id="<?php echo str_replace(' ', '', $module->title) . $module->id; ?>"> <caption class="visually-hidden"><?php echo $module->title; ?></caption> <thead> <tr> <th scope="col" class="w-70"><?php echo Text::_('MOD_LATESTACTIONS_ACTION'); ?></th> <th scope="col" class="w-30"><?php echo Text::_('JDATE'); ?></th> </tr> </thead> <tbody> <?php if (count($list)) : ?> <?php foreach ($list as $i => $item) : ?> <tr> <td> <?php echo $item->message; ?> </td> <td> <?php echo HTMLHelper::_('date.relative', $item->log_date); ?> </td> </tr> <?php endforeach; ?> <?php else : ?> <tr> <td colspan="2"> <?php echo Text::_('MOD_LATESTACTIONS_NO_MATCHING_RESULTS'); ?> </td> </tr> <?php endif; ?> </tbody> </table> PKAA#]5�_��/modules/mod_latestactions/mod_latestactions.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latestactions * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\Module\LatestActions\Administrator\Helper\LatestActionsHelper; // Only super user can view this data if (!$app->getIdentity()->authorise('core.admin')) { return; } $list = LatestActionsHelper::getList($params); if ($params->get('automatic_title', 0)) { $module->title = LatestActionsHelper::getTitle($params); } require ModuleHelper::getLayoutPath('mod_latestactions', $params->get('layout', 'default')); PKAA#]� y�� � /modules/mod_latestactions/mod_latestactions.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_latestactions</name> <author>Joomla! Project</author> <creationDate>2018-05</creationDate> <copyright>(C) 2018 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.9.0</version> <description>MOD_LATESTACTIONS_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\LatestActions</namespace> <files> <filename module="mod_latestactions">mod_latestactions.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_latestactions.ini</language> <language tag="en-GB">language/en-GB/mod_latestactions.sys.ini</language> </languages> <help key="Admin_Modules:_Action_Logs_-_Latest" /> <config> <fields name="params"> <fieldset name="basic"> <field name="count" type="number" label="MOD_LATESTACTIONS_FIELD_COUNT_LABEL" default="5" filter="integer" min="1" validate="number" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="automatic_title" type="radio" label="COM_MODULES_FIELD_AUTOMATIC_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> <field name="cachemode" type="hidden" default="static" > <option value="static"></option> </field> </fieldset> </fields> </config> </extension> PKAA#]ȯ��rr<modules/mod_latestactions/src/Helper/LatestActionsHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_latestactions * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\LatestActions\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\Component\Actionlogs\Administrator\Helper\ActionlogsHelper; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_latestactions * * @since 3.9.0 */ abstract class LatestActionsHelper { /** * Get a list of logged actions. * * @param Registry &$params The module parameters. * * @return mixed An array of action logs, or false on error. * * @since 3.9.1 * * @throws \Exception */ public static function getList(&$params) { /** @var \Joomla\Component\Actionlogs\Administrator\Model\ActionlogsModel $model */ $model = Factory::getApplication()->bootComponent('com_actionlogs')->getMVCFactory() ->createModel('Actionlogs', 'Administrator', ['ignore_request' => true]); // Set the Start and Limit $model->setState('list.start', 0); $model->setState('list.limit', $params->get('count', 5)); $model->setState('list.ordering', 'a.id'); $model->setState('list.direction', 'DESC'); $rows = $model->getItems(); // Load all actionlog plugins language files ActionlogsHelper::loadActionLogPluginsLanguage(); foreach ($rows as $row) { $row->message = ActionlogsHelper::getHumanReadableLogMessage($row); } return $rows; } /** * Get the alternate title for the module * * @param Registry $params The module parameters. * * @return string The alternate title for the module. * * @since 3.9.1 */ public static function getTitle($params) { return Text::plural('MOD_LATESTACTIONS_TITLE', $params->get('count', 5)); } } PKAA#]���WW#modules/mod_custom/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_custom * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; ?> <div class="mod-custom custom"> <?php echo $module->content; ?> </div> PKAA#]�ٝcc!modules/mod_custom/mod_custom.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_custom</name> <author>Joomla! Project</author> <creationDate>2004-07</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_CUSTOM_XML_DESCRIPTION</description> <customContent /> <files> <filename module="mod_custom">mod_custom.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_custom.ini</language> <language tag="en-GB">language/en-GB/mod_custom.sys.ini</language> </languages> <help key="Admin_Modules:_Custom" /> <config> <fields name="params"> <fieldset name="options" label="COM_MODULES_BASIC_FIELDSET_LABEL"> <field name="prepare_content" type="radio" label="MOD_CUSTOM_FIELD_PREPARE_CONTENT_LABEL" description="MOD_CUSTOM_FIELD_PREPARE_CONTENT_DESC" layout="joomla.form.field.radio.switcher" default="1" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> </fieldset> </fields> </config> </extension> PKAA#]�y? EE!modules/mod_custom/mod_custom.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_custom * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Plugin\PluginHelper; if ($params->def('prepare_content', 1)) { PluginHelper::importPlugin('content'); $module->content = HTMLHelper::_('content.prepare', $module->content, '', 'mod_custom.content'); } // Replace 'images/' to '../images/' when using an image from /images in backend. $module->content = preg_replace('*src\=\"(?!administrator\/)images/*', 'src="../images/', $module->content); require ModuleHelper::getLayoutPath('mod_custom', $params->get('layout', 'default')); PKAA#]7��0modules/mod_version/src/Helper/VersionHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_version * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Version\Administrator\Helper; use Joomla\CMS\Version; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_version * * @since 1.6 */ abstract class VersionHelper { /** * Get the Joomla version number. * * @return string String containing the current Joomla version. */ public static function getVersion() { $version = new Version(); return '‎' . $version->getShortVersion(); } } PKAA#]Y� [EE#modules/mod_version/mod_version.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_version</name> <author>Joomla! Project</author> <creationDate>2012-01</creationDate> <copyright>(C) 2012 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_VERSION_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Version</namespace> <files> <filename module="mod_version">mod_version.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_version.ini</language> <language tag="en-GB">language/en-GB/mod_version.sys.ini</language> </languages> <help key="Admin_Modules:_Joomla_Version_Information" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]��,N��#modules/mod_version/mod_version.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_version * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; $version = \Joomla\Module\Version\Administrator\Helper\VersionHelper::getVersion(); require \Joomla\CMS\Helper\ModuleHelper::getLayoutPath('mod_version', $params->get('layout', 'default')); PKAA#]�U�Ў�$modules/mod_version/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_version * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; ?> <div class="header-item-content joomlaversion"> <div class="header-item-text no-link"> <span class="icon-joomla" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::sprintf('MOD_VERSION_CURRENT_VERSION_TEXT', $version); ?></span> <span aria-hidden="true"><?php echo $version; ?></span> </div> </div> PKAA#]L����6modules/mod_sampledata/src/Helper/SampledataHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_sampledata * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Sampledata\Administrator\Helper; use Joomla\CMS\Event\AbstractEvent; use Joomla\CMS\Factory; use Joomla\CMS\Plugin\PluginHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_sampledata * * @since 3.8.0 */ abstract class SampledataHelper { /** * Get a list of sampledata. * * @return mixed An array of sampledata, or false on error. * * @since 3.8.0 */ public static function getList() { PluginHelper::importPlugin('sampledata'); return Factory::getApplication() ->getDispatcher() ->dispatch( 'onSampledataGetOverview', AbstractEvent::create( 'onSampledataGetOverview', [ 'subject' => new \stdClass(), ] ) ) ->getArgument('result') ?? []; } } PKAA#]��Y�� � 'modules/mod_sampledata/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_sampledata * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; $app->getDocument()->getWebAssetManager() ->registerAndUseScript('mod_sampledata', 'mod_sampledata/sampledata-process.js', [], ['type' => 'module'], ['core']); Text::script('MOD_SAMPLEDATA_COMPLETED'); Text::script('MOD_SAMPLEDATA_CONFIRM_START'); Text::script('MOD_SAMPLEDATA_ERROR_RESPONSE'); Text::script('MOD_SAMPLEDATA_INVALID_RESPONSE'); Text::script('MOD_SAMPLEDATA_ITEM_ALREADY_PROCESSED'); $app->getDocument()->addScriptOptions( 'sample-data', [ 'icon' => Uri::root(true) . '/media/system/images/ajax-loader.gif', ] ); ?> <?php if ($items) : ?> <ul id="sample-data-wrapper" class="list-group list-group-flush sample-data"> <?php foreach ($items as $i => $item) : ?> <li class="list-group-item sampledata-<?php echo $item->name; ?>"> <div class="d-flex justify-content-between align-items-center"> <div class="sample-data__title"> <span class="sample-data__icon icon-<?php echo $item->icon; ?> me-1" aria-hidden="true"></span> <?php echo htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8'); ?> </div> <button type="button" class="btn btn-secondary btn-sm apply-sample-data" data-type="<?php echo $item->name; ?>" data-steps="<?php echo $item->steps; ?>"> <span class="icon-upload" aria-hidden="true"></span> <?php echo Text::_('JLIB_INSTALLER_INSTALL'); ?> <span class="visually-hidden"><?php echo $item->title; ?></span> </button> </div> <p class="sample-data__desc small mt-1"><?php echo $item->description; ?></p> </li> <?php // Progress bar ?> <li class="list-group-item sampledata-progress-<?php echo $item->name; ?> d-none"> <div class="progress mb-3"> <div class="progress-bar progress-bar-striped progress-bar-animated" role="progressbar"></div> </div> </li> <?php endforeach; ?> </ul> <a href="index.php?option=com_plugins&filter[folder]=sampledata" class="btn btn-secondary btn-sm manage-sample-data float-end m-3"> <span class="icon-tasks" aria-hidden="true"></span> <?php echo Text::_('MOD_SAMPLEDATA_MANAGE_SAMPLEDATA'); ?> </a> <?php endif; ?> PKAA#]�D��)modules/mod_sampledata/mod_sampledata.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_sampledata</name> <author>Joomla! Project</author> <creationDate>2017-07</creationDate> <copyright>(C) 2017 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.8.0</version> <description>MOD_SAMPLEDATA_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Sampledata</namespace> <files> <filename module="mod_sampledata">mod_sampledata.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <media destination="mod_sampledata" folder="media"> <folder>js</folder> </media> <languages> <language tag="en-GB">language/en-GB/mod_sampledata.ini</language> <language tag="en-GB">language/en-GB/mod_sampledata.sys.ini</language> </languages> <help key="Admin_Modules:_Sample_Data" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> </fieldset> </fields> </config> </extension> PKAA#]n��o)modules/mod_sampledata/mod_sampledata.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_sampledata * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; $items = \Joomla\Module\Sampledata\Administrator\Helper\SampledataHelper::getList(); // Filter out empty entries $items = array_filter($items); require \Joomla\CMS\Helper\ModuleHelper::getLayoutPath('mod_sampledata', $params->get('layout', 'default')); PKAA#]�HP��modules/mod_feed/mod_feed.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_feed</name> <author>Joomla! Project</author> <creationDate>2005-07</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_FEED_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Feed</namespace> <files> <filename module="mod_feed">mod_feed.php</filename> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_feed.ini</language> <language tag="en-GB">language/en-GB/mod_feed.sys.ini</language> </languages> <help key="Admin_Modules:_Feed_Display" /> <config> <fields name="params"> <fieldset name="basic"> <field name="rssurl" type="url" label="MOD_FEED_FIELD_RSSURL_LABEL" filter="url" required="true" validate="url" /> <field name="rssrtl" type="radio" label="MOD_FEED_FIELD_RTL_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="rssdate" type="radio" label="MOD_FEED_FIELD_DATE_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="rssdesc" type="radio" label="MOD_FEED_FIELD_DESCRIPTION_LABEL" layout="joomla.form.field.radio.switcher" default="1" filter="integer" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="rssimage" type="radio" label="MOD_FEED_FIELD_IMAGE_LABEL" layout="joomla.form.field.radio.switcher" default="1" filter="integer" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="rssitems" type="number" label="MOD_FEED_FIELD_ITEMS_LABEL" default="3" filter="integer" min="1" validate="number" /> <field name="rssitemdesc" type="radio" label="MOD_FEED_FIELD_ITEMDESCRIPTION_LABEL" layout="joomla.form.field.radio.switcher" default="1" filter="integer" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="rssitemdate" type="radio" label="MOD_FEED_FIELD_ITEMDATE_LABEL" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="1">JYES</option> <option value="0">JNO</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="1" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> </fieldset> </fields> </config> </extension> PKAA#]��ޕmodules/mod_feed/mod_feed.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_feed * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; $feed = \Joomla\Module\Feed\Administrator\Helper\FeedHelper::getFeed($params); $rssurl = $params->get('rssurl', ''); $rssrtl = $params->get('rssrtl', 0); require \Joomla\CMS\Helper\ModuleHelper::getLayoutPath('mod_feed', $params->get('layout', 'default')); PKAA#]ܽ�q22!modules/mod_feed/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_feed * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Filter\OutputFilter; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; // Check if feed URL has been set if (empty($rssurl)) { echo '<div>' . Text::_('MOD_FEED_ERR_NO_URL') . '</div>'; return; } if (!empty($feed) && is_string($feed)) { echo $feed; } else { $lang = $app->getLanguage(); $myrtl = $params->get('rssrtl', 0); $direction = ' '; if ($lang->isRtl() && $myrtl == 0) { $direction = ' redirect-rtl'; } elseif ($lang->isRtl() && $myrtl == 1) { // Feed description $direction = ' redirect-ltr'; } elseif ($lang->isRtl() && $myrtl == 2) { $direction = ' redirect-rtl'; } elseif ($myrtl == 0) { $direction = ' redirect-ltr'; } elseif ($myrtl == 1) { $direction = ' redirect-ltr'; } elseif ($myrtl == 2) { $direction = ' redirect-rtl'; } if ($feed != false) : ?> <div style="direction: <?php echo $rssrtl ? 'rtl' : 'ltr'; ?>; text-align: <?php echo $rssrtl ? 'right' : 'left'; ?> !important" class="feed"> <?php // Feed title if (!is_null($feed->title) && $params->get('rsstitle', 1)) : ?> <h2 class="<?php echo $direction; ?>"> <a href="<?php echo str_replace('&', '&', $rssurl); ?>" target="_blank"> <?php echo $feed->title; ?></a> </h2> <?php endif; // Feed date if ($params->get('rssdate', 1) && ($feed->publishedDate !== null)) : ?> <h3> <?php echo HTMLHelper::_('date', $feed->publishedDate, Text::_('DATE_FORMAT_LC3')); ?> </h3> <?php endif; ?> <?php // Feed description ?> <?php if ($params->get('rssdesc', 1)) : ?> <?php echo $feed->description; ?> <?php endif; ?> <?php // Feed image ?> <?php if ($params->get('rssimage', 1) && $feed->image) : ?> <img class="w-100" src="<?php echo $feed->image->uri; ?>" alt="<?php echo $feed->image->title; ?>"/> <?php endif; ?> <?php // Show items ?> <?php if (!empty($feed)) : ?> <ul class="newsfeed list-group"> <?php for ($i = 0; $i < $params->get('rssitems', 3); $i++) : if (!$feed->offsetExists($i)) : break; endif; $uri = $feed[$i]->uri || !$feed[$i]->isPermaLink ? trim($feed[$i]->uri) : trim($feed[$i]->guid); $uri = !$uri || stripos($uri, 'http') !== 0 ? $rssurl : $uri; $text = $feed[$i]->content !== '' ? trim($feed[$i]->content) : ''; ?> <li class="list-group-item mb-2"> <?php if (!empty($uri)) : ?> <h5 class="feed-link"> <a href="<?php echo $uri; ?>" target="_blank"> <?php echo trim($feed[$i]->title); ?></a></h5> <?php else : ?> <h5 class="feed-link"><?php echo trim($feed[$i]->title); ?></h5> <?php endif; ?> <?php if ($params->get('rssitemdate', 0) && $feed[$i]->publishedDate !== null) : ?> <div class="feed-item-date"> <?php echo HTMLHelper::_('date', $feed[$i]->publishedDate, Text::_('DATE_FORMAT_LC3')); ?> </div> <?php endif; ?> <?php if ($params->get('rssitemdesc', 1) && $text !== '') : ?> <div class="feed-item-description"> <?php // Strip the images. $text = OutputFilter::stripImages($text); $text = HTMLHelper::_('string.truncate', $text, $params->get('word_count', 0), true, false); echo str_replace(''', "'", $text); ?> </div> <?php endif; ?> </li> <?php endfor; ?> </ul> <?php endif; ?> </div> <?php endif; } PKAA#]��!T*modules/mod_feed/src/Helper/FeedHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_feed * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Feed\Administrator\Helper; use Joomla\CMS\Feed\FeedFactory; use Joomla\CMS\Language\Text; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_feed * * @since 1.5 */ class FeedHelper { /** * Method to load a feed. * * @param \Joomla\Registry\Registry $params The parameters object. * * @return \Joomla\CMS\Feed\Feed|string Return a JFeedReader object or a string message if error. * * @since 1.5 */ public static function getFeed($params) { // Module params $rssurl = $params->get('rssurl', ''); // Get RSS parsed object try { $feed = new FeedFactory(); $rssDoc = $feed->getFeed($rssurl); } catch (\Exception $e) { return Text::_('MOD_FEED_ERR_FEED_NOT_RETRIEVED'); } if (empty($rssDoc)) { return Text::_('MOD_FEED_ERR_FEED_NOT_RETRIEVED'); } return $rssDoc; } } PKAA#]�E"�!�!'modules/mod_quickicon/mod_quickicon.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_quickicon</name> <author>Joomla! Project</author> <creationDate>2005-11</creationDate> <copyright>(C) 2005 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_QUICKICON_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Quickicon</namespace> <files> <folder module="mod_quickicon">services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_quickicon.ini</language> <language tag="en-GB">language/en-GB/mod_quickicon.sys.ini</language> </languages> <help key="Admin_Modules:_Quick_Icons" /> <config> <fields name="params"> <fieldset name="basic"> <field name="context" type="text" label="MOD_QUICKICON_GROUP_LABEL" description="MOD_QUICKICON_GROUP_DESC" default="mod_quickicon" /> <field name="header_icon" type="text" label="MOD_QUICKICON_HEADER_ICON_LABEL" hint="icon-crosshairs" default="" /> <field name="show_global" type="radio" label="MOD_QUICKICON_SHOW_GLOBAL_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_checkin" type="list" label="MOD_QUICKICON_SHOW_CHECKIN_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_cache" type="list" label="MOD_QUICKICON_SHOW_CACHE_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_users" type="list" label="MOD_QUICKICON_SHOW_USERS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_articles" type="list" label="MOD_QUICKICON_SHOW_ARTICLES_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_featured" type="list" label="MOD_QUICKICON_SHOW_FEATURED_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_menuitems" type="list" label="MOD_QUICKICON_SHOW_MENUITEMS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_workflow" type="radio" label="MOD_QUICKICON_SHOW_WORKFLOW_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_banners" type="list" label="MOD_QUICKICON_SHOW_BANNERS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_finder" type="radio" label="MOD_QUICKICON_SHOW_FINDER_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_newsfeeds" type="list" label="MOD_QUICKICON_SHOW_NEWSFEEDS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_tags" type="list" label="MOD_QUICKICON_SHOW_TAGS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_redirect" type="radio" label="MOD_QUICKICON_SHOW_REDIRECT_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_associations" type="radio" label="MOD_QUICKICON_SHOW_ASSOCIATIONS_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_languages" type="list" label="MOD_QUICKICON_SHOW_LANGUAGES_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_modules" type="list" label="MOD_QUICKICON_SHOW_MODULES_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_contact" type="list" label="MOD_QUICKICON_SHOW_CONTACT_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_categories" type="list" label="MOD_QUICKICON_SHOW_CATEGORIES_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_media" type="radio" label="MOD_QUICKICON_SHOW_MEDIA_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_menuitems" type="list" label="MOD_QUICKICON_SHOW_MENUITEMS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_plugins" type="list" label="MOD_QUICKICON_SHOW_PLUGINS_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">MOD_QUICKICON_WITH_COUNT</option> </field> <field name="show_template_styles" type="radio" label="MOD_QUICKICON_SHOW_TEMPLATE_STYLES_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_template_code" type="radio" label="MOD_QUICKICON_SHOW_TEMPLATE_CODE_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="0" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="900" filter="integer" min="1" validate="number" /> </fieldset> </fields> </config> </extension> PKAA#]�5�YY3modules/mod_quickicon/src/Dispatcher/Dispatcher.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_quickicon * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Quickicon\Administrator\Dispatcher; use Joomla\CMS\Dispatcher\AbstractModuleDispatcher; use Joomla\CMS\Helper\HelperFactoryAwareInterface; use Joomla\CMS\Helper\HelperFactoryAwareTrait; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Dispatcher class for mod_quickicon * * @since 4.0.0 */ class Dispatcher extends AbstractModuleDispatcher implements HelperFactoryAwareInterface { use HelperFactoryAwareTrait; /** * Returns the layout data. * * @return array * * @since 4.0.0 */ protected function getLayoutData() { $data = parent::getLayoutData(); $data['buttons'] = $this->getHelperFactory()->getHelper('QuickIconHelper')->getButtons($data['params'], $this->getApplication()); return $data; } } PKAA#]�QFQF4modules/mod_quickicon/src/Helper/QuickIconHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_quickicon * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Quickicon\Administrator\Helper; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\Module\Quickicon\Administrator\Event\QuickIconsEvent; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_quickicon * * @since 1.6 */ class QuickIconHelper { /** * Stack to hold buttons * * @var array[] * @since 1.6 */ protected $buttons = []; /** * Helper method to return button list. * * This method returns the array by reference so it can be * used to add custom buttons or remove default ones. * * @param Registry $params The module parameters * @param ?CMSApplication $application The application * * @return array An array of buttons * * @since 1.6 */ public function getButtons(Registry $params, CMSApplication $application = null) { if ($application == null) { $application = Factory::getApplication(); } $key = (string) $params; $context = (string) $params->get('context', 'mod_quickicon'); if (!isset($this->buttons[$key])) { // Load mod_quickicon language file in case this method is called before rendering the module $application->getLanguage()->load('mod_quickicon'); $this->buttons[$key] = []; if ($params->get('show_users')) { $tmp = [ 'image' => 'icon-users', 'link' => Route::_('index.php?option=com_users&view=users'), 'linkadd' => Route::_('index.php?option=com_users&task=user.add'), 'name' => 'MOD_QUICKICON_USER_MANAGER', 'access' => ['core.manage', 'com_users', 'core.create', 'com_users'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_users') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_users&task=users.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_menuitems')) { $tmp = [ 'image' => 'icon-list', 'link' => Route::_('index.php?option=com_menus&view=items&menutype='), 'linkadd' => Route::_('index.php?option=com_menus&task=item.add'), 'name' => 'MOD_QUICKICON_MENUITEMS_MANAGER', 'access' => ['core.manage', 'com_menus', 'core.create', 'com_menus'], 'group' => 'MOD_QUICKICON_STRUCTURE', ]; if ($params->get('show_menuitems') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_menus&task=items.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_articles')) { $tmp = [ 'image' => 'icon-file-alt', 'link' => Route::_('index.php?option=com_content&view=articles'), 'linkadd' => Route::_('index.php?option=com_content&task=article.add'), 'name' => 'MOD_QUICKICON_ARTICLE_MANAGER', 'access' => ['core.manage', 'com_content', 'core.create', 'com_content'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_articles') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_content&task=articles.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if (ComponentHelper::isEnabled('com_tags') && $params->get('show_tags')) { $tmp = [ 'image' => 'icon-tag', 'link' => Route::_('index.php?option=com_tags&view=tags'), 'linkadd' => Route::_('index.php?option=com_tags&task=tag.edit'), 'name' => 'MOD_QUICKICON_TAGS_MANAGER', 'access' => ['core.manage', 'com_tags', 'core.create', 'com_tags'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_tags') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_tags&task=tags.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_categories')) { $tmp = [ 'image' => 'icon-folder-open', 'link' => Route::_('index.php?option=com_categories&view=categories&extension=com_content'), 'linkadd' => Route::_('index.php?option=com_categories&task=category.add&extension=com_content'), 'name' => 'MOD_QUICKICON_CATEGORY_MANAGER', 'access' => ['core.manage', 'com_content', 'core.create', 'com_content'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_categories') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_categories&task=categories.getQuickiconContent&extension=content&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_media')) { $this->buttons[$key][] = [ 'image' => 'icon-images', 'link' => Route::_('index.php?option=com_media'), 'name' => 'MOD_QUICKICON_MEDIA_MANAGER', 'access' => ['core.manage', 'com_media'], 'group' => 'MOD_QUICKICON_SITE', ]; } if ($params->get('show_modules')) { $tmp = [ 'image' => 'icon-cube', 'link' => Route::_('index.php?option=com_modules&view=modules&client_id=0'), 'linkadd' => Route::_('index.php?option=com_modules&view=select&client_id=0'), 'name' => 'MOD_QUICKICON_MODULE_MANAGER', 'access' => ['core.manage', 'com_modules'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_modules') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_modules&task=modules.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_plugins')) { $tmp = [ 'image' => 'icon-plug', 'link' => Route::_('index.php?option=com_plugins'), 'name' => 'MOD_QUICKICON_PLUGIN_MANAGER', 'access' => ['core.manage', 'com_plugins'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_plugins') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_plugins&task=plugins.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_template_styles')) { $this->buttons[$key][] = [ 'image' => 'icon-paint-brush', 'link' => Route::_('index.php?option=com_templates&view=styles&client_id=0'), 'name' => 'MOD_QUICKICON_TEMPLATE_STYLES', 'access' => ['core.admin', 'com_templates'], 'group' => 'MOD_QUICKICON_SITE', ]; } if ($params->get('show_template_code')) { $this->buttons[$key][] = [ 'image' => 'icon-code', 'link' => Route::_('index.php?option=com_templates&view=templates&client_id=0'), 'name' => 'MOD_QUICKICON_TEMPLATE_CODE', 'access' => ['core.admin', 'com_templates'], 'group' => 'MOD_QUICKICON_SITE', ]; } if ($params->get('show_checkin')) { $tmp = [ 'image' => 'icon-unlock-alt', 'link' => Route::_('index.php?option=com_checkin'), 'name' => 'MOD_QUICKICON_CHECKINS', 'access' => ['core.admin', 'com_checkin'], 'group' => 'MOD_QUICKICON_SYSTEM', ]; if ($params->get('show_checkin') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_checkin&task=getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_cache')) { $tmp = [ 'image' => 'icon-cloud', 'link' => Route::_('index.php?option=com_cache'), 'name' => 'MOD_QUICKICON_CACHE', 'access' => ['core.admin', 'com_cache'], 'group' => 'MOD_QUICKICON_SYSTEM', ]; if ($params->get('show_cache') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_cache&task=display.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_global')) { $this->buttons[$key][] = [ 'image' => 'icon-cog', 'link' => Route::_('index.php?option=com_config'), 'name' => 'MOD_QUICKICON_GLOBAL_CONFIGURATION', 'access' => ['core.manage', 'com_config', 'core.admin', 'com_config'], 'group' => 'MOD_QUICKICON_SYSTEM', ]; } if ($params->get('show_featured')) { $tmp = [ 'image' => 'icon-star featured', 'link' => Route::_('index.php?option=com_content&view=featured'), 'name' => 'MOD_QUICKICON_FEATURED_MANAGER', 'access' => ['core.manage', 'com_content'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_featured') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_content&task=featured.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if ($params->get('show_workflow')) { $this->buttons[$key][] = [ 'image' => 'icon-file-alt contact', 'link' => Route::_('index.php?option=com_workflow&view=workflows&extension=com_content.article'), 'linkadd' => Route::_('index.php?option=com_workflow&view=workflow&layout=edit&extension=com_content.article'), 'name' => 'MOD_QUICKICON_WORKFLOW_MANAGER', 'access' => ['core.manage', 'com_workflow', 'core.create', 'com_workflow'], 'group' => 'MOD_QUICKICON_SITE', ]; } if (ComponentHelper::isEnabled('com_banners') && $params->get('show_banners')) { $tmp = [ 'image' => 'icon-bookmark banners', 'link' => Route::_('index.php?option=com_banners&view=banners'), 'linkadd' => Route::_('index.php?option=com_banners&view=banner&layout=edit'), 'name' => 'MOD_QUICKICON_BANNER_MANAGER', 'access' => ['core.manage', 'com_banners', 'core.create', 'com_banners'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_banners') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_banners&task=banners.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if (ComponentHelper::isEnabled('com_contact') && $params->get('show_contact')) { $tmp = [ 'image' => 'icon-address-book contact', 'link' => Route::_('index.php?option=com_contact&view=contacts'), 'linkadd' => Route::_('index.php?option=com_contact&view=contact&layout=edit'), 'name' => 'MOD_QUICKICON_CONTACT_MANAGER', 'access' => ['core.manage', 'com_contact', 'core.create', 'com_contact'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_contact') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_contact&task=contacts.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if (ComponentHelper::isEnabled('com_newsfeeds') && $params->get('show_newsfeeds')) { $tmp = [ 'image' => 'icon-rss newsfeeds', 'link' => Route::_('index.php?option=com_newsfeeds&view=newsfeeds'), 'linkadd' => Route::_('index.php?option=com_newsfeeds&view=newsfeed&layout=edit'), 'name' => 'MOD_QUICKICON_NEWSFEEDS_MANAGER', 'access' => ['core.manage', 'com_newsfeeds', 'core.create', 'com_newsfeeds'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_newsfeeds') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_newsfeeds&task=newsfeeds.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } if (ComponentHelper::isEnabled('com_redirect') && $params->get('show_redirect')) { $this->buttons[$key][] = [ 'image' => 'icon-map-signs redirect', 'link' => Route::_('index.php?option=com_redirect&view=links'), 'linkadd' => Route::_('index.php?option=com_redirect&view=link&layout=edit'), 'name' => 'MOD_QUICKICON_REDIRECT_MANAGER', 'access' => ['core.manage', 'com_redirect', 'core.create', 'com_redirect'], 'group' => 'MOD_QUICKICON_SITE', ]; } if (ComponentHelper::isEnabled('com_associations') && $params->get('show_associations')) { $this->buttons[$key][] = [ 'image' => 'icon-language', 'link' => Route::_('index.php?option=com_associations&view=associations'), 'name' => 'MOD_QUICKICON_ASSOCIATIONS_MANAGER', 'access' => ['core.manage', 'com_associations'], 'group' => 'MOD_QUICKICON_SITE', ]; } if (ComponentHelper::isEnabled('com_finder') && $params->get('show_finder')) { $this->buttons[$key][] = [ 'image' => 'icon-search-plus finder', 'link' => Route::_('index.php?option=com_finder&view=index'), 'name' => 'MOD_QUICKICON_FINDER_MANAGER', 'access' => ['core.manage', 'com_finder'], 'group' => 'MOD_QUICKICON_SITE', ]; } if ($params->get('show_languages')) { $tmp = [ 'image' => 'icon-comments langmanager', 'link' => Route::_('index.php?option=com_languages&view=languages'), 'linkadd' => Route::_('index.php?option=com_installer&view=languages'), 'name' => 'MOD_QUICKICON_LANGUAGES_MANAGER', 'access' => ['core.manage', 'com_languages'], 'group' => 'MOD_QUICKICON_SITE', ]; if ($params->get('show_languages') == 2) { $tmp['ajaxurl'] = 'index.php?option=com_languages&task=languages.getQuickiconContent&format=json'; } $this->buttons[$key][] = $tmp; } PluginHelper::importPlugin('quickicon'); $arrays = (array) $application->triggerEvent( 'onGetIcons', new QuickIconsEvent('onGetIcons', ['context' => $context]) ); foreach ($arrays as $response) { if (!\is_array($response)) { continue; } foreach ($response as $icon) { $default = [ 'link' => null, 'image' => null, 'text' => null, 'name' => null, 'linkadd' => null, 'access' => true, 'class' => null, 'group' => 'MOD_QUICKICON', ]; $icon = array_merge($default, $icon); if (!\is_null($icon['link']) && (!\is_null($icon['text']) || !\is_null($icon['name']))) { $this->buttons[$key][] = $icon; } } } } return $this->buttons[$key]; } } PKAA#]Ю�vv3modules/mod_quickicon/src/Event/QuickIconsEvent.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_quickicon * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\Quickicon\Administrator\Event; use Joomla\CMS\Event\AbstractEvent; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Event object for retrieving pluggable quick icons * * @since 4.0.0 */ class QuickIconsEvent extends AbstractEvent { /** * The event context * * @var string * @since 4.0.0 */ private $context; /** * Get the event context * * @return string * * @since 4.0.0 */ public function getContext() { return $this->context; } /** * Set the event context * * @param string $context The event context * * @return string * * @since 4.0.0 */ public function setContext($context) { $this->context = $context; return $context; } } PKAA#]�N���&modules/mod_quickicon/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_quickicon * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $app->getDocument()->getWebAssetManager(); $wa->useScript('core') ->useScript('bootstrap.dropdown'); $wa->registerAndUseScript('mod_quickicon', 'mod_quickicon/quickicon.min.js', ['relative' => true, 'version' => 'auto'], ['type' => 'module']); $wa->registerAndUseScript('mod_quickicon-es5', 'mod_quickicon/quickicon-es5.min.js', ['relative' => true, 'version' => 'auto'], ['nomodule' => true, 'defer' => true]); $html = HTMLHelper::_('icons.buttons', $buttons); ?> <?php if (!empty($html)) : ?> <nav class="quick-icons px-3 pb-3" aria-label="<?php echo Text::_('MOD_QUICKICON_NAV_LABEL') . ' ' . htmlspecialchars($module->title, ENT_QUOTES, 'UTF-8'); ?>"> <ul class="nav flex-wrap"> <?php echo $html; ?> </ul> </nav> <?php endif; ?> PKAA#]�7���+modules/mod_quickicon/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_quickicon * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Extension\Service\Provider\HelperFactory; use Joomla\CMS\Extension\Service\Provider\Module; use Joomla\CMS\Extension\Service\Provider\ModuleDispatcherFactory; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The quickicon module service provider. * * @since 4.0.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.0.0 */ public function register(Container $container) { $container->registerServiceProvider(new ModuleDispatcherFactory('\\Joomla\\Module\\Quickicon')); $container->registerServiceProvider(new HelperFactory('\\Joomla\\Module\\Quickicon\\Administrator\\Helper')); $container->registerServiceProvider(new Module()); } }; PKAA#]I�m���-modules/mod_guidedtours/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_guidedtours * * @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Extension\Service\Provider\HelperFactory; use Joomla\CMS\Extension\Service\Provider\Module; use Joomla\CMS\Extension\Service\Provider\ModuleDispatcherFactory; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The guided tours module service provider. * * @since 4.3.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.3.0 */ public function register(Container $container) { $container->registerServiceProvider(new ModuleDispatcherFactory('\\Joomla\\Module\\GuidedTours')); $container->registerServiceProvider(new HelperFactory('\\Joomla\\Module\\GuidedTours\\Administrator\\Helper')); $container->registerServiceProvider(new Module()); } }; PKAA#] A���5modules/mod_guidedtours/src/Dispatcher/Dispatcher.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_guidedtours * * @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\GuidedTours\Administrator\Dispatcher; use Joomla\CMS\Dispatcher\AbstractModuleDispatcher; use Joomla\CMS\Helper\HelperFactoryAwareInterface; use Joomla\CMS\Helper\HelperFactoryAwareTrait; use Joomla\CMS\Plugin\PluginHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Dispatcher class for mod_guidedtours * * @since 4.3.0 */ class Dispatcher extends AbstractModuleDispatcher implements HelperFactoryAwareInterface { use HelperFactoryAwareTrait; /** * Runs the dispatcher. * * @return void * * @since 4.3.0 */ public function dispatch() { // The guided tour will not show if no user is logged in. $user = $this->getApplication()->getIdentity(); if ($user === null || $user->id === 0) { return; } // The module can't show if the plugin is not enabled. if (!PluginHelper::isEnabled('system', 'guidedtours')) { return; } parent::dispatch(); } /** * Returns the layout data. * * @return array * * @since 4.3.0 */ protected function getLayoutData() { $data = parent::getLayoutData(); $data['tours'] = $this->getHelperFactory()->getHelper('GuidedToursHelper')->getTours($data['params'], $this->getApplication()); return $data; } } PKAA#]�S&o``8modules/mod_guidedtours/src/Helper/GuidedToursHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_guidedtours * * @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Module\GuidedTours\Administrator\Helper; use Joomla\CMS\Application\AdministratorApplication; use Joomla\CMS\Language\Multilanguage; use Joomla\Registry\Registry; use Joomla\Uri\Uri; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper for mod_guidedtours * * @since 4.3.0 */ class GuidedToursHelper { /** * Get a list of tours from a specific context. * * @param Registry $params Object holding the module parameters * @param AdministratorApplication $app The application * * @return mixed * * @since 4.3.0 */ public function getTours(Registry $params, AdministratorApplication $app) { $factory = $app->bootComponent('com_guidedtours')->getMVCFactory(); $user = $app->getIdentity(); // Get an instance of the guided tour model $tourModel = $factory->createModel('Tours', 'Administrator', ['ignore_request' => true]); $tourModel->setState('filter.published', 1); $tourModel->setState('filter.access', $app->getIdentity()->getAuthorisedViewLevels()); if (Multilanguage::isEnabled()) { $tourModel->setState('filter.language', ['*', $app->getLanguage()->getTag()]); } $items = $tourModel->getItems(); foreach ($items as $key => $item) { // The user can only see the tours of extensions that are allowed. $uri = new Uri($item->url); if ($extension = $uri->getVar('option')) { if ($extension === 'com_categories') { $extension = $uri->getVar('extension'); } if (!$user->authorise('core.manage', $extension)) { unset($items[$key]); } } } return $items; } } PKAA#]�F�aa+modules/mod_guidedtours/mod_guidedtours.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_guidedtours</name> <author>Joomla! Project</author> <creationDate>2023-02</creationDate> <copyright>(C) 2023 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.3.0</version> <description>MOD_GUIDEDTOURS_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\GuidedTours</namespace> <files> <folder module="mod_guidedtours">services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_guidedtours.ini</language> <language tag="en-GB">language/en-GB/mod_guidedtours.sys.ini</language> </languages> <help key="Admin_Modules:_Tours_Menu" /> <config> <fields name="params"> <fieldset name="basic"> <field name="tourscount" type="number" label="MOD_GUIDEDTOURS_FIELD_TOUR_COUNT_LABEL" description="MOD_GUIDEDTOURS_FIELD_TOUR_COUNT_DESC" default="7" filter="integer" min="0" validate="number" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]EY�zJJ(modules/mod_guidedtours/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_guidedtours * * @copyright (C) 2023 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; $hideLinks = $app->getInput()->getBool('hidemainmenu'); if ($hideLinks || !$tours) { return; } // Load the Bootstrap Dropdown $app->getDocument() ->getWebAssetManager() ->useScript('bootstrap.dropdown'); $lang = $app->getLanguage(); $extension = $app->getInput()->get('option'); $listTours = []; $allTours = []; $toursCount = $params->get('tourscount', 7); foreach ($tours as $tour) : if ($toursCount > 0 && count(array_intersect(['*', $extension], $tour->extensions))) : $listTours[] = $tour; $toursCount--; endif; $uri = new Uri($tour->url); // We assume the url is the starting point $key = $uri->getVar('option') ?? Text::_('MOD_GUIDEDTOURS_GENERIC_TOUR'); if (!isset($allTours[$key])) : $lang->load("$key.sys", JPATH_ADMINISTRATOR) || $lang->load("$key.sys", JPATH_ADMINISTRATOR . '/components/' . $key); $allTours[$key] = []; endif; $allTours[$key][] = $tour; endforeach; ?> <div class="header-item-content dropdown header-tours d-none d-sm-block"> <button class="dropdown-toggle d-flex align-items-center ps-0 py-0" data-bs-toggle="dropdown" type="button" title="<?php echo Text::_('MOD_GUIDEDTOURS_MENU'); ?>"> <div class="header-item-icon"> <span class="icon-map-signs" aria-hidden="true"></span> </div> <div class="header-item-text"> <?php echo Text::_('MOD_GUIDEDTOURS_MENU'); ?> </div> <span class="icon-angle-down" aria-hidden="true"></span> </button> <div class="dropdown-menu dropdown-menu-end"> <?php foreach ($listTours as $tour) : ?> <button type="button" class="button-start-guidedtour dropdown-item" data-id="<?php echo $tour->id ?>"> <span class="icon-map-signs" aria-hidden="true"></span> <?php echo $tour->title; ?> </button> <?php endforeach; ?> <button type="button" class="dropdown-item text-center" data-bs-toggle="modal" data-bs-target="#modGuidedTours-modal"> <?php echo Text::_('MOD_GUIDEDTOURS_SHOW_ALL'); ?> </button> </div> </div> <?php $modalParams = [ 'title' => Text::_('MOD_GUIDEDTOURS_START_TOUR'), 'footer' => '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">' . Text::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button>', ]; $modalHtml = []; $modalHtml[] = '<div class="p-3">'; $modalHtml[] = '<div class="row">'; foreach ($allTours as $extension => $tours) : $modalHtml[] = '<div class="col-lg-6">'; $modalHtml[] = '<h4>' . Text::_($extension) . '</h4>'; $modalHtml[] = '<ul class="list-unstyled">'; foreach ($tours as $tour) : $modalHtml[] = '<li>'; $modalHtml[] = '<a href="#" role="button" class="button-start-guidedtour" data-id="' . (int) $tour->id . '">' . htmlentities($tour->title) . '</a>'; $modalHtml[] = '</li>'; endforeach; $modalHtml[] = '</ul>'; $modalHtml[] = '</div>'; endforeach; $modalHtml[] = '</div>'; $modalHtml[] = '</div>'; $modalBody = implode($modalHtml); $modalCode = HTMLHelper::_('bootstrap.renderModal', 'modGuidedTours-modal', $modalParams, $modalBody); // We have to attach the modal to the body, otherwise we have problems with the backdrop $app->getDocument()->getWebAssetManager()->addInlineScript(" document.addEventListener('DOMContentLoaded', function() { document.body.insertAdjacentHTML('beforeend', " . json_encode($modalCode) . "); const modal = document.getElementById('modGuidedTours-modal'); // add all the elements inside modal which you want to make focusable const focusableElements = 'button, [href]'; const firstFocusableElement = modal.querySelectorAll(focusableElements)[0]; // get first element to be focused inside modal const focusableContent = modal.querySelectorAll(focusableElements); const lastFocusableElement = focusableContent[focusableContent.length - 1]; // get last element to be focused inside modal document.addEventListener('keydown', function(e) { let isTabPressed = e.key === 'Tab' || e.keyCode === 9; if (!isTabPressed) { return; } if (e.shiftKey) { // if shift key pressed for shift + tab combination if (document.activeElement === firstFocusableElement) { lastFocusableElement.focus(); // add focus for the last focusable element e.preventDefault(); } } else { // if tab key is pressed if (document.activeElement === lastFocusableElement) { // if focused has reached to last focusable element then focus first focusable element after pressing tab firstFocusableElement.focus(); // add focus for the first focusable element e.preventDefault(); } } }); firstFocusableElement.focus(); }); "); PKAA#]"�?�mm3modules/mod_multilangstatus/mod_multilangstatus.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_multilangstatus * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Multilanguage; use Joomla\Database\DatabaseInterface; $multilanguageEnabled = Multilanguage::isEnabled($app, Factory::getContainer()->get(DatabaseInterface::class)); require ModuleHelper::getLayoutPath('mod_multilangstatus', $params->get('layout', 'default')); PKAA#]�2�%%3modules/mod_multilangstatus/mod_multilangstatus.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_multilangstatus</name> <author>Joomla! Project</author> <creationDate>2011-09</creationDate> <copyright>(C) 2011 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>3.0.0</version> <description>MOD_MULTILANGSTATUS_XML_DESCRIPTION</description> <files> <filename module="mod_multilangstatus">mod_multilangstatus.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_multilangstatus.ini</language> <language tag="en-GB">language/en-GB/mod_multilangstatus.sys.ini</language> </languages> <help key="Admin_Modules:_Multilingual_Status" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" validate="moduleLayout" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]V��#HH,modules/mod_multilangstatus/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_multilangstatus * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $hideLinks = $app->getInput()->getBool('hidemainmenu'); if (!$multilanguageEnabled || $hideLinks) { return; } $modalHTML = HTMLHelper::_( 'bootstrap.renderModal', 'multiLangModal', [ 'title' => Text::_('MOD_MULTILANGSTATUS'), 'url' => Route::_('index.php?option=com_languages&view=multilangstatus&tmpl=component'), 'height' => '400px', 'width' => '800px', 'bodyHeight' => 70, 'modalWidth' => 80, 'footer' => '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">' . Text::_('JTOOLBAR_CLOSE') . '</button>', ] ); $app->getDocument()->getWebAssetManager() ->registerAndUseScript('mod_multilangstatus.admin', 'mod_multilangstatus/admin-multilangstatus.min.js', [], ['type' => 'module', 'defer' => true]); ?> <a data-bs-target="#multiLangModal" class="header-item-content multilanguage" title="<?php echo Text::_('MOD_MULTILANGSTATUS'); ?>" data-bs-toggle="modal" role="button"> <div class="header-item-icon"> <span class="icon-language" aria-hidden="true"></span> </div> <div class="header-item-text"> <?php echo Text::_('MOD_MULTILANGSTATUS'); ?> </div> </a> <?php echo $modalHTML; ?> PKAA#]�]r� � -modules/mod_loginsupport/mod_loginsupport.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_loginsupport</name> <author>Joomla! Project</author> <creationDate>2019-06</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_LOGINSUPPORT_XML_DESCRIPTION</description> <namespace path="src">Joomla\Module\Loginsupport</namespace> <files> <filename module="mod_loginsupport">mod_loginsupport.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_loginsupport.ini</language> <language tag="en-GB">language/en-GB/mod_loginsupport.sys.ini</language> </languages> <help key="Admin_Modules:_Login_Support_Information" /> <config> <fields name="params"> <fieldset name="basic"> <field name="forum_url" type="url" label="MOD_LOGINSUPPORT_FIELD_FORUM_URL_LABEL" filter="url" default="https://forum.joomla.org/" /> <field name="documentation_url" type="url" label="MOD_LOGINSUPPORT_FIELD_DOCUMENTATION_URL_LABEL" filter="url" default="https://docs.joomla.org/" /> <field name="news_url" type="url" label="MOD_LOGINSUPPORT_FIELD_NEWS_URL_LABEL" filter="url" default="https://www.joomla.org/announcements.html" /> </fieldset> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> <field name="automatic_title" type="radio" label="COM_MODULES_FIELD_AUTOMATIC_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="cache" type="list" label="COM_MODULES_FIELD_CACHING_LABEL" default="0" filter="integer" validate="options" > <option value="1">JGLOBAL_USE_GLOBAL</option> <option value="0">COM_MODULES_FIELD_VALUE_NOCACHING</option> </field> <field name="cache_time" type="number" label="COM_MODULES_FIELD_CACHE_TIME_LABEL" default="0" filter="integer" min="0" validate="number" /> <field name="cachemode" type="hidden" default="itemid" > <option value="itemid"></option> </field> </fieldset> </fields> </config> </extension> PKAA#]b9&7��)modules/mod_loginsupport/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_loginsupport * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; ?> <section class="loginsupport"> <p><?php echo Text::_('MOD_LOGINSUPPORT_HEADLINE'); ?></p> <ul class="list-unstyled"> <li> <?php echo HTMLHelper::link( $params->get('forum_url'), Text::_('MOD_LOGINSUPPORT_FORUM'), [ 'target' => '_blank', 'rel' => 'nofollow noopener', 'title' => Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_('MOD_LOGINSUPPORT_FORUM')) ] ); ?> </li> <li> <?php echo HTMLHelper::link( $params->get('documentation_url'), Text::_('MOD_LOGINSUPPORT_DOCUMENTATION'), [ 'target' => '_blank', 'rel' => 'nofollow noopener', 'title' => Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_('MOD_LOGINSUPPORT_DOCUMENTATION')) ] ); ?> </li> <li> <?php echo HTMLHelper::link( $params->get('news_url'), Text::_('MOD_LOGINSUPPORT_NEWS'), [ 'target' => '_blank', 'rel' => 'nofollow noopener', 'title' => Text::sprintf('JBROWSERTARGET_NEW_TITLE', Text::_('MOD_LOGINSUPPORT_NEWS')) ] ); ?> </li> </ul> </section> PKAA#]--modules/mod_loginsupport/mod_loginsupport.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_logsupport * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Text; if ($params->get('automatic_title')) { $module->title = Text::_('MOD_LOGINSUPPORT_TITLE'); } require ModuleHelper::getLayoutPath('mod_loginsupport', $params->get('layout', 'default')); PKAA#]��P*%modules/mod_frontend/tmpl/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_frontend * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; ?> <a href="<?php echo Uri::root(); ?>" class="header-item-content" title="<?php echo Text::sprintf('MOD_FRONTEND_PREVIEW', $sitename); ?>" target="_blank"> <div class="header-item-icon"> <span class="icon-external-link-alt" aria-hidden="true"></span> </div> <div class="header-item-text"> <?php echo HTMLHelper::_('string.truncate', $sitename, 28, false, false); ?> </div> </a> PKAA#]��4���%modules/mod_frontend/mod_frontend.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="module" client="administrator" method="upgrade"> <name>mod_frontend</name> <author>Joomla! Project</author> <creationDate>2019-07</creationDate> <copyright>(C) 2019 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>MOD_FRONTEND_XML_DESCRIPTION</description> <files> <filename module="mod_frontend">mod_frontend.php</filename> <folder>tmpl</folder> </files> <languages> <language tag="en-GB">language/en-GB/mod_frontend.ini</language> <language tag="en-GB">language/en-GB/mod_frontend.sys.ini</language> </languages> <help key="Admin_Modules:_Frontend_Link" /> <config> <fields name="params"> <fieldset name="advanced"> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" /> <field name="moduleclass_sfx" type="textarea" label="COM_MODULES_FIELD_MODULECLASS_SFX_LABEL" rows="3" validate="CssIdentifier" /> </fieldset> </fields> </config> </extension> PKAA#]�ٟ(��%modules/mod_frontend/mod_frontend.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage mod_frontend * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; $sitename = htmlspecialchars($app->get('sitename', ''), ENT_QUOTES, 'UTF-8'); require ModuleHelper::getLayoutPath('mod_frontend', $params->get('layout', 'default')); PKAA#]AK����*components/com_users/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\Router\RouterFactoryInterface; use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface; use Joomla\CMS\Extension\ComponentInterface; use Joomla\CMS\Extension\Service\Provider\ComponentDispatcherFactory; use Joomla\CMS\Extension\Service\Provider\MVCFactory; use Joomla\CMS\Extension\Service\Provider\RouterFactory; use Joomla\CMS\HTML\Registry; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\Component\Users\Administrator\Extension\UsersComponent; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The users service provider. * * @since 4.0.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.0.0 */ public function register(Container $container) { $container->registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Users')); $container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Users')); $container->registerServiceProvider(new RouterFactory('\\Joomla\\Component\\Users')); $container->set( ComponentInterface::class, function (Container $container) { $component = new UsersComponent($container->get(ComponentDispatcherFactoryInterface::class)); $component->setMVCFactory($container->get(MVCFactoryInterface::class)); $component->setRouterFactory($container->get(RouterFactoryInterface::class)); $component->setRegistry($container->get(Registry::class)); return $component; } ); } }; PKAA#] X components/com_users/access.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <access component="com_users"> <section name="component"> <action name="core.admin" title="JACTION_ADMIN" /> <action name="core.options" title="JACTION_OPTIONS" /> <action name="core.manage" title="JACTION_MANAGE" /> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> </section> <section name="category"> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> </section> <section name="fieldgroup"> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> </section> <section name="field"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> </section> </access> PKAA#]b�S}�%�%components/com_users/config.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <config> <help key="Users:_Options"/> <inlinehelp button="show"/> <fieldset name="user_options" label="COM_USERS_CONFIG_USER_OPTIONS" > <field name="allowUserRegistration" type="radio" label="COM_USERS_CONFIG_FIELD_ALLOWREGISTRATION_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="new_usertype" type="usergrouplist" label="COM_USERS_CONFIG_FIELD_NEW_USER_TYPE_LABEL" default="2" checksuperusergroup="1" /> <field name="guest_usergroup" type="usergrouplist" label="COM_USERS_CONFIG_FIELD_GUEST_USER_GROUP_LABEL" default="1" checksuperusergroup="1" /> <field name="sendpassword" type="radio" label="COM_USERS_CONFIG_FIELD_SENDPASSWORD_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="useractivation" type="list" label="COM_USERS_CONFIG_FIELD_USERACTIVATION_LABEL" default="2" validate="options" > <option value="0">JNONE</option> <option value="1">COM_USERS_CONFIG_FIELD_USERACTIVATION_OPTION_SELFACTIVATION</option> <option value="2">COM_USERS_CONFIG_FIELD_USERACTIVATION_OPTION_ADMINACTIVATION</option> </field> <field name="mail_to_admin" type="radio" label="COM_USERS_CONFIG_FIELD_MAILTOADMIN_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="captcha" type="plugins" label="COM_USERS_CONFIG_FIELD_CAPTCHA_LABEL" folder="captcha" filter="cmd" useglobal="true" > <option value="0">JOPTION_DO_NOT_USE</option> </field> <field name="frontend_userparams" type="radio" label="COM_USERS_CONFIG_FIELD_FRONTEND_USERPARAMS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="site_language" type="radio" label="COM_USERS_CONFIG_FIELD_FRONTEND_LANG_LABEL" layout="joomla.form.field.radio.switcher" default="0" showon="frontend_userparams:1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="change_login_name" type="radio" label="COM_USERS_CONFIG_FIELD_CHANGEUSERNAME_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="domain_options" label="COM_USERS_CONFIG_DOMAIN_OPTIONS" description="COM_USERS_CONFIG_FIELD_DOMAINS_DESC" > <field name="domains" type="subform" label="COM_USERS_CONFIG_FIELD_DOMAINS_LABEL" hiddenLabel="true" multiple="true" layout="joomla.form.field.subform.repeatable-table" formsource="administrator/components/com_users/forms/config_domain.xml" /> </fieldset> <fieldset name="password_options" label="COM_USERS_CONFIG_PASSWORD_OPTIONS" > <field name="reset_count" type="number" label="COM_USERS_CONFIG_FIELD_FRONTEND_RESET_COUNT_LABEL" filter="integer" min="0" max="20" step="1" default="10" validate="number" /> <field name="reset_time" type="number" label="COM_USERS_CONFIG_FIELD_FRONTEND_RESET_TIME_LABEL" filter="integer" min="1" max="24" step="1" default="1" validate="number" /> <field name="minimum_length" type="number" label="COM_USERS_CONFIG_FIELD_MINIMUM_PASSWORD_LENGTH" filter="integer" min="8" step="1" default="12" validate="number" /> <field name="minimum_integers" type="number" label="COM_USERS_CONFIG_FIELD_MINIMUM_INTEGERS" filter="integer" min="0" step="1" default="0" validate="number" /> <field name="minimum_symbols" type="number" label="COM_USERS_CONFIG_FIELD_MINIMUM_SYMBOLS" filter="integer" min="0" step="1" default="0" validate="number" /> <field name="minimum_uppercase" type="number" label="COM_USERS_CONFIG_FIELD_MINIMUM_UPPERCASE" filter="integer" min="0" step="1" default="0" validate="number" /> <field name="minimum_lowercase" type="number" label="COM_USERS_CONFIG_FIELD_MINIMUM_LOWERCASE" filter="integer" min="0" step="1" default="0" validate="number" /> </fieldset> <fieldset name="multifactorauth" label="COM_USERS_CONFIG_MULTIFACTORAUTH_SETTINGS_LABEL" description="COM_USERS_CONFIG_MULTIFACTORAUTH_SETTINGS_DESC" addfieldprefix="Joomla\Component\Users\Administrator\Field" > <field name="allowed_positions_frontend" type="ModulesPosition" label="COM_USERS_CONFIG_ALLOWED_POSITIONS_FRONTEND_LABEL" description="COM_USERS_CONFIG_ALLOWED_POSITIONS_FRONTEND_DESC" default="" layout="joomla.form.field.list-fancy-select" client="site" multiple="1" /> <field name="frontend_show_title" type="radio" label="COM_USERS_CONFIG_FRONTEND_SHOW_TITLE_LABEL" description="COM_USERS_CONFIG_FRONTEND_SHOW_TITLE_DESC" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="allowed_positions_backend" type="ModulesPosition" label="COM_USERS_CONFIG_ALLOWED_POSITIONS_BACKEND_LABEL" description="COM_USERS_CONFIG_ALLOWED_POSITIONS_BACKEND_DESC" default="" layout="joomla.form.field.list-fancy-select" client="administrator" multiple="1" /> <field name="neverMFAUserGroups" type="UserGroupList" label="COM_USERS_CONFIG_NEVERMFAUSERGROUPS_LABEL" description="COM_USERS_CONFIG_NEVERMFAUSERGROUPS_DESC" layout="joomla.form.field.list-fancy-select" checksuperusergroup="1" default="" multiple="1" > <option value="0">COM_USERS_CONFIG_LBL_NOGROUP</option> </field> <field name="forceMFAUserGroups" type="UserGroupList" label="COM_USERS_CONFIG_FORCEMFAUSERGROUPS_LABEL" description="COM_USERS_CONFIG_FORCEMFAUSERGROUPS_DESC" layout="joomla.form.field.list-fancy-select" checksuperusergroup="1" default="" multiple="1" > <option value="0">COM_USERS_CONFIG_LBL_NOGROUP</option> </field> <field name="captive_template" type="templatestyle" label="COM_USERS_CONFIG_FRONTEND_CAPTIVE_TEMPLATE_LABEL" description="COM_USERS_CONFIG_FRONTEND_CAPTIVE_TEMPLATE_DESC" client="site" > <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="mfaonsilent" type="radio" label="COM_USERS_CONFIG_MFAONSILENT_LABEL" description="COM_USERS_CONFIG_MFAONSILENT_DESC" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="silentresponses" type="text" label="COM_USERS_CONFIG_SILENTRESPONSES_LABEL" description="COM_USERS_CONFIG_SILENTRESPONSES_DESC" default="cookie, passwordless" showon="mfaonsilent:0" /> <field name="mfaredirectonlogin" type="radio" label="COM_USERS_CONFIG_REDIRECTONLOGIN_LABEL" description="COM_USERS_CONFIG_REDIRECTONLOGIN_DESC" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="mfaredirecturl" type="text" label="COM_USERS_CONFIG_REDIRECTURL_LABEL" description="COM_USERS_CONFIG_REDIRECTURL_DESC" default="" showon="mfaredirectonlogin:1" /> <field name="mfatrycount" type="number" label="COM_USERS_CONFIG_MFATRYCOUNT_LABEL" filter="integer" min="0" max="20" step="1" default="10" validate="number" /> <field name="mfatrytime" type="number" label="COM_USERS_CONFIG_MFATRYTIME_LABEL" filter="integer" min="1" max="24" step="1" default="1" validate="number" /> </fieldset> <fieldset name="user_notes_history" label="COM_USERS_CONFIG_FIELD_NOTES_HISTORY" > <field name="save_history" type="radio" label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="history_limit" type="number" label="JGLOBAL_HISTORY_LIMIT_OPTIONS_LABEL" filter="integer" default="5" showon="save_history:1" /> </fieldset> <fieldset name="massmail" label="COM_USERS_MASS_MAIL" description="COM_USERS_MASS_MAIL_DESC"> <field name="mailSubjectPrefix" type="text" label="COM_USERS_CONFIG_FIELD_SUBJECT_PREFIX_LABEL" /> <field name="mailBodySuffix" type="textarea" label="COM_USERS_CONFIG_FIELD_MAILBODY_SUFFIX_LABEL" rows="5" cols="30" /> </fieldset> <fieldset name="integration" label="JGLOBAL_INTEGRATION_LABEL" description="COM_USERS_CONFIG_INTEGRATION_SETTINGS_DESC" > <fieldset name="integration_customfields" label="JGLOBAL_FIELDS_TITLE" > <field name="custom_fields_enable" type="radio" label="JGLOBAL_CUSTOM_FIELDS_ENABLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> </fieldset> <fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" > <field name="rules" type="rules" label="JCONFIG_PERMISSIONS_LABEL" filter="rules" validate="rules" component="com_users" section="component" /> </fieldset> </config> PKAA#]���&components/com_users/presets/users.xmlnu�[���<?xml version="1.0"?> <menu xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:joomla.org" xsi:schemaLocation="urn:joomla.org menu.xsd" > <menuitem title="COM_USERS_MENUS_USERS" type="heading" icon="users" class="class:users" > <menuitem title="COM_USERS_MENUS_USER_MANAGER" type="component" element="com_users" link="index.php?option=com_users&view=users" quicktask="index.php?option=com_users&task=user.add" quicktask-title="COM_USERS_MENUS_ADD_USER" /> <menuitem title="COM_USERS_MENUS_GROUPS" type="component" element="com_users" link="index.php?option=com_users&view=groups" /> <menuitem title="COM_USERS_MENUS_LEVELS" type="component" element="com_users" link="index.php?option=com_users&view=levels" /> </menuitem> <menuitem title="COM_USERS_MENUS_FIELDS" type="heading" icon="user-tag" class="class:users" > <menuitem title="MOD_MENU_FIELDS" type="component" element="com_fields" link="index.php?option=com_fields&view=fields&context=com_users.user" /> <menuitem title="MOD_MENU_FIELDS_GROUP" type="component" element="com_fields" link="index.php?option=com_fields&view=groups&context=com_users.user" /> </menuitem> <menuitem title="COM_USERS_MENUS_MISC" type="heading" icon="user-edit" class="class:users" > <menuitem title="COM_USERS_MENUS_NOTES" type="component" element="com_users" link="index.php?option=com_users&view=notes" /> <menuitem title="COM_USERS_MENUS_NOTE_CATEGORIES" type="component" element="com_categories" link="index.php?option=com_categories&view=categories&extension=com_users" /> <menuitem title="MOD_MENU_MASS_MAIL_USERS" type="component" element="com_users" link="index.php?option=com_users&view=mail" scope="massmail" /> </menuitem> </menu> PKAA#]:@S�5components/com_users/src/Extension/UsersComponent.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Extension; use Joomla\CMS\Component\Router\RouterServiceInterface; use Joomla\CMS\Component\Router\RouterServiceTrait; use Joomla\CMS\Extension\BootableExtensionInterface; use Joomla\CMS\Extension\MVCComponent; use Joomla\CMS\Factory; use Joomla\CMS\Fields\FieldsServiceInterface; use Joomla\CMS\HTML\HTMLRegistryAwareTrait; use Joomla\Component\Users\Administrator\Service\HTML\Users; use Psr\Container\ContainerInterface; // phpcs:disable PSR1.Files.SideEffects \defined('JPATH_PLATFORM') or die; // phpcs:enable PSR1.Files.SideEffects /** * Component class for com_users * * @since 4.0.0 */ class UsersComponent extends MVCComponent implements BootableExtensionInterface, RouterServiceInterface, FieldsServiceInterface { use RouterServiceTrait; use HTMLRegistryAwareTrait; /** * Booting the extension. This is the function to set up the environment of the extension like * registering new class loaders, etc. * * If required, some initial set up can be done from services of the container, eg. * registering HTML services. * * @param ContainerInterface $container The container * * @return void * * @since 4.0.0 */ public function boot(ContainerInterface $container) { $this->getRegistry()->register('users', new Users()); } /** * Returns a valid section for the given section. If it is not valid then null is returned. * * @param string $section The section to get the mapping for * @param object|null $item The content item or null * * @return string|null The new section or null * * @since 4.0.0 */ public function validateSection($section, $item = null) { if (Factory::getApplication()->isClient('site')) { switch ($section) { case 'registration': case 'profile': return 'user'; } } if ($section === 'user') { return $section; } // We don't know other sections. return null; } /** * Returns valid contexts. * * @return array Associative array with contexts as keys and translated strings as values * * @since 4.0.0 */ public function getContexts(): array { $language = Factory::getApplication()->getLanguage(); $language->load('com_users', JPATH_ADMINISTRATOR); return [ 'com_users.user' => $language->_('COM_USERS'), ]; } } PKAA#]K�yRR/components/com_users/src/Helper/UsersHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Helper\UserGroupsHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Object\CMSObject; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users component helper. * * @since 1.6 */ class UsersHelper extends ContentHelper { /** * @var CMSObject A cache for the available actions. * @since 1.6 */ protected static $actions; /** * Get a list of filter options for the blocked state of a user. * * @return array An array of \JHtmlOption elements. * * @since 1.6 */ public static function getStateOptions() { // Build the filter options. $options = []; $options[] = HTMLHelper::_('select.option', '0', Text::_('JENABLED')); $options[] = HTMLHelper::_('select.option', '1', Text::_('JDISABLED')); return $options; } /** * Get a list of filter options for the activated state of a user. * * @return array An array of \JHtmlOption elements. * * @since 1.6 */ public static function getActiveOptions() { // Build the filter options. $options = []; $options[] = HTMLHelper::_('select.option', '0', Text::_('COM_USERS_ACTIVATED')); $options[] = HTMLHelper::_('select.option', '1', Text::_('COM_USERS_UNACTIVATED')); return $options; } /** * Get a list of the user groups for filtering. * * @return array An array of \JHtmlOption elements. * * @since 1.6 */ public static function getGroups() { $options = UserGroupsHelper::getInstance()->getAll(); foreach ($options as &$option) { $option->value = $option->id; $option->text = str_repeat('- ', $option->level) . $option->title; } return $options; } /** * Creates a list of range options used in filter select list * used in com_users on users view * * @return array * * @since 2.5 */ public static function getRangeOptions() { $options = [ HTMLHelper::_('select.option', 'today', Text::_('COM_USERS_OPTION_RANGE_TODAY')), HTMLHelper::_('select.option', 'past_week', Text::_('COM_USERS_OPTION_RANGE_PAST_WEEK')), HTMLHelper::_('select.option', 'past_1month', Text::_('COM_USERS_OPTION_RANGE_PAST_1MONTH')), HTMLHelper::_('select.option', 'past_3month', Text::_('COM_USERS_OPTION_RANGE_PAST_3MONTH')), HTMLHelper::_('select.option', 'past_6month', Text::_('COM_USERS_OPTION_RANGE_PAST_6MONTH')), HTMLHelper::_('select.option', 'past_year', Text::_('COM_USERS_OPTION_RANGE_PAST_YEAR')), HTMLHelper::_('select.option', 'post_year', Text::_('COM_USERS_OPTION_RANGE_POST_YEAR')), ]; return $options; } /** * No longer used. * * @return array * * @since 3.2.0 * @throws \Exception * * @deprecated 4.2 will be removed in 6.0 * No longer used, will be removed without replacement */ public static function getTwoFactorMethods() { return []; } /** * Get a list of the User Groups for Viewing Access Levels * * @param string $rules User Groups in JSON format * * @return string $groups Comma separated list of User Groups * * @since 3.6 */ public static function getVisibleByGroups($rules) { $rules = json_decode($rules); if (!$rules) { return false; } $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('title', 'text')) ->from($db->quoteName('#__usergroups')) ->whereIn($db->quoteName('id'), $rules); $db->setQuery($query); $groups = $db->loadColumn(); $groups = implode(', ', $groups); return $groups; } /** * Returns a valid section for users. If it is not valid then null * is returned. * * @param string $section The section to get the mapping for * * @return string|null The new section * * @since 3.7.0 * @throws \Exception * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Users\Administrator\Extension\UsersComponent::validateSection() instead. */ public static function validateSection($section) { return Factory::getApplication()->bootComponent('com_users')->validateSection($section, null); } /** * Returns valid contexts * * @return array * * @since 3.7.0 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Users\Administrator\Extension\UsersComponent::getContexts() instead. */ public static function getContexts() { return Factory::getApplication()->bootComponent('com_users')->getContexts(); } } PKAA#]e��o.o.'components/com_users/src/Helper/Mfa.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Helper; use Exception; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Document\HtmlDocument; use Joomla\CMS\Event\MultiFactor\GetMethod; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Uri\Uri; use Joomla\CMS\User\User; use Joomla\CMS\User\UserFactoryInterface; use Joomla\Component\Users\Administrator\DataShape\MethodDescriptor; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Model\MethodsModel; use Joomla\Component\Users\Administrator\Table\MfaTable; use Joomla\Component\Users\Administrator\View\Methods\HtmlView; use Joomla\Database\DatabaseInterface; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Helper functions for captive MFA handling * * @since 4.2.0 */ abstract class Mfa { /** * Cache of all currently active MFAs * * @var array|null * @since 4.2.0 */ protected static $allMFAs = null; /** * Are we inside the administrator application * * @var boolean * @since 4.2.0 */ protected static $isAdmin = null; /** * Get the HTML for the Multi-factor Authentication configuration interface for a user. * * This helper method uses a sort of primitive HMVC to display the com_users' Methods page which * renders the MFA configuration interface. * * @param User $user The user we are going to show the configuration UI for. * * @return string|null The HTML of the UI; null if we cannot / must not show it. * @throws \Exception * @since 4.2.0 */ public static function getConfigurationInterface(User $user): ?string { // Check the conditions if (!self::canShowConfigurationInterface($user)) { return null; } /** @var CMSApplication $app */ $app = Factory::getApplication(); if ($app->getInput()->getCmd('option', '') !== 'com_users') { $app->getLanguage()->load('com_users'); $app->getDocument() ->getWebAssetManager() ->getRegistry() ->addExtensionRegistryFile('com_users'); } // Get a model /** @var MVCFactoryInterface $factory */ $factory = Factory::getApplication()->bootComponent('com_users')->getMVCFactory(); /** @var MethodsModel $methodsModel */ $methodsModel = $factory->createModel('Methods', 'Administrator'); /** @var BackupcodesModel $methodsModel */ $backupCodesModel = $factory->createModel('Backupcodes', 'Administrator'); // Get a view object $appRoot = $app->isClient('site') ? \JPATH_SITE : \JPATH_ADMINISTRATOR; $prefix = $app->isClient('site') ? 'Site' : 'Administrator'; /** @var HtmlView $view */ $view = $factory->createView( 'Methods', $prefix, 'Html', [ 'base_path' => $appRoot . '/components/com_users', ] ); $view->setModel($methodsModel, true); /** @noinspection PhpParamsInspection */ $view->setModel($backupCodesModel); $view->document = $app->getDocument(); $view->returnURL = base64_encode(Uri::getInstance()->toString()); $view->user = $user; $view->set('forHMVC', true); $view->setLanguage($app->getLanguage()); @ob_start(); try { $view->display(); } catch (\Throwable $e) { @ob_end_clean(); /** * This is intentional! When you are developing a Multi-factor Authentication plugin you * will inevitably mess something up and end up with an error. This would cause the * entire MFA configuration page to disappear. No problem! Set Debug System to Yes in * Global Configuration and you can see the error exception which will help you solve * your problem. */ if (defined('JDEBUG') && JDEBUG) { throw $e; } return null; } return @ob_get_clean(); } /** * Get a list of all of the MFA Methods * * @return MethodDescriptor[] * @since 4.2.0 */ public static function getMfaMethods(): array { PluginHelper::importPlugin('multifactorauth'); if (is_null(self::$allMFAs)) { // Get all the plugin results $event = new GetMethod(); $temp = Factory::getApplication() ->getDispatcher() ->dispatch($event->getName(), $event) ->getArgument('result', []); // Normalize the results self::$allMFAs = []; foreach ($temp as $method) { if (!is_array($method) && !($method instanceof MethodDescriptor)) { continue; } $method = $method instanceof MethodDescriptor ? $method : new MethodDescriptor($method); if (empty($method['name'])) { continue; } self::$allMFAs[$method['name']] = $method; } } return self::$allMFAs; } /** * Is the current user allowed to add/edit MFA methods for $user? * * This is only allowed if I am adding / editing methods for myself. * * If the target user is a member of any group disallowed to use MFA this will return false. * * @param User|null $user The user you want to know if we're allowed to edit * * @return boolean * @throws \Exception * @since 4.2.0 */ public static function canAddEditMethod(?User $user = null): bool { // Cannot do MFA operations on no user or a guest user. if (is_null($user) || $user->guest) { return false; } // If the user is in a user group which disallows MFA we cannot allow adding / editing methods. $neverMFAGroups = ComponentHelper::getParams('com_users')->get('neverMFAUserGroups', []); $neverMFAGroups = is_array($neverMFAGroups) ? $neverMFAGroups : []; if (count(array_intersect($user->getAuthorisedGroups(), $neverMFAGroups))) { return false; } // Check if this is the same as the logged-in user. $myUser = Factory::getApplication()->getIdentity() ?: Factory::getContainer()->get(UserFactoryInterface::class)->loadUserById(0); return $myUser->id === $user->id; } /** * Is the current user allowed to delete MFA methods / disable MFA for $user? * * This is allowed if: * - The user being queried is the same as the logged-in user * - The logged-in user is a Super User AND the queried user is NOT a Super User. * * Note that Super Users can be edited by their own user only for security reasons. If a Super * User gets locked out they must use the Backup Codes to regain access. If that's not possible, * they will need to delete their records from the `#__user_mfa` table. * * @param User|null $user The user being queried. * * @return boolean * @throws \Exception * @since 4.2.0 */ public static function canDeleteMethod(?User $user = null): bool { // Cannot do MFA operations on no user or a guest user. if (is_null($user) || $user->guest) { return false; } $myUser = Factory::getApplication()->getIdentity() ?: Factory::getContainer()->get(UserFactoryInterface::class)->loadUserById(0); return $myUser->id === $user->id || ($myUser->authorise('core.admin') && !$user->authorise('core.admin')); } /** * Return all MFA records for a specific user * * @param int|null $userId User ID. NULL for currently logged in user. * * @return MfaTable[] * @throws \Exception * * @since 4.2.0 */ public static function getUserMfaRecords(?int $userId): array { if (empty($userId)) { $user = Factory::getApplication()->getIdentity() ?: Factory::getUser(); $userId = $user->id ?: 0; } /** @var DatabaseInterface $db */ $db = Factory::getContainer()->get(DatabaseInterface::class); $query = $db->getQuery(true) ->select($db->quoteName('id')) ->from($db->quoteName('#__user_mfa')) ->where($db->quoteName('user_id') . ' = :user_id') ->bind(':user_id', $userId, ParameterType::INTEGER); try { $ids = $db->setQuery($query)->loadColumn() ?: []; } catch (\Exception $e) { $ids = []; } if (empty($ids)) { return []; } /** @var MVCFactoryInterface $factory */ $factory = Factory::getApplication()->bootComponent('com_users')->getMVCFactory(); // Map all results to MFA table objects $records = array_map( function ($id) use ($factory) { /** @var MfaTable $record */ $record = $factory->createTable('Mfa', 'Administrator'); $loaded = $record->load($id); return $loaded ? $record : null; }, $ids ); // Let's remove Methods we couldn't decrypt when reading from the database. $hasBackupCodes = false; $records = array_filter( $records, function ($record) use (&$hasBackupCodes) { $isValid = !is_null($record) && (!empty($record->options)); if ($isValid && ($record->method === 'backupcodes')) { $hasBackupCodes = true; } return $isValid; } ); // If the only Method is backup codes it's as good as having no records if ((count($records) === 1) && $hasBackupCodes) { return []; } return $records; } /** * Are the conditions for showing the MFA configuration interface met? * * @param User|null $user The user to be configured * * @return boolean * @throws \Exception * @since 4.2.0 */ public static function canShowConfigurationInterface(?User $user = null): bool { // If I have no user to check against that's all the checking I can do. if (empty($user)) { return false; } // I need at least one MFA method plugin for the setup interface to make any sense. $plugins = PluginHelper::getPlugin('multifactorauth'); if (count($plugins) < 1) { return false; } /** @var CMSApplication $app */ $app = Factory::getApplication(); // We can only show a configuration page in the front- or backend application. if (!$app->isClient('site') && !$app->isClient('administrator')) { return false; } // Only show the configuration page if we have an HTML document if (!($app->getDocument() instanceof HtmlDocument)) { return false; } // I must be able to add, edit or delete the user's MFA settings return self::canAddEditMethod($user) || self::canDeleteMethod($user); } } PKAA#]l��y��/components/com_users/src/Helper/DebugHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Helper; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users component debugging helper. * * @since 1.6 */ class DebugHelper { /** * Get a list of the components. * * @return array * * @since 1.6 */ public static function getComponents() { // Initialise variable. $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('name AS text, element AS value') ->from('#__extensions') ->where('enabled >= 1') ->where('type =' . $db->quote('component')); $items = $db->setQuery($query)->loadObjectList(); if (count($items)) { $lang = Factory::getLanguage(); foreach ($items as &$item) { // Load language $extension = $item->value; $source = JPATH_ADMINISTRATOR . '/components/' . $extension; $lang->load("$extension.sys", JPATH_ADMINISTRATOR) || $lang->load("$extension.sys", $source); // Translate component name $item->text = Text::_($item->text); } // Sort by component name $items = ArrayHelper::sortObjects($items, 'text', 1, true, true); } return $items; } /** * Get a list of the actions for the component or code actions. * * @param string $component The name of the component. * * @return array * * @since 1.6 */ public static function getDebugActions($component = null) { $actions = []; // Try to get actions for the component if (!empty($component)) { $component_actions = Access::getActionsFromFile(JPATH_ADMINISTRATOR . '/components/' . $component . '/access.xml'); if (!empty($component_actions)) { foreach ($component_actions as &$action) { $descr = (string) $action->title; if (!empty($action->description)) { $descr = (string) $action->description; } $actions[$action->title] = [$action->name, $descr]; } } } // Use default actions from configuration if no component selected or component doesn't have actions if (empty($actions)) { $filename = JPATH_ADMINISTRATOR . '/components/com_config/forms/application.xml'; if (is_file($filename)) { $xml = simplexml_load_file($filename); foreach ($xml->children()->fieldset as $fieldset) { if ('permissions' == (string) $fieldset['name']) { foreach ($fieldset->children() as $field) { if ('rules' == (string) $field['name']) { foreach ($field->children() as $action) { $descr = (string) $action['title']; if (isset($action['description']) && !empty($action['description'])) { $descr = (string) $action['description']; } $actions[(string) $action['title']] = [ (string) $action['name'], $descr, ]; } break; } } } } // Load language $lang = Factory::getLanguage(); $extension = 'com_config'; $source = JPATH_ADMINISTRATOR . '/components/' . $extension; $lang->load($extension, JPATH_ADMINISTRATOR, null, false, false) || $lang->load($extension, $source, null, false, false) || $lang->load($extension, JPATH_ADMINISTRATOR, $lang->getDefault(), false, false) || $lang->load($extension, $source, $lang->getDefault(), false, false); } } return $actions; } /** * Get a list of filter options for the levels. * * @return array An array of \JHtmlOption elements. */ public static function getLevelsOptions() { // Build the filter options. $options = []; $options[] = HTMLHelper::_('select.option', '1', Text::sprintf('COM_USERS_OPTION_LEVEL_COMPONENT', 1)); $options[] = HTMLHelper::_('select.option', '2', Text::sprintf('COM_USERS_OPTION_LEVEL_CATEGORY', 2)); $options[] = HTMLHelper::_('select.option', '3', Text::sprintf('COM_USERS_OPTION_LEVEL_DEEPER', 3)); $options[] = HTMLHelper::_('select.option', '4', '4'); $options[] = HTMLHelper::_('select.option', '5', '5'); $options[] = HTMLHelper::_('select.option', '6', '6'); return $options; } } PKAA#]-���qq3components/com_users/src/Field/GroupparentField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Field; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\Form\Field\ListField; use Joomla\CMS\Helper\UserGroupsHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User Group Parent field.. * * @since 1.6 */ class GroupparentField extends ListField { /** * The form field type. * * @var string * @since 1.6 */ protected $type = 'GroupParent'; /** * Method to clean the Usergroup Options from all children starting by a given father * * @param array $userGroupsOptions The usergroup options to clean * @param integer $fatherId The father ID to start with * * @return array The cleaned field options * * @since 3.9.4 */ private function cleanOptionsChildrenByFather($userGroupsOptions, $fatherId) { foreach ($userGroupsOptions as $userGroupsOptionsId => $userGroupsOptionsData) { if ((int) $userGroupsOptionsData->parent_id === (int) $fatherId) { unset($userGroupsOptions[$userGroupsOptionsId]); $userGroupsOptions = $this->cleanOptionsChildrenByFather($userGroupsOptions, $userGroupsOptionsId); } } return $userGroupsOptions; } /** * Method to get the field options. * * @return array The field option objects * * @since 1.6 */ protected function getOptions() { $options = UserGroupsHelper::getInstance()->getAll(); $currentGroupId = (int) Factory::getApplication()->getInput()->get('id', 0, 'int'); // Prevent to set yourself as parent if ($currentGroupId) { unset($options[$currentGroupId]); } // We should not remove any groups when we are creating a new group if ($currentGroupId !== 0) { // Prevent parenting direct children and children of children of this item. $options = $this->cleanOptionsChildrenByFather($options, $currentGroupId); } $options = array_values($options); $isSuperAdmin = Factory::getUser()->authorise('core.admin'); // Pad the option text with spaces using depth level as a multiplier. for ($i = 0, $n = count($options); $i < $n; $i++) { // Show groups only if user is super admin or group is not super admin if ($isSuperAdmin || !Access::checkGroup($options[$i]->id, 'core.admin')) { $options[$i]->value = $options[$i]->id; $options[$i]->text = str_repeat('- ', $options[$i]->level) . $options[$i]->title; } else { unset($options[$i]); } } // Merge any additional options in the XML definition. return array_merge(parent::getOptions(), $options); } } PKAA#]�Z&.components/com_users/src/Field/LevelsField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2016 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Field; use Joomla\CMS\Form\Field\ListField; use Joomla\Component\Users\Administrator\Helper\DebugHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Access Levels field. * * @since 3.6.0 */ class LevelsField extends ListField { /** * The form field type. * * @var string * @since 3.6.0 */ protected $type = 'Levels'; /** * Method to get the field options. * * @return array The field option objects * * @since 3.6.0 */ protected function getOptions() { // Merge any additional options in the XML definition. return array_merge(parent::getOptions(), DebugHelper::getLevelsOptions()); } } PKAA#]&���tt7components/com_users/src/Field/ModulesPositionField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Field; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Select modules positions. * * Reuses the same field from com_modules. Don't lose it; reuse it! * * @since 4.2.0 */ class ModulesPositionField extends \Joomla\Component\Modules\Administrator\Field\ModulesPositionField { } PKAA#]��w ��9components/com_users/src/DataShape/SetupRenderOptions.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\DataShape; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Data shape for Method Setup Render Options * * @property string $default_title Default title if you are setting up this MFA Method for the first time * @property string $pre_message Custom HTML to display above the MFA setup form * @property string $table_heading Heading for displayed tabular data. Typically used to display a list of fixed MFA * codes, TOTP setup parameters etc * @property array $tabular_data Any tabular data to display (label => custom HTML). See above * @property array $hidden_data Hidden fields to include in the form (name => value) * @property string $field_type How to render the MFA setup code field. "input" (HTML input element) or "custom" * (custom HTML) * @property string $input_type The type attribute for the HTML input box. Typically "text" or "password". Use any * HTML5 input type. * @property string $input_value Pre-filled value for the HTML input box. Typically used for fixed codes, the fixed * YubiKey ID etc. * @property string $placeholder Placeholder text for the HTML input box. Leave empty if you don't need it. * @property string $label Label to show above the HTML input box. Leave empty if you don't need it. * @property string $html Custom HTML. Only used when field_type = custom. * @property bool $show_submit Should I show the submit button (apply the MFA setup)? * @property string $submit_class Additional CSS classes for the submit button (apply the MFA setup) * @property string $post_message Custom HTML to display below the MFA setup form * @property string $help_url A URL with help content for this Method to display to the user * * @since 4.2.0 */ class SetupRenderOptions extends DataShapeObject { /** * Display a standard HTML5 input field. Use the input_type, placeholder and label properties to set it up. * * @since 4.2.0 */ public const FIELD_INPUT = 'input'; /** * Display a custom HTML document. Use the html property to set it up. * * @since 4.2.0 */ public const FIELD_CUSTOM = 'custom'; /** * Default title if you are setting up this MFA Method for the first time * * @var string * @since 4.2.0 */ protected $default_title = ''; /** * Custom HTML to display above the MFA setup form parameters etc * * @var string * @since 4.2.0 */ protected $pre_message = ''; /** * Heading for displayed tabular data. Typically used to display a list of fixed MFA codes, TOTP setup * * @var string * @since 4.2.0 */ protected $table_heading = ''; /** * Any tabular data to display (label => custom HTML). See above * * @var array * @since 4.2.0 */ protected $tabular_data = []; /** * Hidden fields to include in the form (name => value) * * @var array * @since 4.2.0 */ protected $hidden_data = []; /** * How to render the MFA setup code field. "input" (HTML input element) or "custom" (custom HTML) * * @var string * @since 4.2.0 */ protected $field_type = 'input'; /** * The type attribute for the HTML input box. Typically "text" or "password". Use any HTML5 input type. * * @var string * @since 4.2.0 */ protected $input_type = 'text'; /** * Attributes other than type and id which will be added to the HTML input box. * * @var array * @@since 4.2.0 */ protected $input_attributes = []; /** * Pre-filled value for the HTML input box. Typically used for fixed codes, the fixed YubiKey ID etc. * * @var string * @since 4.2.0 */ protected $input_value = ''; /** * Placeholder text for the HTML input box. Leave empty if you don't need it. * * @var string * @since 4.2.0 */ protected $placeholder = ''; /** * Label to show above the HTML input box. Leave empty if you don't need it. * * @var string * @since 4.2.0 */ protected $label = ''; /** * Custom HTML. Only used when field_type = custom. * * @var string * @since 4.2.0 */ protected $html = ''; /** * Should I show the submit button (apply the MFA setup)? * * @var boolean * @since 4.2.0 */ protected $show_submit = true; /** * Additional CSS classes for the submit button (apply the MFA setup) * * @var string * @since 4.2.0 */ protected $submit_class = ''; /** * Icon class to use for the submit button * * @var string * @since 4.2.0 */ protected $submit_icon = 'icon icon-ok'; /** * Language key to use for the text on the submit button * * @var string * @since 4.2.0 */ protected $submit_text = 'JSAVE'; /** * Custom HTML to display below the MFA setup form * * @var string * @since 4.2.0 */ protected $post_message = ''; /** * A URL with help content for this Method to display to the user * * @var string * @since 4.2.0 */ protected $help_url = ''; /** * Setter for the field_type property * * @param string $value One of self::FIELD_INPUT, self::FIELD_CUSTOM * * @since 4.2.0 * @throws \InvalidArgumentException */ // phpcs:ignore protected function setField_type($value) { if (!in_array($value, [self::FIELD_INPUT, self::FIELD_CUSTOM])) { throw new \InvalidArgumentException('Invalid value for property field_type.'); } $this->field_type = $value; } /** * Setter for the input_attributes property. * * @param array $value The value to set * * @return void * @since 4.2.0 */ // phpcs:ignore protected function setInput_attributes(array $value) { $forbiddenAttributes = ['id', 'type', 'name', 'value']; foreach ($forbiddenAttributes as $key) { if (isset($value[$key])) { unset($value[$key]); } } $this->input_attributes = $value; } } PKAA#]qr��aa6components/com_users/src/DataShape/DataShapeObject.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\DataShape; /** * Generic helper for handling data shapes in com_users * * @since 4.2.0 */ abstract class DataShapeObject implements \ArrayAccess { /** * Public constructor * * @param array $array The data to initialise this object with * * @since 4.2.0 */ public function __construct(array $array = []) { if (!is_array($array) && !($array instanceof self)) { throw new \InvalidArgumentException(sprintf('%s needs an array or a %s object', __METHOD__, __CLASS__)); } foreach (($array instanceof self) ? $array->asArray() : $array as $k => $v) { $this[$k] = $v; } } /** * Get the data shape as a key-value array * * @return array * * @since 4.2.0 */ public function asArray(): array { return get_object_vars($this); } /** * Merge another data shape object or key-value array into this object. * * @param array|self $newValues The object or array to merge into self. * * @return $this * * @since 4.2.0 */ public function merge($newValues): self { if (!is_array($newValues) && !($newValues instanceof self)) { throw new \InvalidArgumentException(sprintf('%s needs an array or a %s object', __METHOD__, __CLASS__)); } foreach (($newValues instanceof self) ? $newValues->asArray() : $newValues as $k => $v) { if (!isset($this->{$k})) { continue; } $this[$k] = $v; } return $this; } /** * Magic getter * * @param string $name The name of the property to retrieve * * @return mixed * * @since 4.2.0 */ public function __get($name) { $methodName = 'get' . ucfirst($name); if (method_exists($this, $methodName)) { return $this->{$methodName}; } if (property_exists($this, $name)) { return $this->{$name}; } throw new \InvalidArgumentException(sprintf('Property %s not found in %s', $name, __CLASS__)); } /** * Magic Setter * * @param string $name The property to set the value for * @param mixed $value The property value to set it to * * @return mixed * @since 4.2.0 */ public function __set($name, $value) { $methodName = 'set' . ucfirst($name); if (method_exists($this, $methodName)) { return $this->{$methodName}($value); } if (property_exists($this, $name)) { $this->{$name} = $value; } throw new \InvalidArgumentException(sprintf('Property %s not found in %s', $name, __CLASS__)); } /** * Is a property set? * * @param string $name Property name * * @return boolean Does it exist in the object? * @since 4.2.0 */ #[\ReturnTypeWillChange] public function __isset($name) { $methodName = 'get' . ucfirst($name); return method_exists($this, $methodName) || property_exists($this, $name); } /** * Does the property exist (array access)? * * @param string $offset Property name * * @return boolean * @since 4.2.0 */ #[\ReturnTypeWillChange] public function offsetExists($offset) { return isset($this->{$offset}); } /** * Get the value of a property (array access). * * @param string $offset Property name * * @return mixed * @since 4.2.0 */ #[\ReturnTypeWillChange] public function offsetGet($offset) { return $this->{$offset}; } /** * Set the value of a property (array access). * * @param string $offset Property name * @param mixed $value Property value * * @return void * @since 4.2.0 */ #[\ReturnTypeWillChange] public function offsetSet($offset, $value) { $this->{$offset} = $value; } /** * Unset a property (array access). * * @param string $offset Property name * * @return mixed * @since 4.2.0 */ #[\ReturnTypeWillChange] public function offsetUnset($offset) { throw new \LogicException(sprintf('You cannot unset members of %s', __CLASS__)); } } PKAA#]I��ww7components/com_users/src/DataShape/MethodDescriptor.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\DataShape; use Joomla\Component\Users\Administrator\Table\MfaTable; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * @property string $name Internal code of this MFA Method * @property string $display User-facing name for this MFA Method * @property string $shortinfo Short description of this MFA Method displayed to the user * @property string $image URL to the logo image for this Method * @property bool $canDisable Are we allowed to disable it? * @property bool $allowMultiple Are we allowed to have multiple instances of it per user? * @property string $help_url URL for help content * @property bool $allowEntryBatching Allow authentication against all entries of this MFA Method. * * @since 4.2.0 */ class MethodDescriptor extends DataShapeObject { /** * Internal code of this MFA Method * * @var string * @since 4.2.0 */ protected $name = ''; /** * User-facing name for this MFA Method * * @var string * @since 4.2.0 */ protected $display = ''; /** * Short description of this MFA Method displayed to the user * * @var string * @since 4.2.0 */ protected $shortinfo = ''; /** * URL to the logo image for this Method * * @var string * @since 4.2.0 */ protected $image = ''; /** * Are we allowed to disable it? * * @var boolean * @since 4.2.0 */ protected $canDisable = true; /** * Are we allowed to have multiple instances of it per user? * * @var boolean * @since 4.2.0 */ protected $allowMultiple = false; /** * URL for help content * * @var string * @since 4.2.0 */ protected $help_url = ''; /** * Allow authentication against all entries of this MFA Method. * * Otherwise authentication takes place against a SPECIFIC entry at a time. * * @var boolean * @since 4.2.0 */ protected $allowEntryBatching = false; /** * Active authentication methods, used internally only * * @var MfaTable[] * @since 4.2.0 * @internal */ protected $active = []; /** * Adds an active MFA method * * @param MfaTable $record The MFA method record to add * * @return void * @since 4.2.0 */ public function addActiveMethod(MfaTable $record) { $this->active[$record->id] = $record; } } PKAA#]U���rr;components/com_users/src/DataShape/CaptiveRenderOptions.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\DataShape; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * @property string $pre_message Custom HTML to display above the MFA form * @property string $field_type How to render the MFA code field. "input" or "custom". * @property string $input_type The type attribute for the HTML input box. Typically "text" or "password". * @property string $placeholder Placeholder text for the HTML input box. Leave empty if you don't need it. * @property string $label Label to show above the HTML input box. Leave empty if you don't need it. * @property string $html Custom HTML. Only used when field_type = custom. * @property string $post_message Custom HTML to display below the MFA form * @property bool $hide_submit Should I hide the default Submit button? * @property bool $allowEntryBatching Is this method validating against all configured authenticators of this type? * @property string $help_url URL for help content * * @since 4.2.0 */ class CaptiveRenderOptions extends DataShapeObject { /** * Display a standard HTML5 input field. Use the input_type, placeholder and label properties to set it up. * * @since 4.2.0 */ public const FIELD_INPUT = 'input'; /** * Display a custom HTML document. Use the html property to set it up. * * @since 4.2.0 */ public const FIELD_CUSTOM = 'custom'; /** * Custom HTML to display above the MFA form * * @var string * @since 4.2.0 */ protected $pre_message = ''; /** * How to render the MFA code field. "input" (HTML input element) or "custom" (custom HTML) * * @var string * @since 4.2.0 */ protected $field_type = 'input'; /** * The type attribute for the HTML input box. Typically "text" or "password". Use any HTML5 input type. * * @var string * @since 4.2.0 */ protected $input_type = ''; /** * Attributes other than type and id which will be added to the HTML input box. * * @var array * @@since 4.2.0 */ protected $input_attributes = []; /** * Placeholder text for the HTML input box. Leave empty if you don't need it. * * @var string * @since 4.2.0 */ protected $placeholder = ''; /** * Label to show above the HTML input box. Leave empty if you don't need it. * * @var string * @since 4.2.0 */ protected $label = ''; /** * Custom HTML. Only used when field_type = custom. * * @var string * @since 4.2.0 */ protected $html = ''; /** * Custom HTML to display below the MFA form * * @var string * @since 4.2.0 */ protected $post_message = ''; /** * Should I hide the default Submit button? * * @var boolean * @since 4.2.0 */ protected $hide_submit = false; /** * Additional CSS classes for the submit button (apply the MFA setup) * * @var string * @since 4.2.0 */ protected $submit_class = ''; /** * Icon class to use for the submit button * * @var string * @since 4.2.0 */ protected $submit_icon = 'icon icon-rightarrow icon-arrow-right'; /** * Language key to use for the text on the submit button * * @var string * @since 4.2.0 */ protected $submit_text = 'COM_USERS_MFA_VALIDATE'; /** * Is this MFA method validating against all configured authenticators of the same type? * * @var boolean * @since 4.2.0 */ protected $allowEntryBatching = true; /** * URL for help content * * @var string * @since 4.2.0 */ protected $help_url = ''; /** * Setter for the field_type property * * @param string $value One of self::FIELD_INPUT, self::FIELD_CUSTOM * * @since 4.2.0 * @throws \InvalidArgumentException */ // phpcs:ignore protected function setField_type(string $value) { if (!in_array($value, [self::FIELD_INPUT, self::FIELD_CUSTOM])) { throw new \InvalidArgumentException('Invalid value for property field_type.'); } $this->field_type = $value; } /** * Setter for the input_attributes property. * * @param array $value The value to set * * @return void * @@since 4.2.0 */ // phpcs:ignore protected function setInput_attributes(array $value) { $forbiddenAttributes = ['id', 'type', 'name', 'value']; foreach ($forbiddenAttributes as $key) { if (isset($value[$key])) { unset($value[$key]); } } $this->input_attributes = $value; } } PKAA#]�Y,w*w*-components/com_users/src/Model/GroupModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\Form\Form; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Table\Table; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User group model. * * @since 1.6 */ class GroupModel extends AdminModel { /** * Override parent constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { $config = array_merge( [ 'event_after_delete' => 'onUserAfterDeleteGroup', 'event_after_save' => 'onUserAfterSaveGroup', 'event_before_delete' => 'onUserBeforeDeleteGroup', 'event_before_save' => 'onUserBeforeSaveGroup', 'events_map' => ['delete' => 'user', 'save' => 'user'], ], $config ); parent::__construct($config, $factory); } /** * Returns a reference to the a Table object, always creating it. * * @param string $type The table type to instantiate * @param string $prefix A prefix for the table class name. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A database object * * @since 1.6 */ public function getTable($type = 'Usergroup', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { $return = Table::getInstance($type, $prefix, $config); return $return; } /** * Method to get the record form. * * @param array $data An optional array of data for the form to interrogate. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form|bool A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { // Get the form. $form = $this->loadForm('com_users.group', 'group', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 * @throws \Exception */ protected function loadFormData() { // Check the session for previously entered form data. $data = Factory::getApplication()->getUserState('com_users.edit.group.data', []); if (empty($data)) { $data = $this->getItem(); } $this->preprocessData('com_users.group', $data); return $data; } /** * Override preprocessForm to load the user plugin group instead of content. * * @param Form $form A form object. * @param mixed $data The data expected for the form. * @param string $group The name of the plugin group to import (defaults to "content"). * * @return void * * @since 1.6 * @throws \Exception if there is an error loading the form. */ protected function preprocessForm(Form $form, $data, $group = '') { $obj = is_array($data) ? ArrayHelper::toObject($data, CMSObject::class) : $data; if (isset($obj->parent_id) && $obj->parent_id == 0 && $obj->id > 0) { $form->setFieldAttribute('parent_id', 'type', 'hidden'); $form->setFieldAttribute('parent_id', 'hidden', 'true'); } parent::preprocessForm($form, $data, 'user'); } /** * Method to save the form data. * * @param array $data The form data. * * @return boolean True on success. * * @since 1.6 */ public function save($data) { // Include the user plugins for events. PluginHelper::importPlugin($this->events_map['save']); /** * Check the super admin permissions for group * We get the parent group permissions and then check the group permissions manually * We have to calculate the group permissions manually because we haven't saved the group yet */ $parentSuperAdmin = Access::checkGroup($data['parent_id'], 'core.admin'); // Get core.admin rules from the root asset $rules = Access::getAssetRules('root.1')->getData('core.admin'); // Get the value for the current group (will be true (allowed), false (denied), or null (inherit) $groupSuperAdmin = $rules['core.admin']->allow($data['id']); // We only need to change the $groupSuperAdmin if the parent is true or false. Otherwise, the value set in the rule takes effect. if ($parentSuperAdmin === false) { // If parent is false (Denied), effective value will always be false $groupSuperAdmin = false; } elseif ($parentSuperAdmin === true) { // If parent is true (allowed), group is true unless explicitly set to false $groupSuperAdmin = ($groupSuperAdmin === false) ? false : true; } // Check for non-super admin trying to save with super admin group $iAmSuperAdmin = $this->getCurrentUser()->authorise('core.admin'); if (!$iAmSuperAdmin && $groupSuperAdmin) { $this->setError(Text::_('JLIB_USER_ERROR_NOT_SUPERADMIN')); return false; } /** * Check for super-admin changing self to be non-super-admin * First, are we a super admin */ if ($iAmSuperAdmin) { // Next, are we a member of the current group? $myGroups = Access::getGroupsByUser($this->getCurrentUser()->get('id'), false); if (in_array($data['id'], $myGroups)) { // Now, would we have super admin permissions without the current group? $otherGroups = array_diff($myGroups, [$data['id']]); $otherSuperAdmin = false; foreach ($otherGroups as $otherGroup) { $otherSuperAdmin = $otherSuperAdmin ?: Access::checkGroup($otherGroup, 'core.admin'); } /** * If we would not otherwise have super admin permissions * and the current group does not have super admin permissions, throw an exception */ if ((!$otherSuperAdmin) && (!$groupSuperAdmin)) { $this->setError(Text::_('JLIB_USER_ERROR_CANNOT_DEMOTE_SELF')); return false; } } } if (Factory::getApplication()->getInput()->get('task') == 'save2copy') { $data['title'] = $this->generateGroupTitle($data['parent_id'], $data['title']); } // Proceed with the save return parent::save($data); } /** * Method to delete rows. * * @param array &$pks An array of item ids. * * @return boolean Returns true on success, false on failure. * * @since 1.6 * @throws \Exception */ public function delete(&$pks) { // Typecast variable. $pks = (array) $pks; $user = $this->getCurrentUser(); $groups = Access::getGroupsByUser($user->get('id')); // Get a row instance. $table = $this->getTable(); // Load plugins. PluginHelper::importPlugin($this->events_map['delete']); // Check if I am a Super Admin $iAmSuperAdmin = $user->authorise('core.admin'); foreach ($pks as $pk) { // Do not allow to delete groups to which the current user belongs if (in_array($pk, $groups)) { Factory::getApplication()->enqueueMessage(Text::_('COM_USERS_DELETE_ERROR_INVALID_GROUP'), 'error'); return false; } elseif (!$table->load($pk)) { // Item is not in the table. $this->setError($table->getError()); return false; } } // Iterate the items to delete each one. foreach ($pks as $i => $pk) { if ($table->load($pk)) { // Access checks. $allow = $user->authorise('core.edit.state', 'com_users'); // Don't allow non-super-admin to delete a super admin $allow = (!$iAmSuperAdmin && Access::checkGroup($pk, 'core.admin')) ? false : $allow; if ($allow) { // Fire the before delete event. Factory::getApplication()->triggerEvent($this->event_before_delete, [$table->getProperties()]); if (!$table->delete($pk)) { $this->setError($table->getError()); return false; } else { // Trigger the after delete event. Factory::getApplication()->triggerEvent($this->event_after_delete, [$table->getProperties(), true, $this->getError()]); } } else { // Prune items that you can't change. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('JERROR_CORE_DELETE_NOT_PERMITTED'), 'error'); } } } return true; } /** * Method to generate the title of group on Save as Copy action * * @param integer $parentId The id of the parent. * @param string $title The title of group * * @return string Contains the modified title. * * @since 3.3.7 */ protected function generateGroupTitle($parentId, $title) { // Alter the title & alias $table = $this->getTable(); while ($table->load(['title' => $title, 'parent_id' => $parentId])) { if ($title == $table->title) { $title = StringHelper::increment($title); } } return $title; } } PKAA#]97��hh-components/com_users/src/Model/NotesModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\User\User; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User notes model class. * * @since 2.5 */ class NotesModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { // Set the list ordering fields. if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'user_id', 'a.user_id', 'u.name', 'subject', 'a.subject', 'catid', 'a.catid', 'category_id', 'state', 'a.state', 'published', 'c.title', 'review_time', 'a.review_time', 'publish_up', 'a.publish_up', 'publish_down', 'a.publish_down', 'level', 'c.level', ]; } parent::__construct($config, $factory); } /** * Build an SQL query to load the list data. * * @return DatabaseQuery A DatabaseQuery object to retrieve the data set. * * @since 2.5 */ protected function getListQuery() { $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.id, a.subject, a.checked_out, a.checked_out_time,' . 'a.catid, a.created_time, a.review_time,' . 'a.state, a.publish_up, a.publish_down' ) ); $query->from('#__user_notes AS a'); // Join over the category $query->select('c.title AS category_title, c.params AS category_params') ->join('LEFT', '#__categories AS c ON c.id = a.catid'); // Join over the users for the note user. $query->select('u.name AS user_name') ->join('LEFT', '#__users AS u ON u.id = a.user_id'); // Join over the users for the checked out user. $query->select('uc.name AS editor') ->join('LEFT', '#__users AS uc ON uc.id = a.checked_out'); // Filter by search in title $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $search3 = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :id'); $query->bind(':id', $search3, ParameterType::INTEGER); } elseif (stripos($search, 'uid:') === 0) { $search4 = (int) substr($search, 4); $query->where($db->quoteName('a.user_id') . ' = :id'); $query->bind(':id', $search4, ParameterType::INTEGER); } else { $search = '%' . trim($search) . '%'; $query->where( '(' . $db->quoteName('a.subject') . ' LIKE :subject' . ' OR ' . $db->quoteName('u.name') . ' LIKE :name' . ' OR ' . $db->quoteName('u.username') . ' LIKE :username)' ); $query->bind(':subject', $search); $query->bind(':name', $search); $query->bind(':username', $search); } } // Filter by published state $published = $this->getState('filter.published'); if (is_numeric($published)) { $query->where($db->quoteName('a.state') . ' = :state') ->bind(':state', $published, ParameterType::INTEGER); } elseif ($published !== '*') { $query->whereIn($db->quoteName('a.state'), [0, 1]); } // Filter by a single category. $categoryId = (int) $this->getState('filter.category_id'); if ($categoryId) { $query->where($db->quoteName('a.catid') . ' = :catid') ->bind(':catid', $categoryId, ParameterType::INTEGER); } // Filter by a single user. $userId = (int) $this->getState('filter.user_id'); if ($userId) { // Add the body and where filter. $query->select('a.body') ->where($db->quoteName('a.user_id') . ' = :user_id') ->bind(':user_id', $userId, ParameterType::INTEGER); } // Filter on the level. if ($level = $this->getState('filter.level')) { $level = (int) $level; $query->where($db->quoteName('c.level') . ' <= :level') ->bind(':level', $level, ParameterType::INTEGER); } // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.review_time')) . ' ' . $db->escape($this->getState('list.direction', 'DESC'))); return $query; } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. * * @since 2.5 */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.published'); $id .= ':' . $this->getState('filter.category_id'); $id .= ':' . $this->getState('filter.user_id'); $id .= ':' . $this->getState('filter.level'); return parent::getStoreId($id); } /** * Gets a user object if the user filter is set. * * @return User The User object * * @since 2.5 */ public function getUser() { $user = new User(); // Filter by search in title $search = (int) $this->getState('filter.user_id'); if ($search != 0) { $user->load((int) $search); } return $user; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 * @throws \Exception */ protected function populateState($ordering = 'a.review_time', $direction = 'desc') { // Adjust the context to support modal layouts. if ($layout = Factory::getApplication()->getInput()->get('layout')) { $this->context .= '.' . $layout; } parent::populateState($ordering, $direction); } } PKAA#]f+��IPIP-components/com_users/src/Model/UsersModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Date\Date; use Joomla\CMS\Factory; use Joomla\CMS\Form\Form; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Plugin\PluginHelper; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of user records. * * @since 1.6 */ class UsersModel extends ListModel { /** * A list of filter variables to not merge into the model's state * * @var array * @since 4.0.0 */ protected $filterForbiddenList = ['groups', 'excluded']; /** * Override parent constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'name', 'a.name', 'username', 'a.username', 'email', 'a.email', 'block', 'a.block', 'sendEmail', 'a.sendEmail', 'registerDate', 'a.registerDate', 'lastvisitDate', 'a.lastvisitDate', 'activation', 'a.activation', 'active', 'group_id', 'range', 'lastvisitrange', 'state', 'mfa', ]; } parent::__construct($config, $factory); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 * @throws \Exception */ protected function populateState($ordering = 'a.name', $direction = 'asc') { $app = Factory::getApplication(); $input = $app->getInput(); // Adjust the context to support modal layouts. if ($layout = $input->get('layout', 'default', 'cmd')) { $this->context .= '.' . $layout; } $groups = json_decode(base64_decode($input->get('groups', '', 'BASE64'))); if (isset($groups)) { $groups = ArrayHelper::toInteger($groups); } $this->setState('filter.groups', $groups); $excluded = json_decode(base64_decode($input->get('excluded', '', 'BASE64'))); if (isset($excluded)) { $excluded = ArrayHelper::toInteger($excluded); } $this->setState('filter.excluded', $excluded); // Load the parameters. $params = ComponentHelper::getParams('com_users'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. * * @since 1.6 */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.active'); $id .= ':' . $this->getState('filter.state'); $id .= ':' . $this->getState('filter.group_id'); $id .= ':' . $this->getState('filter.range'); if (PluginHelper::isEnabled('multifactorauth')) { $id .= ':' . $this->getState('filter.mfa'); } return parent::getStoreId($id); } /** * Gets the list of users and adds expensive joins to the result set. * * @return mixed An array of data items on success, false on failure. * * @since 1.6 */ public function getItems() { // Get a storage key. $store = $this->getStoreId(); // Try to load the data from internal storage. if (empty($this->cache[$store])) { $groups = $this->getState('filter.groups'); $groupId = $this->getState('filter.group_id'); if (isset($groups) && (empty($groups) || $groupId && !in_array($groupId, $groups))) { $items = []; } else { $items = parent::getItems(); } // Bail out on an error or empty list. if (empty($items)) { $this->cache[$store] = $items; return $items; } // Joining the groups with the main query is a performance hog. // Find the information only on the result set. // First pass: get list of the user ids and reset the counts. $userIds = []; foreach ($items as $item) { $userIds[] = (int) $item->id; $item->group_count = 0; $item->group_names = ''; $item->note_count = 0; } // Get the counts from the database only for the users in the list. $db = $this->getDatabase(); $query = $db->getQuery(true); // Join over the group mapping table. $query->select('map.user_id, COUNT(map.group_id) AS group_count') ->from('#__user_usergroup_map AS map') ->whereIn($db->quoteName('map.user_id'), $userIds) ->group('map.user_id') // Join over the user groups table. ->join('LEFT', '#__usergroups AS g2 ON g2.id = map.group_id'); $db->setQuery($query); // Load the counts into an array indexed on the user id field. try { $userGroups = $db->loadObjectList('user_id'); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } $query->clear() ->select('n.user_id, COUNT(n.id) As note_count') ->from('#__user_notes AS n') ->whereIn($db->quoteName('n.user_id'), $userIds) ->where('n.state >= 0') ->group('n.user_id'); $db->setQuery($query); // Load the counts into an array indexed on the aro.value field (the user id). try { $userNotes = $db->loadObjectList('user_id'); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } // Second pass: collect the group counts into the main items array. foreach ($items as &$item) { if (isset($userGroups[$item->id])) { $item->group_count = $userGroups[$item->id]->group_count; // Group_concat in other databases is not supported $item->group_names = $this->getUserDisplayedGroups($item->id); } if (isset($userNotes[$item->id])) { $item->note_count = $userNotes[$item->id]->note_count; } } // Add the items to the internal cache. $this->cache[$store] = $items; } return $this->cache[$store]; } /** * Get the filter form * * @param array $data data * @param boolean $loadData load current data * * @return Form|null The \JForm object or null if the form can't be found * * @since 4.2.0 */ public function getFilterForm($data = [], $loadData = true) { $form = parent::getFilterForm($data, $loadData); if ($form && !PluginHelper::isEnabled('multifactorauth')) { $form->removeField('mfa', 'filter'); } return $form; } /** * Build an SQL query to load the list data. * * @return DatabaseQuery * * @since 1.6 */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.*' ) ); $query->from($db->quoteName('#__users') . ' AS a'); // Include MFA information if (PluginHelper::isEnabled('multifactorauth')) { $subQuery = $db->getQuery(true) ->select( [ 'MIN(' . $db->quoteName('user_id') . ') AS ' . $db->quoteName('uid'), 'COUNT(*) AS ' . $db->quoteName('mfaRecords'), ] ) ->from($db->quoteName('#__user_mfa')) ->group($db->quoteName('user_id')); $query->select($db->quoteName('mfa.mfaRecords')) ->join( 'left', '(' . $subQuery . ') AS ' . $db->quoteName('mfa'), $db->quoteName('mfa.uid') . ' = ' . $db->quoteName('a.id') ); $mfaState = $this->getState('filter.mfa'); if (is_numeric($mfaState)) { $mfaState = (int) $mfaState; if ($mfaState === 1) { $query->where( '((' . $db->quoteName('mfa.mfaRecords') . ' > 0) OR (' . $db->quoteName('a.otpKey') . ' IS NOT NULL AND ' . $db->quoteName('a.otpKey') . ' != ' . $db->quote('') . '))' ); } else { $query->where( '((' . $db->quoteName('mfa.mfaRecords') . ' = 0 OR ' . $db->quoteName('mfa.mfaRecords') . ' IS NULL) AND (' . $db->quoteName('a.otpKey') . ' IS NULL OR ' . $db->quoteName('a.otpKey') . ' = ' . $db->quote('') . '))' ); } } } // If the model is set to check item state, add to the query. $state = $this->getState('filter.state'); if (is_numeric($state)) { $query->where($db->quoteName('a.block') . ' = :state') ->bind(':state', $state, ParameterType::INTEGER); } // If the model is set to check the activated state, add to the query. $active = $this->getState('filter.active'); if (is_numeric($active)) { if ($active == '0') { $query->whereIn($db->quoteName('a.activation'), ['', '0']); } elseif ($active == '1') { $query->where($query->length($db->quoteName('a.activation')) . ' > 1'); } } // Filter the items over the group id if set. $groupId = $this->getState('filter.group_id'); $groups = $this->getState('filter.groups'); if ($groupId || isset($groups)) { $group_by = [ 'a.id', 'a.name', 'a.username', 'a.password', 'a.block', 'a.sendEmail', 'a.registerDate', 'a.lastvisitDate', 'a.activation', 'a.params', 'a.email', 'a.lastResetTime', 'a.resetCount', 'a.otpKey', 'a.otep', 'a.requireReset', ]; if (PluginHelper::isEnabled('multifactorauth')) { $group_by[] = 'mfa.mfaRecords'; } $query->join('LEFT', '#__user_usergroup_map AS map2 ON map2.user_id = a.id') ->group($db->quoteName($group_by)); if ($groupId) { $groupId = (int) $groupId; $query->where($db->quoteName('map2.group_id') . ' = :group_id') ->bind(':group_id', $groupId, ParameterType::INTEGER); } if (isset($groups)) { $query->whereIn($db->quoteName('map2.group_id'), $groups); } } // Filter the items over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $ids = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :id'); $query->bind(':id', $ids, ParameterType::INTEGER); } elseif (stripos($search, 'username:') === 0) { $search = '%' . substr($search, 9) . '%'; $query->where($db->quoteName('a.username') . ' LIKE :username'); $query->bind(':username', $search); } else { $search = '%' . trim($search) . '%'; // Add the clauses to the query. $query->where( '(' . $db->quoteName('a.name') . ' LIKE :name' . ' OR ' . $db->quoteName('a.username') . ' LIKE :username' . ' OR ' . $db->quoteName('a.email') . ' LIKE :email)' ) ->bind(':name', $search) ->bind(':username', $search) ->bind(':email', $search); } } // Add filter for registration time ranges select list. UI Visitors get a range of predefined // values. API users can do a full range based on ISO8601 $range = $this->getState('filter.range'); $registrationStart = $this->getState('filter.registrationDateStart'); $registrationEnd = $this->getState('filter.registrationDateEnd'); // Apply the range filter. if ($range || ($registrationStart && $registrationEnd)) { if ($range) { $dates = $this->buildDateRange($range); } else { $dates = [ 'dNow' => $registrationEnd, 'dStart' => $registrationStart, ]; } if ($dates['dStart'] !== false) { $dStart = $dates['dStart']->format('Y-m-d H:i:s'); if ($dates['dNow'] === false) { $query->where($db->quoteName('a.registerDate') . ' < :registerDate'); $query->bind(':registerDate', $dStart); } else { $dNow = $dates['dNow']->format('Y-m-d H:i:s'); $query->where($db->quoteName('a.registerDate') . ' BETWEEN :registerDate1 AND :registerDate2'); $query->bind(':registerDate1', $dStart); $query->bind(':registerDate2', $dNow); } } } // Add filter for last visit time ranges select list. UI Visitors get a range of predefined // values. API users can do a full range based on ISO8601 $lastvisitrange = $this->getState('filter.lastvisitrange'); $lastVisitStart = $this->getState('filter.lastVisitStart'); $lastVisitEnd = $this->getState('filter.lastVisitEnd'); // Apply the range filter. if ($lastvisitrange || ($lastVisitStart && $lastVisitEnd)) { if ($lastvisitrange) { $dates = $this->buildDateRange($lastvisitrange); } else { $dates = [ 'dNow' => $lastVisitEnd, 'dStart' => $lastVisitStart, ]; } if ($dates['dStart'] === false) { $query->where($db->quoteName('a.lastvisitDate') . ' IS NULL'); } else { $query->where($db->quoteName('a.lastvisitDate') . ' IS NOT NULL'); $dStart = $dates['dStart']->format('Y-m-d H:i:s'); if ($dates['dNow'] === false) { $query->where($db->quoteName('a.lastvisitDate') . ' < :lastvisitDate'); $query->bind(':lastvisitDate', $dStart); } else { $dNow = $dates['dNow']->format('Y-m-d H:i:s'); $query->where($db->quoteName('a.lastvisitDate') . ' BETWEEN :lastvisitDate1 AND :lastvisitDate2'); $query->bind(':lastvisitDate1', $dStart); $query->bind(':lastvisitDate2', $dNow); } } } // Filter by excluded users $excluded = $this->getState('filter.excluded'); if (!empty($excluded)) { $query->whereNotIn($db->quoteName('id'), $excluded); } // Add the list ordering clause. $query->order( $db->quoteName($db->escape($this->getState('list.ordering', 'a.name'))) . ' ' . $db->escape($this->getState('list.direction', 'ASC')) ); return $query; } /** * Construct the date range to filter on. * * @param string $range The textual range to construct the filter for. * * @return array The date range to filter on. * * @since 3.6.0 * @throws \Exception */ private function buildDateRange($range) { // Get UTC for now. $dNow = new Date(); $dStart = clone $dNow; switch ($range) { case 'past_week': $dStart->modify('-7 day'); break; case 'past_1month': $dStart->modify('-1 month'); break; case 'past_3month': $dStart->modify('-3 month'); break; case 'past_6month': $dStart->modify('-6 month'); $arr = []; break; case 'post_year': $dNow = false; // No break case 'past_year': $dStart->modify('-1 year'); break; case 'today': // Ranges that need to align with local 'days' need special treatment. $app = Factory::getApplication(); $offset = $app->get('offset'); // Reset the start time to be the beginning of today, local time. $dStart = new Date('now', $offset); $dStart->setTime(0, 0, 0); // Now change the timezone back to UTC. $tz = new \DateTimeZone('GMT'); $dStart->setTimezone($tz); break; case 'never': $dNow = false; $dStart = false; break; } return ['dNow' => $dNow, 'dStart' => $dStart]; } /** * SQL server change * * @param integer $userId User identifier * * @return string Groups titles imploded :$ */ protected function getUserDisplayedGroups($userId) { $db = $this->getDatabase(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__usergroups', 'ug')) ->join('LEFT', $db->quoteName('#__user_usergroup_map', 'map') . ' ON (ug.id = map.group_id)') ->where($db->quoteName('map.user_id') . ' = :user_id') ->bind(':user_id', $userId, ParameterType::INTEGER); try { $result = $db->setQuery($query)->loadColumn(); } catch (\RuntimeException $e) { $result = []; } return implode("\n", $result); } } PKAA#]����.components/com_users/src/Model/LevelsModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Table\Table; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of user access level records. * * @since 1.6 */ class LevelsModel extends ListModel { /** * Override parent constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'title', 'a.title', 'ordering', 'a.ordering', ]; } parent::__construct($config, $factory); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.ordering', $direction = 'asc') { // Load the parameters. $params = ComponentHelper::getParams('com_users'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); return parent::getStoreId($id); } /** * Build an SQL query to load the list data. * * @return DatabaseQuery */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.*' ) ); $query->from($db->quoteName('#__viewlevels') . ' AS a'); // Add the level in the tree. $query->group('a.id, a.title, a.ordering, a.rules'); // Filter the items over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $ids = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :id'); $query->bind(':id', $ids, ParameterType::INTEGER); } else { $search = '%' . trim($search) . '%'; $query->where('a.title LIKE :title') ->bind(':title', $search); } } $query->group('a.id'); // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.ordering')) . ' ' . $db->escape($this->getState('list.direction', 'ASC'))); return $query; } /** * Method to adjust the ordering of a row. * * @param integer $pk The ID of the primary key to move. * @param integer $direction Increment, usually +1 or -1 * * @return boolean False on failure or error, true otherwise. */ public function reorder($pk, $direction = 0) { // Sanitize the id and adjustment. $pk = (!empty($pk)) ? $pk : (int) $this->getState('level.id'); $user = $this->getCurrentUser(); // Get an instance of the record's table. $table = Table::getInstance('ViewLevel', 'Joomla\\CMS\Table\\'); // Load the row. if (!$table->load($pk)) { $this->setError($table->getError()); return false; } // Access checks. $allow = $user->authorise('core.edit.state', 'com_users'); if (!$allow) { $this->setError(Text::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED')); return false; } // Move the row. // @todo: Where clause to restrict category. $table->move($pk); return true; } /** * Saves the manually set order of records. * * @param array $pks An array of primary key ids. * @param integer $order Order position * * @return boolean Boolean true on success, boolean false * * @throws \Exception */ public function saveorder($pks, $order) { $table = Table::getInstance('viewlevel', 'Joomla\\CMS\Table\\'); $user = $this->getCurrentUser(); $conditions = []; if (empty($pks)) { Factory::getApplication()->enqueueMessage(Text::_('COM_USERS_ERROR_LEVELS_NOLEVELS_SELECTED'), 'error'); return false; } // Update ordering values foreach ($pks as $i => $pk) { $table->load((int) $pk); // Access checks. $allow = $user->authorise('core.edit.state', 'com_users'); if (!$allow) { // Prune items that you can't change. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED'), 'error'); } elseif ($table->ordering != $order[$i]) { $table->ordering = $order[$i]; if (!$table->store()) { $this->setError($table->getError()); return false; } } } // Execute reorder for each category. foreach ($conditions as $cond) { $table->load($cond[0]); $table->reorder($cond[1]); } return true; } } PKAA#]l�-�hh.components/com_users/src/Model/MethodModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Event\MultiFactor\GetSetup; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\DataShape\SetupRenderOptions; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Table\MfaTable; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Multi-factor Authentication management model * * @since 4.2.0 */ class MethodModel extends BaseDatabaseModel { /** * List of MFA Methods * * @var array * @since 4.2.0 */ protected $mfaMethods = null; /** * Get the specified MFA Method's record * * @param string $method The Method to retrieve. * * @return array * @since 4.2.0 */ public function getMethod(string $method): array { if (!$this->methodExists($method)) { return [ 'name' => $method, 'display' => '', 'shortinfo' => '', 'image' => '', 'canDisable' => true, 'allowMultiple' => true, ]; } return $this->mfaMethods[$method]; } /** * Is the specified MFA Method available? * * @param string $method The Method to check. * * @return boolean * @since 4.2.0 */ public function methodExists(string $method): bool { if (!is_array($this->mfaMethods)) { $this->populateMfaMethods(); } return isset($this->mfaMethods[$method]); } /** * @param User|null $user The user record. Null to use the currently logged in user. * * @return array * @throws \Exception * * @since 4.2.0 */ public function getRenderOptions(?User $user = null): SetupRenderOptions { if (is_null($user)) { $user = Factory::getApplication()->getIdentity() ?: $this->getCurrentUser(); } $renderOptions = new SetupRenderOptions(); $event = new GetSetup($this->getRecord($user)); $results = Factory::getApplication() ->getDispatcher() ->dispatch($event->getName(), $event) ->getArgument('result', []); if (empty($results)) { return $renderOptions; } foreach ($results as $result) { if (empty($result)) { continue; } return $renderOptions->merge($result); } return $renderOptions; } /** * Get the specified MFA record. It will return a fake default record when no record ID is specified. * * @param User|null $user The user record. Null to use the currently logged in user. * * @return MfaTable * @throws \Exception * * @since 4.2.0 */ public function getRecord(User $user = null): MfaTable { if (is_null($user)) { $user = $this->getCurrentUser(); } $defaultRecord = $this->getDefaultRecord($user); $id = (int) $this->getState('id', 0); if ($id <= 0) { return $defaultRecord; } /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); $loaded = $record->load( [ 'user_id' => $user->id, 'id' => $id, ] ); if (!$loaded) { return $defaultRecord; } if (!$this->methodExists($record->method)) { return $defaultRecord; } return $record; } /** * Return the title to use for the page * * @return string * * @since 4.2.0 */ public function getPageTitle(): string { $task = $this->getState('task', 'edit'); switch ($task) { case 'mfa': $key = 'COM_USERS_USER_MULTIFACTOR_AUTH'; break; default: $key = sprintf('COM_USERS_MFA_%s_PAGE_HEAD', $task); break; } return Text::_($key); } /** * @param User|null $user The user record. Null to use the current user. * * @return MfaTable * @throws \Exception * * @since 4.2.0 */ protected function getDefaultRecord(?User $user = null): MfaTable { if (is_null($user)) { $user = $this->getCurrentUser(); } $method = $this->getState('method'); $title = ''; if (is_null($this->mfaMethods)) { $this->populateMfaMethods(); } if ($method && isset($this->mfaMethods[$method])) { $title = $this->mfaMethods[$method]['display']; } /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); $record->bind( [ 'id' => null, 'user_id' => $user->id, 'title' => $title, 'method' => $method, 'default' => 0, 'options' => [], ] ); return $record; } /** * Populate the list of MFA Methods * * @return void * @since 4.2.0 */ private function populateMfaMethods(): void { $this->mfaMethods = []; $mfaMethods = MfaHelper::getMfaMethods(); if (empty($mfaMethods)) { return; } foreach ($mfaMethods as $method) { $this->mfaMethods[$method['name']] = $method; } // We also need to add the backup codes Method $this->mfaMethods['backupcodes'] = [ 'name' => 'backupcodes', 'display' => Text::_('COM_USERS_USER_BACKUPCODES'), 'shortinfo' => Text::_('COM_USERS_USER_BACKUPCODES_DESC'), 'image' => 'media/com_users/images/emergency.svg', 'canDisable' => false, 'allowMultiple' => false, ]; } } PKAA#]�ee e 2components/com_users/src/Model/DebuggroupModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Access\Access; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Object\CMSObject; use Joomla\Component\Users\Administrator\Helper\DebugHelper; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of User ACL permissions * * @since 1.6 */ class DebuggroupModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'a.title', 'component', 'a.name', 'a.lft', 'a.id', 'level_start', 'level_end', 'a.level', ]; } parent::__construct($config, $factory); } /** * Get a list of the actions. * * @return array * * @since 1.6 */ public function getDebugActions() { $component = $this->getState('filter.component'); return DebugHelper::getDebugActions($component); } /** * Override getItems method. * * @return array * * @since 1.6 */ public function getItems() { $groupId = $this->getState('group_id'); if (($assets = parent::getItems()) && $groupId) { $actions = $this->getDebugActions(); foreach ($assets as &$asset) { $asset->checks = []; foreach ($actions as $action) { $name = $action[0]; $asset->checks[$name] = Access::checkGroup($groupId, $name, $asset->name); } } } return $assets; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.lft', $direction = 'asc') { $app = Factory::getApplication(); // Adjust the context to support modal layouts. $layout = $app->getInput()->get('layout', 'default'); if ($layout) { $this->context .= '.' . $layout; } // Load the filter state. $this->setState('filter.search', $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search', '', 'string')); $this->setState('group_id', $this->getUserStateFromRequest($this->context . '.group_id', 'group_id', 0, 'int', false)); $levelStart = $this->getUserStateFromRequest($this->context . '.filter.level_start', 'filter_level_start', '', 'cmd'); $this->setState('filter.level_start', $levelStart); $value = $this->getUserStateFromRequest($this->context . '.filter.level_end', 'filter_level_end', '', 'cmd'); if ($value > 0 && $value < $levelStart) { $value = $levelStart; } $this->setState('filter.level_end', $value); $this->setState('filter.component', $this->getUserStateFromRequest($this->context . '.filter.component', 'filter_component', '', 'string')); // Load the parameters. $params = ComponentHelper::getParams('com_users'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('group_id'); $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.level_start'); $id .= ':' . $this->getState('filter.level_end'); $id .= ':' . $this->getState('filter.component'); return parent::getStoreId($id); } /** * Get the group being debugged. * * @return CMSObject * * @since 1.6 */ public function getGroup() { $groupId = (int) $this->getState('group_id'); $db = $this->getDatabase(); $query = $db->getQuery(true) ->select($db->quoteName(['id', 'title'])) ->from($db->quoteName('#__usergroups')) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $groupId, ParameterType::INTEGER); $db->setQuery($query); try { $group = $db->loadObject(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } return $group; } /** * Build an SQL query to load the list data. * * @return DatabaseQuery * * @since 1.6 */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.id, a.name, a.title, a.level, a.lft, a.rgt' ) ); $query->from($db->quoteName('#__assets', 'a')); // Filter the items over the search string if set. if ($this->getState('filter.search')) { $search = '%' . trim($this->getState('filter.search')) . '%'; // Add the clauses to the query. $query->where( '(' . $db->quoteName('a.name') . ' LIKE :name' . ' OR ' . $db->quoteName('a.title') . ' LIKE :title)' ) ->bind(':name', $search) ->bind(':title', $search); } // Filter on the start and end levels. $levelStart = (int) $this->getState('filter.level_start'); $levelEnd = (int) $this->getState('filter.level_end'); if ($levelEnd > 0 && $levelEnd < $levelStart) { $levelEnd = $levelStart; } if ($levelStart > 0) { $query->where($db->quoteName('a.level') . ' >= :levelStart') ->bind(':levelStart', $levelStart, ParameterType::INTEGER); } if ($levelEnd > 0) { $query->where($db->quoteName('a.level') . ' <= :levelEnd') ->bind(':levelEnd', $levelEnd, ParameterType::INTEGER); } // Filter the items over the component if set. if ($this->getState('filter.component')) { $component = $this->getState('filter.component'); $lcomponent = $component . '.%'; $query->where( '(' . $db->quoteName('a.name') . ' = :component' . ' OR ' . $db->quoteName('a.name') . ' LIKE :lcomponent)' ) ->bind(':component', $component) ->bind(':lcomponent', $lcomponent); } // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.lft')) . ' ' . $db->escape($this->getState('list.direction', 'ASC'))); return $query; } } PKAA#]�b.n�!�!3components/com_users/src/Model/BackupcodesModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Crypt\Crypt; use Joomla\CMS\Date\Date; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\Table\MfaTable; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Model for managing backup codes * * @since 4.2.0 */ class BackupcodesModel extends BaseDatabaseModel { /** * Caches the backup codes per user ID * * @var array * @since 4.2.0 */ protected $cache = []; /** * Get the backup codes record for the specified user * * @param User|null $user The user in question. Use null for the currently logged in user. * * @return MfaTable|null Record object or null if none is found * @throws \Exception * @since 4.2.0 */ public function getBackupCodesRecord(User $user = null): ?MfaTable { // Make sure I have a user if (empty($user)) { $user = $this->getCurrentUser(); } /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); $loaded = $record->load( [ 'user_id' => $user->id, 'method' => 'backupcodes', ] ); if (!$loaded) { $record = null; } return $record; } /** * Generate a new set of backup codes for the specified user. The generated codes are immediately saved to the * database and the internal cache is updated. * * @param User|null $user Which user to generate codes for? * * @return void * @throws \Exception * @since 4.2.0 */ public function regenerateBackupCodes(User $user = null): void { // Make sure I have a user if (empty($user)) { $user = $this->getCurrentUser(); } // Generate backup codes $backupCodes = []; for ($i = 0; $i < 10; $i++) { // Each backup code is 2 groups of 4 digits $backupCodes[$i] = sprintf('%04u%04u', random_int(0, 9999), random_int(0, 9999)); } // Save the backup codes to the database and update the cache $this->saveBackupCodes($backupCodes, $user); } /** * Saves the backup codes to the database * * @param array $codes An array of exactly 10 elements * @param User|null $user The user for which to save the backup codes * * @return boolean * @throws \Exception * @since 4.2.0 */ public function saveBackupCodes(array $codes, ?User $user = null): bool { // Make sure I have a user if (empty($user)) { $user = $this->getCurrentUser(); } // Try to load existing backup codes $existingCodes = $this->getBackupCodes($user); $jNow = Date::getInstance(); /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); if (is_null($existingCodes)) { $record->reset(); $newData = [ 'user_id' => $user->id, 'title' => Text::_('COM_USERS_USER_BACKUPCODES'), 'method' => 'backupcodes', 'default' => 0, 'created_on' => $jNow->toSql(), 'options' => $codes, ]; } else { $record->load( [ 'user_id' => $user->id, 'method' => 'backupcodes', ] ); $newData = [ 'options' => $codes, ]; } $saved = $record->save($newData); if (!$saved) { return false; } // Finally, update the cache $this->cache[$user->id] = $codes; return true; } /** * Returns the backup codes for the specified user. Cached values will be preferentially returned, therefore you * MUST go through this model's Methods ONLY when dealing with backup codes. * * @param User|null $user The user for which you want the backup codes * * @return array|null The backup codes, or null if they do not exist * @throws \Exception * @since 4.2.0 */ public function getBackupCodes(User $user = null): ?array { // Make sure I have a user if (empty($user)) { $user = $this->getCurrentUser(); } if (isset($this->cache[$user->id])) { return $this->cache[$user->id]; } // If there is no cached record try to load it from the database $this->cache[$user->id] = null; // Try to load the record /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); $loaded = $record->load( [ 'user_id' => $user->id, 'method' => 'backupcodes', ] ); if ($loaded) { $this->cache[$user->id] = $record->options; } return $this->cache[$user->id]; } /** * Check if the provided string is a backup code. If it is, it will be removed from the list (replaced with an empty * string) and the codes will be saved to the database. All comparisons are performed in a timing safe manner. * * @param string $code The code to check * @param User|null $user The user to check against * * @return boolean * @throws \Exception * @since 4.2.0 */ public function isBackupCode($code, ?User $user = null): bool { // Load the backup codes $codes = $this->getBackupCodes($user) ?: array_fill(0, 10, ''); // Keep only the numbers in the provided $code $code = filter_var($code, FILTER_SANITIZE_NUMBER_INT); $code = trim($code); // Check if the code is in the array. We always check against ten codes to prevent timing attacks which // determine the amount of codes. $result = false; // The two arrays let us always add an element to an array, therefore having PHP expend the same amount of time // for the correct code, the incorrect codes and the fake codes. $newArray = []; $dummyArray = []; $realLength = count($codes); $restLength = 10 - $realLength; for ($i = 0; $i < $realLength; $i++) { if (hash_equals($codes[$i], $code)) { // This may seem redundant but makes sure both branches of the if-block are isochronous $result = $result || true; $newArray[] = ''; $dummyArray[] = $codes[$i]; } else { // This may seem redundant but makes sure both branches of the if-block are isochronous $result = $result || false; $dummyArray[] = ''; $newArray[] = $codes[$i]; } } /** * This is an intentional waste of time, symmetrical to the code above, making sure * evaluating each of the total of ten elements takes the same time. This code should never * run UNLESS someone messed up with our backup codes array and it no longer contains 10 * elements. */ $otherResult = false; $temp1 = ''; for ($i = 0; $i < 10; $i++) { $temp1[$i] = random_int(0, 99999999); } for ($i = 0; $i < $restLength; $i++) { if (Crypt::timingSafeCompare($temp1[$i], $code)) { $otherResult = $otherResult || true; $newArray[] = ''; $dummyArray[] = $temp1[$i]; } else { $otherResult = $otherResult || false; $newArray[] = ''; $dummyArray[] = $temp1[$i]; } } // This last check makes sure than an empty code does not validate $result = $result && !hash_equals('', $code); // Save the backup codes $this->saveBackupCodes($newArray, $user); // Finally return the result return $result; } } PKAA#]ʈ���,components/com_users/src/Model/UserModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Access\Access; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Form\Form; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Table\Table; use Joomla\CMS\User\User; use Joomla\CMS\User\UserHelper; use Joomla\Database\ParameterType; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User model. * * @since 1.6 */ class UserModel extends AdminModel { /** * An item. * * @var array */ protected $_item = null; /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { $config = array_merge( [ 'event_after_delete' => 'onUserAfterDelete', 'event_after_save' => 'onUserAfterSave', 'event_before_delete' => 'onUserBeforeDelete', 'event_before_save' => 'onUserBeforeSave', 'events_map' => ['save' => 'user', 'delete' => 'user', 'validate' => 'user'], ], $config ); parent::__construct($config, $factory); } /** * Returns a reference to the a Table object, always creating it. * * @param string $type The table type to instantiate * @param string $prefix A prefix for the table class name. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A database object * * @since 1.6 */ public function getTable($type = 'User', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { $table = Table::getInstance($type, $prefix, $config); return $table; } /** * Method to get a single record. * * @param integer $pk The id of the primary key. * * @return mixed Object on success, false on failure. * * @since 1.6 */ public function getItem($pk = null) { $pk = (!empty($pk)) ? $pk : (int) $this->getState('user.id'); if ($this->_item === null) { $this->_item = []; } if (!isset($this->_item[$pk])) { $this->_item[$pk] = parent::getItem($pk); } return $this->_item[$pk]; } /** * Method to get the record form. * * @param array $data An optional array of data for the form to interrogate. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form|bool A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { // Get the form. $form = $this->loadForm('com_users.user', 'user', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } $user = $this->getCurrentUser(); // If the user needs to change their password, mark the password fields as required if ($user->requireReset) { $form->setFieldAttribute('password', 'required', 'true'); $form->setFieldAttribute('password2', 'required', 'true'); } // When multilanguage is set, a user's default site language should also be a Content Language if (Multilanguage::isEnabled()) { $form->setFieldAttribute('language', 'type', 'frontend_language', 'params'); } $userId = (int) $form->getValue('id'); // The user should not be able to set the requireReset value on their own account if ($userId === (int) $user->id) { $form->removeField('requireReset'); } /** * If users without core.manage permission editing their own account, remove some fields which they should * not be allowed to change and prevent them to change user name if configured */ if (!$user->authorise('core.manage', 'com_users') && (int) $user->id === $userId) { if (!ComponentHelper::getParams('com_users')->get('change_login_name')) { $form->setFieldAttribute('username', 'required', 'false'); $form->setFieldAttribute('username', 'readonly', 'true'); $form->setFieldAttribute('username', 'description', 'COM_USERS_USER_FIELD_NOCHANGE_USERNAME_DESC'); } $form->removeField('lastResetTime'); $form->removeField('resetCount'); $form->removeField('sendEmail'); $form->removeField('block'); } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 * @throws \Exception */ protected function loadFormData() { // Check the session for previously entered form data. $data = Factory::getApplication()->getUserState('com_users.edit.user.data', []); if (empty($data)) { $data = $this->getItem(); } $this->preprocessData('com_users.profile', $data, 'user'); return $data; } /** * Override Joomla\CMS\MVC\Model\AdminModel::preprocessForm to ensure the correct plugin group is loaded. * * @param Form $form A Form object. * @param mixed $data The data expected for the form. * @param string $group The name of the plugin group to import (defaults to "content"). * * @return void * * @since 1.6 * * @throws \Exception if there is an error in the form event. */ protected function preprocessForm(Form $form, $data, $group = 'user') { parent::preprocessForm($form, $data, $group); } /** * Method to save the form data. * * @param array $data The form data. * * @return boolean True on success. * * @since 1.6 * @throws \Exception */ public function save($data) { $pk = (!empty($data['id'])) ? $data['id'] : (int) $this->getState('user.id'); $user = User::getInstance($pk); $my = $this->getCurrentUser(); $iAmSuperAdmin = $my->authorise('core.admin'); // User cannot modify own user groups if ((int) $user->id == (int) $my->id && !$iAmSuperAdmin && isset($data['groups'])) { // Form was probably tampered with Factory::getApplication()->enqueueMessage(Text::_('COM_USERS_USERS_ERROR_CANNOT_EDIT_OWN_GROUP'), 'warning'); $data['groups'] = null; } if ($data['block'] && $pk == $my->id && !$my->block) { $this->setError(Text::_('COM_USERS_USERS_ERROR_CANNOT_BLOCK_SELF')); return false; } // Make sure user groups is selected when add/edit an account if (empty($data['groups']) && ((int) $user->id != (int) $my->id || $iAmSuperAdmin)) { $this->setError(Text::_('COM_USERS_USERS_ERROR_CANNOT_SAVE_ACCOUNT_WITHOUT_GROUPS')); return false; } // Make sure that we are not removing ourself from Super Admin group if ($iAmSuperAdmin && $my->get('id') == $pk) { // Check that at least one of our new groups is Super Admin $stillSuperAdmin = false; $myNewGroups = $data['groups']; foreach ($myNewGroups as $group) { $stillSuperAdmin = $stillSuperAdmin ?: Access::checkGroup($group, 'core.admin'); } if (!$stillSuperAdmin) { $this->setError(Text::_('COM_USERS_USERS_ERROR_CANNOT_DEMOTE_SELF')); return false; } } // Unset the username if it should not be overwritten if ( !$my->authorise('core.manage', 'com_users') && (int) $user->id === (int) $my->id && !ComponentHelper::getParams('com_users')->get('change_login_name') ) { unset($data['username']); } // Bind the data. if (!$user->bind($data)) { $this->setError($user->getError()); return false; } // Store the data. if (!$user->save()) { $this->setError($user->getError()); return false; } // Destroy all active sessions for the user after changing the password or blocking him if ($data['password2'] || $data['block']) { UserHelper::destroyUserSessions($user->id, true); } $this->setState('user.id', $user->id); return true; } /** * Method to delete rows. * * @param array &$pks An array of item ids. * * @return boolean Returns true on success, false on failure. * * @since 1.6 * @throws \Exception */ public function delete(&$pks) { $user = $this->getCurrentUser(); $table = $this->getTable(); $pks = (array) $pks; // Check if I am a Super Admin $iAmSuperAdmin = $user->authorise('core.admin'); PluginHelper::importPlugin($this->events_map['delete']); if (in_array($user->id, $pks)) { $this->setError(Text::_('COM_USERS_USERS_ERROR_CANNOT_DELETE_SELF')); return false; } // Iterate the items to delete each one. foreach ($pks as $i => $pk) { if ($table->load($pk)) { // Access checks. $allow = $user->authorise('core.delete', 'com_users'); // Don't allow non-super-admin to delete a super admin $allow = (!$iAmSuperAdmin && Access::check($pk, 'core.admin')) ? false : $allow; if ($allow) { // Get users data for the users to delete. $user_to_delete = Factory::getUser($pk); // Fire the before delete event. Factory::getApplication()->triggerEvent($this->event_before_delete, [$table->getProperties()]); if (!$table->delete($pk)) { $this->setError($table->getError()); return false; } else { // Trigger the after delete event. Factory::getApplication()->triggerEvent($this->event_after_delete, [$user_to_delete->getProperties(), true, $this->getError()]); } } else { // Prune items that you can't change. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('JERROR_CORE_DELETE_NOT_PERMITTED'), 'error'); } } else { $this->setError($table->getError()); return false; } } return true; } /** * Method to block user records. * * @param array &$pks The ids of the items to publish. * @param integer $value The value of the published state * * @return boolean True on success. * * @since 1.6 * @throws \Exception */ public function block(&$pks, $value = 1) { $app = Factory::getApplication(); $user = $this->getCurrentUser(); // Check if I am a Super Admin $iAmSuperAdmin = $user->authorise('core.admin'); $table = $this->getTable(); $pks = (array) $pks; PluginHelper::importPlugin($this->events_map['save']); // Prepare the logout options. $options = [ 'clientid' => $app->get('shared_session', '0') ? null : 0, ]; // Access checks. foreach ($pks as $i => $pk) { if ($value == 1 && $pk == $user->get('id')) { // Cannot block yourself. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('COM_USERS_USERS_ERROR_CANNOT_BLOCK_SELF'), 'error'); } elseif ($table->load($pk)) { $old = $table->getProperties(); $allow = $user->authorise('core.edit.state', 'com_users'); // Don't allow non-super-admin to delete a super admin $allow = (!$iAmSuperAdmin && Access::check($pk, 'core.admin')) ? false : $allow; if ($allow) { // Skip changing of same state if ($table->block == $value) { unset($pks[$i]); continue; } $table->block = (int) $value; // If unblocking, also change password reset count to zero to unblock reset if ($table->block === 0) { $table->resetCount = 0; } // Allow an exception to be thrown. try { if (!$table->check()) { $this->setError($table->getError()); return false; } // Trigger the before save event. $result = Factory::getApplication()->triggerEvent($this->event_before_save, [$old, false, $table->getProperties()]); if (in_array(false, $result, true)) { // Plugin will have to raise its own error or throw an exception. return false; } // Store the table. if (!$table->store()) { $this->setError($table->getError()); return false; } if ($table->block) { UserHelper::destroyUserSessions($table->id); } // Trigger the after save event Factory::getApplication()->triggerEvent($this->event_after_save, [$table->getProperties(), false, true, null]); } catch (\Exception $e) { $this->setError($e->getMessage()); return false; } // Log the user out. if ($value) { $app->logout($table->id, $options); } } else { // Prune items that you can't change. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED'), 'error'); } } } return true; } /** * Method to activate user records. * * @param array &$pks The ids of the items to activate. * * @return boolean True on success. * * @since 1.6 * @throws \Exception */ public function activate(&$pks) { $user = $this->getCurrentUser(); // Check if I am a Super Admin $iAmSuperAdmin = $user->authorise('core.admin'); $table = $this->getTable(); $pks = (array) $pks; PluginHelper::importPlugin($this->events_map['save']); // Access checks. foreach ($pks as $i => $pk) { if ($table->load($pk)) { $old = $table->getProperties(); $allow = $user->authorise('core.edit.state', 'com_users'); // Don't allow non-super-admin to delete a super admin $allow = (!$iAmSuperAdmin && Access::check($pk, 'core.admin')) ? false : $allow; if (empty($table->activation)) { // Ignore activated accounts. unset($pks[$i]); } elseif ($allow) { $table->block = 0; $table->activation = ''; // Allow an exception to be thrown. try { if (!$table->check()) { $this->setError($table->getError()); return false; } // Trigger the before save event. $result = Factory::getApplication()->triggerEvent($this->event_before_save, [$old, false, $table->getProperties()]); if (in_array(false, $result, true)) { // Plugin will have to raise it's own error or throw an exception. return false; } // Store the table. if (!$table->store()) { $this->setError($table->getError()); return false; } // Fire the after save event Factory::getApplication()->triggerEvent($this->event_after_save, [$table->getProperties(), false, true, null]); } catch (\Exception $e) { $this->setError($e->getMessage()); return false; } } else { // Prune items that you can't change. unset($pks[$i]); Factory::getApplication()->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED'), 'error'); } } } return true; } /** * Method to perform batch operations on an item or a set of items. * * @param array $commands An array of commands to perform. * @param array $pks An array of item ids. * @param array $contexts An array of item contexts. * * @return boolean Returns true on success, false on failure. * * @since 2.5 */ public function batch($commands, $pks, $contexts) { // Sanitize user ids. $pks = array_unique($pks); $pks = ArrayHelper::toInteger($pks); // Remove any values of zero. if (array_search(0, $pks, true)) { unset($pks[array_search(0, $pks, true)]); } if (empty($pks)) { $this->setError(Text::_('COM_USERS_USERS_NO_ITEM_SELECTED')); return false; } $done = false; if (!empty($commands['group_id'])) { $cmd = ArrayHelper::getValue($commands, 'group_action', 'add'); if (!$this->batchUser((int) $commands['group_id'], $pks, $cmd)) { return false; } $done = true; } if (!empty($commands['reset_id'])) { if (!$this->batchReset($pks, $commands['reset_id'])) { return false; } $done = true; } if (!$done) { $this->setError(Text::_('JLIB_APPLICATION_ERROR_INSUFFICIENT_BATCH_INFORMATION')); return false; } // Clear the cache $this->cleanCache(); return true; } /** * Batch flag users as being required to reset their passwords * * @param array $userIds An array of user IDs on which to operate * @param string $action The action to perform * * @return boolean True on success, false on failure * * @since 3.2 */ public function batchReset($userIds, $action) { $userIds = ArrayHelper::toInteger($userIds); // Check if I am a Super Admin $iAmSuperAdmin = $this->getCurrentUser()->authorise('core.admin'); // Non-super super user cannot work with super-admin user. if (!$iAmSuperAdmin && UserHelper::checkSuperUserInUsers($userIds)) { $this->setError(Text::_('COM_USERS_ERROR_CANNOT_BATCH_SUPERUSER')); return false; } // Set the action to perform if ($action === 'yes') { $value = 1; } else { $value = 0; } // Prune out the current user if they are in the supplied user ID array $userIds = array_diff($userIds, [$this->getCurrentUser()->id]); if (empty($userIds)) { $this->setError(Text::_('COM_USERS_USERS_ERROR_CANNOT_REQUIRERESET_SELF')); return false; } // Get the DB object $db = $this->getDatabase(); $userIds = ArrayHelper::toInteger($userIds); $query = $db->getQuery(true); // Update the reset flag $query->update($db->quoteName('#__users')) ->set($db->quoteName('requireReset') . ' = :requireReset') ->whereIn($db->quoteName('id'), $userIds) ->bind(':requireReset', $value, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } return true; } /** * Perform batch operations * * @param integer $groupId The group ID which assignments are being edited * @param array $userIds An array of user IDs on which to operate * @param string $action The action to perform * * @return boolean True on success, false on failure * * @since 1.6 */ public function batchUser($groupId, $userIds, $action) { $userIds = ArrayHelper::toInteger($userIds); // Check if I am a Super Admin $iAmSuperAdmin = $this->getCurrentUser()->authorise('core.admin'); // Non-super super user cannot work with super-admin user. if (!$iAmSuperAdmin && UserHelper::checkSuperUserInUsers($userIds)) { $this->setError(Text::_('COM_USERS_ERROR_CANNOT_BATCH_SUPERUSER')); return false; } // Non-super admin cannot work with super-admin group. if ((!$iAmSuperAdmin && Access::checkGroup($groupId, 'core.admin')) || $groupId < 1) { $this->setError(Text::_('COM_USERS_ERROR_INVALID_GROUP')); return false; } // Get the DB object $db = $this->getDatabase(); switch ($action) { // Sets users to a selected group case 'set': $doDelete = 'all'; $doAssign = true; break; // Remove users from a selected group case 'del': $doDelete = 'group'; break; // Add users to a selected group case 'add': default: $doAssign = true; break; } // Remove the users from the group if requested. if (isset($doDelete)) { /* * First we need to check that the user is part of more than one group * otherwise we will end up with a user that is not part of any group * unless we are moving the user to a new group. */ if ($doDelete === 'group') { $query = $db->getQuery(true); $query->select($db->quoteName('user_id')) ->from($db->quoteName('#__user_usergroup_map')) ->whereIn($db->quoteName('user_id'), $userIds); // Add the group by clause to remove users who are only in one group $query->group($db->quoteName('user_id')) ->having('COUNT(user_id) > 1'); $db->setQuery($query); $users = $db->loadColumn(); // If we have no users to process, throw an error to notify the user if (empty($users)) { $this->setError(Text::_('COM_USERS_ERROR_ONLY_ONE_GROUP')); return false; } // Check to see if the users are in the group to be removed $query->clear() ->select($db->quoteName('user_id')) ->from($db->quoteName('#__user_usergroup_map')) ->whereIn($db->quoteName('user_id'), $users) ->where($db->quoteName('group_id') . ' = :group_id') ->bind(':group_id', $groupId, ParameterType::INTEGER); $db->setQuery($query); $users = $db->loadColumn(); // If we have no users to process, throw an error to notify the user if (empty($users)) { $this->setError(Text::_('COM_USERS_ERROR_NOT_IN_GROUP')); return false; } // Finally remove the users from the group $query->clear() ->delete($db->quoteName('#__user_usergroup_map')) ->whereIn($db->quoteName('user_id'), $users) ->where($db->quoteName('group_id') . '= :group_id') ->bind(':group_id', $groupId, ParameterType::INTEGER); $db->setQuery($query); } elseif ($doDelete === 'all') { $query = $db->getQuery(true); $query->delete($db->quoteName('#__user_usergroup_map')) ->whereIn($db->quoteName('user_id'), $userIds); } $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } } // Assign the users to the group if requested. if (isset($doAssign)) { $query = $db->getQuery(true); // First, we need to check if the user is already assigned to a group $query->select($db->quoteName('user_id')) ->from($db->quoteName('#__user_usergroup_map')) ->where($db->quoteName('group_id') . ' = :group_id') ->bind(':group_id', $groupId, ParameterType::INTEGER); $db->setQuery($query); $users = $db->loadColumn(); // Build the values clause for the assignment query. $query->clear(); $groups = false; foreach ($userIds as $id) { if (!in_array($id, $users)) { $query->values($id . ',' . $groupId); $groups = true; } } // If we have no users to process, throw an error to notify the user if (!$groups) { $this->setError(Text::_('COM_USERS_ERROR_NO_ADDITIONS')); return false; } $query->insert($db->quoteName('#__user_usergroup_map')) ->columns([$db->quoteName('user_id'), $db->quoteName('group_id')]); $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } } return true; } /** * Gets the available groups. * * @return array An array of groups * * @since 1.6 */ public function getGroups() { $user = $this->getCurrentUser(); if ($user->authorise('core.edit', 'com_users') && $user->authorise('core.manage', 'com_users')) { $model = $this->bootComponent('com_users') ->getMVCFactory()->createModel('Groups', 'Administrator', ['ignore_request' => true]); return $model->getItems(); } else { return null; } } /** * Gets the groups this object is assigned to * * @param integer $userId The user ID to retrieve the groups for * * @return array An array of assigned groups * * @since 1.6 */ public function getAssignedGroups($userId = null) { $userId = (!empty($userId)) ? $userId : (int) $this->getState('user.id'); if (empty($userId)) { $result = []; $form = $this->getForm(); if ($form) { $groupsIDs = $form->getValue('groups'); } if (!empty($groupsIDs)) { $result = $groupsIDs; } else { $params = ComponentHelper::getParams('com_users'); if ($groupId = $params->get('new_usertype', $params->get('guest_usergroup', 1))) { $result[] = $groupId; } } } else { $result = UserHelper::getUserGroups($userId); } return $result; } /** * No longer used * * @param integer $userId Ignored * * @return \stdClass * * @since 3.2 * * @deprecated 4.2 will be removed in 6.0. * Will be removed without replacement */ public function getOtpConfig($userId = null) { @trigger_error( sprintf( '%s() is deprecated. Use \Joomla\Component\Users\Administrator\Helper\Mfa::getUserMfaRecords() instead.', __METHOD__ ), E_USER_DEPRECATED ); // Return the configuration object return (object) [ 'method' => 'none', 'config' => [], 'otep' => [], ]; } /** * No longer used * * @param integer $userId Ignored * @param \stdClass $otpConfig Ignored * * @return boolean True on success * * @since 3.2 * * @deprecated 4.2 will be removed in 5.0. * Will be removed without replacement */ public function setOtpConfig($userId, $otpConfig) { @trigger_error( sprintf( '%s() is deprecated. Multi-factor Authentication actions are handled by plugins in the multifactorauth folder.', __METHOD__ ), E_USER_DEPRECATED ); return true; } /** * No longer used * * @return string * * @since 3.2 * * @deprecated 4.2 will be removed in 6.0. * Use \Joomla\CMS\Factory::getApplication()->get('secret') instead' */ public function getOtpConfigEncryptionKey() { @trigger_error( sprintf( '%s() is deprecated. Use \Joomla\CMS\Factory::getApplication()->get(\'secret\') instead', __METHOD__ ), E_USER_DEPRECATED ); return Factory::getApplication()->get('secret'); } /** * No longer used * * @param integer $userId Ignored * * @return array Empty array * * @since 3.2 * @throws \Exception * * @deprecated 4.2 will be removed in 5.0. * Will be removed without replacement */ public function getTwofactorform($userId = null) { @trigger_error( sprintf( '%s() is deprecated. Use \Joomla\Component\Users\Administrator\Helper\Mfa::getConfigurationInterface()', __METHOD__ ), E_USER_DEPRECATED ); return []; } /** * No longer used * * @param integer $userId Ignored * @param integer $count Ignored * * @return array Empty array * * @since 3.2 * * @deprecated 4.2 will be removed in 5.0 * Will be removed without replacement */ public function generateOteps($userId, $count = 10) { @trigger_error( sprintf( '%s() is deprecated. See \Joomla\Component\Users\Administrator\Model\BackupcodesModel::saveBackupCodes()', __METHOD__ ), E_USER_DEPRECATED ); return []; } /** * No longer used. Always returns true. * * @param integer $userId Ignored * @param string $secretKey Ignored * @param array $options Ignored * * @return boolean Always true * * @since 3.2 * @throws \Exception * * @deprecated 4.2 will be removed in 5.0 * Will be removed without replacement */ public function isValidSecretKey($userId, $secretKey, $options = []) { @trigger_error( sprintf( '%s() is deprecated. Multi-factor Authentication actions are handled by plugins in the multifactorauth folder.', __METHOD__ ), E_USER_DEPRECATED ); return true; } /** * No longer used * * @param integer $userId Ignored * @param string $otep Ignored * @param object $otpConfig Ignored * * @return boolean Always true * * @since 3.2 * * @deprecated 4.2 will be removed in 5.0 * Will be removed without replacement */ public function isValidOtep($userId, $otep, $otpConfig = null) { @trigger_error( sprintf( '%s() is deprecated. Multi-factor Authentication actions are handled by plugins in the multifactorauth folder.', __METHOD__ ), E_USER_DEPRECATED ); return true; } } PKAA#]/|-#5#5/components/com_users/src/Model/CaptiveModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Date\Date; use Joomla\CMS\Event\MultiFactor\Captive; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\DataShape\CaptiveRenderOptions; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Table\MfaTable; use Joomla\Event\Event; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Captive Multi-factor Authentication page's model * * @since 4.2.0 */ class CaptiveModel extends BaseDatabaseModel { /** * Cache of the names of the currently active MFA Methods * * @var array|null * @since 4.2.0 */ protected $activeMFAMethodNames = null; /** * Prevents Joomla from displaying any modules. * * This is implemented with a trick. If you use jdoc tags to load modules the JDocumentRendererHtmlModules * uses JModuleHelper::getModules() to load the list of modules to render. This goes through JModuleHelper::load() * which triggers the onAfterModuleList event after cleaning up the module list from duplicates. By resetting * the list to an empty array we force Joomla to not display any modules. * * Similar code paths are followed by any canonical code which tries to load modules. So even if your template does * not use jdoc tags this code will still work as expected. * * @param CMSApplication|null $app The CMS application to manipulate * * @return void * @throws \Exception * * @since 4.2.0 */ public function suppressAllModules(CMSApplication $app = null): void { if (is_null($app)) { $app = Factory::getApplication(); } $app->registerEvent('onAfterModuleList', [$this, 'onAfterModuleList']); } /** * Get the MFA records for the user which correspond to active plugins * * @param User|null $user The user for which to fetch records. Skip to use the current user. * @param bool $includeBackupCodes Should I include the backup codes record? * * @return array * @throws \Exception * * @since 4.2.0 */ public function getRecords(User $user = null, bool $includeBackupCodes = false): array { if (is_null($user)) { $user = $this->getCurrentUser(); } // Get the user's MFA records $records = MfaHelper::getUserMfaRecords($user->id); // No MFA Methods? Then we obviously don't need to display a Captive login page. if (empty($records)) { return []; } // Get the enabled MFA Methods' names $methodNames = $this->getActiveMethodNames(); // Filter the records based on currently active MFA Methods $ret = []; $methodNames[] = 'backupcodes'; $methodNames = array_unique($methodNames); if (!$includeBackupCodes) { $methodNames = array_filter( $methodNames, function ($method) { return $method != 'backupcodes'; } ); } foreach ($records as $record) { // Backup codes must not be included in the list. We add them in the View, at the end of the list. if (in_array($record->method, $methodNames)) { $ret[$record->id] = $record; } } return $ret; } /** * Return all the active MFA Methods' names * * @return array * @since 4.2.0 */ private function getActiveMethodNames(): ?array { if (!is_null($this->activeMFAMethodNames)) { return $this->activeMFAMethodNames; } // Let's get a list of all currently active MFA Methods $mfaMethods = MfaHelper::getMfaMethods(); // If no MFA Method is active we can't really display a Captive login page. if (empty($mfaMethods)) { $this->activeMFAMethodNames = []; return $this->activeMFAMethodNames; } // Get a list of just the Method names $this->activeMFAMethodNames = []; foreach ($mfaMethods as $mfaMethod) { $this->activeMFAMethodNames[] = $mfaMethod['name']; } return $this->activeMFAMethodNames; } /** * Get the currently selected MFA record for the current user. If the record ID is empty, it does not correspond to * the currently logged in user or does not correspond to an active plugin null is returned instead. * * @param User|null $user The user for which to fetch records. Skip to use the current user. * * @return MfaTable|null * @throws \Exception * * @since 4.2.0 */ public function getRecord(?User $user = null): ?MfaTable { $id = (int) $this->getState('record_id', null); if ($id <= 0) { return null; } if (is_null($user)) { $user = $this->getCurrentUser(); } /** @var MfaTable $record */ $record = $this->getTable('Mfa', 'Administrator'); $loaded = $record->load( [ 'user_id' => $user->id, 'id' => $id, ] ); if (!$loaded) { return null; } $methodNames = $this->getActiveMethodNames(); if (!in_array($record->method, $methodNames) && ($record->method != 'backupcodes')) { return null; } return $record; } /** * Load the Captive login page render options for a specific MFA record * * @param MfaTable $record The MFA record to process * * @return CaptiveRenderOptions The rendering options * @since 4.2.0 */ public function loadCaptiveRenderOptions(?MfaTable $record): CaptiveRenderOptions { $renderOptions = new CaptiveRenderOptions(); if (empty($record)) { return $renderOptions; } $event = new Captive($record); $results = Factory::getApplication() ->getDispatcher() ->dispatch($event->getName(), $event) ->getArgument('result', []); if (empty($results)) { if ($record->method === 'backupcodes') { return $renderOptions->merge( [ 'pre_message' => Text::_('COM_USERS_USER_BACKUPCODES_CAPTIVE_PROMPT'), 'input_type' => 'number', 'label' => Text::_('COM_USERS_USER_BACKUPCODE'), ] ); } return $renderOptions; } foreach ($results as $result) { if (empty($result)) { continue; } return $renderOptions->merge($result); } return $renderOptions; } /** * Returns the title to display in the Captive login page, or an empty string if no title is to be displayed. * * @return string * @since 4.2.0 */ public function getPageTitle(): string { // In the frontend we can choose if we will display a title $showTitle = (bool) ComponentHelper::getParams('com_users') ->get('frontend_show_title', 1); if (!$showTitle) { return ''; } return Text::_('COM_USERS_USER_MULTIFACTOR_AUTH'); } /** * Translate a MFA Method's name into its human-readable, display name * * @param string $name The internal MFA Method name * * @return string * @since 4.2.0 */ public function translateMethodName(string $name): string { static $map = null; if (!is_array($map)) { $map = []; $mfaMethods = MfaHelper::getMfaMethods(); if (!empty($mfaMethods)) { foreach ($mfaMethods as $mfaMethod) { $map[$mfaMethod['name']] = $mfaMethod['display']; } } } if ($name == 'backupcodes') { return Text::_('COM_USERS_USER_BACKUPCODES'); } return $map[$name] ?? $name; } /** * Translate a MFA Method's name into the relative URL if its logo image * * @param string $name The internal MFA Method name * * @return string * @since 4.2.0 */ public function getMethodImage(string $name): string { static $map = null; if (!is_array($map)) { $map = []; $mfaMethods = MfaHelper::getMfaMethods(); if (!empty($mfaMethods)) { foreach ($mfaMethods as $mfaMethod) { $map[$mfaMethod['name']] = $mfaMethod['image']; } } } if ($name == 'backupcodes') { return 'media/com_users/images/emergency.svg'; } return $map[$name] ?? $name; } /** * Process the modules list on Joomla! 4. * * Joomla! 4.x is passing an Event object. The first argument of the event object is the array of modules. After * filtering it we have to overwrite the event argument (NOT just return the new list of modules). If a future * version of Joomla! uses immutable events we'll have to use Reflection to do that or Joomla! would have to fix * the way this event is handled, taking its return into account. For now, we just abuse the mutable event * properties - a feature of the event objects we discussed in the Joomla! 4 Working Group back in August 2015. * * @param Event $event The Joomla! event object * * @return void * @throws \Exception * * @since 4.2.0 */ public function onAfterModuleList(Event $event): void { $modules = $event->getArgument(0); if (empty($modules)) { return; } $this->filterModules($modules); $event->setArgument(0, $modules); } /** * This is the Method which actually filters the sites modules based on the allowed module positions specified by * the user. * * @param array $modules The list of the site's modules. Passed by reference. * * @return void The by-reference value is modified instead. * @since 4.2.0 * @throws \Exception */ private function filterModules(array &$modules): void { $allowedPositions = $this->getAllowedModulePositions(); if (empty($allowedPositions)) { $modules = []; return; } $filtered = []; foreach ($modules as $module) { if (in_array($module->position, $allowedPositions)) { $filtered[] = $module; } } $modules = $filtered; } /** * Get a list of module positions we are allowed to display * * @return array * @throws \Exception * * @since 4.2.0 */ private function getAllowedModulePositions(): array { $isAdmin = Factory::getApplication()->isClient('administrator'); // Load the list of allowed module positions from the component's settings. May be different for front- and back-end $configKey = 'allowed_positions_' . ($isAdmin ? 'backend' : 'frontend'); $res = ComponentHelper::getParams('com_users')->get($configKey, []); // In the backend we must always add the 'title' module position if ($isAdmin) { $res[] = 'title'; $res[] = 'toolbar'; } return $res; } /** * Method to check if the mfa method in question has reached it's usage limit * * @param MfaTable $method Mfa method record * * @return boolean true if user can use the method, false if not * * @since 4.3.2 * @throws \Exception */ public function checkTryLimit(MfaTable $method) { $params = ComponentHelper::getParams('com_users'); $jNow = Date::getInstance(); $maxTries = (int) $params->get('mfatrycount', 10); $blockHours = (int) $params->get('mfatrytime', 1); $lastTryTime = strtotime($method->last_try) ?: 0; $hoursSinceLastTry = (strtotime(Factory::getDate()->toSql()) - $lastTryTime) / 3600; if ($method->last_try !== null && $hoursSinceLastTry > $blockHours) { // If it's been long enough, start a new reset count $method->last_try = null; $method->tries = 0; } elseif ($method->tries < $maxTries) { // If we are under the max count, just increment the counter ++$method->tries; $method->last_try = $jNow->toSql(); } else { // At this point, we know we have exceeded the maximum resets for the time period return false; } // Store changes to try counter and/or the timestamp $method->store(); return true; } } PKAA#]���%K#K#-components/com_users/src/Model/LevelModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\Filter\InputFilter; use Joomla\CMS\Form\Form; use Joomla\CMS\Helper\UserGroupsHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Table\Table; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User view level model. * * @since 1.6 */ class LevelModel extends AdminModel { /** * @var array A list of the access levels in use. * @since 1.6 */ protected $levelsInUse = null; /** * Method to test whether a record can be deleted. * * @param object $record A record object. * * @return boolean True if allowed to delete the record. Defaults to the permission set in the component. * * @since 1.6 */ protected function canDelete($record) { $groups = json_decode($record->rules); if ($groups === null) { throw new \RuntimeException('Invalid rules schema'); } $isAdmin = $this->getCurrentUser()->authorise('core.admin'); // Check permissions foreach ($groups as $group) { if (!$isAdmin && Access::checkGroup($group, 'core.admin')) { $this->setError(Text::_('JERROR_ALERTNOAUTHOR')); return false; } } // Check if the access level is being used by any content. if ($this->levelsInUse === null) { // Populate the list once. $this->levelsInUse = []; $db = $this->getDatabase(); $query = $db->getQuery(true) ->select('DISTINCT access'); // Get all the tables and the prefix $tables = $db->getTableList(); $prefix = $db->getPrefix(); foreach ($tables as $table) { // Get all of the columns in the table $fields = $db->getTableColumns($table); /** * We are looking for the access field. If custom tables are using something other * than the 'access' field they are on their own unfortunately. * Also make sure the table prefix matches the live db prefix (eg, it is not a "bak_" table) */ if (strpos($table, $prefix) === 0 && isset($fields['access'])) { // Lookup the distinct values of the field. $query->clear('from') ->from($db->quoteName($table)); $db->setQuery($query); try { $values = $db->loadColumn(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } $this->levelsInUse = array_merge($this->levelsInUse, $values); // @todo Could assemble an array of the tables used by each view level list those, // giving the user a clue in the error where to look. } } // Get uniques. $this->levelsInUse = array_unique($this->levelsInUse); // Ok, after all that we are ready to check the record :) } if (in_array($record->id, $this->levelsInUse)) { $this->setError(Text::sprintf('COM_USERS_ERROR_VIEW_LEVEL_IN_USE', $record->id, $record->title)); return false; } return parent::canDelete($record); } /** * Returns a reference to the a Table object, always creating it. * * @param string $type The table type to instantiate * @param string $prefix A prefix for the table class name. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A database object * * @since 1.6 */ public function getTable($type = 'ViewLevel', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { $return = Table::getInstance($type, $prefix, $config); return $return; } /** * Method to get a single record. * * @param integer $pk The id of the primary key. * * @return mixed Object on success, false on failure. * * @since 1.6 */ public function getItem($pk = null) { $result = parent::getItem($pk); // Convert the params field to an array. $result->rules = $result->rules !== null ? json_decode($result->rules) : []; return $result; } /** * Method to get the record form. * * @param array $data An optional array of data for the form to interrogate. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form|bool A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { // Get the form. $form = $this->loadForm('com_users.level', 'level', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 * @throws \Exception */ protected function loadFormData() { // Check the session for previously entered form data. $data = Factory::getApplication()->getUserState('com_users.edit.level.data', []); if (empty($data)) { $data = $this->getItem(); } $this->preprocessData('com_users.level', $data); return $data; } /** * Method to preprocess the form * * @param Form $form A form object. * @param mixed $data The data expected for the form. * @param string $group The name of the plugin group to import (defaults to "content"). * * @return void * * @since 1.6 * @throws \Exception if there is an error loading the form. */ protected function preprocessForm(Form $form, $data, $group = '') { // TO DO warning! parent::preprocessForm($form, $data, 'user'); } /** * Method to save the form data. * * @param array $data The form data. * * @return boolean True on success. * * @since 1.6 */ public function save($data) { if (!isset($data['rules'])) { $data['rules'] = []; } $data['title'] = InputFilter::getInstance()->clean($data['title'], 'TRIM'); return parent::save($data); } /** * Method to validate the form data. * * @param Form $form The form to validate against. * @param array $data The data to validate. * @param string $group The name of the field group to validate. * * @return array|boolean Array of filtered data if valid, false otherwise. * * @see \Joomla\CMS\Form\FormRule * @see \JFilterInput * @since 3.8.8 */ public function validate($form, $data, $group = null) { $isSuperAdmin = $this->getCurrentUser()->authorise('core.admin'); // Non Super user should not be able to change the access levels of super user groups if (!$isSuperAdmin) { if (!isset($data['rules']) || !is_array($data['rules'])) { $data['rules'] = []; } $groups = array_values(UserGroupsHelper::getInstance()->getAll()); $rules = []; if (!empty($data['id'])) { $table = $this->getTable(); $table->load($data['id']); $rules = json_decode($table->rules); } $rules = ArrayHelper::toInteger($rules); for ($i = 0, $n = count($groups); $i < $n; ++$i) { if (Access::checkGroup((int) $groups[$i]->id, 'core.admin')) { if (in_array((int) $groups[$i]->id, $rules) && !in_array((int) $groups[$i]->id, $data['rules'])) { $data['rules'][] = (int) $groups[$i]->id; } elseif (!in_array((int) $groups[$i]->id, $rules) && in_array((int) $groups[$i]->id, $data['rules'])) { $this->setError(Text::_('JLIB_USER_ERROR_NOT_SUPERADMIN')); return false; } } } } return parent::validate($form, $data, $group); } } PKAA#]��R.components/com_users/src/Model/GroupsModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Helper\UserGroupsHelper; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of user group records. * * @since 1.6 */ class GroupsModel extends ListModel { /** * Override parent constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'parent_id', 'a.parent_id', 'title', 'a.title', 'lft', 'a.lft', 'rgt', 'a.rgt', ]; } parent::__construct($config, $factory); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.lft', $direction = 'asc') { // Load the parameters. $params = ComponentHelper::getParams('com_users'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); return parent::getStoreId($id); } /** * Gets the list of groups and adds expensive joins to the result set. * * @return mixed An array of data items on success, false on failure. * * @since 1.6 */ public function getItems() { // Get a storage key. $store = $this->getStoreId(); // Try to load the data from internal storage. if (empty($this->cache[$store])) { $items = parent::getItems(); // Bail out on an error or empty list. if (empty($items)) { $this->cache[$store] = $items; return $items; } try { $items = $this->populateExtraData($items); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } // Add the items to the internal cache. $this->cache[$store] = $items; } return $this->cache[$store]; } /** * Build an SQL query to load the list data. * * @return DatabaseQuery */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.*' ) ); $query->from($db->quoteName('#__usergroups') . ' AS a'); // Filter the comments over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $ids = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :id'); $query->bind(':id', $ids, ParameterType::INTEGER); } else { $search = '%' . trim($search) . '%'; $query->where($db->quoteName('a.title') . ' LIKE :title'); $query->bind(':title', $search); } } // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.lft')) . ' ' . $db->escape($this->getState('list.direction', 'ASC'))); return $query; } /** * Populate level & path for items. * * @param array $items Array of \stdClass objects * * @return array * * @since 3.6.3 */ private function populateExtraData(array $items) { // First pass: get list of the group ids and reset the counts. $groupsByKey = []; foreach ($items as $item) { $groupsByKey[(int) $item->id] = $item; } $groupIds = array_keys($groupsByKey); $db = $this->getDatabase(); // Get total enabled users in group. $query = $db->getQuery(true); // Count the objects in the user group. $query->select('map.group_id, COUNT(DISTINCT map.user_id) AS user_count') ->from($db->quoteName('#__user_usergroup_map', 'map')) ->join('LEFT', $db->quoteName('#__users', 'u'), $db->quoteName('u.id') . ' = ' . $db->quoteName('map.user_id')) ->whereIn($db->quoteName('map.group_id'), $groupIds) ->where($db->quoteName('u.block') . ' = 0') ->group($db->quoteName('map.group_id')); $db->setQuery($query); try { $countEnabled = $db->loadAssocList('group_id', 'count_enabled'); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } // Get total disabled users in group. $query->clear(); $query->select('map.group_id, COUNT(DISTINCT map.user_id) AS user_count') ->from($db->quoteName('#__user_usergroup_map', 'map')) ->join('LEFT', $db->quoteName('#__users', 'u'), $db->quoteName('u.id') . ' = ' . $db->quoteName('map.user_id')) ->whereIn($db->quoteName('map.group_id'), $groupIds) ->where($db->quoteName('u.block') . ' = 1') ->group($db->quoteName('map.group_id')); $db->setQuery($query); try { $countDisabled = $db->loadAssocList('group_id', 'count_disabled'); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } // Inject the values back into the array. foreach ($groupsByKey as &$item) { $item->count_enabled = isset($countEnabled[$item->id]) ? (int) $countEnabled[$item->id]['user_count'] : 0; $item->count_disabled = isset($countDisabled[$item->id]) ? (int) $countDisabled[$item->id]['user_count'] : 0; $item->user_count = $item->count_enabled + $item->count_disabled; } $groups = new UserGroupsHelper($groupsByKey); return array_values($groups->getAll()); } } PKAA#]!�.l{{1components/com_users/src/Model/DebuguserModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\Helper\DebugHelper; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of User ACL permissions * * @since 1.6 */ class DebuguserModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'a.title', 'component', 'a.name', 'a.lft', 'a.id', 'level_start', 'level_end', 'a.level', ]; } parent::__construct($config, $factory); } /** * Get a list of the actions. * * @return array * * @since 1.6 */ public function getDebugActions() { $component = $this->getState('filter.component'); return DebugHelper::getDebugActions($component); } /** * Override getItems method. * * @return array * * @since 1.6 */ public function getItems() { $userId = $this->getState('user_id'); $user = Factory::getUser($userId); if (($assets = parent::getItems()) && $userId) { $actions = $this->getDebugActions(); foreach ($assets as &$asset) { $asset->checks = []; foreach ($actions as $action) { $name = $action[0]; $asset->checks[$name] = $user->authorise($name, $asset->name); } } } return $assets; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 * @throws \Exception */ protected function populateState($ordering = 'a.lft', $direction = 'asc') { $app = Factory::getApplication(); // Adjust the context to support modal layouts. $layout = $app->getInput()->get('layout', 'default'); if ($layout) { $this->context .= '.' . $layout; } // Load the filter state. $this->setState('filter.search', $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search', '', 'string')); $this->setState('user_id', $this->getUserStateFromRequest($this->context . '.user_id', 'user_id', 0, 'int', false)); $levelStart = $this->getUserStateFromRequest($this->context . '.filter.level_start', 'filter_level_start', '', 'cmd'); $this->setState('filter.level_start', $levelStart); $value = $this->getUserStateFromRequest($this->context . '.filter.level_end', 'filter_level_end', '', 'cmd'); if ($value > 0 && $value < $levelStart) { $value = $levelStart; } $this->setState('filter.level_end', $value); $this->setState('filter.component', $this->getUserStateFromRequest($this->context . '.filter.component', 'filter_component', '', 'string')); // Load the parameters. $params = ComponentHelper::getParams('com_users'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('user_id'); $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.level_start'); $id .= ':' . $this->getState('filter.level_end'); $id .= ':' . $this->getState('filter.component'); return parent::getStoreId($id); } /** * Get the user being debugged. * * @return User * * @since 1.6 */ public function getUser() { $userId = $this->getState('user_id'); return Factory::getUser($userId); } /** * Build an SQL query to load the list data. * * @return DatabaseQuery * * @since 1.6 */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.id, a.name, a.title, a.level, a.lft, a.rgt' ) ); $query->from($db->quoteName('#__assets', 'a')); // Filter the items over the search string if set. if ($this->getState('filter.search')) { $search = '%' . trim($this->getState('filter.search')) . '%'; // Add the clauses to the query. $query->where( '(' . $db->quoteName('a.name') . ' LIKE :name' . ' OR ' . $db->quoteName('a.title') . ' LIKE :title)' ) ->bind(':name', $search) ->bind(':title', $search); } // Filter on the start and end levels. $levelStart = (int) $this->getState('filter.level_start'); $levelEnd = (int) $this->getState('filter.level_end'); if ($levelEnd > 0 && $levelEnd < $levelStart) { $levelEnd = $levelStart; } if ($levelStart > 0) { $query->where($db->quoteName('a.level') . ' >= :levelStart') ->bind(':levelStart', $levelStart, ParameterType::INTEGER); } if ($levelEnd > 0) { $query->where($db->quoteName('a.level') . ' <= :levelEnd') ->bind(':levelEnd', $levelEnd, ParameterType::INTEGER); } // Filter the items over the component if set. if ($this->getState('filter.component')) { $component = $this->getState('filter.component'); $lcomponent = $component . '.%'; $query->where( '(' . $db->quoteName('a.name') . ' = :component' . ' OR ' . $db->quoteName('a.name') . ' LIKE :lcomponent)' ) ->bind(':component', $component) ->bind(':lcomponent', $lcomponent); } // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.lft')) . ' ' . $db->escape($this->getState('list.direction', 'ASC'))); return $query; } } PKAA#]v�_nFF/components/com_users/src/Model/MethodsModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Date\Date; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Multi-factor Authentication Methods list page's model * * @since 4.2.0 */ class MethodsModel extends BaseDatabaseModel { /** * Returns a list of all available MFA methods and their currently active records for a given user. * * @param User|null $user The user object. Skip to use the current user. * * @return array * @throws \Exception * * @since 4.2.0 */ public function getMethods(?User $user = null): array { if (is_null($user)) { $user = $this->getCurrentUser(); } if ($user->guest) { return []; } // Get an associative array of MFA Methods $rawMethods = MfaHelper::getMfaMethods(); $methods = []; foreach ($rawMethods as $method) { $method['active'] = []; $methods[$method['name']] = $method; } // Put the user MFA records into the Methods array $userMfaRecords = MfaHelper::getUserMfaRecords($user->id); if (!empty($userMfaRecords)) { foreach ($userMfaRecords as $record) { if (!isset($methods[$record->method])) { continue; } $methods[$record->method]->addActiveMethod($record); } } return $methods; } /** * Delete all Multi-factor Authentication Methods for the given user. * * @param User|null $user The user object to reset MFA for. Null to use the current user. * * @return void * @throws \Exception * * @since 4.2.0 */ public function deleteAll(?User $user = null): void { // Make sure we have a user object if (is_null($user)) { $user = Factory::getApplication()->getIdentity() ?: $this->getCurrentUser(); } // If the user object is a guest (who can't have MFA) we stop with an error if ($user->guest) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $db = $this->getDatabase(); $query = $db->getQuery(true) ->delete($db->quoteName('#__user_mfa')) ->where($db->quoteName('user_id') . ' = :user_id') ->bind(':user_id', $user->id, ParameterType::INTEGER); $db->setQuery($query)->execute(); } /** * Format a relative timestamp. It deals with timestamps today and yesterday in a special manner. Example returns: * Yesterday, 13:12 * Today, 08:33 * January 1, 2015 * * @param string $dateTimeText The database time string to use, e.g. "2017-01-13 13:25:36" * * @return string The formatted, human-readable date * @throws \Exception * * @since 4.2.0 */ public function formatRelative(?string $dateTimeText): string { if (empty($dateTimeText)) { return Text::_('JNEVER'); } // The timestamp is given in UTC. Make sure Joomla! parses it as such. $utcTimeZone = new \DateTimeZone('UTC'); $jDate = new Date($dateTimeText, $utcTimeZone); $unixStamp = $jDate->toUnix(); $app = Factory::getApplication(); // I'm pretty sure we didn't have MFA in Joomla back in 1970 ;) if ($unixStamp < 0) { return Text::_('JNEVER'); } // I need to display the date in the user's local timezone. That's how you do it. $user = $this->getCurrentUser(); $userTZ = $user->getParam('timezone', $app->get('offset', 'UTC')); $tz = new \DateTimeZone($userTZ); $jDate->setTimezone($tz); // Default format string: way in the past, the time of the day is not important $formatString = Text::_('COM_USERS_MFA_LBL_DATE_FORMAT_PAST'); $containerString = Text::_('COM_USERS_MFA_LBL_PAST'); // If the timestamp is within the last 72 hours we may need a special format if ($unixStamp > (time() - (72 * 3600))) { // Is this timestamp today? $jNow = new Date(); $jNow->setTimezone($tz); $checkNow = $jNow->format('Ymd', true); $checkDate = $jDate->format('Ymd', true); if ($checkDate == $checkNow) { $formatString = Text::_('COM_USERS_MFA_LBL_DATE_FORMAT_TODAY'); $containerString = Text::_('COM_USERS_MFA_LBL_TODAY'); } else { // Is this timestamp yesterday? $jYesterday = clone $jNow; $jYesterday->setTime(0, 0, 0); $oneSecond = new \DateInterval('PT1S'); $jYesterday->sub($oneSecond); $checkYesterday = $jYesterday->format('Ymd', true); if ($checkDate == $checkYesterday) { $formatString = Text::_('COM_USERS_MFA_LBL_DATE_FORMAT_YESTERDAY'); $containerString = Text::_('COM_USERS_MFA_LBL_YESTERDAY'); } } } return sprintf($containerString, $jDate->format($formatString, true)); } /** * Set the user's "don't show this again" flag. * * @param User $user The user to check * @param bool $flag True to set the flag, false to unset it (it will be set to 0, actually) * * @return void * * @since 4.2.0 */ public function setFlag(User $user, bool $flag = true): void { $db = $this->getDatabase(); $profileKey = 'mfa.dontshow'; $query = $db->getQuery(true) ->select($db->quoteName('profile_value')) ->from($db->quoteName('#__user_profiles')) ->where($db->quoteName('user_id') . ' = :user_id') ->where($db->quoteName('profile_key') . ' = :profileKey') ->bind(':user_id', $user->id, ParameterType::INTEGER) ->bind(':profileKey', $profileKey, ParameterType::STRING); try { $result = $db->setQuery($query)->loadResult(); } catch (\Exception $e) { return; } $exists = !is_null($result); $object = (object) [ 'user_id' => $user->id, 'profile_key' => 'mfa.dontshow', 'profile_value' => ($flag ? 1 : 0), 'ordering' => 1, ]; if (!$exists) { $db->insertObject('#__user_profiles', $object); } else { $db->updateObject('#__user_profiles', $object, ['user_id', 'profile_key']); } } } PKAA#]�3���,components/com_users/src/Model/MailModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Access\Access; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Filter\InputFilter; use Joomla\CMS\Form\Form; use Joomla\CMS\Language\Text; use Joomla\CMS\Log\Log; use Joomla\CMS\Mail\Exception\MailDisabledException; use Joomla\CMS\Mail\MailTemplate; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\Database\ParameterType; use PHPMailer\PHPMailer\Exception as phpMailerException; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users mail model. * * @since 1.6 */ class MailModel extends AdminModel { /** * Method to get the row form. * * @param array $data An optional array of data for the form to interrogate. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { // Get the form. $form = $this->loadForm('com_users.mail', 'mail', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 * @throws \Exception */ protected function loadFormData() { // Check the session for previously entered form data. $data = Factory::getApplication()->getUserState('com_users.display.mail.data', []); $this->preprocessData('com_users.mail', $data); return $data; } /** * Method to preprocess the form * * @param Form $form A form object. * @param mixed $data The data expected for the form. * @param string $group The name of the plugin group to import (defaults to "content"). * * @return void * * @since 1.6 * @throws \Exception if there is an error loading the form. */ protected function preprocessForm(Form $form, $data, $group = 'user') { parent::preprocessForm($form, $data, $group); } /** * Send the email * * @return boolean * * @throws \Exception */ public function send() { $app = Factory::getApplication(); $data = $app->getInput()->post->get('jform', [], 'array'); $user = $this->getCurrentUser(); $access = new Access(); $db = $this->getDatabase(); $language = Factory::getLanguage(); $mode = array_key_exists('mode', $data) ? (int) $data['mode'] : 0; $subject = array_key_exists('subject', $data) ? $data['subject'] : ''; $grp = array_key_exists('group', $data) ? (int) $data['group'] : 0; $recurse = array_key_exists('recurse', $data) ? (int) $data['recurse'] : 0; $bcc = array_key_exists('bcc', $data) ? (int) $data['bcc'] : 0; $disabled = array_key_exists('disabled', $data) ? (int) $data['disabled'] : 0; $message_body = array_key_exists('message', $data) ? $data['message'] : ''; // Automatically removes html formatting if (!$mode) { $message_body = InputFilter::getInstance()->clean($message_body, 'string'); } // Check for a message body and subject if (!$message_body || !$subject) { $app->setUserState('com_users.display.mail.data', $data); $this->setError(Text::_('COM_USERS_MAIL_PLEASE_FILL_IN_THE_FORM_CORRECTLY')); return false; } // Get users in the group out of the ACL, if group is provided. $to = $grp !== 0 ? $access->getUsersByGroup($grp, $recurse) : []; // When group is provided but no users are found in the group. if ($grp !== 0 && !$to) { $rows = []; } else { // Get all users email and group except for senders $uid = (int) $user->id; $query = $db->getQuery(true) ->select( [ $db->quoteName('email'), $db->quoteName('name'), ] ) ->from($db->quoteName('#__users')) ->where($db->quoteName('id') . ' != :id') ->bind(':id', $uid, ParameterType::INTEGER); if ($grp !== 0) { $query->whereIn($db->quoteName('id'), $to); } if ($disabled === 0) { $query->where($db->quoteName('block') . ' = 0'); } $db->setQuery($query); $rows = $db->loadObjectList(); } // Check to see if there are any users in this group before we continue if (!$rows) { $app->setUserState('com_users.display.mail.data', $data); if (in_array($user->id, $to)) { $this->setError(Text::_('COM_USERS_MAIL_ONLY_YOU_COULD_BE_FOUND_IN_THIS_GROUP')); } else { $this->setError(Text::_('COM_USERS_MAIL_NO_USERS_COULD_BE_FOUND_IN_THIS_GROUP')); } return false; } // Get the Mailer $mailer = new MailTemplate('com_users.massmail.mail', $language->getTag()); $params = ComponentHelper::getParams('com_users'); try { // Build email message format. $data = [ 'subject' => stripslashes($subject), 'body' => $message_body, 'subjectprefix' => $params->get('mailSubjectPrefix', ''), 'bodysuffix' => $params->get('mailBodySuffix', ''), ]; $mailer->addTemplateData($data); $recipientType = $bcc ? 'bcc' : 'to'; // Add recipients foreach ($rows as $row) { $mailer->addRecipient($row->email, $row->name, $recipientType); } if ($bcc) { $mailer->addRecipient($app->get('mailfrom'), $app->get('fromname')); } // Send the Mail $rs = $mailer->send(); } catch (MailDisabledException | phpMailerException $exception) { try { Log::add(Text::_($exception->getMessage()), Log::WARNING, 'jerror'); $rs = false; } catch (\RuntimeException $exception) { Factory::getApplication()->enqueueMessage(Text::_($exception->errorMessage()), 'warning'); $rs = false; } } // Check for an error if ($rs !== true) { $app->setUserState('com_users.display.mail.data', $data); $this->setError($mailer->ErrorInfo); return false; } elseif (empty($rs)) { $app->setUserState('com_users.display.mail.data', $data); $this->setError(Text::_('COM_USERS_MAIL_THE_MAIL_COULD_NOT_BE_SENT')); return false; } else { /** * Fill the data (specially for the 'mode', 'group' and 'bcc': they could not exist in the array * when the box is not checked and in this case, the default value would be used instead of the '0' * one) */ $data['mode'] = $mode; $data['subject'] = $subject; $data['group'] = $grp; $data['recurse'] = $recurse; $data['bcc'] = $bcc; $data['message'] = $message_body; $app->setUserState('com_users.display.mail.data', []); $app->enqueueMessage(Text::plural('COM_USERS_MAIL_EMAIL_SENT_TO_N_USERS', count($rows)), 'message'); return true; } } } PKAA#]R�S�33,components/com_users/src/Model/NoteModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Model; use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Versioning\VersionableModelTrait; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User note model. * * @since 2.5 */ class NoteModel extends AdminModel { use VersionableModelTrait; /** * The type alias for this content type. * * @var string * @since 3.2 */ public $typeAlias = 'com_users.note'; /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return \Joomla\CMS\Form\Form|bool A Form object on success, false on failure * * @since 2.5 */ public function getForm($data = [], $loadData = true) { // Get the form. $form = $this->loadForm('com_users.note', 'note', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } return $form; } /** * Method to get a single record. * * @param integer $pk The id of the primary key. * * @return mixed Object on success, false on failure. * * @since 2.5 * @throws \Exception */ public function getItem($pk = null) { $result = parent::getItem($pk); // Get the dispatcher and load the content plugins. PluginHelper::importPlugin('content'); // Load the user plugins for backward compatibility (v3.3.3 and earlier). PluginHelper::importPlugin('user'); // Trigger the data preparation event. Factory::getApplication()->triggerEvent('onContentPrepareData', ['com_users.note', $result]); return $result; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 * @throws \Exception */ protected function loadFormData() { // Get the application $app = Factory::getApplication(); // Check the session for previously entered form data. $data = $app->getUserState('com_users.edit.note.data', []); if (empty($data)) { $data = $this->getItem(); // Prime some default values. if ($this->getState('note.id') == 0) { $data->set('catid', $app->getInput()->get('catid', $app->getUserState('com_users.notes.filter.category_id'), 'int')); } $userId = $app->getInput()->get('u_id', 0, 'int'); if ($userId != 0) { $data->user_id = $userId; } } $this->preprocessData('com_users.note', $data); return $data; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @return void * * @since 2.5 * @throws \Exception */ protected function populateState() { parent::populateState(); $userId = Factory::getApplication()->getInput()->get('u_id', 0, 'int'); $this->setState('note.user_id', $userId); } } PKAA#]h �p�>�>8components/com_users/src/Controller/MethodController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Event\MultiFactor\NotifyActionLog; use Joomla\CMS\Event\MultiFactor\SaveSetup; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController as BaseControllerAlias; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\CMS\User\User; use Joomla\CMS\User\UserFactoryAwareInterface; use Joomla\CMS\User\UserFactoryAwareTrait; use Joomla\CMS\User\UserHelper; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Model\MethodModel; use Joomla\Component\Users\Administrator\Table\MfaTable; use Joomla\Input\Input; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Multi-factor Authentication method controller * * @since 4.2.0 */ class MethodController extends BaseControllerAlias implements UserFactoryAwareInterface { use UserFactoryAwareTrait; /** * Public constructor * * @param array $config Plugin configuration * @param MVCFactoryInterface|null $factory MVC Factory for the com_users component * @param CMSApplication|null $app CMS application object * @param Input|null $input Joomla CMS input object * * @since 4.2.0 */ public function __construct(array $config = [], MVCFactoryInterface $factory = null, ?CMSApplication $app = null, ?Input $input = null) { // We have to tell Joomla what is the name of the view, otherwise it defaults to the name of the *component*. $config['default_view'] = 'method'; $config['default_task'] = 'add'; parent::__construct($config, $factory, $app, $input); } /** * Execute a task by triggering a Method in the derived class. * * @param string $task The task to perform. If no matching task is found, the '__default' task is executed, if * defined. * * @return mixed The value returned by the called Method. * * @throws \Exception * @since 4.2.0 */ public function execute($task) { if (empty($task) || $task === 'display') { $task = 'add'; } return parent::execute($task); } /** * Add a new MFA Method * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @throws \Exception * @since 4.2.0 */ public function add($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = $this->getUserFactory()->loadUserById($userId); $this->assertCanEdit($user); // Also make sure the Method really does exist $method = $this->input->getCmd('method'); $this->assertMethodExists($method); /** @var MethodModel $model */ $model = $this->getModel('Method'); $model->setState('method', $method); // Pass the return URL to the view $returnURL = $this->input->getBase64('returnurl'); $viewLayout = $this->input->get('layout', 'default', 'string'); $view = $this->getView('Method', 'html'); $view->setLayout($viewLayout); $view->returnURL = $returnURL; $view->user = $user; $view->document = $this->app->getDocument(); $view->setModel($model, true); $event = new NotifyActionLog('onComUsersControllerMethodBeforeAdd', [$user, $method]); $this->app->getDispatcher()->dispatch($event->getName(), $event); $view->display(); } /** * Edit an existing MFA Method * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @throws \Exception * @since 4.2.0 */ public function edit($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = $this->getUserFactory()->loadUserById($userId); $this->assertCanEdit($user); // Also make sure the Method really does exist $id = $this->input->getInt('id'); $record = $this->assertValidRecordId($id, $user); if ($id <= 0) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } /** @var MethodModel $model */ $model = $this->getModel('Method'); $model->setState('id', $id); // Pass the return URL to the view $returnURL = $this->input->getBase64('returnurl'); $viewLayout = $this->input->get('layout', 'default', 'string'); $view = $this->getView('Method', 'html'); $view->setLayout($viewLayout); $view->returnURL = $returnURL; $view->user = $user; $view->document = $this->app->getDocument(); $view->setModel($model, true); $event = new NotifyActionLog('onComUsersControllerMethodBeforeEdit', [$id, $user]); $this->app->getDispatcher()->dispatch($event->getName(), $event); $view->display(); } /** * Regenerate backup codes * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @throws \Exception * @since 4.2.0 */ public function regenerateBackupCodes($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); $this->checkToken($this->input->getMethod()); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = $this->getUserFactory()->loadUserById($userId); $this->assertCanEdit($user); /** @var BackupcodesModel $model */ $model = $this->getModel('Backupcodes'); $model->regenerateBackupCodes($user); $backupCodesRecord = $model->getBackupCodesRecord($user); // Redirect $redirectUrl = 'index.php?option=com_users&task=method.edit&user_id=' . $userId . '&id=' . $backupCodesRecord->id; $returnURL = $this->input->getBase64('returnurl'); if (!empty($returnURL) && Uri::isInternal(base64_decode($returnURL))) { $redirectUrl .= '&returnurl=' . $returnURL; } $this->setRedirect(Route::_($redirectUrl, false)); $event = new NotifyActionLog('onComUsersControllerMethodAfterRegenerateBackupCodes'); $this->app->getDispatcher()->dispatch($event->getName(), $event); } /** * Delete an existing MFA Method * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @since 4.2.0 */ public function delete($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); $this->checkToken($this->input->getMethod()); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = $this->getUserFactory()->loadUserById($userId); $this->assertCanDelete($user); // Also make sure the Method really does exist $id = $this->input->getInt('id'); $record = $this->assertValidRecordId($id, $user); if ($id <= 0) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $type = null; $message = null; $event = new NotifyActionLog('onComUsersControllerMethodBeforeDelete', [$id, $user]); $this->app->getDispatcher()->dispatch($event->getName(), $event); try { $record->delete(); } catch (\Exception $e) { $message = $e->getMessage(); $type = 'error'; } // Redirect $url = Route::_('index.php?option=com_users&task=methods.display&user_id=' . $userId, false); $returnURL = $this->input->getBase64('returnurl'); if (!empty($returnURL) && Uri::isInternal(base64_decode($returnURL))) { $url = base64_decode($returnURL); } $this->setRedirect($url, $message, $type); } /** * Save the MFA Method * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @since 4.2.0 */ public function save($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); $this->checkToken($this->input->getMethod()); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = $this->getUserFactory()->loadUserById($userId); $this->assertCanEdit($user); // Redirect $url = Route::_('index.php?option=com_users&task=methods.display&user_id=' . $userId, false); $returnURL = $this->input->getBase64('returnurl'); if (!empty($returnURL) && Uri::isInternal(base64_decode($returnURL))) { $url = base64_decode($returnURL); } // The record must either be new (ID zero) or exist $id = $this->input->getInt('id', 0); $record = $this->assertValidRecordId($id, $user); // If it's a new record we need to read the Method from the request and update the (not yet created) record. if ($record->id == 0) { $methodName = $this->input->getCmd('method'); $this->assertMethodExists($methodName); $record->method = $methodName; } /** @var MethodModel $model */ $model = $this->getModel('Method'); // Ask the plugin to validate the input by calling onUserMultifactorSaveSetup $result = []; $input = $this->app->getInput(); $event = new NotifyActionLog('onComUsersControllerMethodBeforeSave', [$id, $user]); $this->app->getDispatcher()->dispatch($event->getName(), $event); try { $event = new SaveSetup($record, $input); $pluginResults = $this->app ->getDispatcher() ->dispatch($event->getName(), $event) ->getArgument('result', []); foreach ($pluginResults as $pluginResult) { $result = array_merge($result, $pluginResult); } } catch (\RuntimeException $e) { // Go back to the edit page $nonSefUrl = 'index.php?option=com_users&task=method.'; if ($id) { $nonSefUrl .= 'edit&id=' . (int) $id; } else { $nonSefUrl .= 'add&method=' . $record->method; } $nonSefUrl .= '&user_id=' . $userId; if (!empty($returnURL)) { $nonSefUrl .= '&returnurl=' . urlencode($returnURL); } $url = Route::_($nonSefUrl, false); $this->setRedirect($url, $e->getMessage(), 'error'); return; } // Update the record's options with the plugin response $title = $this->input->getString('title', null); $title = trim($title); if (empty($title)) { $method = $model->getMethod($record->method); $title = $method['display']; } // Update the record's "default" flag $default = $this->input->getBool('default', false); $record->title = $title; $record->options = $result; $record->default = $default ? 1 : 0; // Ask the model to save the record $saved = $record->store(); if (!$saved) { // Go back to the edit page $nonSefUrl = 'index.php?option=com_users&task=method.'; if ($id) { $nonSefUrl .= 'edit&id=' . (int) $id; } else { $nonSefUrl .= 'add'; } $nonSefUrl .= '&user_id=' . $userId; if (!empty($returnURL)) { $nonSefUrl .= '&returnurl=' . urlencode($returnURL); } $url = Route::_($nonSefUrl, false); $this->setRedirect($url, $record->getError(), 'error'); return; } // Method updated, destroy other active sessions UserHelper::destroyUserSessions($userId, true); $this->setRedirect($url); } /** * Assert that the provided ID is a valid record identified for the given user * * @param int $id Record ID to check * @param User|null $user User record. Null to use current user. * * @return MfaTable The loaded record * @since 4.2.0 */ private function assertValidRecordId($id, ?User $user = null): MfaTable { if (is_null($user)) { $user = $this->app->getIdentity() ?: $this->getUserFactory()->loadUserById(0); } /** @var MethodModel $model */ $model = $this->getModel('Method'); $model->setState('id', $id); $record = $model->getRecord($user); if (is_null($record) || ($record->id != $id) || ($record->user_id != $user->id)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } return $record; } /** * Assert that the user can add / edit MFA methods. * * @param User|null $user User record. Null to use current user. * * @return void * @throws \RuntimeException|\Exception * @since 4.2.0 */ private function assertCanEdit(?User $user = null): void { if (!MfaHelper::canAddEditMethod($user)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } /** * Assert that the user can delete MFA records / disable MFA. * * @param User|null $user User record. Null to use current user. * * @return void * @throws \RuntimeException|\Exception * @since 4.2.0 */ private function assertCanDelete(?User $user = null): void { if (!MfaHelper::canDeleteMethod($user)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } /** * Assert that the specified MFA Method exists, is activated and enabled for the current user * * @param string|null $method The Method to check * * @return void * @since 4.2.0 */ private function assertMethodExists(?string $method): void { /** @var MethodModel $model */ $model = $this->getModel('Method'); if (empty($method) || !$model->methodExists($method)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } /** * Assert that there is a logged in user. * * @return void * @since 4.2.0 */ private function assertLoggedInUser(): void { $user = $this->app->getIdentity() ?: $this->getUserFactory()->loadUserById(0); if ($user->guest) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } } PKAA#]��""7components/com_users/src/Controller/GroupController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Access\Access; use Joomla\CMS\MVC\Controller\FormController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User view level controller class. * * @since 1.6 */ class GroupController extends FormController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_GROUP'; /** * Method to check if you can save a new or existing record. * * Overrides Joomla\CMS\MVC\Controller\FormController::allowSave to check the core.admin permission. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 1.6 */ protected function allowSave($data, $key = 'id') { return ($this->app->getIdentity()->authorise('core.admin', $this->option) && parent::allowSave($data, $key)); } /** * Overrides Joomla\CMS\MVC\Controller\FormController::allowEdit * * Checks that non-Super Admins are not editing Super Admins. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 1.6 */ protected function allowEdit($data = [], $key = 'id') { // Check if this group is a Super Admin if (Access::checkGroup($data[$key], 'core.admin')) { // If I'm not a Super Admin, then disallow the edit. if (!$this->app->getIdentity()->authorise('core.admin')) { return false; } } return parent::allowEdit($data, $key); } } PKAA#]S���#�#9components/com_users/src/Controller/CaptiveController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Date\Date; use Joomla\CMS\Event\MultiFactor\NotifyActionLog; use Joomla\CMS\Event\MultiFactor\Validate; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\CMS\User\UserFactoryAwareInterface; use Joomla\CMS\User\UserFactoryAwareTrait; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Model\CaptiveModel; use Joomla\Input\Input; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Captive Multi-factor Authentication page controller * * @since 4.2.0 */ class CaptiveController extends BaseController implements UserFactoryAwareInterface { use UserFactoryAwareTrait; /** * Public constructor * * @param array $config Plugin configuration * @param MVCFactoryInterface|null $factory MVC Factory for the com_users component * @param CMSApplication|null $app CMS application object * @param Input|null $input Joomla CMS input object * * @since 4.2.0 */ public function __construct(array $config = [], MVCFactoryInterface $factory = null, ?CMSApplication $app = null, ?Input $input = null) { parent::__construct($config, $factory, $app, $input); $this->registerTask('captive', 'display'); } /** * Displays the captive login page * * @param boolean $cachable Ignored. This page is never cached. * @param boolean|array $urlparams Ignored. This page is never cached. * * @return void * @throws \Exception * @since 4.2.0 */ public function display($cachable = false, $urlparams = false): void { $user = $this->app->getIdentity() ?: $this->getUserFactory()->loadUserById(0); // Only allow logged in Users if ($user->guest) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } // Get the view object $viewLayout = $this->input->get('layout', 'default', 'string'); $view = $this->getView( 'Captive', 'html', '', [ 'base_path' => $this->basePath, 'layout' => $viewLayout, ] ); $view->document = $this->app->getDocument(); // If we're already logged in go to the site's home page if ((int) $this->app->getSession()->get('com_users.mfa_checked', 0) === 1) { $url = Route::_('index.php?option=com_users&task=methods.display', false); $this->setRedirect($url); } // Pass the model to the view /** @var CaptiveModel $model */ $model = $this->getModel('Captive'); $view->setModel($model, true); /** @var BackupcodesModel $codesModel */ $codesModel = $this->getModel('Backupcodes'); $view->setModel($codesModel, false); try { // Suppress all modules on the page except those explicitly allowed $model->suppressAllModules(); } catch (\Exception $e) { // If we can't kill the modules we can still survive. } // Pass the MFA record ID to the model $recordId = $this->input->getInt('record_id', null); $model->setState('record_id', $recordId); // Do not go through $this->display() because it overrides the model. $view->display(); } /** * Validate the MFA code entered by the user * * @param bool $cachable Ignored. This page is never cached. * @param array $urlparameters Ignored. This page is never cached. * * @return void * @throws \Exception * @since 4.2.0 */ public function validate($cachable = false, $urlparameters = []) { // CSRF Check $this->checkToken($this->input->getMethod()); // Get the MFA parameters from the request $recordId = $this->input->getInt('record_id', null); $code = $this->input->get('code', null, 'raw'); /** @var CaptiveModel $model */ $model = $this->getModel('Captive'); // Validate the MFA record $model->setState('record_id', $recordId); $record = $model->getRecord(); if (empty($record)) { $event = new NotifyActionLog('onComUsersCaptiveValidateInvalidMethod'); $this->app->getDispatcher()->dispatch($event->getName(), $event); throw new \RuntimeException(Text::_('COM_USERS_MFA_INVALID_METHOD'), 500); } if (!$model->checkTryLimit($record)) { // The try limit is reached, show error and return $captiveURL = Route::_('index.php?option=com_users&view=captive&task=select', false); $message = Text::_('COM_USERS_MFA_TRY_LIMIT_REACHED'); $this->setRedirect($captiveURL, $message, 'error'); $event = new NotifyActionLog('onComUsersCaptiveValidateTryLimitReached'); $this->app->getDispatcher()->dispatch($event->getName(), $event); return; } // Validate the code $user = $this->app->getIdentity() ?: $this->getUserFactory()->loadUserById(0); $event = new Validate($record, $user, $code); $results = $this->app ->getDispatcher() ->dispatch($event->getName(), $event) ->getArgument('result', []); $isValidCode = false; if ($record->method === 'backupcodes') { /** @var BackupcodesModel $codesModel */ $codesModel = $this->getModel('Backupcodes'); $results = [$codesModel->isBackupCode($code, $user)]; /** * This is required! Do not remove! * * There is a store() call below. It saves the in-memory MFA record to the database. That includes the * options key which contains the configuration of the Method. For backup codes, these are the actual codes * you can use. When we check for a backup code validity we also "burn" it, i.e. we remove it from the * options table and save that to the database. However, this DOES NOT update the $record here. Therefore * the call to saveRecord() would overwrite the database contents with a record that _includes_ the backup * code we had just burned. As a result the single use backup codes end up being multiple use. * * By doing a getRecord() here, right after we have "burned" any correct backup codes, we resolve this * issue. The loaded record will reflect the database contents where the options DO NOT include the code we * just used. Therefore the call to store() will result in the correct database state, i.e. the used backup * code being removed. */ $record = $model->getRecord(); } $isValidCode = array_reduce( $results, function (bool $carry, $result) { return $carry || boolval($result); }, false ); if (!$isValidCode) { // The code is wrong. Display an error and go back. $captiveURL = Route::_('index.php?option=com_users&view=captive&record_id=' . $recordId, false); $message = Text::_('COM_USERS_MFA_INVALID_CODE'); $this->setRedirect($captiveURL, $message, 'error'); $event = new NotifyActionLog('onComUsersCaptiveValidateFailed', [$record->title]); $this->app->getDispatcher()->dispatch($event->getName(), $event); return; } // Update the Last Used, UA and IP columns $jNow = Date::getInstance(); $record->last_used = $jNow->toSql(); $record->tries = 0; $record->last_try = null; $record->store(); // Flag the user as fully logged in $session = $this->app->getSession(); $session->set('com_users.mfa_checked', 1); $session->set('com_users.mandatory_mfa_setup', 0); // Get the return URL stored by the plugin in the session $returnUrl = $session->get('com_users.return_url', ''); // If the return URL is not set or not internal to this site redirect to the site's front page if (empty($returnUrl) || !Uri::isInternal($returnUrl)) { $returnUrl = Uri::base(); } $this->setRedirect($returnUrl); $event = new NotifyActionLog('onComUsersCaptiveValidateSuccess', [$record->title]); $this->app->getDispatcher()->dispatch($event->getName(), $event); } } PKAA#][����7components/com_users/src/Controller/LevelController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Access\Access; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\Router\Route; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User view level controller class. * * @since 1.6 */ class LevelController extends FormController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_LEVEL'; /** * Method to check if you can save a new or existing record. * * Overrides Joomla\CMS\MVC\Controller\FormController::allowSave to check the core.admin permission. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 1.6 */ protected function allowSave($data, $key = 'id') { return ($this->app->getIdentity()->authorise('core.admin', $this->option) && parent::allowSave($data, $key)); } /** * Overrides JControllerForm::allowEdit * * Checks that non-Super Admins are not editing Super Admins. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 3.8.8 */ protected function allowEdit($data = [], $key = 'id') { // Check for if Super Admin can edit $viewLevel = $this->getModel('Level', 'Administrator')->getItem((int) $data['id']); // If this group is super admin and this user is not super admin, canEdit is false if (!$this->app->getIdentity()->authorise('core.admin') && $viewLevel->rules && Access::checkGroup($viewLevel->rules[0], 'core.admin')) { $this->setMessage(Text::_('JLIB_APPLICATION_ERROR_EDIT_NOT_PERMITTED'), 'error'); $this->setRedirect( Route::_( 'index.php?option=' . $this->option . '&view=' . $this->view_list . $this->getRedirectToListAppend(), false ) ); return false; } return parent::allowEdit($data, $key); } /** * Removes an item. * * Overrides Joomla\CMS\MVC\Controller\FormController::delete to check the core.admin permission. * * @return void * * @since 1.6 */ public function delete() { // Check for request forgeries. $this->checkToken(); $ids = (array) $this->input->get('cid', [], 'int'); // Remove zero values resulting from input filter $ids = array_filter($ids); if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } elseif (empty($ids)) { $this->setMessage(Text::_('COM_USERS_NO_LEVELS_SELECTED'), 'warning'); } else { // Get the model. $model = $this->getModel(); // Remove the items. if ($model->delete($ids)) { $this->setMessage(Text::plural('COM_USERS_N_LEVELS_DELETED', count($ids))); } } $this->setRedirect('index.php?option=com_users&view=levels'); } } PKAA#]�N�;��8components/com_users/src/Controller/LevelsController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\MVC\Controller\AdminController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User view levels list controller class. * * @since 1.6 */ class LevelsController extends AdminController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_LEVELS'; /** * Proxy for getModel. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel The model. * * @since 1.6 */ public function getModel($name = 'Level', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } } PKAA#]|W�//6components/com_users/src/Controller/UserController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Access\Access; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User controller class. * * @since 1.6 */ class UserController extends FormController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_USER'; /** * Overrides Joomla\CMS\MVC\Controller\FormController::allowEdit * * Checks that non-Super Admins are not editing Super Admins. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean True if allowed, false otherwise. * * @since 1.6 */ protected function allowEdit($data = [], $key = 'id') { // Check if this person is a Super Admin if (Access::check($data[$key], 'core.admin')) { // If I'm not a Super Admin, then disallow the edit. if (!$this->app->getIdentity()->authorise('core.admin')) { return false; } } // Allow users to edit their own account if (isset($data[$key]) && (int) $this->app->getIdentity()->id === (int) $data[$key]) { return true; } return parent::allowEdit($data, $key); } /** * Override parent cancel to redirect when using status edit account. * * @param string $key The name of the primary key of the URL variable. * * @return boolean True if access level checks pass, false otherwise. * * @since 4.0.0 */ public function cancel($key = null) { $result = parent::cancel(); if ($return = $this->input->get('return', '', 'BASE64')) { $return = base64_decode($return); // Don't redirect to an external URL. if (!Uri::isInternal($return)) { $return = Uri::base(); } $this->app->redirect($return); } return $result; } /** * Override parent save to redirect when using status edit account. * * @param string $key The name of the primary key of the URL variable. * @param string $urlVar The name of the URL variable if different from the primary key (sometimes required to avoid router collisions). * * @return boolean True if successful, false otherwise. * * @since 4.0.0 */ public function save($key = null, $urlVar = null) { $result = parent::save($key, $urlVar); $task = $this->getTask(); if ($task === 'save' && $return = $this->input->get('return', '', 'BASE64')) { $return = base64_decode($return); // Don't redirect to an external URL. if (!Uri::isInternal($return)) { $return = Uri::base(); } $this->setRedirect($return); } // If a user has to renew a password but has no permission for users if ($task === 'save' && !$this->app->getIdentity()->authorise('core.manage', 'com_users')) { $this->setRedirect(Uri::base()); } return $result; } /** * Method to run batch operations. * * @param object $model The model. * * @return boolean True on success, false on failure * * @since 2.5 */ public function batch($model = null) { $this->checkToken(); // Set the model $model = $this->getModel('User', 'Administrator', []); // Preset the redirect $this->setRedirect(Route::_('index.php?option=com_users&view=users' . $this->getRedirectToListAppend(), false)); return parent::batch($model); } /** * Function that allows child controller access to model data after the data has been saved. * * @param BaseDatabaseModel $model The data model object. * @param array $validData The validated data. * * @return void * * @since 3.1 */ protected function postSaveHook(BaseDatabaseModel $model, $validData = []) { } } PKAA#]�7dd``8components/com_users/src/Controller/GroupsController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User groups list controller class. * * @since 1.6 */ class GroupsController extends AdminController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_GROUPS'; /** * Proxy for getModel. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return object The model. * * @since 1.6 */ public function getModel($name = 'Group', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Removes an item. * * Overrides Joomla\CMS\MVC\Controller\AdminController::delete to check the core.admin permission. * * @return void * * @since 1.6 */ public function delete() { if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } parent::delete(); } /** * Method to publish a list of records. * * Overrides Joomla\CMS\MVC\Controller\AdminController::publish to check the core.admin permission. * * @return void * * @since 1.6 */ public function publish() { if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } parent::publish(); } /** * Changes the order of one or more records. * * Overrides Joomla\CMS\MVC\Controller\AdminController::reorder to check the core.admin permission. * * @return boolean True on success * * @since 1.6 */ public function reorder() { if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } return parent::reorder(); } /** * Method to save the submitted ordering values for records. * * Overrides Joomla\CMS\MVC\Controller\AdminController::saveorder to check the core.admin permission. * * @return boolean True on success * * @since 1.6 */ public function saveorder() { if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } return parent::saveorder(); } /** * Check in of one or more records. * * Overrides Joomla\CMS\MVC\Controller\AdminController::checkin to check the core.admin permission. * * @return boolean True on success * * @since 1.6 */ public function checkin() { if (!$this->app->getIdentity()->authorise('core.admin', $this->option)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } return parent::checkin(); } } PKAA#]nm�7components/com_users/src/Controller/NotesController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\MVC\Controller\AdminController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User notes controller class. * * @since 2.5 */ class NotesController extends AdminController { /** * The prefix to use with controller messages. * * @var string * @since 2.5 */ protected $text_prefix = 'COM_USERS_NOTES'; /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel The model. * * @since 2.5 */ public function getModel($name = 'Note', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } } PKAA#]:�[� � :components/com_users/src/Controller/CallbackController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Event\MultiFactor\Callback; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Plugin\PluginHelper; use Joomla\Input\Input; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Multi-factor Authentication plugins' AJAX callback controller * * @since 4.2.0 */ class CallbackController extends BaseController { /** * Public constructor * * @param array $config Plugin configuration * @param MVCFactoryInterface|null $factory MVC Factory for the com_users component * @param CMSApplication|null $app CMS application object * @param Input|null $input Joomla CMS input object * * @since 4.2.0 */ public function __construct(array $config = [], MVCFactoryInterface $factory = null, ?CMSApplication $app = null, ?Input $input = null) { parent::__construct($config, $factory, $app, $input); $this->registerDefaultTask('callback'); } /** * Implement a callback feature, typically used for OAuth2 authentication * * @param bool $cachable Can this view be cached * @param array|bool $urlparams An array of safe url parameters and their variable types, for valid values see * {@link JFilterInput::clean()}. * * @return void * @since 4.2.0 */ public function callback($cachable = false, $urlparams = false): void { $app = $this->app; // Get the Method and make sure it's non-empty $method = $this->input->getCmd('method', ''); if (empty($method)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } PluginHelper::importPlugin('multifactorauth'); $event = new Callback($method); $this->app->getDispatcher()->dispatch($event->getName(), $event); /** * The first plugin to handle the request should either redirect or close the application. If we are still here * no plugin handled the request successfully. Show an error. */ throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } PKAA#]G�h6��7components/com_users/src/Controller/UsersController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Input\Input; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Response\JsonResponse; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users list controller class. * * @since 1.6 */ class UsersController extends AdminController { /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_USERS_USERS'; /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * @param CMSApplication $app The CMSApplication for the dispatcher * @param Input $input Input * * @since 1.6 * @see BaseController * @throws \Exception */ public function __construct($config = [], MVCFactoryInterface $factory = null, $app = null, $input = null) { parent::__construct($config, $factory, $app, $input); $this->registerTask('block', 'changeBlock'); $this->registerTask('unblock', 'changeBlock'); } /** * Proxy for getModel. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return object The model. * * @since 1.6 */ public function getModel($name = 'User', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Method to change the block status on a record. * * @return void * * @since 1.6 */ public function changeBlock() { // Check for request forgeries. $this->checkToken(); $ids = (array) $this->input->get('cid', [], 'int'); $values = ['block' => 1, 'unblock' => 0]; $task = $this->getTask(); $value = ArrayHelper::getValue($values, $task, 0, 'int'); // Remove zero values resulting from input filter $ids = array_filter($ids); if (empty($ids)) { $this->setMessage(Text::_('COM_USERS_USERS_NO_ITEM_SELECTED'), 'warning'); } else { // Get the model. $model = $this->getModel(); // Change the state of the records. if (!$model->block($ids, $value)) { $this->setMessage($model->getError(), 'error'); } else { if ($value == 1) { $this->setMessage(Text::plural('COM_USERS_N_USERS_BLOCKED', count($ids))); } elseif ($value == 0) { $this->setMessage(Text::plural('COM_USERS_N_USERS_UNBLOCKED', count($ids))); } } } $this->setRedirect('index.php?option=com_users&view=users'); } /** * Method to activate a record. * * @return void * * @since 1.6 */ public function activate() { // Check for request forgeries. $this->checkToken(); $ids = (array) $this->input->get('cid', [], 'int'); // Remove zero values resulting from input filter $ids = array_filter($ids); if (empty($ids)) { $this->setMessage(Text::_('COM_USERS_USERS_NO_ITEM_SELECTED'), 'error'); } else { // Get the model. $model = $this->getModel(); // Change the state of the records. if (!$model->activate($ids)) { $this->setMessage($model->getError(), 'error'); } else { $this->setMessage(Text::plural('COM_USERS_N_USERS_ACTIVATED', count($ids))); } } $this->setRedirect('index.php?option=com_users&view=users'); } /** * Method to get the number of active users * * @return void * * @since 4.0.0 */ public function getQuickiconContent() { $model = $this->getModel('Users'); $model->setState('filter.state', 0); $amount = (int) $model->getTotal(); $result = []; $result['amount'] = $amount; $result['sronly'] = Text::plural('COM_USERS_N_QUICKICON_SRONLY', $amount); $result['name'] = Text::plural('COM_USERS_N_QUICKICON', $amount); echo new JsonResponse($result); } } PKAA#]ż��9components/com_users/src/Controller/DisplayController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Router\Route; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users display controller. * * @since 1.6 */ class DisplayController extends BaseController { /** * The default view. * * @var string * @since 1.6 */ protected $default_view = 'users'; /** * Checks whether a user can see this view. * * @param string $view The view name. * * @return boolean * * @since 1.6 */ protected function canView($view) { $canDo = ContentHelper::getActions('com_users'); switch ($view) { // Special permissions. case 'groups': case 'group': case 'levels': case 'level': return $canDo->get('core.admin'); // Default permissions. default: return true; } } /** * Method to display a view. * * @param boolean $cachable If true, the view output will be cached * @param array $urlparams An array of safe URL parameters and their variable types, * for valid values see {@link \Joomla\CMS\Filter\InputFilter::clean()}. * * @return BaseController|boolean This object to support chaining or false on failure. * * @since 1.5 */ public function display($cachable = false, $urlparams = []) { $view = $this->input->get('view', 'users'); $layout = $this->input->get('layout', 'default'); $id = $this->input->getInt('id'); if (!$this->canView($view)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } // Check for edit form. if ($view == 'user' && $layout == 'edit' && !$this->checkEditId('com_users.edit.user', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_users&view=users', false)); return false; } elseif ($view == 'group' && $layout == 'edit' && !$this->checkEditId('com_users.edit.group', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_users&view=groups', false)); return false; } elseif ($view == 'level' && $layout == 'edit' && !$this->checkEditId('com_users.edit.level', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_users&view=levels', false)); return false; } elseif ($view == 'note' && $layout == 'edit' && !$this->checkEditId('com_users.edit.note', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_users&view=notes', false)); return false; } elseif (in_array($view, ['captive', 'callback', 'methods', 'method'])) { $controller = $this->factory->createController($view, 'Administrator', [], $this->app, $this->input); $task = $this->input->get('task', ''); return $controller->execute($task); } return parent::display($cachable, $urlparams); } } PKAA#]^���!!9components/com_users/src/Controller/MethodsController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Event\MultiFactor\NotifyActionLog; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\CMS\User\UserFactoryAwareInterface; use Joomla\CMS\User\UserFactoryAwareTrait; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Model\MethodsModel; use Joomla\Input\Input; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Multi-factor Authentication methods selection and management controller * * @since 4.2.0 */ class MethodsController extends BaseController implements UserFactoryAwareInterface { use UserFactoryAwareTrait; /** * Public constructor * * @param array $config Plugin configuration * @param MVCFactoryInterface|null $factory MVC Factory for the com_users component * @param CMSApplication|null $app CMS application object * @param Input|null $input Joomla CMS input object * * @since 4.2.0 */ public function __construct($config = [], MVCFactoryInterface $factory = null, ?CMSApplication $app = null, ?Input $input = null) { // We have to tell Joomla what is the name of the view, otherwise it defaults to the name of the *component*. $config['default_view'] = 'Methods'; parent::__construct($config, $factory, $app, $input); } /** * Disable Multi-factor Authentication for the current user * * @param bool $cachable Can this view be cached * @param array $urlparams An array of safe url parameters and their variable types, for valid values see * {@link JFilterInput::clean()}. * * @return void * @since 4.2.0 */ public function disable($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); $this->checkToken($this->input->getMethod()); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = ($userId === null) ? $this->app->getIdentity() : $this->getUserFactory()->loadUserById($userId); $user = $user ?? $this->getUserFactory()->loadUserById(0); if (!MfaHelper::canDeleteMethod($user)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } // Delete all MFA Methods for the user /** @var MethodsModel $model */ $model = $this->getModel('Methods'); $type = null; $message = null; $event = new NotifyActionLog('onComUsersControllerMethodsBeforeDisable', [$user]); $this->app->getDispatcher()->dispatch($event->getName(), $event); try { $model->deleteAll($user); } catch (\Exception $e) { $message = $e->getMessage(); $type = 'error'; } // Redirect $url = Route::_('index.php?option=com_users&task=methods.display&user_id=' . $userId, false); $returnURL = $this->input->getBase64('returnurl'); if (!empty($returnURL) && Uri::isInternal(base64_decode($returnURL))) { $url = base64_decode($returnURL); } $this->setRedirect($url, $message, $type); } /** * List all available Multi-factor Authentication Methods available and guide the user to setting them up * * @param bool $cachable Can this view be cached * @param array $urlparams An array of safe url parameters and their variable types, for valid values see * {@link JFilterInput::clean()}. * * @return void * @since 4.2.0 */ public function display($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = ($userId === null) ? $this->app->getIdentity() : $this->getUserFactory()->loadUserById($userId); $user = $user ?? $this->getUserFactory()->loadUserById(0); if (!MfaHelper::canShowConfigurationInterface($user)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $returnURL = $this->input->getBase64('returnurl'); $viewLayout = $this->input->get('layout', 'default', 'string'); $view = $this->getView('Methods', 'html'); $view->setLayout($viewLayout); $view->returnURL = $returnURL; $view->user = $user; $view->document = $this->app->getDocument(); $methodsModel = $this->getModel('Methods'); $view->setModel($methodsModel, true); $backupCodesModel = $this->getModel('Backupcodes'); $view->setModel($backupCodesModel, false); $view->display(); } /** * Disable Multi-factor Authentication for the current user * * @param bool $cachable Can this view be cached * @param array $urlparams An array of safe url parameters and their variable types, for valid values see * {@link JFilterInput::clean()}. * * @return void * @since 4.2.0 */ public function doNotShowThisAgain($cachable = false, $urlparams = []): void { $this->assertLoggedInUser(); $this->checkToken($this->input->getMethod()); // Make sure I am allowed to edit the specified user $userId = $this->input->getInt('user_id', null); $user = ($userId === null) ? $this->app->getIdentity() : $this->getUserFactory()->loadUserById($userId); $user = $user ?? $this->getUserFactory()->loadUserById(0); if (!MfaHelper::canAddEditMethod($user)) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $event = new NotifyActionLog('onComUsersControllerMethodsBeforeDoNotShowThisAgain', [$user]); $this->app->getDispatcher()->dispatch($event->getName(), $event); /** @var MethodsModel $model */ $model = $this->getModel('Methods'); $model->setFlag($user, true); // Redirect $url = Uri::base(); $returnURL = $this->input->getBase64('returnurl'); if (!empty($returnURL) && Uri::isInternal(base64_decode($returnURL))) { $url = base64_decode($returnURL); } $this->setRedirect($url); } /** * Assert that there is a user currently logged in * * @return void * @since 4.2.0 */ private function assertLoggedInUser(): void { $user = $this->app->getIdentity() ?: $this->getUserFactory()->loadUserById(0); if ($user->guest) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } } PKAA#]@�_qq6components/com_users/src/Controller/MailController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Router\Route; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users mail controller. * * @since 1.6 */ class MailController extends BaseController { /** * Send the mail * * @return void * * @since 1.6 */ public function send() { // Redirect to admin index if mass mailer disabled in conf if ($this->app->get('massmailoff', 0) == 1) { $this->app->redirect(Route::_('index.php', false)); } // Check for request forgeries. $this->checkToken('request'); $model = $this->getModel('Mail'); if ($model->send()) { $type = 'message'; } else { $type = 'error'; } $msg = $model->getError(); $this->setRedirect('index.php?option=com_users&view=mail', $msg, $type); } /** * Cancel the mail * * @return void * * @since 1.6 */ public function cancel() { // Check for request forgeries. $this->checkToken('request'); // Clear data from session. $this->app->setUserState('com_users.display.mail.data', null); $this->setRedirect('index.php?option=com_users&view=users'); } } PKAA#]&�T��6components/com_users/src/Controller/NoteController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Controller; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\Versioning\VersionableControllerTrait; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User note controller class. * * @since 2.5 */ class NoteController extends FormController { use VersionableControllerTrait; /** * The prefix to use with controller messages. * * @var string * @since 2.5 */ protected $text_prefix = 'COM_USERS_NOTE'; /** * Gets the URL arguments to append to an item redirect. * * @param integer $recordId The primary key id for the item. * @param string $key The name of the primary key variable. * * @return string The arguments to append to the redirect URL. * * @since 2.5 */ protected function getRedirectToItemAppend($recordId = null, $key = 'id') { $append = parent::getRedirectToItemAppend($recordId, $key); $userId = $this->input->get('u_id', 0, 'int'); if ($userId) { $append .= '&u_id=' . $userId; } return $append; } } PKAA#]�mmVAA2components/com_users/src/View/Methods/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Methods; use Joomla\CMS\Event\MultiFactor\NotifyActionLog; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\DataShape\MethodDescriptor; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Model\MethodsModel; use Joomla\Component\Users\Administrator\View\SiteTemplateTrait; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View for Multi-factor Authentication methods list page * * @since 4.2.0 */ class HtmlView extends BaseHtmlView { use SiteTemplateTrait; /** * Is this an administrator page? * * @var boolean * @since 4.2.0 */ public $isAdmin = false; /** * The MFA Methods available for this user * * @var array * @since 4.2.0 */ public $methods = []; /** * The return URL to use for all links and forms * * @var string * @since 4.2.0 */ public $returnURL = null; /** * Are there any active MFA Methods at all? * * @var boolean * @since 4.2.0 */ public $mfaActive = false; /** * Which Method has the default record? * * @var string * @since 4.2.0 */ public $defaultMethod = ''; /** * The user object used to display this page * * @var User * @since 4.2.0 */ public $user = null; /** * Is this page part of the mandatory Multi-factor Authentication setup? * * @var boolean * @since 4.2.0 */ public $isMandatoryMFASetup = false; /** * Execute and display a template script. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @throws \Exception * @see \JViewLegacy::loadTemplate() * @since 4.2.0 */ public function display($tpl = null): void { $this->setSiteTemplateStyle(); $app = Factory::getApplication(); if (empty($this->user)) { $this->user = $this->getCurrentUser(); } /** @var MethodsModel $model */ $model = $this->getModel(); if ($this->getLayout() !== 'firsttime') { $this->setLayout('default'); } $this->methods = $model->getMethods($this->user); $this->isAdmin = $app->isClient('administrator'); $activeRecords = 0; foreach ($this->methods as $methodName => $method) { $methodActiveRecords = count($method['active']); if (!$methodActiveRecords) { continue; } $activeRecords += $methodActiveRecords; $this->mfaActive = true; foreach ($method['active'] as $record) { if ($record->default) { $this->defaultMethod = $methodName; break; } } } // If there are no backup codes yet we should create new ones /** @var BackupcodesModel $model */ $model = $this->getModel('backupcodes'); $backupCodes = $model->getBackupCodes($this->user); if ($activeRecords && empty($backupCodes)) { $model->regenerateBackupCodes($this->user); } $backupCodesRecord = $model->getBackupCodesRecord($this->user); if (!is_null($backupCodesRecord)) { $this->methods = array_merge( [ 'backupcodes' => new MethodDescriptor( [ 'name' => 'backupcodes', 'display' => Text::_('COM_USERS_USER_BACKUPCODES'), 'shortinfo' => Text::_('COM_USERS_USER_BACKUPCODES_DESC'), 'image' => 'media/com_users/images/emergency.svg', 'canDisable' => false, 'active' => [$backupCodesRecord], ] ), ], $this->methods ); } $this->isMandatoryMFASetup = $activeRecords === 0 && $app->getSession()->get('com_users.mandatory_mfa_setup', 0) === 1; // Back-end: always show a title in the 'title' module position, not in the page body if ($this->isAdmin) { ToolbarHelper::title(Text::_('COM_USERS_MFA_LIST_PAGE_HEAD'), 'users user-lock'); if (Factory::getApplication()->getIdentity()->authorise('core.manage', 'com_users')) { $toolbar = Toolbar::getInstance(); $arrow = Factory::getApplication()->getLanguage()->isRtl() ? 'arrow-right' : 'arrow-left'; $toolbar->link('JTOOLBAR_BACK', 'index.php?option=com_users') ->icon('icon-' . $arrow); } } // Display the view parent::display($tpl); $event = new NotifyActionLog('onComUsersViewMethodsAfterDisplay', [$this]); Factory::getApplication()->getDispatcher()->dispatch($event->getName(), $event); Text::script('JGLOBAL_CONFIRM_DELETE'); } } PKAA#]FK�$��0components/com_users/src/View/Group/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Group; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View to edit a user group. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The item data. * * @var object * @since 1.6 */ protected $item; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->state = $this->get('State'); $this->item = $this->get('Item'); $this->form = $this->get('Form'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 * @throws \Exception */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); $isNew = ($this->item->id == 0); $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_($isNew ? 'COM_USERS_VIEW_NEW_GROUP_TITLE' : 'COM_USERS_VIEW_EDIT_GROUP_TITLE'), 'users-cog groups-add'); if ($canDo->get('core.edit') || $canDo->get('core.create')) { $toolbar->apply('group.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($canDo, $isNew) { if ($canDo->get('core.edit') || $canDo->get('core.create')) { $childBar->save('group.save'); } if ($canDo->get('core.create')) { $childBar->save2new('group.save2new'); } // If an existing item, can save to a copy. if (!$isNew && $canDo->get('core.create')) { $childBar->save2copy('group.save2copy'); } } ); if (empty($this->item->id)) { $toolbar->cancel('group.cancel', 'JTOOLBAR_CANCEL'); } else { $toolbar->cancel('group.cancel'); } $toolbar->divider(); $toolbar->help('Users:_New_or_Edit_Group'); } } PKAA#]��R1��1components/com_users/src/View/Groups/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Groups; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of user groups. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The item data. * * @var object * @since 1.6 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 1.6 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form * * @since 4.0.0 */ public $filterForm; /** * The active search filters * * @var array * @since 4.0.0 */ public $activeFilters; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_('COM_USERS_VIEW_GROUPS_TITLE'), 'users-cog groups'); if ($canDo->get('core.create')) { $toolbar->addNew('group.add'); } if ($canDo->get('core.delete')) { $toolbar->delete('groups.delete') ->message('JGLOBAL_CONFIRM_DELETE'); $toolbar->divider(); } if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); $toolbar->divider(); } $toolbar->help('Users:_Groups'); } } PKAA#]Ņ�mm0components/com_users/src/View/Users/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Users; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Button\DropdownButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\Database\DatabaseDriver; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of users. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The item data. * * @var object * @since 1.6 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 1.6 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * A Form instance with filter fields. * * @var \Joomla\CMS\Form\Form * * @since 3.6.3 */ public $filterForm; /** * An array with active filters. * * @var array * @since 3.6.3 */ public $activeFilters; /** * An ACL object to verify user rights. * * @var CMSObject * @since 3.6.3 */ protected $canDo; /** * An instance of DatabaseDriver. * * @var DatabaseDriver * @since 3.6.3 * * @deprecated 4.3 will be removed in 6.0 * Will be removed without replacement use database from the container instead * Example: Factory::getContainer()->get(DatabaseInterface::class); */ protected $db; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->canDo = ContentHelper::getActions('com_users'); $this->db = Factory::getDbo(); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = $this->canDo; $user = $this->getCurrentUser(); // Get the toolbar object instance $toolbar = Toolbar::getInstance('toolbar'); ToolbarHelper::title(Text::_('COM_USERS_VIEW_USERS_TITLE'), 'users user'); if ($canDo->get('core.create')) { $toolbar->addNew('user.add'); } if ($canDo->get('core.edit.state') || $canDo->get('core.admin')) { /** @var DropdownButton $dropdown */ $dropdown = $toolbar->dropdownButton('status-group', 'JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('icon-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); $childBar->publish('users.activate', 'COM_USERS_TOOLBAR_ACTIVATE', true); $childBar->unpublish('users.block', 'COM_USERS_TOOLBAR_BLOCK', true); $childBar->standardButton('unblock', 'COM_USERS_TOOLBAR_UNBLOCK', 'users.unblock') ->listCheck(true); // Add a batch button if ( $user->authorise('core.create', 'com_users') && $user->authorise('core.edit', 'com_users') && $user->authorise('core.edit.state', 'com_users') ) { $childBar->popupButton('batch', 'JTOOLBAR_BATCH') ->selector('collapseModal') ->listCheck(true); } if ($canDo->get('core.delete')) { $childBar->delete('users.delete', 'JTOOLBAR_DELETE') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } } if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); } $toolbar->help('Users'); } } PKAA#]�vm�0components/com_users/src/View/Notes/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Notes; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Button\DropdownButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\CMS\User\User; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User notes list view * * @since 2.5 */ class HtmlView extends BaseHtmlView { /** * A list of user note objects. * * @var array * @since 2.5 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 2.5 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 2.5 */ protected $state; /** * The model state. * * @var User * @since 2.5 */ protected $user; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form * * @since 4.0.0 */ public $filterForm; /** * The active search filters * * @var array * @since 4.0.0 */ public $activeFilters; /** * Is this view an Empty State * * @var boolean * @since 4.0.0 */ private $isEmptyState = false; /** * Override the display method for the view. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @since 2.5 */ public function display($tpl = null) { // Initialise view variables. $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->user = $this->get('User'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); if (!\count($this->items) && $this->isEmptyState = $this->get('IsEmptyState')) { $this->setLayout('emptystate'); } // Check for errors. if (\count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } // Turn parameters into registry objects foreach ($this->items as $item) { $item->cparams = new Registry($item->category_params); } $this->addToolbar(); parent::display($tpl); } /** * Display the toolbar. * * @return void * * @since 2.5 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_users', 'category', $this->state->get('filter.category_id')); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_('COM_USERS_VIEW_NOTES_TITLE'), 'users user'); if ($canDo->get('core.create')) { $toolbar->addNew('note.add'); } if (!$this->isEmptyState && ($canDo->get('core.edit.state') || $canDo->get('core.admin'))) { /** @var DropdownButton $dropdown */ $dropdown = $toolbar->dropdownButton('status-group', 'JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('icon-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.edit.state')) { $childBar->publish('notes.publish')->listCheck(true); $childBar->unpublish('notes.unpublish')->listCheck(true); $childBar->archive('notes.archive')->listCheck(true); $childBar->checkin('notes.checkin')->listCheck(true); } if ($this->state->get('filter.published') != -2 && $canDo->get('core.edit.state')) { $childBar->trash('notes.trash'); } } if (!$this->isEmptyState && $this->state->get('filter.published') == -2 && $canDo->get('core.delete')) { $toolbar->delete('notes.delete', 'JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); } $toolbar->help('User_Notes'); } } PKAA#]F�C�/components/com_users/src/View/User/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\User; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\CMS\User\UserFactoryAwareInterface; use Joomla\CMS\User\UserFactoryAwareTrait; use Joomla\Component\Users\Administrator\Helper\Mfa; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User view class. * * @since 1.5 */ class HtmlView extends BaseHtmlView implements UserFactoryAwareInterface { use UserFactoryAwareTrait; /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The active item * * @var object */ protected $item; /** * Gets the available groups * * @var array */ protected $grouplist; /** * The groups this user is assigned to * * @var array * @since 1.6 */ protected $groups; /** * The model state * * @var CMSObject */ protected $state; /** * The Multi-factor Authentication configuration interface for the user. * * @var string|null * @since 4.2.0 */ protected $mfaConfigurationUI; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @since 1.5 */ public function display($tpl = null) { // If no item found, dont show the edit screen, redirect with message if (false === $this->item = $this->get('Item')) { $app = Factory::getApplication(); $app->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_NOT_EXIST'), 'error'); $app->redirect('index.php?option=com_users&view=users'); } $this->form = $this->get('Form'); $this->state = $this->get('State'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } // Prevent user from modifying own group(s) $user = Factory::getApplication()->getIdentity(); if ((int) $user->id != (int) $this->item->id || $user->authorise('core.admin')) { $this->grouplist = $this->get('Groups'); $this->groups = $this->get('AssignedGroups'); } $this->form->setValue('password', null); $this->form->setValue('password2', null); $userBeingEdited = $this->getUserFactory()->loadUserById($this->item->id); if ($this->item->id > 0 && (int) $userBeingEdited->id == (int) $this->item->id) { try { $this->mfaConfigurationUI = Mfa::canShowConfigurationInterface($userBeingEdited) ? Mfa::getConfigurationInterface($userBeingEdited) : ''; } catch (\Exception $e) { // In case something goes really wrong with the plugins; prevents hard breaks. $this->mfaConfigurationUI = null; } } parent::display($tpl); $this->addToolbar(); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 * @throws \Exception */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); $user = Factory::getApplication()->getIdentity(); $canDo = ContentHelper::getActions('com_users'); $isNew = ($this->item->id == 0); $isProfile = $this->item->id == $user->id; $toolbar = Toolbar::getInstance(); ToolbarHelper::title( Text::_( $isNew ? 'COM_USERS_VIEW_NEW_USER_TITLE' : ($isProfile ? 'COM_USERS_VIEW_EDIT_PROFILE_TITLE' : 'COM_USERS_VIEW_EDIT_USER_TITLE') ), 'user ' . ($isNew ? 'user-add' : ($isProfile ? 'user-profile' : 'user-edit')) ); if ($canDo->get('core.edit') || $canDo->get('core.create') || $isProfile) { $toolbar->apply('user.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($canDo, $isProfile) { if ($canDo->get('core.edit') || $canDo->get('core.create') || $isProfile) { $childBar->save('user.save'); } if ($canDo->get('core.create') && $canDo->get('core.manage')) { $childBar->save2new('user.save2new'); } } ); if (empty($this->item->id)) { $toolbar->cancel('user.cancel', 'JTOOLBAR_CANCEL'); } else { $toolbar->cancel('user.cancel'); } $toolbar->divider(); $toolbar->help('Users:_Edit_Profile'); } } PKAA#]�^n�< < 5components/com_users/src/View/Debuggroup/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Debuggroup; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of User Group ACL permissions. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * List of component actions * * @var array */ protected $actions; /** * The item data. * * @var object * @since 1.6 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 1.6 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * The id and title for the user group. * * @var \stdClass * @since 4.0.0 */ protected $group; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form */ public $filterForm; /** * The active search filters * * @var array */ public $activeFilters; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { // Access check. if (!$this->getCurrentUser()->authorise('core.manage', 'com_users')) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $this->actions = $this->get('DebugActions'); $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->group = $this->get('Group'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::sprintf('COM_USERS_VIEW_DEBUG_GROUP_TITLE', $this->group->id, $this->escape($this->group->title)), 'users groups'); $toolbar->cancel('group.cancel'); if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); $toolbar->divider(); } $toolbar->help('Permissions_for_Group'); } } PKAA#]�^g��1components/com_users/src/View/Levels/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Levels; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of view levels. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The item data. * * @var object * @since 1.6 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 1.6 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form * * @since 4.0.0 */ public $filterForm; /** * The active search filters * * @var array * @since 4.0.0 */ public $activeFilters; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_('COM_USERS_VIEW_LEVELS_TITLE'), 'user-lock levels'); if ($canDo->get('core.create')) { $toolbar->addNew('level.add'); } if ($canDo->get('core.delete')) { $toolbar->delete('level.delete') ->message('JGLOBAL_CONFIRM_DELETE'); $toolbar->divider(); } if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); $toolbar->divider(); } $toolbar->help('Users:_Viewing_Access_Levels'); } } PKAA#]�ǔI��/components/com_users/src/View/Note/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Note; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User note edit view * * @since 2.5 */ class HtmlView extends BaseHtmlView { /** * The edit form. * * @var \Joomla\CMS\Form\Form * * @since 2.5 */ protected $form; /** * The item data. * * @var object * @since 2.5 */ protected $item; /** * The model state. * * @var CMSObject * @since 2.5 */ protected $state; /** * Override the display method for the view. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @since 2.5 * @throws \Exception */ public function display($tpl = null) { // Initialise view variables. $this->state = $this->get('State'); $this->item = $this->get('Item'); $this->form = $this->get('Form'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } parent::display($tpl); $this->addToolbar(); } /** * Display the toolbar. * * @return void * * @since 2.5 * @throws \Exception */ protected function addToolbar() { $input = Factory::getApplication()->getInput(); $input->set('hidemainmenu', 1); $user = $this->getCurrentUser(); $isNew = ($this->item->id == 0); $checkedOut = !(is_null($this->item->checked_out) || $this->item->checked_out == $user->get('id')); $toolbar = Toolbar::getInstance(); // Since we don't track these assets at the item level, use the category id. $canDo = ContentHelper::getActions('com_users', 'category', $this->item->catid); ToolbarHelper::title(Text::_('COM_USERS_NOTES'), 'users user'); // If not checked out, can save the item. if (!$checkedOut && ($canDo->get('core.edit') || count($user->getAuthorisedCategories('com_users', 'core.create')))) { $toolbar->apply('note.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($checkedOut, $canDo, $user, $isNew) { // If not checked out, can save the item. if (!$checkedOut && ($canDo->get('core.edit') || count($user->getAuthorisedCategories('com_users', 'core.create')))) { $childBar->save('note.save'); } if (!$checkedOut && count($user->getAuthorisedCategories('com_users', 'core.create'))) { $childBar->save2new('note.save2new'); } // If an existing item, can save to a copy. if (!$isNew && (count($user->getAuthorisedCategories('com_users', 'core.create')) > 0)) { $childBar->save2copy('note.save2copy'); } } ); if (empty($this->item->id)) { $toolbar->cancel('note.cancel', 'JTOOLBAR_CANCEL'); } else { $toolbar->cancel('note.cancel'); if (ComponentHelper::isEnabled('com_contenthistory') && $this->state->params->get('save_history', 0) && $canDo->get('core.edit')) { $toolbar->versions('com_users.note', $this->item->id); } } $toolbar->divider(); $toolbar->help('User_Notes:_New_or_Edit'); } } PKAA#]��ף�3components/com_users/src/View/SiteTemplateTrait.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Dynamically modify the frontend template when showing a MFA captive page. * * @since 4.2.0 */ trait SiteTemplateTrait { /** * Set a specific site template style in the frontend application * * @return void * @throws \Exception * @since 4.2.0 */ private function setSiteTemplateStyle(): void { $app = Factory::getApplication(); $templateStyle = (int) ComponentHelper::getParams('com_users')->get('captive_template', ''); if (empty($templateStyle) || !$app->isClient('site')) { return; } $itemId = $app->getInput()->get('Itemid'); if (!empty($itemId)) { return; } $app->getInput()->set('templateStyle', $templateStyle); try { $refApp = new \ReflectionObject($app); $refTemplate = $refApp->getProperty('template'); $refTemplate->setAccessible(true); $refTemplate->setValue($app, null); } catch (\ReflectionException $e) { return; } $template = $app->getTemplate(true); $app->set('theme', $template->template); $app->set('themeParams', $template->params); } } PKAA#]�H!(��/components/com_users/src/View/Mail/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Mail; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Router\Route; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users mail view. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @throws \Exception */ public function display($tpl = null) { // Redirect to admin index if mass mailer disabled in conf if (Factory::getApplication()->get('massmailoff', 0) == 1) { Factory::getApplication()->redirect(Route::_('index.php', false)); } // Get data from the model $this->form = $this->get('Form'); $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 * @throws \Exception */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); ToolbarHelper::title(Text::_('COM_USERS_MASS_MAIL'), 'users massmail'); $toolbar = Toolbar::getInstance(); $toolbar->standardButton('COM_USERS_TOOLBAR_MAIL_SEND_MAIL', 'COM_USERS_TOOLBAR_MAIL_SEND_MAIL', 'mail.send') ->icon('icon-envelope') ->formValidation(true); $toolbar->cancel('mail.cancel', 'JTOOLBAR_CANCEL'); $toolbar->divider(); $toolbar->preferences('com_users'); $toolbar->divider(); $toolbar->help('Mass_Mail_Users'); } } PKAA#]4��3 3 4components/com_users/src/View/Debuguser/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Debuguser; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\CMS\User\User; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of User ACL permissions. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * List of component actions * * @var array */ protected $actions; /** * The item data. * * @var object * @since 1.6 */ protected $items; /** * The pagination object. * * @var \Joomla\CMS\Pagination\Pagination * @since 1.6 */ protected $pagination; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * The user object of the user being debugged. * * @var User */ protected $user; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form */ public $filterForm; /** * The active search filters * * @var array */ public $activeFilters; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { // Access check. if (!$this->getCurrentUser()->authorise('core.manage', 'com_users')) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $this->actions = $this->get('DebugActions'); $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->user = $this->get('User'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::sprintf('COM_USERS_VIEW_DEBUG_USER_TITLE', $this->user->id, $this->escape($this->user->name)), 'users user'); $toolbar->cancel('user.cancel'); if ($canDo->get('core.admin') || $canDo->get('core.options')) { $toolbar->preferences('com_users'); $toolbar->divider(); } $toolbar->help('Permissions_for_User'); } } PKAA#]V�$ee2components/com_users/src/View/Captive/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Captive; use Joomla\CMS\Event\MultiFactor\BeforeDisplayMethods; use Joomla\CMS\Event\MultiFactor\NotifyActionLog; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Toolbar\Button\BasicButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Model\CaptiveModel; use Joomla\Component\Users\Administrator\View\SiteTemplateTrait; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View for Multi-factor Authentication captive page * * @since 4.2.0 */ class HtmlView extends BaseHtmlView { use SiteTemplateTrait; /** * The MFA Method records for the current user which correspond to enabled plugins * * @var array * @since 4.2.0 */ public $records = []; /** * The currently selected MFA Method record against which we'll be authenticating * * @var null|\stdClass * @since 4.2.0 */ public $record = null; /** * The Captive MFA page's rendering options * * @var array|null * @since 4.2.0 */ public $renderOptions = null; /** * The title to display at the top of the page * * @var string * @since 4.2.0 */ public $title = ''; /** * Is this an administrator page? * * @var boolean * @since 4.2.0 */ public $isAdmin = false; /** * Does the currently selected Method allow authenticating against all of its records? * * @var boolean * @since 4.2.0 */ public $allowEntryBatching = false; /** * All enabled MFA Methods (plugins) * * @var array * @since 4.2.0 */ public $mfaMethods; /** * Execute and display a template script. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void A string if successful, otherwise an Error object. * * @throws \Exception * @since 4.2.0 */ public function display($tpl = null) { $this->setSiteTemplateStyle(); $app = Factory::getApplication(); $user = $this->getCurrentUser(); PluginHelper::importPlugin('multifactorauth'); $event = new BeforeDisplayMethods($user); $app->getDispatcher()->dispatch($event->getName(), $event); /** @var CaptiveModel $model */ $model = $this->getModel(); // Load data from the model $this->isAdmin = $app->isClient('administrator'); $this->records = $this->get('records'); $this->record = $this->get('record'); $this->mfaMethods = MfaHelper::getMfaMethods(); if (!empty($this->records)) { /** @var BackupcodesModel $codesModel */ $codesModel = $this->getModel('Backupcodes'); $backupCodesRecord = $codesModel->getBackupCodesRecord(); if (!is_null($backupCodesRecord)) { $backupCodesRecord->title = Text::_('COM_USERS_USER_BACKUPCODES'); $this->records[] = $backupCodesRecord; } } // If we only have one record there's no point asking the user to select a MFA Method if (empty($this->record) && !empty($this->records)) { // Default to the first record $this->record = reset($this->records); // If we have multiple records try to make this record the default if (count($this->records) > 1) { foreach ($this->records as $record) { if ($record->default) { $this->record = $record; break; } } } } // Set the correct layout based on the availability of a MFA record $this->setLayout('default'); // If we have no record selected or explicitly asked to run the 'select' task use the correct layout if (is_null($this->record) || ($model->getState('task') == 'select')) { $this->setLayout('select'); } switch ($this->getLayout()) { case 'select': $this->allowEntryBatching = 1; $event = new NotifyActionLog('onComUsersCaptiveShowSelect', []); Factory::getApplication()->getDispatcher()->dispatch($event->getName(), $event); break; case 'default': default: $this->renderOptions = $model->loadCaptiveRenderOptions($this->record); $this->allowEntryBatching = $this->renderOptions['allowEntryBatching'] ?? 0; $event = new NotifyActionLog( 'onComUsersCaptiveShowCaptive', [ $this->escape($this->record->title), ] ); Factory::getApplication()->getDispatcher()->dispatch($event->getName(), $event); break; } // Which title should I use for the page? $this->title = $this->get('PageTitle'); // Back-end: always show a title in the 'title' module position, not in the page body if ($this->isAdmin) { ToolbarHelper::title(Text::_('COM_USERS_USER_MULTIFACTOR_AUTH'), 'users user-lock'); $this->title = ''; } if ($this->isAdmin && $this->getLayout() === 'default') { $bar = Toolbar::getInstance(); $button = (new BasicButton('user-mfa-submit')) ->text($this->renderOptions['submit_text']) ->icon($this->renderOptions['submit_icon']); $bar->appendButton($button); $button = (new BasicButton('user-mfa-logout')) ->text('COM_USERS_MFA_LOGOUT') ->buttonClass('btn btn-danger') ->icon('icon icon-lock'); $bar->appendButton($button); if (count($this->records) > 1) { $arrow = Factory::getApplication()->getLanguage()->isRtl() ? 'arrow-right' : 'arrow-left'; $button = (new BasicButton('user-mfa-choose-another')) ->text('COM_USERS_MFA_USE_DIFFERENT_METHOD') ->icon('icon-' . $arrow); $bar->appendButton($button); } } // Display the view parent::display($tpl); } } PKAA#]�/���0components/com_users/src/View/Level/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Level; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View to edit a user view level. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The item data. * * @var object * @since 1.6 */ protected $item; /** * The model state. * * @var CMSObject * @since 1.6 */ protected $state; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->form = $this->get('Form'); $this->item = $this->get('Item'); $this->state = $this->get('State'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 * @throws \Exception */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); $isNew = ($this->item->id == 0); $canDo = ContentHelper::getActions('com_users'); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_($isNew ? 'COM_USERS_VIEW_NEW_LEVEL_TITLE' : 'COM_USERS_VIEW_EDIT_LEVEL_TITLE'), 'user-lock levels-add'); if ($canDo->get('core.edit') || $canDo->get('core.create')) { $toolbar->apply('level.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($canDo, $isNew) { if ($canDo->get('core.edit') || $canDo->get('core.create')) { $childBar->save('level.save'); } if ($canDo->get('core.create')) { $childBar->save2new('level.save2new'); } // If an existing item, can save to a copy. if (!$isNew && $canDo->get('core.create')) { $childBar->save2copy('level.save2copy'); } } ); if (empty($this->item->id)) { $toolbar->cancel('level.cancel', 'JTOOLBAR_CANCEL'); } else { $toolbar->cancel('level.cancel'); } $toolbar->divider(); $toolbar->help('Users:_Edit_Viewing_Access_Level'); } } PKAA#]j�g>��1components/com_users/src/View/Method/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\View\Method; use Joomla\CMS\Factory; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Router\Route; use Joomla\CMS\Toolbar\Button\BasicButton; use Joomla\CMS\Toolbar\Button\LinkButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\CMS\Uri\Uri; use Joomla\CMS\User\User; use Joomla\Component\Users\Administrator\Model\MethodModel; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View for Multi-factor Authentication method add/edit page * * @since 4.2.0 */ class HtmlView extends BaseHtmlView { /** * Is this an administrator page? * * @var boolean * @since 4.2.0 */ public $isAdmin = false; /** * The editor page render options * * @var array * @since 4.2.0 */ public $renderOptions = []; /** * The MFA Method record being edited * * @var object * @since 4.2.0 */ public $record = null; /** * The title text for this page * * @var string * @since 4.2.0 */ public $title = ''; /** * The return URL to use for all links and forms * * @var string * @since 4.2.0 */ public $returnURL = null; /** * The user object used to display this page * * @var User * @since 4.2.0 */ public $user = null; /** * The backup codes for the current user. Only applies when the backup codes record is being "edited" * * @var array * @since 4.2.0 */ public $backupCodes = []; /** * Am I editing an existing Method? If it's false then I'm adding a new Method. * * @var boolean * @since 4.2.0 */ public $isEditExisting = false; /** * Execute and display a template script. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @throws \Exception * @see \JViewLegacy::loadTemplate() * @since 4.2.0 */ public function display($tpl = null): void { $app = Factory::getApplication(); if (empty($this->user)) { $this->user = $this->getCurrentUser(); } /** @var MethodModel $model */ $model = $this->getModel(); $this->setLayout('edit'); $this->renderOptions = $model->getRenderOptions($this->user); $this->record = $model->getRecord($this->user); $this->title = $model->getPageTitle(); $this->isAdmin = $app->isClient('administrator'); $toolbar = Toolbar::getInstance(); // Backup codes are a special case, rendered with a special layout if ($this->record->method == 'backupcodes') { $this->setLayout('backupcodes'); $backupCodes = $this->record->options; if (!is_array($backupCodes)) { $backupCodes = []; } $backupCodes = array_filter( $backupCodes, function ($x) { return !empty($x); } ); if (count($backupCodes) % 2 != 0) { $backupCodes[] = ''; } /** * The call to array_merge resets the array indices. This is necessary since array_filter kept the indices, * meaning our elements are completely out of order. */ $this->backupCodes = array_merge($backupCodes); } // Set up the isEditExisting property. $this->isEditExisting = !empty($this->record->id); // Back-end: always show a title in the 'title' module position, not in the page body if ($this->isAdmin) { ToolbarHelper::title($this->title, 'users user-lock'); $helpUrl = $this->renderOptions['help_url']; if (!empty($helpUrl)) { $toolbar->help('', false, $helpUrl); } $this->title = ''; } $returnUrl = empty($this->returnURL) ? '' : base64_decode($this->returnURL); $returnUrl = ($returnUrl && Uri::isInternal($returnUrl)) ? $returnUrl : Route::_('index.php?option=com_users&task=methods.display&user_id=' . $this->user->id); if ($this->isAdmin && $this->getLayout() === 'edit') { $button = (new BasicButton('user-mfa-edit-save')) ->text($this->renderOptions['submit_text']) ->icon($this->renderOptions['submit_icon']) ->onclick('document.getElementById(\'user-mfa-edit-save\').click()'); if ($this->renderOptions['show_submit'] || $this->isEditExisting) { $toolbar->appendButton($button); } $button = (new LinkButton('user-mfa-edit-cancel')) ->url($returnUrl) ->text('JCANCEL') ->buttonClass('btn btn-danger') ->icon('icon-cancel-2'); $toolbar->appendButton($button); } elseif ($this->isAdmin && $this->getLayout() === 'backupcodes') { $arrow = Factory::getApplication()->getLanguage()->isRtl() ? 'arrow-right' : 'arrow-left'; $button = (new LinkButton('user-mfa-edit-cancel')) ->url($returnUrl) ->text('JTOOLBAR_BACK') ->icon('icon-' . $arrow); $toolbar->appendButton($button); $button = (new LinkButton('user-mfa-edit-cancel')) ->url( Route::_( sprintf( "index.php?option=com_users&task=method.regenerateBackupCodes&user_id=%s&%s=1&returnurl=%s", $this->user->id, Factory::getApplication()->getFormToken(), base64_encode($returnUrl) ) ) ) ->text('COM_USERS_MFA_BACKUPCODES_RESET') ->buttonClass('btn btn-danger') ->icon('icon-refresh'); $toolbar->appendButton($button); } // Display the view parent::display($tpl); } } PKAA#]��E�/�//components/com_users/src/Service/HTML/Users.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Service\HTML; use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Extended Utility class for the Users component. * * @since 2.5 */ class Users { /** * Display an image. * * @param string $src The source of the image * * @return string A <img> element if the specified file exists, otherwise, a null string * * @since 2.5 * @throws \Exception */ public function image($src) { $src = preg_replace('#[^A-Z0-9\-_\./]#i', '', $src); $file = JPATH_SITE . '/' . $src; Path::check($file); if (!file_exists($file)) { return ''; } return '<img src="' . Uri::root() . $src . '" alt="">'; } /** * Displays an icon to add a note for this user. * * @param integer $userId The user ID * * @return string A link to add a note * * @since 2.5 */ public function addNote($userId) { $title = Text::_('COM_USERS_ADD_NOTE'); return '<a href="' . Route::_('index.php?option=com_users&task=note.add&u_id=' . (int) $userId) . '" class="btn btn-secondary btn-sm"><span class="icon-plus pe-1" aria-hidden="true">' . '</span>' . $title . '</a>'; } /** * Displays an icon to filter the notes list on this user. * * @param integer $count The number of notes for the user * @param integer $userId The user ID * * @return string A link to apply a filter * * @since 2.5 */ public function filterNotes($count, $userId) { if (empty($count)) { return ''; } $title = Text::_('COM_USERS_FILTER_NOTES'); return '<a href="' . Route::_('index.php?option=com_users&view=notes&filter[search]=uid:' . (int) $userId) . '" class="dropdown-item"><span class="icon-list pe-1" aria-hidden="true"></span>' . $title . '</a>'; } /** * Displays a note icon. * * @param integer $count The number of notes for the user * @param integer $userId The user ID * * @return string A link to a modal window with the user notes * * @since 2.5 */ public function notes($count, $userId) { if (empty($count)) { return ''; } $title = Text::plural('COM_USERS_N_USER_NOTES', $count); return '<button type="button" data-bs-target="#userModal_' . (int) $userId . '" id="modal-' . (int) $userId . '" data-bs-toggle="modal" class="dropdown-item"><span class="icon-eye pe-1" aria-hidden="true"></span>' . $title . '</button>'; } /** * Renders the modal html. * * @param integer $count The number of notes for the user * @param integer $userId The user ID * * @return string The html for the rendered modal * * @since 3.4.1 */ public function notesModal($count, $userId) { if (empty($count)) { return ''; } $title = Text::plural('COM_USERS_N_USER_NOTES', $count); $footer = '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">' . Text::_('JTOOLBAR_CLOSE') . '</button>'; return HTMLHelper::_( 'bootstrap.renderModal', 'userModal_' . (int) $userId, [ 'title' => $title, 'backdrop' => 'static', 'keyboard' => true, 'closeButton' => true, 'footer' => $footer, 'url' => Route::_('index.php?option=com_users&view=notes&tmpl=component&layout=modal&filter[user_id]=' . (int) $userId), 'height' => '300px', 'width' => '800px', ] ); } /** * Build an array of block/unblock user states to be used by jgrid.state, * State options will be different for any user * and for currently logged in user * * @param boolean $self True if state array is for currently logged in user * * @return array a list of possible states to display * * @since 3.0 */ public function blockStates($self = false) { if ($self) { $states = [ 1 => [ 'task' => 'unblock', 'text' => '', 'active_title' => 'COM_USERS_TOOLBAR_BLOCK', 'inactive_title' => '', 'tip' => true, 'active_class' => 'unpublish', 'inactive_class' => 'unpublish', ], 0 => [ 'task' => 'block', 'text' => '', 'active_title' => '', 'inactive_title' => 'COM_USERS_USERS_ERROR_CANNOT_BLOCK_SELF', 'tip' => true, 'active_class' => 'publish', 'inactive_class' => 'publish', ], ]; } else { $states = [ 1 => [ 'task' => 'unblock', 'text' => '', 'active_title' => 'COM_USERS_TOOLBAR_UNBLOCK', 'inactive_title' => '', 'tip' => true, 'active_class' => 'unpublish', 'inactive_class' => 'unpublish', ], 0 => [ 'task' => 'block', 'text' => '', 'active_title' => 'COM_USERS_TOOLBAR_BLOCK', 'inactive_title' => '', 'tip' => true, 'active_class' => 'publish', 'inactive_class' => 'publish', ], ]; } return $states; } /** * Build an array of activate states to be used by jgrid.state, * * @return array a list of possible states to display * * @since 3.0 */ public function activateStates() { $states = [ 1 => [ 'task' => 'activate', 'text' => '', 'active_title' => 'COM_USERS_TOOLBAR_ACTIVATE', 'inactive_title' => '', 'tip' => true, 'active_class' => 'unpublish', 'inactive_class' => 'unpublish', ], 0 => [ 'task' => '', 'text' => '', 'active_title' => '', 'inactive_title' => 'COM_USERS_ACTIVATED', 'tip' => true, 'active_class' => 'publish', 'inactive_class' => 'publish', ], ]; return $states; } /** * Get the sanitized value * * @param mixed $value Value of the field * * @return mixed String/void * * @since 1.6 */ public function value($value) { if (is_string($value)) { $value = trim($value); } if (empty($value)) { return Text::_('COM_USERS_PROFILE_VALUE_NOT_FOUND'); } elseif (!is_array($value)) { return htmlspecialchars($value, ENT_COMPAT, 'UTF-8'); } } /** * Get the space symbol * * @param mixed $value Value of the field * * @return string * * @since 1.6 */ public function spacer($value) { return ''; } /** * Get the sanitized template style * * @param mixed $value Value of the field * * @return mixed String/void * * @since 1.6 */ public function templatestyle($value) { if (empty($value)) { return static::value($value); } else { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__template_styles')) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $value, ParameterType::INTEGER); $db->setQuery($query); $title = $db->loadResult(); if ($title) { return htmlspecialchars($title, ENT_COMPAT, 'UTF-8'); } else { return static::value(''); } } } /** * Get the sanitized language * * @param mixed $value Value of the field * * @return mixed String/void * * @since 1.6 */ public function admin_language($value) { if (!$value) { return static::value($value); } $path = LanguageHelper::getLanguagePath(JPATH_ADMINISTRATOR, $value); $file = $path . '/langmetadata.xml'; if (!is_file($file)) { // For language packs from before 4.0. $file = $path . '/' . $value . '.xml'; if (!is_file($file)) { return static::value($value); } } $result = LanguageHelper::parseXMLLanguageFile($file); if ($result) { return htmlspecialchars($result['name'], ENT_COMPAT, 'UTF-8'); } return static::value($value); } /** * Get the sanitized language * * @param mixed $value Value of the field * * @return mixed String/void * * @since 1.6 */ public function language($value) { if (!$value) { return static::value($value); } $path = LanguageHelper::getLanguagePath(JPATH_SITE, $value); $file = $path . '/langmetadata.xml'; if (!is_file($file)) { // For language packs from before 4.0. $file = $path . '/' . $value . '.xml'; if (!is_file($file)) { return static::value($value); } } $result = LanguageHelper::parseXMLLanguageFile($file); if ($result) { return htmlspecialchars($result['name'], ENT_COMPAT, 'UTF-8'); } return static::value($value); } /** * Get the sanitized editor name * * @param mixed $value Value of the field * * @return mixed String/void * * @since 1.6 */ public function editor($value) { if (empty($value)) { return static::value($value); } else { $db = Factory::getDbo(); $lang = Factory::getLanguage(); $query = $db->getQuery(true) ->select($db->quoteName('name')) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('element') . ' = :element') ->where($db->quoteName('folder') . ' = ' . $db->quote('editors')) ->bind(':element', $value); $db->setQuery($query); $title = $db->loadResult(); if ($title) { $lang->load("plg_editors_$value.sys", JPATH_ADMINISTRATOR) || $lang->load("plg_editors_$value.sys", JPATH_PLUGINS . '/editors/' . $value); $lang->load($title . '.sys'); return Text::_($title); } else { return static::value(''); } } } } PKAA#]�a�J��,components/com_users/src/Service/Encrypt.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Service; use Joomla\CMS\Encrypt\Aes; use Joomla\CMS\Factory; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Data encryption service. * * @since 4.2.0 */ class Encrypt { /** * The encryption engine used by this service * * @var Aes * @since 4.2.0 */ private $aes; /** * EncryptService constructor. * * @since 4.2.0 */ public function __construct() { $this->initialize(); } /** * Encrypt the plaintext $data and return the ciphertext prefixed by ###AES128### * * @param string $data The plaintext data * * @return string The ciphertext, prefixed by ###AES128### * * @since 4.2.0 */ public function encrypt(string $data): string { if (!is_object($this->aes)) { return $data; } $this->aes->setPassword($this->getPassword(), false); $encrypted = $this->aes->encryptString($data, true); return '###AES128###' . $encrypted; } /** * Decrypt the ciphertext, prefixed by ###AES128###, and return the plaintext. * * @param string $data The ciphertext, prefixed by ###AES128### * @param bool $legacy Use legacy key expansion. We recommend against using it. * * @return string The plaintext data * * @since 4.2.0 */ public function decrypt(string $data, bool $legacy = false): string { if (substr($data, 0, 12) != '###AES128###') { return $data; } $data = substr($data, 12); if (!is_object($this->aes)) { return $data; } $this->aes->setPassword($this->getPassword(), $legacy); $decrypted = $this->aes->decryptString($data, true); // Decrypted data is null byte padded. We have to remove the padding before proceeding. return rtrim($decrypted, "\0"); } /** * Initialize the AES cryptography object * * @return void * @since 4.2.0 */ private function initialize(): void { if (is_object($this->aes)) { return; } $password = $this->getPassword(); if (empty($password)) { return; } $this->aes = new Aes('cbc'); $this->aes->setPassword($password); } /** * Returns the password used to encrypt information in the component * * @return string * * @since 4.2.0 */ private function getPassword(): string { try { return Factory::getApplication()->get('secret', ''); } catch (\Exception $e) { return ''; } } } PKAA#]G��I**,components/com_users/src/Table/NoteTable.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Table; use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\Versioning\VersionableTableInterface; use Joomla\Database\DatabaseDriver; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * User notes table class * * @since 2.5 */ class NoteTable extends Table implements VersionableTableInterface { /** * Indicates that columns fully support the NULL value in the database * * @var boolean * @since 4.0.0 */ protected $_supportNullValue = true; /** * Constructor * * @param DatabaseDriver $db Database object * * @since 2.5 */ public function __construct(DatabaseDriver $db) { $this->typeAlias = 'com_users.note'; parent::__construct('#__user_notes', 'id', $db); $this->setColumnAlias('published', 'state'); } /** * Overloaded store method for the notes table. * * @param boolean $updateNulls Toggle whether null values should be updated. * * @return boolean True on success, false on failure. * * @since 2.5 */ public function store($updateNulls = true) { $date = Factory::getDate()->toSql(); $userId = Factory::getUser()->get('id'); if (!((int) $this->review_time)) { $this->review_time = null; } if ($this->id) { // Existing item $this->modified_time = $date; $this->modified_user_id = $userId; } else { // New record. $this->created_time = $date; $this->created_user_id = $userId; $this->modified_time = $date; $this->modified_user_id = $userId; } // Attempt to store the data. return parent::store($updateNulls); } /** * Method to perform sanity checks on the Table instance properties to ensure they are safe to store in the database. * * @return boolean True if the instance is sane and able to be stored in the database. * * @since 4.0.0 */ public function check() { try { parent::check(); } catch (\Exception $e) { $this->setError($e->getMessage()); return false; } if (empty($this->modified_time)) { $this->modified_time = $this->created_time; } if (empty($this->modified_user_id)) { $this->modified_user_id = $this->created_user_id; } return true; } /** * Get the type alias for the history table * * @return string The alias as described above * * @since 4.0.0 */ public function getTypeAlias() { return $this->typeAlias; } } PKAA#]<��8686+components/com_users/src/Table/MfaTable.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Table; use Joomla\CMS\Date\Date; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Table\Table; use Joomla\CMS\User\CurrentUserInterface; use Joomla\CMS\User\CurrentUserTrait; use Joomla\CMS\User\UserFactoryAwareInterface; use Joomla\CMS\User\UserFactoryAwareTrait; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Model\BackupcodesModel; use Joomla\Component\Users\Administrator\Service\Encrypt; use Joomla\Database\DatabaseDriver; use Joomla\Database\ParameterType; use Joomla\Event\DispatcherInterface; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Table for the Multi-Factor Authentication records * * @property int $id Record ID. * @property int $user_id User ID * @property string $title Record title. * @property string $method MFA Method (corresponds to one of the plugins). * @property int $default Is this the default Method? * @property array $options Configuration options for the MFA Method. * @property string $created_on Date and time the record was created. * @property string $last_used Date and time the record was last used successfully. * @property int $tries Counter for unsuccessful tries * @property string $last_try Date and time of the last unsuccessful try * * @since 4.2.0 */ class MfaTable extends Table implements CurrentUserInterface, UserFactoryAwareInterface { use CurrentUserTrait; use UserFactoryAwareTrait; /** * Delete flags per ID, set up onBeforeDelete and used onAfterDelete * * @var array * @since 4.2.0 */ private $deleteFlags = []; /** * Encryption service * * @var Encrypt * @since 4.2.0 */ private $encryptService; /** * Indicates that columns fully support the NULL value in the database * * @var boolean * @since 4.2.0 */ // phpcs:ignore protected $_supportNullValue = true; /** * Table constructor * * @param DatabaseDriver $db Database driver object * @param DispatcherInterface|null $dispatcher Events dispatcher object * * @since 4.2.0 */ public function __construct(DatabaseDriver $db, DispatcherInterface $dispatcher = null) { parent::__construct('#__user_mfa', 'id', $db, $dispatcher); $this->encryptService = new Encrypt(); } /** * Method to store a row in the database from the Table instance properties. * * If a primary key value is set the row with that primary key value will be updated with the instance property values. * If no primary key value is set a new row will be inserted into the database with the properties from the Table instance. * * @param boolean $updateNulls True to update fields even if they are null. * * @return boolean True on success. * * @since 4.2.0 */ public function store($updateNulls = true) { // Encrypt the options before saving them $this->options = $this->encryptService->encrypt(json_encode($this->options ?: [])); // Set last_used date to null if empty or zero date if (!((int) $this->last_used)) { $this->last_used = null; } $records = MfaHelper::getUserMfaRecords($this->user_id); if ($this->id) { // Existing record. Remove it from the list of records. $records = array_filter( $records, function ($rec) { return $rec->id != $this->id; } ); } // Update the dates on a new record if (empty($this->id)) { $this->created_on = Date::getInstance()->toSql(); $this->last_used = null; } // Do I need to mark this record as the default? if ($this->default == 0) { $hasDefaultRecord = array_reduce( $records, function ($carry, $record) { return $carry || ($record->default == 1); }, false ); $this->default = $hasDefaultRecord ? 0 : 1; } // Let's find out if we are saving a new MFA method record without having backup codes yet. $mustCreateBackupCodes = false; if (empty($this->id) && $this->method !== 'backupcodes') { // Do I have any backup records? $hasBackupCodes = array_reduce( $records, function (bool $carry, $record) { return $carry || $record->method === 'backupcodes'; }, false ); $mustCreateBackupCodes = !$hasBackupCodes; // If the only other entry is the backup records one I need to make this the default method if ($hasBackupCodes && count($records) === 1) { $this->default = 1; } } // Store the record try { $result = parent::store($updateNulls); } catch (\Throwable $e) { $this->setError($e->getMessage()); $result = false; } // Decrypt the options (they must be decrypted in memory) $this->decryptOptions(); if ($result) { // If this record is the default unset the default flag from all other records $this->switchDefaultRecord(); // Do I need to generate backup codes? if ($mustCreateBackupCodes) { $this->generateBackupCodes(); } } return $result; } /** * Method to load a row from the database by primary key and bind the fields to the Table instance properties. * * @param mixed $keys An optional primary key value to load the row by, or an array of fields to match. * If not set the instance property value is used. * @param boolean $reset True to reset the default values before loading the new row. * * @return boolean True if successful. False if row not found. * * @since 4.2.0 * @throws \InvalidArgumentException * @throws \RuntimeException * @throws \UnexpectedValueException */ public function load($keys = null, $reset = true) { $result = parent::load($keys, $reset); if ($result) { $this->decryptOptions(); } return $result; } /** * Method to delete a row from the database table by primary key value. * * @param mixed $pk An optional primary key value to delete. If not set the instance property value is used. * * @return boolean True on success. * * @since 4.2.0 * @throws \UnexpectedValueException */ public function delete($pk = null) { $record = $this; if ($pk != $this->id) { $record = clone $this; $record->reset(); $result = $record->load($pk); if (!$result) { // If the record does not exist I will stomp my feet and deny your request throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } } $user = $this->getCurrentUser(); // The user must be a registered user, not a guest if ($user->guest) { throw new \RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } // Save flags used onAfterDelete $this->deleteFlags[$record->id] = [ 'default' => $record->default, 'numRecords' => $this->getNumRecords($record->user_id), 'user_id' => $record->user_id, 'method' => $record->method, ]; if (\is_null($pk)) { $pk = [$this->_tbl_key => $this->id]; } elseif (!\is_array($pk)) { $pk = [$this->_tbl_key => $pk]; } $isDeleted = parent::delete($pk); if ($isDeleted) { $this->afterDelete($pk); } return $isDeleted; } /** * Decrypt the possibly encrypted options * * @return void * @since 4.2.0 */ private function decryptOptions(): void { // Try with modern decryption $decrypted = @json_decode($this->encryptService->decrypt($this->options ?? ''), true); if (is_string($decrypted)) { $decrypted = @json_decode($decrypted, true); } // Fall back to legacy decryption if (!is_array($decrypted)) { $decrypted = @json_decode($this->encryptService->decrypt($this->options ?? '', true), true); if (is_string($decrypted)) { $decrypted = @json_decode($decrypted, true); } } $this->options = $decrypted ?: []; } /** * If this record is set to be the default, unset the default flag from the other records for the same user. * * @return void * @since 4.2.0 */ private function switchDefaultRecord(): void { if (!$this->default) { return; } /** * This record is marked as default, therefore we need to unset the default flag from all other records for this * user. */ $db = $this->getDbo(); $query = $db->getQuery(true) ->update($db->quoteName('#__user_mfa')) ->set($db->quoteName('default') . ' = 0') ->where($db->quoteName('user_id') . ' = :user_id') ->where($db->quoteName('id') . ' != :id') ->bind(':user_id', $this->user_id, ParameterType::INTEGER) ->bind(':id', $this->id, ParameterType::INTEGER); $db->setQuery($query)->execute(); } /** * Regenerate backup code is the flag is set. * * @return void * @throws \Exception * @since 4.2.0 */ private function generateBackupCodes(): void { /** @var MVCFactoryInterface $factory */ $factory = Factory::getApplication()->bootComponent('com_users')->getMVCFactory(); /** @var BackupcodesModel $backupCodes */ $backupCodes = $factory->createModel('Backupcodes', 'Administrator'); $user = $this->getUserFactory()->loadUserById($this->user_id); $backupCodes->regenerateBackupCodes($user); } /** * Runs after successfully deleting a record * * @param int|array $pk The promary key of the deleted record * * @return void * @since 4.2.0 */ private function afterDelete($pk): void { if (is_array($pk)) { $pk = $pk[$this->_tbl_key] ?? array_shift($pk); } if (!isset($this->deleteFlags[$pk])) { return; } if (($this->deleteFlags[$pk]['numRecords'] <= 2) && ($this->deleteFlags[$pk]['method'] != 'backupcodes')) { /** * This was the second to last MFA record in the database (the last one is the `backupcodes`). Therefore, we * need to delete the remaining entry and go away. We don't trigger this if the Method we are deleting was * the `backupcodes` because we might just be regenerating the backup codes. */ $db = $this->getDbo(); $query = $db->getQuery(true) ->delete($db->quoteName('#__user_mfa')) ->where($db->quoteName('user_id') . ' = :user_id') ->bind(':user_id', $this->deleteFlags[$pk]['user_id'], ParameterType::INTEGER); $db->setQuery($query)->execute(); unset($this->deleteFlags[$pk]); return; } // This was the default record. Promote the next available record to default. if ($this->deleteFlags[$pk]['default']) { $db = $this->getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('id')) ->from($db->quoteName('#__user_mfa')) ->where($db->quoteName('user_id') . ' = :user_id') ->where($db->quoteName('method') . ' != ' . $db->quote('backupcodes')) ->bind(':user_id', $this->deleteFlags[$pk]['user_id'], ParameterType::INTEGER); $ids = $db->setQuery($query)->loadColumn(); if (empty($ids)) { return; } $id = array_shift($ids); $query = $db->getQuery(true) ->update($db->quoteName('#__user_mfa')) ->set($db->quoteName('default') . ' = 1') ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query)->execute(); } } /** * Get the number of MFA records for a give user ID * * @param int $userId The user ID to check * * @return integer * * @since 4.2.0 */ private function getNumRecords(int $userId): int { $db = $this->getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from($db->quoteName('#__user_mfa')) ->where($db->quoteName('user_id') . ' = :user_id') ->bind(':user_id', $userId, ParameterType::INTEGER); $numOldRecords = $db->setQuery($query)->loadResult(); return (int) $numOldRecords; } } PKAA#]#�����2components/com_users/src/Dispatcher/Dispatcher.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2021 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Users\Administrator\Dispatcher; use Joomla\CMS\Dispatcher\ComponentDispatcher; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * ComponentDispatcher class for com_users * * @since 4.0.0 */ class Dispatcher extends ComponentDispatcher { /** * Override checkAccess to allow users edit profile without having to have core.manager permission * * @return void * * @since 4.0.0 */ protected function checkAccess() { $task = $this->input->getCmd('task'); $view = $this->input->getCmd('view'); $layout = $this->input->getCmd('layout'); $allowedTasks = ['user.edit', 'user.apply', 'user.save', 'user.cancel']; // Allow users to edit their own account if (in_array($task, $allowedTasks, true) || ($view === 'user' && $layout === 'edit')) { $user = $this->app->getIdentity(); $id = $this->input->getInt('id'); if ((int) $user->id === $id) { return; } } /** * Special case: Multi-factor Authentication * * We allow access to all MFA views and tasks. Access control for MFA tasks is performed in * the Controllers since what is allowed depends on who is logged in and whose account you * are trying to modify. Implementing these checks in the Dispatcher would violate the * separation of concerns. */ $allowedViews = ['callback', 'captive', 'method', 'methods']; $isAllowedTask = array_reduce( $allowedViews, function ($carry, $taskPrefix) use ($task) { return $carry || strpos($task ?? '', $taskPrefix . '.') === 0; }, false ); if (in_array(strtolower($view ?? ''), $allowedViews) || $isAllowedTask) { return; } parent::checkAccess(); } } PKAA#]"���OO#components/com_users/forms/user.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form addfieldprefix="Joomla\Component\Users\Administrator\Field"> <fieldset name="user_details" label="COM_USERS_USER_ACCOUNT_DETAILS"> <field name="name" type="text" label="COM_USERS_USER_FIELD_NAME_LABEL" required="true" /> <field name="username" type="text" label="COM_USERS_USER_FIELD_USERNAME_LABEL" required="true" /> <field name="password" type="password" label="JGLOBAL_PASSWORD" rules="true" autocomplete="new-password" class="validate-password-strength" filter="raw" validate="password" strengthmeter="true" force="on" /> <field name="password2" type="password" label="COM_USERS_USER_FIELD_PASSWORD2_LABEL" autocomplete="new-password" class="validate-passwordExtra" filter="raw" message="COM_USERS_USER_FIELD_PASSWORD1_MESSAGE" validate="equals" field="password" /> <field name="email" type="email" label="JGLOBAL_EMAIL" required="true" validate="email" validDomains="com_users.domains" /> <field name="registerDate" type="calendar" label="COM_USERS_USER_FIELD_REGISTERDATE_LABEL" class="readonly" readonly="true" translateformat="true" showtime="true" filter="user_utc" /> <field name="lastvisitDate" type="calendar" label="COM_USERS_USER_FIELD_LASTVISIT_LABEL" class="readonly" readonly="true" translateformat="true" showtime="true" filter="user_utc" /> <field name="lastResetTime" type="calendar" label="COM_USERS_USER_FIELD_LASTRESET_LABEL" class="readonly" readonly="true" translateformat="true" showtime="true" filter="user_utc" /> <field name="resetCount" type="number" label="COM_USERS_USER_FIELD_RESETCOUNT_LABEL" class="readonly" default="0" readonly="true" /> <field name="sendEmail" type="radio" label="COM_USERS_USER_FIELD_SENDEMAIL_LABEL" default="0" layout="joomla.form.field.radio.switcher" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="block" type="radio" label="COM_USERS_USER_FIELD_BLOCK_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="1">COM_USERS_USER_FIELD_BLOCK</option> <option value="0">COM_USERS_USER_FIELD_ENABLE</option> </field> <field name="requireReset" type="radio" label="COM_USERS_USER_FIELD_REQUIRERESET_LABEL" default="0" layout="joomla.form.field.radio.switcher" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="id" type="text" label="JGLOBAL_FIELD_ID_LABEL" class="readonly" default="0" readonly="true" /> </fieldset> <field name="groups" type="hidden" /> <fields name="params"> <!-- Basic user account settings. --> <fieldset name="settings" label="COM_USERS_SETTINGS_FIELDSET_LABEL"> <field name="admin_style" type="templatestyle" label="COM_USERS_USER_FIELD_BACKEND_TEMPLATE_LABEL" client="administrator" filter="uint" > <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="admin_language" type="language" label="COM_USERS_USER_FIELD_BACKEND_LANGUAGE_LABEL" client="administrator" > <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="language" type="language" label="COM_USERS_USER_FIELD_FRONTEND_LANGUAGE_LABEL" client="site" > <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="editor" type="plugins" label="COM_USERS_USER_FIELD_EDITOR_LABEL" folder="editors" > <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="timezone" type="timezone" label="COM_USERS_USER_FIELD_TIMEZONE_LABEL" > <option value="">JOPTION_USE_DEFAULT</option> </field> </fieldset> <!-- User accessibility settings --> <fieldset name="accessibility" label="COM_USERS_A11Y_SETTINGS_FIELDSET_LABEL" description="COM_USERS_A11Y_SETTINGS_FIELDSET_DESC" > <field name="a11y_mono" type="radio" label="COM_USERS_A11Y_SETTINGS_FIELD_MONOCHROME" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="monochrome">JYES</option> </field> <field name="a11y_contrast" type="radio" label="COM_USERS_A11Y_SETTINGS_FIELD_CONTRAST" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="high_contrast">JYES</option> </field> <field name="a11y_highlight" type="radio" label="COM_USERS_A11Y_SETTINGS_FIELD_HIGHLIGHT" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="highlight">JYES</option> </field> <field name="a11y_font" type="radio" label="COM_USERS_A11Y_SETTINGS_FIELD_FONTSIZE" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="fontsize">JYES</option> </field> </fieldset> </fields> </form> PKAA#]�D)]]0components/com_users/forms/filter_debuggroup.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form addfieldprefix="Joomla\Component\Users\Administrator\Field"> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_ASSETS" description="COM_USERS_SEARCH_IN_ASSETS" hint="JSEARCH_FILTER" /> <field name="component" type="Components" label="COM_USERS_OPTION_LABEL_COMPONENT" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_COMPONENT</option> </field> <field name="level_start" type="Levels" label="COM_USERS_OPTION_LABEL_LEVEL_START" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_LEVEL_START</option> </field> <field name="level_end" type="Levels" label="COM_USERS_OPTION_LABEL_LEVEL_END" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_LEVEL_END</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.lft ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.title ASC">COM_USERS_HEADING_ASSET_TITLE_ASC</option> <option value="a.title DESC">COM_USERS_HEADING_ASSET_TITLE_DESC</option> <option value="a.name ASC">COM_USERS_HEADING_ASSET_NAME_ASC</option> <option value="a.name DESC">COM_USERS_HEADING_ASSET_NAME_DESC</option> <option value="a.lft ASC">COM_USERS_HEADING_LFT_ASC</option> <option value="a.lft DESC">COM_USERS_HEADING_LFT_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]o��&&#components/com_users/forms/mail.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset> <field name="recurse" type="checkbox" label="COM_USERS_MAIL_FIELD_RECURSE_LABEL" value="1" /> <field name="mode" type="checkbox" label="COM_USERS_MAIL_FIELD_SEND_IN_HTML_MODE_LABEL" value="1" /> <field name="disabled" type="checkbox" label="COM_USERS_MAIL_FIELD_EMAIL_DISABLED_USERS_LABEL" value="1" /> <field name="group" type="usergrouplist" label="COM_USERS_MAIL_FIELD_GROUP_LABEL" default="0" > <option value="0">COM_USERS_MAIL_FIELD_VALUE_ALL_USERS_GROUPS</option> </field> <field name="bcc" type="checkbox" label="COM_USERS_MAIL_FIELD_SEND_AS_BLIND_CARBON_COPY_LABEL" default="1" value="1" checked="1" /> <field name="subject" type="text" label="COM_USERS_MAIL_FIELD_SUBJECT_LABEL" maxlength="150" required="true" /> <field name="message" type="textarea" label="COM_USERS_MAIL_FIELD_MESSAGE_LABEL" cols="70" rows="20" required="true" /> </fieldset> </form> PKAA#]�x6�XX/components/com_users/forms/filter_debuguser.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form addfieldprefix="Joomla\Component\Users\Administrator\Field"> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_ASSETS" description="COM_USERS_SEARCH_IN_ASSETS" hint="JSEARCH_FILTER" /> <field name="component" type="Components" label="COM_USERS_OPTION_LABEL_COMPONENT" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_COMPONENT</option> </field> <field name="level_start" type="Levels" label="COM_USERS_OPTION_LABEL_LEVEL_START" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_LEVEL_START</option> </field> <field name="level_end" type="Levels" label="COM_USERS_OPTION_LABEL_LEVEL_END" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_SELECT_LEVEL_END</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.lft ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.title ASC">COM_USERS_HEADING_ASSET_TITLE_ASC</option> <option value="a.title DESC">COM_USERS_HEADING_ASSET_TITLE_DESC</option> <option value="a.name ASC">COM_USERS_HEADING_ASSET_NAME_ASC</option> <option value="a.name DESC">COM_USERS_HEADING_ASSET_NAME_DESC</option> <option value="a.lft ASC">COM_USERS_HEADING_LFT_ASC</option> <option value="a.lft DESC">COM_USERS_HEADING_LFT_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]���&+components/com_users/forms/filter_notes.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_USER_NOTES" description="COM_USERS_SEARCH_IN_NOTE_TITLE" hint="JSEARCH_FILTER" /> <field name="published" type="status" label="JSTATUS" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="category_id" type="category" label="JCATEGORY" extension="com_users" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_CATEGORY</option> </field> <field name="level" type="integer" label="JGLOBAL_MAXLEVEL_LABEL" first="1" last="10" step="1" languages="*" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_MAX_LEVELS</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.review_time DESC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.subject ASC">COM_USERS_HEADING_SUBJECT_ASC</option> <option value="a.subject DESC">COM_USERS_HEADING_SUBJECT_DESC</option> <option value="c.title ASC">COM_USERS_HEADING_CATEGORY_ASC</option> <option value="c.title DESC">COM_USERS_HEADING_CATEGORY_DESC</option> <option value="u.name ASC">COM_USERS_HEADING_USER_ASC</option> <option value="u.name DESC">COM_USERS_HEADING_USER_DESC</option> <option value="a.review_time ASC">COM_USERS_HEADING_REVIEW_ASC</option> <option value="a.review_time DESC">COM_USERS_HEADING_REVIEW_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]%�v���$components/com_users/forms/level.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset> <field name="id" type="hidden" default="0" readonly="true" required="true" /> <field name="title" type="text" label="COM_USERS_LEVEL_FIELD_TITLE_LABEL" required="true" /> <field name="ordering" type="text" label="JFIELD_ORDERING_LABEL" description="JFIELD_ORDERING_DESC" default="0" /> <field name="rules" type="hidden" filter="intarray" /> </fieldset> </form> PKAA#]�ͨ�,components/com_users/forms/filter_groups.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_GROUPS_LABEL" description="COM_USERS_SEARCH_IN_GROUPS" hint="JSEARCH_FILTER" /> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.lft ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.lft ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.lft DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.title ASC">COM_USERS_HEADING_GROUP_TITLE_ASC</option> <option value="a.title DESC">COM_USERS_HEADING_GROUP_TITLE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]�3�q��$components/com_users/forms/group.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form addfieldprefix="Joomla\Component\Users\Administrator\Field"> <fieldset name="group_details"> <field name="id" type="hidden" default="0" readonly="true" /> <field name="title" type="text" label="COM_USERS_GROUP_FIELD_TITLE_LABEL" required="true" /> <field name="parent_id" type="groupparent" label="COM_USERS_GROUP_FIELD_PARENT_LABEL" validate="options" > <option value="0" disabled="disabled">COM_USERS_GROUP_FIELD_PARENT_SELECT</option> </field> <field name="actions" type="hidden" multiple="true" /> <field name="lft" type="hidden" filter="unset" /> <field name="rgt" type="hidden" filter="unset" /> </fieldset> </form> PKAA#]��%��,components/com_users/forms/config_domain.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset> <field name="name" type="text" label="COM_USERS_CONFIG_FIELD_DOMAIN_NAME_LABEL" description="COM_USERS_CONFIG_FIELD_DOMAIN_NAME_DESC" required="true" /> <field name="rule" type="radio" label="COM_USERS_CONFIG_FIELD_DOMAIN_RULE_LABEL" description="COM_USERS_CONFIG_FIELD_DOMAIN_RULE_DESC" layout="joomla.form.field.radio.switcher" required="true" default="0" filter="integer" validate="options" > <option value="0">COM_USERS_CONFIG_FIELD_DOMAIN_RULE_OPTION_DISALLOW</option> <option value="1">COM_USERS_CONFIG_FIELD_DOMAIN_RULE_OPTION_ALLOW</option> </field> </fieldset> </form> PKAA#]Ϡk��*components/com_users/forms/fields/user.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="params" label="COM_FIELDS_FIELD_BASIC_LABEL"> <fieldset name="basic"> <field name="display" type="hidden" default="2" /> </fieldset> </fields> </form> PKAA#]��G G #components/com_users/forms/note.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset addfieldprefix="Joomla\Component\Categories\Administrator\Field"> <field name="id" type="hidden" label="COM_USERS_FIELD_ID_LABEL" class="readonly" default="0" readonly="true" /> <field name="user_id" type="user" label="COM_USERS_FIELD_USER_ID_LABEL" required="true" validate="UserId" /> <field name="catid" type="modal_category" label="COM_USERS_FIELD_CATEGORY_ID_LABEL" extension="com_users" required="true" select="true" new="true" edit="true" clear="true" /> <field name="subject" type="text" label="COM_USERS_FIELD_SUBJECT_LABEL" /> <field name="body" type="editor" label="COM_USERS_FIELD_NOTEBODY_LABEL" rows="10" cols="80" filter="safehtml" /> <field name="state" type="list" label="JSTATUS" class="form-select-color-state" default="1" validate="options" > <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="review_time" type="calendar" label="COM_USERS_FIELD_REVIEW_TIME_LABEL" default="NOW" translateformat="true" filter="user_utc" /> <field name="checked_out" type="hidden" filter="unset" /> <field name="checked_out_time" type="hidden" filter="unset" /> <field name="created_user_id" type="hidden" label="JGLOBAL_FIELD_CREATED_BY_LABEL" filter="unset" /> <field name="created_time" type="hidden" label="JGLOBAL_FIELD_CREATED_LABEL" filter="unset" /> <field name="modified_user_id" type="hidden" label="JGLOBAL_FIELD_MODIFIED_BY_LABEL" filter="unset" /> <field name="modified_time" type="hidden" label="JGLOBAL_FIELD_MODIFIED_LABEL" filter="unset" /> <field name="publish_up" type="calendar" label="JGLOBAL_FIELD_PUBLISH_UP_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="publish_down" type="calendar" label="JGLOBAL_FIELD_PUBLISH_DOWN_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="version_note" type="text" label="JGLOBAL_FIELD_VERSION_NOTE_LABEL" maxlength="255" /> </fieldset> </form> PKAA#]���ޒ�'components/com_users/forms/category.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <help key="User_Notes:_New_or_Edit_Category" /> <listhelp key="User_Notes:_Categories" /> </form> PKAA#]=3�+components/com_users/forms/filter_users.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_USERS" description="COM_USERS_SEARCH_IN_NAME" hint="JSEARCH_FILTER" /> <field name="state" type="userstate" label="JSTATUS" class="js-select-submit-on-change" > <option value="">COM_USERS_FILTER_STATE</option> </field> <field name="mfa" type="list" label="COM_USERS_HEADING_MFA" class="js-select-submit-on-change" > <option value="">COM_USERS_FILTER_MFA</option> <option value="1">JENABLED</option> <option value="0">JDISABLED</option> </field> <field name="active" type="useractive" label="COM_USERS_HEADING_ACTIVATED" class="js-select-submit-on-change" > <option value="">COM_USERS_FILTER_ACTIVE</option> </field> <field name="group_id" type="usergrouplist" label="COM_USERS_HEADING_GROUPS" class="js-select-submit-on-change" > <option value="">COM_USERS_FILTER_USERGROUP</option> </field> <field name="lastvisitrange" type="lastvisitdaterange" label="COM_USERS_HEADING_LAST_VISIT_DATE" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_FILTER_LAST_VISIT_DATE</option> </field> <field name="range" type="registrationdaterange" label="COM_USERS_HEADING_REGISTRATION_DATE" class="js-select-submit-on-change" > <option value="">COM_USERS_OPTION_FILTER_DATE</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.name ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.name ASC">JGLOBAL_NAME_ASC</option> <option value="a.name DESC">JGLOBAL_NAME_DESC</option> <option value="a.username ASC">COM_USERS_HEADING_USERNAME_ASC</option> <option value="a.username DESC">COM_USERS_HEADING_USERNAME_DESC</option> <option value="a.block ASC">COM_USERS_HEADING_ENABLED_ASC</option> <option value="a.block DESC">COM_USERS_HEADING_ENABLED_DESC</option> <option value="a.activation ASC">COM_USERS_HEADING_ACTIVATED_ASC</option> <option value="a.activation DESC">COM_USERS_HEADING_ACTIVATED_DESC</option> <option value="a.email ASC">COM_USERS_HEADING_EMAIL_ASC</option> <option value="a.email DESC">COM_USERS_HEADING_EMAIL_DESC</option> <option value="a.lastvisitDate ASC">COM_USERS_HEADING_LAST_VISIT_DATE_ASC</option> <option value="a.lastvisitDate DESC">COM_USERS_HEADING_LAST_VISIT_DATE_DESC</option> <option value="a.registerDate ASC">COM_USERS_HEADING_REGISTRATION_DATE_ASC</option> <option value="a.registerDate DESC">COM_USERS_HEADING_REGISTRATION_DATE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]J�B�--,components/com_users/forms/filter_levels.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_USERS_SEARCH_ACCESS_LEVELS" description="COM_USERS_SEARCH_IN_LEVEL_NAME" hint="JSEARCH_FILTER" /> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.ordering ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.title ASC">COM_USERS_HEADING_LEVEL_NAME_ASC</option> <option value="a.title DESC">COM_USERS_HEADING_LEVEL_NAME_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKAA#]��m��4components/com_users/postinstall/multifactorauth.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ use Joomla\CMS\Factory; use Joomla\CMS\Plugin\PluginHelper; use Joomla\Database\DatabaseInterface; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Post-installation message about the new Multi-factor Authentication: condition check. * * Returns true if neither of the two new core MFA plugins are enabled. * * @return boolean * @since 4.2.0 */ function com_users_postinstall_mfa_condition(): bool { return count(PluginHelper::getPlugin('multifactorauth')) < 1; } /** * Post-installation message about the new Multi-factor Authentication: action. * * Enables the core MFA plugins. * * @return void * @since 4.2.0 */ function com_users_postinstall_mfa_action(): void { /** @var DatabaseInterface $db */ $db = Factory::getContainer()->get(DatabaseInterface::class); $coreMfaPlugins = ['email', 'totp', 'webauthn', 'yubikey']; $query = $db->getQuery(true) ->update($db->quoteName('#__extensions')) ->set($db->quoteName('enabled') . ' = 1') ->where($db->quoteName('type') . ' = ' . $db->quote('plugin')) ->where($db->quoteName('folder') . ' = ' . $db->quote('multifactorauth')) ->whereIn($db->quoteName('element'), $coreMfaPlugins, ParameterType::STRING); $db->setQuery($query); $db->execute(); $url = 'index.php?option=com_plugins&filter[folder]=multifactorauth'; Factory::getApplication()->redirect($url); } PKAA#](����(components/com_users/tmpl/level/edit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_LEVEL_VIEW_EDIT_TITLE"> <message> <![CDATA[COM_USERS_LEVEL_VIEW_EDIT_DESC]]> </message> </layout> </metadata> PKAA#]J7�a��(components/com_users/tmpl/level/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate'); ?> <form action="<?php echo Route::_('index.php?option=com_users&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="level-form" aria-label="<?php echo Text::_('COM_USERS_LEVEL_FORM_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="form-validate main-card"> <?php echo HTMLHelper::_('uitab.startTabSet', 'myTab', ['active' => 'details', 'recall' => true, 'breakpoint' => 768]); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'details', Text::_('COM_USERS_LEVEL_DETAILS')); ?> <fieldset class="options-form"> <legend><?php echo Text::_('COM_USERS_LEVEL_DETAILS'); ?></legend> <div class="control-group"> <div class="control-label"> <?php echo $this->form->getLabel('title'); ?> </div> <div class="controls"> <?php echo $this->form->getInput('title'); ?> </div> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'groups', Text::_('COM_USERS_USER_GROUPS_HAVING_ACCESS')); ?> <fieldset class="options-form"> <legend><?php echo Text::_('COM_USERS_USER_GROUPS_HAVING_ACCESS'); ?></legend> <div> <?php echo HTMLHelper::_('access.usergroups', 'jform[rules]', $this->item->rules, true); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php echo HTMLHelper::_('uitab.endTabSet'); ?> <input type="hidden" name="task" value=""> <?php echo HTMLHelper::_('form.token'); ?> </form> PKAA#]˜d���)components/com_users/tmpl/method/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Users\Administrator\View\Method\HtmlView; use Joomla\Utilities\ArrayHelper; /** @var HtmlView $this */ $cancelURL = Route::_('index.php?option=com_users&task=methods.display&user_id=' . $this->user->id); if (!empty($this->returnURL)) { $cancelURL = $this->escape(base64_decode($this->returnURL)); } $recordId = (int) $this->record->id ?? 0; $method = $this->record->method ?? $this->getModel()->getState('method'); $userId = (int) $this->user->id ?? 0; $headingLevel = 2; $hideSubmit = !$this->renderOptions['show_submit'] && !$this->isEditExisting ?> <div class="card card-body"> <form action="<?php echo Route::_(sprintf("index.php?option=com_users&task=method.save&id=%d&method=%s&user_id=%d", $recordId, $method, $userId)) ?>" class="form form-horizontal" id="com-users-method-edit" method="post"> <?php echo HTMLHelper::_('form.token') ?> <?php if (!empty($this->returnURL)) : ?> <input type="hidden" name="returnurl" value="<?php echo $this->escape($this->returnURL) ?>"> <?php endif; ?> <?php if (!empty($this->renderOptions['hidden_data'])) : ?> <?php foreach ($this->renderOptions['hidden_data'] as $key => $value) : ?> <input type="hidden" name="<?php echo $this->escape($key) ?>" value="<?php echo $this->escape($value) ?>"> <?php endforeach; ?> <?php endif; ?> <?php if (!empty($this->title)) : ?> <?php if (!empty($this->renderOptions['help_url'])) : ?> <span class="float-end"> <a href="<?php echo $this->renderOptions['help_url'] ?>" class="btn btn-sm btn-default btn-inverse btn-dark" target="_blank" > <span class="icon icon-question-sign" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('JHELP') ?></span> </a> </span> <?php endif;?> <h<?php echo $headingLevel ?> id="com-users-method-edit-head"> <?php echo Text::_($this->title) ?> </h<?php echo $headingLevel ?>> <?php $headingLevel++ ?> <?php endif; ?> <div class="row"> <label class="col-sm-3 col-form-label" for="com-users-method-edit-title"> <?php echo Text::_('COM_USERS_MFA_EDIT_FIELD_TITLE'); ?> </label> <div class="col-sm-9"> <input type="text" class="form-control" id="com-users-method-edit-title" name="title" value="<?php echo $this->escape($this->record->title) ?>" aria-describedby="com-users-method-edit-help"> <p class="form-text" id="com-users-method-edit-help"> <?php echo $this->escape(Text::_('COM_USERS_MFA_EDIT_FIELD_TITLE_DESC')) ?> </p> </div> </div> <div class="row"> <div class="col-sm-9 offset-sm-3"> <div class="form-check"> <input class="form-check-input" type="checkbox" id="com-users-is-default-method" <?php echo $this->record->default ? 'checked="checked"' : ''; ?> name="default"> <label class="form-check-label" for="com-users-is-default-method"> <?php echo Text::_('COM_USERS_MFA_EDIT_FIELD_DEFAULT'); ?> </label> </div> </div> </div> <?php if (!empty($this->renderOptions['pre_message'])) : ?> <div class="com-users-method-edit-pre-message text-muted mt-4 mb-3"> <?php echo $this->renderOptions['pre_message'] ?> </div> <?php endif; ?> <?php if (!empty($this->renderOptions['tabular_data'])) : ?> <div class="com-users-method-edit-tabular-container"> <?php if (!empty($this->renderOptions['table_heading'])) : ?> <h<?php echo $headingLevel ?> class="h3 border-bottom mb-3"> <?php echo $this->renderOptions['table_heading'] ?> </h<?php echo $headingLevel ?>> <?php endif; ?> <table class="table table-striped"> <tbody> <?php foreach ($this->renderOptions['tabular_data'] as $cell1 => $cell2) : ?> <tr> <td> <?php echo $cell1 ?> </td> <td> <?php echo $cell2 ?> </td> </tr> <?php endforeach; ?> </tbody> </table> </div> <?php endif; ?> <?php if ($this->renderOptions['field_type'] == 'custom') : ?> <?php echo $this->renderOptions['html']; ?> <?php endif; ?> <div class="row mb-3 <?php echo $this->renderOptions['input_type'] === 'hidden' ? 'd-none' : '' ?>"> <?php if ($this->renderOptions['label']) : ?> <label class="col-sm-3 col-form-label" for="com-users-method-code"> <?php echo $this->renderOptions['label']; ?> </label> <?php endif; ?> <div class="col-sm-9" <?php echo $this->renderOptions['label'] ? '' : 'offset-sm-3' ?>> <?php $attributes = array_merge( [ 'type' => $this->renderOptions['input_type'], 'name' => 'code', 'value' => $this->escape($this->renderOptions['input_value']), 'id' => 'com-users-method-code', 'class' => 'form-control', 'aria-describedby' => 'com-users-method-code-help', ], $this->renderOptions['input_attributes'] ); if (strpos($attributes['class'], 'form-control') === false) { $attributes['class'] .= ' form-control'; } ?> <input <?php echo ArrayHelper::toString($attributes) ?>> <p class="form-text" id="com-users-method-code-help"> <?php echo $this->escape($this->renderOptions['placeholder']) ?> </p> </div> </div> <div class="container d-sm-none"> <div class="row mb-3"> <div class="col-sm-9 offset-sm-3"> <button type="submit" id="user-mfa-edit-save" class="btn btn-primary me-3 <?php echo $hideSubmit ? 'd-none' : '' ?> <?php echo $this->renderOptions['submit_class'] ?>"> <span class="<?php echo $this->renderOptions['submit_icon'] ?>" aria-hidden="true"></span> <?php echo Text::_($this->renderOptions['submit_text']); ?> </button> <a href="<?php echo $cancelURL ?>" id="user-mfa-edit-cancel" class="btn btn-sm btn-danger"> <span class="icon icon-cancel-2" aria-hidden="true"></span> <?php echo Text::_('JCANCEL'); ?> </a> </div> </div> </div> <?php if (!empty($this->renderOptions['post_message'])) : ?> <div class="com-users-method-edit-post-message text-muted"> <?php echo $this->renderOptions['post_message'] ?> </div> <?php endif; ?> </form> </div> PKAA#]�r�)� � 0components/com_users/tmpl/method/backupcodes.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Users\Administrator\View\Method\HtmlView; /** @var HtmlView $this */ HTMLHelper::_('bootstrap.tooltip', '.hasTooltip'); $cancelURL = Route::_('index.php?option=com_users&task=methods.display&user_id=' . $this->user->id); if (!empty($this->returnURL)) { $cancelURL = $this->escape(base64_decode($this->returnURL)); } if ($this->record->method != 'backupcodes') { throw new RuntimeException(Text::_('JERROR_ALERTNOAUTHOR'), 403); } ?> <h2> <?php echo Text::_('COM_USERS_USER_BACKUPCODES') ?> </h2> <p class="text-muted"> <?php echo Text::_('COM_USERS_USER_BACKUPCODES_DESC') ?> </p> <table class="table table-striped"> <?php for ($i = 0; $i < (count($this->backupCodes) / 2); $i++) : ?> <tr> <td> <?php if (!empty($this->backupCodes[2 * $i])) : ?> <?php // This is a Key emoji; we can hide it from screen readers ?> <span aria-hidden="true">🔑</span> <?php echo $this->backupCodes[2 * $i] ?> <?php endif; ?> </td> <td> <?php if (!empty($this->backupCodes[1 + 2 * $i])) : ?> <?php // This is a Key emoji; we can hide it from screen readers ?> <span aria-hidden="true">🔑</span> <?php echo $this->backupCodes[1 + 2 * $i] ?> <?php endif ;?> </td> </tr> <?php endfor; ?> </table> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_MFA_BACKUPCODES_RESET_INFO'); ?> </div> <div class="d-sm-none"> <a class="btn btn-danger" href="<?php echo Route::_(sprintf("index.php?option=com_users&task=method.regenerateBackupCodes&user_id=%s&%s=1%s", $this->user->id, Factory::getApplication()->getFormToken(), empty($this->returnURL) ? '' : '&returnurl=' . $this->returnURL)) ?>"> <span class="icon icon-refresh" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_MFA_BACKUPCODES_RESET'); ?> </a> <a href="<?php echo $cancelURL ?>" class="btn btn-secondary"> <span class="icon icon-cancel-2 icon-ban-circle"></span> <?php echo Text::_('JCANCEL'); ?> </a> </div> PKAA#]��S* -components/com_users/tmpl/methods/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Users\Administrator\View\Methods\HtmlView; /** @var HtmlView $this */ ?> <div id="com-users-methods-list"> <div id="com-users-methods-reset-container" class="d-flex align-items-center border border-1 rounded-3 p-2 bg-light"> <div id="com-users-methods-reset-message" class="flex-grow-1"> <?php echo Text::_('COM_USERS_MFA_LIST_STATUS_' . ($this->mfaActive ? 'ON' : 'OFF')) ?> </div> <?php if ($this->mfaActive) : ?> <div> <a href="<?php echo Route::_('index.php?option=com_users&task=methods.disable&' . Factory::getApplication()->getFormToken() . '=1' . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id) ?>" class="btn btn-danger btn-sm"> <?php echo Text::_('COM_USERS_MFA_LIST_REMOVEALL'); ?> </a> </div> <?php endif; ?> </div> <?php if (!count($this->methods)) : ?> <div id="com-users-methods-list-instructions" class="alert alert-info mt-2"> <span class="icon icon-info-circle" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_MFA_LIST_INSTRUCTIONS'); ?> </div> <?php elseif ($this->isMandatoryMFASetup) : ?> <div class="alert alert-info my-3"> <h3 class="alert-heading"> <?php echo Text::_('COM_USERS_MFA_MANDATORY_NOTICE_HEAD') ?> </h3> <p> <?php echo Text::_('COM_USERS_MFA_MANDATORY_NOTICE_BODY') ?> </p> </div> <?php endif ?> <?php $this->setLayout('list'); echo $this->loadTemplate(); ?> </div> PKAA#]��&&*components/com_users/tmpl/methods/list.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\Component\Users\Administrator\Helper\Mfa as MfaHelper; use Joomla\Component\Users\Administrator\Model\MethodsModel; use Joomla\Component\Users\Administrator\View\Methods\HtmlView; /** @var HtmlView $this */ HTMLHelper::_('bootstrap.tooltip', '.hasTooltip'); /** @var MethodsModel $model */ $model = $this->getModel(); $this->document->getWebAssetManager()->useScript('com_users.two-factor-list'); $canAddEdit = MfaHelper::canAddEditMethod($this->user); $canDelete = MfaHelper::canDeleteMethod($this->user); ?> <div id="com-users-methods-list-container"> <?php foreach ($this->methods as $methodName => $method) : $methodClass = 'com-users-methods-list-method-name-' . htmlentities($method['name']) . ($this->defaultMethod == $methodName ? ' com-users-methods-list-method-default' : ''); ?> <div class="com-users-methods-list-method <?php echo $methodClass?> mx-1 mt-3 mb-4 card <?php echo count($method['active']) ? 'border-secondary' : '' ?>"> <div class="com-users-methods-list-method-header card-header <?php echo count($method['active']) ? 'border-secondary bg-secondary text-white' : 'bg-light' ?> d-flex flex-wrap align-items-center gap-2"> <div class="com-users-methods-list-method-image pt-1 px-3 pb-2 bg-light rounded-2"> <img src="<?php echo Uri::root() . $method['image'] ?>" alt="<?php echo $this->escape($method['display']) ?>" class="img-fluid" > </div> <div class="com-users-methods-list-method-title flex-grow-1 d-flex flex-column"> <h3 class="<?php echo count($method['active']) ? 'text-white' : '' ?> fs-2 p-0 m-0 d-flex gap-3 align-items-center"> <span class="me-1 flex-grow-1"> <?php echo $method['display'] ?> </span> <?php if ($this->defaultMethod == $methodName) : ?> <span id="com-users-methods-list-method-default-tag" class="badge bg-info p-2 fs-4 me-1"> <?php echo Text::_('COM_USERS_MFA_LIST_DEFAULTTAG') ?> </span> <?php endif; ?> </h3> </div> </div> <div class="com-users-methods-list-method-records-container card-body"> <div class="com-users-methods-list-method-info my-1 pb-1 text-muted"> <?php echo $method['shortinfo'] ?> </div> <?php if (count($method['active'])) : ?> <div class="com-users-methods-list-method-records pt-2 my-2"> <?php foreach ($method['active'] as $record) : ?> <div class="com-users-methods-list-method-record d-flex flex-row flex-wrap justify-content-start border-top py-2"> <div class="com-users-methods-list-method-record-info flex-grow-1 d-flex flex-column align-items-start gap-1"> <?php if ($methodName === 'backupcodes' && $canAddEdit) : ?> <div class="alert alert-info mt-1 w-100"> <?php echo Text::sprintf('COM_USERS_MFA_BACKUPCODES_PRINT_PROMPT_HEAD', Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id), 'text-decoration-underline') ?> </div> <?php else : ?> <h4 class="com-users-methods-list-method-record-title-container mb-1 fs-3"> <?php if ($record->default) : ?> <span id="com-users-methods-list-method-default-badge-small" class="text-warning me-1 hasTooltip" title="<?php echo $this->escape(Text::_('COM_USERS_MFA_LIST_DEFAULTTAG')) ?>"> <span class="icon icon-star" aria-hidden="true"></span> <span class="visually-hidden"><?php echo $this->escape(Text::_('COM_USERS_MFA_LIST_DEFAULTTAG')) ?></span> </span> <?php endif; ?> <span class="com-users-methods-list-method-record-title fw-bold"> <?php echo $this->escape($record->title); ?> </span> </h4> <?php endif; ?> <div class="com-users-methods-list-method-record-lastused my-1 d-flex flex-row flex-wrap justify-content-start gap-5 text-muted w-100"> <span class="com-users-methods-list-method-record-createdon"> <?php echo Text::sprintf('COM_USERS_MFA_LBL_CREATEDON', $model->formatRelative($record->created_on)) ?> </span> <span class="com-users-methods-list-method-record-lastused-date"> <?php echo Text::sprintf('COM_USERS_MFA_LBL_LASTUSED', $model->formatRelative($record->last_used)) ?> </span> </div> </div> <?php if ($methodName !== 'backupcodes' && ($canAddEdit || $canDelete)) : ?> <div class="com-users-methods-list-method-record-actions my-2 d-flex flex-row flex-wrap justify-content-center align-content-center align-items-start"> <?php if ($canAddEdit) : ?> <a class="com-users-methods-list-method-record-edit btn btn-secondary btn-sm mx-1 hasTooltip" href="<?php echo Route::_('index.php?option=com_users&task=method.edit&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id)?>" title="<?php echo Text::_('JACTION_EDIT') ?> <?php echo $this->escape($record->title); ?>"> <span class="icon icon-pencil" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('JACTION_EDIT') ?> <?php echo $this->escape($record->title); ?></span> </a> <?php endif ?> <?php if ($method['canDisable'] && $canDelete) : ?> <a class="com-users-methods-list-method-record-delete btn btn-danger btn-sm mx-1 hasTooltip" href="<?php echo Route::_('index.php?option=com_users&task=method.delete&id=' . (int) $record->id . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id . '&' . Factory::getApplication()->getFormToken() . '=1')?>" title="<?php echo Text::_('JACTION_DELETE') ?> <?php echo $this->escape($record->title); ?>"> <span class="icon icon-trash" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('JACTION_DELETE') ?> <?php echo $this->escape($record->title); ?></span> </a> <?php endif; ?> </div> <?php endif; ?> </div> <?php endforeach; ?> </div> <?php endif; ?> <?php if ($canAddEdit && (empty($method['active']) || $method['allowMultiple'])) : ?> <div class="com-users-methods-list-method-addnew-container border-top pt-2"> <a href="<?php echo Route::_('index.php?option=com_users&task=method.add&method=' . $this->escape(urlencode($method['name'])) . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id)?>" class="com-users-methods-list-method-addnew btn btn-outline-primary btn-sm" > <span class="icon-plus-2" aria-hidden="true"></span> <?php echo Text::sprintf('COM_USERS_MFA_ADD_AUTHENTICATOR_OF_TYPE', $method['display']) ?> </a> </div> <?php endif; ?> </div> </div> <?php endforeach; ?> </div> PKAA#]�b���/components/com_users/tmpl/methods/firsttime.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Users\Administrator\View\Methods\HtmlView; /** @var HtmlView $this */ $headingLevel = 2; ?> <div id="com-users-methods-list"> <?php if (!$this->isAdmin) : ?> <h<?php echo $headingLevel ?> id="com-users-methods-list-head"> <?php echo Text::_('COM_USERS_MFA_FIRSTTIME_PAGE_HEAD'); ?> </h<?php echo $headingLevel++ ?>> <?php endif; ?> <div id="com-users-methods-list-instructions" class="alert alert-info"> <h<?php echo $headingLevel ?> class="alert-heading"> <span class="fa fa-shield-alt" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_MFA_FIRSTTIME_INSTRUCTIONS_HEAD'); ?> </h<?php echo $headingLevel ?>> <p> <?php echo Text::_('COM_USERS_MFA_FIRSTTIME_INSTRUCTIONS_WHATITDOES'); ?> </p> <a href="<?php echo Route::_( 'index.php?option=com_users&task=methods.doNotShowThisAgain' . ($this->returnURL ? '&returnurl=' . $this->escape(urlencode($this->returnURL)) : '') . '&user_id=' . $this->user->id . '&' . Factory::getApplication()->getFormToken() . '=1' )?>" class="btn btn-danger w-100"> <?php echo Text::_('COM_USERS_MFA_FIRSTTIME_NOTINTERESTED'); ?> </a> </div> <?php $this->setLayout('list'); echo $this->loadTemplate(); ?> </div> PKAA#]g �5��'components/com_users/tmpl/user/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; /** @var Joomla\Component\Users\Administrator\View\User\HtmlView $this */ /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate'); $input = Factory::getApplication()->getInput(); // Get the form fieldsets. $fieldsets = $this->form->getFieldsets(); $settings = []; $this->useCoreUI = true; ?> <form action="<?php echo Route::_('index.php?option=com_users&layout=edit&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="user-form" enctype="multipart/form-data" aria-label="<?php echo Text::_('COM_USERS_USER_FORM_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="form-validate"> <h2><?php echo $this->escape($this->form->getValue('name', null, Text::_('COM_USERS_USER_NEW_USER_TITLE'))); ?></h2> <div class="main-card"> <?php echo HTMLHelper::_('uitab.startTabSet', 'myTab', ['active' => 'details', 'recall' => true, 'breakpoint' => 768]); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'details', Text::_('COM_USERS_USER_ACCOUNT_DETAILS')); ?> <fieldset class="options-form"> <legend><?php echo Text::_('COM_USERS_USER_ACCOUNT_DETAILS'); ?></legend> <div class="form-grid"> <?php echo $this->form->renderFieldset('user_details'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php if ($this->grouplist) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'groups', Text::_('COM_USERS_ASSIGNED_GROUPS')); ?> <fieldset id="fieldset-groups" class="options-form"> <legend><?php echo Text::_('COM_USERS_ASSIGNED_GROUPS'); ?></legend> <div> <?php echo $this->loadTemplate('groups'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php $this->ignore_fieldsets = ['user_details']; echo LayoutHelper::render('joomla.edit.params', $this); ?> <?php if (!empty($this->mfaConfigurationUI)) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'multifactorauth', Text::_('COM_USERS_USER_MULTIFACTOR_AUTH')); ?> <fieldset class="options-form"> <legend><?php echo Text::_('COM_USERS_USER_MULTIFACTOR_AUTH'); ?></legend> <?php echo $this->mfaConfigurationUI ?> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php echo HTMLHelper::_('uitab.endTabSet'); ?> </div> <input type="hidden" name="task" value=""> <input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"> <?php echo HTMLHelper::_('form.token'); ?> </form> PKAA#]�����'components/com_users/tmpl/user/edit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_USER_VIEW_EDIT_TITLE"> <message> <![CDATA[COM_USERS_USER_VIEW_EDIT_DESC]]> </message> </layout> </metadata> PKAA#]8w\#xx.components/com_users/tmpl/user/edit_groups.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; echo HTMLHelper::_('access.usergroups', 'jform[groups]', $this->groups, true); PKAA#]�AD ��0components/com_users/tmpl/debuggroup/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=debuggroup&group_id=' . (int) $this->state->get('group_id')); ?>" method="post" name="adminForm" id="adminForm"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <div class="table-responsive"> <table class="table"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_DEBUG_GROUP_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <?php foreach ($this->actions as $key => $action) : ?> <th scope="col" class="w-6 text-center"> <?php echo Text::_($key); ?> </th> <?php endforeach; ?> <th scope="col" class="w-6"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_LFT', 'a.lft', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-3"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php foreach ($this->items as $i => $item) : ?> <tr class="row0"> <th scope="row"> <?php echo $this->escape(Text::_($item->title)); ?> </th> <td> <?php echo LayoutHelper::render('joomla.html.treeprefix', ['level' => $item->level + 1]) . $this->escape($item->name); ?> </td> <?php foreach ($this->actions as $action) : ?> <?php $name = $action[0]; $check = $item->checks[$name]; if ($check === true) : $class = 'text-success icon-check'; $button = 'btn-success'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); elseif ($check === false) : $class = 'text-danger icon-times'; $button = 'btn-danger'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); elseif ($check === null) : $class = 'text-danger icon-minus-circle'; $button = 'btn-warning'; $text = Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); else : $class = ''; $button = ''; $text = ''; endif; ?> <td class="text-center"> <span class="<?php echo $class; ?>" aria-hidden="true"></span> <span class="visually-hidden"> <?php echo $text; ?></span> </td> <?php endforeach; ?> <td> <?php echo (int) $item->lft; ?> - <?php echo (int) $item->rgt; ?> </td> <td> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <div class="legend"> <span class="text-danger icon-minus-circle" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); ?> <span class="text-success icon-check" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); ?> <span class="text-danger icon-times" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); ?> </div> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> </div> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </form> PKAA#]�in??,components/com_users/tmpl/levels/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\Component\Users\Administrator\Helper\UsersHelper; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $user = Factory::getUser(); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $saveOrder = $listOrder == 'a.ordering'; if ($saveOrder && !empty($this->items)) { $saveOrderingUrl = 'index.php?option=com_users&task=levels.saveOrderAjax&tmpl=component&' . Session::getFormToken() . '=1'; HTMLHelper::_('draggablelist.draggable'); } ?> <form action="<?php echo Route::_('index.php?option=com_users&view=levels'); ?>" method="post" id="adminForm" name="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this, 'options' => ['filterButton' => false]]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table" id="levelList"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_LEVELS_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', '', 'a.ordering', $listDirn, $listOrder, null, 'asc', 'JGRID_HEADING_ORDERING', 'icon-sort'); ?> </th> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_LEVEL_NAME', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="d-none d-md-table-cell"> <?php echo Text::_('COM_USERS_USER_GROUPS_HAVING_ACCESS'); ?> </th> <th scope="col" class="w-1 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody<?php if ($saveOrder) : ?> class="js-draggable" data-url="<?php echo $saveOrderingUrl; ?>" data-direction="<?php echo strtolower($listDirn); ?>"<?php endif; ?>> <?php $count = count($this->items); ?> <?php foreach ($this->items as $i => $item) : $ordering = ($listOrder == 'a.ordering'); $canCreate = $user->authorise('core.create', 'com_users'); $canEdit = $user->authorise('core.edit', 'com_users'); $canChange = $user->authorise('core.edit.state', 'com_users'); // Decode level groups $groups = json_decode($item->rules); // If this group is super admin and this user is not super admin, $canEdit is false if (!Factory::getUser()->authorise('core.admin') && $groups && Access::checkGroup($groups[0], 'core.admin')) { $canEdit = false; $canChange = false; } ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"> <?php if ($canEdit) : ?> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->title); ?> <?php endif; ?> </td> <td class="text-center d-none d-md-table-cell"> <?php $iconClass = ''; if (!$canChange) { $iconClass = ' inactive'; } elseif (!$saveOrder) { $iconClass = ' inactive" title="' . Text::_('JORDERINGDISABLED'); } ?> <span class="sortable-handler<?php echo $iconClass ?>"> <span class="icon-ellipsis-v" aria-hidden="true"></span> </span> <?php if ($canChange && $saveOrder) : ?> <input type="text" name="order[]" size="5" value="<?php echo $item->ordering; ?>" class="width-20 text-area-order hidden"> <?php endif; ?> </td> <th scope="row"> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=level.edit&id=' . $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($item->title); ?>"> <?php echo $this->escape($item->title); ?></a> <?php else : ?> <?php echo $this->escape($item->title); ?> <?php endif; ?> </th> <td class="d-none d-md-table-cell"> <?php echo UsersHelper::getVisibleByGroups($item->rules); ?> </td> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </form> PKAA#]۽j ��,components/com_users/tmpl/levels/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_LEVELS_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_USERS_LEVELS_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKAA#]J���*components/com_users/tmpl/mail/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_MAIL_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_USERS_MAIL_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKAA#]� � � *components/com_users/tmpl/mail/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; /** @var Joomla\Component\Users\Administrator\View\Mail\HtmlView $this */ /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate'); $comUserParams = ComponentHelper::getParams('com_users'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=mail'); ?>" name="adminForm" method="post" id="mail-form" aria-label="<?php echo Text::_('COM_USERS_MASSMAIL_FORM_NEW'); ?>" class="main-card p-4 form-validate"> <div class="row"> <div class="col-lg-9"> <div class="control-group"> <?php echo $this->form->getLabel('subject'); ?> <span class="input-group"> <?php if (!empty($comUserParams->get('mailSubjectPrefix'))) : ?> <span class="input-group-text"><?php echo $comUserParams->get('mailSubjectPrefix'); ?></span> <?php endif; ?> <?php echo $this->form->getInput('subject'); ?> </span> </div> <div class="control-group"> <?php echo $this->form->getLabel('message'); ?> <?php echo $this->form->getInput('message'); ?> <?php if (!empty($comUserParams->get('mailBodySuffix'))) : ?> <div class="mt-1 card"> <div class="card-body"> <?php echo $comUserParams->get('mailBodySuffix'); ?> </div> </div> <?php endif; ?> </div> </div> <div class="col-lg-3"> <?php echo $this->form->renderField('recurse'); ?> <?php echo $this->form->renderField('mode'); ?> <?php echo $this->form->renderField('disabled'); ?> <?php echo $this->form->renderField('bcc'); ?> <?php echo $this->form->renderField('group'); ?> </div> </div> <input type="hidden" name="task" value=""> <?php echo HTMLHelper::_('form.token'); ?> </form> PKAA#]|�G�G;G;+components/com_users/tmpl/users/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\String\PunycodeHelper; /** @var \Joomla\Component\Users\Administrator\View\Users\HtmlView $this */ /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $loggeduser = Factory::getUser(); $mfa = PluginHelper::isEnabled('multifactorauth'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=users'); ?>" method="post" name="adminForm" id="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php // Search tools bar echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table" id="userList"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_USERS_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_USERNAME', 'a.username', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-5 text-center d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ENABLED', 'a.block', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-5 text-center d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ACTIVATED', 'a.activation', $listDirn, $listOrder); ?> </th> <?php if ($mfa) : ?> <th scope="col" class="w-5 text-center d-none d-md-table-cell"> <?php echo Text::_('COM_USERS_HEADING_MFA'); ?> </th> <?php endif; ?> <th scope="col" class="w-12 d-none d-md-table-cell"> <?php echo Text::_('COM_USERS_HEADING_GROUPS'); ?> </th> <th scope="col" class="w-12 d-none d-xl-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_EMAIL', 'a.email', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-12 d-none d-xl-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_LAST_VISIT_DATE', 'a.lastvisitDate', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-12 d-none d-xl-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_REGISTRATION_DATE', 'a.registerDate', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-5 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php foreach ($this->items as $i => $item) : $canEdit = $this->canDo->get('core.edit'); $canChange = $loggeduser->authorise('core.edit.state', 'com_users'); // If this group is super admin and this user is not super admin, $canEdit is false if ((!$loggeduser->authorise('core.admin')) && Access::check($item->id, 'core.admin')) { $canEdit = false; $canChange = false; } ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"> <?php if ($canEdit || $canChange) : ?> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->name); ?> <?php endif; ?> </td> <th scope="row"> <div class="name break-word"> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=user.edit&id=' . (int) $item->id); ?>" title="<?php echo Text::sprintf('COM_USERS_EDIT_USER', $this->escape($item->name)); ?>"> <?php echo $this->escape($item->name); ?></a> <?php else : ?> <?php echo $this->escape($item->name); ?> <?php endif; ?> </div> <div class="btn-group"> <?php echo HTMLHelper::_('users.addNote', $item->id); ?> <?php if ($item->note_count > 0) : ?> <button type="button" class="btn btn-secondary btn-sm dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> <span class="visually-hidden"><?php echo Text::_('JGLOBAL_TOGGLE_DROPDOWN'); ?></span> </button> <div class="dropdown-menu"> <?php echo HTMLHelper::_('users.filterNotes', $item->note_count, $item->id); ?> <?php echo HTMLHelper::_('users.notes', $item->note_count, $item->id); ?> </div> <?php endif; ?> </div> <?php echo HTMLHelper::_('users.notesModal', $item->note_count, $item->id); ?> <?php if ($item->requireReset == '1') : ?> <span class="badge bg-warning text-dark"><?php echo Text::_('COM_USERS_PASSWORD_RESET_REQUIRED'); ?></span> <?php endif; ?> </th> <td class="break-word d-none d-md-table-cell"> <?php echo $this->escape($item->username); ?> </td> <td class="text-center d-md-table-cell"> <?php $self = $loggeduser->id == $item->id; ?> <?php if ($canChange) : ?> <?php echo HTMLHelper::_('jgrid.state', HTMLHelper::_('users.blockStates', $self), $item->block, $i, 'users.', !$self); ?> <?php else : ?> <?php echo HTMLHelper::_('jgrid.state', HTMLHelper::_('users.blockStates', $self), $item->block, $i, 'users.', false); ?> <?php endif; ?> </td> <td class="text-center d-md-table-cell"> <?php if (empty($item->activation)) : ?> <span class="icon-check" aria-hidden="true" aria-describedby="tip-activated<?php echo $i; ?>"></span> <div role="tooltip" id="tip-activated<?php echo $i; ?>"> <?php echo Text::_('COM_USERS_ACTIVATED'); ?> </div> <?php else : ?> <?php echo HTMLHelper::_('jgrid.state', HTMLHelper::_('users.activateStates'), 1, $i, 'users.', true); ?> <?php endif; ?> </td> <?php if ($mfa) : ?> <td class="text-center d-none d-md-table-cell"> <?php if ($item->mfaRecords > 0 || !empty($item->otpKey)) : ?> <span class="icon-check" aria-hidden="true" aria-describedby="tip-mfa<?php echo $i; ?>"></span> <div role="tooltip" id="tip-mfa<?php echo $i; ?>"> <?php echo Text::_('COM_USERS_MFA_ACTIVE'); ?> </div> <?php else : ?> <span class="icon-times" aria-hidden="true" aria-describedby="tip-mfa<?php echo $i; ?>"></span> <div role="tooltip" id="tip-mfa<?php echo $i; ?>"> <?php echo Text::_('COM_USERS_MFA_NOTACTIVE'); ?> </div> <?php endif; ?> </td> <?php endif; ?> <td class="d-none d-md-table-cell"> <?php if (substr_count($item->group_names, "\n") > 1) : ?> <span tabindex="0"><?php echo Text::_('COM_USERS_USERS_MULTIPLE_GROUPS'); ?></span> <div role="tooltip" id="tip<?php echo $i; ?>"> <strong><?php echo Text::_('COM_USERS_HEADING_GROUPS'); ?></strong> <ul><li><?php echo str_replace("\n", '</li><li>', $item->group_names); ?></li></ul> </div> <?php else : ?> <?php echo nl2br($item->group_names, false); ?> <?php endif; ?> <a class="btn btn-sm btn-secondary" href="<?php echo Route::_('index.php?option=com_users&view=debuguser&user_id=' . (int) $item->id); ?>"> <?php echo Text::_('COM_USERS_DEBUG_PERMISSIONS'); ?> </a> </td> <td class="d-none d-xl-table-cell break-word"> <?php echo $this->escape(PunycodeHelper::emailToUTF8($item->email)); ?> </td> <td class="d-none d-xl-table-cell"> <?php if ($item->lastvisitDate !== null) : ?> <?php echo HTMLHelper::_('date', $item->lastvisitDate, Text::_('DATE_FORMAT_LC6')); ?> <?php else : ?> <?php echo Text::_('JNEVER'); ?> <?php endif; ?> </td> <td class="d-none d-xl-table-cell"> <?php echo HTMLHelper::_('date', $item->registerDate, Text::_('DATE_FORMAT_LC6')); ?> </td> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php // Load the batch processing form if user is allowed ?> <?php if ( $loggeduser->authorise('core.create', 'com_users') && $loggeduser->authorise('core.edit', 'com_users') && $loggeduser->authorise('core.edit.state', 'com_users') ) : ?> <?php echo HTMLHelper::_( 'bootstrap.renderModal', 'collapseModal', [ 'title' => Text::_('COM_USERS_BATCH_OPTIONS'), 'footer' => $this->loadTemplate('batch_footer'), ], $this->loadTemplate('batch_body') ); ?> <?php endif; ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </form> PKAA#]i�����+components/com_users/tmpl/users/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_USERS_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_USERS_USERS_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKAA#]���= = 6components/com_users/tmpl/users/default_batch_body.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; // Create the copy/move options. $options = [ HTMLHelper::_('select.option', 'add', Text::_('COM_USERS_BATCH_ADD')), HTMLHelper::_('select.option', 'del', Text::_('COM_USERS_BATCH_DELETE')), HTMLHelper::_('select.option', 'set', Text::_('COM_USERS_BATCH_SET')) ]; // Create the reset password options. $resetOptions = [ HTMLHelper::_('select.option', '', Text::_('COM_USERS_NO_ACTION')), HTMLHelper::_('select.option', 'yes', Text::_('JYES')), HTMLHelper::_('select.option', 'no', Text::_('JNO')) ]; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('joomla.batch-copymove'); ?> <div class="p-3"> <form> <div class="form-group"> <label id="batch-choose-action-lbl" class="control-label" for="batch-group-id"> <?php echo Text::_('COM_USERS_BATCH_GROUP'); ?> </label> <div id="batch-choose-action" class="combo controls"> <select class="form-select" name="batch[group_id]" id="batch-group-id"> <option value=""><?php echo Text::_('JSELECT'); ?></option> <?php echo HTMLHelper::_('select.options', HTMLHelper::_('user.groups')); ?> </select> </div> </div> <div class="form-group"> <fieldset> <legend> <?php echo Text::_('COM_USERS_BATCH_ACTIONS'); ?> </legend> <?php echo HTMLHelper::_('select.radiolist', $options, 'batch[group_action]', '', 'value', 'text', 'add'); ?> </fieldset> </div> <div class="form-group"> <fieldset id="batch-password-reset_id"> <legend> <?php echo Text::_('COM_USERS_REQUIRE_PASSWORD_RESET'); ?> </legend> <?php echo HTMLHelper::_('select.radiolist', $resetOptions, 'batch[reset_id]', '', 'value', 'text', ''); ?> </fieldset> </div> </form> </div> PKAA#]1��Ukk)components/com_users/tmpl/users/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('multiselect'); $input = Factory::getApplication()->getInput(); $field = $input->getCmd('field'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $enabledStates = [0 => 'icon-check', 1 => 'icon-times']; $activatedStates = [0 => 'icon-check', 1 => 'icon-times']; $userRequired = (int) $input->get('required', 0, 'int'); $onClick = "window.parent.jSelectUser(this);window.parent.Joomla.Modal.getCurrent().close()"; ?> <div class="container-popup"> <form action="<?php echo Route::_('index.php?option=com_users&view=users&layout=modal&tmpl=component&groups=' . $input->get('groups', '', 'BASE64') . '&excluded=' . $input->get('excluded', '', 'BASE64')); ?>" method="post" name="adminForm" id="adminForm"> <?php if (!$userRequired) : ?> <div> <button type="button" class="btn btn-primary button-select" data-user-value="0" data-user-name="<?php echo $this->escape(Text::_('JLIB_FORM_SELECT_USER')); ?>" data-user-field="<?php echo $this->escape($field); ?>"><?php echo Text::_('JOPTION_NO_USER'); ?></button> </div> <?php endif; ?> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table table-sm"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_USERS_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-25"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_USERNAME', 'a.username', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ENABLED', 'a.block', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ACTIVATED', 'a.activation', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-25"> <?php echo Text::_('COM_USERS_HEADING_GROUPS'); ?> </th> <th scope="col" class="w-1"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php $i = 0; ?> <?php foreach ($this->items as $item) : ?> <tr class="row<?php echo $i % 2; ?>"> <th scope="row"> <a class="pointer button-select" href="#" data-user-value="<?php echo $item->id; ?>" data-user-name="<?php echo $this->escape($item->name); ?>" data-user-field="<?php echo $this->escape($field); ?>"> <?php echo $this->escape($item->name); ?> </a> </th> <td> <?php echo $this->escape($item->username); ?> </td> <td class="text-center"> <span class="tbody-icon"> <span class="<?php echo $enabledStates[(int) $this->escape($item->block)]; ?>"></span> </span> </td> <td class="text-center"> <span class="tbody-icon"> <span class="<?php echo $activatedStates[(empty($item->activation) ? 0 : 1)]; ?>"></span> </span> </td> <td> <?php echo nl2br($item->group_names, false); ?> </td> <td> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="field" value="<?php echo $this->escape($field); ?>"> <input type="hidden" name="boxchecked" value="0"> <input type="hidden" name="required" value="<?php echo $userRequired; ?>"> <?php echo HTMLHelper::_('form.token'); ?> </form> </div> PKAA#]��Ї�8components/com_users/tmpl/users/default_batch_footer.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; ?> <button type="button" class="btn btn-secondary" onclick="document.getElementById('batch-group-id').value=''" data-bs-dismiss="modal"> <?php echo Text::_('JCANCEL'); ?> </button> <button type="submit" class="btn btn-success" onclick="Joomla.submitbutton('user.batch');return false;"> <?php echo Text::_('JGLOBAL_BATCH_PROCESS'); ?> </button> PKAA#]�mK���)components/com_users/tmpl/notes/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; ?> <div class="unotes"> <h1><?php echo Text::sprintf('COM_USERS_NOTES_FOR_USER', $this->user->name, $this->user->id); ?></h1> <?php if (empty($this->items)) : ?> <?php echo Text::_('COM_USERS_NO_NOTES'); ?> <?php else : ?> <ul class="alternating"> <?php foreach ($this->items as $item) : ?> <li> <div class="fltlft utitle"> <?php if ($item->subject) : ?> <h4><?php echo Text::sprintf('COM_USERS_NOTE_N_SUBJECT', (int) $item->id, $this->escape($item->subject)); ?></h4> <?php else : ?> <h4><?php echo Text::sprintf('COM_USERS_NOTE_N_SUBJECT', (int) $item->id, Text::_('COM_USERS_EMPTY_SUBJECT')); ?></h4> <?php endif; ?> </div> <div class="fltlft utitle"> <?php echo HTMLHelper::_('date', $item->created_time, Text::_('DATE_FORMAT_LC2')); ?> </div> <?php $category_image = $item->cparams->get('image'); ?> <?php if ($item->catid && isset($category_image)) : ?> <div class="fltlft utitle"> <?php echo HTMLHelper::_('users.image', $category_image); ?> </div> <div class="fltlft utitle"> <em><?php echo $this->escape($item->category_title); ?></em> </div> <?php endif; ?> <div class="clr"></div> <div class="ubody"> <?php echo (isset($item->body) ? HTMLHelper::_('content.prepare', $item->body) : ''); ?> </div> </li> <?php endforeach; ?> </ul> <?php endif; ?> </div> PKAA#]�&�%%.components/com_users/tmpl/notes/emptystate.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2021 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Layout\LayoutHelper; $displayData = [ 'textPrefix' => 'COM_USERS_NOTES', 'formURL' => 'index.php?option=com_users&view=notes', 'helpURL' => 'https://docs.joomla.org/Special:MyLanguage/Help40:User_Notes', 'icon' => 'icon-users user', ]; if (Factory::getApplication()->getIdentity()->authorise('core.create', 'com_users')) { $displayData['createURL'] = 'index.php?option=com_users&task=note.add'; } echo LayoutHelper::render('joomla.content.emptystate', $displayData); PKAA#]\V��+components/com_users/tmpl/notes/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $user = Factory::getUser(); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=notes'); ?>" method="post" name="adminForm" id="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_NOTES_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_SUBJECT', 'a.subject', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-20 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_USER', 'u.name', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_REVIEW', 'a.review_time', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php foreach ($this->items as $i => $item) : $canEdit = $user->authorise('core.edit', 'com_users.category.' . $item->catid); $canCheckin = $user->authorise('core.admin', 'com_checkin') || $item->checked_out == $user->get('id') || is_null($item->checked_out); $canChange = $user->authorise('core.edit.state', 'com_users.category.' . $item->catid) && $canCheckin; $subject = $item->subject ?: Text::_('COM_USERS_EMPTY_SUBJECT'); ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center checklist"> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $subject); ?> </td> <td class="text-center"> <?php echo HTMLHelper::_('jgrid.published', $item->state, $i, 'notes.', $canChange, 'cb', $item->publish_up, $item->publish_down); ?> </td> <th scope="row"> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $i, $item->editor, $item->checked_out_time, 'notes.', $canCheckin); ?> <?php endif; ?> <?php $subject = $item->subject ?: Text::_('COM_USERS_EMPTY_SUBJECT'); ?> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=note.edit&id=' . $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($subject); ?>"> <?php echo $this->escape($subject); ?></a> <?php else : ?> <?php echo $this->escape($subject); ?> <?php endif; ?> <div class="small"> <?php echo Text::_('JCATEGORY') . ': ' . $this->escape($item->category_title); ?> </div> </th> <td class="d-none d-md-table-cell"> <?php echo $this->escape($item->user_name); ?> </td> <td class="d-none d-md-table-cell"> <?php if ($item->review_time !== null) : ?> <?php echo HTMLHelper::_('date', $item->review_time, Text::_('DATE_FORMAT_LC4')); ?> <?php else : ?> <?php echo Text::_('COM_USERS_EMPTY_REVIEW'); ?> <?php endif; ?> </td> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <div> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </div> </form> PKAA#]�X�C��+components/com_users/tmpl/notes/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_NOTES_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_USERS_NOTES_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKAA#]��'���'components/com_users/tmpl/note/edit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_NOTE_VIEW_EDIT_TITLE"> <message> <![CDATA[COM_USERS_NOTE_VIEW_EDIT_DESC]]> </message> </layout> </metadata> PKAA#]\��P��'components/com_users/tmpl/note/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2011 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=note&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="note-form" aria-label="<?php echo Text::_('COM_USERS_NOTE_FORM_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="form-validate"> <fieldset class="adminform"> <div class="card mt-4"> <div class="card-body"> <div class="row"> <div class="form-grid"> <?php echo $this->form->renderField('subject'); ?> <?php echo $this->form->renderField('user_id'); ?> <?php echo $this->form->renderField('catid'); ?> <?php echo $this->form->renderField('state'); ?> <?php echo $this->form->renderField('review_time'); ?> <?php echo $this->form->renderField('version_note'); ?> <input type="hidden" name="task" value=""> <?php echo HTMLHelper::_('form.token'); ?> </div> <div class="col-12"> <?php echo $this->form->renderField('body'); ?> </div> </div> </div> </div> </fieldset> </form> PKAA#]�f���!�!,components/com_users/tmpl/groups/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Access\Access; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; $user = Factory::getUser(); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); Text::script('COM_USERS_GROUPS_CONFIRM_DELETE', true); /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_users.admin-users-groups') ->useScript('multiselect') ->useScript('table.columns'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=groups'); ?>" method="post" name="adminForm" id="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this, 'options' => ['filterButton' => false]]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table" id="groupList"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_GROUPS_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_GROUP_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 text-center"> <?php echo Text::_('COM_USERS_DEBUG_PERMISSIONS'); ?> </th> <th scope="col" class="w-10 text-center d-none d-md-table-cell"> <span class="icon-check" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_COUNT_ENABLED_USERS'); ?> </th> <th scope="col" class="w-10 text-center d-none d-md-table-cell"> <span class="icon-times" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_COUNT_DISABLED_USERS'); ?> </th> <th scope="col" class="w-5 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php foreach ($this->items as $i => $item) : $canCreate = $user->authorise('core.create', 'com_users'); $canEdit = $user->authorise('core.edit', 'com_users'); // If this group is super admin and this user is not super admin, $canEdit is false if (!$user->authorise('core.admin') && Access::checkGroup($item->id, 'core.admin')) { $canEdit = false; } $canChange = $user->authorise('core.edit.state', 'com_users'); ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center" data-usercount="<?php echo $item->user_count; ?>"> <?php if ($canEdit) : ?> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->title); ?> <?php endif; ?> </td> <th scope="row"> <?php echo LayoutHelper::render('joomla.html.treeprefix', ['level' => $item->level + 1]); ?> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=group.edit&id=' . $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($item->title); ?>"> <?php echo $this->escape($item->title); ?></a> <?php else : ?> <?php echo $this->escape($item->title); ?> <?php endif; ?> </th> <td class="text-center btns"> <a href="<?php echo Route::_('index.php?option=com_users&view=debuggroup&group_id=' . (int) $item->id); ?>"> <span class="icon-list" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('COM_USERS_DEBUG_PERMISSIONS'); ?></span> </a> </td> <td class="text-center btns itemnumber d-none d-md-table-cell"> <a class="btn <?php echo $item->count_enabled > 0 ? 'btn-success' : 'btn-secondary'; ?>" href="<?php echo Route::_('index.php?option=com_users&view=users&filter[group_id]=' . (int) $item->id . '&filter[state]=0'); ?>" aria-describedby="tip-enabled<?php echo $i; ?>"> <?php echo $item->count_enabled; ?> </a> <div role="tooltip" id="tip-enabled<?php echo $i; ?>"> <?php echo Text::_('COM_USERS_COUNT_ENABLED_USERS'); ?> </div> </td> <td class="text-center btns itemnumber d-none d-md-table-cell"> <a class="btn <?php echo $item->count_disabled > 0 ? 'btn-danger' : 'btn-secondary'; ?>" href="<?php echo Route::_('index.php?option=com_users&view=users&filter[group_id]=' . (int) $item->id . '&filter[state]=1'); ?>" aria-describedby="tip-blocked<?php echo $i; ?>"> <?php echo $item->count_disabled; ?> </a> <div role="tooltip" id="tip-blocked<?php echo $i; ?>"> <?php echo Text::_('COM_USERS_COUNT_DISABLED_USERS'); ?> </div> </td> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </form> PKAA#]����,components/com_users/tmpl/groups/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_GROUPS_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_USERS_GROUPS_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKAA#]��`~qq-components/com_users/tmpl/captive/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\Component\Users\Administrator\Model\CaptiveModel; use Joomla\Component\Users\Administrator\View\Captive\HtmlView; use Joomla\Utilities\ArrayHelper; /** * @var HtmlView $this View object * @var CaptiveModel $model The model */ $model = $this->getModel(); $this->document->getWebAssetManager() ->useScript('com_users.two-factor-focus'); ?> <div class="users-mfa-captive card card-body"> <h2 id="users-mfa-title"> <?php if (!empty($this->title)) : ?> <?php echo $this->title ?> <small> – <?php endif; ?> <?php if (!$this->allowEntryBatching) : ?> <?php echo $this->escape($this->record->title) ?> <?php else : ?> <?php echo $this->escape($this->getModel()->translateMethodName($this->record->method)) ?> <?php endif; ?> <?php if (!empty($this->title)) : ?> </small> <?php endif; ?> <?php if (!empty($this->renderOptions['help_url'])) : ?> <span class="float-end"> <a href="<?php echo $this->renderOptions['help_url'] ?>" class="btn btn-sm btn-secondary" target="_blank" > <span class="icon icon-question-sign" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_('JHELP') ?></span> </a> </span> <?php endif;?> </h2> <?php if ($this->renderOptions['pre_message']) : ?> <div class="users-mfa-captive-pre-message text-muted"> <?php echo $this->renderOptions['pre_message'] ?> </div> <?php endif; ?> <form action="<?php echo Route::_('index.php?option=com_users&task=captive.validate&record_id=' . ((int) $this->record->id)) ?>" id="users-mfa-captive-form" method="post" class="form-horizontal" > <?php echo HTMLHelper::_('form.token') ?> <div id="users-mfa-captive-form-method-fields" class="container"> <?php if ($this->renderOptions['field_type'] == 'custom') : ?> <?php echo $this->renderOptions['html']; ?> <?php endif; ?> <div class="row mb-3 <?php echo $this->renderOptions['input_type'] === 'hidden' ? 'd-none' : '' ?>"> <?php if ($this->renderOptions['label']) : ?> <label for="users-mfa-code" class="col-sm-3 col-form-label"> <?php echo $this->renderOptions['label'] ?> </label> <?php endif; ?> <?php $attributes = array_merge( [ 'type' => $this->renderOptions['input_type'], 'name' => 'code', 'value' => '', 'placeholder' => $this->renderOptions['placeholder'] ?? null, 'id' => 'users-mfa-code', 'class' => 'form-control' ], $this->renderOptions['input_attributes'] ); if (strpos($attributes['class'], 'form-control') === false) { $attributes['class'] .= ' form-control'; } ?> <input <?php echo ArrayHelper::toString($attributes) ?>> </div> </div> <div id="users-mfa-captive-form-standard-buttons" class="row my-3 d-sm-none"> <div class="col-sm-9 offset-sm-3"> <button class="btn btn-primary me-3 <?php echo $this->renderOptions['submit_class'] ?>" id="users-mfa-captive-button-submit" style="<?php echo $this->renderOptions['hide_submit'] ? 'display: none' : '' ?>" type="submit"> <span class="<?php echo $this->renderOptions['submit_icon'] ?>" aria-hidden="true"></span> <?php echo Text::_($this->renderOptions['submit_text']); ?> </button> <a href="<?php echo Route::_('index.php?option=com_login&task=logout&' . Factory::getApplication()->getFormToken() . '=1') ?>" class="btn btn-danger btn-sm" id="users-mfa-captive-button-logout"> <span class="icon icon-lock" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_MFA_LOGOUT'); ?> </a> <?php if (count($this->records) > 1) : ?> <a id="users-mfa-captive-form-choose-another" class="btn btn-link" href="<?php echo Route::_('index.php?option=com_users&view=captive&task=select') ?>"> <?php echo Text::_('COM_USERS_MFA_USE_DIFFERENT_METHOD'); ?> </a> <?php endif; ?> </div> </div> </form> <?php if ($this->renderOptions['post_message']) : ?> <div class="users-mfa-captive-post-message"> <?php echo $this->renderOptions['post_message'] ?> </div> <?php endif; ?> </div> PKAA#]�r�,components/com_users/tmpl/captive/select.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2022 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Prevent direct access defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\Component\Users\Administrator\View\Captive\HtmlView; /** @var HtmlView $this */ $shownMethods = []; ?> <div id="com-users-select"> <h2 id="com-users-select-heading"> <?php echo Text::_('COM_USERS_MFA_SELECT_PAGE_HEAD'); ?> </h2> <div id="com-users-select-information"> <p> <?php echo Text::_('COM_USERS_LBL_SELECT_INSTRUCTIONS'); ?> </p> </div> <div class="com-users-select-methods p-2"> <?php foreach ($this->records as $record) : if (!array_key_exists($record->method, $this->mfaMethods) && ($record->method != 'backupcodes')) { continue; } $allowEntryBatching = isset($this->mfaMethods[$record->method]) ? $this->mfaMethods[$record->method]['allowEntryBatching'] : false; if ($this->allowEntryBatching) { if ($allowEntryBatching && in_array($record->method, $shownMethods)) { continue; } $shownMethods[] = $record->method; } $methodName = $this->getModel()->translateMethodName($record->method); ?> <a class="com-users-method p-2 border-top border-dark bg-light d-flex flex-row flex-wrap justify-content-start align-items-center text-decoration-none gap-2 text-body" href="<?php echo Route::_('index.php?option=com_users&view=captive&record_id=' . $record->id)?>"> <img src="<?php echo Uri::root() . $this->getModel()->getMethodImage($record->method) ?>" alt="<?php echo $this->escape(strip_tags($record->title)) ?>" class="com-users-method-image img-fluid" /> <?php if (!$this->allowEntryBatching || !$allowEntryBatching) : ?> <span class="com-users-method-title flex-grow-1 fs-5 fw-bold"> <?php if ($record->method === 'backupcodes') : ?> <?php echo $record->title ?> <?php else : ?> <?php echo $this->escape($record->title) ?> <?php endif; ?> </span> <small class="com-users-method-name text-muted"> <?php echo $methodName ?> </small> <?php else : ?> <span class="com-users-method-title flex-grow-1 fs-5 fw-bold"> <?php echo $methodName ?> </span> <small class="com-users-method-name text-muted"> <?php echo $methodName ?> </small> <?php endif; ?> </a> <?php endforeach; ?> </div> </div> PKAA#]9�̰��/components/com_users/tmpl/debuguser/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $loginActions = []; $actions = []; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns'); ?> <form action="<?php echo Route::_('index.php?option=com_users&view=debuguser&user_id=' . (int) $this->state->get('user_id')); ?>" method="post" name="adminForm" id="adminForm"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <?php // Split the actions table foreach ($this->actions as $action) : $name = $action[0]; if (in_array($name, ['core.login.site', 'core.login.admin', 'core.login.api', 'core.login.offline'])) : $loginActions[] = $action; else : $actions[] = $action; endif; endforeach; ?> <div class="d-flex flex-wrap"> <?php foreach ($loginActions as $action) : $name = $action[0]; $check = $this->items[0]->checks[$name]; if ($check === true) : $class = 'text-success icon-check'; $button = 'btn-success'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); elseif ($check === false) : $class = 'text-danger icon-times'; $button = 'btn-danger'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); elseif ($check === null) : $class = 'text-danger icon-minus-circle'; $button = 'btn-warning'; $text = Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); endif; ?> <div class="d-inline p-2"> <?php echo Text::_($action[1]); ?> <span class="<?php echo $class; ?>" aria-hidden="true"></span> <span class="visually-hidden"><?php echo Text::_($text); ?></span> </div> <?php endforeach; ?> </div> <table class="table"> <caption class="visually-hidden"> <?php echo Text::_('COM_USERS_DEBUG_USER_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_ASSET_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <?php foreach ($actions as $key => $action) : ?> <th scope="col" class="w-6 text-center"> <?php echo Text::_($action[1]); ?> </th> <?php endforeach; ?> <th scope="col" class="w-6"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_USERS_HEADING_LFT', 'a.lft', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-3"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php foreach ($this->items as $i => $item) :?> <tr class="row0" scope="row"> <td> <?php echo $this->escape(Text::_($item->title)); ?> </td> <td> <?php echo LayoutHelper::render('joomla.html.treeprefix', ['level' => $item->level + 1]) . $this->escape($item->name); ?> </td> <?php foreach ($actions as $action) : ?> <?php $name = $action[0]; $check = $item->checks[$name]; if ($check === true) : $class = 'text-success icon-check'; $button = 'btn-success'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); elseif ($check === false) : $class = 'text-danger icon-times'; $button = 'btn-danger'; $text = Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); elseif ($check === null) : $class = 'text-danger icon-minus-circle'; $button = 'btn-warning'; $text = Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); else : $class = ''; $button = ''; $text = ''; endif; ?> <td class="text-center"> <span class="<?php echo $class; ?>" aria-hidden="true"></span> <span class="visually-hidden"> <?php echo $text; ?></span> </td> <?php endforeach; ?> <td> <?php echo (int) $item->lft; ?> - <?php echo (int) $item->rgt; ?> </td> <td> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <div class="legend"> <span class="text-danger icon-minus-circle" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_IMPLICIT_DENY'); ?> <span class="text-success icon-check" aria-hidden="true"></span> <?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_ALLOW'); ?> <span class="text-danger icon-times" aria-hidden="true"> </span><?php echo Text::_('COM_USERS_DEBUG_EXPLICIT_DENY'); ?> </div> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> <?php endif; ?> </div> </form> PKAA#]���JJ(components/com_users/tmpl/group/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate'); $this->useCoreUI = true; ?> <form action="<?php echo Route::_('index.php?option=com_users&layout=edit&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="group-form" aria-label="<?php echo Text::_('COM_USERS_GROUP_FORM_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="main-card form-validate"> <?php echo HTMLHelper::_('uitab.startTabSet', 'myTab', ['active' => 'details', 'recall' => true, 'breakpoint' => 768]); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'details', Text::_('COM_USERS_USERGROUP_DETAILS')); ?> <div class="form-grid"> <?php echo $this->form->renderField('title'); ?> <?php echo $this->form->renderField('parent_id'); ?> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php $this->ignore_fieldsets = ['group_details']; ?> <?php echo LayoutHelper::render('joomla.edit.params', $this); ?> <?php echo HTMLHelper::_('uitab.endTabSet'); ?> <input type="hidden" name="task" value=""> <?php echo HTMLHelper::_('form.token'); ?> </form> PKAA#]G����(components/com_users/tmpl/group/edit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_USERS_GROUP_VIEW_EDIT_TITLE"> <message> <![CDATA[COM_USERS_GROUP_VIEW_EDIT_DESC]]> </message> </layout> </metadata> PKAA#]i �L��components/com_users/users.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="component" method="upgrade"> <name>com_users</name> <author>Joomla! Project</author> <creationDate>2006-04</creationDate> <copyright>(C) 2006 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>COM_USERS_XML_DESCRIPTION</description> <namespace path="src">Joomla\Component\Users</namespace> <files folder="site"> <folder>forms</folder> <folder>layouts</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="site"> <language tag="en-GB">language/en-GB/com_users.ini</language> </languages> <media destination="com_users" folder="media"> <folder>js</folder> </media> <administration> <files folder="admin"> <filename>access.xml</filename> <filename>config.xml</filename> <filename>users.xml</filename> <folder>forms</folder> <folder>helpers</folder> <folder>postinstall</folder> <folder>services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="admin"> <language tag="en-GB">language/en-GB/com_users.ini</language> <language tag="en-GB">language/en-GB/com_users.sys.ini</language> </languages> </administration> <dashboards> <dashboard title="COM_USERS_DASHBOARD_TITLE" icon="icon-users">users</dashboard> </dashboards> </extension> PKAA#]<�p��&components/com_users/helpers/debug.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace */ use Joomla\Component\Users\Administrator\Helper\DebugHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users component debugging helper. * * @since 1.6 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Users\Administrator\Helper\DebugHelper instead */ class UsersHelperDebug extends DebugHelper { } PKAA#]8����&components/com_users/helpers/users.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_users * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace */ // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Users component helper. * * @since 1.6 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Users\Administrator\Helper\UsersHelper instead */ class UsersHelper extends \Joomla\Component\Users\Administrator\Helper\UsersHelper { } PKAA#]�%Z#��(components/com_convertforms/autoload.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // Register Convert Form namespace JLoader::registerNamespace('ConvertForms', JPATH_ADMINISTRATOR . '/components/com_convertforms/ConvertForms', false, false, 'psr4'); // Ensure backwards compatibility with old class names JLoader::registerAlias('ConvertFormsHelper', '\\ConvertForms\\Helper'); JLoader::registerAlias('ConvertFormsService', '\\ConvertForms\\Plugin'); JLoader::registerAlias('ConvertFormsSmartTags', '\\ConvertForms\\SmartTags'); JLoader::registerAlias('ConvertFormsAnalytics', '\\ConvertForms\\Analytics'); ?>PKAA#]�Y�<components/com_convertforms/views/editorbutton/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); class ConvertFormsViewEditorbutton extends JViewLegacy { /** * Items view display method * @return void */ public function display($tpl = null) { // Load plugin language file NRFramework\Functions::loadLanguage("plg_editors-xtd_convertforms"); // Get editor name $eName = JFactory::getApplication()->input->getCmd('e_name'); // Get form fields $xml = JPATH_PLUGINS . "/editors-xtd/convertforms/form.xml"; $form = new JForm("com_convertforms.button", array('control' => 'jform')); $form->loadFile($xml, false); // Template properties $this->eName = preg_replace('#[^A-Z0-9\-\_\[\]]#i', '', $eName); $this->form = $form; parent::display($tpl); return; } }PKAA#]b�T3��>components/com_convertforms/views/editorbutton/tmpl/button.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die; JHtml::script('com_convertforms/editorbutton.js', ['relative' => true, 'version' => 'auto']); JFactory::getDocument()->addStyleDeclaration( ' .cfEditorButton form, .eboxEditorButton .controls > * { margin:0; } .cfHeader { border-bottom: 1px dotted #ccc; margin-bottom: 15px; padding-bottom: 5px; } .cfHeader p { color:#666; font-size: 11px; } .cfHeader h3 { font-size: 16px; margin-bottom: 5px; margin-top: 0; } .cfEditorButton .control-group { margin-bottom: 15px; } .cfEditorButton { padding: 5px; } '); ?> <div class="cfEditorButton"> <form> <?php echo $this->form->renderFieldset("main") ?> <button onclick="insertConvertFormShortcode('<?php echo $this->eName; ?>', <?php echo defined('nrJ4') ? 'true' : 'false' ?>);" class="btn btn-success span12"> <?php echo JText::_('PLG_EDITORS-XTD_CONVERTFORMS_INSERTBUTTON'); ?> </button> </form> </div> PKAA#] ����4components/com_convertforms/views/form/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); /** * Item View */ class ConvertFormsViewForm extends JViewLegacy { /** * display method of Item view * @return void */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.forms.manage', true); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Assign the Data $this->form = $this->get('Form'); $this->item = $this->get('Item'); $this->isnew = (!isset($_REQUEST["id"])) ? true : false; $this->tabs = $this->get('Tabs'); $this->name = $this->item->name ?: JText::_('COM_CONVERTFORMS_UNTITLED_BOX'); \JPluginHelper::importPlugin('convertformstools'); \JFactory::getApplication()->triggerEvent('onConvertFormsBackendEditorDisplay'); $title = JText::_('COM_CONVERTFORMS') . ' - ' . ($this->isnew ? JText::_("COM_CONVERTFORMS_UNTITLED_BOX") : $this->name); JFactory::getDocument()->setTitle($title); JToolbarHelper::title($title); // Display the template parent::display($tpl); } }PKAA#]U��q��3components/com_convertforms/views/form/view.raw.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.application.component.view'); /** * Item View */ class ConvertFormsViewForm extends JViewLegacy { /** * display method of Item view * @return void */ public function display($tpl = null) { $app = JFactory::getApplication(); // Check for errors. if (count($errors = $this->get('Errors'))) { $app->enqueueMessage(implode('\n', $errors), 'error'); return false; } $layout = $app->input->get('layout', 'default'); if ($layout == 'preview') { //$data = json_decode($app->input->get('jform', null, 'RAW')); $input = json_decode(file_get_contents('php://input')); $data = json_decode($input); $xx = new JRegistry(); foreach ($data as $value) { $key = str_replace(['jform[', ']', '['], ['', '', '.'], $value->name); $xx->set($key, $value->value); } $xx = $xx->toArray(); $this->data = $this->getModel('Form')->validate('jform', $xx); $this->data['params'] = json_decode($this->data['params'], true); $this->data['fields'] = $this->data['params']['fields']; unset($this->data['params']['fields']); $this->form = ConvertForms\Helper::renderForm($this->data); } if ($layout == 'field') { $formControl = urldecode($app->input->get('formcontrol', null, 'RAW')); $loadData = $app->input->get('field', array(), 'ARRAY'); $this->field = ConvertForms\FieldsHelper::getFieldClass($loadData['type'])->getOptionsForm($formControl, $loadData); } // Display the template parent::display($tpl); } }PKAA#]�܇W�+�+4components/com_convertforms/views/form/tmpl/edit.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\HTML\HTMLHelper; use NRFramework\HTML; HTMLHelper::_('behavior.formvalidator'); HTMLHelper::_('behavior.keepalive'); HTMLHelper::_('bootstrap.dropdown'); JHtml::script('com_convertforms/admin.js', ['relative' => true, 'version' => 'auto']); JHtml::stylesheet('com_convertforms/editor.css', ['relative' => true, 'version' => 'auto']); if (defined('nrJ4')) { JFactory::getDocument()->addScript(JURI::root(true) . '/media/vendor/tinymce/tinymce.js'); HTML::fixFieldTooltips(); } else { JFactory::getDocument()->addScript(JURI::root(true) . '/media/editors/tinymce/tinymce.min.js'); JHtml::script('com_convertforms/cookie.js', ['relative' => true, 'version' => 'auto']); } $fonts = new NRFonts(); JFactory::getDocument()->addScriptDeclaration('var ConvertFormsGoogleFonts = '. json_encode($fonts->getFontGroup('google'))); $tabState = JFactory::getApplication()->input->cookie->get("ConvertFormsState" . $this->item->id, 'fields'); $tabStateParts = explode("-", $tabState); $tabActive = $tabStateParts[0]; // Smart Tags Box echo NRFramework\HTML::smartTagsBox(); if (!$this->isnew) { // Render Embed popup echo \JHtml::_('bootstrap.renderModal', 'embedForm', [ 'title' => 'Embed Form', 'footer' => '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal" data-dismiss="modal" aria-hidden="true">'. JText::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button>', ], ' <p>You are almost done! To embed this form on your site, please paste the following shortcode inside an article or a module.</p> <input class="shortcode" readonly value="{convertforms ' . $this->item->id . '}"/> <p>or you can follow the instructions from this <a target="_blank" href="https://www.tassos.gr/joomla-extensions/convert-forms/docs/how-to-display-a-form-on-the-frontend">page</a>.</p> '); } function tabSetStart($active) { echo defined('nrJ4') ? HTMLHelper::_('uitab.startTabSet', 'sections', ['active' => $active, 'orientation' => 'vertical']) : JHtml::_('bootstrap.startTabSet', 'sections', ['active' => $active]);; } function tabSetEnd() { echo defined('nrJ4') ? HTMLHelper::_('uitab.endTabSet') : JHtml::_('bootstrap.endTabSet');; } function tabStart($name, $title) { echo defined('nrJ4') ? HTMLHelper::_('uitab.addTab', 'sections', $name, JText::_($title)) : JHtml::_('bootstrap.addTab', 'sections', $name, JText::_($title)); } function tabEnd() { echo defined('nrJ4') ? HTMLHelper::_('uitab.endTab') : JHtml::_('bootstrap.endTab'); } if (defined('nrJ4')) { NRFramework\HTML::fixFieldTooltips(); } ?> <div class="cfEditor"> <?php JPluginHelper::importPlugin('convertformstools'); JFactory::getApplication()->triggerEvent('onConvertFormsEditorView'); ?> <div class="nrEditor" data-root="<?php echo JURI::root(); ?>"> <?php if (defined('nrJ4')) { ?> <div class="cfe-top"> <div> <img height="18px" src="<?php echo JURI::root() ?>media/templates/administrator/atum/images/logos/brand-small.svg"/> </div> <div> <span><?php echo JVERSION ?></span> <span class="pl-3"><?php echo JFactory::getApplication()->get('sitename') ?></span> </div> </div> <?php } ?> <div class="cfe-header"> <div class="cfe-logo"> <img width="150px" src="<?php echo JURI::root() ?>/media/com_convertforms/img/logo.svg"/> </div> <div class="cfe-title"> <label for="formname"><?php echo $this->isnew ? JText::_('COM_CONVERTFORMS_NEW_FORM') : JText::_('COM_CONVERTFORMS_EDIT_FORM') ?>:</label> <input type="text" data-fallback="<?php echo JText::_("COM_CONVERTFORMS_UNTITLED_BOX") ?>" id="formname" value="<?php echo $this->name ?>"/> </div> <div class="cfe-toolbar"> <ul class="cf-menu"> <li> <a href="#" class="btn btn-success save cf-menu-item saveForm" title="Save form" data-cfaction="save"> <i class="cf-icon-ok up-state"><?php echo JText::_('JAPPLY') ?></i> <i class="cf-icon-spin hover-state">Saving..</i> </a> </li> <li class="cf-menu-parent"> <a href="#" class="cf-icon-dots cf-menu-item " role="button" id="dropdownMenuLink" data-bs-toggle="dropdown" data-toggle="dropdown" title="View more"></a> <ul class="dropdown <?php echo defined('nrJ4') ? 'dropdown-menu' : '' ?>"> <li> <a class="<?php echo $this->isnew ? 'disabled' : '' ?>" data-bs-toggle="modal" data-bs-target="#embedForm" data-toggle="modal" data-target="#embedForm" href="#"> <span class="cf-icon-link"></span> <?php echo JText::_('NR_EMBED') ?> </a> </li> <li> <a class="<?php echo $this->isnew ? 'disabled' : '' ?>" target="_blank" href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=conversions&filter.form_id=<?php echo $this->item->id ?>"> <span class="cf-icon-users"></span> <?php echo JText::_('COM_CONVERTFORMS_SUBMISSIONS')?> </a> </li> <li class="separator"></li> <li> <a href="https://extensions.joomla.org/extension/convert-forms/" target="_blank"> <span class="cf-icon-thumbs-up"></span> <?php echo JText::sprintf('NR_RATE', JText::_('CONVERTFORMS')) ?> </a> </li> <li> <a href="http://www.tassos.gr/contact?topic=Bug Report&extension=Convert Forms" target="_blank"> <span class="cf-icon-attention"></span> <?php echo JText::_('NR_REPORT_ISSUE') ?> </a> </li> <li> <a href="http://www.tassos.gr/joomla-extensions/convert-forms/docs" target="_blank"> <span class="cf-icon-help"></span> <?php echo JText::_('JHELP') ?> </a> </li> </ul> </li> <li> <a href="<?php echo JRoute::_('index.php?option=com_convertforms&view=forms') ?>" class="cf-icon-cancel cf-menu-item" title="Close and return to forms list"></a> </li> </ul> </div> </div> <div class="cfe-main"> <div class="nrEditorOptions inputSettings"> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&layout=edit&id='.(int) $this->item->id); ?>" method="post" name="adminForm" id="adminForm" class="form-vertical" pk="<?php echo (int) $this->item->id ?>"> <div class="tabs-left"> <?php tabSetStart($tabActive); foreach ($this->tabs as $key => $tab) { $tabName = $key; $tabLabel = JText::_($tab["label"]); tabStart($tabName, '<span data-label="' . $tabLabel . '" class="' . $tab["icon"] . '"></span>'); $panelActive = $tabActive == $key ? $tabState : ""; echo JHtml::_('bootstrap.startAccordion', $tabName, array('active' => $panelActive)); echo "<h2>" . $tabLabel . "</h2>"; $single = count($tab["fields"]) == 1 ? true : false; foreach ($tab["fields"] as $key => $field) { if ($single) { echo '<div class="accordion-inner"> ' . $this->form->renderFieldset($field["name"]) . '</div>'; continue; } echo JHtml::_('bootstrap.addSlide', $tabName, JText::_($field["label"]), $tabName.'-' . $field["name"], $field["name"]); $fieldset = $this->form->renderFieldset($field["name"]); JFactory::getApplication()->triggerEvent('onConvertFormsBackendFormPrepareFieldset', [$field["name"], &$fieldset]); echo $fieldset; echo JHtml::_('bootstrap.endSlide'); } echo JHtml::_('bootstrap.endAccordion'); tabEnd(); } tabSetEnd(); ?> <input type="hidden" name="task" value="form.edit" /> <?php echo JHtml::_('form.token'); ?> </div> </form> </div> <div class="nrEditorPreview hidden-phone"> <div class="nrEditorTools inputSettings"> <div class="l nrEditorTabs"> <ul class="nrNav"> <li class="nrCheckbox"> <input value="1" type="checkbox" id="preview-successmsg"> <label for="preview-successmsg"><?php echo JText::_("COM_CONVERTFORMS_PREVIEW_SUCCESS") ?></label> </li> </ul> </div> <div class="r"> </div> </div> <div class="nrEditorPreviewContainer"></div> <div class="loader"></div> </div> </div> </div> </div>PKAA#] ����5components/com_convertforms/views/form/tmpl/field.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <?php echo $this->field; ?> PKAA#]`:�ϻ�5components/com_convertforms/views/forms/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // import Joomla view library jimport('joomla.application.component.view'); /** * Forms View Class */ class ConvertFormsViewForms extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.forms.manage', true); $this->items = $this->get('Items'); $this->state = $this->get('State'); $this->pagination = $this->get('Pagination'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->config = JComponentHelper::getParams('com_convertforms'); ConvertForms\Helper::addSubmenu('forms'); $this->sidebar = JHtmlSidebar::render(); $this->moduleID = NRFramework\Extension::getID('mod_convertforms', 'module'); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Set the toolbar $this->addToolBar(); ConvertForms\Helper::renderSelectTemplateModal(); // Display the template parent::display($tpl); } /** * Add Toolbar to layout */ protected function addToolBar() { $canDo = ConvertForms\Helper::getActions(); $state = $this->get('State'); $viewLayout = JFactory::getApplication()->input->get('layout', 'default'); // Joomla J4 if (defined('nrJ4')) { $toolbar = Toolbar::getInstance('toolbar'); if ($viewLayout == 'import') { $title = JText::_('COM_CONVERTFORMS') . ': ' . JText::_('NR_IMPORT_ITEMS'); JFactory::getDocument()->setTitle($title); JToolbarHelper::title($title); JToolbarHelper::back(); } else { ToolbarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_FORMS')); if ($canDo->get('core.create')) { $newGroup = $toolbar->dropdownButton('new-group'); $newGroup->configure( function (Toolbar $childBar) { $childBar->popupButton('new')->text('New')->selector('cfSelectTemplate')->icon('icon-new')->buttonClass('btn btn-success'); $childBar->addNew('form.add')->text('COM_CONVERTFORMS_TEMPLATES_BLANK'); $childBar->standardButton('import')->text('NR_IMPORT')->task('forms.import')->icon('icon-upload'); } ); } $dropdown = $toolbar->dropdownButton('status-group') ->text('JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('fas fa-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.edit.state')) { $childBar->publish('forms.publish')->listCheck(true); $childBar->unpublish('forms.unpublish')->listCheck(true); $childBar->standardButton('copy')->text('JTOOLBAR_DUPLICATE')->task('forms.duplicate')->listCheck(true); $childBar->standardButton('export')->text('NR_EXPORT')->task('forms.export')->icon('icon-download')->listCheck(true); $childBar->trash('forms.trash')->listCheck(true); } if ($this->state->get('filter.state') == -2) { $toolbar->delete('forms.delete') ->text('JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($canDo->get('core.admin')) { $toolbar->preferences('com_convertforms'); } $toolbar->help('JHELP', false, "http://www.tassos.gr/joomla-extensions/responsive-scroll-triggered-box-for-joomla/docs"); } return; } if ($viewLayout == 'import') { JFactory::getDocument()->setTitle(JText::_('COM_CONVERTFORMS') . ': ' . JText::_('NR_IMPORT_ITEMS')); JToolbarHelper::title(JText::_('COM_CONVERTFORMS') . ': ' . JText::_('NR_IMPORT_ITEMS')); JToolbarHelper::back(); } else { JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_FORMS')); if ($canDo->get('core.create')) { JToolbarHelper::addNew('form.add'); } if ($canDo->get('core.edit')) { JToolbarHelper::editList('form.edit'); } if ($canDo->get('core.create')) { JToolbarHelper::custom('forms.duplicate', 'copy', 'copy', 'JTOOLBAR_DUPLICATE', true); } if ($canDo->get('core.edit.state') && $state->get('filter.state') != 2) { JToolbarHelper::publish('forms.publish', 'JTOOLBAR_PUBLISH', true); JToolbarHelper::unpublish('forms.unpublish', 'JTOOLBAR_UNPUBLISH', true); } if ($canDo->get('core.delete') && $state->get('filter.state') == -2) { JToolbarHelper::deleteList('', 'forms.delete', 'JTOOLBAR_EMPTY_TRASH'); } else if ($canDo->get('core.edit.state')) { JToolbarHelper::trash('forms.trash'); } if ($canDo->get('core.create')) { JToolbarHelper::custom('forms.export', 'box-add', 'box-add', 'NR_EXPORT'); JToolbarHelper::custom('forms.import', 'box-remove', 'box-remove', 'NR_IMPORT', false); } if ($canDo->get('core.admin')) { JToolbarHelper::preferences('com_convertforms'); } } JToolbarHelper::help("Help", false, "http://www.tassos.gr/joomla-extensions/convert-forms/docs"); } }PKAA#]�o���.�.8components/com_convertforms/views/forms/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Button\PublishedButton; JHtml::_('bootstrap.popover'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); if (!defined('nrJ4')) { JFactory::getDocument()->addScriptDeclaration(' jQuery(function($) { Joomla.submitbutton = function(task) { if (task == "form.add") { jQuery("#cfSelectTemplate").modal("show"); } else { Joomla.submitform(task, document.getElementById("adminForm")); } } }); '); } $user = JFactory::getUser(); ?> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&view=forms'); ?>" class="clearfix" method="post" name="adminForm" id="adminForm"> <?php if (!defined('nrJ4')) { ?> <div id="j-sidebar-container" class="span2"> <?php echo $this->sidebar; ?> </div> <?php } ?> <div id="j-main-container"> <?php echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this)); ?> <table class="adminlist nrTable table"> <thead> <tr> <th class="text-center" width="2%"><?php echo JHtml::_('grid.checkall'); ?></th> <th width="3%" class="nowrap hidden-phone" align="center"> <?php echo JHtml::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th> <?php echo JHtml::_('searchtools.sort', 'NR_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <th width="13%" class="text-center"> <?php echo JText::_('COM_CONVERTFORMS_CAMPAIGN') ?> </th> <th width="13%" class="text-center"> <?php echo JText::_('COM_CONVERTFORMS_SAVE_DATA') ?> </th> <th width="13%" class="text-center"> <?php echo JHtml::_('searchtools.sort', 'COM_CONVERTFORMS_SUBMISSIONS', 'leads', $listDirn, $listOrder); ?> </th> <th width="20%" class="text-center"><?php echo JText::_("COM_CONVERTFORMS_ACTIONS"); ?></th> <th width="5%" class="nowrap text-center hidden-phone"> <?php echo JHtml::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php if (count($this->items)) { ?> <?php foreach($this->items as $i => $item): ?> <?php $leads = \ConvertForms\Form::getSubmissionsTotal($item->id); $canChange = $user->authorise('core.edit.state', 'com_convertforms.form.' . $item->id); $leadsURL = JURI::base() . 'index.php?option=com_convertforms&view=conversions&filter.period&filter.form_id='. $item->id; ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"><?php echo JHtml::_('grid.id', $i, $item->id); ?></td> <td class="text-center"> <?php if (defined('nrJ4')) { ?> <?php $options = [ 'task_prefix' => 'forms.', 'disabled' => !$canChange, 'id' => 'state-' . $item->id ]; echo (new PublishedButton)->render((int) $item->state, $i, $options); ?> <?php } else { ?> <div class="btn-group"> <?php echo JHtml::_('jgrid.published', $item->state, $i, 'forms.', $canChange); ?> <?php if ($canChange && !defined('nrJ4')) { JHtml::_('actionsdropdown.' . ((int) $item->state === -2 ? 'un' : '') . 'trash', 'cb' . $i, 'forms'); JHtml::_('actionsdropdown.' . 'duplicate', 'cb' . $i, 'forms'); echo JHtml::_('actionsdropdown.render', $this->escape($item->name)); } ?> </div> <?php } ?> </td> <td> <a href="<?php echo JRoute::_('index.php?option=com_convertforms&task=form.edit&id='.$item->id); ?>" title="<?php echo JText::_('JACTION_EDIT'); ?>"><?php echo $this->escape($item->name); ?> </a> </td> <td class="text-center"> <?php if (isset($item->campaign)) { echo ConvertForms\Helper::getCampaign($item->campaign)->name; } ?> </td> <td class="text-center"> <?php $saveToDb = isset($item->save_data_to_db) ? $item->save_data_to_db : true; ?> <span title="<?php echo JText::_('COM_CONVERTFORMS_SAVE_DATA_' . (int) $saveToDb) ?> "> <?php echo JText::_($saveToDb ? 'JYES' : 'JNO'); ?> </span> </td> <td class="text-center"> <?php $total = number_format($leads); ?> <a href="<?php echo $leadsURL ?>"> <span class="badge badge-info bg-info hasPopover" data-placement="top" data-content="<?php echo JText::sprintf("COM_CONVERTFORMS_FORM_LEADS", $total) ?>"> <?php echo $total; ?> </span> </a> </td> <td class="text-center"> <ul class="item-icons"> <li> <a class="hasPopover <?php echo ($leads == 0) ? "disabled" : "" ?>" data-placement="top" data-content="<?php echo JText::_("COM_CONVERTFORMS_VIEW_LEADS") ?>" href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=conversions&filter.form_id=<?php echo $item->id ?>&filter.state"><span class="icon icon-users"></span> </a> </li> <li> <a class="hasPopover" data-placement="top" data-content="<?php echo JText::_("COM_CONVERTFORMS_FORM_CREATE_MODULE") ?>" href="<?php echo JURI::base() ?>index.php?option=com_modules&task=module.add&eid=<?php echo $this->moduleID ?>"> <span class="icon icon-cube"></span> </a> </li> <li> <a class="hasPopover copyToClipboard" data-clipboard="{convertforms <?php echo $item->id ?>}" data-placement="top" data-content="<?php echo JText::sprintf("COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE", "{convertforms ".$item->id."}") ?>" href='#'> <span class="icon icon-link disable-click"></span> </a> </li> </ul> </td> <td class="text-center"><?php echo $item->id ?></td> </tr> <?php endforeach; ?> <?php } else { ?> <tr> <td align="center" colspan="9"> <div align="center"> <?php echo ConvertForms\Helper::noItemsFound("forms"); ?> - <a href="javascript://" onclick="Joomla.submitbutton('form.add')"><?php echo JText::_("COM_CONVERTFORMS_CREATE_NEW") ?></a> </div> </td> </tr> <?php } ?> </tbody> </table> <?php echo $this->pagination->getListFooter(); ?> <div> <input type="hidden" name="task" value="" /> <input type="hidden" name="boxchecked" value="0" /> <?php echo JHtml::_('form.token'); ?> </div> </div> </form> <?php include_once(JPATH_COMPONENT_ADMINISTRATOR . '/layouts/footer.php'); ?> <script> document.addEventListener("DOMContentLoaded", function() { document.addEventListener("click", function(e) { if (!e.target.classList.contains("copyToClipboard")) { return; } e.preventDefault(); var data = e.target.dataset.clipboard; copyTextToClipboard(data, function(success) { if (success) { Joomla.renderMessages({"success": ["Shortcode " + data + " copied to clipboard"]}); } }); }); function copyTextToClipboard(text, callback) { var textArea = document.createElement("textarea"); textArea.style.position = 'fixed'; textArea.style.top = 0; textArea.style.left = 0; textArea.style.width = '2em'; textArea.style.height = '2em'; textArea.style.background = 'transparent'; textArea.value = text; document.body.appendChild(textArea); textArea.select(); try { var success = document.execCommand('copy'); callback(success); } catch (err) { callback(false); } document.body.removeChild(textArea); } }) </script>PKAA#]ce�IZ Z 7components/com_convertforms/views/forms/tmpl/import.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die; ?> <form onsubmit="return submitform();" action="<?php echo JRoute::_('index.php?option=com_convertforms&view=forms'); ?>" method="post" enctype="multipart/form-data" name="import-form" id="import-form"> <fieldset class="form-horizontal"> <legend><?php echo JText::_('NR_IMPORT_ITEMS'); ?></legend> <div class="control-group"> <label for="file" class="control-label"><?php echo JText::_('COM_CONVERTFORMS_CHOOSE_FILE'); ?></label> <div class="controls"> <input class="input_box" id="file" name="file" type="file" size="57" /> </div> </div> <div class="control-group"> <label for="publish_all" class="control-label"><?php echo JText::_('NR_PUBLISH_ITEMS'); ?></label> <div class="controls"> <fieldset id="publish_all" class="radio btn-group"> <input type="radio" name="publish_all" id="publish_all0" value="0" /> <label for="publish_all0" class="btn"><?php echo JText::_('JNO'); ?></label> <input type="radio" name="publish_all" id="publish_all1" value="1" /> <label for="publish_all1" class="btn"><?php echo JText::_('JYES'); ?></label> <input type="radio" name="publish_all" id="publish_all2" value="2" checked="checked" /> <label for="publish_all2" class="btn"><?php echo JText::_('NR_AS_EXPORTED'); ?></label> </fieldset> </div> </div> <div class="form-actions"> <input class="btn btn-primary" type="submit" value="<?php echo JText::_('NR_IMPORT'); ?>" /> </div> </fieldset> <input type="hidden" name="task" value="forms.import" /> <?php echo JHtml::_('form.token'); ?> </form> <script language="javascript" type="text/javascript"> /** * Submit the admin form * * small hack: let task decides where it comes */ function submitform() { var file = jQuery('#file').val(); if (file) { var dot = file.lastIndexOf("."); if (dot != -1) { var ext = file.substr(dot, file.length); if (ext == '.cnvf') { return true; } } } alert('<?php echo JText::_('NR_PLEASE_CHOOSE_A_VALID_FILE'); ?>'); return false; } </script> PKAA#]�5�0��6components/com_convertforms/views/export/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use ConvertForms\Export; /** * Templates View */ class ConvertFormsViewExport extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ public function display($tpl = null) { $app = JFactory::getApplication(); $input = $app->input; $viewLayout = $input->get('layout', 'default'); $this->tmpl = $input->get('tmpl'); $this->baseURL = 'index.php?option=com_convertforms&view=export'; $this->start_over_link = $this->baseURL . ($this->tmpl == 'component' ? '&tmpl=component' : ''); switch ($viewLayout) { case 'completed': $file = $input->get('filename'); if (!Export::exportFileExists($file)) { Export::error(JText::_('COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE')); } $this->download_link = 'index.php?option=com_convertforms&task=export.download&filename=' . $file; $this->total_submissions_exported = $input->get('total'); $this->export_type = $input->get('export_type'); break; case 'progress': JSession::checkToken('request') or die(JText::_('JINVALID_TOKEN')); try { $data = Export::export($input->getArray()); $pagination = $data['pagination']; $options = $data['options']; $totalProcessedSoFar = $pagination->pagesCurrent * $pagination->limit; $totalProcessedSoFar = $pagination->total > $totalProcessedSoFar ? $totalProcessedSoFar : $pagination->total; $this->processed = $totalProcessedSoFar; $this->total = $pagination->total; if ($pagination->pagesCurrent < $pagination->pagesTotal) { $new_url = \JURI::getInstance(); $new_url->setVar('offset', $options['offset'] + $options['limit']); $new_url->setVar('processed', $this->processed); $new_url->setVar('total', $this->total); header('Refresh:0; url=' . $new_url->toString()); } else { // Export completed $optionsQuery = http_build_query(array_filter([ 'total' => $this->total, 'filename' => $options['filename'], 'export_type' => $options['export_type'], 'tmpl' => $this->tmpl ])); $app->redirect($this->baseURL . '&layout=completed&' . $optionsQuery); } } catch (\Throwable $th) { Export::error($th->getMessage()); } break; case 'error': $this->error = $input->get('error', '', 'RAW'); break; default: $form = new JForm('export'); $form->loadFile(JPATH_COMPONENT_ADMINISTRATOR . '/models/forms/export_submissions.xml'); $form->bind($app->input->getArray()); $this->form = $form; break; } if ($this->tmpl == 'component') { JFactory::getDocument()->addStyleDeclaration(' body { background:none !important; } '); } else { $this->addToolBar(); } // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { $app->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Display the template parent::display($tpl); } /** * Add Toolbar to layout */ protected function addToolBar() { JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_LEADS_EXPORT')); } } PKAA#]�㹴��9components/com_convertforms/views/export/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFactory::getDocument()->addScriptDeclaration(' document.addEventListener("DOMContentLoaded", function() { var form = document.querySelector(".export_tool form"); form.addEventListener("submit", function(e) { var btn = form.querySelector("button[type=\'submit\']"); btn.innerText = "' . JText::_('NR_PLEASE_WAIT') . '..."; document.querySelector(".export_tool").classList.add("working"); }); // Joomla\'s showOn attribute doesn\'t support showing/hiding a field when another field is empty. let formIDInput = document.getElementById("filter_search"); formIDInput.addEventListener("input", showHideFields); showHideFields(); function showHideFields() { let state = formIDInput.value.startsWith("id:") == "" ? "block" : "none"; document.getElementById("filter_state").closest(".control-group").style.display = state; document.getElementById("filter_period").closest(".control-group").style.display = state; } }); '); ?> <div class="export_tool form tmpl-<?php echo $this->tmpl ?>"> <div class="container"> <h1><?php echo JText::_('COM_CONVERTFORMS_LEADS_EXPORT') ?></h1> <form method="post" action="<?php echo JRoute::_('index.php') ?>" name="adminForm" id="adminForm" > <?php echo $this->form->renderFieldset('submission'); ?> <button class="btn btn-primary" type="submit"> <?php echo JText::_('COM_CONVERTFORMS_LEADS_EXPORT') ?> </button> <input type="hidden" name="option" value="com_convertforms"/> <input type="hidden" name="task" value="export.export"/> <input type="hidden" name="tmpl" value="<?php echo $this->tmpl ?>"/> <?php echo JHtml::_('form.token'); ?> </form> </div> </div>PKAA#]�"��:components/com_convertforms/views/export/tmpl/progress.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <div class="export_tool inprogress text-center tmpl-<?php echo $this->tmpl ?>"> <div class="container"> <span class="icon-health"></span> <h2> <?php echo JText::_('COM_CONVERTFORMS_EXPORT_WORKING') ?> </h2> <p> <?php echo \JText::sprintf('COM_CONVERTFORMS_EXPORT_PROCESSING', number_format($this->processed), number_format($this->total)); ?> </p> <a href="<?php echo $this->start_over_link ?>" onclick="return confirm('<?php echo JText::_('NR_ARE_YOU_SURE') ?>')"> <?php echo JText::_('NR_CANCEL'); ?> </a> </div> </div>PKAA#]7���667components/com_convertforms/views/export/tmpl/error.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <div class="export_tool error text-center tmpl-<?php echo $this->tmpl ?>"> <div class="container"> <span class="icon-smiley-sad-2"></span> <h2><?php echo JText::_('NR_ERROR') ?></h2> <p class="error_message"><?php echo $this->error; ?></p> <a class="btn" href="<?php echo $this->start_over_link ?>"> <?php echo JText::_('NR_TRY_AGAIN') ?> </a> </div> </div>PKAA#]�z����;components/com_convertforms/views/export/tmpl/completed.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); if ($this->download_link) { JFactory::getDocument()->addScriptDeclaration(' document.addEventListener("DOMContentLoaded", function() { window.location.href = "' . $this->download_link . '"; }); '); } ?> <div class="export_tool completed text-center tmpl-<?php echo $this->tmpl ?>"> <div class="container"> <span class="icon-checkmark-2"></span> <h2> <?php echo JText::sprintf('COM_CONVERTFORMS_EXPORT_COMPLETED', number_format($this->total_submissions_exported)) ?> </h2> <p> <?php echo JText::_('COM_CONVERTFORMS_DOWNLOAD_WILL_START') ?> </p> <a class="btn" href="<?php echo $this->start_over_link ?>"> <?php echo JText::_('NR_START_OVER') ?> </a> </div> </div>PKAA#]�h}d��:components/com_convertforms/views/conversion/tmpl/edit.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\HTML\HTMLHelper; HTMLHelper::_('behavior.formvalidator'); HTMLHelper::_('behavior.keepalive'); if (!defined('nrJ4')) { JHtml::_('formbehavior.chosen', 'select'); } ?> <script type="text/javascript"> Joomla.submitbutton = function(task) { if (task == 'conversion.cancel' || document.formvalidator.isValid(document.getElementById('adminForm'))) { Joomla.submitform(task, document.getElementById('adminForm')); } } </script> <div class="form-horizontal"> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&view=conversion&layout=edit&id='.(int) $this->item->id); ?>" method="post" name="adminForm" id="adminForm"> <div class="<?php echo defined('nrJ4') ? 'row' : 'row-fluid' ?>"> <span class="span6 col-md-7"> <h3><?php echo JText::_('COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA') ?></h3> <?php echo $this->form->renderFieldset('params') ?> </span> <span class="span6 col-md-5"> <h3><?php echo JText::_('COM_CONVERTFORMS_LEAD_INFO') ?></h3> <?php echo $this->form->renderFieldset('main') ?> </span> </div> <?php echo JHtml::_('form.token'); ?> <input type="hidden" name="task" value="conversion.edit" /> </form> </div> PKAA#]�Uu���:components/com_convertforms/views/conversion/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); /** * Conversion View Class */ class ConvertFormsViewConversion extends JViewLegacy { /** * display method of Item view * @return void */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.submissions.manage', true); // get the Data $form = $this->get('Form'); $item = $this->get('Item'); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Assign the Data $this->form = $form; $this->item = $item; $this->isnew = (!isset($_REQUEST["id"])) ? true : false; // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Setting the toolbar */ protected function addToolBar() { $input = JFactory::getApplication()->input; $input->set('hidemainmenu', true); $isNew = ($this->item->id == 0); JToolBarHelper::title($isNew ? JText::_('COM_CONVERTFORMS_NEW_CONVERSION') : JText::_('COM_CONVERTFORMS_EDIT_CONVERSION')); JToolbarHelper::apply('conversion.apply'); JToolBarHelper::save('conversion.save'); JToolBarHelper::cancel('conversion.cancel', $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE'); } }PKAA#][D/�zz9components/com_convertforms/views/campaigns/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // import Joomla view library jimport('joomla.application.component.view'); /** * Campaigns View */ class ConvertFormsViewCampaigns extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.campaigns.manage', true); $this->items = $this->get('Items'); $this->state = $this->get('State'); $this->pagination = $this->get('Pagination'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->config = JComponentHelper::getParams('com_convertforms'); ConvertForms\Helper::addSubmenu('campaigns'); $this->sidebar = JHtmlSidebar::render(); // Trigger all ConvertForms plugins JPluginHelper::importPlugin('convertforms'); JFactory::getApplication()->triggerEvent('onConvertFormsServiceName'); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Add Toolbar to layout */ protected function addToolBar() { $canDo = ConvertForms\Helper::getActions(); $state = $this->get('State'); $viewLayout = JFactory::getApplication()->input->get('layout', 'default'); $title = JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_CAMPAIGNS'); JFactory::getDocument()->setTitle($title); JToolbarHelper::title($title); // Joomla J4 if (defined('nrJ4')) { $toolbar = Toolbar::getInstance('toolbar'); if ($canDo->get('core.create')) { $toolbar->addNew('campaign.add'); } $dropdown = $toolbar->dropdownButton('status-group') ->text('JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('fas fa-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.edit.state')) { $childBar->publish('campaigns.publish')->listCheck(true); $childBar->unpublish('campaigns.unpublish')->listCheck(true); $childBar->standardButton('copy')->text('JTOOLBAR_DUPLICATE')->task('campaigns.duplicate')->listCheck(true); $childBar->standardButton('export')->text('COM_CONVERTFORMS_LEADS_EXPORT')->task('campaigns.export')->icon('icon-download')->listCheck(true); $childBar->trash('campaigns.trash')->listCheck(true); } if ($this->state->get('filter.state') == -2) { $toolbar->delete('campaigns.delete') ->text('JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($canDo->get('core.admin')) { $toolbar->preferences('com_convertforms'); } $toolbar->help('JHELP', false, 'http://www.tassos.gr/joomla-extensions/convert-forms/docs'); return; } if ($canDo->get('core.create')) { JToolbarHelper::addNew('campaign.add'); } if ($canDo->get('core.edit')) { JToolbarHelper::editList('campaign.edit'); } if ($canDo->get('core.create')) { JToolbarHelper::custom('campaigns.duplicate', 'copy', 'copy', 'JTOOLBAR_DUPLICATE', true); } if ($canDo->get('core.edit.state') && $state->get('filter.state') != 2) { JToolbarHelper::publish('campaigns.publish', 'JTOOLBAR_PUBLISH', true); JToolbarHelper::unpublish('campaigns.unpublish', 'JTOOLBAR_UNPUBLISH', true); } if ($canDo->get('core.delete') && $state->get('filter.state') == -2) { JToolbarHelper::deleteList('', 'campaigns.delete', 'JTOOLBAR_EMPTY_TRASH'); } else if ($canDo->get('core.edit.state')) { JToolbarHelper::trash('campaigns.trash'); } if ($canDo->get('core.create')) { JToolbarHelper::custom('campaigns.export', 'box-add', 'box-add', 'COM_CONVERTFORMS_LEADS_EXPORT'); } if ($canDo->get('core.admin')) { JToolbarHelper::preferences('com_convertforms'); } JToolbarHelper::help("Help", false, "http://www.tassos.gr/joomla-extensions/convert-forms/docs"); } }PKAA#]�d���<components/com_convertforms/views/campaigns/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Button\PublishedButton; JHtml::_('bootstrap.popover'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $user = JFactory::getUser(); ?> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&view=campaigns'); ?>" class="clearfix" method="post" name="adminForm" id="adminForm"> <?php if (!defined('nrJ4')) { ?> <div id="j-sidebar-container" class="span2"> <?php echo $this->sidebar; ?> </div> <?php } ?> <div id="j-main-container"> <?php echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this)); ?> <table class="adminlist nrTable table"> <thead> <tr> <th class="center" width="2%"><?php echo JHtml::_('grid.checkall'); ?></th> <th width="3%" class="nowrap hidden-phone" align="center"> <?php echo JHtml::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th> <?php echo JHtml::_('searchtools.sort', 'NR_NAME', 'a.name', $listDirn, $listOrder); ?> </th> <th width="15%" class="text-center"> <?php echo JHtml::_('searchtools.sort', 'COM_CONVERTFORMS_CAMPAIGN_SYNC', 'a.service', $listDirn, $listOrder); ?> </th> <th width="5%" class="text-center nowrap hidden-phone"> <?php echo JHtml::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php if (count($this->items)) { ?> <?php foreach($this->items as $i => $item): ?> <?php $canChange = $user->authorise('core.edit.state', 'com_convertforms.campaign.' . $item->id); $leadsURL = JURI::base() . 'index.php?option=com_convertforms&view=conversions&filter.campaign_id='. $item->id .'&filter.form_id'; ?> <tr class="row<?php echo $i % 2; ?>"> <td class="center"><?php echo JHtml::_('grid.id', $i, $item->id); ?></td> <td class="text-center"> <?php if (defined('nrJ4')) { ?> <?php $options = [ 'task_prefix' => 'forms.', 'disabled' => !$canChange, 'id' => 'state-' . $item->id ]; echo (new PublishedButton)->render((int) $item->state, $i, $options); ?> <?php } else { ?> <div class="btn-group"> <?php echo JHtml::_('jgrid.published', $item->state, $i, 'campaigns.', $canChange); ?> <?php if ($canChange && !defined('nrJ4')) { JHtml::_('actionsdropdown.' . ((int) $item->state === -2 ? 'un' : '') . 'trash', 'cb' . $i, 'campaigns'); JHtml::_('actionsdropdown.' . 'duplicate', 'cb' . $i, 'campaigns'); echo JHtml::_('actionsdropdown.render', $this->escape($item->name)); } ?> </div> <?php } ?> </td> <td> <a href="<?php echo JRoute::_('index.php?option=com_convertforms&task=campaign.edit&id='.$item->id); ?>" title="<?php echo JText::_('JACTION_EDIT'); ?>"> <?php echo $this->escape($item->name); ?> </a> </td> <td class="text-center"> <?php if (!empty($item->service)) { echo JText::_("PLG_CONVERTFORMS_" . strtoupper($item->service) . "_ALIAS"); } ?> </td> <td class="text-center"><?php echo $item->id ?></td> </tr> <?php endforeach; ?> <?php } else { ?> <tr> <td align="center" colspan="9"> <div align="center"> <?php echo ConvertForms\Helper::noItemsFound("campaigns"); ?> - <a href="javascript://" onclick="Joomla.submitbutton('campaign.add')"><?php echo JText::_("COM_CONVERTFORMS_CREATE_NEW") ?></a> </div> </td> </tr> <?php } ?> </tbody> </table> <?php echo $this->pagination->getListFooter(); ?> <div> <input type="hidden" name="task" value="" /> <input type="hidden" name="boxchecked" value="0" /> <?php echo JHtml::_('form.token'); ?> </div> </form> <?php include_once(JPATH_COMPONENT_ADMINISTRATOR . '/layouts/footer.php'); ?>PKAA#]��b 9components/com_convertforms/views/addons/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\HTML\HTMLHelper; HTMLHelper::_('bootstrap.modal'); JHtml::_('bootstrap.popover'); ?> <div class="row-fluid"> <?php if (!defined('nrJ4')) { ?> <div id="j-sidebar-container" class="span2"> <?php echo $this->sidebar; ?> </div> <?php } ?> <div id="j-main-container"> <?php if (!NRFramework\Functions::getDownloadKey()) { ?> <div class="alert alert-danger alert-info"> <h3><?php echo JText::_("NR_DOWNLOAD_KEY_MISSING") ?></h3> <?php echo JText::sprintf("COM_CONVERTFORMS_ADDONS_MISSING_KEY"); ?> <a style="position:relative; top:-2px; left:5px;" class="btn btn-small btn-sm btn-success" href="<?php echo JURI::base() ?>index.php?option=com_plugins&view=plugins&filter_search=novarain"> <?php echo JText::_("NR_DOWNLOAD_KEY_UPDATE")?> </a> </div> <?php } ?> <div class="cf-addons-container"> <h2> <?php echo JText::_("COM_CONVERTFORMS") ?> <?php echo JText::_("COM_CONVERTFORMS_ADDONS") ?> </h2> <p><?php echo JText::_("COM_CONVERTFORMS_ADDONS_DESC") ?></p> <div class="cf-addons"> <?php foreach ($this->availableAddons as $key => $item) { ?> <div class="cf-addon"> <div class="cf-addon-wrap"> <div class="cf-addon-img"> <img alt="<?php echo $item["label"]; ?>" src="<?php echo $item["image"]; ?>"/> </div> <div class="cf-addon-text"> <h3><?php echo $item["label"]; ?></h3> <?php echo $item["description"]; ?> </div> <div class="cf-addon-action text-center"> <?php if ($item['comingsoon']) { ?> <?php echo JText::_('NR_ROADMAP'); ?> <?php } ?> <?php if (!$item['comingsoon'] && $item['extensionid']) { ?> <?php $optionsURL = JURI::base(true) . '/index.php?option=com_plugins&view=plugin&tmpl=component&layout=modal&extension_id=' . $item['extensionid']; $modalName = 'cfPluginModal-' . $item['extensionid']; ?> <a class="btn btn-sm btn-secondary" data-toggle="modal" data-bs-toggle="modal" href="#<?php echo $modalName ?>" role="button" title="<?php echo JText::_("JOPTIONS") ?>"> <span class="icon-options"></span> </a> <?php $options = [ 'title' => JText::_('GSD_INTEGRATION_EDIT'), 'url' => $optionsURL, 'height' => '400px', 'backdrop' => 'static', 'bodyHeight' => '70', 'modalWidth' => '70', 'footer' => '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal" data-dismiss="modal" aria-hidden="true">' . JText::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button> <button type="button" class="btn btn-primary" aria-hidden="true" onclick="jQuery(\'#' . $modalName . ' iframe\').contents().find(\'#saveBtn\').click();">' . JText::_('JSAVE') . '</button> <button type="button" class="btn btn-success" aria-hidden="true" onclick="jQuery(\'#' . $modalName . ' iframe\').contents().find(\'#applyBtn\').click();">' . JText::_('JAPPLY') . '</button>', ]; echo JHtml::_('bootstrap.renderModal', $modalName, $options); ?> <?php } ?> <?php $docsURL = 'https://www.tassos.gr/joomla-extensions/convert-forms//docs/' . $item['docalias']; ?> <a class="btn btn-sm btn-secondary" href="<?php echo $docsURL; ?>" target="_blank" title="<?php echo JText::_("NR_DOCUMENTATION") ?>"> <span class="icon-info"></span> </a> </div> </div> </div> <?php } ?> <div class="cf-addon"> <div class="cf-addon-wrap"> <div class="cf-addon-img"> <a target="_blank" target="_blank" href="https://www.tassos.gr/contact"> <img alt="<?php echo $item["description"]; ?>" src="https://static.tassos.gr/images/integrations/addon.png"/> </a> </div> <div class="cf-addon-text"> <h3><?php echo JText::_("COM_CONVERTFORMS_ADDONS_MISSING_ADDON") ?></h3> <?php echo JText::_("COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC") ?> </div> <div class="cf-addon-action text-center"> <a class="btn btn-sm btn-primary" target="_blank" href="https://www.tassos.gr/contact"><?php echo JText::_("NR_CONTACT_US")?></a> </div> </div> </div> </div> </div> </div> </div> <?php include_once(JPATH_COMPONENT_ADMINISTRATOR."/layouts/footer.php"); ?> PKAA#]b����6components/com_convertforms/views/addons/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); /** * Addons View */ class ConvertFormsViewAddons extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.addons.manage', true); $this->config = JComponentHelper::getParams('com_convertforms'); ConvertForms\Helper::addSubmenu('addons'); $this->sidebar = JHtmlSidebar::render(); $this->availableAddons = $this->getAddons(); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Get list of all available addons * * @return array */ function getAddons() { // Load XML file $xmlfile = JPATH_COMPONENT_ADMINISTRATOR . '/ConvertForms/xml/addons.xml'; if (!JFile::exists($xmlfile)) { return; } if (!$xmlItems = simplexml_load_file($xmlfile)) { return; } $addons = []; foreach ($xmlItems as $key => $item) { $item = (array) $item; $item = new JRegistry($item["@attributes"]); $extensionType = $item->get("extension_type", "plugin"); $extensionFolder = $item->get("extension_folder", "convertforms"); $extensionName = $item->get("name"); $extensionID = NRFramework\Extension::getID($extensionName, $extensionType, $extensionFolder); $backEndURL = ""; if ($extensionID) { if ($extensionType == "plugin") { $backEndURL = "index.php?option=com_plugins&task=plugin.edit&extension_id=" . $extensionID; } } $url = $item->get("customurl") ?: NRFramework\Functions::getUTMURL($item->get("url", "https://www.tassos.gr/joomla-extensions/convert-forms/")); $obj = array( "name" => $extensionName, "label" => $item->get("label"), "description" => $item->get("description"), "image" => $item->get("image"), "url" => $url, "customlabel" => $item->get("customlabel"), "docalias" => $item->get("docalias"), "extensionid" => $extensionID, "backendurl" => JURI::base() . $backEndURL, "proonly" => $item->get("proonly", true), "comingsoon" => $item->get("comingsoon", false) ); $addons[] = $obj; } asort($addons); return $addons; } /** * Add Toolbar to layout */ protected function addToolBar() { $canDo = ConvertForms\Helper::getActions(); JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_ADDONS'), "puzzle"); if ($canDo->get('core.admin')) { JToolbarHelper::preferences('com_convertforms'); } JToolbarHelper::help("Help", false, "http://www.tassos.gr/joomla-extensions/convert-forms/docs"); } }PKAA#]n$����8components/com_convertforms/views/campaign/tmpl/edit.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\HTML\HTMLHelper; HTMLHelper::_('bootstrap.modal'); HTMLHelper::_('behavior.formvalidator'); HTMLHelper::_('behavior.keepalive'); if (!defined('nrJ4')) { JHtml::_('formbehavior.chosen', 'select'); JFactory::getDocument()->addScriptDeclaration(' document.addEventListener("DOMContentLoaded", function() { Joomla.submitbutton = function(task) { if (task == "campaign.cancel" || document.formvalidator.isValid(document.getElementById("adminForm"))) { Joomla.submitform(task, document.getElementById("adminForm")); } } }); '); } JFactory::getDocument()->addScriptDeclaration(' jQuery(function($) { $("#jform_service").on("change", function() { $("#confirm-delete").modal("show"); }) $("#confirm-delete .btn-success").click(function() { Joomla.submitform("campaign.apply", document.getElementById("adminForm")); }) }) '); ?> <div class="modal fade modal-nr modal-sm" id="confirm-delete" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h3><?php echo JText::_("COM_CONVERTFORMS_CAMPAIGN_CHANGED"); ?></h3> </div> <div class="modal-body"> <p><?php echo JText::_("COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC"); ?></p> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-bs-dismiss="modal" data-dismiss="modal"><?php echo JText::_("JCANCEL") ?></button> <a class="btn btn-success"><?php echo JText::_("JAPPLY") ?></a> </div> </div> </div> </div> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&view=campaign&layout=edit&id='.(int) $this->item->id); ?>" method="post" name="adminForm" id="adminForm" class="form-validate"> <div class="form-horizontal"> <div class="row-fluid"> <div class="span12"> <div class="card p-3 mb-3 well nr-well"> <h4>Campaign Settings</h4> <?php echo $this->form->renderField("name"); ?> <?php echo $this->form->renderField("state"); ?> </div> <div class="card p-3 well nr-well"> <h4><?php echo JText::_("COM_CONVERTFORMS_CAMPAIGN_SYNC") ?></h4> <div class="well-desc" style="margin-bottom:20px"> <?php echo JText::_("COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC"); ?> </div> <div class="control-group"> <div class="control-label"> <?php echo $this->form->getLabel("service"); ?> </div> <div class="controls"> <?php echo $this->form->getInput("service"); ?> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=addons" class="btn btn-info btn-small"> <span class="icon-cogs" style="margin-right:5px;"></span> <?php echo JText::_("COM_CONVERTFORMS_INSTALL_ADDONS"); ?> </a> </div> </div> <?php echo $this->form->renderField("service_pro"); ?> </div> <?php if ($this->item->service) { ?> <div class="card p-3 mt-3 well nr-well cf-service-fields"> <h4><?php echo JText::_("PLG_CONVERTFORMS_" . $this->item->service . "_ALIAS"); ?></h4> <div class="well-desc" style="margin-bottom:20px;"><?php echo JText::_("PLG_CONVERTFORMS_" . $this->item->service . "_DESC"); ?></div> <?php echo $this->form->renderFieldset("service"); ?> </div> <?php } ?> <?php echo JHtml::_('form.token'); ?> <input type="hidden" name="task" value="" /> </div> </div> </div> </form>PKAA#]��m�` ` 8components/com_convertforms/views/campaign/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Toolbar\Toolbar; /** * Campaign View Class */ class ConvertFormsViewCampaign extends JViewLegacy { /** * display method of Item view * @return void */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.campaigns.manage', true); // get the Data $form = $this->get('Form'); $item = $this->get('Item'); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Assign the Data $this->form = $form; $this->item = $item; $this->isnew = (!isset($_REQUEST["id"])) ? true : false; // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Setting the toolbar */ protected function addToolBar() { $input = JFactory::getApplication()->input; $input->set('hidemainmenu', true); $isNew = ($this->item->id == 0); JToolBarHelper::title($isNew ? JText::_('COM_CONVERTFORMS_NEW_CAMPAIGN') : JText::_('COM_CONVERTFORMS_EDIT_CAMPAIGN') . ": " . $this->item->name . " - ". $this->item->id); if (defined('nrJ4')) { $toolbar = Toolbar::getInstance(); $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) { $childBar->apply('campaign.apply'); $childBar->save('campaign.save'); $childBar->save2new('campaign.save2new'); $childBar->save2copy('campaign.save2copy'); } ); $toolbar->cancel('campaign.cancel', 'JTOOLBAR_CLOSE'); return; } JToolbarHelper::apply('campaign.apply'); JToolBarHelper::save('campaign.save'); JToolbarHelper::save2new('campaign.save2new'); JToolBarHelper::cancel('campaign.cancel', $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE'); } }PKAA#]�2���9components/com_convertforms/views/templates/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); /** * Templates View */ class ConvertFormsViewTemplates extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ function display($tpl = null) { $this->config = JComponentHelper::getParams('com_convertforms'); $this->templates = $this->getTemplates(); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Get list of all available templates * * @return array */ function getTemplates() { $templatesPath = JPATH_ROOT . "/media/com_convertforms/templates/"; $xmlFile = $templatesPath . "templates.xml"; if (!JFile::exists($xmlFile)) { return; } if (!$templateGroups = simplexml_load_file($xmlFile)) { return; } $templates = array(); foreach ($templateGroups as $templateGroup) { $templateGroupName = (string) $templateGroup["name"]; foreach ($templateGroup as $template) { $templateName = (string) $template["name"]; // Check if template thumb file exists if (!JFile::exists($templatesPath . $templateName . ".jpg")) { continue; } $templateInfo = array( "name" => $templateName, "label" => (string) $template["label"], "thumb" => JURI::root() . 'media/com_convertforms/templates/' . $templateName . '.jpg', "link" => JURI::base() . "index.php?option=com_convertforms&view=form&layout=edit&template=" . $templateName ); // Check if template thumb file exists if (!JFile::exists($templatesPath . $templateName . ".cnvf")) { unset($templateInfo["link"]); } $templates[$templateGroupName][] = $templateInfo; } } return $templates; } /** * Add Toolbar to layout */ protected function addToolBar() { JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_TEMPLATES')); } }PKAA#]����<components/com_convertforms/views/templates/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JHtml::_('bootstrap.popover'); ?> <div class="cf-templates"> <div class="cf-templates-items"> <?php foreach ($this->templates as $key => $templateGroup) { ?> <div class="cf-template-group"> <div class="cf-template-group-name"> <?php echo JText::_("COM_CONVERTFORMS_TEMPLATE_GROUP_" . $key); ?> </div> <div class="cf-template-group-items cf-template-group-<?php echo $key ?>"> <?php foreach ($templateGroup as $template) { ?> <div class="cf-template"> <div> <a href="<?php echo $template["link"]; ?>" class="hasPopover" data-placement="top" data-content="<?php echo $template["label"] ?>"> <img width="100%" height="auto" src="<?php echo $template["thumb"]; ?>"/> </a> </div> </div> <?php } ?> </div> </div> <?php } ?> </div> </div> <script> jQuery(function($) { $(".cf-templates a").click(function(event) { event.preventDefault(); window.parent.location = $(this).attr("href"); window.parent.jModalClose(); }); }) </script>PKAA#]� �*�*>components/com_convertforms/views/conversions/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Button\PublishedButton; use ConvertForms\Helper; if (!defined('nrJ4')) { JHtml::_('formbehavior.chosen', 'select'); } $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $user = JFactory::getUser(); $columns = $this->state->get('filter.columns'); $doc = JFactory::getDocument(); $doc->addStyleDeclaration(' .js-stools .js-stools-container-filters .chzn-container.active:not(.chzn-with-drop) .chzn-single { border: 1px solid rgba(0,0,0,0.2); } .js-stools .js-stools-container-filters .chzn-container.active .chzn-single { border: 1px solid #2384D3; } '); $doc->addScriptDeclaration(' Joomla.submitbutton = function(task) { let form = document.getElementById("adminForm"); Joomla.submitform(task, form); // Since the export runs in the background and without reloading the page we need to manually reset the task input. if (task == "conversions.export") { form.task.value = ""; } } '); ?> <form action="<?php echo JRoute::_('index.php?option=com_convertforms&view=conversions'); ?>" class="clearfix" method="post" name="adminForm" id="adminForm"> <?php if (!defined('nrJ4')) { ?> <div id="j-sidebar-container" class="span2"> <?php echo $this->sidebar; ?> </div> <?php } ?> <div id="j-main-container"> <?php echo JLayoutHelper::render('joomla.searchtools.default', array('view' => $this)); ?> <table class="adminlist nrTable scroll table"> <thead> <tr> <th width="2%" class="center"><?php echo JHtml::_('grid.checkall'); ?></th> <th width="3%" class="nowrap hidden-phone" align="center"> <?php echo JHtml::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <?php foreach ($columns as $key => $column) { ?> <th class="nowrap col_<?php echo $column; ?>"> <?php $isParam = (strpos($column, 'param_') !== false); $columnLabel = $isParam ? ucfirst(str_replace('param_', '', $column)) : 'COM_CONVERTFORMS_' . strtoupper($column); echo JHtml::_('searchtools.sort', $columnLabel, 'a.' . $column, $listDirn, $listOrder); ?> </th> <?php } ?> </tr> </thead> <tbody> <?php if (count($this->items)) { ?> <?php foreach($this->items as $i => $item): ?> <?php $canChange = $user->authorise('core.edit.state', 'com_convertforms.conversion.' . $item->id); $canEdit = $user->authorise('core.edit', 'com_convertforms.conversion.' . $item->id); ?> <tr class="row<?php echo $i % 2; ?> <?php echo isset($item->params->sync_error) ? 'error' : '' ?>"> <td class="center"><?php echo JHtml::_('grid.id', $i, $item->id); ?></td> <td class="text-center"> <?php if (defined('nrJ4')) { ?> <?php $options = [ 'task_prefix' => 'conversions.', 'disabled' => !$canChange, 'id' => 'state-' . $item->id ]; echo (new PublishedButton)->render((int) $item->state, $i, $options); ?> <?php } else { ?> <div class="btn-group"> <?php echo JHtml::_('jgrid.published', $item->state, $i, 'conversions.', $canChange); ?> <?php if ($canChange && !defined('nrJ4')) { JHtml::_('actionsdropdown.' . ((int) $item->state === -2 ? 'un' : '') . 'trash', 'cb' . $i, 'conversions'); echo JHtml::_('actionsdropdown.render', $this->escape($item->id)); } ?> </div> <?php } ?> </td> <?php $i = 0; foreach ($columns as $key => $column) { // Convert to lower case to always match the field in case it has been renamed. $column = strtolower($column); $params = []; if (!is_null($item->params)) { foreach ($item->params as $key => $value) { $params[strtolower($key)] = $value; } } $isParam = (strpos($column, 'param_') !== false); $columnName = $isParam ? str_replace('param_', '' , $column) : $column; $value = false; $col_class = !$isParam ? 'nowrap col_' . $column : $column; $submission_user = JFactory::getUser($item->user_id); $submission_user_edit_url = $submission_user->id > 0 ? JURI::base() . '/index.php?option=com_users&task=user.edit&id=' . $submission_user->id : ''; ?> <td class="<?php echo $col_class; ?>"> <?php switch ($columnName) { case 'id': if ($canEdit) { $url = JRoute::_('index.php?option=com_convertforms&task=conversion.edit&id=' . $item->id); $value = '<a href="' . $url . '">' . $item->$columnName . '</a>'; } else { $value = $item->$columnName; } break; case 'user_username': if ($submission_user->id > 0) { $value = '<a href="' . $submission_user_edit_url . '">' . $submission_user->username . '</a>'; } break; case 'user_id': $value = ''; if ($submission_user->id > 0) { $value = '<a href="' . $submission_user_edit_url . '">' . $submission_user->id . '</a>'; } break; default: if ($isParam) { if (isset($item->prepared_fields[$columnName])) { $value = $item->prepared_fields[$columnName]->value_html; } } else { if (isset($item->$columnName)) { $value = $item->$columnName; } } break; } ?> <?php echo $value; ?> <?php if ($i == 0 && isset($item->params->sync_service) && isset($item->params->sync_error) && $key == 0) { ?> <span class="hasPopover icon icon-info" data-placement="top" data-title="<?php echo JText::_("PLG_CONVERTFORMS_" . $item->params->sync_service . "_ALIAS"); ?>" data-content="<?php echo $item->params->sync_error ?>" style="color:red;"> </span> <?php } ?> <?php $i++; ?> </td> <?php } ?> </tr> <?php endforeach; ?> <?php } else { ?> <tr> <td align="center" colspan="<?php echo count($columns) + 2 ?>"> <div align="center"> <?php echo ConvertForms\Helper::noItemsFound(); ?> </div> </td> </tr> <?php } ?> </tbody> </table> <div class="pagination"><?php echo $this->pagination->getListFooter(); ?></div> <div> <input type="hidden" name="task" value="" /> <input type="hidden" name="boxchecked" value="0" /> <?php echo JHtml::_('form.token'); ?> </div> </div> </form> <?php include_once(JPATH_COMPONENT_ADMINISTRATOR . '/layouts/footer.php'); ?> PKAA#]�o�II;components/com_convertforms/views/conversions/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; /** * Conversions View */ class ConvertFormsViewConversions extends JViewLegacy { /** * Items view display method * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return mixed A string if successful, otherwise a JError object. */ public function display($tpl = null) { // Access check. ConvertForms\Helper::authorise('convertforms.submissions.manage', true); $this->items = $this->get('Items'); $this->state = $this->get('State'); $this->pagination = $this->get('Pagination'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->config = JComponentHelper::getParams('com_convertforms'); ConvertForms\Helper::addSubmenu('conversions'); $this->sidebar = JHtmlSidebar::render(); // Trigger all ConvertForms plugins JPluginHelper::importPlugin('convertforms'); JFactory::getApplication()->triggerEvent('onConvertFormsServiceName'); // Check for errors. if (!is_null($this->get('Errors')) && count($errors = $this->get('Errors'))) { JFactory::getApplication()->enqueueMessage(implode("\n", $errors), 'error'); return false; } // Set the toolbar $this->addToolBar(); // Display the template parent::display($tpl); } /** * Add Toolbar to layout */ protected function addToolBar() { $canDo = ConvertForms\Helper::getActions(); $state = $this->get('State'); $viewLayout = JFactory::getApplication()->input->get('layout', 'default'); JToolBarHelper::title(JText::_('COM_CONVERTFORMS') . ": " . JText::_('COM_CONVERTFORMS_SUBMISSIONS'), "users"); // Joomla J4 if (defined('nrJ4')) { $toolbar = Toolbar::getInstance('toolbar'); $dropdown = $toolbar->dropdownButton('status-group') ->text('JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('fas fa-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.edit.state')) { $childBar->publish('conversions.publish')->listCheck(true); $childBar->unpublish('conversions.unpublish')->listCheck(true); $childBar->standardButton('export')->text('COM_CONVERTFORMS_LEADS_EXPORT')->task('conversions.export')->icon('icon-download')->listCheck(true); $childBar->trash('conversions.trash')->listCheck(true); } if ($this->state->get('filter.state') == -2) { $toolbar->delete('conversions.delete') ->text('JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($canDo->get('core.admin')) { $toolbar->preferences('com_convertforms'); } $toolbar->help('JHELP', false, 'http://www.tassos.gr/joomla-extensions/convert-forms/docs'); return; } if ($canDo->get('core.edit.state') && $state->get('filter.state') != 2) { JToolbarHelper::publish('conversions.publish', 'JTOOLBAR_PUBLISH', true); JToolbarHelper::unpublish('conversions.unpublish', 'JTOOLBAR_UNPUBLISH', true); JToolbarHelper::archiveList('conversions.archive'); } if ($canDo->get('core.delete') && $state->get('filter.state') == -2) { JToolbarHelper::deleteList('', 'conversions.delete', 'JTOOLBAR_EMPTY_TRASH'); } else if ($canDo->get('core.edit.state')) { JToolbarHelper::trash('conversions.trash'); } if ($canDo->get('core.edit')) { JToolbarHelper::editList('conversion.edit'); } if ($canDo->get('core.create')) { JToolbarHelper::custom('', 'box-add toolbarexportmodal', '', 'COM_CONVERTFORMS_LEADS_EXPORT'); ConvertForms\Export::renderModal(); } if ($canDo->get('core.admin')) { JToolbarHelper::preferences('com_convertforms'); } JToolbarHelper::help("Help", false, "http://www.tassos.gr/joomla-extensions/convert-forms/docs"); } }PKAA#]0(�Jrr<components/com_convertforms/views/convertforms/view.html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); class ConvertFormsViewConvertForms extends JViewLegacy { /** * Items view display method * * @return void */ function display($tpl = null) { $this->config = JComponentHelper::getParams('com_convertforms'); $model = \JModelLegacy::getInstance('Conversions', 'ConvertFormsModel', ['ignore_request' => true]); $model->setState('list.limit', 10); $model->setState('filter.state', 1); $this->latestleads = $model->getItems(); ConvertForms\Helper::renderSelectTemplateModal(); if (!defined('nrJ4')) { JHTML::_('behavior.modal'); JHtml::_('bootstrap.popover'); } JHtml::stylesheet('jui/icomoon.css', array(), true); JToolBarHelper::title(JText::_('COM_CONVERTFORMS')); // Display the template parent::display($tpl); } }PKBA#]t��NNDcomponents/com_convertforms/views/convertforms/tmpl/latest.leads.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <?php if (count($this->latestleads)) { ?> <table class="table nrTable"> <thead> <tr> <th><?php echo JText::_("COM_CONVERTFORMS_EMAIL") ?></th> <th><?php echo JText::_("COM_CONVERTFORMS_FORM") ?></th> <th width="30%"><?php echo JText::_("JDATE") ?></th> </tr> <tbody> <?php foreach ($this->latestleads as $key => $lead) { ?> <tr class="<?php echo isset($lead->params->sync_error) ? "error" : "" ?>"> <td> <?php $email = ''; if (!$lead->params) { continue; } foreach ($lead->params as $param_key => $param_value) { if (strtolower($param_key) == 'email') { $email = $param_value; break; } } echo $email; ?> <?php if (isset($lead->params->sync_error)) { ?> <span class="hasPopover icon icon-info" data-placement="top" data-content="<?php echo $lead->params->sync_error ?>" style="color:red;"> </span> <?php } ?> </td> <td><?php echo $lead->form_name ?></td> <td><?php echo $lead->created; ?></td> </tr> <?php } ?> </tbody> </thead> </table> <?php } else { ?> <div class="text-center"> <?php echo ConvertForms\Helper::noItemsFound(); ?> </div> <?php } ?>PKBA#]�!��nnJcomponents/com_convertforms/views/convertforms/tmpl/panel.translations.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <p> <?php echo JText::sprintf("NR_TRANSLATE_INTEREST", JText::_("COM_CONVERTFORMS")); ?> <a href="https://www.transifex.com/tassosgr/convert-forms/" target="_blank"><?php echo JText::_("NR_TRANSIFEX_REQUEST") ?></a>. </p>PKBA#]i&9�XX?components/com_convertforms/views/convertforms/tmpl/default.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use ConvertForms\Helper; jimport('joomla.filesystem.file'); $downloadKey = NRFramework\Functions::getDownloadKey(); // Display extension notices \NRFramework\Notices\Notices::getInstance([ 'ext_element' => 'com_convertforms', 'ext_xml' => 'com_convertforms' ])->show(); $canAccessOptions = Helper::authorise('core.admin'); $canAccessForms = Helper::authorise('convertforms.forms.manage'); $canAccessSubmissions = Helper::authorise('convertforms.submissions.manage'); $canAccessCampaigns = Helper::authorise('convertforms.campaigns.manage'); $canAccessAddons = Helper::authorise('convertforms.addons.manage'); ?> <div class="<?php echo defined('nrJ4') ? 'row' : 'row-fluid' ?> dashboard"> <span class="span8 col-md-8"> <div class="<?php echo defined('nrJ4') ? 'row' : 'row-fluid' ?>"> <div class="col"> <ul class="nr-icons"> <?php if ($canAccessForms) { ?> <li> <a href="javascript: newForm()"> <span class="icon-pencil-2"></span> <span><?php echo JText::_("COM_CONVERTFORMS_NEW_FORM") ?></span> </a> </li> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=forms"> <span class="icon-list-2"></span> <span><?php echo JText::_("COM_CONVERTFORMS_FORMS") ?></span> </a> </li> <?php } ?> <?php if ($canAccessCampaigns) { ?> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=campaigns"> <span class="cf-icon-megaphone"></span> <span><?php echo JText::_("COM_CONVERTFORMS_CAMPAIGNS") ?></span> </a> </li> <?php } ?> <?php if ($canAccessSubmissions) { ?> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=conversions"> <span class="icon-users"></span> <span><?php echo JText::_("COM_CONVERTFORMS_SUBMISSIONS") ?></span> </a> </li> <?php } ?> <?php if ($canAccessAddons) { ?> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=addons"> <span class="icon-puzzle"></span> <span><?php echo JText::_("COM_CONVERTFORMS_ADDONS") ?></span> </a> </li> <?php } ?> <?php if ($canAccessForms) { ?> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_convertforms&view=forms&layout=import"> <span class="icon-box-remove"></span> <span><?php echo JText::_("NR_IMPORT") ?></span> </a> </li> <?php } ?> <?php if ($canAccessOptions) { ?> <li> <a href="<?php echo JURI::base() ?>index.php?option=com_config&view=component&component=com_convertforms&path=&return=<?php echo MD5(JURI::base()."index.php?option=com_convertforms") ?>"> <span class="icon-options"></span> <span><?php echo JText::_("JOPTIONS") ?></span> </a> </li> <?php } ?> <li> <a href="https://www.tassos.gr/joomla-extensions/convert-forms/docs" target="_blank"> <span class="icon-info"></span> <span><?php echo JText::_("NR_KNOWLEDGEBASE")?></span> </a> </li> </ul> </div> </div> <?php if ($canAccessSubmissions) { ?> <div class="<?php echo defined('nrJ4') ? 'row mt-3' : 'row-fluid' ?>" style="margin-top:10px;"> <div class="span6 col"> <div class="nr-well-white"> <h3><?php echo JText::_("COM_CONVERTFORMS_SUBMISSIONS") ?></h3> <?php include "panel.stats.php"; ?> </div> </div> <div class="span6 col"> <div class="nr-well-white"> <h3><?php echo JText::_('COM_CONVERTFORMS_LATEST_SUBMISSIONS') ?></h3> <?php include "latest.leads.php"; ?> </div> </div> </div> <?php } ?> </span> <span class="span4 col-md-4"> <?php echo JHtml::_('bootstrap.startAccordion', "info", array('active' => 'slide0')); ?> <!-- Information Slide --> <?php echo JHtml::_('bootstrap.addSlide', "info", JText::_("NR_INFORMATION"), 'slide0'); include "panel.info.php"; echo JHtml::_('bootstrap.endSlide'); ?> <!-- Documentation Slide --> <?php echo JHtml::_('bootstrap.addSlide', "info", JText::_("NR_KNOWLEDGEBASE"), 'slide1'); include "panel.docs.php"; echo JHtml::_('bootstrap.endSlide'); ?> <!-- Translations Slide --> <?php echo JHtml::_('bootstrap.addSlide', "info", JText::_("NR_HELP_WITH_TRANSLATIONS"), 'slide2'); include "panel.translations.php"; echo JHtml::_('bootstrap.endSlide'); ?> <?php echo JHtml::_('bootstrap.endAccordion'); ?> </span> </div> <?php include_once(JPATH_COMPONENT_ADMINISTRATOR . '/layouts/footer.php'); ?> <script> function newForm() { jQuery("#cfSelectTemplate").modal("show"); } </script> PKBA#]P�Y�44Bcomponents/com_convertforms/views/convertforms/tmpl/panel.info.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <table class="table nrTable noBorder"> <tbody> <tr> <td><?php echo JText::_("NR_EXTENSION"); ?></td> <td><?php echo JText::_("COM_CONVERTFORMS"); ?></td> </tr> <tr> <td><?php echo JText::_("NR_VERSION"); ?></td> <td><?php echo NRFramework\Functions::getExtensionVersion("com_convertforms", true); ?> <a href="https://www.tassos.gr/joomla-extensions/convert-forms//changelog"><?php echo JText::_("NR_CHANGELOG"); ?></a> </td> </tr> <tr> <td><?php echo JText::_("NR_DOWNLOAD_KEY"); ?></td> <td> <?php if ($downloadKey) { ?> <span class="badge bg-success label-success"><?php echo JText::_("NR_OK"); ?></span> <?php } else { ?> <span class="badge bg-danger label-important"><?php echo JText::_("NR_MISSING"); ?></span> <?php } ?> </td> </tr> <tr> <td><?php echo JText::_("NR_LICENSE"); ?></td> <td><a href="http://www.tassos.gr/license" target="_blank">GNU GPLv3 Commercial</td> </tr> <tr> <td><?php echo JText::_("NR_AUTHOR"); ?></td> <td>Tassos Marinos - <a href="http://www.tassos.gr" target="_blank">www.tassos.gr</td> </tr> <tr> <td><?php echo JText::_("NR_FOLLOWME"); ?></td> <td> <a href="#" onclick="window.open('https://twitter.com/intent/follow?screen_name=tassosm','tassos.gr','width=500,height=500');"> <?php echo JText::sprintf("NR_FOLLOW", "@mtassos") ?> </a> </td> </tr> </tbody> </table>PKBA#]���,,Ccomponents/com_convertforms/views/convertforms/tmpl/panel.stats.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use ConvertForms\Analytics; ?> <table width="100%" class="table nrTable"> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_LAST_YEAR") ?></td> <td class="text-right"><?php echo Analytics::getRows('last_year') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_THIS_YEAR") ?></td> <td class="text-right"><?php echo Analytics::getRows('this_year') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_LAST_MONTH") ?></td> <td class="text-right"><?php echo Analytics::getRows('last_month') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_THIS_MONTH") ?></td> <td class="text-right"><?php echo Analytics::getRows('this_month') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_LAST_7_DAYS") ?></td> <td class="text-right"><?php echo Analytics::getRows('range', ['created_from' => '-7 day', 'created_to' => 'now']) ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_YESTERDAY") ?></td> <td class="text-right"><?php echo Analytics::getRows('yesterday') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_TODAY") ?></td> <td class="text-right"><?php echo Analytics::getRows('today') ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_AVG_DAY") ?></td> <td class="text-right"><?php echo Analytics::getLeadsAverageThisMonth() ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_PROJECTION") ?></td> <td class="text-right"><?php echo Analytics::getMonthProjection(); ?></td> </tr> <tr> <td><?php echo JText::_("COM_CONVERTFORMS_TOTAL") ?></td> <td class="text-right"><?php echo Analytics::getRows(); ?></td> </tr> </table> PKBA#]iL�λ�Bcomponents/com_convertforms/views/convertforms/tmpl/panel.docs.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); $docs = array( "Getting Started with Convert Forms" => "getting-started-with-convert-forms", "How to use the Form Designer" => "how-to-use-the-form-designer", "How to display a form on the frontend" => "how-to-display-a-form-on-the-frontend", "Sync Submissions with ActiveCampaign" => "sync-leads-with-activecampaign", "Sync Submissions with GetResponse" => "sync-leads-with-getresponse", "Sync Submissions with MailChimp" => "sync-leads-with-mailchimp", "How to use Convert Forms as a popup" => "how-to-use-convert-forms-as-a-popup", ); $docHome = "http://www.tassos.gr/joomla-extensions/convert-forms/docs/"; ?> <ul> <?php foreach ($docs as $title => $url) { ?> <li><a target="_blank" href="<?php echo $docHome; ?><?php echo $url?>"><?php echo $title ?></a></li> <?php } ?> </ul>PKBA#]���'��*components/com_convertforms/controller.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); /** * Convert Forms master display controller. */ class ConvertFormsController extends JControllerLegacy { }PKBA#][�0�hh:components/com_convertforms/sql/uninstall.convertforms.sqlnu�[���DROP TABLE IF EXISTS `#__convertforms`, `#__convertforms_campaigns`, `#__convertforms_conversions`;PKBA#]��H<OO7components/com_convertforms/sql/updates/mysql/2.3.0.sqlnu�[���ALTER TABLE `#__convertforms` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE `#__convertforms` CHANGE `name` `name` VARCHAR(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL; ALTER TABLE `#__convertforms` CHANGE `params` `params` MEDIUMTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL; ALTER TABLE `#__convertforms_conversions` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE `#__convertforms_conversions` CHANGE `params` `params` MEDIUMTEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL;PKBA#]"W�y��7components/com_convertforms/sql/updates/mysql/2.5.4.sqlnu�[���CREATE TABLE IF NOT EXISTS `#__convertforms_submission_meta` ( `id` int(10) NOT NULL AUTO_INCREMENT, `submission_id` int(10) NOT NULL, `meta_type` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `meta_key` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `meta_value` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL, `params` mediumtext COLLATE utf8mb4_unicode_ci, `date_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `date_modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`), KEY `date_created` (`date_created`), KEY `submission_id` (`submission_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;PKBA#]V���7components/com_convertforms/sql/updates/mysql/2.7.5.sqlnu�[���ALTER TABLE `#__convertforms_conversions` ADD INDEX `user_id` (`user_id`); ALTER TABLE `#__convertforms_conversions` ADD INDEX `state_created` (`state`, `created`);PKBA#]jl�FF7components/com_convertforms/sql/updates/mysql/2.7.6.sqlnu�[���ALTER TABLE `#__convertforms_conversions` ADD INDEX `state` (`state`);PKBA#]�o���7components/com_convertforms/sql/updates/mysql/2.5.1.sqlnu�[���ALTER TABLE `#__convertforms_conversions` ADD INDEX `form_id` (`form_id`); ALTER TABLE `#__convertforms_conversions` ADD INDEX `campaign_id` (`campaign_id`);PKBA#]앀{� � 0components/com_convertforms/sql/convertforms.sqlnu�[���CREATE TABLE IF NOT EXISTS `#__convertforms` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `state` tinyint(3) NOT NULL DEFAULT '0', `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `ordering` int(11) NOT NULL DEFAULT '0', `params` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE IF NOT EXISTS `#__convertforms_campaigns` ( `id` int(10) NOT NULL AUTO_INCREMENT, `name` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `state` tinyint(3) NOT NULL DEFAULT '0', `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `ordering` int(11) NOT NULL DEFAULT '0', `service` varchar(50) NOT NULL, `params` mediumtext COLLATE utf8mb4_unicode_ci, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE IF NOT EXISTS `#__convertforms_conversions` ( `id` int(10) NOT NULL AUTO_INCREMENT, `created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `campaign_id` int(10) NOT NULL, `form_id` int(11) NOT NULL, `visitor_id` varchar(64) DEFAULT NULL, `user_id` int(11) NOT NULL DEFAULT '0', `params` mediumtext COLLATE utf8mb4_unicode_ci, `state` tinyint(3) NOT NULL DEFAULT '1', PRIMARY KEY (`id`), KEY `state` (`state`), KEY `created` (`created`), KEY `form_id` (`form_id`), KEY `campaign_id` (`campaign_id`), KEY `user_id` (`user_id`), KEY `state_created` (`state`,`created`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; CREATE TABLE IF NOT EXISTS `#__convertforms_submission_meta` ( `id` int(10) NOT NULL AUTO_INCREMENT, `submission_id` int(10) NOT NULL, `meta_type` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `meta_key` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL, `meta_value` mediumtext COLLATE utf8mb4_unicode_ci NOT NULL, `params` mediumtext COLLATE utf8mb4_unicode_ci, `date_created` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `date_modified` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (`id`), KEY `date_created` (`date_created`), KEY `submission_id` (`submission_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; INSERT INTO `#__convertforms_campaigns` (`name`, `state`, `service`) VALUES ('Demo Campaign', 1, '0');PKBA#]��Nx9x95components/com_convertforms/script.install.helper.phpnu�[���<?php /** * Installer Script Helper * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2016 Tassos Marinos All Rights Reserved * @license http://www.gnu.org/licenses/gpl-3.0.html GNU/GPL */ defined('_JEXEC') or die; jimport('joomla.filesystem.file'); jimport('joomla.filesystem.folder'); class Com_ConvertformsInstallerScriptHelper { public $name = ''; public $alias = ''; public $extname = ''; public $extension_type = ''; public $plugin_folder = 'system'; public $module_position = 'status'; public $client_id = 1; public $install_type = 'install'; public $show_message = true; public $autopublish = true; public $db = null; public $app = null; public $installedVersion; public function __construct(&$params) { $this->extname = $this->extname ?: $this->alias; $this->db = JFactory::getDbo(); $this->app = JFactory::getApplication(); $this->installedVersion = $this->getVersion($this->getInstalledXMLFile()); } /** * Preflight event * * @param string * @param JAdapterInstance * * @return boolean */ public function preflight($route, $adapter) { if (!in_array($route, array('install', 'update'))) { return; } JFactory::getLanguage()->load('plg_system_novaraininstaller', JPATH_PLUGINS . '/system/novaraininstaller'); if ($this->show_message && $this->isInstalled()) { $this->install_type = 'update'; } if ($this->onBeforeInstall() === false) { return false; } } /** * Preflight event * * @param string * @param JAdapterInstance * * @return boolean */ public function postflight($route, $adapter) { JFactory::getLanguage()->load($this->getPrefix() . '_' . $this->extname, $this->getMainFolder()); if (!in_array($route, array('install', 'update'))) { return; } if ($this->onAfterInstall() === false) { return false; } if ($route == 'install' && $this->autopublish) { $this->publishExtension(); } if ($this->show_message) { $this->addInstalledMessage(); } JFactory::getCache()->clean('com_plugins'); JFactory::getCache()->clean('_system'); } public function isInstalled() { if (!is_file($this->getInstalledXMLFile())) { return false; } $query = $this->db->getQuery(true) ->select('extension_id') ->from('#__extensions') ->where($this->db->quoteName('type') . ' = ' . $this->db->quote($this->extension_type)) ->where($this->db->quoteName('element') . ' = ' . $this->db->quote($this->getElementName())); $this->db->setQuery($query, 0, 1); $result = $this->db->loadResult(); return empty($result) ? false : true; } public function getMainFolder() { switch ($this->extension_type) { case 'plugin' : return JPATH_SITE . '/plugins/' . $this->plugin_folder . '/' . $this->extname; case 'component' : return JPATH_ADMINISTRATOR . '/components/com_' . $this->extname; case 'module' : return JPATH_ADMINISTRATOR . '/modules/mod_' . $this->extname; case 'library' : return JPATH_SITE . '/libraries/' . $this->extname; } } public function getInstalledXMLFile() { return $this->getXMLFile($this->getMainFolder()); } public function getCurrentXMLFile() { return $this->getXMLFile(__DIR__); } public function getXMLFile($folder) { switch ($this->extension_type) { case 'module' : return $folder . '/mod_' . $this->extname . '.xml'; default : return $folder . '/' . $this->extname . '.xml'; } } public function foldersExist($folders = array()) { foreach ($folders as $folder) { if (is_dir($folder)) { return true; } } return false; } public function publishExtension() { switch ($this->extension_type) { case 'plugin' : $this->publishPlugin(); case 'module' : $this->publishModule(); } } public function publishPlugin() { $query = $this->db->getQuery(true) ->update('#__extensions') ->set($this->db->quoteName('enabled') . ' = 1') ->where($this->db->quoteName('type') . ' = ' . $this->db->quote('plugin')) ->where($this->db->quoteName('element') . ' = ' . $this->db->quote($this->extname)) ->where($this->db->quoteName('folder') . ' = ' . $this->db->quote($this->plugin_folder)); $this->db->setQuery($query); $this->db->execute(); } public function publishModule() { // Get module id $query = $this->db->getQuery(true) ->select('id') ->from('#__modules') ->where($this->db->quoteName('module') . ' = ' . $this->db->quote('mod_' . $this->extname)) ->where($this->db->quoteName('client_id') . ' = ' . (int) $this->client_id); $this->db->setQuery($query, 0, 1); $id = $this->db->loadResult(); if (!$id) { return; } // check if module is already in the modules_menu table (meaning is is already saved) $query->clear() ->select('moduleid') ->from('#__modules_menu') ->where($this->db->quoteName('moduleid') . ' = ' . (int) $id); $this->db->setQuery($query, 0, 1); $exists = $this->db->loadResult(); if ($exists) { return; } // Get highest ordering number in position $query->clear() ->select('ordering') ->from('#__modules') ->where($this->db->quoteName('position') . ' = ' . $this->db->quote($this->module_position)) ->where($this->db->quoteName('client_id') . ' = ' . (int) $this->client_id) ->order('ordering DESC'); $this->db->setQuery($query, 0, 1); $ordering = $this->db->loadResult(); $ordering++; // publish module and set ordering number $query->clear() ->update('#__modules') ->set($this->db->quoteName('published') . ' = 1') ->set($this->db->quoteName('ordering') . ' = ' . (int) $ordering) ->set($this->db->quoteName('position') . ' = ' . $this->db->quote($this->module_position)) ->where($this->db->quoteName('id') . ' = ' . (int) $id); $this->db->setQuery($query); $this->db->execute(); // add module to the modules_menu table $query->clear() ->insert('#__modules_menu') ->columns(array($this->db->quoteName('moduleid'), $this->db->quoteName('menuid'))) ->values((int) $id . ', 0'); $this->db->setQuery($query); $this->db->execute(); } public function addInstalledMessage() { JFactory::getApplication()->enqueueMessage( JText::sprintf( JText::_($this->install_type == 'update' ? 'NRI_THE_EXTENSION_HAS_BEEN_UPDATED_SUCCESSFULLY' : 'NRI_THE_EXTENSION_HAS_BEEN_INSTALLED_SUCCESSFULLY'), '<strong>' . JText::_($this->name) . '</strong>', '<strong>' . $this->getVersion() . '</strong>', $this->getFullType() ) ); } public function getPrefix() { switch ($this->extension_type) { case 'plugin'; return JText::_('plg_' . strtolower($this->plugin_folder)); case 'component': return JText::_('com'); case 'module': return JText::_('mod'); case 'library': return JText::_('lib'); default: return $this->extension_type; } } public function getElementName($type = null, $extname = null) { $type = is_null($type) ? $this->extension_type : $type; $extname = is_null($extname) ? $this->extname : $extname; switch ($type) { case 'component' : return 'com_' . $extname; case 'module' : return 'mod_' . $extname; case 'plugin' : default: return $extname; } } public function getFullType() { return JText::_('NRI_' . strtoupper($this->getPrefix())); } public function isPro() { $versionFile = __DIR__ . "/version.php"; // If version file does not exist we assume a PRO version if (!JFile::exists($versionFile)) { return true; } // Load version file require_once $versionFile; return (bool) $NR_PRO; } public function getVersion($file = '') { $file = $file ?: $this->getCurrentXMLFile(); if (!is_file($file)) { return ''; } $xml = JInstaller::parseXMLInstallFile($file); if (!$xml || !isset($xml['version'])) { return ''; } return $xml['version']; } /** * Checks wether the extension can be installed or not * * @return boolean */ public function canInstall() { // The extension is not installed yet. Accept Install. if (!$installed_version = $this->getVersion($this->getInstalledXMLFile())) { return true; } // Path to extension's version file $versionFile = $this->getMainFolder() . "/version.php"; $NR_PRO = true; // If version file does not exist we assume we have a PRO version installed if (file_exists($versionFile)) { require_once($versionFile); } // The free version is installed. Accept install. if (!(bool)$NR_PRO) { return true; } // Current package is a PRO version. Accept install. if ($this->isPro()) { return true; } // User is trying to update from PRO version to FREE. Do not accept install. JFactory::getLanguage()->load($this->getPrefix() . '_' . $this->extname, __DIR__); JFactory::getApplication()->enqueueMessage( JText::_('NRI_ERROR_PRO_TO_FREE'), 'error' ); JFactory::getApplication()->enqueueMessage( html_entity_decode( JText::sprintf( 'NRI_ERROR_UNINSTALL_FIRST', '<a href="http://www.tassos.gr/joomla-extensions/' . $this->alias . '" target="_blank">', '</a>', JText::_($this->name) ) ), 'error' ); return false; } /** * Checks if current version is newer than the installed one * Used for Novarain Framework * * @return boolean [description] */ public function isNewer() { if (!$installed_version = $this->getVersion($this->getInstalledXMLFile())) { return true; } $package_version = $this->getVersion(); return version_compare($installed_version, $package_version, '<='); } /** * Helper method triggered before installation * * @return bool */ public function onBeforeInstall() { if (!$this->canInstall()) { return false; } } /** * Helper method triggered after installation */ public function onAfterInstall() { } /** * Delete files * * @param array $folders */ public function deleteFiles($files = array()) { foreach ($files as $key => $file) { JFile::delete($file); } } /** * Deletes folders * * @param array $folders */ public function deleteFolders($folders = array()) { foreach ($folders as $folder) { if (!is_dir($folder)) { continue; } JFolder::delete($folder); } } public function dropIndex($table, $index) { $db = $this->db; // Check if index exists first $query = 'SHOW INDEX FROM ' . $db->quoteName('#__' . $table) . ' WHERE KEY_NAME = ' . $db->quote($index); $db->setQuery($query); $db->execute(); if (!$db->loadResult()) { return; } // Remove index $query = 'ALTER TABLE ' . $db->quoteName('#__' . $table) . ' DROP INDEX ' . $db->quoteName($index); $db->setQuery($query); $db->execute(); } public function dropUnwantedTables($tables) { if (!$tables) { return; } foreach ($tables as $table) { $query = "DROP TABLE IF EXISTS #__".$this->db->escape($table); $this->db->setQuery($query); $this->db->execute(); } } public function dropUnwantedColumns($table, $columns) { if (!$columns || !$table) { return; } $db = $this->db; // Check if columns exists in database function qt($n) { return(JFactory::getDBO()->quote($n)); } $query = 'SHOW COLUMNS FROM #__'.$table.' WHERE Field IN ('.implode(",", array_map("qt", $columns)).')'; $db->setQuery($query); $rows = $db->loadColumn(0); // Abort if we don't have any rows if (!$rows) { return; } // Let's remove the columns $q = ""; foreach ($rows as $key => $column) { $comma = (($key+1) < count($rows)) ? "," : ""; $q .= "drop ".$this->db->escape($column).$comma; } $query = "alter table #__".$table." $q"; $db->setQuery($query); $db->execute(); } public function fetch($table, $columns = "*", $where = null, $singlerow = false) { if (!$table) { return; } $db = $this->db; $query = $db->getQuery(true); $query ->select($columns) ->from("#__$table"); if (isset($where)) { $query->where("$where"); } $db->setQuery($query); return ($singlerow) ? $db->loadObject() : $db->loadObjectList(); } /** * Load the Novarain Framework * * @return boolean */ public function loadFramework() { if (is_file(JPATH_PLUGINS . '/system/nrframework/autoload.php')) { include_once JPATH_PLUGINS . '/system/nrframework/autoload.php'; } } /** * Re-orders plugin after passed array of plugins * * @param string $plugin Plugin element name * @param array $lowerPluginOrder Array of plugin element names * * @return boolean */ public function pluginOrderAfter($lowerPluginOrder) { if (!is_array($lowerPluginOrder) || !count($lowerPluginOrder)) { return; } $db = $this->db; // Get plugins max order $query = $db->getQuery(true); $query ->select($db->quoteName('b.ordering')) ->from($db->quoteName('#__extensions', 'b')) ->where($db->quoteName('b.element') . ' IN ("'.implode("\",\"",$lowerPluginOrder).'")') ->order('b.ordering desc'); $db->setQuery($query); $maxOrder = $db->loadResult(); if (is_null($maxOrder)) { return; } // Get plugin details $query ->clear() ->select(array($db->quoteName('extension_id'), $db->quoteName('ordering'))) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('element') . ' = ' . $db->quote($this->alias)); $db->setQuery($query); $pluginInfo = $db->loadObject(); if (!isset($pluginInfo->ordering) || $pluginInfo->ordering > $maxOrder) { return; } // Update the new plugin order $object = new stdClass(); $object->extension_id = $pluginInfo->extension_id; $object->ordering = ($maxOrder + 1); try { $db->updateObject('#__extensions', $object, 'extension_id'); } catch (Exception $e) { return $e->getMessage(); } } } PKBA#]˃6/��&components/com_convertforms/config.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <config> <fieldset name="Misc" label="General" addfieldpath="/plugins/system/nrframework/fields"> <field name="loadCSS" default="1" class="btn-group btn-group-yesno" type="radio" label="COM_CONVERTFORMS_LOADCSS" description="COM_CONVERTFORMS_LOADCSS_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="showcopyright" default="1" class="btn-group btn-group-yesno" type="radio" label="NR_SHOW_COPYRIGHT" description="NR_SHOW_COPYRIGHT_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="debug" default="0" class="btn-group btn-group-yesno" type="radio" label="COM_CONVERTFORMS_DEBUG" description="COM_CONVERTFORMS_DEBUG_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> </fieldset> <fieldset name="security" label="COM_CONVERTFORMS_SECURITY"> <field name="api_key" type="text" label="COM_CONVERTFORMS_API_KEY" description="COM_CONVERTFORMS_API_KEY_DESC" /> <field name="csrf_check" type="radio" label="COM_CONVERTFORMS_CSRF_CHECK" description="COM_CONVERTFORMS_CSRF_CHECK_DESC" class="btn-group btn-group-yesno" default="0"> <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="excel_security" type="radio" label="COM_CONVERTFORMS_EXCEL_SECURITY" description="COM_CONVERTFORMS_EXCEL_SECURITY_DESC" default="1" class="btn-group btn-group-yesno"> <option value="1">JYES</option> <option value="0">JNO</option> </field> </fieldset> <fieldset name="advanced" label="Advanced" addfieldpath="/administrator/components/com_convertforms/models/forms/fields"> <field name="api" type="radio" default="0" class="btn-group btn-group-yesno" label="COM_CONVERTFORMS_API_ENABLE" description="COM_CONVERTFORMS_API_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="executeoutputoverride" default="0" class="btn-group btn-group-yesno" type="radio" label="NR_EXECUTE_ON_OUTPUT_OVERRIDE" description="NR_EXECUTE_ON_OUTPUT_OVERRIDE_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> <field name="executeonformat" default="0" class="btn-group btn-group-yesno" type="radio" label="NR_EXECUTE_ON_FORMAT_OVERRIDE" description="NR_EXECUTE_ON_FORMAT_OVERRIDE_DESC"> <option value="1">JYES</option> <option value="0">JNO</option> </field> </fieldset> <fieldset name="recaptcha" label="reCAPTCHA" description="NR_RECAPTCHA_DESC"> <field name="1" type="note" label="Checkbox reCAPTCHA v2" /> <field name="recaptcha_sitekey" type="text" label="NR_RECAPTCHA_SITE_KEY" description="NR_RECAPTCHA_SITE_KEY_DESC" class="input-xxlarge" /> <field name="recaptcha_secretkey" type="text" label="NR_RECAPTCHA_SECRET_KEY" description="NR_RECAPTCHA_SECRET_KEY_DESC" class="input-xxlarge" /> <field name="2" type="note" label="Invisible reCAPTCHA v2" /> <field name="recaptcha_sitekey_invs" type="text" label="NR_RECAPTCHA_SITE_KEY" description="NR_RECAPTCHA_SITE_KEY_DESC" class="input-xxlarge" /> <field name="recaptcha_secretkey_invs" type="text" label="NR_RECAPTCHA_SECRET_KEY" description="NR_RECAPTCHA_SECRET_KEY_DESC" class="input-xxlarge" /> </fieldset> <fieldset name="hcaptcha" label="hCaptcha" description="NR_HCAPTCHA_DESC"> <field name="hcaptcha_sitekey" type="text" label="NR_RECAPTCHA_SITE_KEY" description="NR_RECAPTCHA_SITE_KEY_DESC" class="input-xxlarge" /> <field name="hcaptcha_secretkey" type="text" label="NR_RECAPTCHA_SECRET_KEY" description="NR_HCAPTCHA_SECRET_KEY_DESC" class="input-xxlarge" /> </fieldset> <fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" description="JCONFIG_PERMISSIONS_DESC" > <field name="rules" type="rules" label="JCONFIG_PERMISSIONS_LABEL" filter="rules" validate="rules" component="com_convertforms" section="component" /> </fieldset> </config>PKBA#]Z2Y?660components/com_convertforms/layouts/helptext.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <?php if (isset($field->description) && !empty($field->description)) { ?> <div class="cf-control-input-desc"> <?php echo $field->description; ?> </div> <?php } ?>PKBA#]U��**4components/com_convertforms/layouts/controlgroup.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $cssclass = isset($field->cssclass) ? $field->cssclass : ''; // Load Input Masking if (isset($field->inputmask) && !empty($field->inputmask)) { JHtml::script('com_convertforms/vendor/inputmask.min.js', ['relative' => true, 'version' => 'auto']); JHtml::script('com_convertforms/inputmask.js', ['relative' => true, 'version' => 'auto']); JText::script('COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE'); } // Safe label is used by the getFieldsArray() $safeLabel = isset($field->label) ? htmlspecialchars(trim(strip_tags($field->label)), ENT_NOQUOTES, 'UTF-8') : null; $helpTextPosition = $form['params']->get('help_text_position', 'after'); ?> <div class="cf-control-group <?php echo $cssclass; ?>" data-key="<?php echo $field->key; ?>" data-name="<?php echo $field->name; ?>" <?php echo $safeLabel ? 'data-label="' . $safeLabel . '"' : '' ?> data-type="<?php echo $field->type ?>" <?php echo (isset($field->required) && $field->required) ? 'data-required' : '' ?>> <?php if (isset($field->hidelabel) && !$field->hidelabel && !empty($field->label)) { ?> <div class="cf-control-label"> <label class="cf-label" for="<?php echo $field->input_id; ?>"> <?php echo $field->label ?> <?php if ($form['params']->get('required_indication', true) && $field->required) { ?> <span class="cf-required-label">*</span> <?php } ?> </label> </div> <?php } ?> <div class="cf-control-input"> <?php if ($helpTextPosition == 'before') { include __DIR__ . '/helptext.php'; } echo $field->input; if ($helpTextPosition == 'after') { include __DIR__ . '/helptext.php'; } ?> </div> </div>PKBA#]~�-GG.components/com_convertforms/layouts/footer.phpnu�[��� <?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); ?> <div class="text-center pt-4"> <?php echo JText::_('COM_CONVERTFORMS') . " v" . NRFramework\Functions::getExtensionVersion("com_convertforms", true) ?> <br> <?php if ($this->config->get("showcopyright", true)) { ?> <div class="footer_review"> <?php echo JText::_("NR_LIKE_THIS_EXTENSION") ?> <a href="https://extensions.joomla.org/extensions/extension/contacts-and-feedback/forms/convert-forms/" target="_blank"><?php echo JText::_("NR_LEAVE_A_REVIEW") ?></a> <a href="https://extensions.joomla.org/extensions/extension/contacts-and-feedback/forms/convert-forms/" target="_blank" class="stars"><span class="icon-star"></span><span class="icon-star"></span><span class="icon-star"></span><span class="icon-star"></span><span class="icon-star"></span></a> </div> <Br> © <?php echo JText::sprintf('NR_COPYRIGHT', date("Y")) ?></p> <?php } ?> </div>PKBA#]zb��nn3components/com_convertforms/layouts/optionsform.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div class="fmItem" data-key="<?php echo $loadData['key']; ?>"> <?php echo $header; foreach ($form->getFieldsets() as $fieldset) { // Skip fieldset is has no fields if (!$form->getFieldset($fieldset->name)) { continue; } $label = $fieldset->name == 'basic' ? JText::_('COM_CONVERTFORMS_FIELD_' . $fieldTypeName) : ucfirst($fieldset->name); ?> <h3> <?php echo $label; ?> <?php if ($fieldset->name == 'basic') { ?> <small>(ID: <?php echo $loadData['key']; ?>)</small> <ul class="cf-menu"> <li class="cf-menu-parent"> <a href="#" class="cf-icon-dots cf-menu-item" data-bs-toggle="dropdown" data-toggle="dropdown"></a> <ul class="<?php echo defined('nrJ4') ? 'dropdown-menu' : '' ?>"> <li> <a href="#" class="copyField"><?php echo JText::_('COM_CONVERTFORMS_FIELDS_COPY') ?></a> </li> <li> <a href="#" class="removeField" data-focusnext="true"><?php echo JText::_('COM_CONVERTFORMS_FIELDS_DELETE') ?></a> </li> </ul> </li> </ul> <?php } ?> </h3> <div class="fmItemForm"> <?php echo $form->renderFieldset($fieldset->name); ?> </div> <?php } ?> </div>PKBA#]��� ,components/com_convertforms/layouts/form.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div <?php echo trim($boxattributes) ?> data-id="<?php echo $id ?>"> <form name="cf<?php echo $id; ?>" id="cf<?php echo $id; ?>" method="post" action="#"> <?php if ($hascontent) { ?> <div class="cf-content-wrap cf-col-16 <?php echo $contentclasses ?>"> <div class="cf-content cf-col-16"> <?php if (isset($image)) { ?> <div class="cf-content-img cf-col-16 cf-text-center <?php echo $imagecontainerclasses; ?>"> <img alt="<?php echo $params->get("imagealt"); ?>" class="<?php echo implode(" ", $imageclasses) ?>" style="<?php echo implode(";", $imagestyles) ?>" src="<?php echo $image ?>" /> </div> <?php } ?> <?php if (!$textIsEmpty) { ?> <div class="cf-content-text cf-col <?php echo $textcontainerclasses; ?>" > <?php echo $params->get("text"); ?> </div> <?php } ?> </div> </div> <?php } ?> <div class="cf-form-wrap cf-col-16 <?php echo implode(" ", $formclasses) ?>" style="<?php echo implode(";", $formstyles) ?>"> <div class="cf-response"></div> <?php if (isset($fields_prepare)) { ?> <div class="cf-fields"> <?php echo $fields_prepare; ?> </div> <?php } ?> <?php if (!$footerIsEmpty) { ?> <div class="cf-footer"> <?php echo $params->get("footer"); ?> </div> <?php } ?> </div> <input type="hidden" name="cf[form_id]" value="<?php echo $id ?>"> <?php echo JHtml::_('form.token'); if (JFactory::getApplication()->isClient('site')) { echo $params->get('customcode', ''); } ?> <?php if ((bool) $params->get('honeypot', true)) { // Since the stylesheet may be disabled, ensure the honeypot field is hidden by injecting the CSS. $css = '.cf-field-hp { display: none; position: absolute; left: -9000px; }'; $params->set('customcss', $params->get('customcss') . $css); ?> <div class="cf-field-hp"> <?php $hp_id = 'cf-field-' . uniqid(); $labels = ['Name', 'First Name', 'Last Name', 'Email', 'Phone', 'Website', 'Message']; $label = $labels[array_rand($labels)]; ?> <label for="<?php echo $hp_id; ?>" class="cf-label"><?php echo $label; ?></label> <input type="text" name="cf[hnpt]" id="<?php echo $hp_id; ?>" autocomplete="off" class="cf-input"/> </div> <?php } ?> </form> <?php if (JFactory::getApplication()->isClient('site')) { ConvertForms\Helper::addStyleDeclarationOnce($params->get('customcss')); } else { // Help user style the form in the backend as well. echo '<style>' . $params->get('customcss') . '</style>'; } ?> </div>PKBA#]�,�FHH7components/com_convertforms/layouts/fields/checkbox.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); if (count($field->choices) > 1) { JHtml::_('script', 'com_convertforms/checkbox.js', array('version' => 'auto', 'relative' => true)); } $choiceLayout = (isset($field->choicelayout) && !empty($field->choicelayout)) ? 'cf-list-' . $field->choicelayout . '-columns' : ''; ?> <div class="cf-list <?php echo $choiceLayout; ?>"> <?php foreach ($field->choices as $choiceKey => $choice) { ?> <div class="cf-checkbox-group <?php if (isset($field->required) && $field->required) { ?> cf-checkbox-group-required <?php } ?>"> <input type="checkbox" name="<?php echo $field->input_name ?>[]" id="<?php echo $field->input_id . "_" . $choiceKey ?>" value="<?php echo htmlspecialchars($choice['value']); ?>" data-calc-value="<?php echo htmlspecialchars($choice['calc-value']) ?>" <?php if (in_array($choice['value'], $field->value)) { ?> checked <?php } ?> <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> class="<?php echo $field->class; ?>" > <label class="cf-label" for="<?php echo $field->input_id . "_" . $choiceKey; ?>"> <?php echo $choice['label'] ?> </label> </div> <?php } ?> </div>PKBA#]�_A�mm5components/com_convertforms/layouts/fields/number.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <input type="number" name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> <?php if (isset($field->placeholder)) { ?> placeholder="<?php echo htmlspecialchars($field->placeholder, ENT_COMPAT, 'UTF-8'); ?>" <?php } ?> <?php if (isset($field->step) && is_numeric($field->step)) { ?> step="<?php echo (float) $field->step; ?>" <?php } ?> <?php if (isset($field->min) && is_numeric($field->min)) { ?> min="<?php echo (float) $field->min; ?>" <?php } ?> <?php if (isset($field->max) && is_numeric($field->max)) { ?> max="<?php echo (float) $field->max; ?>" <?php } ?> <?php if (isset($field->value) && $field->value != '') { ?> value="<?php echo $field->value; ?>" <?php } ?> <?php if (isset($field->readonly) && $field->readonly == '1') { ?> readonly <?php } ?> <?php if (isset($field->htmlattributes) && !empty($field->htmlattributes)) { ?> <?php foreach ($field->htmlattributes as $key => $value) { ?> <?php echo $key ?>="<?php echo htmlspecialchars($value, ENT_COMPAT, 'UTF-8') ?>" <?php } ?> <?php } ?> class="<?php echo $field->class ?>" >PKBA#]��p9��Ccomponents/com_convertforms/layouts/fields/recaptchav2invisible.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); if (!$class->getSiteKey() || !$class->getSecretKey()) { echo JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA') . ': ' . JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE'); return; } JHtml::_('script', 'com_convertforms/recaptcha_v2_invisible.js', ['version' => 'auto', 'relative' => true]); JHtml::_('script', 'https://www.google.com/recaptcha/api.js?onload=ConvertFormsInitInvisibleReCaptcha&render=explicit&hl=' . JFactory::getLanguage()->getTag()); ?> <div class="g-invisible-recaptcha" data-sitekey="<?php echo $class->getSiteKey(); ?>" data-badge="<?php echo $field->badge ?>"></div>PKBA#]��Q228components/com_convertforms/layouts/fields/recaptcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); if (!$class->getSiteKey() || !$class->getSecretKey()) { echo JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA') . ': ' . JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE'); return; } JText::script('COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED'); JHtml::_('script', 'plg_captcha_recaptcha/recaptcha.min.js', ['version' => 'auto', 'relative' => true]); $callback = defined('nrJ4') ? 'init' : 'Init'; // Why the hell did you guys rename the method? JHtml::_('script', 'https://www.google.com/recaptcha/api.js?onload=Joomla' . $callback . 'ReCaptcha2&render=explicit&hl=' . JFactory::getLanguage()->getTag()); JHtml::_('script', 'com_convertforms/recaptcha_v2_checkbox.js', ['version' => 'auto', 'relative' => true]); ?> <div class="nr-recaptcha g-recaptcha" data-sitekey="<?php echo $class->getSiteKey(); ?>" data-theme="<?php echo $field->theme ?>" data-size="<?php echo $field->size ?>"> </div>PKBA#]_�_���9components/com_convertforms/layouts/fields/emptyspace.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2018 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div style="height: <?php echo abs($field->gap); ?>px;"></div>PKBA#]="�� 6components/com_convertforms/layouts/fields/divider.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $styles = [ 'border-top-style: ' . $field->border_style, 'border-top-width: ' . (int) $field->border_width . 'px' , 'border-top-color: ' . $field->border_color, 'margin-top:' . (int) $field->margin_top . 'px', 'margin-bottom:' . (int) $field->margin_bottom . 'px' ]; ?> <div class="cf-divider" style="<?php echo implode(';', $styles); ?>"></div>PKBA#]o�A��5components/com_convertforms/layouts/fields/rating.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $atts = [ 'half_ratings' => $field->half_ratings, 'icon' => basename($field->icon, '.svg'), 'size' => (int) $field->size, 'selected_color' => $field->selected_color, 'unselected_color' => $field->unselected_color, 'max_rating' => $field->max_rating, 'load_css_vars' => true, ]; echo $class->toWidget($atts); ?>PKBA#]��X??5components/com_convertforms/layouts/fields/editor.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); JHtml::script('com_convertforms/field_editor.js', ['relative' => true , 'version' => 'auto']); JHtml::stylesheet('com_convertforms/field_editor.css', ['relative' => true , 'version' => 'auto']); JFactory::getDocument()->addStyleDeclaration(' #cf_' . $form['id'] . ' .cf-control-group[data-key="' . $field->key . '"] { --height:' . $field->height . 'px } '); echo $field->richeditor; ?>PKBA#]酻���7components/com_convertforms/layouts/fields/dropdown.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div class="cf-select <?php echo $field->size ?>"> <select name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> class="<?php echo $field->class ?>" > <?php foreach ($field->choices as $choiceKey => $choice) { ?> <option value="<?php echo htmlspecialchars($choice['value']); ?>" data-calc-value="<?php echo isset($choice['calc-value']) ? htmlspecialchars($choice['calc-value']) : '' ?>" <?php if ($choice['value'] == $field->value) { ?> selected <?php } ?> <?php if (isset($choice['disabled'])) { ?> disabled <?php } ?>> <?php echo $choice['label']; ?> </option> <?php } ?> </select> </div>PKBA#]���KK4components/com_convertforms/layouts/fields/radio.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $choiceLayout = (isset($field->choicelayout) && !empty($field->choicelayout)) ? 'cf-list-' . $field->choicelayout . '-columns' : ''; ?> <div class="cf-list <?php echo $choiceLayout; ?>"> <?php foreach ($field->choices as $choiceKey => $choice) { ?> <div class="cf-radio-group"> <input type="radio" name="<?php echo $field->input_name ?>[]" id="<?php echo $field->input_id . "_" . $choiceKey ?>" value="<?php echo htmlspecialchars($choice['value']); ?>" data-calc-value="<?php echo htmlspecialchars($choice['calc-value']) ?>" <?php if ($choice['value'] == $field->value) { ?> checked <?php } ?> <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> class="<?php echo $field->class; ?>" > <label class="cf-label" for="<?php echo $field->input_id . "_" . $choiceKey; ?>"> <?php echo $choice['label'] ?> </label> </div> <?php } ?> </div>PKBA#]+ i���7components/com_convertforms/layouts/fields/datetime.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $readOnly = (isset($field->readonly) && $field->readonly == '1'); $required = (isset($field->required) && $field->required == '1'); if (!$readOnly) { $doc = JFactory::getDocument(); // Load flatpickr media files JHtml::stylesheet('https://cdn.jsdelivr.net/npm/flatpickr@4.6.11/dist/flatpickr.min.css'); JHtml::script('https://cdn.jsdelivr.net/npm/flatpickr@4.6.11/dist/flatpickr.min.js'); // Load selected theme if ($field->theme) { JHtml::stylesheet('https://cdn.jsdelivr.net/npm/flatpickr@4.6.11/dist/themes/' . $field->theme . '.css'); } // Setup plugin options $options = [ 'mode' => $field->mode, 'dateFormat' => $field->dateformat, 'defaultDate' => $field->value, 'minDate' => $field->mindate, 'maxDate' => $field->maxdate, 'enableTime' => (bool) $field->showtimepicker, 'time_24hr' => (bool) $field->time24, 'minuteIncrement' => $field->minuteincrement, 'inline' => (bool) $field->inline, 'disableMobile' => isset($field->disable_mobile) ? (bool) $field->disable_mobile : false, 'allowInput' => $required ]; // Localize $lang = explode('-', \JFactory::getLanguage()->getTag())[0]; // Grrrrr! Flatpickr doesn't seem to have a strict naming rule for its language files. // A language file can be named either using the ISO 639-1 language code (el) or the ISO 3166-1 country code (gr). // List of locales that need to be converted. $convert_language_codes = [ 'el' => 'gr' // Greek ]; if (array_key_exists($lang, $convert_language_codes)) { $lang = $convert_language_codes[$lang]; } // Skip english if ($lang != 'en') { $lang = strtolower($lang); $options['locale'] = $lang; $doc->addScript('https://cdn.jsdelivr.net/npm/flatpickr@4.6.11/dist/l10n/' . $lang . '.js'); } // Setup plugin // Note: we are targeting the input field with a full element selector input[id='INPUT_ID'] instead of the simple #id selector // to prevent DOM invalid selector error caused when the ID contains spaces and special characters. $doc->addScriptDeclaration(' ConvertForms.Helper.onReady(function() { flatpickr.l10ns.default.firstDayOfWeek = ' . (isset($field->firstDayOfWeek) ? $field->firstDayOfWeek : 1) . '; flatpickr("input[id=\'' . $field->input_id . '\']", ' . json_encode($options, JSON_UNESCAPED_SLASHES | JSON_NUMERIC_CHECK) . '); // Fix the appearance of native date picker to match the design of the rest of the inputs. var mobile_inputs = document.querySelectorAll(".flatpickr-mobile"); if (mobile_inputs) { mobile_inputs.forEach(function(input) { input.setAttribute("style", input.previousSibling.getAttribute("style")); }); } }); '); $doc->addStyleDeclaration(' .flatpickr-input { cursor:default !important; background-color: var(--input-background-color) !important; } .flatpickr-current-month .flatpickr-monthDropdown-months{ height: auto !important; display: inline-block !important; min-width: auto !important; } .flatpickr-current-month .flatpickr-monthDropdown-months:hover { background: none; } .numInputWrapper { margin-left: 10px; } .numInputWrapper:hover { background: none; } .flatpickr-calendar input { box-shadow: none !important; } .flatpickr-calendar .flatpickr-time input { height: auto !important; border: none !important; box-shadow: none !important; font-size: 16px !important; margin: 0 !important; padding: 0 !important; line-height: inherit !important; background: none !important; color: ' . ($field->theme == "dark" ? "#fff" : "#484848") . ' !important; } .flatpickr-calendar.inline { margin-top:5px; } .flatpickr-calendar.open { z-index: 99999999; // EngageBox v4 uses z-index: 99999999; } .flatpickr-mobile { -webkit-appearance: none; // Remove iOS ugly button -moz-appearance: none; min-height:40px; } .flatpickr-calendar .numInputWrapper .cur-year { height: auto !important; } '); } ?> <input type="text" name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" <?php if ($required) { ?> required <?php } ?> <?php if (isset($field->placeholder) && !empty($field->placeholder)) { ?> placeholder="<?php echo htmlspecialchars($field->placeholder, ENT_COMPAT, 'UTF-8'); ?>" <?php } ?> <?php if (isset($field->value) && !empty($field->value)) { ?> value="<?php echo $field->value; ?>" <?php } ?> <?php if ($readOnly) { ?> readonly <?php } ?> autocomplete="off" class="<?php echo $field->class ?>" >PKBA#]D�~ :components/com_convertforms/layouts/fields/rangeslider.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $atts = [ 'min' => $field->min, 'max' => $field->max, 'step' => $field->step, ]; echo $class->toWidget($atts); ?>PKBA#]Z�3F��7components/com_convertforms/layouts/fields/hcaptcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); if (!$class->getSiteKey() || !$class->getSecretKey()) { echo JText::_('COM_CONVERTFORMS_FIELD_HCAPTCHA') . ': ' . JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE'); return; } // Load callback first for browser compatibility JHtml::_('script', 'com_convertforms/hcaptcha.js', ['version' => 'auto', 'relative' => true], ['async' => 'async', 'defer' => 'defer']); // Load hCAPTCHA API JS JHtml::_('script', 'https://hcaptcha.com/1/api.js?onload=ConvertFormsInitHCaptcha&render=explicit&hl=' . \JFactory::getLanguage()->getTag(), [], ['async' => 'async', 'defer' => 'defer']); ?> <div class="h-captcha" data-sitekey="<?php echo $class->getSiteKey(); ?>" data-theme="<?php echo $field->theme ?>" data-size="<?php echo $field->hcaptcha_type == 'invisible' ? $field->hcaptcha_type : $field->size ?>"> </div>PKBA#]R�n���7components/com_convertforms/layouts/fields/textarea.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <textarea name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> <?php if (isset($field->placeholder)) { ?> placeholder="<?php echo htmlspecialchars($field->placeholder, ENT_COMPAT, 'UTF-8'); ?>" <?php } ?> <?php if (isset($field->readonly) && $field->readonly == '1') { ?> readonly <?php } ?> <?php if (isset($field->minchars) && $field->minchars > 0) { ?> minlength="<?php echo $field->minchars; ?>" <?php } ?> <?php if (isset($field->maxchars) && $field->maxchars > 0) { ?> maxlength="<?php echo $field->maxchars; ?>" <?php } ?> class="<?php echo $field->class ?>" rows="<?php echo $field->textareaheight ?>"><?php if (isset($field->value)) { echo $field->value; } ?></textarea>PKBA#]ߎ�-22;components/com_convertforms/layouts/fields/editor_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <textarea class="<?php echo $field->class ?>" style="height:<?php echo $field->height ?>px !important;"><?php echo $field->value ?></textarea>PKBA#]��<;components/com_convertforms/layouts/fields/rating_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $css = @file_get_contents(JPATH_ROOT . '/media/plg_system_nrframework/css/widgets/rating.css'); echo ' <style> ' . $css . ' .nrf-rating-wrapper.' . $field->input_id . ' { --rating-selected-color: ' . $field->selected_color . '; --rating-unselected-color: ' . $field->unselected_color . '; --rating-size: ' . $field->size . 'px; } </style> '; $atts = [ 'icon' => basename($field->icon, '.svg'), 'size' => (int) $field->size, 'selected_color' => $field->selected_color, 'unselected_color' => $field->unselected_color, 'max_rating' => $field->max_rating ]; echo $class->toWidget($atts); ?>PKBA#]LK����8components/com_convertforms/layouts/fields/signature.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // Reset all instances of the Signature field within all visible Convert Forms ConvertForms\Helper::addScriptDeclarationOnce(' ConvertForms.Helper.onReady(function() { let forms = document.querySelectorAll(".convertforms"); if (forms) { forms.forEach(function(form) { // Reset on Convert Forms successful submission form.addEventListener("success", function(e) { let signatureFields = e.target.querySelectorAll(".nrf-widget.signature"); signatureFields.forEach(function(field) { field.signature.clear(); }); }); }); } }); '); $cssVars = [ 'line-color' => $field->form['params']->get('inputcolor') ]; $cssVars = ConvertForms\FieldsHelper::cssVarsToString($cssVars, '.'. $field->input_id); ConvertForms\Helper::addStyleDeclarationOnce($cssVars); echo $class->toWidget([ 'pen_color' => $field->form['params']->get('inputcolor'), 'name' => $field->input_name, 'css_class' => ' ' . implode(' ', [$field->size, $field->cssclass]) ]);PKBA#]�r�993components/com_convertforms/layouts/fields/text.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <input type="<?php echo $field->type; ?>" name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" <?php if (isset($field->required) && $field->required) { ?> required <?php } ?> <?php if (isset($field->placeholder) && $field->placeholder != '') { ?> placeholder="<?php echo htmlspecialchars($field->placeholder, ENT_COMPAT, 'UTF-8'); ?>" <?php } ?> <?php if (isset($field->value) && $field->value != '') { ?> value="<?php echo $field->value; ?>" <?php } ?> <?php if (isset($field->browserautocomplete) && $field->browserautocomplete == '1') { ?> autocomplete="off" <?php } ?> <?php if (isset($field->inputmask) && $field->inputmask != '') { ?> data-inputmask-mask="<?php echo $field->inputmask ?>" <?php } ?> <?php if (isset($field->readonly) && $field->readonly == '1') { ?> readonly <?php } ?> <?php if (isset($field->minchars) && $field->minchars > 0) { ?> minlength="<?php echo $field->minchars; ?>" <?php } ?> <?php if (isset($field->maxchars) && $field->maxchars > 0) { ?> maxlength="<?php echo $field->maxchars; ?>" <?php } ?> <?php if (isset($field->htmlattributes) && !empty($field->htmlattributes)) { ?> <?php foreach ($field->htmlattributes as $key => $value) { ?> <?php echo $key ?>="<?php echo htmlspecialchars($value, ENT_COMPAT, 'UTF-8') ?>" <?php } ?> <?php } ?> class="<?php echo $field->class ?>" >PKBA#]�L�r��3components/com_convertforms/layouts/fields/html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // Since 27 Jun, .cf-control-input makes uses display:flex; which obviously puts each element on new line. To prevent this from happening in the HTML field, we need to wrap it with an extra <div> ?> <div> <?php echo $field->text; ?> </div>PKBA#]����6components/com_convertforms/layouts/fields/captcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div class="captcha-container"> <div class="captcha-equation"> <?php echo $field->question['number1']; ?> <?php echo $field->question['comparator']; ?> <?php echo $field->question['number2']; ?> = </div> <?php // We do not use $this->input_name here in order to prevent the field to be included in the submitted data ?> <input type="text" name="<?php echo $field->name; ?>" id="<?php echo $field->input_id; ?>" required autocomplete="off" placeholder="<?php echo isset($field->placeholder) ? $field->placeholder : '' ?>" class="<?php echo $field->class ?>" /> </div>PKBA#]�.ܿ�6components/com_convertforms/layouts/fields/heading.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2018 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // Load custom fonts into the document \NRFramework\Fonts::loadFont($field->font_family); $styles = [ 'font-size: ' . (int) $field->font_size . 'px', 'font-family: ' . $field->font_family, 'line-height: ' . (int) $field->line_height . 'px', 'letter-spacing:' . (int) $field->letter_spacing . 'px', 'text-align:' . $field->content_alignment ]; // init vars $link_start = $link_end = ''; // link if ($field->use_link == '1') { $link_atts = ($field->open_new_tab == '1') ? 'target="_blank"' : ''; $link_start = '<a href="' . $field->link_url . '"' . $link_atts . '>'; $link_end = '</a>'; } ?> <<?php echo $field->heading_type; ?> style="<?php echo implode(';', $styles); ?>"><?php echo $link_start . $field->label . $link_end; ?></<?php echo $field->heading_type; ?>>PKBA#]�)C8FF@components/com_convertforms/layouts/fields/colorpicker_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $css = @file_get_contents(JPATH_ROOT . '/media/plg_system_nrframework/css/widgets/colorpicker.css'); $css .= ' .nrf-colorpicker-wrapper#' . $field->input_id . ' input[type="text"] { border-color: ' . $field->form['params']->get('inputbordercolor', '#ffffff') . '; background: ' . $field->form['params']->get('inputbg', '#ffffff') . '; } '; echo '<style>' . $css . '</style>'; echo $class->toWidget(); ?>PKBA#]�5���=components/com_convertforms/layouts/fields/hcaptcha_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // no hCaptcha image is present in invisible-mode if ($field->hcaptcha_type == 'invisible') { return; } $suffix = $field->size == 'compact' ? '_compact' : ''; $imageURL = JURI::root() . 'media/com_convertforms/img/hcaptcha_' . $field->theme . $suffix . '.png'; ?> <img src="<?php echo $imageURL ?>" style="align-self: flex-start;" />PKBA#]���X��Icomponents/com_convertforms/layouts/fields/recaptchav2invisible_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $imageURL = JURI::root() . 'media/com_convertforms/img/recaptcha_invisible.png'; ?> <?php if ($field->badge != 'inline') { ?> <div class="badge_<?php echo $field->badge ?>"></div> <style> .badge_bottomleft, .badge_bottomright { position: absolute; bottom: 30px; left: 0; width: 70px; height: 60px; overflow: hidden; background-image:url("<?php echo $imageURL ?>"); border:solid 1px #ccc; } .badge_bottomright { left:auto; right:0; } </style> <?php } else { ?> <img src="<?php echo $imageURL ?>" style="align-self: flex-start;" /> <?php } ?> PKBA#]�7�Ԇ�@components/com_convertforms/layouts/fields/rangeslider_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $css = @file_get_contents(JPATH_ROOT . '/media/plg_system_nrframework/css/widgets/slider.css'); echo ' <style> ' . $css . ' .nrf-slider-wrapper.' . $field->input_id . ' { --input-bg-color: ' . $field->form['params']->get('inputbg') . '; --input-border-color: ' . $field->form['params']->get('inputbordercolor') . '; } </style> '; $atts = [ 'min' => $field->min, 'max' => $field->max, 'step' => $field->step, ]; echo $class->toWidget($atts); ?>PKBA#]z�m���=components/com_convertforms/layouts/fields/termsofservice.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <div class="cf-checkbox-group"> <input type="checkbox" name="<?php echo $field->input_name ?>" id="<?php echo $field->input_id; ?>" required value="1" class="<?php echo $field->class; ?>" > <label class="cf-label" for="<?php echo $field->input_id; ?>"> <?php if (!empty($field->terms_url)) { ?> <a target="_blank" href="<?php echo $field->terms_url; ?>"> <?php } ?> <?php echo $field->terms_text ?> <?php if (!empty($field->terms_url)) { ?> </a> <?php } ?> </label> </div>PKBA#]r���! ! 9components/com_convertforms/layouts/fields/fileupload.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // Load dropzone library JHtml::script('https://cdn.jsdelivr.net/npm/dropzone@5.9.3/dist/dropzone.min.js'); JHtml::script('com_convertforms/field_fileupload.js', ['relative' => true, 'version' => 'auto']); // Add language strings used by dropzone.js JText::script('COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS'); JText::script('COM_CONVERTFORMS_UPLOAD_FILETOOBIG'); JText::script('COM_CONVERTFORMS_UPLOAD_INVALID_FILE'); JText::script('COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE'); JText::script('COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR'); JText::script('COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD'); JText::script('COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION'); JText::script('COM_CONVERTFORMS_UPLOAD_REMOVE_FILE'); JText::script('COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED'); ?> <div class="cfup-tmpl" style="display:none;"> <div class="cfup-file"> <div class="cfup-status"></div> <div class="cfup-thumb"> <img data-dz-thumbnail /> </div> <div class="cfup-details"> <div class="cfup-name" data-dz-name></div> <div class="cfup-error"><div data-dz-errormessage></div></div> <div class="cfup-progress"><span class="dz-upload" data-dz-uploadprogress></span></div> </div> <div class="cfup-right"> <span class="cfup-size" data-dz-size></span> <a href="#" class="cfup-remove" data-dz-remove>×</a> </div> </div> </div> <div id="<?php echo $field->input_id ?>" data-name="<?php echo $field->input_name ?>" data-key="<?php echo $field->key ?>" data-maxfilesize="<?php echo $field->max_file_size ?>" data-maxfiles="<?php echo $field->limit_files ?>" data-acceptedfiles="<?php echo $field->upload_types ?>" class="cfupload"> <div class="dz-message"> <span><?php echo JText::_('COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES') ?></span> <span class="cfupload-browse"><?php echo JText::_('COM_CONVERTFORMS_UPLOAD_BROWSE') ?></span> </div> </div>PKBA#]P<�� � 5components/com_convertforms/layouts/fields/submit.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); // Styles $buttonContainerClasses = array( 'cf-text-' . $field->align, ); $buttonStyles = array( 'border-radius:' . (int) $field->borderradius . 'px', 'padding:' . (int) $field->vpadding . 'px ' . (int) $field->hpadding . 'px', 'color:' . $field->textcolor, 'font-size:' . (int) $field->fontsize . 'px' ); if (in_array($field->btnstyle, array('gradient', 'flat'))) { $buttonStyles[] = 'background-color:' . $field->bg; $styles = ' #cf_' . $form['id'] . ' .cf-btn:after { border-radius: ' . (int) $form['params']->get('btnborderradius', '5') . 'px'.' } '; } if ($field->btnstyle == 'outline') { $buttonStyles[] = 'border: solid 1px ' . $field->bg; $buttonStyles[] = 'background: none'; $styles = ' #cf_' . $form['id'] . ' .cf-btn:hover { background-color: ' . $field->bg . ' !important; color: ' . $field->texthovercolor . ' !important; } '; } $buttonClasses = [ 'cf-btn-style-' . $field->btnstyle, $field->size, isset($field->inputcssclass) ? $field->inputcssclass : null ]; ?> <div class="<?php echo implode(' ', $buttonContainerClasses) ?>"> <button type="submit" class="cf-btn <?php echo implode(" ", $buttonClasses) ?>" style="<?php echo implode(";", $buttonStyles) ?>"> <span class="cf-btn-text"><?php echo JText::_($field->text) ?></span> <span class="cf-spinner-container"> <span class="cf-spinner"> <span class="bounce1"></span> <span class="bounce2"></span> <span class="bounce3"></span> </span> </span> </button> </div> <?php if (isset($styles) && !empty($styles)) { if (JFactory::getApplication()->isClient('site')) { ConvertForms\Helper::addStyleDeclarationOnce($styles); } else { // On backend add styles inline echo '<style>' . $styles . '</style>'; } } ?>PKBA#]N �T''5components/com_convertforms/layouts/fields/hidden.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); ?> <input type="hidden" name="<?php echo $field->input_name ?>" class="cf-input" value="<?php echo $field->value; ?>" <?php if (isset($field->htmlattributes) && !empty($field->htmlattributes)) { ?> <?php foreach ($field->htmlattributes as $key => $value) { ?> <?php echo $key ?>="<?php echo htmlspecialchars($value, ENT_COMPAT, 'UTF-8') ?>" <?php } ?> <?php } ?> > PKBA#]���ff>components/com_convertforms/layouts/fields/signature_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $css = @file_get_contents(JPATH_ROOT . '/media/plg_system_nrframework/css/widgets/signature.css'); echo ' <style> ' . $css . ' .' . $field->input_id . ' { --line-color: ' . $field->form['params']->get('inputcolor') . '; } </style> '; echo $class->toWidget([ 'pen_color' => $field->form['params']->get('inputcolor'), 'name' => $field->input_name, 'css_class' => ' ' . implode(' ', [$field->size, $field->cssclass]) ]); ?> PKBA#]�+z���>components/com_convertforms/layouts/fields/recaptcha_admin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $size = $field->size === 'normal' ? '' : '_' . $field->size; $imageURL = JURI::root() . 'media/com_convertforms/img/recaptcha_' . $field->theme . $size . '.png'; ?> <img src="<?php echo $imageURL ?>" style="align-self: flex-start;" />PKBA#]P�*5��:components/com_convertforms/layouts/fields/colorpicker.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); echo $class->toWidget(); ?>PKBA#](+{�nn&components/com_convertforms/access.xmlnu�[���<?xml version="1.0" encoding="utf-8" ?> <access component="com_convertforms"> <section name="component"> <action name="core.admin" title="JACTION_ADMIN" description="JACTION_ADMIN_COMPONENT_DESC" /> <action name="core.manage" title="JACTION_MANAGE" description="JACTION_MANAGE_COMPONENT_DESC" /> <action name="core.create" title="JACTION_CREATE" description="JACTION_CREATE_COMPONENT_DESC" /> <action name="core.delete" title="JACTION_DELETE" description="JACTION_DELETE_COMPONENT_DESC" /> <action name="core.edit" title="JACTION_EDIT" description="JACTION_EDIT_COMPONENT_DESC" /> <action name="core.edit.state" title="JACTION_EDITSTATE" description="JACTION_EDITSTATE_COMPONENT_DESC" /> <action name="core.edit.own" title="JACTION_EDITOWN" description="JACTION_EDITOWN_COMPONENT_DESC" /> <action name="convertforms.forms.manage" title="COM_CONVERTFORMS_ACCESS_FORMS" description="COM_CONVERTFORMS_ACCESS_FORMS_DESC" /> <action name="convertforms.submissions.manage" title="COM_CONVERTFORMS_ACCESS_SUBMISSIONS" description="COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC" /> <action name="convertforms.campaigns.manage" title="COM_CONVERTFORMS_ACCESS_CAMPAIGNS" description="COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC" /> <action name="convertforms.addons.manage" title="COM_CONVERTFORMS_ACCESS_ADDONS" description="COM_CONVERTFORMS_ACCESS_ADDONS_DESC" /> </section> </access>PKBA#] ��+components/com_convertforms/tables/form.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.database.table'); class ConvertFormsTableForm extends JTable { /** * Constructor * * @param object Database connector object */ function __construct(&$db) { $this->setColumnAlias('published', 'state'); $this->created = JFactory::getDate()->toSql(); parent::__construct('#__convertforms', 'id', $db); } }PKBA#]z����1components/com_convertforms/tables/conversion.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.database.table'); class ConvertFormsTableConversion extends JTable { /** * Constructor * * @param object Database connector object */ function __construct(&$db) { $this->setColumnAlias('published', 'state'); parent::__construct('#__convertforms_conversions', 'id', $db); } /** * Method to perform sanity checks on the JTable instance properties to ensure * they are safe to store in the database. Child classes should override this * method to make sure the data they are storing in the database is safe and * as expected before storage. * * @return boolean True if the instance is sane and able to be stored in the database. */ public function check() { $date = JFactory::getDate(); $user = JFactory::getUser(); if ($this->id) { if (is_array($this->params)) { $this->params = json_encode($this->params); } $this->modified = $date->toSql(); } else { $this->created = $date->toSql(); $this->user_id = $user->id; $this->visitor_id = ConvertForms\Helper::getVisitorID(); } return true; } }PKBA#]aΥ,/components/com_convertforms/tables/campaign.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.database.table'); class ConvertFormsTableCampaign extends JTable { /** * Constructor * * @param object Database connector object */ function __construct(&$db) { $this->setColumnAlias('published', 'state'); $this->created = JFactory::getDate()->toSql(); parent::__construct('#__convertforms_campaigns', 'id', $db); } }PKBA#]�����'components/com_convertforms/version.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted Access'); $NR_PRO = "1"; $RELEASE_DATE = "2022-11-10"; ?>PKBA#]���w5components/com_convertforms/controllers/campaigns.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla controlleradmin library jimport('joomla.application.component.controlleradmin'); /** * Campaigns list controller class. */ class ConvertFormsControllerCampaigns extends JControllerAdmin { protected $text_prefix = 'COM_CONVERTFORMS_CAMPAIGN'; /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return JModelLegacy The model. * * @since 1.6 */ public function getModel($name = 'Campaign', $prefix = 'ConvertFormsModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } /** * Copy items specified by array cid and set Redirection to the list of items * * @return void */ function duplicate() { $ids = JFactory::getApplication()->input->get('cid', array(), 'array'); // Get the model. $model = $this->getModel('Campaign'); foreach ($ids as $id) { $model->copy($id); } JFactory::getApplication(JText::sprintf('COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED', count($ids))); JFactory::getApplication()->redirect('index.php?option=com_convertforms&view=campaigns'); } /** * Export campaign submissions specified by campaign ids * * @return void */ function export() { $ids = JFactory::getApplication()->input->get('cid', null, 'INT'); // Get the Conversions model $model = $this->getModel('Conversions'); $model->export(null, $ids); } }PKBA#]h���NN4components/com_convertforms/controllers/campaign.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.application.component.controllerform'); /** * Campaign controller class */ class ConvertFormsControllerCampaign extends JControllerForm { protected $text_prefix = 'COM_CONVERTFORMS_CAMPAIGN'; } PKBA#]���dd0components/com_convertforms/controllers/form.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.application.component.controllerform'); /** * Form Controller Class */ class ConvertFormsControllerForm extends JControllerForm { protected $text_prefix = 'COM_CONVERTFORMS_FORM'; public function ajaxSave() { $data = $this->getFormDataFromRequest(); $model = $this->getModel('Form'); $validData = $model->validate('jform', $data); JPluginHelper::importPlugin('convertforms'); JPluginHelper::importPlugin('convertformstools'); if (!$model->save($validData)) { header('HTTP/1.1 500'); $response = [ 'error' => \JText::sprintf('JLIB_APPLICATION_ERROR_SAVE_FAILED', $model->getError()) ]; } else { $id = $model->getState('form.id'); $isNew = $data['id'] == 0; $response = [ 'id' => $id, 'isNew' => $isNew, 'redirect' => JRoute::_('index.php?option=com_convertforms&task=form.edit&id=' . $id) ]; } jexit(json_encode($response, JSON_UNESCAPED_UNICODE)); } public function preview() { $data = $this->getModel('Form')->validate('jform', $this->getFormDataFromRequest()); $data['params'] = json_decode($data['params'], true); $data['fields'] = $data['params']['fields']; $response = [ 'html' => ' <div> <div class="b"> ' . ConvertForms\Helper::renderForm($data) . ' </div> </div> ' ]; echo json_encode($response, JSON_UNESCAPED_UNICODE); jexit(); } private function getFormDataFromRequest() { $data = json_decode(file_get_contents('php://input')); $xx = new JRegistry(); foreach ($data as $value) { $key = str_replace(['jform[', ']', '['], ['', '', '.'], $value->name); // Why? if ($key == 'emails') { continue; } $xx->set($key, $value->value); } return $xx->toArray(); } } PKBA#]/��` ` 1components/com_convertforms/controllers/forms.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla controlleradmin library jimport('joomla.application.component.controlleradmin'); class ConvertformsControllerForms extends JControllerAdmin { protected $text_prefix = 'COM_CONVERTFORMS_FORM'; /** * Proxy for getModel. * @since 2.5 */ public function getModel($name = 'form', $prefix = 'ConvertFormsModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } /** * Import Method * Set layout to import */ public function import() { $app = JFactory::getApplication(); $file = $app->input->files->get("file"); if (!empty($file)) { if (isset($file['name'])) { // Get the model. $model = $this->getModel('Forms'); $model_item = $this->getModel('Form'); $model->import($model_item); } else { $app->enqueueMessage(JText::_('NR_PLEASE_CHOOSE_A_VALID_FILE'), 'error'); $app->redirect('index.php?option=com_convertforms&view=forms&layout=import'); } } else { $app->redirect('index.php?option=com_convertforms&view=forms&layout=import'); } } /** * Export Method * Export the selected items specified by id */ public function export() { $ids = JFactory::getApplication()->input->get('cid', array(), 'array'); // Get the model. $model = $this->getModel('Forms'); $model->export($ids); } /** * Copy Method * Copy all items specified by array cid * and set Redirection to the list of items */ public function duplicate() { $ids = JFactory::getApplication()->input->get('cid', array(), 'array'); // Get the model. $model = $this->getModel('Form'); foreach ($ids as $id) { $model->copy($id); } JFactory::getApplication(JText::sprintf('COM_CONVERTFORMS_FORM_N_ITEMS_COPIED', count($ids))); JFactory::getApplication()->redirect('index.php?option=com_convertforms&view=forms'); } }PKBA#]r�gTT6components/com_convertforms/controllers/conversion.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); jimport('joomla.application.component.controllerform'); /** * Conversion controller class */ class ConvertFormsControllerConversion extends JControllerForm { protected $text_prefix = 'COM_CONVERTFORMS_SUBMISSION'; } PKBA#]Ě�� � 2components/com_convertforms/controllers/export.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla controlleradmin library jimport('joomla.application.component.controlleradmin'); /** * Export controller class. */ class ConvertFormsControllerExport extends JControllerAdmin { /** * Used by the export form to submit the data * * @return void */ public function export() { JSession::checkToken('request') or die(JText::_('JINVALID_TOKEN')); $app = JFactory::getApplication(); $input = $app->input; $tz = new \DateTimeZone($app->getCfg('offset', 'GMT')); $date = \JFactory::getDate()->setTimezone($tz)->format('YmdHis', true); $filename = 'convertforms_submissions_' . $date . '.' . $input->get('export_type'); $options = $input->getArray(); $options['filter_search'] = $input->get('filter_search', null, 'RAW'); // Allow commas and special characters. $options['filename'] = $input->get('filename', $filename); $app->redirect('index.php?option=com_convertforms&view=export&layout=progress&' . http_build_query($options)); } /** * Force download of the exported file * * @return void */ public function download() { if (!$filename = JFactory::getApplication()->input->get('filename', '', 'RAW')) { throw new Exception('Invalid filename'); } $filename = NRFramework\File::getTempFolder() . $filename; if (!JFile::exists($filename)) { throw new Exception('Invalid filename'); } error_reporting(0); // Send the appropriate headers to force the download in the browser header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="' . basename($filename) . '"'); header('Expires: 0'); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Cache-Control: public", false); header('Pragma: public'); header('Content-Length: ' . @filesize($filename)); // Read exported file to buffer readfile($filename); // Don't leave any clues on the server. Delete the file. JFile::delete($filename); jexit(); } }PKBA#]8�H{��7components/com_convertforms/controllers/conversions.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla controlleradmin library jimport('joomla.application.component.controlleradmin'); /** * Conversions list controller class. */ class ConvertFormsControllerConversions extends JControllerAdmin { protected $text_prefix = 'COM_CONVERTFORMS_SUBMISSION'; /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return JModelLegacy The model. * * @since 1.6 */ public function getModel($name = 'Conversion', $prefix = 'ConvertFormsModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } /** * Export Method * Export the selected items specified by id */ public function export() { $ids = JFactory::getApplication()->input->get('cid', array(), 'array'); // Get the model. $model = $this->getModel('Conversions'); $model->export($ids); } }PKBA#]��4l��2components/com_convertforms/controllers/addons.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla controlleradmin library jimport('joomla.application.component.controlleradmin'); /** * Addons list controller class. */ class ConvertFormsControllerAddons extends JControllerAdmin { protected $text_prefix = 'COM_CONVERTFORMS_ADDONS'; /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return JModelLegacy The model. * * @since 1.6 */ public function getModel($name = 'Addon', $prefix = 'ConvertFormsModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } }PKBA#]O�7�u/u/Ecomponents/com_convertforms/language/ru-RU/ru-RU.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Конструктор Форм" COM_CONVERTFORMS="Конструктор Форм" COM_CONVERTFORMS_DESIGN="Дизайн" COM_CONVERTFORMS_BEHAVIOR="Поведение" COM_CONVERTFORMS_LIST="Список" COM_CONVERTFORMS_NO_RESULTS_FOUND="Нет %s ресурсов" COM_CONVERTFORMS_CREATE_NEW="Создать новый?" COM_CONVERTFORMS_EMAIL_ASCENDING="Emai по возрастанию" COM_CONVERTFORMS_EMAIL_DESCENDING="Email по убыванию" COM_CONVERTFORMS_ACTIONS="Действия" COM_CONVERTFORMS_VIEW_LEADS="Просмотр заявок" NRI_PLG_CONVERTFORMS="Конвертировать формы плагин" COM_CONVERTFORMS_CONFIGURATION="Конвертировать формы конфигурации" COM_CONVERTFORMS_LOADCSS="Загрузка таблицы стилей" COM_CONVERTFORMS_LOADCSS_DESC="Выберите для загрузки расширений таблицы стилей. Вы можете отключить эту функцию, если вы поместите все свои собственные стили в некоторых других стилей, как поле Пользовательский код или таблицы стилей шаблонов" COM_CONVERTFORMS_DEBUG="Отладка" COM_CONVERTFORMS_DEBUG_DESC="Включите эту опцию, чтобы помочь вам отлаживать ошибки и неожиданное поведение. Сообщения об ошибках помещаются в консоль браузера (нажмите F12) и в папку «Журналы»." COM_CONVERTFORMS_FORMS="Формы" COM_CONVERTFORMS_FORM="Форма" COM_CONVERTFORMS_NEW_FORM="Новая форма" COM_CONVERTFORMS_EDIT_FORM="Редактировать форму" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s форм скопировано" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s форм опубликовано" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s форм не опубликовано" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s форм повреждено" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s форм удалено" COM_CONVERTFORMS_FORM_ASCENDING="Форма по возрастанию" COM_CONVERTFORMS_FORM_DESCENDING="Форма по убыванию" COM_CONVERTFORMS_FORM_SELECT="- Выберите форму -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Публикация создания модуля" COM_CONVERTFORMS_FORM_LEADS="Эта форма приняла %s заявок" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Публикация с помощью шорткод: %s" COM_CONVERTFORMS_CAMPAIGN="Кампания" COM_CONVERTFORMS_CAMPAIGNS="Кампании" COM_CONVERTFORMS_NEW_CAMPAIGN="Новая кампания" COM_CONVERTFORMS_EDIT_CAMPAIGN="Редактировать кампанию" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Введите название кампании. Его не будет видеть никто другой кроме Вас самого." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Кампании скопированы" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Кампании неопубликованы" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Кампании опубликованы" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Кампании повреждены" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Кампании удалены" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s сообщений не опубликовано" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s сообщений опубликовано" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s отправлено мусора" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%sполученных сообщений удалено " ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Кампании по возрастанию" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Кампании по убыванию" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Выбрать Кампанию -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Пожалуйста, сохраните кампанию, чтобы настроить вашу интеграцию." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Кампании изменены" COM_CONVERTFORMS_CAMPAIGN_SYNC="Синхронизация заявок" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Выберите, следует ли синхронизировать передачи со сторонним программным обеспечением или сохранять только в базе данных. <Br> Примечание. Если необходимо использовать стороннее программное обеспечение, такое как MailChimp, Aweber, GetResponse, Active Campaign и т. Д., То установите соответствующее. Расширение в области аддонов. " COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Кампании удалены" COM_CONVERTFORMS_CHOOSE_SERVICE="Выберите услуги" COM_CONVERTFORMS_PENDING_LEADS="Заявки в ожидании" COM_CONVERTFORMS_SUBMISSIONS="Материалы" COM_CONVERTFORMS_SUBMISSION="Передача" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Последнии передачи" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Подтверждено" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Не подтверждено" COM_CONVERTFORMS_EDIT_CONVERSION="Изменить заявку" COM_CONVERTFORMS_SUBMISSION_INVALID="Отправка не найдена." COM_CONVERTFORMS_NOT_AUTHORIZED="Вы не авторизованы для доступа к этой странице." COM_CONVERTFORMS_LEADS_ASC="Заявки по возрастанию" COM_CONVERTFORMS_LEADS_DESC="Заявки по убыванию" COM_CONVERTFORMS_LEADS_EXPORT="Экспорт заявок" COM_CONVERTFORMS_ADDONS="Аддоны" COM_CONVERTFORMS_INSTALL_ADDONS="Просмотреть установленные расширения" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Для того, чтобы иметь возможность установить конвертировать формы плагины, вам нужно будет ввести свой ключ в Download настройках Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Дополнения расширяют функциональные возможности конвертировать формы. С помощью этих аддонов, вы можете связаться с программным обеспечения сторонних производителей, интегрировать новые функции и конвертировать формы еще более мощным." COM_CONVERTFORMS_LAST_YEAR="В прошлом году" COM_CONVERTFORMS_THIS_YEAR="В этом году" COM_CONVERTFORMS_LAST_MONTH="В прошлом месяце" COM_CONVERTFORMS_THIS_MONTH="В этом месяце" COM_CONVERTFORMS_LAST_WEEK="Предыдущая неделя" COM_CONVERTFORMS_THIS_WEEK="Эта неделя" COM_CONVERTFORMS_LAST_7_DAYS="Прошлые 7 дней" COM_CONVERTFORMS_YESTERDAY="Вчера" COM_CONVERTFORMS_TODAY="Сегодня" COM_CONVERTFORMS_AVG_DAY="Среднее день (в этом месяце)" COM_CONVERTFORMS_PROJECTION="Проекция за этот месяц" COM_CONVERTFORMS_TOTAL="Всего" COM_CONVERTFORMS_CHOOSE_FILE="Выберите .cnvf file" COM_CONVERTFORMS_FORMS_NAME_DESC="Уникальный и описательное имя поможет вам в будущем, так как он будет отображаться в приборной панели, аналитика и т.д." COM_CONVERTFORMS_BACKGROUND_IMAGE="Фоновое изображение Источник" COM_CONVERTFORMS_IMAGE_DESC="Выберите источник изображения фона" COM_CONVERTFORMS_CUSTOM_URL="Пользовательский URL" COM_CONVERTFORMS_BACKGROUND_URL="Фон URL изображения" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Введите пользовательский URL для вашего изображения" COM_CONVERTFORMS_BACKGROUND_FILE="Изображение на заднем плане" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Выберите изображение для загрузки." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Вы можете предоставить изображение, которое будет отображаться за содержимым формы. Выберите <b> Загрузить </b>, чтобы загрузить новое изображение, или <b> Пользовательский URL </b>, чтобы ввести пользовательский URL-адрес изображения. Чтобы этот параметр работал, выбранный вами цвет фона должен быть прозрачным.." COM_CONVERTFORMS_FORM_BUILDER="Строитель Форм" COM_CONVERTFORMS_FIELD_TYPE="Поле Тип" COM_CONVERTFORMS_FIELD_TYPE_DESC="Атрибут Тип поля определяет тип входного элемента для отображения." COM_CONVERTFORMS_FIELD_LABEL="поле Тег" COM_CONVERTFORMS_FIELD_LABEL_DESC="Поле Метка определяет Тег для элемента ввода." COM_CONVERTFORMS_FIELD_NAME="Название поля" COM_CONVERTFORMS_FIELD_NAME_DESC="Определяет имя элемента ввода, который используется для ссылки на данные формы после отправки. Используйте этот параметр также для сопоставления полей формы с приложениями интеграции." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Текст, который будет отображаться в поле до того, как пользователь ввел какие-либо данные" COM_CONVERTFORMS_REQUIRED_NAME="Обязательное поле" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Если включено, это гарантирует, что это поле будет заполнено, прежде чем разрешить отправку формы." COM_CONVERTFORMS_FIELDS="Поля" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Вы используете <b> Free </b> версии, который поддерживает только 1 поле электронной почты. <b>Обновление до версии Pro </b>, чтобы иметь возможность управлять неограниченным поля." COM_CONVERTFORMS_GENERAL="Генеральная" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Поле Выравнивание текста" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Форма Выравнивание текста" COM_CONVERTFORMS_INPUT_COLOR="Поле Цвет текста" COM_CONVERTFORMS_INPUT_BGCOLOR="Поле Цвет фона" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Поле Цвет рамки" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Добавляет внутреннюю тень в поле ввода" COM_CONVERTFORMS_INPUT_FONT_SIZE="Поле Размер шрифта" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Поле Размер шрифта" COM_CONVERTFORMS_VPADDING_SIZE="Вертикальный Отступ" COM_CONVERTFORMS_HPADDING_SIZE="Горизонтальный Отступ" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Максимальная ширина" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Обеспечить максимальную ширину бумаги по вашему выбору или сделать чтобы бокс покрывал всю область экрана. Обратите внимание, что это максимальная ширина, которая означает, что форма всегда будет соответствовать на меньшие площади." COM_CONVERTFORMS_FORM_WIDTH="Пользовательские Максимальная ширина" COM_CONVERTFORMS_FORM_WIDTH_DESC="Обеспечить максимальную ширину на заказ по вашему выбору." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Удалить По умолчанию Отступ" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Удалить отступ по умолчанию между области содержимого и коробчатой формы краев." COM_CONVERTFORMS_FORM_BORDER_STYLE="Стиль рамки" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Нанесите рамку вокруг формы" COM_CONVERTFORMS_FORM_BORDER_COLOR="Цвет рамки" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Форма цвета рамки" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Ширина рамки" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Ширина границы в виде" COM_CONVERTFORMS_BOX_RADIUS="Радиус блока" COM_CONVERTFORMS_BORDER_RADIUS="Радиус рамки" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Введите пограничный размер радиуса" COM_CONVERTFORMS_COLLECT_LEADS_USING="Помещать заявки в кампанию" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Представления этой формы будут связаны с выбранной кампанией. Вы можете управлять кампаниями в области кампании." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Действие успешно" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Выберите действие, которое вы хотели бы иметь место после успешного представления" COM_CONVERTFORMS_DISPLAY_MSG="Сообщение на дисплее" COM_CONVERTFORMS_REDIRECT_USER="Перенаправление пользователя" COM_CONVERTFORMS_SUCCESS_TEXT="Сообщение После успеха" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Введите сообщение, которое вы хотели бы, чтобы отобразить пользователю после того, как успешно добавлен в список." COM_CONVERTFORMS_SUCCESS_URL="Перенаправление URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Введите URL-адрес, где вы хотели бы, чтобы перенаправить пользователя после того, как успешно добавлен в список." COM_CONVERTFORMS_PASS_DATA="Передавать данные заявки по ссылке перенаправления" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Стиль кнопки Отправить" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Стиль вашей кнопки с хорошими эффектами." COM_CONVERTFORMS_BTN_SHADOW_DESC="Добавляет внешнюю тень к кнопке" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Укажите цвет текста" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Укажите цвет текста" COM_CONVERTFORMS_CUSTOM_CSS="Пользовательский CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Стиль формы с вашим собственным CSS. <br> <br> Чтобы помочь вам со стилем формы, код, добавленный в эту область, также выполняется в бэкэнде." COM_CONVERTFORMS_CLASS_SUFFIX="Класс Суффикс" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Класс Суффикс" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Высота " COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Высота Textarea определяет видимый высоту текстового поля, в строках." COM_CONVERTFORMS_CHOICES="Опции" COM_CONVERTFORMS_CHOICES_DESC="Добавьте к этому полю формы дополнительные опции" COM_CONVERTFORMS_FIELD_VALUE="Значение по умолчанию" COM_CONVERTFORMS_FIELD_VALUE_DESC="Введите текст для значения поля по умолчанию." COM_CONVERTFORMS_HIDE_LABELS="Скрыть метку" COM_CONVERTFORMS_HIDE_LABELS_DESC="Выберите этот параметр, чтобы скрыть метку для поля формы" COM_CONVERTFORMS_IMAGE_SOURCE="Источник изображения" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Вы можете предоставить изображение, которое будет отображаться среди содержимого формы. Выберите <b> Загрузить</b>, чтобы загрузить новое изображение или <b> Пользовательский URL</b> ввести URL пользовательского изображения" COM_CONVERTFORMS_IMAGE_URL="URL изображения" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Скрыть изображения на небольших экранах" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="На небольших экранах мобильных устройств, таких как, меньшие модальности выглядеть более красиво. Для того, чтобы уменьшить размер модального, вы можете скрыть изображение с этой установкой." COM_CONVERTFORMS_HORIZONTAL_POSITION="Горизонтальное положение" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Горизонтальное положение" COM_CONVERTFORMS_VERTICAL_POSITION="Вертикальная позиция" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Вертикальная позиция" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Ширина изображения" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Набор ширина изображения" COM_CONVERTFORMS_BUTTON_ALIGN="Кнопка Выравнивание" COM_CONVERTFORMS_FORM_POSITION="Форма установки" COM_CONVERTFORMS_FORM_POSITION_DESC="Установить формы положение относительно текста контейнера" COM_CONVERTFORMS_FORM_SIZE="Форма Размер контейнера" COM_CONVERTFORMS_COLUMNS_DESC="Укажите, сколько колонок будет использоваться. 6 колонок занимает 50% от ширины." COM_CONVERTFORMS_MESSAGE="Текстовое сообщение" COM_CONVERTFORMS_MESSAGE_DESC="Введите текст сообщения в виде" COM_CONVERTFORMS_IMAGE_POSITION="Позиция изображения" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Установить положение изображения по отношению к тексту" COM_CONVERTFORMS_FOOTER="Форма нижнего колонтитула" COM_CONVERTFORMS_BUTTON_TEXT="Текст кнопки" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Кнопка ввода текстовой метки" COM_CONVERTFORMS_BTN_FONT_SIZE="Кнопка Размер текста" COM_CONVERTFORMS_IMAGE_SIZE="Изображение Размер контейнера" COM_CONVERTFORMS_BODY_FONT="Семейство шрифтов" COM_CONVERTFORMS_BODY_FONT_DESC="Выберите какой набор шрифтов использовать в этой форме. Имейте в виду, что загрузка таких нестандартных наборов шрифтов, как Google Fonts, может привести к снижению скорости загрузки Вашего веб сайта. Для использования набора шрифтов с Вашего сайта, выберите опцию 'По умолчанию'." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Дата" COM_CONVERTFORMS_CREATED="Дата создания" COM_CONVERTFORMS_SUBMISSION="Передача" COM_CONVERTFORMS_PREVIEW_SUCCESS="Сообщение об успешном выполнении предварительного просмотра" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Эта версия будет отображаться на экранах размером 990px и выше" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Эта версия будет отображаться на экранах размером 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Эта версия будет отображаться на экранах размером 768px и ниже" COM_CONVERTFORMS_DEVICE_DESKTOP="Рабочий стол" COM_CONVERTFORMS_DEVICE_TABLET="Планшет" COM_CONVERTFORMS_DEVICE_MOBILE="Телефон" COM_CONVERTFORMS_RESET_FORM="Сброс форма" COM_CONVERTFORMS_RESET_FORM_DESC="Очистить форму после успешного представления" COM_CONVERTFORMS_HIDE_FORM="Скрыть форму" COM_CONVERTFORMS_HIDE_FORM_DESC="Скрыть форму после успешного представления" COM_CONVERTFORMS_TEMPLATES="Шаблоны" COM_CONVERTFORMS_TEMPLATES_SELECT="Выберите шаблон, чтобы начать" COM_CONVERTFORMS_TEMPLATES_BLANK="Начинать с нуля" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Начать с нуля новая форма" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="В очереди" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Боковая панель" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Бар" COM_CONVERTFORMS_LABELS_COLOR="Тег Цвет текста" COM_CONVERTFORMS_LABELS_FONT_SIZE="Тег Размер шрифта" COM_CONVERTFORMS_IMAGE_ABOVE="Над текстом" COM_CONVERTFORMS_IMAGE_BELOW="Ниже текста" COM_CONVERTFORMS_IMAGE_RIGHT="Справа от текста" COM_CONVERTFORMS_IMAGE_LEFT="Слева от текста" COM_CONVERTFORMS_FLAT="Отдельно" COM_CONVERTFORMS_OUTLINE="Контур" COM_CONVERTFORMS_GRADIENT="Градиент" COM_CONVERTFORMS_EMAILS_DESC="Отсылать уведомления по почте когда пользователи отправляют форму." COM_CONVERTFORMS_EMAILS="Уведомления по эл.почте" COM_CONVERTFORMS_EMAILS_REPLY_TO="Email для ответа" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Имя для ответа" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Обратный адрес" COM_CONVERTFORMS_EMAILS_FROM="Имя отправителя" COM_CONVERTFORMS_EMAILS_RECIPIENT="Адрес эл.почты 'Кому'" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Введите адреса электронной почты, на которые следует отправлять уведомления о передаче. \\ NДля нескольких уведомлений разделяйте адреса электронной почты запятыми." COM_CONVERTFORMS_EMAILS_SUBJECT="Тема эл.письма" COM_CONVERTFORMS_EMAILS_BODY="Сообщение" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Нужно больше уведомлений? <br><a href='#' data-pro-only='Unlimited Notifications'>Обновитесь до версии PRO</a> чтобы разблокировать их." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Вложения" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Положение файла, который нужно прикрепить, относительно корневого каталога вашего веб-пространства. Используйте запятую для определения нескольких файлов." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Вам не хватает какого-либо расширения?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Если Вам нужна интеграция с каким-либо любимым расширением, то, пожалуйста, дайте нам знать об знать. Мы будет рады включить его в набор расширений, интегрируемых с Convert Forms." COM_CONVERTFORMS_API_ENABLE="Включить JSON API" COM_CONVERTFORMS_API_DESC="JSON API позволяет конвертировать формы с использованием HTTP-запросов." COM_CONVERTFORMS_API_KEY="Секретный ключ" COM_CONVERTFORMS_API_KEY_DESC="Этот секретный ключ используется для аутентификации критических задач, таких как задания CRON и API JSON. Если вы оставите это поле пустым, все задачи, требующие аутентификации пользователя, будут деактивированы.\" COM_CONVERTFORMS_IMAGE_ALT=\"Альтернативный текст изображения" COM_CONVERTFORMS_IMAGE_ALT="Тег Alt для изображения" COM_CONVERTFORMS_IMAGE_ALT_DESC="Альтернативный текст для изображения" COM_CONVERTFORMS_CUSTOM_CODE="Произвольный код" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Поместите пользовательский код в конец формы. Он принимает HTML, CSS и Javascript. <br><br> Для Javascript убедитесь, что вы заключили код в тег <script>. <br><br> Код, добавленный в эту область, не выполняется в бэкэнде." COM_CONVERTFORMS_ISSUES="Проблемы" COM_CONVERTFORMS_ISSUES_DETECTED="Обнаружено %s проблемных заявок" COM_CONVERTFORMS_CREATED="Дата создания" COM_CONVERTFORMS_MODIFIED="Дата изменена" COM_CONVERTFORMS_IP="IP адрес отправителя формы" COM_CONVERTFORMS_USER_ID="ID номер отправителя формы" COM_CONVERTFORMS_USER_USERNAME="Имя пользователя отправителя формы" COM_CONVERTFORMS_VISITOR_ID="ID номер посетителя" COM_CONVERTFORMS_FORM_NAME="Название формы" COM_CONVERTFORMS_CAMPAIGN_NAME="Название кампании" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Колонки" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Для включения конкретных полей формы, выберите на боковой планке в фильтре какую-либо форму." COM_CONVERTFORMS_UNTITLED_BOX="Форма без заголовка" COM_CONVERTFORMS_SELECT_LAYOUT="Выберите макет" COM_CONVERTFORMS_SHOW_LAYOUTS="Показать макеты" COM_CONVERTFORMS_HIDE_LAYOUTS="Скрыть макеты" COM_CONVERTFORMS_FIELDS_COPY="Дублировать поле" COM_CONVERTFORMS_FIELDS_DELETE="Удалить поле" COM_CONVERTFORMS_FIELDGROUP_COMMON="Основные поля" COM_CONVERTFORMS_FIELDGROUP_FANCY="Улучшенные поля" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Особые поля" COM_CONVERTFORMS_FIELD_HTML="HTML код" COM_CONVERTFORMS_FIELD_HTML_DESC="Добавьте свой собственный текст или HTML-код. Никаких ограничений!" COM_CONVERTFORMS_FIELD_TEXT="Текстовое поле" COM_CONVERTFORMS_FIELD_TEXT_DESC="Однострочное текстовое поле" COM_CONVERTFORMS_FIELD_TEXTAREA="Область текста" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Как текстовое поле, но в котором можно ввести несколько строк" COM_CONVERTFORMS_FIELD_NUMBER="Число" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Текстовое поле, которое принимает только цифры" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Шаг" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Значение, на которое меняется число при нажатии клавиши со стрелкой" COM_CONVERTFORMS_FIELD_NUMBER_MIN="Минимум" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Минимально допустимое числовое значение поля" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Максимум" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Максимально допустимое числовое значение поля" COM_CONVERTFORMS_FIELD_RECAPTCHA="рекапчи" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Запретить передачу спама из форм Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Пожалуйста, установите свою страницу и секретные ключи на странице конфигурации." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Теперь настройте reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Цветовая схема виджета" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Размер виджета" COM_CONVERTFORMS_FIELD_DROPDOWN="Выпадающий список" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Список, который позволяет выбрать один элемент из списка выбора" COM_CONVERTFORMS_FIELD_RADIO="Радиокнопки" COM_CONVERTFORMS_FIELD_RADIO_DESC="Список, который позволяет выбрать один элемент из выбора опций" COM_CONVERTFORMS_FIELD_URL="Сайт / ссылка" COM_CONVERTFORMS_FIELD_URL_DESC="Принимает правильно отформатированный URL, который начинается с http: // или https: //" COM_CONVERTFORMS_FIELD_URL_INVALID="Некорректная ссылка" COM_CONVERTFORMS_FIELD_COUNTRY="Страна" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Список всех известных стран" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Распознать страну посетителя сайта" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Если этот параметр установлен, страна попытается распознать посетителей сайта и заполнить их автоматически. Требуется расширение TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Исключить страны" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Валюта" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Список всех известных валют" COM_CONVERTFORMS_FIELD_SUBMIT="Кнопка отправки" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Кнопка, которая отправляет форму" COM_CONVERTFORMS_FIELD_HIDDEN="Скрытое поле" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Поле, которое не видно пользователю формы" COM_CONVERTFORMS_FIELD_EMAIL="Email адрес" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Текстовое поле, которое принимает только действительный адрес электронной почты" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Условия обслуживания" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Пользователь должен согласиться с условиями использования перед отправкой формы" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Текст условий использования" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Этот текст отображается сразу после флажка" COM_CONVERTFORMS_FIELD_CHECKBOX="Флажки" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Список, который позволяет множественные выборы в форме флажков" COM_CONVERTFORMS_FIELD_REQUIRED="Это обязательно" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Неверный адрес электронной почты" COM_CONVERTFORMS_FIELD_SIZE="размер поля" COM_CONVERTFORMS_FIELD_SIZE_DESC="Выберите размер поля по умолчанию" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Позволяет пользователю ввести номер телефона" COM_CONVERTFORMS_FIELD_DATETIME="Дата / время" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Выбор даты / времени, который позволяет выбрать одну дату, несколько дат или диапазон дат" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Формат даты" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Формат вывода даты. Примеры: <br> d / m / Y H: i <br> Y-m-d <br> m / d / YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Показывать выбор времени" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Активирует выбор времени. Убедитесь, что вы используете временные переменные (H: i) в формате даты, если активируете эту опцию." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Самая ранняя дата" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Самая ранняя / наименьшая дата, разрешенная для выбора. Поддерживаются относительные даты, такие как: завтра, +5 дней, +2 недели" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Последняя дата" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Самая поздняя / наибольшая дата, разрешенная для выбора. Поддерживаются относительные даты, такие как: завтра, +5 день, +2 неделя" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Режим выбора даты" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Позволяет пользователю выбрать одну дату, несколько дат или диапазон дат." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24ч формат" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Отображает выбор времени в 24-часовом режиме без AM / PM" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Размер шага в минутах" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Настроить размер шага в минутах при выборе времени" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Показать внутри" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Показывать календари в форме вместо всплывающего окна." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Тема" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Выбрать тему календаря" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Неверный формат даты - %s " COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Отключить выбор даты для каждого устройства на мобильных устройствах" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Если этот параметр активирован, вместо даты, выбранной в мобильной операционной системе, будет отображаться средство выбора даты Преобразовать формы" COM_CONVERTFORMS_CSS_CLASSES="CSS класс" COM_CONVERTFORMS_CSS_CLASSES_DESC="Добавить CSS-классы во входной контейнер. Это может использоваться в основном для макета." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Введите класс CSS" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Добавить классы CSS к элементу ввода. Используйте эту опцию, чтобы отформатировать ввод самостоятельно." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Запретить автозаполнение браузером" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Обычно браузеры запоминают, какие данные пользователь передает с полями ввода. Чтобы отключить автозаполнение в формах, активируйте эту опцию." COM_CONVERTFORMS_FIELD_DESCRIPTION="Текст справки" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Текст справки для отображения рядом с этим полем." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Проверять по DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Проверка адреса электронной почты с помощью проверки DNS." COM_CONVERTFORMS_FIELD_CONFIRM="Подтвердить" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Одно поле, чтобы убедиться, что два поля совпадают" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Подтвердить ключ поля" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Введите ключ поля, который будет использоваться для проверки соответствия значений." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Поле не настроено правильно" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Значения полей не совпадают" COM_CONVERTFORMS_HIDE_TEXT="Скрыть текст" COM_CONVERTFORMS_HIDE_TEXT_DESC="Скрыть текст после успешной заявки" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Нет поля адреса электронной почты в форме" COM_CONVERTFORMS_INVALID_LEAD="Не удалось проверить объект заявки" COM_CONVERTFORMS_EXCEL_SECURITY="Расширенная безопасность" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Если эта опция активирована, перед значениями в файле экспорта CSV, начинающимися с =, +, - или @, будет стоять вкладка, чтобы избежать внедрения CSV при открытии экспортированного файла в Excel. <br> <br> Отключайте эту опцию, только если вы на 100% уверены, что данные заслуживают доверия или если у вас возникли проблемы с открытием файла CSV в другом приложении. " COM_CONVERTFORMS_CHOICE_LAYOUT="Выбрать макет" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Выберите макет для отображения выбора полей" COM_CONVERTFORMS_CHOICE_1_COLUMN="Одна колонка" COM_CONVERTFORMS_CHOICE_2_COLUMN="Две колонки" COM_CONVERTFORMS_CHOICE_3_COLUMN="Три колонки" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Рядом" COM_CONVERTFORMS_REQUIRED_INDICATION="Индикатор обязательного поля" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Пометьте обязательные поля звездочкой в соответствующем описании." COM_CONVERTFORMS_INPUT_MASK="Маска ввода" COM_CONVERTFORMS_INPUT_MASK_DESC="Помощь пользователю с предопределенными форматами при вводе данных. <br> <br> <b> Синтаксис: </b> <br> 9: число (0-9) <br> a: буква (az или AZ) <br> A: заглавные буквы (AZ) <br> *: буквенно-цифровые символы (0-9, az или AZ) <br> &: буквенно-цифровые символы (0-9 или AZ) <br> <br> <b> Примеры </b>: <br> телефон: +1 (999) -9999 <br> дата: 99/99/9999 <br> почтовый индекс: 99999? -9999 " COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Данные, переданные пользователем" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Переданные данные не найдены" COM_CONVERTFORMS_LEAD_INFO="Информация о заявке" COM_CONVERTFORMS_NOTES="Примечание" COM_CONVERTFORMS_DATE_RANGE="Диапазон дат" COM_CONVERTFORMS_START_DATE="Дата начала" COM_CONVERTFORMS_END_DATE="Дата окончания" COM_CONVERTFORMS_PERIOD="Диапазон дат" COM_CONVERTFORMS_PERIOD_SELECT="- Выберите диапазон дат -" COM_CONVERTFORMS_HONEYPOT="Включить Honeypot анти-спам" COM_CONVERTFORMS_HONEYPOT_DESC="Активируйте эту опцию, чтобы добавить поле honeypot в форму, которая видна только ботам. Если поле honeypot заполнено, форма автоматически распознает, что пользователь был спамботом. <br> <br> Однако на многих веб-сайтах, если вы все еще получаете спам или хотите принять дополнительные меры предосторожности, reCAPTCHA является отличным дополнительным вариантом \"" COM_CONVERTFORMS_FIELD_FILEUPLOAD="Загрузка файла" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Разрешить пользователю загружать файлы" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Временная папка вашего сайта настроена на <b>%s</b> но это не доступно для записи. Укажите временную папку с возможностью записи." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Место загрузки" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Пользовательское место загрузки" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Введите путь относительно корня вашего веб-пространства, где будут храниться загруженные файлы. Чтобы переименовать загруженные файлы, используйте следующие смарт-теги.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>Он также может принимать глобальные смарт-теги, такие как {year}, {month}, {user.id} или {randomid}, чтобы создать еще более динамичное место назначения для загрузки." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Лимит файлов" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Сколько файлов можно загрузить? Введите 0, если нет ограничений." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Лимит размера файлов" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Настроить максимальный размер каждого загружаемого файла в МБ. Введите 0 для неограниченного размера файла. <br> <br> Ваш сервер допускает максимальный размер файла: <b> %s </b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Разрешенные типы файлов" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Введите разделенный запятыми список разрешенных типов файлов, таких как: </b> .jpg, .gif, .png, .pdf <br> <br> Вы можете ввести типы мультимедиа, такие как: application / pdf, images / *, video / * < br> <br> Или вы можете даже смешать оба: application / *, .png, .jpg <br> <br> Примечание: Это не защищено от ошибок и может быть обмануто; пользователи для загрузки файлов." COM_CONVERTFORMS_FIELD_FILTER="Фильтр" COM_CONVERTFORMS_FIELD_FILTER_DESC="Фильтровать пользовательский ввод с помощью следующих фильтров. <br> <b> Текст </b>: преобразовывает ввод в простую текстовую строку и удаляет все теги / атрибуты. <br> <b> Безопасный HTML </b> : Принимать только защищенные элементы HTML, такие как. <br> <b> Буквенно-цифровые </b>: разрешать только az и 0-9. <B> Word </b>: разрешать только символы az и подчеркивания <br> <b > Integer </b>: использовать только первое числовое значение. <br> <b> Float </b>: разрешать только символы az и подчеркивания. \"COM_CONVERTFORMS_UPLOAD_ERROR =\" Недопустимый ключ формы и поля " COM_CONVERTFORMS_UPLOAD_ERROR="Неверный ключ формы или поля" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Неверное поле загрузки" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Неверный или неподдерживаемый файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Вы можете загрузить до %d файлов" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Перетащите файлы сюда" COM_CONVERTFORMS_UPLOAD_BROWSE="Обзор" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Временный файл %s отсутствует. Пожалуйста, перезагрузите." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Папка для загрузки файлов %s не существует или недоступна для записи." COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Файл слишком большой ({{filesize}}MB). Максимальный размер: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Вы не можете загружать файлы этого типа." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Ваш браузер не поддерживает drag'n'drop для загрузки файлов." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Сервер ответил с кодом {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Отменить загрузку" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Вы уверены, что хотите отменить загрузку?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Убрать файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Вы не можете загружать больше файлов." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Автоматически удалять файлы" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Если вы получаете много загрузок, место на сервере, занимаемое загруженными файлами, может быть быстро увеличено. Это требует регулярной очистки для освобождения места для хранения. <br> <br> С помощью этой опции вы можете автоматически удалять сохраненные файлы. Upload- Папки через определенный промежуток времени. <br> <br> Например, введите 3, чтобы автоматически удалять файлы старше 3 дней, или 0, если хотите сохранить файлы навсегда. <br> <br> Примечание: \"Модуль преобразования форм загруженных файлов должен быть активирован, и на вашем сервере должен быть установлен соответствующий URL-адрес задания cron\"" COM_CONVERTFORMS_READONLY="Только для чтения" COM_CONVERTFORMS_READONLY_DESC="Запретить запись в этом поле" COM_CONVERTFORMS_PHPSCRIPT="PHP скрипты" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="форма отображения" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Сценарий PHP, добавленный в эту область, выполняется непосредственно перед отображением формы. <br> <br> Основное внимание в этой области уделяется <b>$formLayout</b> (String) переменная, содержащая HTML-код формы. <br> <br> Для доступа к настройкам формы используйте <b>$form</b> (Array) переменная. <br> <br> Вам не нужно включать <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Процесс формы" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Код PHP, добавленный в эту область, выполняется непосредственно перед сохранением данных формы в базе данных, независимо от того, является ли отправка действительной или нет. <br> <br> Эта область полезна, когда вам необходимо выполнить вычисления, выполнить расширенную проверку или изменить значение поля. Изменения в <b>$post</b> (Array) Сделанная здесь переменная учитывается в записи о передаче. <br> <br> Для доступа к настройкам формы используйте <b>$form</b> (Array) переменная. <br> <br> Вы не должны включать эти <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="После отправки данных" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Код PHP, добавленный в эту область, будет выполнен после того, как форма будет успешно отправлена и данные будут сохранены в базе данных. <br> <br> Это более полезно при попытке выполнить некоторые дополнительные задачи, такие как: Б. отправлять данные на другой URL без присмотра. Вы можете получить доступ к окончательному представлению, нажав <b>$submission</b> (Object) variable.<br><br>Чтобы получить доступ к настройкам формы, используйте переменную <b> $ form </b> (массив). <br> <br> Вы не должны включать эти <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_NOTE="Скрипты PHP не выполняются на серверной части, чтобы предотвратить проблемы с средством предварительного просмотра живой формы. Всегда тестируйте на переднем конце." COM_CONVERTFORMS_FIELD_PASSWORD="пароль" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Разрешить пользователям безопасно вводить пароль" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Подтвердить тип поля" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Выберите тип ввода поля подтверждения между текстом и паролем." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Предзагрузка формы" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Сценарий PHP, добавленный в эту область, выполняется перед обработкой данных формы и их отправкой в средство просмотра формы. <br> <br> Основное внимание в этой области уделяется <b>$form</b> (Array) Переменная, которая содержит настройки формы. <br> <br> Вам не нужно вставлять это <?php and ?> теги." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s уже зарегистрирован." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s выглядит неправильно или неверно, введите реальный адрес электронной почты." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Ошибка: скрипт Google reCAPTCHA не был загружен. Убедитесь, что ваш браузер не блокирует его, или обратитесь к администратору сайта." COM_CONVERTFORMS_ACCESS_FORMS="Управление формой" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Позволяет пользователям в группе управлять формами." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Переводы" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Позволяет пользователям в группе управлять доставками." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Доступ к кампаниям" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Позволяет пользователям в группе управлять кампаниями. Установите этот флажок, если у вас есть проблемы с отправкой спама." COM_CONVERTFORMS_CSRF_CHECK="Используйте Joomla! CSRF токен" COM_CONVERTFORMS_CSRF_CHECK_DESC="Добавьте дополнительный уровень защиты к своим формам, проверив все запросы AJAX с помощью токенов CSRF.<br><br>Если вы включите это и используете механизм кэширования, который кэширует весь вывод страницы, такой как Joomla! Плагин Page Cache или прокси-сервер на стороне сервера, такой как CloudFlare или Sucuri, могут возникнуть проблемы с отправкой формы." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Форма была успешно отправлена" COM_CONVERTFORMS_SECRET_SET="Пожалуйста, настройте секретный ключ для использования конечной точки optin." COM_CONVERTFORMS_SECRET_NO="Секретный ключ не указан в URL" COM_CONVERTFORMS_SECRET_WRONG="В URL указан неверный секретный ключ" COM_CONVERTFORMS_SECURITY="Безопасность" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Остановить отправку спам-форм с помощью невидимой Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Знак" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Положение значка reCAPTCHA.\" Встроенный \"позволяет позиционировать его с помощью CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Внизу справа" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Снизу слева" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Инлайн" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Материалы" COM_CONVERTFORMS_SUBMISSIONS_LIST="Список данных" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Показать только подтвержденные" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Установите этот флажок, чтобы показывать только подтвержденные материалы." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Скрыть пустые значения" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Активируйте эту опцию, чтобы скрыть поля с пустыми значениями." COM_CONVERTFORMS_SELECT_FORM="Выбрать форму" COM_CONVERTFORMS_SELECT_FORM_DESC="Выберите форму для отображения записей" COM_CONVERTFORMS_SELECT_FORM_DESC2="Выберити форму для отображения" COM_CONVERTFORMS_LIST_LIMIT="предел списка" COM_CONVERTFORMS_LIST_LIMIT_DESC="Количество данных, отображаемых на странице. Введите 0 для неограниченного числа." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Показывать только свои" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Несмотря на то, что вы можете видеть список сообщений от разных пользователей, посетитель может получить доступ только к странице сведений о своих собственных сообщениях, если эта опция включена. <br> <br> Посетитель должен войти в свою учетную запись." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Показать пагинацию" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Если общее количество данных превышает ограничение страницы, ссылки на нумерацию страниц появятся в списке данных." COM_CONVERTFORMS_ORDER="Сортировать записи" COM_CONVERTFORMS_ORDER_DESC="Порядок, в котором отображаются заявки." COM_CONVERTFORMS_ORDER_RECENT="Последнее сначала" COM_CONVERTFORMS_ORDER_OLDEST="Самый старый первый" COM_CONVERTFORMS_ORDER_RANDOM="Случайный порядок" COM_CONVERTFORMS_FILTER_USER="Показать материалы от" COM_CONVERTFORMS_FILTER_USER_DESC="Выберите этот параметр, чтобы отфильтровать представления пользователя, отправившего материалы. <br> <br> <b> Пользователь, вошедший в систему </b> <br> Отображать представления только вошедшего в данный момент пользователя. Любой пользователь просматривает ваши заявки. <br> <br> <b> Все пользователи </b> <br> Показать все заявки. <br> <br> <b> Конкретные пользователи </b> <br> Укажите отправителя, отфильтровать представления. " COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Зарегистрированный пользователь" COM_CONVERTFORMS_FILTER_USER_ALL="Все пользователи" COM_CONVERTFORMS_FILTER_USER_SELECT="Конкретные пользователи" COM_CONVERTFORMS_SET_USERS="идентификаторы пользователей" COM_CONVERTFORMS_SET_USERS_DESC="Введите идентификаторы пользователей Joomla для фильтрации представлений. Используйте запятую для разделения нескольких идентификаторов." COM_CONVERTFORMS_LOAD_CSS="Загрузить таблицу стилей" COM_CONVERTFORMS_LOAD_CSS_DESC="Отключите эту опцию, если вы не хотите загружать CSS-файл Convert Forms." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Макет" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Выберите макет, с которым отправка должна отображаться во внешнем интерфейсе. Вы также можете создавать свои собственные макеты в своем шаблоне." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Типы компоновки" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Типы компоновки" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Выбрать шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Выберите шаблон для просмотра представлений. Этот шаблон используется как для представления списка, так и для подробного просмотра. <br> <br> Вы можете создать собственные переопределения шаблона в своем шаблоне." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Контейнер шаблонов" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Основной HTML-макет списка доставки. Не удаляйте тег {Submissions}, поскольку он будет заменен выводом данных." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Линейный макет" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="HTML-макет каждой отправки, как показано в макете контейнера." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Детальный макет" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="HTML-макет страницы сведений о представлении." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Пустое пространство" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Добавить пустое место в вашей форме" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Пустое пространство" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Установить вертикальный разрыв между полями в пикселях." COM_CONVERTFORMS_FIELD_HEADING="Заголовок" COM_CONVERTFORMS_FIELD_HEADING_DESC="Добавьте заголовок, чтобы сгруппировать поля" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Элемент HTML заголовка" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Выберите тип заголовка." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Использовать ссылку" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Указывает ли заголовок на URL-адрес." COM_CONVERTFORMS_FIELD_HEADING_LINK="Ссылка" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Введите ссылку для перенаправления пользователя." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Открыть в новой вкладке" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Включить, чтобы открывать ссылку в новой вкладке." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Установить размер шрифта для заголовка." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Выберите семейство шрифтов для заголовка." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Высота линии" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Установить высоту строки для заголовка." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Межбуквенный интервал" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Установить межбуквенный интервал для заголовка." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Выравнивание содержимого" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Выберите выравнивание заголовка." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Показать значения" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Убедитесь, что вы установили уникальное значение для каждого варианта, иначе у вас не будет возможности узнать, какой вариант выбрал пользователь" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Использовать расчетные значения" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Расчетные значения обычно используются для расчетов. Он представляет собой числовое значение выбора." COM_CONVERTFORMS_FIELD_DIVIDER="Разделитель" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Делит разделы вашей формы" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Стиль границы" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Выберите стиль границы разделителя." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Жирный" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Пунктирная" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Пунктирная" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Ширина границы" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Установить ширину границы разделителя." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Цвет границы" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Установить цвет границы разделителя." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Вершина маржи" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Установить верхнее поле делителя." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Нижняя граница" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Установить нижнее поле делителя." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Первый день недели" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Изменить первый день недели, представленный в календаре выбора даты." COM_CONVERTFORMS_ENTER_LABEL="Введите название" COM_CONVERTFORMS_ADD_FIELD="Добавить поле" COM_CONVERTFORMS_ALL_FIELDS="Добавить поля" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Поля макета" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Разрешить небезопасные файлы" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Разрешить загрузку небезопасных файлов. <br> <br> <b> Файл считается небезопасным, когда: </b> <br> - В имени файла обнаружен нулевой байт. <br> - Расширение файла запрещено: .php, py и т. д. <br> - В содержимом файла есть тег php. <br> - В содержимом файла есть короткий тег. <br> - В любом месте содержимого есть запрещенное расширение. <br> < br> Эта опция также защищает вас от небезопасных файлов, включенных в сжатые файлы, такие как zip, rar, tar и т. д. " COM_CONVERTFORMS_LABEL_POSITION="Положение метки" COM_CONVERTFORMS_LABEL_POSITION_DESC="Установить положение метки поля" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Неверный ответ" COM_CONVERTFORMS_INVALID_TASK="Недопустимая задача" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Пожалуйста, дождитесь завершения загрузки файла." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Маска неполная" COM_CONVERTFORMS_SUBMISSION_ID="Идентификатор отправки" COM_CONVERTFORMS_SUBMISSION_DATE="Дата отправки" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Идентификатор кампании отправки" COM_CONVERTFORMS_SUBMISSION_FORM_ID="Идентификатор формы отправки" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Идентификатор посетителя отправки" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Количество представленных материалов" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." COM_CONVERTFORMS_MIN_CHARS="Минимум символов" COM_CONVERTFORMS_MIN_CHARS_DESC="Минимальная длина этого поля в символах. Введите 0 без ограничения." COM_CONVERTFORMS_MAX_CHARS="Максимальное количество символов" COM_CONVERTFORMS_MAX_CHARS_DESC="Максимальная длина этого поля в символах. Введите 0 без ограничения." COM_CONVERTFORMS_MIN_WORDS="Минимум слов" COM_CONVERTFORMS_MIN_WORDS_DESC="Минимальная длина этого поля в словах. Введите 0 без ограничения." COM_CONVERTFORMS_MAX_WORDS="Максимальное количество слов" COM_CONVERTFORMS_MAX_WORDS_DESC="Максимальная длина этого поля словами. Введите 0 без ограничения." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Пожалуйста, удлините этот текст до %s символов или больше. В настоящее время вы используете %s символов." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Сократите этот текст до %s символов или меньше. В настоящее время вы используете %s символов" COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Пожалуйста, удлините этот текст до %s слов или больше. В настоящее время вы используете %s слов" COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Сократите этот текст до %sслов или меньше. В настоящее время вы используете %s слов" ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]�������Ecomponents/com_convertforms/language/cs-CZ/cs-CZ.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Návrh" COM_CONVERTFORMS_BEHAVIOR="Chování" COM_CONVERTFORMS_LIST="Seznam" COM_CONVERTFORMS_NO_RESULTS_FOUND="Žádné %s nenalezeny" COM_CONVERTFORMS_CREATE_NEW="Vytvořit nový?" COM_CONVERTFORMS_EMAIL_ASCENDING="E-mail vzestupně" COM_CONVERTFORMS_EMAIL_DESCENDING="E-mail sestupně" COM_CONVERTFORMS_ACTIONS="Akce" COM_CONVERTFORMS_VIEW_LEADS="Zobrazit komunikaci" NRI_PLG_CONVERTFORMS="Zásuvný modul Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Nastavení Convert Forms" COM_CONVERTFORMS_LOADCSS="Nahrát kaskádový styl" COM_CONVERTFORMS_LOADCSS_DESC="Zvolte načtení souboru stylů rozšíření. Tuto funkci můžete zakázat, pokud všechny své vlastní styly umístíte do jiného souboru stylů, například do pole Vlastní kód nebo do souboru stylů šablon." COM_CONVERTFORMS_DEBUG="Ladění" COM_CONVERTFORMS_DEBUG_DESC="Tuto možnost povolte, abyste mohli ladit chyby a neočekávané chování. Chybová hlášení se odesílají do konzoly prohlížeče (stiskněte klávesu F12) a do složky Protokoly." COM_CONVERTFORMS_FORMS="Formuláře" COM_CONVERTFORMS_FORM="Formulář" COM_CONVERTFORMS_NEW_FORM="Nový formulář" COM_CONVERTFORMS_EDIT_FORM="Upravit formulář" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formulářů zkopírováno" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formulářů zvěřejněno" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulářů zneveřejněno" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formulářů v koši" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formulářů smazáno" COM_CONVERTFORMS_FORM_ASCENDING="Formulář vzestupně" COM_CONVERTFORMS_FORM_DESCENDING="Formulář sestupně" COM_CONVERTFORMS_FORM_SELECT="- Vyberte formulář -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Vytvořit a zveřejnit modul" COM_CONVERTFORMS_FORM_LEADS="Tento formulář má dosud %s záznamů" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publikovat použitím zkratky: %s" COM_CONVERTFORMS_CAMPAIGN="Kampaň" COM_CONVERTFORMS_CAMPAIGNS="Kampaně" COM_CONVERTFORMS_NEW_CAMPAIGN="Nová kampaň" COM_CONVERTFORMS_EDIT_CAMPAIGN="Upravit kampaň" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Zadejte název kampaně. Toto jméno uvidíte jen vy, nikdo další." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Kampaní zkopírováno" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Kampaní zneveřejněno" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Kampaní zveřejněno" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s záznamů vyhozeno do koše" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s kampaní smazáno" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s záznamů zneveřejněno" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s záznamů zveřejněno" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s záznamů vyhozeno do koše" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s záznamů smazáno" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s záznamů archivováno" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampaň vzestupně" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampaň sestupně" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Vyberte Kampaň -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Prosím uložte kampaň a nastavte integraci." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampaň změněna" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synchronizace záznamů" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Zvolte, zda se mají vaše odběry synchronizovat se softwary třetích stran, nebo zda se mají shromažďovat pouze ve vaší databázi. <Br>oznámka: Pokud potřebujete integraci se softwarem třetích stran, jako je MailChimp, Aweber, GetResponse, Active Campaign atd., nainstalujte si příslušný doplněk v sekci Rozšíření." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s kampaní smazáno" COM_CONVERTFORMS_CHOOSE_SERVICE="Vyberte službu" COM_CONVERTFORMS_PENDING_LEADS="Čěkající záznamy" COM_CONVERTFORMS_SUBMISSIONS="Záznamy" COM_CONVERTFORMS_SUBMISSION="Záznam" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Poslední záznamy" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Potvrzené" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Nepotvrzeno" COM_CONVERTFORMS_EDIT_CONVERSION="Upravit záznam" COM_CONVERTFORMS_SUBMISSION_INVALID="Záznam nenalezen." COM_CONVERTFORMS_NOT_AUTHORIZED="Nemáte oprávnění zobrazit tuto stránku." COM_CONVERTFORMS_LEADS_ASC="Záznamy vzestupně" COM_CONVERTFORMS_LEADS_DESC="Záznamy sestupně" COM_CONVERTFORMS_LEADS_EXPORT="Export záznamů" COM_CONVERTFORMS_ADDONS="Rozšíření" COM_CONVERTFORMS_INSTALL_ADDONS="Zobrazit nainstalovaná rozšíření" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Aby jste mohli instalovat rozšíření pro Convert Forms, musíte mít a vyplnit Klíč ke stahování v nastavení zásuvného modulu Novarain Framework" COM_CONVERTFORMS_ADDONS_DESC="Rozšiřující moduly přidávají falší funckce do Convert Forms. S rozšířeními je můžete propojit se aplikacemi třetích stran, přidávat další funkce a ještě zvýšit výkon Convert Forms." COM_CONVERTFORMS_LAST_YEAR="Poslední rok" COM_CONVERTFORMS_THIS_YEAR="Tento rok" COM_CONVERTFORMS_LAST_MONTH="Poslední měsíc" COM_CONVERTFORMS_THIS_MONTH="Tento měsíc" COM_CONVERTFORMS_LAST_WEEK="Poslední týden" COM_CONVERTFORMS_THIS_WEEK="Tento týden" COM_CONVERTFORMS_LAST_7_DAYS="Posledních 7 dnů" COM_CONVERTFORMS_YESTERDAY="Včera" COM_CONVERTFORMS_TODAY="Dnes" COM_CONVERTFORMS_AVG_DAY="Průměrný den (v tomto měsíci)" COM_CONVERTFORMS_PROJECTION="Odhad na tento měsíc" COM_CONVERTFORMS_TOTAL="Celkem" COM_CONVERTFORMS_CHOOSE_FILE="Vyberte soubor .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Jednoznačné a popisné označení vám pomůže v budoucnu najít ho v dashboardu, analytice atd." COM_CONVERTFORMS_BACKGROUND_IMAGE="Zdroj obrázku pozadí" COM_CONVERTFORMS_IMAGE_DESC="Zvolte zdroj obrázku pozadí" COM_CONVERTFORMS_CUSTOM_URL="Vlastní URL" COM_CONVERTFORMS_BACKGROUND_URL="URL obrázku pozadí" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Vložte vlastní URL k vašemu obrázku" COM_CONVERTFORMS_BACKGROUND_FILE="Obrázek pozadí" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Vyberte obrázek, který chcete nahrát." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Můžete vložit obrázek, který se zobrazí pod obsahem formuláře. Zvolte <b>Nahrát</b> pro nahrání nového obrázku nebo <b>Vlastní URL</b> pro zadání vlastní adresy URL obrázku. Aby toto nastavení fungovalo, musí být zvolená barva pozadí průhledná." COM_CONVERTFORMS_FORM_BUILDER="Editor fomulářů" COM_CONVERTFORMS_FIELD_TYPE="Typ pole" COM_CONVERTFORMS_FIELD_TYPE_DESC="Atribut Typ pole určuje typ vstupního prvku, který se má zobrazit." COM_CONVERTFORMS_FIELD_LABEL="Popis pole" COM_CONVERTFORMS_FIELD_LABEL_DESC="Popisek pole definuje popis pro vstupní prvek." COM_CONVERTFORMS_FIELD_NAME="Název pole" COM_CONVERTFORMS_FIELD_NAME_DESC="Určuje název vstupního prvku, který se po odeslání formuláře použije k odkazu na data formuláře. Tuto možnost použijte také pro mapování formulářových polí při integrací s aplikacemi třetích stran." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Text, který chcete zobrazit v poli předtím, než uživatel zadá jakákoli data." COM_CONVERTFORMS_REQUIRED_NAME="Povinné pole" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Pokud je tato funkce povolena, zajistí, aby bylo toto pole vyplněno před povolením odeslání formuláře." COM_CONVERTFORMS_FIELDS="Pole" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Používáte <b>bezplatnou</b> verzi, která podporuje 1 e-mailové pole. <b>Přejděte na Pro verzi</b> a budete moci využít neomezeného množství polí." COM_CONVERTFORMS_GENERAL="Hlavní" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Zarovnání textu v poli" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Zarovnání textu formuláře" COM_CONVERTFORMS_INPUT_COLOR="Barva textu v poli" COM_CONVERTFORMS_INPUT_BGCOLOR="Barva pozadí pole" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Barva okraje pole" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Zobrazí vnitřní stín ve vstupním poli" COM_CONVERTFORMS_INPUT_FONT_SIZE="Velikost písma v poli" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Velikost písma v poli" COM_CONVERTFORMS_VPADDING_SIZE="Svislé zarovnání" COM_CONVERTFORMS_HPADDING_SIZE="Vodorovné odsazení" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Maximální šíře boxu" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Zadejte vlastní maximální šířku podle svého výběru nebo zajistěte, aby tento rámeček pokrýval celou plochu obrazovky. Všimněte si, že se jedná o maximální šířku, což znamená, že se formulář vždy vejde na menší plochy." COM_CONVERTFORMS_FORM_WIDTH="Vlastní max šíře" COM_CONVERTFORMS_FORM_WIDTH_DESC="Zadejte vlastní maximální šířku podle svého výběru." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Odstranit výchozí vnitřní okraj" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Odstraní výchozí odsazení mezi prostorem pro obsah a ohraničemín formuláře." COM_CONVERTFORMS_FORM_BORDER_STYLE="Styl ohraničení" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Nastavit okraj na celý formulář" COM_CONVERTFORMS_FORM_BORDER_COLOR="Barva ohraničení" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Barva okraje formuláře" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Šíře okraje" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Zadejte šířku okraje formuláře" COM_CONVERTFORMS_BOX_RADIUS="Zaoblení rohů" COM_CONVERTFORMS_BORDER_RADIUS="Zaoblení okraje" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Zadejte poloměr zaoblení okraje" COM_CONVERTFORMS_COLLECT_LEADS_USING="Seskupit záznamy s využitím kampaní" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Odběry shromážděná prostřednictvím tohoto formuláře budou přiřazena k vybrané kampani. Kampaně můžete spravovat v sekci Kampaně." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Akce se po úspěšném odeslání" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Vyberte akci, která se provede po úspěšném odeslání formuláře" COM_CONVERTFORMS_DISPLAY_MSG="Zobrazit zprávu" COM_CONVERTFORMS_REDIRECT_USER="Přesměrovat uživatele" COM_CONVERTFORMS_SUCCESS_TEXT="Zpráva po úspěšném odeslání" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Zadejte zprávu, která se má uživateli zobrazit po úspěšném přidání na seznam." COM_CONVERTFORMS_SUCCESS_URL="Přesměrování na URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Zadejte adresu URL, na kterou chcete uživatele po úspěšném přidání do seznamu přesměrovat." COM_CONVERTFORMS_PASS_DATA="Propsat vyplněná data do přesměrovacího URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Styl odesílacího tlačítka" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Upravte vzhled tlačítka použitím hezkých efektů." COM_CONVERTFORMS_BTN_SHADOW_DESC="Zobrazí vnější stín tlačítka" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Barva textu zobrazená při přejetí" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Barva textu zobrazená při přejetí" COM_CONVERTFORMS_CUSTOM_CSS="Vlastní CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Formulář můžete nastylovat pomocí vlastního CSS. <br><br>Pro usnadnění stylování formuláře se kód přidaný v této oblasti provede i v backendu." COM_CONVERTFORMS_CLASS_SUFFIX="Přípona třídy" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Přípona třídy" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Výška textové plochy" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Výška textové oblasti určuje viditelnou výšku textové oblasti, v řádcích." COM_CONVERTFORMS_CHOICES="Volby" COM_CONVERTFORMS_CHOICES_DESC="Vyberte z možností pro pole formuláře." COM_CONVERTFORMS_FIELD_VALUE="Výchozí hodnota" COM_CONVERTFORMS_FIELD_VALUE_DESC="Vložte text Výchozí hodnoty pole" COM_CONVERTFORMS_HIDE_LABELS="Skrýt popis" COM_CONVERTFORMS_HIDE_LABELS_DESC="Zaškrtnutím této volby skryjete popis pole" COM_CONVERTFORMS_IMAGE_SOURCE="Zdroj obrázku" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Můžete zadat obrázek, který se zobrazí mezi obsahem formuláře. Zvolte <b>Nahrát</b> ro nahrání nového obrázku nebo <b>Vlastní URL</b> pro zadání vlastní adresy URL obrázku." COM_CONVERTFORMS_IMAGE_URL="URL obrázku" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Skrýt obrázek na malých displejích" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Na menších obrazovkách, například na mobilních telefonech, vypadají menší modály krásněji. Chcete-li zmenšit velikost modalu, můžete pomocí tohoto nastavení skrýt obrázek." COM_CONVERTFORMS_HORIZONTAL_POSITION="Vodorovné umístění" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Vodorovné umístění" COM_CONVERTFORMS_VERTICAL_POSITION="Svislé umístění" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Svislé umístění" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Šířka obrázku" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Nastavte šířku obrázku" COM_CONVERTFORMS_BUTTON_ALIGN="Zarovnání tlačítka" COM_CONVERTFORMS_FORM_POSITION="Umístění formuláře" COM_CONVERTFORMS_FORM_POSITION_DESC="Nastavit relativní pozici formuláře k textovému kontejneru" COM_CONVERTFORMS_FORM_SIZE="Velikost kontejneru formuláře" COM_CONVERTFORMS_COLUMNS_DESC="Určete, kolik sloupců bude použito. 6 sloupců zabírá 50 % šířky." COM_CONVERTFORMS_MESSAGE="Text zprávy" COM_CONVERTFORMS_MESSAGE_DESC="Vložte textovou zprávu formuláře" COM_CONVERTFORMS_IMAGE_POSITION="Umístění obrázku" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Nastavit relativní pozici obrázku k textu" COM_CONVERTFORMS_FOOTER="Patička formuláře" COM_CONVERTFORMS_BUTTON_TEXT="Text na tlačítku" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Vložte popisek tlačítka" COM_CONVERTFORMS_BTN_FONT_SIZE="Velikost písma na tlačítku" COM_CONVERTFORMS_IMAGE_SIZE="Velikost obrázkového kontejneru" COM_CONVERTFORMS_BODY_FONT="Druh písma" COM_CONVERTFORMS_BODY_FONT_DESC="Vyberte rodinu písma, která bude použita va formuláři. Mějte na paměti, že načítání nestandardních písem, jako jsou například písma Google, může nepříznivě ovlivnit rychlost webu. Vyberte možnost Výchozí, abyste použili výchozí písmo vašeho webu." COM_CONVERTFORMS_EMAIL="E-mail" COM_CONVERTFORMS_DATE="Datum" COM_CONVERTFORMS_CREATED="Datum vytvoření" COM_CONVERTFORMS_SUBMISSION="Záznam" COM_CONVERTFORMS_PREVIEW_SUCCESS="Náhled úspěšně odeslaného formuláře" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Tato varianta bude zobrazena na displejích s velikostí 990px a větších" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Tato varianta bude zobrazena na displejích s velikostí 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Tato varianta bude zobrazena na displejích s velikostí 768px a menších" COM_CONVERTFORMS_DEVICE_DESKTOP="Stolní počítač" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Telefon" COM_CONVERTFORMS_RESET_FORM="Vyčistit formulář" COM_CONVERTFORMS_RESET_FORM_DESC="Vyčistit formulář po úspěšném odeslání" COM_CONVERTFORMS_HIDE_FORM="Skrýt formulář" COM_CONVERTFORMS_HIDE_FORM_DESC="Skrýt formulář po úspěšném odeslání" COM_CONVERTFORMS_TEMPLATES="Šablony" COM_CONVERTFORMS_TEMPLATES_SELECT="Začněte výběrem šablony" COM_CONVERTFORMS_TEMPLATES_BLANK="Začít od nuly" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Začít nový formulář od nuly" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Ve stránce" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Boční panel" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Pruhy" COM_CONVERTFORMS_LABELS_COLOR="Barva textu popisu" COM_CONVERTFORMS_LABELS_FONT_SIZE="Velikost písma popisu" COM_CONVERTFORMS_IMAGE_ABOVE="Text nad" COM_CONVERTFORMS_IMAGE_BELOW="Text pod" COM_CONVERTFORMS_IMAGE_RIGHT="Text vpravo" COM_CONVERTFORMS_IMAGE_LEFT="Text vlevo" COM_CONVERTFORMS_FLAT="Ploché" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Přechod" COM_CONVERTFORMS_EMAILS_DESC="Odeslat e-mailové upozornění pokud uživatel odešle formulář." COM_CONVERTFORMS_EMAILS="E-mailová upozornění" COM_CONVERTFORMS_EMAILS_REPLY_TO="Odpověď na e-mail" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Odpověď komu" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="E-mail odesílatele" COM_CONVERTFORMS_EMAILS_FROM="Jméno odesílatele" COM_CONVERTFORMS_EMAILS_RECIPIENT="Na jaký e-mail odeslat" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Zadejte e-mailové adresy, na které chcete dostávat oznámení o odběrech. V případě více adres, oddělte e-maily čárkou." COM_CONVERTFORMS_EMAILS_SUBJECT="Předmět zprávy" COM_CONVERTFORMS_EMAILS_BODY="Zpráva" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Potřebujete více upozornění? <br><a href='#' data-pro-only='Unlimited Notifications'>přejděte na PRO verzi,</a> která je podporuje." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Přílohy" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Cesta k umístění souboru, který se má připojit, vzhledem ke kořenovému adresáři webového prostoru. Pro zadání více souborů použijte čárku." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Schází vám nějaké rozšíření?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Pokud vám chybí idoplněk pro integraci vaši oblíbené aplikace, dejte nám prosím vědět a my jej rádi zařadíme do kolekce doplňků Convert Forms." COM_CONVERTFORMS_API_ENABLE="Zapnout JSON API" COM_CONVERTFORMS_API_DESC="JSON API vám umožní získávat obsah z Convert Foms s použitím HTTP požadavků." COM_CONVERTFORMS_API_KEY="Tajný klíč" COM_CONVERTFORMS_API_KEY_DESC="Tento tajný klíč slouží ověření přístupu ke kritickým úlohám jako CRONu a JSON API. Pokud nevyplníte, budou všechny úlohy vyžadující ověření uživatele neaktivní." COM_CONVERTFORMS_IMAGE_ALT="Alt obrázku" COM_CONVERTFORMS_IMAGE_ALT_DESC="Alternativní text obrázku" COM_CONVERTFORMS_CUSTOM_CODE="Vlastní kód" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Na konec formuláře umístěte vlastní kód. Přijímá HTML, CSS a Javascript. <br><br>okud jde o Javascript, nezapomeňte kód obalit značkou <script>.. <br><br>Kód přidaný v této oblasti se v backendu neprovede." COM_CONVERTFORMS_ISSUES="Události" COM_CONVERTFORMS_ISSUES_DETECTED="%s odhaleno problémů se záznamy" COM_CONVERTFORMS_CREATED="Datum vytvoření" COM_CONVERTFORMS_MODIFIED="Datum úpravy" COM_CONVERTFORMS_IP="IP adresa odesílatele" COM_CONVERTFORMS_USER_ID="ID odesílatele" COM_CONVERTFORMS_USER_USERNAME="Uživatelské jméno odesílatele" COM_CONVERTFORMS_VISITOR_ID="Návštěvníkovo ID" COM_CONVERTFORMS_FORM_NAME="Název formuláře" COM_CONVERTFORMS_CAMPAIGN_NAME="Název kampaně" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Sloupce" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Chcete-li povolit konkrétní pole formuláře, zvolte nejprve formulář na panelu filtrů." COM_CONVERTFORMS_UNTITLED_BOX="Nepojmenovaný formulář" COM_CONVERTFORMS_SELECT_LAYOUT="Zvolte rozvržení" COM_CONVERTFORMS_SHOW_LAYOUTS="Zobrazit rozvržení" COM_CONVERTFORMS_HIDE_LAYOUTS="Skrýt rozvržení" COM_CONVERTFORMS_FIELDS_COPY="Zkopírovat pole" COM_CONVERTFORMS_FIELDS_DELETE="Smazat pole" COM_CONVERTFORMS_FIELDGROUP_COMMON="Běžná pole" COM_CONVERTFORMS_FIELDGROUP_FANCY="Oblíbená pole" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Rozšířená pole" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Vložte vlastní text nebo HTML kód. Bez omezení!" COM_CONVERTFORMS_FIELD_TEXT="Textové pole" COM_CONVERTFORMS_FIELD_TEXT_DESC="Pole s jedním řádkem textu" COM_CONVERTFORMS_FIELD_TEXTAREA="Textová plocha" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Podobně jako pole textového pole, ale může obsahovat víceřádkový uživatelský vstup" COM_CONVERTFORMS_FIELD_NUMBER="Číslo" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Textové pole umožňuje pouze vkládání čísel" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Krok" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Velikost hodnoty se změní po stiknutí šipky." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min hodnota" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Minimální hodnota pole umožní" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max hodnota" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Maximální hodnota pole umožní" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Použít Google reCAPTCHA k omezení posílání spamu přes formulář" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Prosím vyplňte svůj web a tajný klíč na stránce s nastavením." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Nastavit reCAPTCHA nyní" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Barevná šablona widgetu" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Velikost widgetu" COM_CONVERTFORMS_FIELD_DROPDOWN="Rozbalovací seznam" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Nastavení rozbalovacího seznamu, které umožní výběr jedné z možností" COM_CONVERTFORMS_FIELD_RADIO="Radio tlačítka" COM_CONVERTFORMS_FIELD_RADIO_DESC="Nastavení seznamu přepínačů, které umožní výběr jedné z možností " COM_CONVERTFORMS_FIELD_URL="Webová stránka / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Je vyžadována správně vytvořená adresa URL, která začíná buď http://, nebo https://." COM_CONVERTFORMS_FIELD_URL_INVALID="Neplatné URL" COM_CONVERTFORMS_FIELD_COUNTRY="Země" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Seznam známých zemí" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detekovat zemi návštěvníka" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Pokud je tato možnost povolena, formulář se pokusí zjistit a předvyplnit zemi návštěvníka. Vyžaduje mít nainstalovaný zásuvný modul TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Vynechat země" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Měna" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Seznam známých měn" COM_CONVERTFORMS_FIELD_SUBMIT="Odesílací tlačítko" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Tlačítko, které odešle formulář" COM_CONVERTFORMS_FIELD_HIDDEN="Skryté pole" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Pole se nezobrazí uživatelům na front-endu" COM_CONVERTFORMS_FIELD_EMAIL="E-mailová adresa" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Textové pole, které umožní vložit pouze e-mailové adresy" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Pravidla služby" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Vyžaduje odsouhlasení pravidel služby uživatele předtím, než bude moci odeslat formulář" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Text souhlasu s pravidly služby" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Tento text se zobrazí vpravo vedle zašktávacího pole" COM_CONVERTFORMS_FIELD_CHECKBOX="Zaškrtávací pole" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Seznam, který umožňuje vícenásobný výběr ze zaškrtávacích políček" COM_CONVERTFORMS_FIELD_REQUIRED="Povinné" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Neplatná e-mailová adresa" COM_CONVERTFORMS_FIELD_SIZE="Velikost pole" COM_CONVERTFORMS_FIELD_SIZE_DESC="Zvolte výchozí velikost pole" COM_CONVERTFORMS_FIELD_TEL="Telefonní číslo" COM_CONVERTFORMS_FIELD_TEL_DESC="Umožněte uživateli vložit telefonní číslo." COM_CONVERTFORMS_FIELD_DATETIME="Datum / čas" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Výběr data/času, který umožňuje výběr jednoho datumu, více datumů nebo dokonce období od od." COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Formát data" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Formát datumu. Příklady:<br><br>d/m/R H:i<br>R-m-d<br>m/d/RRR" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Zobrazit možnost vybrat čas" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Poovlí možnost výběru času. Pokud je volba aktivní, ujistěte se, že v poli Formát data jsou uvedeny časové znaky (H:i)." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Datum" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Minimální/nejbližší datum povolené pro výběr. Podporuje relativní formáty data, například: dnes, zítra, +5 dní, +2 týdny." COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Datum" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Maximální/poslední povolené datum pro výběr. Podporuje relativní formáty data, například: dnes, zítra, +5 dní, +2 týdny." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Mód výběru data" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Umožňuje uživateli vybrat jedno datum, více dat nebo rozsah dat." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24 hodinový formát" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Pro výběr času bude používán 24 hodinový formát, bez výběru dopoledne/odpoledne." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Po minutě" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Upravuje krok při zadávání minut v nástroji Výběr času." COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Zobrazit jako součást stránky" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Místo vyskakovacího okna zobrazit kalendář jako součást stránky." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Vzhled" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Vyberte vzhled kalendáře" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Neplatný formát data - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Vypnout výchozí výběr datumu pro mobily" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Pokud je tato možnost zaškrtnuta, uživatelům mobilních zařízení se místo výchozího nástroje pro výběr data zobrazí nástroj Convert Forms Date Picker." COM_CONVERTFORMS_CSS_CLASSES="CSS třída" COM_CONVERTFORMS_CSS_CLASSES_DESC="Přidání tříd CSS do kontejneru vstupu. To lze využít především pro účely úpravy vzhledu." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Vstupní CSS třída" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Přidání tříd CSS do vstupního prvku. Tuto možnost použijte k nastylování samotného vstupu." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Vypnout automatické doplňování textu prohlížečem" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Prohlížeče si ve výchozím nastavení pamatují informace, které uživatel zadává prostřednictvím vstupních polí. Chcete-li automatické dokončování ve formulářích zakázat, povolte tuto možnost." COM_CONVERTFORMS_FIELD_DESCRIPTION="Text nápovědy" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Text nápovědy, který se zobrazí vedle tohoto pole." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Kontrola DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Ověří zadanou e-mailovou adresu kontrolou DNS záznamu." COM_CONVERTFORMS_FIELD_CONFIRM="Potvrdit" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Pole, které vyžaduje shodu s dalším polem" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Potvrďte klíč pole" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Zadejte klíč pole, který bude použit ke zajištění shody hodnoty" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Pole není správně nastaveno" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Hodnoty pole se neshodují" COM_CONVERTFORMS_HIDE_TEXT="Skrýt text" COM_CONVERTFORMS_HIDE_TEXT_DESC="Skrýt formulář po odeslání" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Formulář neobsahuje pole pro e-mail" COM_CONVERTFORMS_INVALID_LEAD="Nelze ověřit objekt Odběru" COM_CONVERTFORMS_EXCEL_SECURITY="Bezpečnost souborů Excel" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Pokud je tato možnost povolena, budou hodnoty v exportovaném souboru CSV začínající znakem =, +, - nebo @ předřazeny tabulátoru, aby se při otevření exportovaného souboru v aplikaci Excel předešlo CSV injektáži.<br><br>Tuto možnost zakažte pouze v případě, že jste si 100% jisti, že data jsou důvěryhodná, nebo pokud máte potíže s importem souboru CSV do aplikace třetích stran." COM_CONVERTFORMS_CHOICE_LAYOUT="Volba vzhledu" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Vyberte způsob zobrazení možností polí" COM_CONVERTFORMS_CHOICE_1_COLUMN="Jeden sloupec" COM_CONVERTFORMS_CHOICE_2_COLUMN="Dva sloupce" COM_CONVERTFORMS_CHOICE_3_COLUMN="Tři sloupce" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Ze strany na stranu" COM_CONVERTFORMS_REQUIRED_INDICATION="Označení povinných polí" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Povinná pole označte hvězdičkou vedle označení každého pole. Vyžaduje, aby popisek pole nebyl skrytý." COM_CONVERTFORMS_INPUT_MASK="Vložit masku" COM_CONVERTFORMS_INPUT_MASK_DESC="Pomůže uživateli se zadáváním tím, že zajistí předdefinovaný formát. <br><br><b>Syntaxe:</b><br>9: Číselné (0-9)<br>a: Abecední (a-z or A-Z)<br>A: Velká písmena abecedy (A-Z)<br>*: Alfanumerické (0-9, a-z, or A-Z)<br>&: Velká písmena a alfanumerické (0-9 or A-Z)<br><br><b>Příklady</b>:<br>Telefon: +1 (999)-9999<br>Datum: 99/99/9999<br>PSČ: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Uživatelem odeslané údaje" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Nenalezeny žádné odeslané údaje" COM_CONVERTFORMS_LEAD_INFO="Info o záznamu" COM_CONVERTFORMS_NOTES="Poznámky" COM_CONVERTFORMS_DATE_RANGE="Rozmezí datumů" COM_CONVERTFORMS_START_DATE="Počáteční datum" COM_CONVERTFORMS_END_DATE="Konečné datum" COM_CONVERTFORMS_PERIOD="Období" COM_CONVERTFORMS_PERIOD_SELECT="- Vyberte období -" COM_CONVERTFORMS_HONEYPOT="Zapnout Honeypot proti spamu" COM_CONVERTFORMS_HONEYPOT_DESC="Aktivuje prodání pole Honeypotu, který je viditelný pouze pro spamové roboty. Pokud je pole vyplněno, systém automaticky označí uživatele jako spambota.<br><br>Na většine webů honeypot je dostatečnou ochranou před spamem. Pokud dostáváte spam i přes toto opatření nebo chcete použít ještě důslednější ochranu bude pro vás reCAPTCHA skvělou volbou.." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Nahrání souboru" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Umožnit uživatelům nahrávat obrázky" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Složka temp vašeho webu je nastavena na <b>%s</b>, ale není do ní možné zapisovat. Zadejte prosím dočasnou složku, do které lze zapisovat." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Cílová složka pro nahrávání" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Zadejte cílovou složku pro nahrané soubory.<br><br><b>Auto</b>: Soubory budou nahrány do složky /media/com_convertforms/uploads. Navíc bude na začátek názvu každého souboru přidána náhodná předpona pro zvýšení bezpečnosti.<br><br><b>Vlastní </b>: Zadejte vlastní cílovou složku a konvenci pojmenování." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Vlastní složka pro nahrávání" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Zadejte cestu vzhledem ke kořenovému adresáři vašeho webového prostoru, kam budou nahrané soubory uloženy. Pro přejmenování nahrávaných souborů použijte následující Chytré šítky.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: číslo indexu<br><br>Může také přijmout globální Chytré značky, jako je {rok}, {měsíc}, {user.id} nebo {randomid}, a vytvořit tak ještě dynamičtější cílové složky pro nahrávání." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limit souborů" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Kolik souborů lze nahrát? Zadejte 0 pro neomezený počet." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Omezení velikosti souboru" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Nastavte maximální povolenou velikost každého nahraného souboru v megabajtech. Zadejte 0 pro nemezenou velikost<br><br>Maximální velikost nahrávaného souboru na vašem serveru je:<b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Povolené typy souborů" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Zadejte čárkou oddělený seznam povolených typů souborů, například: 1.jpg, .gif, .png, .pdf</b>.jpg, .gif, .png, .pdf<br><br>Můžete zadat typy médií jako: aplikace/pdf, obrázky/*, video/* nebo můžete kombinovat obojí: aplikace/*, .png, .jpg<br><br>oznámka: Tato funkce není blbuvzdorná a lze ji obelstít, nezapomeňte, že při povolování nahrávání souborů uživatelům vždy hrozí určité nebezpečí zneužití.<br><br>Rozšíření PHP <b>fileinfo</b> imusí bát naistalováno, aby funkce fungovala." COM_CONVERTFORMS_FIELD_FILTER="Filtr" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtrování uživatelského vstupu na základě následujících filtrů.<br><b>Text</b>: Převede vstup na prostý textový řetězec; odstraní všechny značky / atributy.<br><b>Bezpečné HTML</b>: Přijímá pouze bezpečné prvky HTML.<br><b>Alfanumwerické</b>: Povoluje pouze znaky a-z a 0-9<br><b>Slovo</b>: ovoluje pouze znaky a-z a podtržítko<br><b>Integer</b>: Používá pouze první číselnou hodnotu<br><b>Plovoucí</b>: Povoluje pouze znaky a-z a podtržítko" COM_CONVERTFORMS_UPLOAD_ERROR="Neplatný formulář nebo klíč pole" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Neplatné vstupní pole" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Neplatný nebo nepodporovaný soubor" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Můžete nahrát až %d souborů" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Přetáhněte soubory sem nebo" COM_CONVERTFORMS_UPLOAD_BROWSE="Vyberte v počítači" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Dočasný soubor %s není k dispozici. Prosím, nahrajte ho znovu." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Adresář pro nahrávané soubory %s neexistuje nebo do není zapisovatelný" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Soubor je příliš velký ({{filesize}}MB). Maximální velikost souboru: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Nemůžete nahrát tento typ souboru." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Váš prohlížeč nepodporuje přetahování souborů k nahrávání." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server odpověděl kódem {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Zrušit nahrávání" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Jste si jistý, že chcete zrušit toto nahrávání?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Odstranit soubor" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Nemůžete žádné další soubory." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Automatické mazání souborů" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Při velkém počtu nahrávaných souborů se může prostor na serveru, může brzy docházet volné místo na disku serveru. To vyžaduje pravidelný úklid, aby se místo uvolnilo. <br><br>Tato možnost vám pomůže automaticky mazat soubory uložené ve složce Upload po uplynutí nastavené doby. <br><br>Například zadejte 3, chcete-li automaticky mazat soubory starší než 3 dny, nebo 0, chcete-li soubory uchovávat neomezeně dlouho.<br><br>Poznámka: Na serveru musí být povolen doplněk Convert Forms Uploaded Files Cleaner a nastavena příslušná adresa URL pro úlohu prováděnou Cronem." COM_CONVERTFORMS_READONLY="Pouze pro čtení" COM_CONVERTFORMS_READONLY_DESC="Zabránit vložení do tohoto pole" COM_CONVERTFORMS_PHPSCRIPT="PHP skripty" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Zobrazení formuláře" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Skript PHP přidaný do této oblasti se spustí těsně před zobrazením formuláře<br><br>této oblasti se zaměřte především na proměnnou <b>$formLayout</b> (String), která obsahuje kód HTML formuláře.<br><br>Pro přístup k nastavení formuláře použijte proměnnou <b>$form</b> (Array) proměnnou.<br><br>Nepotřebujete uvádět značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Zpracování formuláře" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Kód PHP přidaný do této oblasti se provede těsně před uložením dat formuláře do databáze bez ohledu na to, zda je odeslání platné nebo ne. <br><br>ato oblast je poměrně užitečná, pokud potřebujete zpracovat výpočty, provést pokročilou validaci nebo upravit hodnotu pole. Veškeré úpravy proměnné <b>$post</b> (Array), které zde provedete, se projeví v záznamu o odběru.<br><br>Pro přístup k nastavení formuláře použijte proměnnou <b>$form</b> (Array) . <br><br>Nemusíte uvádět značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Po odeslání formuláře" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Kód PHP přidaný do této oblasti se spustí po úspěšném odeslání formuláře a uložení dat do databáze.<br><br>To je poměrně užitečné, pokud se snažíte spustit nějaké další úlohy, například v tichosti odeslat data na jinou adresu URL. K finálnímu odeslání máte přístup pomocí proměnné <b>$submission</b> (Object).<br><br>Pro přístup k nastavení formuláře použijte proměnnou <b>$form</b> (Array). <br><br>Nemusíte uvádět značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_NOTE="Skripty PHP se na backendu nespouštějí, aby se předešlo problémům s živým náhledem formuláře. Chování vždy testujte na front-endu." COM_CONVERTFORMS_FIELD_PASSWORD="Heslo" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Nabízím způsob, jakým uživatel může bezpečně zadat heslo" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Potvrdit typ pole" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Vyberte a potvrďte vstupní formát pole mezi Text a Heslo." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Příprava formuláře" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Skript PHP přidaný v této oblasti se spustí těsně před tím, než jsou data formuláře připravena a odeslána do funkce pro zobrazení formuláře.<br><br>V této oblasti se zaměřujeme především na proměnnou <b>$form</b> (Array) ,která obsahuje nastavení formuláře.. <br><br>Není třeba uvádět značky <?php a ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s je již registrovaný." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s vypadá jako falešná nebo neplatná, prosím zadejte skutečnou e-mailovou adresu. " COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Chyba: skript Google reCAPTCHA se nepodařilo nahrát. Ujistěte se, že ho neblokuje váš prohlížeč, případně kontaktujte správce webu." COM_CONVERTFORMS_ACCESS_FORMS="Přístup k formulářům" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Povolit uživatelům ve skupině spravovat formuláře." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Přístup k záznamům" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Umožňuje uživatelům ve skupině spravovat Odběry." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Přístup ke kampaním" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Umožňuje uživatelům ve skupině spravovat kampaně. Tuto funkci povolte, pokud máte problémy s odesíláním nevyžádané pošty." COM_CONVERTFORMS_CSRF_CHECK="Použít Joomla! CSRF Token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Přidejte do svých formulářů další ochrannou vrstvu ověřováním všech požadavků AJAX pomocí tokenů CSRF.<br><br>Pokud tuto funkci povolíte a používáte mechanismus mezipaměti, který ukládá do mezipaměti celý výstup stránky, jako je plugin Joomla! Page Cache nebo serverový cachovací proxy server, jako je CloudFlare nebo Sucuri, můžete se setkat s problémy při odesílání formuláře." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Formulář byl úspěšně odeslán" COM_CONVERTFORMS_SECRET_SET="Nastavte tajný klíč, abyste mohli používat API." COM_CONVERTFORMS_SECRET_NO="URL neobsahuje tajný klíč" COM_CONVERTFORMS_SECRET_WRONG="URL obsahuje neplatný tajný klíč" COM_CONVERTFORMS_SECURITY="Bezpečnost" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="Nevitelná reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Použít Google reCAPTCHA k omezení posílání spamu přes formulář" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Placka" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Umístění loga reCAPTCHA. 'Na stránce' umožní definovat pozici v CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Vpravo dole" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Vlevo dole" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Záznamy" COM_CONVERTFORMS_SUBMISSIONS_LIST="Seznam záznamů" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Zobrazit pouze Potvrzené" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Po zapnutí se zobrazí pouze potvrzené odběry." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Skrýt prázdné hodnoty" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Zapnutím této možnosti skryjete nevyplněná pole." COM_CONVERTFORMS_SELECT_FORM="Vyberte formulář" COM_CONVERTFORMS_SELECT_FORM_DESC="Vyberte formulář, ze kterého se mají zobrazit odběry" COM_CONVERTFORMS_SELECT_FORM_DESC2="Zvolte formulář k zobrazení" COM_CONVERTFORMS_LIST_LIMIT="Limit stránky" COM_CONVERTFORMS_LIST_LIMIT_DESC="Počet záznamů zobrazených na straně. Zadejte 0 pro neomezený počet." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Zobrazit pouze vlastní" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Ačkoli můžete zobrazit seznam s odběry od různých uživatelů, návštěvník bude mít přístup pouze ke stránce s podrobnostmi o svých vlastních odběrů, pokud je tato možnost povolena.<br><br>Návštěvník se musí přihlásit ke svému účtu." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Zobrazit stránkování" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Pokud celkový počet odběrů překročí limit stránek, zobrazí se pod seznamem stránkování." COM_CONVERTFORMS_ORDER="Seřadit záznamy" COM_CONVERTFORMS_ORDER_DESC="Pořadí v jakém budou záznamy zobrazeny." COM_CONVERTFORMS_ORDER_RECENT="Nejnovější nejříve" COM_CONVERTFORMS_ORDER_OLDEST="Nejstarší první" COM_CONVERTFORMS_ORDER_RANDOM="Náhodné pořadí" COM_CONVERTFORMS_FILTER_USER="Zobrazit záznamy od" COM_CONVERTFORMS_FILTER_USER_DESC="Vyberte, chcete-li filtrovat odběry podle uživatele, který je odeslal.<br><br><b>Přihlášený uživatel</b><br>Zobrazí pouze podání odeslaná aktuálním přihlášeným uživatelem. Každý uživatel uvidí svá odběry.<br><br><b>Všichni Uživatelé</b><br>Zobrazí všechny odběry.<br><br><b>Konkrétní uživatelé</b><br>Zadejte podavatele, jejichž odběry se mají zobrazit." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Přihlášený uživatel" COM_CONVERTFORMS_FILTER_USER_ALL="Všichni uživatelé" COM_CONVERTFORMS_FILTER_USER_SELECT="Vybraní uživatelé" COM_CONVERTFORMS_SET_USERS="ID uživatele" COM_CONVERTFORMS_SET_USERS_DESC="Zadejte ID uživatelů systému Joomla, abyste mohli filtrovat odběry. Pro oddělení více ID použijte čárku." COM_CONVERTFORMS_LOAD_CSS="Nahrát kaskádový styl" COM_CONVERTFORMS_LOAD_CSS_DESC="Vypněte tuto možnost, pokud nechcete používat CSS soubor Convert Forms." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Rozvržení" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Zvolte rozvržení, které bude použito pro zobrazení odběru ve front-endu. V šabloně můžete také vytvořit vlastní rozvržení." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Typ rozvržení" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Typ rozvržení" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Šablona" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Zvolte šablonu" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Vyberte šablonu pro zobrazení odběru. Tato šablona bude použita jak pro zobrazení seznamu, tak pro podrobné zobrazení.<br><br>V rámci šablony můžete vytvořit vlastní přepis šablony." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Rozvržení kontejneru" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Hlavní rozvržení seznamu odběru v HTML. Neodstraňujte z něj značku {submissions}, protože je nahrazována výstupem dat." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Rozvržení řádku" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="Rozložení HTML každého formuláře odběru, jak je zobrazeno v Rozložení kontejneru." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Detaily rozvržení" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Rozložení HTML stránky s podrobnostmi o odběru." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Prázdné místo" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Přidat do formuláře prázdné místo" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Prázdné místo" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Nastavte vertikální mezeru mezi poli v pixelech." COM_CONVERTFORMS_FIELD_HEADING="Záhlaví" COM_CONVERTFORMS_FIELD_HEADING_DESC="Přidání názvu záhlaví pro skupinu vašich polí" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="HTML element nadpisu" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Vyberte typ záhlaví" COM_CONVERTFORMS_FIELD_HEADING_USELINK="Použít odkaz" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Zda má nadpis odkazovat na adresu URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Odkaz" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Zadejte odkaz, na který chcete uživatele přesměrovat." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Otevřít v novém panelu" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Povolíte otevření odkazu na nové kartě." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Nastavení velikosti písma nadpisu." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Zvolte druh písma pro záhlaví." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Výška řádku" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Nastavení výšky řádku v záhlaví." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Mezery mezi písmeny" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Nastavte mezery mezi písmeny v záhlaví." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Zarovnání obsahu" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Zvolte typ zarovnání záhlaví." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Zobrazit hodnoty" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Ujistěte se, že jste každé volbě nastavili jedinečnou hodnotu, jinak nebudete mít možnost zjistit, kterou možnost uživatel vybral" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Použít vypočet hodnot" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Výpočtové hodnoty se obecně používají pro výpočty. Představují číselnou hodnotu volby." COM_CONVERTFORMS_FIELD_DIVIDER="Oddělovač" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Odděluje části vašeho formuláře" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Styl okraje" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Zvolte styl okraje oddělovače." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Plná čára" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Přerušovaná čára" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Tečkovaná čára" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Šíře okraje" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Nastavte šíři okraje oddělovače. " COM_CONVERTFORMS_FIELD_BORDER_COLOR="Barva ohraničení" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Zvolte barvu okraje oddělovače." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Vrchní okraj" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Nastavte vrchní okraj oddělovače." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Spodní okraj" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Nastavte spodní okraj oddělovače." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="První den v týdnu" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Změnit první den v týdnu, který se zobrazuji při výběru z kalendáře." COM_CONVERTFORMS_ENTER_LABEL="Zadejte popis" COM_CONVERTFORMS_ADD_FIELD="Přidat pole" COM_CONVERTFORMS_ALL_FIELDS="Všechna pole" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Vzhled polí" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Povolit nebezpečné soubory" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Povolit nahrávání nebezpečných souborů.<br><br><b>Soubor je považován za nebezpečný, pokud:</b><br>- V názvu souboru se nachází nulový bajt.<br>- Přípona souboru je zakázaná: .php, py atd.<br>- V obsahu souboru je značka php.<br>- V obsahu souboru je značka short.<br>- V obsahu souboru je zakázaná přípona.<br><br>Tato možnost vás chrání také před nebezpečnými soubory obsaženými v komprimovaných souborech, jako jsou zip, rar, tar atd." COM_CONVERTFORMS_LABEL_POSITION="Umístění popisu" COM_CONVERTFORMS_LABEL_POSITION_DESC="Nastavte umístění popisu pole" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Nesprávná odpověď" COM_CONVERTFORMS_INVALID_TASK="Neplatná operace" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Prosím vyčkejte, než se dokončí nahrávání." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Maska není kompletní" COM_CONVERTFORMS_SUBMISSION_ID="ID záznamu" COM_CONVERTFORMS_SUBMISSION_DATE="Datum odběru" COM_CONVERTFORMS_SUBMISSION_STATUS="Stav odběru" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID odběru kampaně" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID formuláře záznamu" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID návštěvníka záznamu" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID uživatele záznamu" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Počítadlo odběrů" COM_CONVERTFORMS_FIELD_RATING="Hodnocení" COM_CONVERTFORMS_FIELD_RATING_DESC="Přidejte do formuláře hodnocení a umožněte uživatelům udělit jedno nebo více hodnocení." COM_CONVERTFORMS_FIELD_RATING_ICON="Ikona" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Vyberte jeden z osmi vestavěných vzorů ikon pro hodnotící pole." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Nastavení velikosti ikon hodnocení." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Vybraná barva" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Vyberte barvu, která bude použita při výběru ikony hodnocení nebo při najetí na ni." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Nevybraná barva" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Vyberte barvu, která se použije, pokud není vybrána ikona hodnocení." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Nejvyšší hodnocení" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Zadejte ikony pro nejvyšší hodnocení, které se budou zobrazovat." COM_CONVERTFORMS_FIELD_RANGESLIDER="Posuvník pro výber rozsahu" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Přidejte do formuláře posuvník pro výběr rozsahu a umožněte uživatelům snadno vybrat hodnotu." COM_CONVERTFORMS_FIELD_COLORPICKER="Nástroj pro výběr barev" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Pole pro výběr barvy umožňuje uživatelům zadat barvu buď pomocí grafického rozhraní pro výběr barvy, nebo zadáním vlastní barvy v hexadecimálním formátu." COM_CONVERTFORMS_MIN_CHARS="Minimální počet znaků" COM_CONVERTFORMS_MIN_CHARS_DESC="Minimální délka tohoto pole ve znacích. Zadejte 0 pro neomezený počet." COM_CONVERTFORMS_MAX_CHARS="Maximální počet znaků" COM_CONVERTFORMS_MAX_CHARS_DESC="Maximální délka tohoto pole ve znacích. Zadejte 0 pro neomezený počet." COM_CONVERTFORMS_MIN_WORDS="Minimální počet slov" COM_CONVERTFORMS_MIN_WORDS_DESC="Minimální délka tohoto pole ve slovech. Zadejte 0 pro neomezený počet." COM_CONVERTFORMS_MAX_WORDS="Maximální počet slov" COM_CONVERTFORMS_MAX_WORDS_DESC="Maximální délka tohoto pole ve slovech. Zadejte 0 pro neomezené zadání." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Prodlužte prosím tento text na délku %s znaků nebo více. Nyní je délka %s znaků." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Zkraťte prosím tento text na délku %s znaků nebo méně. Nyní je délka %s znaků." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Prodlužte prosím tento text na délku %s slov nebo více. Nyní je délka %s slov." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Zkraťte prosím tento text na délku %s slov nebo méně. Nyní je délka %s slov." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Zadejte minimální hodnotu posuvníku." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Zadejte maximální hodnotu posuvníku." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Zadejte krok pohybu posuvníku." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Hodnocení na poloviny jednotky" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Podpora hodnocení na poloviny jednotky, např.: 0,5, 1,5, 2,5." COM_CONVERTFORMS_FIELD_EDITOR="Editor pro bohatší text" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Nabídněte uživateli textový editor pro formátování odpovědí v tomto poli." COM_CONVERTFORMS_EDITOR_HEIGHT=" Výška editoru" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Nastavení výšky v pixelech" COM_CONVERTFORMS_EDITOR_SELECT="Editor Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Vyberte editor Joomla, který se má pro toto pole použít. <br><br>Pokud v seznamu nevidíte žádné editory, ujistěte se, že jste nainstalovali a aktivovali alespoň 1 zásuvný modul editoru Joomla prostřednictvím Správce zásuvných modulů Joomla." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Editor Joomla nebyl nalezen: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s exportovaných odběrů" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Stahování se spustí automaticky." COM_CONVERTFORMS_EXPORT_WORKING="Exportuji" COM_CONVERTFORMS_EXPORT_PROCESSING="Zpracováno %s z %s odběrů" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Nelze najít exportovaný soubor" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Nyní nastavte hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Omezte odesílání nevyžádaných formulářů pomocí hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Vyberte, zda chcete použít zaškrtávací políčko nebo neviditelnou verzi hCaptcha." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="Rozšíření PHP <b>fileinfo</b> je vyžadováno k určení typu mime nahrávaných souborů, ale není nainstalováno nebo se nepopužívá. Obraťte se na správce webhostingu, aby rozšíření zprovoznil." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Výchozí stav odběru" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Nastavení výchozího stavu každého nového odběru." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]���k��Ecomponents/com_convertforms/language/ca-ES/ca-ES.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Disseny" COM_CONVERTFORMS_BEHAVIOR="Comportament" COM_CONVERTFORMS_LIST="Llistat" COM_CONVERTFORMS_NO_RESULTS_FOUND="No s'ha trobat %s" COM_CONVERTFORMS_CREATE_NEW="Crear-ne un nou?" COM_CONVERTFORMS_EMAIL_ASCENDING="Correu electrònic ascendent" COM_CONVERTFORMS_EMAIL_DESCENDING="Correu electrònic descendent" COM_CONVERTFORMS_ACTIONS="Accions" COM_CONVERTFORMS_VIEW_LEADS="Veure contribucions" NRI_PLG_CONVERTFORMS="Connector Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Configuració Convert Forms" COM_CONVERTFORMS_LOADCSS="Carregar fulla d'estils" COM_CONVERTFORMS_LOADCSS_DESC="Selecciona-ho per carregar la fulla d'estils de l'extensió. Pots deshabilitar això si col·loques els teus estils personalitzats a una altra fulla d'estils, per exemple, el camp Codi Personalitzat o la fulla d'estils de la plantilla" COM_CONVERTFORMS_DEBUG="Depuració" COM_CONVERTFORMS_DEBUG_DESC="Activa aquesta opció per tenir una ajuda a l'hora de depurar errors i comportaments inesperats. Els missatges d'error s'enviaran a la consola del teu navegador (Pressiona F12) i a la carpeta Logs." COM_CONVERTFORMS_FORMS="Formularis" COM_CONVERTFORMS_FORM="Formulari" COM_CONVERTFORMS_NEW_FORM="Nou formulari" COM_CONVERTFORMS_EDIT_FORM="Editar formulari" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%sformularis copiats" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formularis publicats" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulari no publicat" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formularis reciclats" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formularis esborrats" COM_CONVERTFORMS_FORM_ASCENDING="Formulari ascendent" COM_CONVERTFORMS_FORM_DESCENDING="Formulari descendent" COM_CONVERTFORMS_FORM_SELECT="- Escull formulari -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publica creant un mòdul" COM_CONVERTFORMS_FORM_LEADS="Fins ara s'ha contestat a aquest formulari %s vegades" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publica emprant el codi curt: %s" COM_CONVERTFORMS_CAMPAIGN="Campanya" COM_CONVERTFORMS_CAMPAIGNS="Campanyes" COM_CONVERTFORMS_NEW_CAMPAIGN="Nova campanya" COM_CONVERTFORMS_EDIT_CAMPAIGN="Editar Campanya" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Escriu un nom per la campanya. Aquest nom no el podrà veure ningú més que tu." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campanyes copiades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campanyes no publicades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campanyes publicades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campanyes reciclades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campanyes esborrades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s respostes no publicades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s respostes publicades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s respostes reciclades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s respostes esborrades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s enviaments arxivats" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campanya ascendent" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campanya descendent" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Escull Campanya -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Escull la campanya per configurar la teva integració." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campanya canviada" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sincronitzar respostes" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Escull si vols que les teves respostes es sincronitzin a altres programes de tercers o si l'ha de recollir únicament la teva base de dades. <Br>NOTA: Si necessites integrar amb programes de tercers com MailChimp, Aweber, GetResponse, Active Campaign, etc instal·la el connector corresponent a la secció de connectors" COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campanyes esborrades" COM_CONVERTFORMS_CHOOSE_SERVICE="Escull un servei" COM_CONVERTFORMS_PENDING_LEADS="Esperant respostes" COM_CONVERTFORMS_SUBMISSIONS="Respostes" COM_CONVERTFORMS_SUBMISSION="Resposta" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Darrera resposta" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmat" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="No confirmat" COM_CONVERTFORMS_EDIT_CONVERSION="Editar resposta" COM_CONVERTFORMS_SUBMISSION_INVALID="No s'ha trobat la r.esposta" COM_CONVERTFORMS_NOT_AUTHORIZED="No estàs autoritzat a accedir a aquesta pàgina." COM_CONVERTFORMS_LEADS_ASC="Respostes ascendent" COM_CONVERTFORMS_LEADS_DESC="Respostes descendent" COM_CONVERTFORMS_LEADS_EXPORT="Exportar respostes" COM_CONVERTFORMS_ADDONS="Connectors" COM_CONVERTFORMS_INSTALL_ADDONS="Veure connectors instal·lats" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Per poder instal·lar Convert Forms hauràs d'entrar la teva clau de descàrrega a la configuració del connector Novarain Framework" COM_CONVERTFORMS_ADDONS_DESC="Els connectors expandeixen les funcionalitats de Convert Forms. Amb aquests connectors, pots connectar amb programari de tercers, integrar noves funcionalitats i que Convert Forms sigui inclús més potent." COM_CONVERTFORMS_LAST_YEAR="Darrer any" COM_CONVERTFORMS_THIS_YEAR="Aquest any" COM_CONVERTFORMS_LAST_MONTH="Darrer mes" COM_CONVERTFORMS_THIS_MONTH="Aquest mes" COM_CONVERTFORMS_LAST_WEEK="Darrera setmana" COM_CONVERTFORMS_THIS_WEEK="Aquesta setmana" COM_CONVERTFORMS_LAST_7_DAYS="Darrers 7 dies" COM_CONVERTFORMS_YESTERDAY="Ahir" COM_CONVERTFORMS_TODAY="Avui" COM_CONVERTFORMS_AVG_DAY="Mitja diària (aquest mes)" COM_CONVERTFORMS_PROJECTION="Projecció per aquest mes" COM_CONVERTFORMS_TOTAL="Total" COM_CONVERTFORMS_CHOOSE_FILE="Escull un arxiu .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Un nom únic i descriptiu t'ajudarà en el futur ja que apareixerà al taulell de control, analítiques, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Font de la imatge de fons" COM_CONVERTFORMS_IMAGE_DESC="Escull la font de la imatge de fons" COM_CONVERTFORMS_CUSTOM_URL="URL personalitzada" COM_CONVERTFORMS_BACKGROUND_URL="URL de la imatge de fons" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Escriu la URL personalitzada de la teva imatge" COM_CONVERTFORMS_BACKGROUND_FILE="Imatge de fons" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Escull la imatge a carregar." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Pots incloure una imatge que es mostrarà darrera del contingut del formulari. Escull <b>Carregar</b> per carregar una nova imatge o <b>URL personalitzada</b> per escriure una URL personalitzada. Per que aquesta opció funcioni, el color de fons ha de ser transparent." COM_CONVERTFORMS_FORM_BUILDER="Creador de formulari" COM_CONVERTFORMS_FIELD_TYPE="Tipus de camp" COM_CONVERTFORMS_FIELD_TYPE_DESC="L'atribut tipus de camp especifica el tipus d'element d'entrada a mostrar." COM_CONVERTFORMS_FIELD_LABEL="Etiqueta de camp" COM_CONVERTFORMS_FIELD_LABEL_DESC="L'etiqueta de camp estableix una etiqueta per un element d'entrada." COM_CONVERTFORMS_FIELD_NAME="Nom del camp" COM_CONVERTFORMS_FIELD_NAME_DESC="Especifica el nom de l'element d'entrada que s'utilitzarà per referenciar les dades del formulari un cop aquest s'envia. Utilitza aquesta opció també per mapejar els camps del formulari amb integració amb apps." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="El text que vols aparegui al camp, abans de que l'usuari escrigui alguna cosa." COM_CONVERTFORMS_REQUIRED_NAME="Camp requerit" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Si està activat, això garantirà que aquest camp s'hagi completat abans de permetre que s'enviï el formulari." COM_CONVERTFORMS_FIELDS="Camps" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Estas utilitzant la versió <b>Gratuïta</b> que només permet un camp de correu electrònic. <b>Millora a la versió Pro</b> per poder administrar camps il·limitats." COM_CONVERTFORMS_GENERAL="General" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Alineament text del camp" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Alineament text del formulari" COM_CONVERTFORMS_INPUT_COLOR="Color del text del camp" COM_CONVERTFORMS_INPUT_BGCOLOR="Color del fons del camp" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Color de la vora del camp" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Afegeix una ombra interna al camp d'entrada" COM_CONVERTFORMS_INPUT_FONT_SIZE="Mida de la font del camp" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Mida de la font del camp" COM_CONVERTFORMS_VPADDING_SIZE="Encoixinat (Padding) vertical" COM_CONVERTFORMS_HPADDING_SIZE="Encoixinat (Padding) Horitzontal" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Amplada màxima de la caixa" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Estableix una amplada màxima personalitzada per aquesta caixa o fes que ocupi tot l'ample de pantalla. Tingues en compte que aquesta és l'amplada màxima, això significa que el formulari sempre s'adaptarà a àrees més petites." COM_CONVERTFORMS_FORM_WIDTH="Amplada màxima personalitzada" COM_CONVERTFORMS_FORM_WIDTH_DESC="Estableix una amplada màxima de la teva elecció." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Elimina l'encoixinat (Padding) per defecte" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Elimina l'encoixinat (Padding) per defecte entre l'àrea de contingut i les vores de la caixa del formulari." COM_CONVERTFORMS_FORM_BORDER_STYLE="Estil de vora" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Aplica una vora al voltant del formulari" COM_CONVERTFORMS_FORM_BORDER_COLOR="Color de la vora" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Color de la vora del formulari" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Amplada de la vora" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Amplada de la vora del formulari" COM_CONVERTFORMS_BOX_RADIUS="Radi de la caixa" COM_CONVERTFORMS_BORDER_RADIUS="Radi de la vora" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Escriu la mida del radi de la vora" COM_CONVERTFORMS_COLLECT_LEADS_USING="Recull respostes utilitzant la campanya" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Les respostes recollides per aquest formulari s'associaran amb la campanya seleccionada. Pots administrar les campanyes a la secció de campanyes." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Acció de tramesa exitosa" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Escull l'acció que vols que es dugui a terme després d'una tramesa exitosa" COM_CONVERTFORMS_DISPLAY_MSG="Mostrar missatge" COM_CONVERTFORMS_REDIRECT_USER="Redreçar l'usuari" COM_CONVERTFORMS_SUCCESS_TEXT="Missatge després de l'èxit" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Escriu el missatge que vols mostrar a l'usuari després de ser afegit al llistat amb èxit." COM_CONVERTFORMS_SUCCESS_URL="Redreçar URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Escriu la URL a on vols redreçar l'usuari després de ser afegit al llistat amb èxit." COM_CONVERTFORMS_PASS_DATA="Passar les dades de la resposta per redreçar la URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Estil del botó d'enviar" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Estila el teu botó amb vistosos efectes." COM_CONVERTFORMS_BTN_SHADOW_DESC="Afegeix una ombra exterior al botó" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Color del text al passar per sobre (Hover)" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Color del text al passar per sobre (Hover)" COM_CONVERTFORMS_CUSTOM_CSS="CSS personalitzat" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Estila el formulari amb el teu propi CSS.<br><br>Per ajudar-te a estilar el formulari, el codi que afegeixis a aquesta àrea s'executarà també a l'editor." COM_CONVERTFORMS_CLASS_SUFFIX="Suffix de classe" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Suffix de classe" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Alçada de l'àrea de text" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="L'alçada de l'àrea de text especifica l'alçada visible d'un àrea de text. En línies." COM_CONVERTFORMS_CHOICES="Opcions" COM_CONVERTFORMS_CHOICES_DESC="Afegeix opcions pel camp del formulari." COM_CONVERTFORMS_FIELD_VALUE="Valor per defecte" COM_CONVERTFORMS_FIELD_VALUE_DESC="Escriu el text del Valor per defecte del camp" COM_CONVERTFORMS_HIDE_LABELS="Amagar etiqueta" COM_CONVERTFORMS_HIDE_LABELS_DESC="Escull aquesta opció per amagar l'etiqueta del camp del formulari" COM_CONVERTFORMS_IMAGE_SOURCE="Font de la imatge" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Pots incloure una imatge que es mostrarà amb el contingut del formulari. Escull <b>Carregar</b> per carregar una nova imatge o <b>URL personalitzada</b> per escriure una URL personalitzada." COM_CONVERTFORMS_IMAGE_URL="URL de la imatge" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Amaga la imatge en les pantalles petites" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="A les pantalles petites, com les dels telèfons mòbils o finestres modals es veurà més bonic. Per reduir la mida del modal, pots amagar la imatge amb aquesta opció." COM_CONVERTFORMS_HORIZONTAL_POSITION="Posició horitzontal" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Posició horitzontal" COM_CONVERTFORMS_VERTICAL_POSITION="Posició vertical" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Posició vertical" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Amplada de la imatge" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Estableix l'amplada de la imatge" COM_CONVERTFORMS_BUTTON_ALIGN="Alineació del botó" COM_CONVERTFORMS_FORM_POSITION="Posició del formulari" COM_CONVERTFORMS_FORM_POSITION_DESC="Estableix la posició relativa al contenidor de text del formulari " COM_CONVERTFORMS_FORM_SIZE="Mida del contenidor del formulari" COM_CONVERTFORMS_COLUMNS_DESC="Especifica quantes columnes s'utilitzaran. 6 columnes ocupen el 50% de l'amplada." COM_CONVERTFORMS_MESSAGE="Missatge de text" COM_CONVERTFORMS_MESSAGE_DESC="Escriu el missatge del text del formulari" COM_CONVERTFORMS_IMAGE_POSITION="Posició de la imatge" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Estableix la posició relativa al text de la imatge" COM_CONVERTFORMS_FOOTER="Peu del formulari" COM_CONVERTFORMS_BUTTON_TEXT="Text del botó" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Escriu el text de l'etiqueta del botó" COM_CONVERTFORMS_BTN_FONT_SIZE="Mida del text del botó" COM_CONVERTFORMS_IMAGE_SIZE="Mida del contenidor d'imatge" COM_CONVERTFORMS_BODY_FONT="Familia de fonts" COM_CONVERTFORMS_BODY_FONT_DESC="Escull la família de fonts que s'utilitzarà per al formulari. Tingues en compte que carregar fonts no estàndard com Google Fonts impactarà la velocitat de la teva pàgina. Escull Defecte per utilitzar la font per defecte del teu lloc." COM_CONVERTFORMS_EMAIL="Correu electrònic" COM_CONVERTFORMS_DATE="Data" COM_CONVERTFORMS_CREATED="Data de creació" COM_CONVERTFORMS_SUBMISSION="Resposta" COM_CONVERTFORMS_PREVIEW_SUCCESS="Previsualitza el missatge d'exit" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Aquesta versió es mostrarà en pantalles per sobre dels 990px" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Aquesta versió es mostrarà en pantalles d'entre 768 i 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Aquesta versió es mostrarà en pantalles per sota dels 768px" COM_CONVERTFORMS_DEVICE_DESKTOP="Escriptori" COM_CONVERTFORMS_DEVICE_TABLET="Tauleta" COM_CONVERTFORMS_DEVICE_MOBILE="Mòbil" COM_CONVERTFORMS_RESET_FORM="Reiniciar formulari" COM_CONVERTFORMS_RESET_FORM_DESC="Reiniciar el formulari després d'una tramesa correcta" COM_CONVERTFORMS_HIDE_FORM="Ocultar formulari" COM_CONVERTFORMS_HIDE_FORM_DESC="Oculta el formulari després d'una tramesa correcta" COM_CONVERTFORMS_TEMPLATES="Plantilles" COM_CONVERTFORMS_TEMPLATES_SELECT="Escull una plantilla per començar" COM_CONVERTFORMS_TEMPLATES_BLANK="Començar de zero" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Començar de zero un nou formulari" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Barra lateral" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Barres" COM_CONVERTFORMS_LABELS_COLOR="Color de text de l'etiqueta" COM_CONVERTFORMS_LABELS_FONT_SIZE="Mida de la font de l'etiqueta" COM_CONVERTFORMS_IMAGE_ABOVE="Per sobre del text" COM_CONVERTFORMS_IMAGE_BELOW="Per sota del text" COM_CONVERTFORMS_IMAGE_RIGHT="A la dreta del text" COM_CONVERTFORMS_IMAGE_LEFT="A l'esquerra del text" COM_CONVERTFORMS_FLAT="Plà" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Gradient" COM_CONVERTFORMS_EMAILS_DESC="Enviar notificacions per correu electrònic quan un usuari respon a un formulari." COM_CONVERTFORMS_EMAILS="Notificacions per correu electrònic" COM_CONVERTFORMS_EMAILS_REPLY_TO="Correu electrònic de resposta" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Nom de resposta" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Correu electrònic del remitent" COM_CONVERTFORMS_EMAILS_FROM="Nom del remitent" COM_CONVERTFORMS_EMAILS_RECIPIENT="Enviar a l'adreça de correu electrònic" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Escriu les adreces de correu electrònic on es rebran les notificacions de respostes. Per notificar a diversos correus electrònics, separa les adreces amb una coma." COM_CONVERTFORMS_EMAILS_SUBJECT="Assumpte del correu electrònic" COM_CONVERTFORMS_EMAILS_BODY="Missatge" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Vols notificacions múltiples?<br><a href='#' data-pro-only='Unlimited Notifications'>Millora a PRO</a>per desbloquejar-les." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Adjunts" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Ruta relativa a l'arrel del teu espai web d'un arxiu a adjuntar. Utilitza comes per definir-ne més d'una." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Has perdut algún connector?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="En cas que trobis a faltar algun connector d'integració per la teva app favorita, fes-nos-ho saber i l'afegirem a la col·lecció de connectors de Convert Forms." COM_CONVERTFORMS_API_ENABLE="Activar API JSON" COM_CONVERTFORMS_API_DESC="l'API JSON et permet recuperar contingut de Convert Forms amb peticions HTTP." COM_CONVERTFORMS_API_KEY="Clau secreta" COM_CONVERTFORMS_API_KEY_DESC="Aquesta clau secreta s'utilitza per autentificar tasques crítiques com feines CRON o l'API JSON. Si ho deixes en blanc totes les tasques que requereixin autentificació d'usuari es deshabilitaran." COM_CONVERTFORMS_IMAGE_ALT="Imatge alternativa" COM_CONVERTFORMS_IMAGE_ALT_DESC="El text alternatiu a la imatge" COM_CONVERTFORMS_CUSTOM_CODE="Codi personalitzat" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Insereix codi personalitzat al final del formulari. Accepta HTML, CSS i JavaScript.<br><br>Pel JavaScript, asegura't que envolcalles el codi amb l'etiqueta <script>.<br><br>El codi afegit a aquesta area no s'executa a l'editor." COM_CONVERTFORMS_ISSUES="Problemes" COM_CONVERTFORMS_ISSUES_DETECTED=" Problemes detectats a la resposta: %s" COM_CONVERTFORMS_CREATED="Data de creació" COM_CONVERTFORMS_MODIFIED="Data de modificació" COM_CONVERTFORMS_IP="Adreça IP del remitent" COM_CONVERTFORMS_USER_ID="ID del remitent" COM_CONVERTFORMS_USER_USERNAME="Nom d'usuari del remitent" COM_CONVERTFORMS_VISITOR_ID="ID del visitant" COM_CONVERTFORMS_FORM_NAME="Nom del formulari" COM_CONVERTFORMS_CAMPAIGN_NAME="Nom de la campanya" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Columnes" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Pes activar camps específics del formulari, primer escull un formulari a la barra de filtres." COM_CONVERTFORMS_UNTITLED_BOX="Formulari sense títol" COM_CONVERTFORMS_SELECT_LAYOUT="Escull el teu disseny" COM_CONVERTFORMS_SHOW_LAYOUTS="Mostrar dissenys" COM_CONVERTFORMS_HIDE_LAYOUTS="Amagar dissenys" COM_CONVERTFORMS_FIELDS_COPY="Duplicar camp" COM_CONVERTFORMS_FIELDS_DELETE="Esborrar camp" COM_CONVERTFORMS_FIELDGROUP_COMMON="Camps comuns" COM_CONVERTFORMS_FIELDGROUP_FANCY="Camps vistosos" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Camps avançats" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Afegeix text lliure personalitzat o codi HTML. Sense límits!" COM_CONVERTFORMS_FIELD_TEXT="Caixa de text" COM_CONVERTFORMS_FIELD_TEXT_DESC="Un camp d'una única linia de text" COM_CONVERTFORMS_FIELD_TEXTAREA="Àrea de text" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Com el camp caixa de tet, però pot acomodar una entrada d'usuari de més d'una línia" COM_CONVERTFORMS_FIELD_NUMBER="Número" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Una caixa de text que només accepta números" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Pas" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="La quantitat que es modificarà el valor quan es pressioni una fletxa" COM_CONVERTFORMS_FIELD_NUMBER_MIN="Valor mínim" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="El valor mínim que permetrà el camp" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Valor màxim" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="El valor màxim que permetrà el camp" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Atura l'spam a les respostes als formularis amb Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Estableix el teu lloc web i clau secreta a la pàgina de configuració." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configura reCAPTCHA ara" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="El color de tema del giny" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="La mida del giny" COM_CONVERTFORMS_FIELD_DROPDOWN="Desplegable" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Un llistat que permet fer una selecció d'un desplegable" COM_CONVERTFORMS_FIELD_RADIO="Butons rodons" COM_CONVERTFORMS_FIELD_RADIO_DESC="Un llistat que permet fer una selecció a un botó rodó" COM_CONVERTFORMS_FIELD_URL="Lloc web / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Accepta una URL formatada correctament que comenci tant amb http:// https://" COM_CONVERTFORMS_FIELD_URL_INVALID="URL invàlida" COM_CONVERTFORMS_FIELD_COUNTRY="País" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Llistat de tots els països coneguts" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detectar país del visitant" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Si està activat, el formulari intentarà detectar i preomplir el país del visitant. Requereix que el connector TGeoIP estigui instal·lat." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Excloure països" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Divisa" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Llistat de totes les divises conegudes" COM_CONVERTFORMS_FIELD_SUBMIT="Botó d'enviar" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="El botó que enviarà la resposta" COM_CONVERTFORMS_FIELD_HIDDEN="Camp ocult" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Un camp invisible per l'usuari" COM_CONVERTFORMS_FIELD_EMAIL="Adreça de correu electrònic" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Una caixa de text que només accepta una adreça de correu electrònic vàlida" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Termes del servei" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Requereix a l'usuari acceptar els teus termes de servei abans de poder enviar la resposta al formulari" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Text dels termes del servei" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Aquest és el text que apareix just abans de la caixa de confirmació" COM_CONVERTFORMS_FIELD_CHECKBOX="Caixes de confirmació" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Un llistat que permet seleccions múltiples de les caixes de confirmació" COM_CONVERTFORMS_FIELD_REQUIRED="Requerit" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Correu electrònic invàlid" COM_CONVERTFORMS_FIELD_SIZE="Mida del camp" COM_CONVERTFORMS_FIELD_SIZE_DESC="Escull la mida per defecte dels camps del formulari" COM_CONVERTFORMS_FIELD_TEL="Número de telèfon" COM_CONVERTFORMS_FIELD_TEL_DESC="Permet a l'usuari escriure un número de telèfon" COM_CONVERTFORMS_FIELD_DATETIME="Data / hora" COM_CONVERTFORMS_FIELD_DATETIME_DESC="El selector de data / hora permet escollir una data concreta, diverses dates o inclús un interval de dates" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Format de data" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="EL format de la data mostrada. Exemples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Mostrar temporitzador" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Activa el temporitzador. Si està activat, asegurat d'introduir els caracters d'hora (H:i) al format del camp data." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Data mínima" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="La data mìnima/més antiga permesa a la selecció. Suporta formats de data relatius com: today (avui), tomorrow (demà), +5 day (+5 dies), +2 week (+2 setmanes)" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Data màxima" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="La data màxima/més futura permesa a la selecció. Suporta formats de data relatius com: today (avui), tomorrow (demà), +5 day (+5 dies), +2 week (+2 setmanes)" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Mode de selecció de data" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Permet a l'usuari escollir una data concreta, diverses dates o inclús un interval de dates" COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24h" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Mostra el temporitzador en format de 24h sense la selecció AM/PM." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Salt de minuts" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Ajusta el salt del minuter al temporitzador" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Mostrar inline" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Mostra el calendari inline enlloc d'un emergent." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Tema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Escull el tema del calendari" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Format de data invàlid - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Deshabilita el selector de data nadiu del mòbil" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Si està activat, els usuaris de mòbil veuran el selector de data de Convert Forms enlloc del nadiu del dispositiu." COM_CONVERTFORMS_CSS_CLASSES="Classe CSS" COM_CONVERTFORMS_CSS_CLASSES_DESC="Afegeix classes CSS al contenidor d'entrada. Això s'utilitzarà bàsicament per disseny." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Classe CSS d'entrada" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Afegeix classes CSS a l'element d'entrada. Utilitza aquesta opció per estilar l'entrada mateixa." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Deshabilitar l'autocompletat del navegador" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Per defecte, els navegadors recorden informació que l'usuari envia a través de camps d'entrada. Per desactivar l'autocompletat als formularis activa aquesta opció." COM_CONVERTFORMS_FIELD_DESCRIPTION="Text d'ajuda" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Mostra el text d'ajuda al costat d'aquest camp." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Comprovació DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Valida l'adreça de correu electrònic subministrada amb una comprovació DNS." COM_CONVERTFORMS_FIELD_CONFIRM="Confirmar" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Un camp per assegurar que dos camps coincideixen" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Clau del camp de confirmació" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Escriu la clau que el camp utilitzarà per assegurar que els valors coincideixen" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="El camp no està correctament configurat" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Els valors del camp no coincideixen" COM_CONVERTFORMS_HIDE_TEXT="Amagar text" COM_CONVERTFORMS_HIDE_TEXT_DESC="Amaga el text després d'una tramesa correcta" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="No hi ha un camp correu electrònic al formulari" COM_CONVERTFORMS_INVALID_LEAD="No es pot validar l'objecte enviat" COM_CONVERTFORMS_EXCEL_SECURITY="Seguretat d'Excel" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Si està activat, als valors exportats a un arxiu CSV que comencin amb =, + - o @ se'ls prefixarà una tabulació per evitar qualsevol injecció CSV en obrir l'arxiu exportat amb Excel.<br><br>Desactiva aquesta opció només si estàs 100% segur que les dades són confiables o si estàs tenint problemes en importar l'arxiu CSV a una aplicació de tercers." COM_CONVERTFORMS_CHOICE_LAYOUT="Selecció de disseny" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Escull el disseny per mostrar les opcions del camp" COM_CONVERTFORMS_CHOICE_1_COLUMN="Una columna" COM_CONVERTFORMS_CHOICE_2_COLUMN="Dues columnes" COM_CONVERTFORMS_CHOICE_3_COLUMN="Tres columnes" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Al costat" COM_CONVERTFORMS_REQUIRED_INDICATION="Indicació de camp requerit" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indica que el camp és requerit amb un asterisc al costat de l'etiqueta. Requereix que l'etiqueta del camp no estigui oculta." COM_CONVERTFORMS_INPUT_MASK="Màscara d'entrada" COM_CONVERTFORMS_INPUT_MASK_DESC="Ajuda a l'usuari a introduir dades assegurant un format predefinit.<br><br><b>Sintaxi:</b><br>9: Numèric (0-9)<br>a: Alfabètic (a-z o A-Z)<br>A: Alfabètica majúscula (A-Z)<br>*: Alfanumèric (0-9, a-Z, A-Z)<br>&: Alfanumèrica majúscula (0-9, A-Z)<br><br><b>Exemples</b>:<br>Telèfon: +34 (999)-9999<br>Data: 99/99/9999<br>Codi postal: 99999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Data enviada per l'usuari" COM_CONVERTFORMS_NO_SUBMITTED_DATA="No s'ha trobat data enviada" COM_CONVERTFORMS_LEAD_INFO="Informació de trames" COM_CONVERTFORMS_NOTES="Notes" COM_CONVERTFORMS_DATE_RANGE="Interval de data" COM_CONVERTFORMS_START_DATE="Data d'inici" COM_CONVERTFORMS_END_DATE="Data de final" COM_CONVERTFORMS_PERIOD="Període" COM_CONVERTFORMS_PERIOD_SELECT="- Escull període -" COM_CONVERTFORMS_HONEYPOT="Activar l'Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Activa-ho per afegir un camp Honeypot al formulari que només és visible als bots. D'aquesta manera, quan el camp honeypot s'ompli el formulari sabrà automàticament que l'usuari era un robot de contingut brossa.<br><br>A moltes pàgines, aquest parany és suficient per evitar les entrades de ontingut brossa. Si així i tot estàs rebent contingut brossa, o si de qualsevol manera vols prendre una mesura addicional contra ell, reCAPTCHA és una gran opció." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Pujar arxiu" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Dota a l'usuari de la capacitat de pujar arxius" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="La carpeta temporal del vostre lloc està configurada en <b>%s</b> però no es pot escriure. Especifiqueu una carpeta temporal que es pugui escriure." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Carpeta de destinació de les pujades" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Especifiqueu una carpeta de destinació per als fitxers penjats. <br><br><b>Automàtic:</b>els fitxers es penjaran a la carpeta /media/com_convertforms/uploads. A més, s'afegirà un prefix aleatori al començament de cada nom de fitxer per augmentar la seguretat.<br><br><b>Personalitzat:</b> Especifiqueu una carpeta de destinació personalitzada i una convenció de denominació." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Carpeta personalitzada de destinació de les pujades" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Introduïu el camí relatiu a l'arrel del vostre lloc web on s'emmagatzemaran els fitxers penjats. Per canviar el nom dels fitxers penjats, utilitzeu les següents etiquetes intel·ligents. <br><br><b>{file.basename}</b>: cat.jpg <br><b>{file.extension}</b>: jpg <br><b>{file.filename}</b>: cat <b><br>{file.index}</b>: número d'índex<br><br>. També pot acceptar etiquetes intel·ligents globals com {year }, {month}, {user.id} o {random} per crear una destinació de pujada encara més dinàmica." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limit d'arxius" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Quants arxius es poden carregar? Escriu 0 per no limitar." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Límit de pes de l'arxiu" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configura el pes màxim en megabytes de cada arxiu pujat. Escriu 0 per no limitar.<br><br>El pes màxim dels arxius pujats admès pel teu servidor és:<b>%s</b>" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Tipus d'arxiu permesos" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Introduïu una llista separada per comes de tipus de fitxer permesos com: </b>.jpg, .gif, .png, .pdf <br><br> Podeu introduir tipus multimèdia com: application/pdf, images/*, video/* o podeu barrejar tots dos: application/*, .png, .jpg<br><br>Nota: Això no és infal·lible i es pot enganyar, si us plau, recordeu que sempre hi ha un perill en permetre que els usuaris pugin fitxers. <br><br>Cal instal·lar l'extensió PHP <b>fileinfo </b>per endevinar." COM_CONVERTFORMS_FIELD_FILTER="Filtre" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtra l'entrada de l'usuari segons els filtres a continuació.<br><b>Text</b>: Converteix l'entrada en una cadena de text pla; elimina totes les etiquetes / atributs.<br><b>HTML segur</b>: Accepta només elements HTML segurs.<br><b>Alfanumèric</b>: Només permet a-z i 0<br><b>Paraula</b>: Només accepta els caràcters a-z i els guions baixos<br><b>Sencer</b>: Només utilitza el primer valor numèric<br><b>Flotant</b>: Accepta només els caràcters a-z i els guions baixos" COM_CONVERTFORMS_UPLOAD_ERROR="Formulari o clau de camp invàlid" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Camp de pujada invàlid" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Arxiu invàlid o no suportat" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Arxius que pots pujar: %d" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Arrossega aquí els arxius o" COM_CONVERTFORMS_UPLOAD_BROWSE="Navega" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="El fitxer temporal %s no es troba. Si us plau, torna a pujar." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="La carpeta de pujada %s no existeix o no s'hi pot escriure" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="L'arxiu pesa massa ({{filesize}}MB). Pes d'arxiu màxim: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="No pots pujar arxius d'aquest tipus." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="El teu navegador no suporta pujar arxius arrossegant-los." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "El servidor ha contestat amb el codi {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel·lar pujada" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Estàs segur que vols cancel·lar aquesta pujada?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Eliminar arxiu" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="No pots pujar més arxius" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto esborrar arxius" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Si estàs rebent moltes pujades, l'espai utilitzat pels arxius pujats pot créixer ràpidament, requerint neteges regulars per alliberar-ne.<br><br>Aquesta opció ajuda a auto esborrar els arxius emmagatzemats a la carpeta de pujades al final d'un període indicat.<br><br>Per exemple, escriu 3, per auto esborrar els arxius de més de 3 dies d'antiguitat o 0 si els vols guardar per sempre.<br><br>NOTA: Cal que el connector Convert Forms Uploaded Files Cleaner estigui activat i la URL del Cron Job respectiu configurada al teu servidor." COM_CONVERTFORMS_READONLY="Només lectura" COM_CONVERTFORMS_READONLY_DESC="Evita escriure en aquest camp" COM_CONVERTFORMS_PHPSCRIPT="Scripts PHP" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Mostra del formulari" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="L'script PHP afegit a aquesta àrea s'executarà just abans de mostrar el formulari.<br><br>L'interès principal a aquesta àrea és la variable <b>$formLayout</b> (cadena) que conté el codi HTML del formulari.<br><br>Per accedir a la configuració del formulari utilitza la variable <b>$form</b> (array).<br><br>No cal que incloguis les etiquetes <?php i ?>" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Processat del formulari" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="El codi PHP afegit a aquesta àrea s'executarà just abans que les dades del formulari es guardin a la base de dades independentment que siguin vàlides o no..<br><br>Això és bastant útil quan necessitat processar càlculs, fer validacions avançades o modificar el valor d'un camp. Qualsevol modificacions a la variable <b>$post</b> (Array) que es facin aquí, es reflectiran a la resposta.<br><br>Per accedir a la configuració del formulari utilitza la variable <b>$form</b> (array).<br><br>No cal que incloguis les etiquetes <?php i ?>" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Després de processar el formulari" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="El codi PHP afegit a aquesta àrea s'executarà després que les dades del formulari s'enviïn i es guardin a la base de dades.<br><br>Això és bastant útil quan intentes fer alguna tasca extra com enviar dades de manera silenciosa a una altra URL. Pots accedir a la resposta final utilitzant la variable <b>$submission</b> (Object).<br><br>Per accedir a la configuració del formulari utilitza la variable <b>$form</b> (array).<br><br>No cal que incloguis les etiquetes <?php i ?>" COM_CONVERTFORMS_PHPSCRIPT_NOTE="Els scripts PHP no s'executen a l'editor per evitar problemes amb el previsualitzador de formulari. Sempre cal provar a la part pública." COM_CONVERTFORMS_FIELD_PASSWORD="Contrasenya" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Ofereix a l'usuari una manera d'entrar una contrasenya de manera segura" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Tipus camp de confirmació" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Escull entre text i contrasenya pel tipus d'entrada del camp de confirmació." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Preparar formulari" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="L'script PHP afegit a aquesta àrea s'executarà just abans de preparar i enviar a la funció de mostrar formulari les dades.<br><br>L'interès principal a aquesta àrea és la variable <b>$form</b> (Array) que conté la configuració del formulari.<br><br>No cal que incloguis les etiquetes <?php i ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%sja és membre." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s sembla falsa o invàlida, escriu una adreça de correu electrònic real." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: No s'ha carregat l'script de Google reCAPTCHA. Assegurat que el teu navegador no l'està bloquejant o contacta amb l'administrador del lloc." COM_CONVERTFORMS_ACCESS_FORMS="Accés a formularis" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Permet als usuaris del grup administrar els formularis." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Permet respostes" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Permet als usuaris del grup administrar respostes." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Permetre campanyes" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Permet als usuaris del grup administrar campanyes. Activa això si et trobes problemes amb les respostes amb contingut brossa." COM_CONVERTFORMS_CSRF_CHECK="Utilitza el Token Joomla! CSRF" COM_CONVERTFORMS_CSRF_CHECK_DESC="Afegeix una capa de protecció extra als teus formularis verificant totes les peticions AJAX amb tokens CSRF.<br><br>Si actives això i estàs utilitzant un mecanisme de cache que diposita tota la sortida de la pàgina com per exemple el connecto Joomla! Page Cache o un proxy caché com CloudFlare o Sucuri, pots experimentar problemes amb la tramesa del formulari." COM_CONVERTFORMS_THANK_YOU_MESSAGE="S'ha tramès la resposta amb èxit" COM_CONVERTFORMS_SECRET_SET="Configura una clau secreta per poder utilitzar l'optin endpoint." COM_CONVERTFORMS_SECRET_NO="No s'ha subministrat una clau secreta a la URL" COM_CONVERTFORMS_SECRET_WRONG="Clau secreta subministrada a la URL incorrecta" COM_CONVERTFORMS_SECURITY="Seguretat" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Para les respostes de contingut brossa utilitzant el reCAPTCHA Invisible de Google" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Distintiu" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Posició del distintiu reCAPTCHA. 'inline' et permet posicionar-lo amb CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Inferior dreta" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Inferior esquerra" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Respostes" COM_CONVERTFORMS_SUBMISSIONS_LIST="Llistat de respostes" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Mostrar només confirmat" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Activa això per mostrar només respostes confirmades." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Amaga valors buits" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Activa aquesta opció per amagar els camps amb valors buits." COM_CONVERTFORMS_SELECT_FORM="Escull formulari" COM_CONVERTFORMS_SELECT_FORM_DESC="Escull el formulari del qual mostrar-ne respostes" COM_CONVERTFORMS_SELECT_FORM_DESC2="Escull el formulari a mostrar" COM_CONVERTFORMS_LIST_LIMIT="Límit de pàgina" COM_CONVERTFORMS_LIST_LIMIT_DESC="Quantitat de respostes a mostrar per pàgina. Escriu 0 per no limitar." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Veure només les pròpies" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="A pesar que pots mostrar una llista amb respostes de diferents usuaris, si aquesta opció està activada, al visitant només se li permetrà accedir a la pàgina de detalls de les seves respostes.<br><br>Es requereix al visitant iniciar sessió al seu compte." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Mostrar paginació" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Si el total de respostes excedeix el límit de pàgina, es mostraran enllaços de paginació sota la llista de respostes" COM_CONVERTFORMS_ORDER="Ordenar respostes" COM_CONVERTFORMS_ORDER_DESC="L'ordre en que es mostraran les respostes" COM_CONVERTFORMS_ORDER_RECENT="Primer les més recents" COM_CONVERTFORMS_ORDER_OLDEST="Primer les més antigues" COM_CONVERTFORMS_ORDER_RANDOM="Ordre aleatori" COM_CONVERTFORMS_FILTER_USER="Mostrar respostes de" COM_CONVERTFORMS_FILTER_USER_DESC="Escull per filtrar les respostes de l'usuari que l'ha fet.<br><br><b>Usuari amb sessió iniciada</b><br>Mostra les respostes de l'usuari conectat actualment.<br><br><b>Tots els usuaris</b><br>Mostra totes les respostes.<br><br><b>Usuaris específics</b><br>Especifica els remitents per filtrar les respostes." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Usuari amb sessió iniciada" COM_CONVERTFORMS_FILTER_USER_ALL="Tots els usuaris" COM_CONVERTFORMS_FILTER_USER_SELECT="Usuaris específics" COM_CONVERTFORMS_SET_USERS="IDs d'usuari" COM_CONVERTFORMS_SET_USERS_DESC="Escriu l'ID d'usuari de Joomla! per filtrar les respostes. Utilitza comes per separar diversos IDs." COM_CONVERTFORMS_LOAD_CSS="Carregar fulla d'estils" COM_CONVERTFORMS_LOAD_CSS_DESC="Desactiva aquesta opció si no vols carregar l'arxiu CSS de Convert Forms." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Disseny" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Escull el disseny que s'utilitzarà per mostrar les respostes a la part pública. També pots crear els teus propis dissenys a la plantilla." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Tipus de disseny" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Tipus de disseny" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Plantilla" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Escull plantilla" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Escull la plantilla per mostrar les respostes. Aquesta plantilla s'utilitzarà tant per la llista i la vista en detall.<br><br>Pots crear els teus overrides de la plantilla a la teva plantilla." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Disseny del contenidor" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="El disseny HTML principal de la llista de respostes. No eliminis l'etiqueta {submissions} d'aquí, ja que és substitueix amb la sortida de dades." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Disseny en fila" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="El disseny HTML de cada resposta es mostra al disseny del contenidor." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Disseny de detalls" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="El disseny HTML de la pàgina de detalls de la resposta" COM_CONVERTFORMS_FIELD_EMPTYSPACE="Espai buit" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Afegeix un espai buit al teu formulari" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Espai buit" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Estableix un buit en píxels vertical entre els camps" COM_CONVERTFORMS_FIELD_HEADING="Encapçalament" COM_CONVERTFORMS_FIELD_HEADING_DESC="Afegeix un títol d'encapçalament per agrupar els teus camps" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Element Títol HTML" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Escull un tipus d'encapçalament." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Utilitza enllaç" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Hauria d'apuntar el punt d'encapçalament a un URL?" COM_CONVERTFORMS_FIELD_HEADING_LINK="Enllaç" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Escriu l'enllaç al que redirigir a l'usuari." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Obrir en pestanya nova" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Activa obrir l'enllaç a una nova pestanya." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Escull la mida de la font per l'encapçalament." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Escull la familia de font per l'encapçalament." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Alçada de línia" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Escull l'alçada de línia per l'encapçalament" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Separació entre lletres" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Estableix la separació entre lletres de l'encapçalament." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Alineació del contingut" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Escull l'alineació de l'encapçalament." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Mostrar valors" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Assegurat que fas servir un valor únic per cada opció o no tindràs manera de saber quina opció ha escollit un usuari" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Utilitza valors de càlcul" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Els valors de càlcul habitualment s'utilitzen per calcular. Representa el valor numèric d'una opció." COM_CONVERTFORMS_FIELD_DIVIDER="Divisor" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divideix les seccions del teu formulari" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Estil de vora" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Escull l'estil de la vora del divisor." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Sòlid" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Discontinua" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Puntejat" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Amplada de la vora" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Estableix l'amplada de la vora del divisor." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Color de la vora" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Estableix el color de la vora del divisor." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Marge superior" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Estableix el marge superior del divisor." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Marge inferior" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Estableix el marge inferior del divisor." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Primer dia de la setmana" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Canvia el primer dia de la setmana presentat al calendari en el selector de data." COM_CONVERTFORMS_ENTER_LABEL="Escriu etiqueta" COM_CONVERTFORMS_ADD_FIELD="Afegeix camp" COM_CONVERTFORMS_ALL_FIELDS="Tots els camps" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Disseny de camps" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Permet arxius no segurs" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Permet pujar arxius insegurs.<br><br><b>Es considera que un arxiu és insegur quan:</b><br>- Hi ha un byte nul al nom d'arxiu.<br>- L'extensió de l'arxiu està prohibida: .php, .py etc.<br>- Hi ha una etiqueta php al contingut de l'arxiu.<br>- Hi ha una etiqueta curta al contingut de l'arxiu.<br>- Hi ha una extensió prohibida a qualsevol lloc del contingut.<br><br>Aquesta opció també et protegeix d'arxius insegurs inclosos a arxius comprimits com zip, rar, tar, etc." COM_CONVERTFORMS_LABEL_POSITION="Posició d'etiqueta" COM_CONVERTFORMS_LABEL_POSITION_DESC="Estableix la posició de l'etiqueta del camp" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Resposta invàlida" COM_CONVERTFORMS_INVALID_TASK="Tasca invàlida" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Espera a que acabi la pujada." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="La màscara està incompleta" COM_CONVERTFORMS_SUBMISSION_ID="ID de resposta" COM_CONVERTFORMS_SUBMISSION_DATE="Data de resposta" COM_CONVERTFORMS_SUBMISSION_STATUS="Estat de l'enviament" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID de la campanya resposta" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID del formulari de resposta" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID del visitant que respon" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID d'usuari d'enviament" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Recompte de respostes" COM_CONVERTFORMS_FIELD_RATING="Valoració" COM_CONVERTFORMS_FIELD_RATING_DESC="Afegiu una puntuació al vostre formulari i permeteu que els usuaris donin una o més valoracions." COM_CONVERTFORMS_FIELD_RATING_ICON="Icona" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Seleccioneu-ne un dels vuit dissenys d'icones integrats per al vostre camp de valoració." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Estableix la mida de les icones de valoració." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Color seleccionat" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Seleccioneu el color que s'utilitzarà quan seleccioni una icona de valoració o es passi el cursor per sobre." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Color no seleccionat" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Seleccioneu el color que s'utilitzarà quan no estigui seleccionada una icona de valoració." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Valoració màxima" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Introduïu les icones de valoració màxima que es mostraran." COM_CONVERTFORMS_FIELD_RANGESLIDER="Control lliscant de rang" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Afegiu un control lliscant d'interval al vostre formulari i permeteu als usuaris seleccionar un valor mitjançant una interfície de control lliscant." COM_CONVERTFORMS_FIELD_COLORPICKER="Selector de colors" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="El camp de selecció de colors permet als usuaris especificar un color mitjançant una interfície visual de selecció de color o introduint el seu propi color en format hexadecimal." COM_CONVERTFORMS_MIN_CHARS="Mínim de caràcters" COM_CONVERTFORMS_MIN_CHARS_DESC="Longitud mínima d'aquest camp en caràcters. Introduïu 0 per sense límit." COM_CONVERTFORMS_MAX_CHARS="Màxim de caràcters" COM_CONVERTFORMS_MAX_CHARS_DESC="Longitud mínima d'aquest camp en paraules. Introduïu 0 per sentit límit." COM_CONVERTFORMS_MIN_WORDS="Mínim de paraules" COM_CONVERTFORMS_MIN_WORDS_DESC="Longitud mínima d'aquest camp en paraules. Introduïu 0 per sense límit." COM_CONVERTFORMS_MAX_WORDS="Màxim de paraules" COM_CONVERTFORMS_MAX_WORDS_DESC="Longitud màxima d'aquest camp en paraules. Introduïu 0 per sense límit." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Si us plau, allarga aquest text a %s caràcters o més. Actualment esteu utilitzant %s caràcters." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Escurceu aquest text a %s caràcters o menys. Actualment esteu utilitzant %s caràcters." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Si us plau, allarga aquest text a %s paraules o més. Actualment estàs utilitzant %s paraules." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Si us plau, escurceu aquest text a %s paraules o menys. Actualment estàs utilitzant %sparaules." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Introduïu el valor mínim del control lliscant." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Introduïu el valor màxim del control lliscant." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Introduïu el pas del control lliscant." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Mitges valoracions" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Admet la meitat de les qualificacions, per exemple: 0,5, 1,5, 2,5." COM_CONVERTFORMS_FIELD_EDITOR="Editor de text enriquit" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Proporcioneu un editor de text enriquit perquè l'usuari introdueixi les seves respostes en aquest camp." COM_CONVERTFORMS_EDITOR_HEIGHT="Alçada de l'editor" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Estableix l'alçada en píxels" COM_CONVERTFORMS_EDITOR_SELECT="Editor de Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Seleccioneu l'editor de Joomla que voleu utilitzar per a aquest camp. <br><br> Si no veieu cap editor a la llista, assegureu-vos que heu instal·lat i activat almenys 1 connector de Joomla Editor mitjançant el Gestor de connectors de Joomla." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Editor de Joomla no trobat: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s enviaments exportats" COM_CONVERTFORMS_DOWNLOAD_WILL_START="La descàrrega començarà automàticament." COM_CONVERTFORMS_EXPORT_WORKING="Exportant" COM_CONVERTFORMS_EXPORT_PROCESSING="Tramitats %s de%s enviaments." COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="No es pot trobar el fitxer exportat" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configura hCaptcha ara" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Atureu els enviaments de correu brossa en formularis mitjançant hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Seleccioneu si voleu utilitzar la casella de selecció o la versió invisible d'hCaptcha." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="L'extensió PHP <b>fileinfo</b> és necessària per endevinar el tipus MIME dels fitxers penjats, però no està instal·lat o no està carregat. Poseu-vos en contacte amb el vostre amfitrió per instal·lar-lo." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Estat de l'enviament per defecte" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Estableix l'estat predeterminat de cada enviament nou." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]� R�G�G�Ecomponents/com_convertforms/language/sv-SE/sv-SE.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Design" COM_CONVERTFORMS_BEHAVIOR="Beteende" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="Inga %s hittades" COM_CONVERTFORMS_CREATE_NEW="Skapa en ny?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email stigande" COM_CONVERTFORMS_EMAIL_DESCENDING="Email fallande" COM_CONVERTFORMS_ACTIONS="Handlingar" COM_CONVERTFORMS_VIEW_LEADS="Visa Formulärsvar" NRI_PLG_CONVERTFORMS="Convert Forms Plugin" COM_CONVERTFORMS_CONFIGURATION="Convert Forms Konfiguration" COM_CONVERTFORMS_LOADCSS="Ladda Formatmall" COM_CONVERTFORMS_LOADCSS_DESC="Val för att ladda stilmall för tillägg. Du kan inaktivera detta om du placerar alla dina egna stilar i någon annan stilmall, som i fältet Anpassad kod eller stilmallar" ; COM_CONVERTFORMS_DEBUG="Debug" ; COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." COM_CONVERTFORMS_FORMS="Formulär" COM_CONVERTFORMS_FORM="Formulär" COM_CONVERTFORMS_NEW_FORM="Nytt Formulär" COM_CONVERTFORMS_EDIT_FORM="Redigera Formulär" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formulär kopierades" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formulär publicerades" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulär avpublicerades" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formulär kastades" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formulär raderades" COM_CONVERTFORMS_FORM_ASCENDING="Formulär stigande" COM_CONVERTFORMS_FORM_DESCENDING="Formulär fallande" COM_CONVERTFORMS_FORM_SELECT="-Välj Formulär-" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publicera genom att skapa en modul" COM_CONVERTFORMS_FORM_LEADS="Detta formulär har sammanlagt %s svar hittills" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publicera genom att använda kortkod: %s" COM_CONVERTFORMS_CAMPAIGN="Kampanj" COM_CONVERTFORMS_CAMPAIGNS="Kampanjer" COM_CONVERTFORMS_NEW_CAMPAIGN="Ny Kampanj" COM_CONVERTFORMS_EDIT_CAMPAIGN="Redigera Kampanj" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Fyll i kampanjnamnet. Detta kampanjnamn kan inte ses av någon annan än du." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="1%s Kampanjer kopierades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Kampanjer avpublicerades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Kampanjer publicerades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Kampanjer kastades" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Kampanjer raderades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s formulärsvar avpublicerades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s formulärsvar publicerades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s formulärsvar kastades" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s formulärsvar raderades" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampanj stigande" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampanj fallande" COM_CONVERTFORMS_CAMPAIGN_SELECT="-Välj Kampanj-" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Vänligen spara kampanjen för att skapa integration." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampanjen ändrades" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synkronisera Formulärsvar" ; COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choose whether your submissions should be synced to third party softwares or to be collected in your database only. <Br>Note: If you need to integrate with third party software like MailChimp, Aweber, GetResponse, Active Campaign etc please install the respective addon in the Addons section." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Kampanjer raderades" COM_CONVERTFORMS_CHOOSE_SERVICE="Välj Tjänst" COM_CONVERTFORMS_PENDING_LEADS="Förestående Formulärsvar" COM_CONVERTFORMS_SUBMISSIONS="Formulärsvar" COM_CONVERTFORMS_SUBMISSION="Formulärsvar" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Senaste Formulärsvar" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Bekräftad" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Obekräftad" COM_CONVERTFORMS_EDIT_CONVERSION="Redigera Formulärsvar" COM_CONVERTFORMS_SUBMISSION_INVALID="Formulärsvaret hittades inte." COM_CONVERTFORMS_NOT_AUTHORIZED="Du har inte behörighet till den här sidan." ; COM_CONVERTFORMS_LEADS_ASC="Submissions ascending" ; COM_CONVERTFORMS_LEADS_DESC="Submissions descending" ; COM_CONVERTFORMS_LEADS_EXPORT="Export Submissions" COM_CONVERTFORMS_ADDONS="Tillägg" ; COM_CONVERTFORMS_INSTALL_ADDONS="View Installed Addons" ; COM_CONVERTFORMS_ADDONS_MISSING_KEY="To be able to install Convert Forms Addons, you will need enter your Download Key in the settings of the Novarain Framework Plugin" ; COM_CONVERTFORMS_ADDONS_DESC="Add-ons extend the functionality of Convert Forms. With these addons, you can connect with third party softwares, integrate new features and make Convert Forms even more powerful." ; COM_CONVERTFORMS_LAST_YEAR="Last Year" ; COM_CONVERTFORMS_THIS_YEAR="This Year" ; COM_CONVERTFORMS_LAST_MONTH="Last Month" ; COM_CONVERTFORMS_THIS_MONTH="This Month" ; COM_CONVERTFORMS_LAST_WEEK="Last Week" ; COM_CONVERTFORMS_THIS_WEEK="This Week" ; COM_CONVERTFORMS_LAST_7_DAYS="Last 7 Days" ; COM_CONVERTFORMS_YESTERDAY="Yesterday" ; COM_CONVERTFORMS_TODAY="Today" ; COM_CONVERTFORMS_AVG_DAY="Average day (this month)" ; COM_CONVERTFORMS_PROJECTION="Projection for this month" ; COM_CONVERTFORMS_TOTAL="Total" ; COM_CONVERTFORMS_CHOOSE_FILE="Choose a .cnvf file" ; COM_CONVERTFORMS_FORMS_NAME_DESC="A unique & descriptive name will help you in future as it would appear in the dashboard, analytics, etc." ; COM_CONVERTFORMS_BACKGROUND_IMAGE="Background Image Source" ; COM_CONVERTFORMS_IMAGE_DESC="Choose the background image source" ; COM_CONVERTFORMS_CUSTOM_URL="Custom URL" ; COM_CONVERTFORMS_BACKGROUND_URL="Background Image URL" ; COM_CONVERTFORMS_BACKGROUND_URL_DESC="Enter custom URL for your image" ; COM_CONVERTFORMS_BACKGROUND_FILE="Background Image" ; COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Select an image to upload." ; COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." ; COM_CONVERTFORMS_FORM_BUILDER="Form Builder" ; COM_CONVERTFORMS_FIELD_TYPE="Field Type" ; COM_CONVERTFORMS_FIELD_TYPE_DESC="The Field Type attribute specifies the type of input element to display." ; COM_CONVERTFORMS_FIELD_LABEL="Field Label" ; COM_CONVERTFORMS_FIELD_LABEL_DESC="The Field Label defines a label for an input element." ; COM_CONVERTFORMS_FIELD_NAME="Field Name" ; COM_CONVERTFORMS_FIELD_NAME_DESC="It specifies the name of input element which is used to reference form data after a form is submitted. Use this option also to map form fields with integrations apps." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" ; COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="The text you would like displayed in the field, before a user enters any data." ; COM_CONVERTFORMS_REQUIRED_NAME="Required Field" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." ; COM_CONVERTFORMS_FIELDS="Fields" ; COM_CONVERTFORMS_FIELDS_FREE_NOTICE="You are using the <b>Free</b> version which supports only 1 email field. <b>Upgrade to Pro version</b> to be able to manage unlimited fields." ; COM_CONVERTFORMS_GENERAL="General" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN="Field Text Alignment" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Form Text Alignment" ; COM_CONVERTFORMS_INPUT_COLOR="Field Text Color" ; COM_CONVERTFORMS_INPUT_BGCOLOR="Field Background Color" ; COM_CONVERTFORMS_INPUT_BORDER_COLOR="Field Border Color" ; COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adds an inner shadow to the input field" ; COM_CONVERTFORMS_INPUT_FONT_SIZE="Field Font Size" ; COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Field Font Size" ; COM_CONVERTFORMS_VPADDING_SIZE="Vertical Padding" ; COM_CONVERTFORMS_HPADDING_SIZE="Horizontal Padding" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Width" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provide a custom max width of your choice or make this box cover entire screen area. Note that this is the max width which means the form will always fit on smaller areas." ; COM_CONVERTFORMS_FORM_WIDTH="Custom Max Width" ; COM_CONVERTFORMS_FORM_WIDTH_DESC="Provide custom max width of your choice." ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remove Default Padding" ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove the default padding between content area and form box edges." ; COM_CONVERTFORMS_FORM_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apply a border around the form" ; COM_CONVERTFORMS_FORM_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Form Border Color" ; COM_CONVERTFORMS_FORM_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="The form's border width" ; COM_CONVERTFORMS_BOX_RADIUS="Box Radius" ; COM_CONVERTFORMS_BORDER_RADIUS="Border Radius" ; COM_CONVERTFORMS_BORDER_RADIUS_DESC="Enter border's radius size" ; COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" ; COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choose the action you would like to take place after a successful submission" ; COM_CONVERTFORMS_DISPLAY_MSG="Display message" ; COM_CONVERTFORMS_REDIRECT_USER="Redirect user" ; COM_CONVERTFORMS_SUCCESS_TEXT="Message After Success" ; COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Enter the message you would like to display the user after successfully added to the list." ; COM_CONVERTFORMS_SUCCESS_URL="Redirect URL" ; COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." ; COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" ; COM_CONVERTFORMS_SUBMIT_STYLE="Submit Button Style" ; COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." ; COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" ; COM_CONVERTFORMS_CUSTOM_CSS="Custom CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." COM_CONVERTFORMS_CLASS_SUFFIX="Klassändelse" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Klassändelse" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." COM_CONVERTFORMS_CHOICES="Val" ; COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." ; COM_CONVERTFORMS_FIELD_VALUE="Default Value" ; COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." ; COM_CONVERTFORMS_HIDE_LABELS="Hide Label" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" ; COM_CONVERTFORMS_IMAGE_SOURCE="Image Source" ; COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." ; COM_CONVERTFORMS_IMAGE_URL="Image URL" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." ; COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" ; COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" ; COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" ; COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" ; COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" ; COM_CONVERTFORMS_FORM_POSITION="Form Position" ; COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" ; COM_CONVERTFORMS_FORM_SIZE="Form Container Size" ; COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." ; COM_CONVERTFORMS_MESSAGE="Text Message" ; COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" ; COM_CONVERTFORMS_IMAGE_POSITION="Image Position" ; COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" ; COM_CONVERTFORMS_FOOTER="Form Footer" ; COM_CONVERTFORMS_BUTTON_TEXT="Button Text" ; COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" ; COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" ; COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" ; COM_CONVERTFORMS_BODY_FONT="Font Family" ; COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." ; COM_CONVERTFORMS_EMAIL="Email" ; COM_CONVERTFORMS_DATE="Date" ; COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_SUBMISSION="Formulärsvar" ; COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" ; COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" ; COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" ; COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" ; COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" ; COM_CONVERTFORMS_DEVICE_TABLET="Tablet" ; COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" ; COM_CONVERTFORMS_RESET_FORM="Reset Form" ; COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" ; COM_CONVERTFORMS_HIDE_FORM="Hide Form" ; COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" ; COM_CONVERTFORMS_TEMPLATES="Templates" ; COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" ; COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" ; COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" ; COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" ; COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" ; COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" ; COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" ; COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" ; COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" ; COM_CONVERTFORMS_IMAGE_BELOW="Below Text" ; COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" ; COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" ; COM_CONVERTFORMS_FLAT="Flat" ; COM_CONVERTFORMS_OUTLINE="Outline" ; COM_CONVERTFORMS_GRADIENT="Gradient" ; COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." ; COM_CONVERTFORMS_EMAILS="Email Notifications" ; COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" ; COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" ; COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" ; COM_CONVERTFORMS_EMAILS_FROM="From Name" ; COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" ; COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." ; COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" ; COM_CONVERTFORMS_EMAILS_BODY="Message" ; COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." ; COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." ; COM_CONVERTFORMS_API_ENABLE="Enable JSON API" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." ; COM_CONVERTFORMS_API_KEY="Secret Key" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." ; COM_CONVERTFORMS_IMAGE_ALT="Image Alt" ; COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" ; COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." ; COM_CONVERTFORMS_ISSUES="Issues" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_MODIFIED="Date Modified" ; COM_CONVERTFORMS_IP="Submitter's IP Address" ; COM_CONVERTFORMS_USER_ID="Submitter's ID" ; COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" ; COM_CONVERTFORMS_VISITOR_ID="Visitor ID" ; COM_CONVERTFORMS_FORM_NAME="Form Name" ; COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" ; COM_CONVERTFORMS_ID="ID" ; COM_CONVERTFORMS_CHOOSE_COLUMNS="Columns" ; COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." ; COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" ; COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" ; COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" ; COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" ; COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" ; COM_CONVERTFORMS_FIELDS_DELETE="Delete field" ; COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" ; COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" ; COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" ; COM_CONVERTFORMS_FIELD_TEXT="Textbox" ; COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" ; COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" ; COM_CONVERTFORMS_FIELD_NUMBER="Number" ; COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." ; COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" ; COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" ; COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" ; COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" ; COM_CONVERTFORMS_FIELD_URL="Website / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" ; COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" ; COM_CONVERTFORMS_FIELD_COUNTRY="Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" ; COM_CONVERTFORMS_FIELD_CURRENCY="Currency" ; COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" ; COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" ; COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" ; COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" ; COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" ; COM_CONVERTFORMS_FIELD_EMAIL="Email Address" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" ; COM_CONVERTFORMS_FIELD_REQUIRED="Is required" ; COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" ; COM_CONVERTFORMS_FIELD_SIZE="Field Size" ; COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" ; COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." ; COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Date Format" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." ; COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." ; COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" ; COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" ; COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." ; COM_CONVERTFORMS_CSS_CLASSES="CSS Class" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." ; COM_CONVERTFORMS_FIELD_CONFIRM="Confirm" ; COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" ; COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" ; COM_CONVERTFORMS_HIDE_TEXT="Hide Text" ; COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" ; COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" ; COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" ; COM_CONVERTFORMS_CHOICE_1_COLUMN="One Column" ; COM_CONVERTFORMS_CHOICE_2_COLUMN="Two Columns" ; COM_CONVERTFORMS_CHOICE_3_COLUMN="Three Columns" ; COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." ; COM_CONVERTFORMS_INPUT_MASK="Input Mask" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" ; COM_CONVERTFORMS_NOTES="Notes" ; COM_CONVERTFORMS_DATE_RANGE="Date Range" ; COM_CONVERTFORMS_START_DATE="Start Date" ; COM_CONVERTFORMS_END_DATE="End Date" ; COM_CONVERTFORMS_PERIOD="Period" ; COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" ; COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." ; COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" ; COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Allowed File Types" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." ; COM_CONVERTFORMS_FIELD_FILTER="Filter" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" ; COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" ; COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" ; COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." ; COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" ; COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." ; COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." ; COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." ; COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" ; COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." ; COM_CONVERTFORMS_READONLY="Read-only" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" ; COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." ; COM_CONVERTFORMS_FIELD_PASSWORD="Password" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." ; COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" ; COM_CONVERTFORMS_SECURITY="Security" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" ; COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" ; COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." ; COM_CONVERTFORMS_SELECT_FORM="Select Form" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." ; COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" ; COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" ; COM_CONVERTFORMS_ORDER_RANDOM="Random Order" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." ; COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" ; COM_CONVERTFORMS_FILTER_USER_ALL="All Users" ; COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" ; COM_CONVERTFORMS_SET_USERS="User IDs" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." ; COM_CONVERTFORMS_FIELD_DIVIDER="Divider" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" ; COM_CONVERTFORMS_ADD_FIELD="Add Field" ; COM_CONVERTFORMS_ALL_FIELDS="All Fields" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Kan inte hitta exporterad fil" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Konfigurera hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stoppa spam-inlägg i formuläret med hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]���ǟ���Ecomponents/com_convertforms/language/sl-SI/sl-SI.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr ; CONVERTFORMS="Convert Forms" ; COM_CONVERTFORMS="Convert Forms" ; COM_CONVERTFORMS_DESIGN="Design" ; COM_CONVERTFORMS_BEHAVIOR="Behavior" ; COM_CONVERTFORMS_LIST="List" ; COM_CONVERTFORMS_NO_RESULTS_FOUND="No %s found" ; COM_CONVERTFORMS_CREATE_NEW="Create a new one?" ; COM_CONVERTFORMS_EMAIL_ASCENDING="Email ascending" ; COM_CONVERTFORMS_EMAIL_DESCENDING="Email descending" COM_CONVERTFORMS_ACTIONS="Akcije" ; COM_CONVERTFORMS_VIEW_LEADS="View Submissions" ; NRI_PLG_CONVERTFORMS="Convert Forms Plugin" ; COM_CONVERTFORMS_CONFIGURATION="Convert Forms Configuration" ; COM_CONVERTFORMS_LOADCSS="Load Stylesheet" ; COM_CONVERTFORMS_LOADCSS_DESC="Select to load the extensions stylesheet. You can disable this if you place all your own styles in some other stylesheet, like the Custom Code field or the templates stylesheet" ; COM_CONVERTFORMS_DEBUG="Debug" ; COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." ; COM_CONVERTFORMS_FORMS="Forms" ; COM_CONVERTFORMS_FORM="Form" ; COM_CONVERTFORMS_NEW_FORM="New Form" ; COM_CONVERTFORMS_EDIT_FORM="Edit Form" ; COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s forms copied" ; COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s forms published" ; COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s form unpublished" ; COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s forms trashed" ; COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s forms deleted" ; COM_CONVERTFORMS_FORM_ASCENDING="Form ascending" ; COM_CONVERTFORMS_FORM_DESCENDING="Form descending" ; COM_CONVERTFORMS_FORM_SELECT="- Select Form -" ; COM_CONVERTFORMS_FORM_CREATE_MODULE="Publish creating a module" ; COM_CONVERTFORMS_FORM_LEADS="This form has %s total submissions so far" ; COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publish using shortcode: %s" ; COM_CONVERTFORMS_CAMPAIGN="Campaign" ; COM_CONVERTFORMS_CAMPAIGNS="Campaigns" ; COM_CONVERTFORMS_NEW_CAMPAIGN="New Campaign" ; COM_CONVERTFORMS_EDIT_CAMPAIGN="Edit Campaign" ; COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Enter a campaign name. This name can not be seen by anyone else but you." ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campaigns copied" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campaigns unpublished" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campaigns published" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campaigns trashed" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campaigns deleted" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s submissions unpublished" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s submissions published" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s submissions trashed" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s submissions deleted" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" ; COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campaign ascending" ; COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campaign descending" ; COM_CONVERTFORMS_CAMPAIGN_SELECT="- Select Campaign -" ; COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Please save the campaign to setup your integration." ; COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campaign changed" ; COM_CONVERTFORMS_CAMPAIGN_SYNC="Sync Submissions" ; COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choose whether your submissions should be synced to third party softwares or to be collected in your database only. <Br>Note: If you need to integrate with third party software like MailChimp, Aweber, GetResponse, Active Campaign etc please install the respective addon in the Addons section." ; COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campaigns deleted" ; COM_CONVERTFORMS_CHOOSE_SERVICE="Choose Service" ; COM_CONVERTFORMS_PENDING_LEADS="Pending Submissions" ; COM_CONVERTFORMS_SUBMISSIONS="Submissions" ; COM_CONVERTFORMS_SUBMISSION="Submission" ; COM_CONVERTFORMS_LATEST_SUBMISSIONS="Latest Submissions" ; COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmed" ; COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Unconfirmed" ; COM_CONVERTFORMS_EDIT_CONVERSION="Edit Submission" ; COM_CONVERTFORMS_SUBMISSION_INVALID="Submission not found." ; COM_CONVERTFORMS_NOT_AUTHORIZED="You are not authorized to access this page." ; COM_CONVERTFORMS_LEADS_ASC="Submissions ascending" ; COM_CONVERTFORMS_LEADS_DESC="Submissions descending" ; COM_CONVERTFORMS_LEADS_EXPORT="Export Submissions" ; COM_CONVERTFORMS_ADDONS="Addons" ; COM_CONVERTFORMS_INSTALL_ADDONS="View Installed Addons" ; COM_CONVERTFORMS_ADDONS_MISSING_KEY="To be able to install Convert Forms Addons, you will need enter your Download Key in the settings of the Novarain Framework Plugin" ; COM_CONVERTFORMS_ADDONS_DESC="Add-ons extend the functionality of Convert Forms. With these addons, you can connect with third party softwares, integrate new features and make Convert Forms even more powerful." ; COM_CONVERTFORMS_LAST_YEAR="Last Year" ; COM_CONVERTFORMS_THIS_YEAR="This Year" ; COM_CONVERTFORMS_LAST_MONTH="Last Month" ; COM_CONVERTFORMS_THIS_MONTH="This Month" ; COM_CONVERTFORMS_LAST_WEEK="Last Week" ; COM_CONVERTFORMS_THIS_WEEK="This Week" ; COM_CONVERTFORMS_LAST_7_DAYS="Last 7 Days" ; COM_CONVERTFORMS_YESTERDAY="Yesterday" ; COM_CONVERTFORMS_TODAY="Today" ; COM_CONVERTFORMS_AVG_DAY="Average day (this month)" ; COM_CONVERTFORMS_PROJECTION="Projection for this month" ; COM_CONVERTFORMS_TOTAL="Total" ; COM_CONVERTFORMS_CHOOSE_FILE="Choose a .cnvf file" ; COM_CONVERTFORMS_FORMS_NAME_DESC="A unique & descriptive name will help you in future as it would appear in the dashboard, analytics, etc." ; COM_CONVERTFORMS_BACKGROUND_IMAGE="Background Image Source" ; COM_CONVERTFORMS_IMAGE_DESC="Choose the background image source" ; COM_CONVERTFORMS_CUSTOM_URL="Custom URL" ; COM_CONVERTFORMS_BACKGROUND_URL="Background Image URL" ; COM_CONVERTFORMS_BACKGROUND_URL_DESC="Enter custom URL for your image" ; COM_CONVERTFORMS_BACKGROUND_FILE="Background Image" ; COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Select an image to upload." ; COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." ; COM_CONVERTFORMS_FORM_BUILDER="Form Builder" ; COM_CONVERTFORMS_FIELD_TYPE="Field Type" ; COM_CONVERTFORMS_FIELD_TYPE_DESC="The Field Type attribute specifies the type of input element to display." ; COM_CONVERTFORMS_FIELD_LABEL="Field Label" ; COM_CONVERTFORMS_FIELD_LABEL_DESC="The Field Label defines a label for an input element." ; COM_CONVERTFORMS_FIELD_NAME="Field Name" ; COM_CONVERTFORMS_FIELD_NAME_DESC="It specifies the name of input element which is used to reference form data after a form is submitted. Use this option also to map form fields with integrations apps." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" ; COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="The text you would like displayed in the field, before a user enters any data." ; COM_CONVERTFORMS_REQUIRED_NAME="Required Field" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." ; COM_CONVERTFORMS_FIELDS="Fields" ; COM_CONVERTFORMS_FIELDS_FREE_NOTICE="You are using the <b>Free</b> version which supports only 1 email field. <b>Upgrade to Pro version</b> to be able to manage unlimited fields." ; COM_CONVERTFORMS_GENERAL="General" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN="Field Text Alignment" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Form Text Alignment" ; COM_CONVERTFORMS_INPUT_COLOR="Field Text Color" ; COM_CONVERTFORMS_INPUT_BGCOLOR="Field Background Color" ; COM_CONVERTFORMS_INPUT_BORDER_COLOR="Field Border Color" ; COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adds an inner shadow to the input field" ; COM_CONVERTFORMS_INPUT_FONT_SIZE="Field Font Size" ; COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Field Font Size" ; COM_CONVERTFORMS_VPADDING_SIZE="Vertical Padding" ; COM_CONVERTFORMS_HPADDING_SIZE="Horizontal Padding" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Width" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provide a custom max width of your choice or make this box cover entire screen area. Note that this is the max width which means the form will always fit on smaller areas." ; COM_CONVERTFORMS_FORM_WIDTH="Custom Max Width" ; COM_CONVERTFORMS_FORM_WIDTH_DESC="Provide custom max width of your choice." ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remove Default Padding" ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove the default padding between content area and form box edges." ; COM_CONVERTFORMS_FORM_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apply a border around the form" ; COM_CONVERTFORMS_FORM_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Form Border Color" ; COM_CONVERTFORMS_FORM_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="The form's border width" ; COM_CONVERTFORMS_BOX_RADIUS="Box Radius" ; COM_CONVERTFORMS_BORDER_RADIUS="Border Radius" ; COM_CONVERTFORMS_BORDER_RADIUS_DESC="Enter border's radius size" ; COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" ; COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choose the action you would like to take place after a successful submission" ; COM_CONVERTFORMS_DISPLAY_MSG="Display message" ; COM_CONVERTFORMS_REDIRECT_USER="Redirect user" ; COM_CONVERTFORMS_SUCCESS_TEXT="Message After Success" ; COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Enter the message you would like to display the user after successfully added to the list." ; COM_CONVERTFORMS_SUCCESS_URL="Redirect URL" ; COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." ; COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" ; COM_CONVERTFORMS_SUBMIT_STYLE="Submit Button Style" ; COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." ; COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" ; COM_CONVERTFORMS_CUSTOM_CSS="Custom CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." ; COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" ; COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." ; COM_CONVERTFORMS_CHOICES="Choices" ; COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." ; COM_CONVERTFORMS_FIELD_VALUE="Default Value" ; COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." ; COM_CONVERTFORMS_HIDE_LABELS="Hide Label" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" ; COM_CONVERTFORMS_IMAGE_SOURCE="Image Source" ; COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." ; COM_CONVERTFORMS_IMAGE_URL="Image URL" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." ; COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" ; COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" ; COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" ; COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" ; COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" ; COM_CONVERTFORMS_FORM_POSITION="Form Position" ; COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" ; COM_CONVERTFORMS_FORM_SIZE="Form Container Size" ; COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." ; COM_CONVERTFORMS_MESSAGE="Text Message" ; COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" ; COM_CONVERTFORMS_IMAGE_POSITION="Image Position" ; COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" ; COM_CONVERTFORMS_FOOTER="Form Footer" ; COM_CONVERTFORMS_BUTTON_TEXT="Button Text" ; COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" ; COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" ; COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" ; COM_CONVERTFORMS_BODY_FONT="Font Family" ; COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." ; COM_CONVERTFORMS_EMAIL="Email" ; COM_CONVERTFORMS_DATE="Date" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_SUBMISSION="Submission" ; COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" ; COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" ; COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" ; COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" ; COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" ; COM_CONVERTFORMS_DEVICE_TABLET="Tablet" ; COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" ; COM_CONVERTFORMS_RESET_FORM="Reset Form" ; COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" ; COM_CONVERTFORMS_HIDE_FORM="Hide Form" ; COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" ; COM_CONVERTFORMS_TEMPLATES="Templates" ; COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" ; COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" ; COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" ; COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" ; COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" ; COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" ; COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" ; COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" ; COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" ; COM_CONVERTFORMS_IMAGE_BELOW="Below Text" ; COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" ; COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" ; COM_CONVERTFORMS_FLAT="Flat" ; COM_CONVERTFORMS_OUTLINE="Outline" ; COM_CONVERTFORMS_GRADIENT="Gradient" ; COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." ; COM_CONVERTFORMS_EMAILS="Email Notifications" ; COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" ; COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" ; COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" ; COM_CONVERTFORMS_EMAILS_FROM="From Name" ; COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" ; COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." ; COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" ; COM_CONVERTFORMS_EMAILS_BODY="Message" ; COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." ; COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." ; COM_CONVERTFORMS_API_ENABLE="Enable JSON API" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." ; COM_CONVERTFORMS_API_KEY="Secret Key" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." ; COM_CONVERTFORMS_IMAGE_ALT="Image Alt" ; COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" ; COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." ; COM_CONVERTFORMS_ISSUES="Issues" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_MODIFIED="Date Modified" ; COM_CONVERTFORMS_IP="Submitter's IP Address" ; COM_CONVERTFORMS_USER_ID="Submitter's ID" ; COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" ; COM_CONVERTFORMS_VISITOR_ID="Visitor ID" ; COM_CONVERTFORMS_FORM_NAME="Form Name" ; COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" ; COM_CONVERTFORMS_ID="ID" ; COM_CONVERTFORMS_CHOOSE_COLUMNS="Columns" ; COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." ; COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" ; COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" ; COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" ; COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" ; COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" ; COM_CONVERTFORMS_FIELDS_DELETE="Delete field" ; COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" ; COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" ; COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" ; COM_CONVERTFORMS_FIELD_TEXT="Textbox" ; COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" ; COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" ; COM_CONVERTFORMS_FIELD_NUMBER="Number" ; COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." ; COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" ; COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" ; COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" ; COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" ; COM_CONVERTFORMS_FIELD_URL="Website / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" ; COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" ; COM_CONVERTFORMS_FIELD_COUNTRY="Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" ; COM_CONVERTFORMS_FIELD_CURRENCY="Currency" ; COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" ; COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" ; COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" ; COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" ; COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" ; COM_CONVERTFORMS_FIELD_EMAIL="Email Address" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" ; COM_CONVERTFORMS_FIELD_REQUIRED="Is required" ; COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" ; COM_CONVERTFORMS_FIELD_SIZE="Field Size" ; COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" ; COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." ; COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Oblika zapisa datuma" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Pokaži izbirnik časa" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min datum" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Maks datum" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." ; COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." ; COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" ; COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" ; COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." ; COM_CONVERTFORMS_CSS_CLASSES="CSS Class" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Preverjanje DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Potrdi elektronski naslov z DNS preverjanjem." COM_CONVERTFORMS_FIELD_CONFIRM="Potrdi" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Polje, ki zagotavlja ujemanje dveh polj" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Potrditev ključa polja" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Vrednosti polja se ne ujemajo" COM_CONVERTFORMS_HIDE_TEXT="Skrij tekst" COM_CONVERTFORMS_HIDE_TEXT_DESC="Skrij tekst po uspešni oddaji" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Obrazcu manjka polje za e-pošto" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" COM_CONVERTFORMS_EXCEL_SECURITY="Excelova varnost" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" COM_CONVERTFORMS_CHOICE_1_COLUMN="En stolpec" COM_CONVERTFORMS_CHOICE_2_COLUMN="Dva stolpca" COM_CONVERTFORMS_CHOICE_3_COLUMN="Trije stolpci" ; COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." ; COM_CONVERTFORMS_INPUT_MASK="Input Mask" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" ; COM_CONVERTFORMS_NOTES="Notes" COM_CONVERTFORMS_DATE_RANGE="Časovno obdobje" COM_CONVERTFORMS_START_DATE="Začetni datum" COM_CONVERTFORMS_END_DATE="Končni datum" COM_CONVERTFORMS_PERIOD="Obdobje" COM_CONVERTFORMS_PERIOD_SELECT="- Izberi obdobje -" ; COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Prenos datoteke" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Uporabniku omogočite nalaganje datotek" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Omejitev datotek" ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Omejitev velikosti datotek" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Dovoljene vrste datotek" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filter" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" COM_CONVERTFORMS_UPLOAD_ERROR="Neveljavni obrazec ali ključ polja" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Neveljavno polje za prenos na strežnik" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Neveljavna ali nepodprta datoteka" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Preneseš lahko do %d datotek na strežnik" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Povleci in spusti datoteke tukaj ali" COM_CONVERTFORMS_UPLOAD_BROWSE="Prebrskaj" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Mapa za prenose %s ne obstaja ali pa v njo ni mogoče pisati" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Datoteka je prevelika ({{filesize}}MB). Maksimalna velikost: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Prenos datotek tega tipa ni dovoljen." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Vaš brskalnik ne podpira povleci in spusti (drag'n'drop) prenosov." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Strežnik je odgovoril z {{statusCode}} kodo." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Prekliči prenos na strežnik" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Želite preklicati nalaganje datotek na strežnik?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Odstrani datoteko" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Ni več mogoče prenašati datotek na strežnik." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Samodejno izbriši datoteke" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." ; COM_CONVERTFORMS_READONLY="Read-only" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" ; COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." ; COM_CONVERTFORMS_FIELD_PASSWORD="Password" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." ; COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" ; COM_CONVERTFORMS_SECURITY="Security" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" ; COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" ; COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." ; COM_CONVERTFORMS_SELECT_FORM="Select Form" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." ; COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" ; COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" ; COM_CONVERTFORMS_ORDER_RANDOM="Random Order" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." ; COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" ; COM_CONVERTFORMS_FILTER_USER_ALL="All Users" ; COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" ; COM_CONVERTFORMS_SET_USERS="User IDs" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." ; COM_CONVERTFORMS_FIELD_DIVIDER="Divider" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" ; COM_CONVERTFORMS_ADD_FIELD="Add Field" ; COM_CONVERTFORMS_ALL_FIELDS="All Fields" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]��f�����Ecomponents/com_convertforms/language/it-IT/it-IT.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Grafica" COM_CONVERTFORMS_BEHAVIOR="Comportamento" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="Nessun %s trovato" COM_CONVERTFORMS_CREATE_NEW="Crearne uno nuovo?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email in ordine crescente" COM_CONVERTFORMS_EMAIL_DESCENDING="Email in ordine discendente" COM_CONVERTFORMS_ACTIONS="Azioni" COM_CONVERTFORMS_VIEW_LEADS="Visualizza invio" NRI_PLG_CONVERTFORMS="Plugin di Convert Forms " COM_CONVERTFORMS_CONFIGURATION="Configurazione Convert Forms " COM_CONVERTFORMS_LOADCSS="Carica foglio di stile" COM_CONVERTFORMS_LOADCSS_DESC="Seleziona qui per caricare il foglio di stile (per le estensioni). Puoi disabilitarlo se metti tutti i tuoi stili in altro foglio di stile, come, ad esempio, il campo Codice Personalizzato o il foglio di stile del template." COM_CONVERTFORMS_DEBUG="Debug" COM_CONVERTFORMS_DEBUG_DESC="Abilita questa opzione per aiutarti a eseguire il debug di errori e comportamenti inattesi. I messaggi di errore vengono inviati alla console del browser (premere F12) e alla cartella dei log." COM_CONVERTFORMS_FORMS="Moduli" COM_CONVERTFORMS_FORM="Modulo" COM_CONVERTFORMS_NEW_FORM="Nuovo modulo" COM_CONVERTFORMS_EDIT_FORM="Modifica modulo" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s moduli copiati" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s moduli pubblicati" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s moduli non pubblicati" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s moduli cestinati" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s moduli cancellati" COM_CONVERTFORMS_FORM_ASCENDING="Modulo crescente" COM_CONVERTFORMS_FORM_DESCENDING="Modulo in ordine discendente" COM_CONVERTFORMS_FORM_SELECT="- Seleziona modulo -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Pubblica creando un modulo" COM_CONVERTFORMS_FORM_LEADS="Questo modulo ha ricevuto finora %s invii totali" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Pubblica usando shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Campagna" COM_CONVERTFORMS_CAMPAIGNS="Campagne" COM_CONVERTFORMS_NEW_CAMPAIGN="Nuova campagna" COM_CONVERTFORMS_EDIT_CAMPAIGN="Modifica campagna" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Inserisci un nome per la campagna. Questo nome non può essere visto da nessuno tranne te." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s campagne copiate" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campagne non pubblicate" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campagne pubblicate" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campagne cestinate" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s campagne eliminate" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s invii non pubblicati" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s invii pubblicati" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s invii cestinati" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s invii cancelati" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s invii archiviati" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campagna in ordine crescente" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campagna in ordine discendente" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Seleziona Campagna -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Salva la campagna per configurare l'integrazione." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campagna modificata" COM_CONVERTFORMS_CAMPAIGN_SYNC="Invii sincronizzati" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Scegli se i tuoi contributi devono essere sincronizzati con software di terze parti o essere raccolti solo nel tuo database. <Br> Nota: se devi integrarti con software di terze parti come MailChimp, Aweber, GetResponse, Active Campaign ecc., installa il rispettivo addon nella sezione Addons." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s campagne eliminate" COM_CONVERTFORMS_CHOOSE_SERVICE="Scegli servizio" COM_CONVERTFORMS_PENDING_LEADS="In attesa di invio" COM_CONVERTFORMS_SUBMISSIONS="Moduli inviati" COM_CONVERTFORMS_SUBMISSION="Invio" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Ultimi invii" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confermato" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Non confermato" COM_CONVERTFORMS_EDIT_CONVERSION="Modifica invio" COM_CONVERTFORMS_SUBMISSION_INVALID="Invio non trovato." COM_CONVERTFORMS_NOT_AUTHORIZED="Non sei autorizzato ad accedere a questa pagina." COM_CONVERTFORMS_LEADS_ASC="Invii in ordine crescente" COM_CONVERTFORMS_LEADS_DESC="Invio in ordine discendente" COM_CONVERTFORMS_LEADS_EXPORT="Esporta materiale inviato" COM_CONVERTFORMS_ADDONS="Componenti aggiuntivi" COM_CONVERTFORMS_INSTALL_ADDONS="Visualizza componenti aggiuntivi installati" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Per poter installare i componenti aggiuntivi di Convert Forms, dovrai inserire la chiave nelle impostazioni del plugin Novarain Framework" COM_CONVERTFORMS_ADDONS_DESC="I componenti aggiuntivi estendono la funzionalità di Convert Forms. Con questi componenti aggiuntivi, puoi connetterti con software di terze parti, integrare nuove funzionalità; e rendere Convert Forms ancora più potente." COM_CONVERTFORMS_LAST_YEAR="Ultimo anno" COM_CONVERTFORMS_THIS_YEAR="Quest'anno" COM_CONVERTFORMS_LAST_MONTH="Ultimo mese" COM_CONVERTFORMS_THIS_MONTH="Questo mese" COM_CONVERTFORMS_LAST_WEEK="Ultima settimana" COM_CONVERTFORMS_THIS_WEEK="Questa settimana" COM_CONVERTFORMS_LAST_7_DAYS="Ultimi 7 giorni" COM_CONVERTFORMS_YESTERDAY="Ieri" COM_CONVERTFORMS_TODAY="Oggi" COM_CONVERTFORMS_AVG_DAY="Giorno medio (questo mese)" COM_CONVERTFORMS_PROJECTION="Proiezione per questo mese" COM_CONVERTFORMS_TOTAL="Totale" COM_CONVERTFORMS_CHOOSE_FILE="Scegli un file .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Un nome unico e descrittivo ti aiuterà in futuro come apparirebbe nell'interfaccia, nelle statistiche, ecc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Origine immagine di sfondo" COM_CONVERTFORMS_IMAGE_DESC="Scegli l'origine dell'immagine di sfondo" COM_CONVERTFORMS_CUSTOM_URL="URL personalizzato" COM_CONVERTFORMS_BACKGROUND_URL="URL immagine di sfondo" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Inserisci l'URL personalizzato per la tua immagine" COM_CONVERTFORMS_BACKGROUND_FILE="Immagine di sfondo" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Seleziona un'immagine da caricare." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Puoi fornire un'immagine che verrebbe visualizzata dietro il contenuto del modulo. Scegli <b>Carica</b> per caricare una nuova immagine o <b>URL personalizzato</b> per inserire un URL personalizzato ad una immagine. Per funzionare, il colore di fondo deve essere trasparente." COM_CONVERTFORMS_FORM_BUILDER="Attivazione Modulo" COM_CONVERTFORMS_FIELD_TYPE="Tipo di campo" COM_CONVERTFORMS_FIELD_TYPE_DESC="L'attributo Tipo campo specifica il tipo di elemento di input da visualizzare." COM_CONVERTFORMS_FIELD_LABEL="Etichetta campo" COM_CONVERTFORMS_FIELD_LABEL_DESC="L'etichetta campo definisce un'etichetta per l'elemento di input." COM_CONVERTFORMS_FIELD_NAME="Nome del campo" COM_CONVERTFORMS_FIELD_NAME_DESC="Specifica il nome dell'elemento di input utilizzato come riferimento dopo che un modulo è stato inviato. Utilizza questa opzione anche per mappare i campi modulo con le app da integrare." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Il testo che desideri venga visualizzato nel campo, prima che un utente inserisca dati." COM_CONVERTFORMS_REQUIRED_NAME="Campo richiesto" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Se abilitato, questo controllo garantirà che questo campo sia completato prima di consentire l'invio del modulo." COM_CONVERTFORMS_FIELDS="Campi" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Stai utilizzando la versione <b> Free </b> che supporta solo 1 campo email. <b> Aggiorna alla versione Pro </b> per poter gestire campi illimitati." COM_CONVERTFORMS_GENERAL="Generale" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Allineamento Testo nel campo" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Allineamento Testo" COM_CONVERTFORMS_INPUT_COLOR="Colore Testo campo" COM_CONVERTFORMS_INPUT_BGCOLOR="Colore Sfondo campo" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Colore Bordo campo" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Aggiunge un'ombra interna al campo di input" COM_CONVERTFORMS_INPUT_FONT_SIZE="Dimensione Carattere campo" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Dimensione carattere campo" COM_CONVERTFORMS_VPADDING_SIZE="Padding verticale" COM_CONVERTFORMS_HPADDING_SIZE="Riempimento orizzontale" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Larghezza massima box" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Fornisci una larghezza massima personalizzata a tua scelta o fai in modo che questa casella copra l'intera area dello schermo. Nota che questa è la larghezza massima, il che significa che il modulo si adatta sempre ad aree più piccole." COM_CONVERTFORMS_FORM_WIDTH="Larghezza massima personalizzata" COM_CONVERTFORMS_FORM_WIDTH_DESC="Fornisci larghezza massima personalizzata a tua scelta." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Rimuovi riempimento predefinito" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Rimuovi il riempimento predefinito tra l'area del contenuto e i bordi del riquadro del modulo." COM_CONVERTFORMS_FORM_BORDER_STYLE="Stile bordo" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Applica un bordo attorno al modulo" COM_CONVERTFORMS_FORM_BORDER_COLOR="Colore bordo" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Colore bordo modulo" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Larghezza del bordo" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Larghezza del bordo del modulo" COM_CONVERTFORMS_BOX_RADIUS="Angoli arrotondati del box" COM_CONVERTFORMS_BORDER_RADIUS="Angoli arrotondati" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Inserisci la dimensione dell'angolo arrotondato" COM_CONVERTFORMS_COLLECT_LEADS_USING="Raccogli i contributi utilizzando la campagna" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="I contributi raccolti da questo modulo verranno associati alla campagna selezionata. Puoi gestire le campagne nella sezione Campagne." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Operazione di invio riuscita" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Scegli l'azione che desideri eseguire dopo una presentazione riuscita" COM_CONVERTFORMS_DISPLAY_MSG="Visualizza messaggio" COM_CONVERTFORMS_REDIRECT_USER="Reindirizza utente" COM_CONVERTFORMS_SUCCESS_TEXT="Messaggio inviato correttamente" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Inserisci il messaggio che vorresti mostrare all'utente dopo essere stato aggiunto alla lista." COM_CONVERTFORMS_SUCCESS_URL="URL di reindirizzamento" COM_CONVERTFORMS_SUCCESS_URL_DESC="Inserisci l'URL a cui desideri reindirizzare l'utente dopo averlo aggiunto alla lista." COM_CONVERTFORMS_PASS_DATA="Passa i dati di invio per reindirizzare l'URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Invia stile pulsante" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Personalizza il tuo pulsante con effetti piacevoli." COM_CONVERTFORMS_BTN_SHADOW_DESC="Aggiunge un'ombra esterna al pulsante" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Colore al passaggio del mouse del testo" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Colore al passaggio del mouse del testo" COM_CONVERTFORMS_CUSTOM_CSS="CSS personalizzato" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Conferisci uno stile al tuo modulo con il tuo CSS personalizzato. <br><br>Per aiutarti nel compito, il codice aggiunto in quest'area viene eseguito anche in amministrazione." COM_CONVERTFORMS_CLASS_SUFFIX="Suffisso della classe" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Suffisso della classe" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Altezza area testo" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Altezza textarea specifica l'altezza visibile di un'area di testo, in linee." COM_CONVERTFORMS_CHOICES="Opzioni" COM_CONVERTFORMS_CHOICES_DESC="Aggiungi opzioni al campo nel modulo." COM_CONVERTFORMS_FIELD_VALUE="Valore predefinito" COM_CONVERTFORMS_FIELD_VALUE_DESC="Inserisci il testo per il campo Valore predefinito." COM_CONVERTFORMS_HIDE_LABELS="Nascondi etichetta" COM_CONVERTFORMS_HIDE_LABELS_DESC="Seleziona questa opzione per nascondere l'etichetta del campo nel modulo" COM_CONVERTFORMS_IMAGE_SOURCE="Origine immagine" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Puoi fornire un'immagine che dovrebbe apparire tra i contenuti del modulo. Scegli <b> Carica </b> per caricare una nuova immagine o <b> URL personalizzato </b> per inserire un URL immagine personalizzato." COM_CONVERTFORMS_IMAGE_URL="URL immagine" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Nascondi immagine su schermi piccoli" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Su schermi più piccoli come quelli mobili, i modali più piccoli sembrano più belli. Per ridurre le dimensioni della modale, puoi nascondere l'immagine con questa impostazione." COM_CONVERTFORMS_HORIZONTAL_POSITION="Posizione orizzontale" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Posizione orizzontale" COM_CONVERTFORMS_VERTICAL_POSITION="Posizione verticale" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Posizione verticale" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Larghezza immagine" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Imposta larghezza immagine" COM_CONVERTFORMS_BUTTON_ALIGN="Allineamento pulsante" COM_CONVERTFORMS_FORM_POSITION="Posizione modulo" COM_CONVERTFORMS_FORM_POSITION_DESC="Imposta la posizione del modulo relativa al contenitore di testo" COM_CONVERTFORMS_FORM_SIZE="Dimensione contenitore modulo" COM_CONVERTFORMS_COLUMNS_DESC="Specifica quante colonne verranno usate. Sei colonne occupano il 50% della larghezza." COM_CONVERTFORMS_MESSAGE="Messaggio di testo" COM_CONVERTFORMS_MESSAGE_DESC="Inserisci il messaggio di testo del modulo" COM_CONVERTFORMS_IMAGE_POSITION="Posizione immagine" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Imposta la posizione dell'immagine relativa al testo" COM_CONVERTFORMS_FOOTER="Piè di pagina del Modulo" COM_CONVERTFORMS_BUTTON_TEXT="Testo pulsante" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Inserisci l'etichetta di testo del pulsante" COM_CONVERTFORMS_BTN_FONT_SIZE="Dimensione testo pulsante" COM_CONVERTFORMS_IMAGE_SIZE="Dimensione contenitore immagine" COM_CONVERTFORMS_BODY_FONT="Famiglia di caratteri" COM_CONVERTFORMS_BODY_FONT_DESC="Scegli la famiglia di caratteri che verrebbe utilizzata per il modulo. Ricorda che caricare tipi di carattere non standard come Google Fonts potrebbe influire sulla velocità del tuo sito Web. Seleziona Predefinito per utilizzare il carattere predefinito del tuo sito web." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Data" COM_CONVERTFORMS_CREATED="Data di creazione" COM_CONVERTFORMS_SUBMISSION="Invio" COM_CONVERTFORMS_PREVIEW_SUCCESS="Anteprima del messaggio correttamente inviato" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Questa versione verrà visualizzata su schermi di dimensioni 990 px e superiori" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Questa versione verrà visualizzata su schermi di dimensioni 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Questa versione verrà visualizzata su schermi di dimensioni 768px e inferiori" COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" COM_CONVERTFORMS_RESET_FORM="Svuota modulo" COM_CONVERTFORMS_RESET_FORM_DESC="Presenta il modulo vuoto dopo un invio corretto " COM_CONVERTFORMS_HIDE_FORM="Nascondi modulo" COM_CONVERTFORMS_HIDE_FORM_DESC="Nascondi modulo dopo un invio corretto " COM_CONVERTFORMS_TEMPLATES="Modelli" COM_CONVERTFORMS_TEMPLATES_SELECT="Seleziona un modello da avviare" COM_CONVERTFORMS_TEMPLATES_BLANK="Inizia da zero" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Inizia da zero un nuovo modulo" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="In linea" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Barra laterale" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Barre" COM_CONVERTFORMS_LABELS_COLOR="Colore testo etichetta" COM_CONVERTFORMS_LABELS_FONT_SIZE="Dimensione carattere etichetta" COM_CONVERTFORMS_IMAGE_ABOVE="Sopra il testo" COM_CONVERTFORMS_IMAGE_BELOW="Sotto il testo" COM_CONVERTFORMS_IMAGE_RIGHT="A destra del testo" COM_CONVERTFORMS_IMAGE_LEFT="A sinistra del testo" COM_CONVERTFORMS_FLAT="Piatto" COM_CONVERTFORMS_OUTLINE="Contorno" COM_CONVERTFORMS_GRADIENT="Gradiente" COM_CONVERTFORMS_EMAILS_DESC="Invia notifiche email quando gli utenti inviano un modulo." COM_CONVERTFORMS_EMAILS="Notifiche email" COM_CONVERTFORMS_EMAILS_REPLY_TO="Email a cui indirizzare le risposte" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Nome a cui indirizzare le risposte" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Dall'email" COM_CONVERTFORMS_EMAILS_FROM="Dal nome" COM_CONVERTFORMS_EMAILS_RECIPIENT="Invia a indirizzo email" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Inserisci gli indirizzi email per ricevere le notifiche di invio. Per notifiche multiple separa gli indirizzi email con una virgola." COM_CONVERTFORMS_EMAILS_SUBJECT="Oggetto dell'email" COM_CONVERTFORMS_EMAILS_BODY="Messaggio" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Desideri notifiche multiple? <br> <a href='#' data-pro-only=' Notifiche illimitate'> Passa a PRO </a> per sbloccarlo." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Allegati" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Indica la posizione di un file da allegare rispetto alla cartella principale del tuo spazio web. Utilizzare la virgola per definire più file." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Ti manca un componente aggiuntivo?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Nel caso in cui manchi un componente aggiuntivodi integrazione per la tua app preferita, faccelo sapere e saremo lieti di includerlo nella raccolta di componenti aggiuntivi di Convert Form." COM_CONVERTFORMS_API_ENABLE="Abilita API JSON" COM_CONVERTFORMS_API_DESC="L'API JSON consente di recuperare il contenuto di Convert Form utilizzando le richieste HTTP." COM_CONVERTFORMS_API_KEY="Chiave segreta" COM_CONVERTFORMS_API_KEY_DESC="Questa chiave segreta viene utilizzata per autenticare le attività critiche come CRON Jobs e l'API JSON. Se lasciato vuoto, tutte le attività che richiedono l'autenticazione dell'utente verranno disabilitate." COM_CONVERTFORMS_IMAGE_ALT="Immagine alternativa" COM_CONVERTFORMS_IMAGE_ALT_DESC="Il testo alternativo dell'immagine" COM_CONVERTFORMS_CUSTOM_CODE="Codice personalizzato" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Posiziona il codice personalizzato alla fine del modulo. Accetta HTML, CSS e Javascript. <br><br>Per Javascript, assicurati di includere il tuo codice nel tag <script>. <br>Il codice aggiunto in quest'area non viene eseguito in amministrazione." COM_CONVERTFORMS_ISSUES="Problemi" COM_CONVERTFORMS_ISSUES_DETECTED="Problemi di invio di %s rilevati" COM_CONVERTFORMS_CREATED="Data di creazione" COM_CONVERTFORMS_MODIFIED="Data di Modifica" COM_CONVERTFORMS_IP="Indirizzo IP del mittente" COM_CONVERTFORMS_USER_ID="ID del mittente" COM_CONVERTFORMS_USER_USERNAME="Nome utente del mittente" COM_CONVERTFORMS_VISITOR_ID="ID visitatore" COM_CONVERTFORMS_FORM_NAME="Nome modulo" COM_CONVERTFORMS_CAMPAIGN_NAME="Nome campagna" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Colonne" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Per abilitare campi modulo specifici, seleziona prima un modulo nella barra dei filtri." COM_CONVERTFORMS_UNTITLED_BOX="Modulo senza titolo" COM_CONVERTFORMS_SELECT_LAYOUT="Seleziona la tua impaginazione" COM_CONVERTFORMS_SHOW_LAYOUTS="Mostra impaginazione" COM_CONVERTFORMS_HIDE_LAYOUTS="Nascondi impaginazione" COM_CONVERTFORMS_FIELDS_COPY="Campo duplicato" COM_CONVERTFORMS_FIELDS_DELETE="Elimina campo" COM_CONVERTFORMS_FIELDGROUP_COMMON="Campi comuni" COM_CONVERTFORMS_FIELDGROUP_FANCY="Campi fantasia" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Campi avanzati" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Aggiungi testo libero o HTML personalizzato. Nessun limite!" COM_CONVERTFORMS_FIELD_TEXT="Casella di testo" COM_CONVERTFORMS_FIELD_TEXT_DESC="Un campo casella di testo a riga singola" COM_CONVERTFORMS_FIELD_TEXTAREA="Area di testo" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Come un campo di una casella di testo, ma può contenere un input da utente multi linea" COM_CONVERTFORMS_FIELD_NUMBER="Numero" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Una casella di testo che accetta solo numeri" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Passo" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="L'importo che il valore cambierà quando viene premuta una freccia." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Valore minimo" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Il valore minimo che il campo consentirà" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Valore massimo" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Il valore massimo che il campo consentirà" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Interrompi l'invio di moduli spam utilizzando Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Imposta il tuo sito e la chiave segreta nella pagina di configurazione." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configura reCAPTCHA ora" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Il tema del colore del widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="La dimensione del widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Menu a discesa" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Elenco che consente una selezione da un menu a discesa" COM_CONVERTFORMS_FIELD_RADIO="Pulsanti di opzione" COM_CONVERTFORMS_FIELD_RADIO_DESC="Elenco che consente una selezione dai pulsanti di opzione" COM_CONVERTFORMS_FIELD_URL="Sito web/URL" COM_CONVERTFORMS_FIELD_URL_DESC="Accetta un URL correttamente formato che inizi con http:// o https://" COM_CONVERTFORMS_FIELD_URL_INVALID="URL non valido" COM_CONVERTFORMS_FIELD_COUNTRY="Nazione" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Elenco di tutti i paesi conosciuti" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Rileva Paese Visitatore" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Se abilitato, il modulo proverà a rilevare e precompilare il Paese del visitatore. Richiede l'installazione del plugin TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Escludi Nazioni" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Valuta" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Elenco di tutte le valute conosciute" COM_CONVERTFORMS_FIELD_SUBMIT="Pulsante Invia" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Il pulsante che invierà il modulo" COM_CONVERTFORMS_FIELD_HIDDEN="Campo nascosto" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Un campo non visibile dall'utente sul front-end" COM_CONVERTFORMS_FIELD_EMAIL="Indirizzo email" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Una casella di testo che accetta solo un indirizzo email valido" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Termini di servizio" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Richiedi all'utente di accettare i tuoi termini di servizio prima che sia loro permesso di inviare il modulo" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Testo dei termini del servizio" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Questo è; il testo che va subito dopo la casella di spunta" COM_CONVERTFORMS_FIELD_CHECKBOX="Caselle di controllo" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Elenco che consente selezioni multiple dalle caselle di spunta" COM_CONVERTFORMS_FIELD_REQUIRED="E'richiesto" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Indirizzo email non valido" COM_CONVERTFORMS_FIELD_SIZE="Dimensione campo" COM_CONVERTFORMS_FIELD_SIZE_DESC="Seleziona la dimensione del campo modulo predefinito" COM_CONVERTFORMS_FIELD_TEL="Numero telefonico" COM_CONVERTFORMS_FIELD_TEL_DESC="Permetti all'utente di inserire un numero di telefono." COM_CONVERTFORMS_FIELD_DATETIME="Data/Ora" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Selettore data/ora che consente la selezione di una singola data, più date o persino un intervallo di date" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Formato data" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Il formato della data di uscita Esempi: <br> <br> d/m/Y H:i <br> Y-m-d <br> m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Mostra selettore di tempo" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Abilita la selezione orari. Se abilitato, assicurati di includere i caratteri temporali ora e minuti (H:i) nel campo Formato data." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Data minima" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="La data minima/iniziale consentita per la selezione. Supporta formati di date relative quali: oggi, domani, +5 giorni, +2 settimane" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Data massima" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="La data massima/ultima consentita per la selezione. Supporta formati di date relative quali: oggi, domani, +5 giorni, +2 settimane." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Modalità di selezione data" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Abilita l'utente a selezionare una singola data, più date o un intervallo di date." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Ora 24ore" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Visualizza la selezione orari in modalità 24 ore senza selezione AM/PM." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Regola il passo per l'input dei minuti nel Time Picker" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Visualizza in linea" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Visualizza il calendario inline come popup." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Tema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Seleziona un tema del calendario" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Formato data non valido - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disattiva il selettore di date nativo per dispositivi mobili" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Se selezionato, gli utenti mobili vedranno il selettore di date di Convert Forms invece del selettore di date nativo del dispositivo." COM_CONVERTFORMS_CSS_CLASSES="Classe CSS" COM_CONVERTFORMS_CSS_CLASSES_DESC="Aggiungi le classi CSS al contenitore dell'input. Può essere principalmente utilizzato per modificarne l'impaginazione." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Inserisci una Classe CSS" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Aggiungi classi CSS all'elemento di input. Utilizzare questa opzione per modificare lo stile dell'input stesso." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disabilita il completamento automatico del browser" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Per impostazione predefinita, i browser ricordano le informazioni che l'utente invia tramite i campi di input. Per disabilitare il completamento automatico nei moduli abilitare questa opzione." COM_CONVERTFORMS_FIELD_DESCRIPTION="Testo di aiuto" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Testo di aiuto da mostrare accanto a questo campo." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Controllo DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Convalida l'indirizzo email fornito con un controllo DNS." COM_CONVERTFORMS_FIELD_CONFIRM="Conferma" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Un campo per garantire che due campi corrispondano" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Conferma chiave di campo" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Inserisci il nome del campo che verrà utilizzato per garantire che il suo valore sia univoco" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Il campo non è configurato correttamente" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="I valori del campo non corrispondono" COM_CONVERTFORMS_HIDE_TEXT="Nascondi testo" COM_CONVERTFORMS_HIDE_TEXT_DESC="Nascondi testo dopo l'invio riuscito" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Modulo manca un campo Email" COM_CONVERTFORMS_INVALID_LEAD="Impossibile convalidare oggetto di invio" COM_CONVERTFORMS_EXCEL_SECURITY="Sicurezza Excel" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Se abilitato, i valori nel file esportato CSV che inizia con a =, +, - o @ saranno preceduti da una scheda per evitare qualsiasi iniezione CSV quando si apre il file esportato usando Excel. <br> <br> Disabilitare questa opzione solo se sei sicuro al 100% che i dati sono attendibili o se hai difficoltà ad importare il file CSV in un'applicazione di terze parti. " COM_CONVERTFORMS_CHOICE_LAYOUT="Impaginazione delle opzioni" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Seleziona l'impaginazione per visualizzare le opzioni del campo" COM_CONVERTFORMS_CHOICE_1_COLUMN="Una colonna" COM_CONVERTFORMS_CHOICE_2_COLUMN="Due colonne" COM_CONVERTFORMS_CHOICE_3_COLUMN="Tre colonne" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Fianco a fianco" COM_CONVERTFORMS_REQUIRED_INDICATION="Indicazione campo richiesto" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indica i campi obbligatori con un asterisco accanto all'etichetta di ciascun campo. Richiede che l'etichetta del campo non sia nascosta." COM_CONVERTFORMS_INPUT_MASK="Maschera di input" COM_CONVERTFORMS_INPUT_MASK_DESC="Aiuta l'utente con l'input garantendo un formato predefinito. <br> <br> <b>Sintassi:</b> <br> 9: Numerico (0-9) <br> a: Alfabetico (az o AZ ) <br> A: maiuscolo alfabetico (AZ) <br> *: alfanumerico (0-9, az o AZ) <br> &: maiuscolo alfanumerico (0-9 o AZ) <br> <br> <b>Esempi</b>: <br> Telefono: +1 (999) -9999<br> Data: 99/99/9999 <br>Codice postale: 99999? -9999 " COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Dati inviati dall'utente" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Non è stato trovato nessun invio di dati" COM_CONVERTFORMS_LEAD_INFO="Informazioni invio" COM_CONVERTFORMS_NOTES="Note" COM_CONVERTFORMS_DATE_RANGE="Intervallo di date" COM_CONVERTFORMS_START_DATE="Data di inizio" COM_CONVERTFORMS_END_DATE="Data di fine" COM_CONVERTFORMS_PERIOD="Periodo" COM_CONVERTFORMS_PERIOD_SELECT="- Seleziona periodo -" COM_CONVERTFORMS_HONEYPOT="Abilita Honeypot Anti-Spam" COM_CONVERTFORMS_HONEYPOT_DESC="Abilita l'aggiunta di un campo Honeypot al modulo che è visibile solo ai bot. In questo modo, quando il campo honeypot viene compilato, il modulo può automaticamente sapere che l'utente era uno spambot. , questo honeypot è di per sé sufficiente per evitare le voci dello spam. Se stai ancora ricevendo spam, tuttavia, o se desideri prendere un'ulteriore precauzione contro di esso, reCAPTCHA è una grande opzione aggiuntiva. " COM_CONVERTFORMS_FIELD_FILEUPLOAD="Caricamento file" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Offri all'utente la possibilità di caricare file" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="La cartella temporanea del tuo sito è impostata su <b>%s</b> ma non è scrivibile. Ti preghiamo di specificare una cartella temporanea scrivibile." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Destinazione di caricamento" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specificare una cartella di destinazione per i file caricati.<br><br><b>Automatico</b>: i file verranno caricati nella cartella /media/com_convertforms/uploads. Inoltre, verrà aggiunto un prefisso casuale all'inizio di ogni nome di file per aumentare la sicurezza.<br><br><b>Personalizzato</b>: specificare una cartella di destinazione personalizzata e una convenzione di denominazione." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Destinazione di caricamento personalizzata" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Inserisci il percorso relativo alla radice del tuo spazio web in cui verranno archiviati i file caricati. Per rinominare i file caricati utilizzare i seguenti smart tag.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: numero di indice<br><br>Può anche accettare smart tag globali come {year}, {month}, {user.id} o {randomid} per creare una destinazione di caricamento ancora più dinamica." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limite file" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Quanti file possono essere caricati? Inserisci 0 senza limiti." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Limite dimensioni file" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configura la dimensione massima consentita per ogni file caricato in megabyte. Inserisci 0 senza limite. <br> <br> La dimensione massima di caricamento del server è: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Tipi di file consentiti" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Inserisci un elenco separato da virgole dei tipi di file consentiti come: </b>.jpg, .gif, .png, .pdf<br><br>Puoi inserire tipi di media come: application/pdf, images/*, video/* oppure puoi combinare entrambi: application/*, . png, .jpg<br><br>Nota: questo limite non è infallibile e può essere ingannato, ricorda che c'è sempre un pericolo nel consentire agli utenti di caricare file.<br><br>L'estensione di PHP<b>fileinfo</b> è necessaria per individuare il tipo di file." COM_CONVERTFORMS_FIELD_FILTER="Filtro" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtra l'input dell'utente in base ai seguenti filtri. <br> <b>Testo</b>: converte l'input in una stringa di testo semplice; rimuove tutti i tag/attributi. <br><b>HTML sicuro</b>: accetta solo elementi HTML sicuri come. <br><b>Alfabetico numerico</b>: consenti solo az e 0-9 <br><b>Word</b>: consente solo caratteri az e caratteri di sottolineatura <br> <b>Intero</b>: utilizza solo il primo valore numerico <br> <b>Float</b>: consente solo caratteri az e underscore " COM_CONVERTFORMS_UPLOAD_ERROR="Modulo o chiave di campo non valido" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Campo di caricamento non valido" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="File non valido o non supportato" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Puoi caricare fino a %d file" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Trascina i file qui o" COM_CONVERTFORMS_UPLOAD_BROWSE="Sfoglia" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Manca il file temporaneo %s. Ti preghiamo di ricaricare." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="La cartella di upload %s non esiste o non è scrivibile" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Il file è troppo grande ({{filesize}} MB). Dimensione file massima: {{maxFilesize}} MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Non puoi caricare file di questo tipo." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Il tuo browser non supporta i caricamenti di file drag'n'drop." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Il server ha risposto con il codice {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Annulla caricamento" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Sei sicuro di voler annullare questo caricamento?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Rimuovi file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Non puoi caricare altri file." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Elimina automaticamente file" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Se stai ricevendo molti caricamenti, lo spazio del server usato dai files potrebbe essere rapidamente riempito, richiedendo alcune pulizie regolari per liberare spazio.<br> <br>Questa opzione ti aiuta ad eliminare automaticamente i file memorizzati nella cartella di upload dopo un determinato periodo. <br> <br> Ad esempio, inserisci 3, per cancellare automaticamente i file con più di 3 giorni di vita o 0 se vuoi conservare i file per sempre. <br> <br> Nota: il plugin The Convert Forms Uploaded Files Cleaner deve essere abilitato e il rispettivo URL del processo cron impostato sul server. " COM_CONVERTFORMS_READONLY="Sola lettura" COM_CONVERTFORMS_READONLY_DESC="Impedisci l'inserimento in questo campo" COM_CONVERTFORMS_PHPSCRIPT="Script PHP" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Visualizzazione modulo" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Lo script PHP aggiunto in quest'area viene eseguito prima della visualizzazione del modulo. <br> <br>L'obiettivo principale in questa area è la variabile <b>$formLayout</b> (Stringa) che contiene il codice HTML del modulo.<br><br>Per accedere alle impostazioni del modulo usa la variabile <b>$form</b> (Array). Non devi aggiungere i tags <?php and ?>." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Processo Modulo" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Il codice PHP aggiunto in quest'area viene eseguito poco prima che i dati del modulo siano stati salvati nel database, indipendentemente dal fatto che l'invio sia valido o meno. <br> <br>Questa area è piuttosto utile quando risulti necessario elaborare calcoli, effettuare una convalida avanzata o modificare il valore di un campo. Qualsiasi modifica alla variabile <b>$post</b> (Array) eseguita qui, si rifletterà nella voce di invio. <br><br>Per accedere alle impostazioni del modulo usa la variabile <b>$modulo</b> (Array). Non devi aggiungere i tags <?php and ?>." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Dopo l'invio del modulo" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Il codice PHP aggiunto in quest'area viene eseguito dopo che il modulo è stato inviato correttamente e i dati sono stati salvati nel database. <br> <br>Questo è piuttosto utile quando si sta tentando di eseguire alcune attività extra, ad esempio inserire i dati in modo invisibile su un altro URL. Puoi accedere all'invio finale usando la variabile <b>$submission</b> (Object). <br> <br>Per accedere alle impostazioni del modulo usa la variabile <b>$ form </b> (Array). Non devi aggiungere i tags <?php and ?>." COM_CONVERTFORMS_PHPSCRIPT_NOTE="Gli script php non vengono eseguiti in amministrazione per prevenire problemi con l'anteprima live del modulo. Provate sempre sul frontend." COM_CONVERTFORMS_FIELD_PASSWORD="Password" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Fosrnisci un sistema valdio in modo che l'utente possa inserire una password sicura" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Conferma il tipo di Campo" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Scegli il tipo di inserimento (campo di conferma) tra Testo e Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Preparazione Modulo" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Lo script PHP aggiunto in quest'area viene eseguito poco prima che i dati del modulo vengano preparati e inviati alla funzione di visualizzazione del modulo.<br><br>L'obiettivo principale in quest'area è la variabile <b>$modulo</b> (Array) che contiene le impostazioni del modulo. Non devi aggiungere i tags <?php and ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s è già un utente registrato." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s sambra un dato falso o non corretto.Ricontrolla ed inserisci un valido indirizzo email." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Errore: lo script reCAPTCHA di Google non è caricato. Assicurati che il tuo browser non lo stia bloccando o contatta l'amministratore del sito." COM_CONVERTFORMS_ACCESS_FORMS="Moduli di accesso" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Consente agli utenti del gruppo di gestire i moduli." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Accesso agli invii" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Consente agli utenti del gruppo di gestire gli Invii." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Consulta Campagne" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Consente agli utenti del gruppo di gestire le Campagne. Abilita questa opzione se riscontri problemi di invio di spam." COM_CONVERTFORMS_CSRF_CHECK="Usa il CSRF Token di Joomla!" COM_CONVERTFORMS_CSRF_CHECK_DESC="Aggiungi un ulteriore livello di protezione ai tuoi moduli verificando tutte le richieste AJAX con token CSRF. <br> <br> Se lo abiliti e stai utilizzando un meccanismo di cache che memorizza l'intero output della pagina come Joomla! Page Cache Plugin o un proxy di cache lato server come CloudFlare o Sucuri, potresti avere problemi con l'invio del modulo." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Il modulo è stato inviato correttamente" COM_CONVERTFORMS_SECRET_SET="Configurare una chiave segreta per poter utilizzare l'optin endpoint." COM_CONVERTFORMS_SECRET_NO="Nessuna chiave segreta fornita nell'URL" COM_CONVERTFORMS_SECRET_WRONG="La chiave segreta fornita nell'URL è errata" COM_CONVERTFORMS_SECURITY="Sicurezza" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA invisibile" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Blocca gli invii di spam usando il reCAPTCHA invisibile di Google" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Posizione del badge reCAPTCHA. 'inline' permette di posizionarlo con un CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="In basso a destra" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="In basso a sinistra" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Moduli inviati" COM_CONVERTFORMS_SUBMISSIONS_LIST="Lista moduli inviati" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Visualizza solo i moduli confermati" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Abilita per visualizzare solo i moduli confermati." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Nascondi valori vuoti" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Attiva questa opzione per nascondere i campi con valori vuoti." COM_CONVERTFORMS_SELECT_FORM="Seleziona il modulo" COM_CONVERTFORMS_SELECT_FORM_DESC="Seleziona il modulo da cui visualizzare gli invii" COM_CONVERTFORMS_SELECT_FORM_DESC2="Seleziona il modulo da visualizzare." COM_CONVERTFORMS_LIST_LIMIT="Limite Pagina" COM_CONVERTFORMS_LIST_LIMIT_DESC="Numero di invii da visualizzare su ogni pagina. Inserisci 0 per nessun limite." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Visualizza solo Proprietari" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Sebbene sia possibile visualizzare un elenco con invii di utenti diversi, al visitatore viene consentito accedere alla pagina dei dettagli dei propri invii solo se questa opzione è abilitata. <br> <br> Al visitatore è richiesto l'accesso al proprio account." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Visualizza Impaginazione" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Se il numero totale di invii supera il limite di pagine, i collegamenti di impaginazione verranno visualizzati sotto l'elenco degli invii stessi." COM_CONVERTFORMS_ORDER="Ordinamento Invii" COM_CONVERTFORMS_ORDER_DESC="L'ordine in cui gli invii appariranno." COM_CONVERTFORMS_ORDER_RECENT="Prima i più recenti" COM_CONVERTFORMS_ORDER_OLDEST="Prima i più vecchi" COM_CONVERTFORMS_ORDER_RANDOM="Ordine casuale" COM_CONVERTFORMS_FILTER_USER="Mostra invii da" COM_CONVERTFORMS_FILTER_USER_DESC="Seleziona per filtrare gli invii in base all'utente che ha effettuato gli invii.<br><br><b>Utente autenticato</b><br>Mostra invii effettuati solo dall'utente attualmente autenticato. Ogni utente vedrà i propri invii.<br><br><b>Tutti gli utenti</b><br>Mostra tutti gli invii.<br><br><b>Specifici utenti</b><br>Specifica i mittenti per filtrare gli invii." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Utente autenticato" COM_CONVERTFORMS_FILTER_USER_ALL="Tutti gli utenti" COM_CONVERTFORMS_FILTER_USER_SELECT="Specifici utenti" COM_CONVERTFORMS_SET_USERS="ID utenti" COM_CONVERTFORMS_SET_USERS_DESC="Inserisci gli ID utente di Joomla per filtrare gli invii. Usa una virgola per separare ID multipli." COM_CONVERTFORMS_LOAD_CSS="Carica foglio di stile" COM_CONVERTFORMS_LOAD_CSS_DESC="Disabilita questa opzione se non vuoi caricare il file CSS di Convert Forms" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Impaginazione" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Scegli l'impaginazione che verrà usata per mostrare gli invii nel front-end. Puoi anche creare le tue impaginazioni nel tuo template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Tipo di impaginazione" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Tipo di impaginazione" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="SelezionaTemplate" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Seleziona il template per mostrare gli invii. Questo template verrà usato sia per la vista elenco che per quella dettagliata.<br><br>Puoi creare le tue sovrascritture di template all'interno del tuo template." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Impaginazione contenitore" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="L'impaginazione HTML principale dell'elenco invii. Non cancellare il tag {submissions} da questo, poichè viene rimpiazzato dai dati di output." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Impaginazione riga" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="L'impaginazione HTML di ogni invio quando viene mostrato nella grafica del contenitore." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Impaginazione dettagli" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="L'impaginazione HTML della pagina dettagli degli invii." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Spazio vuoto" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Aggiungi uno spazio vuoto nel tuo modulo" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Spazio vuoto" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Inserisci uno spazio verticale in pixel tra campi." COM_CONVERTFORMS_FIELD_HEADING="Intestazione" COM_CONVERTFORMS_FIELD_HEADING_DESC="Aggiungi un'intestazione per raggruppare i tuoi campi." COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Titolo elemento HTML" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Seleziona il tipo di intestazione." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Usa collegamento" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Per far puntare l'intestazione a un URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Collegamento" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Inserisci un collegamento a cui redirezionare l'utente" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Apri in nuova scheda" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Abilita per aprire il collegamento in una nuova scheda." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Imposta la dimensione del font per l'intestazione." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Seleziona la famiglia di font per l'intestazione." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Altezza linea" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Imposta l'altezza della linea per l'intestazione." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Spaziatura lettere" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Imposta la spaziatura tra le lettere per l'intestazione." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Allineamento contenuto" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Seleziona l'allineamento dell'intestazione" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Mostra valori" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Assicurati di impostare un valore unico a ogni scelta o non avrai modo di sapere che opzione ha scelto un utente" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Usa valori calcolati" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Valori calcolati sono generalmente usati per i calcoli. Rappresentano il valore numerico di una scelta." COM_CONVERTFORMS_FIELD_DIVIDER="Divisore" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divide le sezioni del tuo modulo" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Stile bordo" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Seleziona lo stile bordo del divisore" COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solido" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Tratteggiato" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Puntato" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Larghezza bordo" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Imposta la larghezza del bordo del divisore" COM_CONVERTFORMS_FIELD_BORDER_COLOR="Colore bordo" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Imposta il colore del bordo del divisore" COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margine superiore" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Imposta il margine superiore del divisore" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margine inferiore" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Imposta il margine inferiore del divisore" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Primo giorno della settimana" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Cambia il primo giorno della settimana presentato nel calendario di scelta giorno." COM_CONVERTFORMS_ENTER_LABEL="Inserisci etichetta" COM_CONVERTFORMS_ADD_FIELD="Aggiungi campo" COM_CONVERTFORMS_ALL_FIELDS="Tutti i campi" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Campi impaginazione" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Permetti file non sicuri" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Permetti il caricamento di file non sicuri.<br><br><b>Un file è considerato non sicuro quando:</b><br>- Si trova un byte nullo nel nome del file.<br>- L'estensione del file è vietata: .php, .py, ecc.<br>- Nel contenuto del file c'è un marcatore php.<br>- Nel contenuto del file c'è un marcatore corto.<br>- C'è un estensione non consentita da qualche parte nel contenuto.<br><br>Questa opzione ti protegge anche da file non sicuri inclusi in file compressi come zip, rar, tar ecc." COM_CONVERTFORMS_LABEL_POSITION="Posizione etichetta" COM_CONVERTFORMS_LABEL_POSITION_DESC="Imposta la posizione dell'etichetta del campo" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Responso non valido" COM_CONVERTFORMS_INVALID_TASK="Attività non valida" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Prego attendi il completamento del caricamento file." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="La maschera non è completa" COM_CONVERTFORMS_SUBMISSION_ID="ID invio" COM_CONVERTFORMS_SUBMISSION_DATE="Data invia" COM_CONVERTFORMS_SUBMISSION_STATUS="Stato invio" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID campagna invio" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID modulo invio" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID visitatore invio" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID utente invio" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Conteggio invii" COM_CONVERTFORMS_FIELD_RATING="Valutazione" COM_CONVERTFORMS_FIELD_RATING_DESC="Aggiungi una valutazione nel modulo e consenti ai tuoi utenti di fornire una o più valutazioni." COM_CONVERTFORMS_FIELD_RATING_ICON="Icona" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Seleziona uno degli otto design di icone incorporati per il tuo campo di valutazione." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Imposta la dimensione delle icone di valutazione." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Colore selezionato" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Seleziona il colore che verrà utilizzato quando un'icona di valutazione verrà selezionata o il puntatore del mouse le passerà sopra." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Colore deselezionato" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Seleziona il colore che verrà utilizzato quando un'icona di valutazione non sarà selezionata." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Valutazione massima" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Inserisci le icone di valutazione massima che verranno mostrate." COM_CONVERTFORMS_FIELD_RANGESLIDER="Controllo a scorrimento per intervallo" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Aggiungi un controllo scorrimento per intervallo nel modulo e consenti agli utenti di selezionare un valore utilizzando un'interfaccia a scorrimento." COM_CONVERTFORMS_FIELD_COLORPICKER="Seletttore colore" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Il campo di selezione del colore consente agli utenti di specificare un colore utilizzando un'interfaccia di selezione del colore visiva o inserendo il proprio colore in formato esadecimale." COM_CONVERTFORMS_MIN_CHARS="Numero minimo di caratteri" COM_CONVERTFORMS_MIN_CHARS_DESC="Lunghezza minima in caratteri per questo campo. Scrivi 0 per non impostare un limite." COM_CONVERTFORMS_MAX_CHARS="Numero massimo di caratteri" COM_CONVERTFORMS_MAX_CHARS_DESC="Lunghezza massima in caratteri per questo campo. Scrivi 0 per non impostare un limite." COM_CONVERTFORMS_MIN_WORDS="Numero minimo di parole" COM_CONVERTFORMS_MIN_WORDS_DESC="Lunghezza minima in paroleper questo campo. Scrivi 0 per non impostare un limite." COM_CONVERTFORMS_MAX_WORDS="Numero massimo di caratteri" COM_CONVERTFORMS_MAX_WORDS_DESC="Lunghezza massima in paroleper questo campo. Scrivi 0 per non impostare un limite." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Ti preghiamo di allungare questo testo a %s caratteri o più. Stai attualmente usando %s caratteri." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Ti preghiamo di abbreviare questo testo a %s caratteri o meno. Stai attualmente usando %s caratteri." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Ti preghiamo di allungare questo testo a %s caratteri o più. Stai attualmente usando %s caratteri." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Ti preghiamo di abbreviare questo testo a %s caratteri o meno. Stai attualmente usando %s caratteri." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Immettere il valore minimo del controllo a scorrimento." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Immettere il valore massimo del controllo a scorrimento." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Immettere il passo del controllo a scorrimento." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Valutazioni frazionate" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Supporta valutazioni frazionate, es.: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="Editor visuale di testo" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Fornisci un editor visuale di testo all'utente per formattare il testo in questo campo" COM_CONVERTFORMS_EDITOR_HEIGHT="Altezza editor" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Imposta l'altezza in pixel" COM_CONVERTFORMS_EDITOR_SELECT="Editor di Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Seleziona l'editor Joomla da utilizzare per questo campo. <br>Se non vedi nessun editor nell'elenco, assicurati di aver installato e attivato almeno un plugin editor di Joomla tramite la gestione plugin di Joomla." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Editor Joomla non trovato: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s invii esportati" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Il download inizierà automaticamente." COM_CONVERTFORMS_EXPORT_WORKING="Esportazione" COM_CONVERTFORMS_EXPORT_PROCESSING="Processati %s di %s invii" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Impossibile trovare il file esportato" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configura adesso hCaptcha " COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Interrompi l'invio di spam da moduli utilizzando hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Seleziona se utilizzare la casella di controllo o la versione invisibile di hCaptcha." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="L'estensione PHP <b>fileinfo</b> è necessaria per individuare il tipo mime dei file caricati ma non è installata o non è caricata. Contatta il tuo fornitore di hosting per installarlo." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Stato predefinito di invio" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Imposta lo stato predefinito di ogni nuovo invio." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]� )ס!�!Ecomponents/com_convertforms/language/bg-BG/bg-BG.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Дизайн" COM_CONVERTFORMS_BEHAVIOR="Поведение" COM_CONVERTFORMS_LIST="Списък" COM_CONVERTFORMS_NO_RESULTS_FOUND="Няма резултати за %s" COM_CONVERTFORMS_CREATE_NEW="Създайте нова?" COM_CONVERTFORMS_EMAIL_ASCENDING="Имейл възходящо" COM_CONVERTFORMS_EMAIL_DESCENDING="Имейл низходящо" COM_CONVERTFORMS_ACTIONS="Действия" COM_CONVERTFORMS_VIEW_LEADS="Преглед на подадените заявки" NRI_PLG_CONVERTFORMS="Convert Forms плъгин" COM_CONVERTFORMS_CONFIGURATION="Конфигурация Convert Forms" COM_CONVERTFORMS_LOADCSS="Зареди css-стилове" COM_CONVERTFORMS_LOADCSS_DESC="Изберете, за да заредите стиловете към разширенията. Или деактивирйате това, ако поставите свои стилове в свой css-файл, или например в поле за персонализиран код 'Custom Code', или в css стиловете на темплейта." COM_CONVERTFORMS_DEBUG="Отстраняване на грешки" COM_CONVERTFORMS_DEBUG_DESC="Активирайте тази опция, за да започнете отстраняване нагрешки и неочаквано поведение. Съобщенията за грешки ще се появяват в конзолата на вашия браузър (натиснете F12) и към папката Logs." COM_CONVERTFORMS_FORMS="Формуляри" COM_CONVERTFORMS_FORM="Формуляр" COM_CONVERTFORMS_NEW_FORM="Нов формуляр" COM_CONVERTFORMS_EDIT_FORM="Редактирай формуляр" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s формуляри са копирани" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s формуляри са публикувани" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s формуляри са непубликувани" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s формуляри са в кошчето" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s формуляри са изтрити" COM_CONVERTFORMS_FORM_ASCENDING="Формуляр възходящо" COM_CONVERTFORMS_FORM_DESCENDING="Формуляр низходящо" COM_CONVERTFORMS_FORM_SELECT="- Избери формуляр - " COM_CONVERTFORMS_FORM_CREATE_MODULE="Публикуване, създаване на модул" COM_CONVERTFORMS_FORM_LEADS="Досега този формуляр има общо %s подадени заявки" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Публикувай чрез шорткод %s" COM_CONVERTFORMS_CAMPAIGN="Кампания" COM_CONVERTFORMS_CAMPAIGNS="Кампании" COM_CONVERTFORMS_NEW_CAMPAIGN="Нова кампания" COM_CONVERTFORMS_EDIT_CAMPAIGN="Редактирай кампания" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Въведете име на кампания. Това име ще бъде видимо само от вас." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Кампании са копирани" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Кампании са непубликувани" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Кампании са публикувани" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Кампании са в кошчето" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Кампании са изтрити" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s заявки са непубликувани" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s заявки са публикувани" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s заявки са в кошчето" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s заявки са изтрити" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Кампании възходящо" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Кампании низходящо" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Избери Кампания -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Запишете кампанията, за да може да настроите интеграция" COM_CONVERTFORMS_CAMPAIGN_CHANGED="Кампанията е променена" COM_CONVERTFORMS_CAMPAIGN_SYNC="Синхронизиране подаването на заявки" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Изберете дали заявките да се синхронизират със софтуер на трети страни или да се събират само в базата данни. Забележка: Ако трябва да се интегрирате със софтуер на трети страни като MailChimp, Aweber, GetResponse, Active Campaign и т.н., моля, инсталирайте съответния аддон в секцията Addons." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Кампании са изтрити" COM_CONVERTFORMS_CHOOSE_SERVICE="Изберете услуга" COM_CONVERTFORMS_PENDING_LEADS="Заявки в изчакване" COM_CONVERTFORMS_SUBMISSIONS="Заявки" COM_CONVERTFORMS_SUBMISSION="Заявка" ; COM_CONVERTFORMS_LATEST_SUBMISSIONS="Latest Submissions" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Потвърдени" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Непотвърдени" COM_CONVERTFORMS_EDIT_CONVERSION="Редактирай заявка" COM_CONVERTFORMS_SUBMISSION_INVALID="Заявката не е открита" COM_CONVERTFORMS_NOT_AUTHORIZED="Не сте упълномощени за достъп до тази страница." COM_CONVERTFORMS_LEADS_ASC="Заявки възходящо" COM_CONVERTFORMS_LEADS_DESC="Заявки низходящо" COM_CONVERTFORMS_LEADS_EXPORT="Експорт на заявките" COM_CONVERTFORMS_ADDONS="Addons" COM_CONVERTFORMS_INSTALL_ADDONS="Виж инсталираните Addons" COM_CONVERTFORMS_ADDONS_MISSING_KEY="За да можете да инсталирате допълненията на Convert Forms Addons, ще трябва да въведете своя Ключ за изтегляне в настройките на Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Addons добавките разширяват функционалността на Convert Forms. С тези добавки можете да се свързвате с софтуери на трети страни, да интегрирате нови функции и да направите Convert Forms още по-мощен." COM_CONVERTFORMS_LAST_YEAR="Миналата година" COM_CONVERTFORMS_THIS_YEAR="Тази година" COM_CONVERTFORMS_LAST_MONTH="Миналия месец" COM_CONVERTFORMS_THIS_MONTH="Този месец" COM_CONVERTFORMS_LAST_WEEK="Миналата седмица" COM_CONVERTFORMS_THIS_WEEK="Тази седмица" COM_CONVERTFORMS_LAST_7_DAYS="Предишните 7 дена" COM_CONVERTFORMS_YESTERDAY="Вчера" COM_CONVERTFORMS_TODAY="Днес" COM_CONVERTFORMS_AVG_DAY="Средно за ден (този месец)" COM_CONVERTFORMS_PROJECTION="Прогноза за този месец" COM_CONVERTFORMS_TOTAL="Общо" COM_CONVERTFORMS_CHOOSE_FILE="Изберете .cnvf файл" COM_CONVERTFORMS_FORMS_NAME_DESC="Уникалното и описателно име ще ви помогне в бъдеще с появята си в таблото за управление, в анализи и т.н." COM_CONVERTFORMS_BACKGROUND_IMAGE="Фоново изображение" COM_CONVERTFORMS_IMAGE_DESC="Изберете фоново изображение" COM_CONVERTFORMS_CUSTOM_URL="Персонализиран URL адрес" COM_CONVERTFORMS_BACKGROUND_URL="URL адрес на фоново изображение" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Въведете персонализиран URL адрес за изображение" COM_CONVERTFORMS_BACKGROUND_FILE="Фоново изображение" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Изберете изображение за качване." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Можете да предоставите изображение, което да се появи като фон зад формата. Изберете <b>Качване</b>, за да качите ново изображение или <b>Персонализиран URL</b>, за да изтеглите изображение от URL адрес. За да работи тази настройка, избраният цвят на фона трябва да е прозрачен." COM_CONVERTFORMS_FORM_BUILDER="Строител на форми" COM_CONVERTFORMS_FIELD_TYPE="Тип Поле" COM_CONVERTFORMS_FIELD_TYPE_DESC="Атрибутът Тип на Поле определя типа на входящия елемент за показване." COM_CONVERTFORMS_FIELD_LABEL="Етикет поле" COM_CONVERTFORMS_FIELD_LABEL_DESC="Етикетът на полето определя етикет за входящ елемент." ; COM_CONVERTFORMS_FIELD_NAME="Field Name" COM_CONVERTFORMS_FIELD_NAME_DESC="Указва името на входния елемент, който се използва за свързване с данните от формуляра след подаването му. Използвайте тази опция и за съпоставяне на полета от формата с интегрираните приложения." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Текстът, който искате да бъде показан в полето, преди потребителят да въведе каквито и да е данни." COM_CONVERTFORMS_REQUIRED_NAME="Задължително поле" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Полета" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Използвате <b>безплатната</b> версия, която поддържа само 1 имейл поле. <b>Надстройте до Pro версия</b>, за да можете да управлявате неограничен брой полета." COM_CONVERTFORMS_GENERAL="Общи" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Подравняване на текст в Поле" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Подравняване на текст във формата" COM_CONVERTFORMS_INPUT_COLOR="Поле цвят на текст" COM_CONVERTFORMS_INPUT_BGCOLOR="Поле фонов цвят" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Поле цвят контур" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Добавя вътрешна сянка към полето за въвеждане" COM_CONVERTFORMS_INPUT_FONT_SIZE="Поле размер на шрифта" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Поле размер на шрифта" COM_CONVERTFORMS_VPADDING_SIZE="Вертикален отстъп" COM_CONVERTFORMS_HPADDING_SIZE="Хоризонтален отстъп" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Макс. ширина поле" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Въведете максимална ширина по избор или направете това поле да покрие цялата площ на екрана. Обърнете внимание, че това е максималната ширина, което означава, че формулярът винаги ще се побира на по-малки площи." COM_CONVERTFORMS_FORM_WIDTH="Персонализирана макс. ширина" COM_CONVERTFORMS_FORM_WIDTH_DESC="Въведете максимална ширина по ваш избор." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Премахване на подразбиращото се допълване на клетки" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Премахване на подразбиращото се допълване на клетки между полето на съдържанието и краищата на полето на формата" COM_CONVERTFORMS_FORM_BORDER_STYLE="Стил рамка" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Приложи рамка около формата" COM_CONVERTFORMS_FORM_BORDER_COLOR="Цвят на рамка" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Цвят рамка на формата" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Ширина рамка" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Ширина рамка на формата" COM_CONVERTFORMS_BOX_RADIUS="Радиус на полето" COM_CONVERTFORMS_BORDER_RADIUS="Радиус на рамка" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Въведете стойност за радиус на рамка" COM_CONVERTFORMS_COLLECT_LEADS_USING="Събиране на подадени заявки с помощта на Кампания" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Изпратените данни, събрани от този формуляр, ще бъдат асоциирани с избраната кампания. Можете да управлявате кампаниите си в секцията Кампании." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Успешно подаване" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Изберете действието, което искате да се извърши, след успешно подаване" COM_CONVERTFORMS_DISPLAY_MSG="Показване на съобщение" COM_CONVERTFORMS_REDIRECT_USER="Пренасочване на потребителя" COM_CONVERTFORMS_SUCCESS_TEXT="Съобщение след успешно подаване" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Въведете съобщението, което искате да покажете на потребителя, след като бъде успешно добавен към списъка." COM_CONVERTFORMS_SUCCESS_URL="URL пренасочване" COM_CONVERTFORMS_SUCCESS_URL_DESC="Въведете URL адреса, на който искате да пренасочите потребителя, след като бъде успешно добавен към списъка." COM_CONVERTFORMS_PASS_DATA="Предайте данните от формата към URL адреса за пренасочване" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Стил на бутона за изпращане" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Оформете бутона с приятни ефекти." COM_CONVERTFORMS_BTN_SHADOW_DESC="Добавя външна сянка към бутона" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Цвят на текста при задържане над него" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Цвят на текста при задържане над него" COM_CONVERTFORMS_CUSTOM_CSS="Потребителски CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Стилизирайте формата със собствен персонализиран CSS.<br> <br>За да ви помогне с оформянето, добавеният код в тази област се изпълнява и в бекенда." COM_CONVERTFORMS_CLASS_SUFFIX="CSS клас суфикс" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="CSS клас суфикс" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Височина текстово поле" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Височината на текстовото поле указва видимата област в редове текс." COM_CONVERTFORMS_CHOICES="Избор" COM_CONVERTFORMS_CHOICES_DESC="Добавете допълнителни опции към това поле." COM_CONVERTFORMS_FIELD_VALUE="Стойност по подразбиране" COM_CONVERTFORMS_FIELD_VALUE_DESC="Въведете текста за полето по подразбиране." COM_CONVERTFORMS_HIDE_LABELS="Скриване на етикет" COM_CONVERTFORMS_HIDE_LABELS_DESC="Изберете тази опция, за да скриете етикета на полето на формата" COM_CONVERTFORMS_IMAGE_SOURCE="Източник изображение" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Можете да поставите изображение, което ще се появи сред съдържанието на формата. Изберете <b>Качване</b>, за да качите ново изображение или <b>Потребителски URL</b> адрес, за да въведете потребителски URL адрес." COM_CONVERTFORMS_IMAGE_URL="URL на изображение" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Скриване на изображението на малки екрани" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="На по-малки екрани като мобилни, по-малките модалности изглеждат по-добре. За да намалите размера на модала, можете да скриете изображението с тази настройка." COM_CONVERTFORMS_HORIZONTAL_POSITION="Хоризонтална позиция" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Хоризонтална позиция" COM_CONVERTFORMS_VERTICAL_POSITION="Вертикално положение" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Вертикална позиция" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Ширина на изображението" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Задайте ширина на изображението" COM_CONVERTFORMS_BUTTON_ALIGN="Подравняване на бутони" COM_CONVERTFORMS_FORM_POSITION="Позиция на формата" COM_CONVERTFORMS_FORM_POSITION_DESC="Задайте позиция на формуляра спрямо контейнера с текст" COM_CONVERTFORMS_FORM_SIZE="Размер на контейнера за форми" COM_CONVERTFORMS_COLUMNS_DESC="Колко колони ще бъдат използвани. 6 колони заемат 50% от ширината." COM_CONVERTFORMS_MESSAGE="Текстово съобщение" COM_CONVERTFORMS_MESSAGE_DESC="Въведете текстовото съобщение на формуляра" COM_CONVERTFORMS_IMAGE_POSITION="Позиция на изображението" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Позиция на изображението спрямо текста" COM_CONVERTFORMS_FOOTER="Форма на долния колонтитул" COM_CONVERTFORMS_BUTTON_TEXT="Техт бутон" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Текст за етикета на бутона" COM_CONVERTFORMS_BTN_FONT_SIZE="Размер на текста в бутона" COM_CONVERTFORMS_IMAGE_SIZE="Размер контейнер за изображения" COM_CONVERTFORMS_BODY_FONT="Шрифтово семейство" COM_CONVERTFORMS_BODY_FONT_DESC="Изберете шрифтово семейство за текстовете във формата. Имайте предвид, че зареждането на нестандартни шрифтове като Google Fonts може да повлияе на скоростта на уебсайта. Изберете По подразбиране, за да използвате шрифта по подразбиране на вашия уебсайт." COM_CONVERTFORMS_EMAIL="Имейл" COM_CONVERTFORMS_DATE="Дата" COM_CONVERTFORMS_CREATED="Дата на създаване" COM_CONVERTFORMS_SUBMISSION="Заявка" COM_CONVERTFORMS_PREVIEW_SUCCESS="Показва съобщение за успех" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Тази версия ще се показва на екрани с размер 990px и по-високи" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Тази версия ще се показва на екрани с размер 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Тази версия ще се показва на екрани с размер 768px и по-малки" COM_CONVERTFORMS_DEVICE_DESKTOP="Декстоп" COM_CONVERTFORMS_DEVICE_TABLET="Таблет" COM_CONVERTFORMS_DEVICE_MOBILE="Мобилен" COM_CONVERTFORMS_RESET_FORM="Нулиране на формуляра" COM_CONVERTFORMS_RESET_FORM_DESC="Нулиране на формуляра след успешно изпращане" COM_CONVERTFORMS_HIDE_FORM="Скрий формуляр" COM_CONVERTFORMS_HIDE_FORM_DESC="Скриване на формуляр след успешно изпращане" COM_CONVERTFORMS_TEMPLATES="Шаблони" COM_CONVERTFORMS_TEMPLATES_SELECT="Изберете шаблон" COM_CONVERTFORMS_TEMPLATES_BLANK="Започни начисто" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Започни начисто и създай нов формуляр" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="В редица" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Странична лента" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Ленти" COM_CONVERTFORMS_LABELS_COLOR="Цвят на текста на етикета" COM_CONVERTFORMS_LABELS_FONT_SIZE="Размер на шрифта в етикета" COM_CONVERTFORMS_IMAGE_ABOVE="На текста" COM_CONVERTFORMS_IMAGE_BELOW="Под текста" COM_CONVERTFORMS_IMAGE_RIGHT="В дясно от текста" COM_CONVERTFORMS_IMAGE_LEFT="В ляво от текста" COM_CONVERTFORMS_FLAT="Плосък" COM_CONVERTFORMS_OUTLINE="Контур" COM_CONVERTFORMS_GRADIENT="Градиент" COM_CONVERTFORMS_EMAILS_DESC="Изпращане на известия по имейл, когато потребителите изпратят формуляр." COM_CONVERTFORMS_EMAILS="Известия по имейл" COM_CONVERTFORMS_EMAILS_REPLY_TO="Отговор към имейл" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Отговор към Име" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="От имейл" COM_CONVERTFORMS_EMAILS_FROM="Име формуляр" COM_CONVERTFORMS_EMAILS_RECIPIENT="Изпрати към имейл" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Въведете имейл адресите, на които желаете да получавате известия при изпращане на формуляра. За известия към множество имейли, моля отделете ги със запетая." COM_CONVERTFORMS_EMAILS_SUBJECT="Тема на имейла" COM_CONVERTFORMS_EMAILS_BODY="Съобщение" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Искате няколко известия? <br> <a href='#' data-pro-only='Unlimited Notifications'> Надстройте до PRO</a>, за да ги отключите." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Прикачени" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Местоположение на файл, който да прикачите към корена на уеб пространството ви. Използвайте запетая, за да определите няколко файла." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Липсва ли ви добавка addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="В случай че ви липсва добавка за интеграция за любимото ви приложение, моля, уведомете ни и ще се радваме да го включим в колекцията Convert Forms addons." COM_CONVERTFORMS_API_ENABLE="Разреши JSON API" COM_CONVERTFORMS_API_DESC="JSON API ви позволява да изтеглите Convert Forms съдържание, използвайки HTTP заявки." COM_CONVERTFORMS_API_KEY="Таен ключ" COM_CONVERTFORMS_API_KEY_DESC="Този секретен ключ се използва за удостоверяване на критични задачи като CRON Jobs и JSON API. Ако оставите полето празно, всички задачи, изискващи удостоверяване на потребителя, ще бъдат бъдат деактивирани." COM_CONVERTFORMS_IMAGE_ALT="Alt-таг за изображение" COM_CONVERTFORMS_IMAGE_ALT_DESC="Алтернативен текст към изображение" COM_CONVERTFORMS_CUSTOM_CODE="Потребителски код" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Поставете потребителски код в края на формуляра. Приемат се HTML, CSS и Javascript.<br> <br>За Javascript не забравяйте да рамкирате кода с <script>.<br> <br>Добавеният код в тази област не се изпълнява в бекенда." COM_CONVERTFORMS_ISSUES="проблеми" COM_CONVERTFORMS_ISSUES_DETECTED="%s открити проблеми при изпращане" COM_CONVERTFORMS_CREATED="Дата на създаване" COM_CONVERTFORMS_MODIFIED="Дата на промяна" COM_CONVERTFORMS_IP="IP адрес на подателя" COM_CONVERTFORMS_USER_ID="ID на подателя" COM_CONVERTFORMS_USER_USERNAME="Потребителско име на подателя" COM_CONVERTFORMS_VISITOR_ID="ID на посетителя" COM_CONVERTFORMS_FORM_NAME="Име формуляр" COM_CONVERTFORMS_CAMPAIGN_NAME="Име Кампания" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Колони" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="За да активирате конкретни полета, първо изберете формуляр в лентата с филтри." COM_CONVERTFORMS_UNTITLED_BOX="Формуляр без заглавие" COM_CONVERTFORMS_SELECT_LAYOUT="Изберете макет" COM_CONVERTFORMS_SHOW_LAYOUTS="Покажи макети" COM_CONVERTFORMS_HIDE_LAYOUTS="Скриване на макети" COM_CONVERTFORMS_FIELDS_COPY="Дублирай поле" COM_CONVERTFORMS_FIELDS_DELETE="Изтрий поле" COM_CONVERTFORMS_FIELDGROUP_COMMON="Основни полета" COM_CONVERTFORMS_FIELDGROUP_FANCY="Подобрени полета" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Полета за напреднали" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Добавете свободен текст или HTML код. Без ограничение!" COM_CONVERTFORMS_FIELD_TEXT="Текстово поле" COM_CONVERTFORMS_FIELD_TEXT_DESC="Текстово поле с един ред" COM_CONVERTFORMS_FIELD_TEXTAREA="Област текст" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Подобно на текстовото поле, но може да побере въвеждането на многоредов текст." COM_CONVERTFORMS_FIELD_NUMBER="Номер" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Текстово поле, което приема само числа" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Стъпка" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Стъпка, с която стойността ще се промени при натискане на стрелка." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Минимална стойност" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Минималната стойност, която полето ще позволи" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Максимална стойност" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Максималната стойност, която полето ще позволи" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Спрете подаването на спам чрез Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Моля, задайте вашия сайт и Secret key в страницата за конфигуриране." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Конфигурирайте reCAPTCHA сега" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Цветова тема на джаджа" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Размер на джаджа" COM_CONVERTFORMS_FIELD_DROPDOWN="Падащ списък" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Списък, който позволява един избор от падащо меню" COM_CONVERTFORMS_FIELD_RADIO="Радио бутони" COM_CONVERTFORMS_FIELD_RADIO_DESC="Списък, който позволява един избор от радио бутоните" COM_CONVERTFORMS_FIELD_URL="уебсайт / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Приемане правилно оформен URL адрес, който започва с http: // или с https: //" COM_CONVERTFORMS_FIELD_URL_INVALID="Невалиден URL" COM_CONVERTFORMS_FIELD_COUNTRY="Държава" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Списък на известните държави" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Откриване на страната на посетителя" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Ако е активирано, формулярът ще се опита да открие и попълни страната на посетителя. Изисква да бъде инсталирана приставката TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Изключи държави" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Валута" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Списък на известните валути" COM_CONVERTFORMS_FIELD_SUBMIT="Бутон Изпрати" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Бутонът, който ще изпрати формуляра" COM_CONVERTFORMS_FIELD_HIDDEN="Скрито поле" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Поле, което не се вижда от потребителя в сайта." COM_CONVERTFORMS_FIELD_EMAIL="Имейл адрес" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Текстово поле, което приема само валиден имейл адрес" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Условия за ползване" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Изисква от потребителя да се съгласи с вашите Условия за ползване, преди да им бъде разрешено да изпратят формуляра" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Условия за ползване – текст" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Текстът, който се появява веднага след отметката" COM_CONVERTFORMS_FIELD_CHECKBOX="Отметки чекбокс" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Списък, който позволява множество отметки в чекбокс квадратчетата" COM_CONVERTFORMS_FIELD_REQUIRED="Задължително" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Невалиден имейл адрес" COM_CONVERTFORMS_FIELD_SIZE="Размер на полето" COM_CONVERTFORMS_FIELD_SIZE_DESC="Изберете размер по подразбиране на поле" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Позволява потребителят да въведе телефонен номер." COM_CONVERTFORMS_FIELD_DATETIME="Дата / Час" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Избор на дата/час, който позволява избор на една дата, няколко дати или диапазон по дати." COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Формат на дата" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Формат на показваната дата. Примери:<br><br>d/m/Y H: i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Покажи Избор на час" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Активира Избор на час. Ако е активирано, уверете се, че сте включили символите за време (H: i) в полето Формат ва дата." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Мин. Дата" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Минимална / най-ранната дата, разрешена за избор. Поддържа относителни формати като: днес, утре, +5 дена, +2 седмици / today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Макс. Дата" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Максимална / последна дата, разрешена за избор. Поддържа относителни формати като: днес, утре, +5 дена, +2 седмици / today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Режим на избор на дата" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Позволете на потребителя да избере една дата, няколко дати, или диапазон от дати." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24 ч. формат" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Показва избор на време в 24 часов режим без избор на AM/PM." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Стъпка минути" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Регулира стъпката за минути при Избор на час" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Покажи на реда" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Показва календара вътре във формуляра вместо като изскачащ прозорец." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Тема" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Избор тема на календар" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Невалиден формат за дата - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Деактивирайте системния Избор на дата за мобилни устройства" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Ако е поставено отметка, потребителите на мобилни устройства ще видят Избор на дата от Convert Form, вместо системния за устройството за избор на дата на интерфейс." COM_CONVERTFORMS_CSS_CLASSES="CSS клас" COM_CONVERTFORMS_CSS_CLASSES_DESC="Добавете CSS класове към контейнера за въвеждане. Това може да се използва предимно за целите на оформлението." COM_CONVERTFORMS_INPUT_CSS_CLASSES="CSS клас, въвеждане " COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Добавете CSS класове към въвеждащия елемент. Използвайте тази опция, за да стилизирате въвждането." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Деактивиране на автоматичното довършване на браузъра" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="По подразбиране браузърите запомнят информация, която потребителят предоставя чрез полета за въвеждане. Активирайте тази опция, за да деактивирате автоматичното попълване в полетата." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS проверка" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Потвърдете въведения имейл адрес с DNS проверка." COM_CONVERTFORMS_FIELD_CONFIRM="Потвърждение" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Поле за потвърждение съвпадение по данни на две полета" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Потвърждение ключ на поле" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Въведете ключа на полето, който ще се използва за проверка, че стойността му съвпада" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Полето не е конфигурирано правилно" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Стойностите на полето не съвпадат" COM_CONVERTFORMS_HIDE_TEXT="Скрий текст" COM_CONVERTFORMS_HIDE_TEXT_DESC="Скриване на текста след успешно изпращане" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Във формуляра липсва имейл поле" COM_CONVERTFORMS_INVALID_LEAD="Не може да се валидира Изпратеният обект" COM_CONVERTFORMS_EXCEL_SECURITY="Excel – разширена безопасност" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Ако е активирана, стойностите в CSV експортирания файл, започващ с =, +, - или @, ще бъдат префиксирани с табулация, за да се избегне каквото и да е CSV инжектиране при отваряне на експортирания файл в Excel.<br> <br>Деактивирайте тази опция само ако сте 100% сигурни, че данните са надеждни или ако имате проблеми с импортирането на CSV файла в приложение на 3-та страна." COM_CONVERTFORMS_CHOICE_LAYOUT="Избор на макет" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Изберете макет за показване избора на полета" COM_CONVERTFORMS_CHOICE_1_COLUMN="Една колона" COM_CONVERTFORMS_CHOICE_2_COLUMN="Две колони" COM_CONVERTFORMS_CHOICE_3_COLUMN="Три колони" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Един до друг" COM_CONVERTFORMS_REQUIRED_INDICATION="Индикация на задължително поле" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Посочва задължителните полета със звездичка до всеки етикет на поле. Изисква се етикетът на полето да не е скрит." COM_CONVERTFORMS_INPUT_MASK="Маска Въвеждане" COM_CONVERTFORMS_INPUT_MASK_DESC="Помогнете на потребителя с въвеждането чрез предварително определен формат.<br><br><b>Синтаксис:</b><br>9: Числа (0-9) <br>a: Букви (a-я или A-Я) <br>A: Главни букви (A-Я) <br>*: Буквено-цифрови (0-9, a-я или A-Я) <br>&: Главни буквено-цифрови (0-9 или A-Я)<br><br><b>Примери</b>:<br>Телефон: +1 (999) -9999<br>Дата: 99/99 / 9999<br>Пощенски код: 99999? -9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Подадени от потребителя данни" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Не са открити изпратени данни" COM_CONVERTFORMS_LEAD_INFO="Информация Подаване" COM_CONVERTFORMS_NOTES="Бележки" COM_CONVERTFORMS_DATE_RANGE="Диапазон от дати" COM_CONVERTFORMS_START_DATE="Начална дата" COM_CONVERTFORMS_END_DATE="Крайна дата" COM_CONVERTFORMS_PERIOD="Диапазон" COM_CONVERTFORMS_PERIOD_SELECT="- Избери диапазон дати - " COM_CONVERTFORMS_HONEYPOT="Активиране на анти-спам Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Разрешете, за да добавите скрито Honeypot поле, която ше е видимо само за ботове. По този начин, когато полето се попълни, формулярът може автоматично да разбере, че потребителят е бил спамбот.<br><br>В много сайтове Honeypot е достатъчен, за да се избегнат спам записи. Ако все още получавате спам или искате да предприемете допълнителна предпазна мярка срещу него, reCAPTCHA е чудесна допълнителна опция." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Качване на файл" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Дава възможност на потребителя да качва файлове" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Ограничаване бр. файлове" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Колко файла могат да бъдат качени? Ако е въведено 0 – без ограничение." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Ограничение размера на файл" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Задайте максималния допустим размер за всеки качен файл в мегабайти. Въведете 0 за без ограничение. <br><br>Максималният размер на качването на вашия сървър е: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Разрешени типове файлове" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Филтър" COM_CONVERTFORMS_FIELD_FILTER_DESC="Филтрирайте въвеждането от потребителя въз основа на следните филтри.<br><b>Текст</b>: Преобразува въвеждането в обикновен текстов низ; премахва всички тагове / атрибути. <br>Безопасен HTML: Приемайте само безопасни HTML елементи. Букви-Цифри</b>: Разрешава a-я и 0-9<br><b>Думи</b>: Разрешава само букви a-я и подчертаване<br><b>Integer</b>: Използва само първата цифра <b>Float</b>: Разрешава само символи a-я и подчертава" COM_CONVERTFORMS_UPLOAD_ERROR="Невалиден формуляр или ключ на поле" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Невалидно поле за качване" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Невалиден или неподдържан файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Можете да качвате до %d файла" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Завлачете и пуснете файлове тук или" COM_CONVERTFORMS_UPLOAD_BROWSE="Преглед" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Папката за качване %s не съществува или папката не е с разрешени права за запис в нея" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Файлът е твърде голям ({{filesize}} MB). Максимален размер на файловете: {{maxFilesize}} MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Не можете да качвате файлове от този тип." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Браузърът ви не поддържа качване на файлове с Drag'n'drop." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Сървърът отговори с {{statusCode}} код." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Прекратяване на качването" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Наистина ли искате да прекратите това качване?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Премахване на файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Не можете да качвате повече файлове." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Автоматично изтриване на файлове" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Ако получавате много качвания, сървърното пространство може бързо да се запълни, което изисква редовно обслужване за освобождаване на място.<br><br>Тази опция ви помага автоматично да се изтриват файлове от папката за качване след зададен период.<br><br>Например въведете 3, за да изтриете автоматично файлове на възраст над 3 дни или 0, ако искате да запазите файловете завинаги.<br><br>Забележка: Приставката Convert Forms Uploaded Files Cleaner plugin трябва да е активирана и да е конфигуриран съответния Cron Job URL адрес на вашия сървър," COM_CONVERTFORMS_READONLY="Само за четене" COM_CONVERTFORMS_READONLY_DESC="Предотвратяване въвеждане в това поле" COM_CONVERTFORMS_PHPSCRIPT="PHP скриптове" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Формулар Показване" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="PHP скриптът, добавен в тази област, се изпълнява веднага преди показването на формата.<br> <br>Основният акцент в тази област е променливата <b>$formLayout</b> (String), която съдържа HTML кода на формата.<br> <br>За достъп до настройките на формата използвайте <b>$form</b> (Array ) променлива.<br> <br>Не е необходимо да включвате <?php and ?> маркерите." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Формуляр процес" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="PHP кодът, добавен в тази област, се изпълнява непосредствено преди данните от формуляра да бъдат запазени в базата данни, независимо дали изпращането е валидно или не.<br><br>Тази област е по-полезна, когато трябва да обработите изчисления, да извършите разширено валидиране или да промените стойността на полето. Всички модификации на променлива <b>$post</b> (Array), извършени тук, ще бъдат отразени в записа за изпращане.<br> <br>За достъп до настройките на формуляра, използвайте променливата <b>$form</b> (Array).<br> <br>Не е необходимо да включвате маркерите <?php and ?>." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="След подаване на формуляр" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="PHP кодът, добавен в тази област, се изпълнява, след като формулярът е успешно изпратен и данните са записани в базата данни.<br> <br>Това е по-полезно, когато се опитвате да изпълните някои допълнителни задачи като безмълвно публикуване на данни на друг URL адрес. Можете да получите достъп до окончателното изпращане чрез променливата <b>$submission</b> (Object).<br> <br>За достъп до настройките на формуляра използвайте променливата <b>$form</b> (Array).<br> <br>Не е необходимо да включвате маркерите <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Парола" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Предоставя на потребителя безопасно да въведе парола" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Поле за потвъждаване" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Изберете типа на Поле за потвърждаване между Текст и Парола." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Предзареждане и подготвяне формуляр" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="PHP скриптът, добавен в тази област, се изпълнява точно преди да се подготвят данните на формата и да се изпратят до функцията за показване на формуляра.<br> <br>Основният акцент в тази област е променливата <b>$form</b> (Array), която съдържа настройките на формуляра.<br> <br>Не е необходимо да включвате маркерите <?php and ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s вече е регистриран." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s изглежда фалшив или невалиден... Моля, въведете истински имейл адрес." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Грешка: Google reCAPTCHA скриптът не се зарежда. Уверете се, че браузърът ви не го блокира или се свържете с администратора на сайта." COM_CONVERTFORMS_ACCESS_FORMS="Достъп управление формуляри" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Позволява на потребителите в тази група да управляват формуляри." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Достъп до изпращания" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Позволява на потребителите в тази група да управляват Изпратените заявки от формуляр." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Достъп до Кампании" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Позволява на потребителите в тази група да управляват Кампании. Активирайте това, ако имате с проблеми с изпращането на спам." COM_CONVERTFORMS_CSRF_CHECK="Използвайте Joomla! CSRF Token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Добавете допълнителен защитен слой към формулярите си, като верифициране всички AJAX заявки с CSRF Tokens.<br><br>Ако активирате това и използвате кеш механизъм, който кешира целия изход на страницата, като Joomla! Page Cache plugin или кеширащ прокси сървър като CloudFlare или Sucuri, може да срещнете проблеми с изпращането на формуляра." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Формулярът е успешно изпратен" COM_CONVERTFORMS_SECRET_SET="Моля, конфигурирайте секретен ключ, за да може да ползвате optin крайната точка." COM_CONVERTFORMS_SECRET_NO="Не е предоставен секретен ключ в URL адреса " COM_CONVERTFORMS_SECRET_WRONG="Грешен секретен ключ е предоставен в URL " COM_CONVERTFORMS_SECURITY="Сигурност" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Спрете подаването на спам, като използвате Invisible Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Значка" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Позиция на значката reCAPTCHA. 'inline' ви позволява да го позиционирате с CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Долу в дясно" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Долу в ляво" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Заявки" COM_CONVERTFORMS_SUBMISSIONS_LIST="Списък заявки" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Показва само потвърденените" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Активирайте това, за да се показват само потвърдени заявки." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Скриване на празните стойности" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Активирайте тази опция, за да скриете полета с празни стойности." COM_CONVERTFORMS_SELECT_FORM="Изберете формуляр" COM_CONVERTFORMS_SELECT_FORM_DESC="Изберете формуляра, от който да се показват заявките" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" COM_CONVERTFORMS_LIST_LIMIT="Лимит страници" COM_CONVERTFORMS_LIST_LIMIT_DESC="Брой заявки за показване на страница. Въведете 0 за без ограничение." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Виж само своите" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Въпреки че можете да покажете списък с заявки от различни потребители, на посетителя ще бъде разрешен достъп до страницата с подробности само за собствените заявки, ако тази опция е активирана.<br> <br>Посетителят е длъжен да влезе в акаунта си." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Покажи пагинация" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Ако общият брой на заявките надвишава ограничението за показване на екран, под списъка за подаване ще бъдат показани връзки за пагинация страници." COM_CONVERTFORMS_ORDER="Сортиране на заявки" COM_CONVERTFORMS_ORDER_DESC="Ред на показване на заявките." COM_CONVERTFORMS_ORDER_RECENT="Най-новите първи" COM_CONVERTFORMS_ORDER_OLDEST="Най-старите първи" COM_CONVERTFORMS_ORDER_RANDOM="Произволен ред" COM_CONVERTFORMS_FILTER_USER="Показване на заявки от" COM_CONVERTFORMS_FILTER_USER_DESC="Изберете да филтрирате заявките от потребителя, който ги е подал.<br><br><b>Влезли в системата потребители</b> Показва заявки, подадени само от текущия влезнал в системата потребител. Всеки потребител ще вижда своите заявки.<br><br><b>Всички потребители</b> Показва всички заявки.<br><br><b>Специфични потребители</b> Позволява подателите да филтрират заявките." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Влезнали потребители" COM_CONVERTFORMS_FILTER_USER_ALL="Всички потребители" COM_CONVERTFORMS_FILTER_USER_SELECT="Специфични потребители" COM_CONVERTFORMS_SET_USERS="ID идентификатори потребители " COM_CONVERTFORMS_SET_USERS_DESC="Въведете ID идентификатор на Joomla User, за да филтрирате подадените заявки. Използвайте запетая, за да разделите няколко ID номера." COM_CONVERTFORMS_LOAD_CSS="Зареди стилове" COM_CONVERTFORMS_LOAD_CSS_DESC="Деактивирайте тази опция, ако не искате CSS стиловете на Convert Forms да не бъдат заредени." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Макет" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Изберете шаблон, който ще се използва за показване на заявките в сайта. Можете също да създадете свои шаблони." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Тип оформление" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Тип оформление" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Изберете шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Изберете шаблон за показване на заявките. Той ще се използва както за списък, така и за подробен изглед.<br><br>Можете да добавяте собствени макети преопределения във вашия шаблон." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Контейнер шаблон" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Главен HTML шаблон на списъка със заявки. Не премахвайте {submissions} маркер от него, тъй като той заменя с изходните данни." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Оформление на редовете" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="HTML оформление на всяка заявка, както е показано в оформлението на контейнера." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Оформление на Детайли" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="HTML оформлението на страницата с подробности за заявката." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Показва стойности" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Уверете се, че сте задали уникална стойност за всеки избор или няма да имате начин да знаете коя опция е избрана от потребителя" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Използване калкулация на стойности" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Стойностите за изчисление обикновено се използват за изчисления. Представя числова стойност на избор." COM_CONVERTFORMS_FIELD_DIVIDER="Разделител" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Разделя вашия формуляр на секции" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Стил конкур" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Изберете стила на линията на разделителя." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Плътен" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Пунктир" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="На точки" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Ширина на разделител" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Изберете ширината на разделителя." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Цвят линия" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Задайте цвета на линията на разделителя." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Горно поле" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Задайте поле отстояние от горе на разделителя." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Долно поле" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Задайте поле отстояние от долу на разделителя." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Първи ден от седмицата" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Променете първия ден от седмицата, представен в календара за избор на дата." COM_CONVERTFORMS_ENTER_LABEL="Въведете етикет" COM_CONVERTFORMS_ADD_FIELD="Добав поле" COM_CONVERTFORMS_ALL_FIELDS="Всички полета" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]�`a�a�Ecomponents/com_convertforms/language/es-ES/es-ES.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Formularios de conversión" COM_CONVERTFORMS="Formularios de conversión" COM_CONVERTFORMS_DESIGN="Diseño" COM_CONVERTFORMS_BEHAVIOR="Comportamiento" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="%sno encontrado" COM_CONVERTFORMS_CREATE_NEW="¿Crear uno nuevo?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email ascendente" COM_CONVERTFORMS_EMAIL_DESCENDING="Email descendente" COM_CONVERTFORMS_ACTIONS="Acciones" COM_CONVERTFORMS_VIEW_LEADS="Ver registros" NRI_PLG_CONVERTFORMS="Plugin de Formulario de conversión" COM_CONVERTFORMS_CONFIGURATION="Configuración de Formulario de conversión" COM_CONVERTFORMS_LOADCSS="Carga Stylesheet" COM_CONVERTFORMS_LOADCSS_DESC="Selecciona para cargar la extensión de stylesheet. Puedes deshabilitar esto si colocas tus propios estilos en otras stylesheets, como en el cuadro de Custom Code o en las plantillas de stylesheet." COM_CONVERTFORMS_DEBUG="Debug" COM_CONVERTFORMS_DEBUG_DESC="Habilitar esta opción para ayudarte a depurar errores y comportamientos inesperados. Los mensajes de error se mostrarán en la consola de tu navegador (Presiona F12) y en la carpeta de Logs." COM_CONVERTFORMS_FORMS="Formularios" COM_CONVERTFORMS_FORM="Formulario" COM_CONVERTFORMS_NEW_FORM="Nuevo Formulario" COM_CONVERTFORMS_EDIT_FORM="Editar Formulario" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formularios copiados" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formularios publicados" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formularios sin publicar" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formularios en papelera" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formularios borrados" COM_CONVERTFORMS_FORM_ASCENDING="Formulario ascendente" COM_CONVERTFORMS_FORM_DESCENDING="Formulario descendente" COM_CONVERTFORMS_FORM_SELECT="- Seleccionar Formulario - " COM_CONVERTFORMS_FORM_CREATE_MODULE="Publicar creando un módulo" COM_CONVERTFORMS_FORM_LEADS="Este formulario tiene «%s» registros totales hasta ahora" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publica usando el código shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Campaña" COM_CONVERTFORMS_CAMPAIGNS="Campañas" COM_CONVERTFORMS_NEW_CAMPAIGN="Nueva Campaña" COM_CONVERTFORMS_EDIT_CAMPAIGN="Editar Campaña" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Ingresa nombre de la campaña. Este nombre no puede ser visto por otros." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%sCampañas copiadas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%sCampañas sin publicar" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%sCampañas publicadas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%sCampañas en papelera" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%sCampañas borradas" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="envíos sin publicar" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s aplicaciones sin publicar" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s aplicaciones sin publicar" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s envíos eliminados" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s envíos archivados" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campañas ascendentes" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campañas descendentes" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Selecciona Campaña -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Por favor guarda tu campaña para configurar la integración." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campaña modificada" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sincronizar registros " COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Elija si sus registros se deben sincronizar con softwares de terceros o si se deben recopilar solo en su base de datos. Nota: Si necesita integrarse con software de terceros como MailChimp, Aweber, GetResponse, Active Campaign, etc., instale el complemento correspondiente en la sección Complementos." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campañas borradas" COM_CONVERTFORMS_CHOOSE_SERVICE="Escoge un Servicio" COM_CONVERTFORMS_PENDING_LEADS="registros pendientes" COM_CONVERTFORMS_SUBMISSIONS="registros " COM_CONVERTFORMS_SUBMISSION="Envío" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Últimos envios" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmado" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="No confirmado" COM_CONVERTFORMS_EDIT_CONVERSION="Editar registros " COM_CONVERTFORMS_SUBMISSION_INVALID="registro no encontradio" COM_CONVERTFORMS_NOT_AUTHORIZED="No tiene permisos para acceder a esta página." COM_CONVERTFORMS_LEADS_ASC="registros ascendentes" COM_CONVERTFORMS_LEADS_DESC="Envíos descendientes" COM_CONVERTFORMS_LEADS_EXPORT="Exportar registros" COM_CONVERTFORMS_ADDONS="Addons" COM_CONVERTFORMS_INSTALL_ADDONS="Mira Addons instaladas" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Para poder instalar Addons de \"Formularios de conversión\", necesitas ingresar tu \"Download Key\" en la configuración de \"Novarain Framework Plugin\"" COM_CONVERTFORMS_ADDONS_DESC="Add-ons extienden las funciones de \"Formularios de conversión\". Con estos addons, puedes conectar con programas de terceros, integrar nuevas características y hacer \"Formularios de conversión\" más poderoso aún." COM_CONVERTFORMS_LAST_YEAR="Año Anterior" COM_CONVERTFORMS_THIS_YEAR="Este Año" COM_CONVERTFORMS_LAST_MONTH="Mes Anterior" COM_CONVERTFORMS_THIS_MONTH="Este Mes" COM_CONVERTFORMS_LAST_WEEK="La semana pasada" COM_CONVERTFORMS_THIS_WEEK="Esta semana" COM_CONVERTFORMS_LAST_7_DAYS="Últimos 7 Días" COM_CONVERTFORMS_YESTERDAY="Ayer" COM_CONVERTFORMS_TODAY="Hoy" COM_CONVERTFORMS_AVG_DAY="Día promedio (este mes)" COM_CONVERTFORMS_PROJECTION="Proyección para este mes" COM_CONVERTFORMS_TOTAL="Total" COM_CONVERTFORMS_CHOOSE_FILE="Elige un archivo *.cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Un nombre único y descriptivo te ayudará en el futuro, pues aparecerá en el dashboard, analytics, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Procedencia de imagen de fondo." COM_CONVERTFORMS_IMAGE_DESC="Elige la procedencia de la imagen de fondo" COM_CONVERTFORMS_CUSTOM_URL="URL personalizada" COM_CONVERTFORMS_BACKGROUND_URL="URL de la imagen de fondo" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Ingresa la URL personalizada para tu imagen" COM_CONVERTFORMS_BACKGROUND_FILE="Imagen de fondo" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Selecciona una imagen para subir." ; COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." COM_CONVERTFORMS_FORM_BUILDER="Constructor de Forma." COM_CONVERTFORMS_FIELD_TYPE="Field Type" COM_CONVERTFORMS_FIELD_TYPE_DESC="El atributo Field Type especifica el tipo de elemento de input a mostrar." COM_CONVERTFORMS_FIELD_LABEL="Field Label" COM_CONVERTFORMS_FIELD_LABEL_DESC="Field Label define la etiqueta de un elemento de input." COM_CONVERTFORMS_FIELD_NAME="Nombre de campo" COM_CONVERTFORMS_FIELD_NAME_DESC="Especifica el nombre del elemento de entrada que se utiliza para hacer referencia a los datos del formulario después de enviar un formulario. Utilice esta opción también para asignar campos de formulario con aplicaciones de integración." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="El texto que desea que se muestre en el campo antes de que un usuario ingrese datos." COM_CONVERTFORMS_REQUIRED_NAME="Campo requerido" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Si está habilitado, esto asegurará de que este campo se complete antes de permitir que se envíe el formulario." COM_CONVERTFORMS_FIELDS="Campos" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Estás usando la versión <b>Gratuita</b> que soporta sólo 1 campo de email. <b>Actualiza a la versión Pro</b> para poder manejar campos ilimitados." COM_CONVERTFORMS_GENERAL="General" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Alineación Texto de Campo" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Alineación Texto de Forma" COM_CONVERTFORMS_INPUT_COLOR="Color de texto del campo" COM_CONVERTFORMS_INPUT_BGCOLOR="Color de fondo del campo" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Color de borde del campo" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Añade una sombra interior al campo de input" COM_CONVERTFORMS_INPUT_FONT_SIZE="Tamaño de fuente del campo" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Tamaño de fuente del campo" COM_CONVERTFORMS_VPADDING_SIZE="Padding vertical" COM_CONVERTFORMS_HPADDING_SIZE="Padding horizontal" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Ancho máximo de caja" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provee un ancho máximo personalizado o haz que esta caja cubra toda el área de la pantalla. Note que este es el ancho máximo, por lo que el formulario siempre cabrá en áreas más pequeñas." COM_CONVERTFORMS_FORM_WIDTH="Ancho máximo personalizado" COM_CONVERTFORMS_FORM_WIDTH_DESC="Provee un ancho máximo personalizado" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remueve padding por defecto" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remueve el padding por defecto entre el contenido y los bordes de la caja" COM_CONVERTFORMS_FORM_BORDER_STYLE="Estilo de borde" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Aplica un borde alrededor del formulario" COM_CONVERTFORMS_FORM_BORDER_COLOR="Color de borde" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Color de borde de forlmulario" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Ancho de borde" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="El ancho del borde del formulario" COM_CONVERTFORMS_BOX_RADIUS="Radio de caja" COM_CONVERTFORMS_BORDER_RADIUS="Radio de caja" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Ingresa el tamaño del radio del borde" COM_CONVERTFORMS_COLLECT_LEADS_USING="Recoger envíos utilizando la campaña" ; COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Acción de envío correcto" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Elige la acción que ocurrirá después de envío correcto" COM_CONVERTFORMS_DISPLAY_MSG="Muestra mensaje" COM_CONVERTFORMS_REDIRECT_USER="Redirecciona usuario" COM_CONVERTFORMS_SUCCESS_TEXT="Mensaje después de éxito" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Ingresa el mensaje a mostrar después de haber sido agregado correctamente a la lista" COM_CONVERTFORMS_SUCCESS_URL="Redirecciona URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Ingresa la URL a la que te gustaría redireccionar al usuario después de haber sido agregado exitosamente a la lista." ; COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Estilo botón Enviar" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Estilo de tu botón con bonitos efectos." COM_CONVERTFORMS_BTN_SHADOW_DESC="Agrega una sombra exterior al botón" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Color de texto al pasar por encima" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Color de texto al pasar por encima" COM_CONVERTFORMS_CUSTOM_CSS="CSS personalizado" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." COM_CONVERTFORMS_CLASS_SUFFIX="Sufijo de clase" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Sufijo de clase" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Altura del área de texto" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Altura del área de texto define la altura visible del área de texto, en líneas." COM_CONVERTFORMS_CHOICES="Elecciones" COM_CONVERTFORMS_CHOICES_DESC="Agrega elecciones a tu formulario." COM_CONVERTFORMS_FIELD_VALUE="Valor por defecto" COM_CONVERTFORMS_FIELD_VALUE_DESC="Introducir el texto para el valor por defecto del campo." COM_CONVERTFORMS_HIDE_LABELS="Esconder Etiqueta" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" COM_CONVERTFORMS_IMAGE_SOURCE="Procedencia de la imagen" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Puedes ingresar una imagen que aparecerá entre los contenidos del formulario. Elije <b>Subir</b> para subir una nueva imagen o <b>URL personalizado</b> para ingresar una URL personalizada de imagen." COM_CONVERTFORMS_IMAGE_URL="URL de imagen" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Esconde imagen en pantallas pequeñas" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="En pantallas pequeñas como en dispositivos móviles, modales más pequeños se ven mejor. Para reducir el tamaño del modal, puedes esconder la imagen con esta configuración." COM_CONVERTFORMS_HORIZONTAL_POSITION="Posición horizontal" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Posición horizontal" COM_CONVERTFORMS_VERTICAL_POSITION="Posición vertical" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Posición vertical" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Ancho de imagen" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Establece ancho de imagen" COM_CONVERTFORMS_BUTTON_ALIGN="Alineación de botón" COM_CONVERTFORMS_FORM_POSITION="Posición de formulario" COM_CONVERTFORMS_FORM_POSITION_DESC="Establece posición del formulario relativa al contenedor de texto" COM_CONVERTFORMS_FORM_SIZE="Tamaño de contenedor de formulario" COM_CONVERTFORMS_COLUMNS_DESC="Especifica cuántas columnas se usarán. 6 columnas usan el 50% del ancho." COM_CONVERTFORMS_MESSAGE="Mensaje de texto" COM_CONVERTFORMS_MESSAGE_DESC="Ingresa el mensaje de texto del formulario" COM_CONVERTFORMS_IMAGE_POSITION="Posición de imagen" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Establece la posición de imagen relativa al texto" COM_CONVERTFORMS_FOOTER="Pie del formulario" COM_CONVERTFORMS_BUTTON_TEXT="Texto del botón" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Ingresa el nombre del texto del botón" COM_CONVERTFORMS_BTN_FONT_SIZE="Tamaño del texto del botón" COM_CONVERTFORMS_IMAGE_SIZE="Tamaño del contenedor de imagen" COM_CONVERTFORMS_BODY_FONT="Familia de fuente" COM_CONVERTFORMS_BODY_FONT_DESC="Elige la fuente que será utilizada en este formulario. Ten en cuenta que cargar fuentes no estándar, como Google Fonts, puede tener un impacto en la velocidad de la página web. Selecciona Default para usar la fuente por defecto de la página." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Fecha" COM_CONVERTFORMS_CREATED="Fecha de creación" COM_CONVERTFORMS_SUBMISSION="Envío" COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview mensaje de éxito" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Esta versión se mostrará en pantallas de 990px o más" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Esta versión se mostrará en pantallas de 768px a 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Esta versión se mostrará en pantallas de 768px o menos" COM_CONVERTFORMS_DEVICE_DESKTOP="Escritorio" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Móvil" COM_CONVERTFORMS_RESET_FORM="Reseteo de formulario" COM_CONVERTFORMS_RESET_FORM_DESC="Reseteo de formulario después de envío exitoso" COM_CONVERTFORMS_HIDE_FORM="Esconde formulario" COM_CONVERTFORMS_HIDE_FORM_DESC="Esconde formulario después de envío exitoso" COM_CONVERTFORMS_TEMPLATES="Plantillas" COM_CONVERTFORMS_TEMPLATES_SELECT="Selecciona una plantilla para comenzar" COM_CONVERTFORMS_TEMPLATES_BLANK="Comienza desde cero" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Comienza nuevo formulario desde cero" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Barra lateral" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Barras" COM_CONVERTFORMS_LABELS_COLOR="Color del nombre texto" COM_CONVERTFORMS_LABELS_FONT_SIZE="Tamaño de fuente del nombre" COM_CONVERTFORMS_IMAGE_ABOVE="Arriba del texto" COM_CONVERTFORMS_IMAGE_BELOW="Abajo del texto" COM_CONVERTFORMS_IMAGE_RIGHT="Derecha del texto" COM_CONVERTFORMS_IMAGE_LEFT="Izquierda del texto" COM_CONVERTFORMS_FLAT="Plano" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Gradiente" COM_CONVERTFORMS_EMAILS_DESC="Envíe notificación por email cuando los usuarios envíen un formulario." COM_CONVERTFORMS_EMAILS="Notificaciones por email" COM_CONVERTFORMS_EMAILS_REPLY_TO="Email de Responder A" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Nombre de Responder A" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Desde email" COM_CONVERTFORMS_EMAILS_FROM="Desde nombre" COM_CONVERTFORMS_EMAILS_RECIPIENT="Enviar a dirección de email" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Ingrese las direcciones de correo electrónico para recibir notificaciones de envío. Para notificaciones múltiples, separe las direcciones de correo electrónico con una coma." COM_CONVERTFORMS_EMAILS_SUBJECT="Asunto email" COM_CONVERTFORMS_EMAILS_BODY="Mensaje" COM_CONVERTFORMS_EMAILS_FREE_NOTE="¿Quieres múltiples notificaciones? Actualiza a PRO para desbloquearlo." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Archivos adjuntos" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Ubicación de un archivo para adjuntar en relación con la raíz de su sitio web. Use comas para definir múltiples archivos." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="¿Te falta un addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="En caso que te falta un addon para integrar con tu app favorita, por favor déjenos saber y estaremos gustosos de incluirlo en la colección de addons de \"Formularios de conversión\"." COM_CONVERTFORMS_API_ENABLE="Habilita API JSON" COM_CONVERTFORMS_API_DESC="La API JSON le permite recuperar contenido Convert Forms utilizando solicitudes HTTP." COM_CONVERTFORMS_API_KEY="Clave secreta" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." COM_CONVERTFORMS_IMAGE_ALT="Imagen alternativa" COM_CONVERTFORMS_IMAGE_ALT_DESC="Texto alternativo de imagen" COM_CONVERTFORMS_CUSTOM_CODE="Código personalizado" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." COM_CONVERTFORMS_ISSUES="Problemas" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" COM_CONVERTFORMS_CREATED="Fecha de creación" COM_CONVERTFORMS_MODIFIED="Datos modificados" COM_CONVERTFORMS_IP="IP de quién envía" COM_CONVERTFORMS_USER_ID="ID de quién envía" COM_CONVERTFORMS_USER_USERNAME="Nombre de usuario de quién envía" COM_CONVERTFORMS_VISITOR_ID="ID de visitante" COM_CONVERTFORMS_FORM_NAME="Nombre de formulario" COM_CONVERTFORMS_CAMPAIGN_NAME="Nombre de campaña" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Columnas" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Para habilitar campos específicos de formulario, seleccione un formulario en la barra de filtros primero." COM_CONVERTFORMS_UNTITLED_BOX="Formulario sin título" COM_CONVERTFORMS_SELECT_LAYOUT="Selecciona tu diseño" COM_CONVERTFORMS_SHOW_LAYOUTS="Mostrar diseños" COM_CONVERTFORMS_HIDE_LAYOUTS="Ocultar diseños" COM_CONVERTFORMS_FIELDS_COPY="Campo duplicado" COM_CONVERTFORMS_FIELDS_DELETE="Eliminar campo" COM_CONVERTFORMS_FIELDGROUP_COMMON="Campos comunes" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Campos avanzados" COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" COM_CONVERTFORMS_FIELD_TEXT="Caja de texto" COM_CONVERTFORMS_FIELD_TEXT_DESC="Campo de una línea de texto" COM_CONVERTFORMS_FIELD_TEXTAREA="Área de texto" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" COM_CONVERTFORMS_FIELD_NUMBER="Número" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Un cuadro de texto que solo acepta números" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Paso" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Valor mínimo" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Valor mínimo que permitirá el campo" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Valor máximo" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Valor máximo que permitirá el campo" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configurar reCAPTCHA ahora" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Colores del tema del widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Tamaño del widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Desplegable" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" ; COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" COM_CONVERTFORMS_FIELD_URL="Página web / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" COM_CONVERTFORMS_FIELD_URL_INVALID="URL inválida" COM_CONVERTFORMS_FIELD_COUNTRY="País" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Lista de todos los países conocidos." COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detectar país del visitante" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Países a excluir" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Moneda" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Lista de todas las monedas conocidas" COM_CONVERTFORMS_FIELD_SUBMIT="Botón de enviar" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="El botón que enviará el formulario." COM_CONVERTFORMS_FIELD_HIDDEN="Campo oculto" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Un campo no visible por el usuario en el front-end" COM_CONVERTFORMS_FIELD_EMAIL="Dirección de correo electrónico" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Términos del servicio" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Texto de los Términos de Servicio" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" COM_CONVERTFORMS_FIELD_REQUIRED="Es obligatório" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Dirección de correo electrónico inválida" COM_CONVERTFORMS_FIELD_SIZE="Tamaño del campo" COM_CONVERTFORMS_FIELD_SIZE_DESC="Seleccionar el tamaño del campo por defecto" COM_CONVERTFORMS_FIELD_TEL="Número de teléfono" COM_CONVERTFORMS_FIELD_TEL_DESC="Permitir al usuario indicar un número de teléfono." COM_CONVERTFORMS_FIELD_DATETIME="Fecha / Hora" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Formato de fecha" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Mostrar selector horario" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Fecha mínima" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Fecha máxima" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Modo de selección de fecha" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Hora en formato de 24h" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Mostrar en línea" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Tema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Seleccionar el tema del calendario" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Formato de fecha inválido - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." COM_CONVERTFORMS_CSS_CLASSES="Clase CSS" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Desactivar Autocompletar en el navegador" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Por defecto, los navegadores recuerdan la información que el usuario envía a través de los campos de entrada. Para desactivar el autocompletado en formularios, active esta opción." COM_CONVERTFORMS_FIELD_DESCRIPTION="Texto de ayuda" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." COM_CONVERTFORMS_FIELD_CONFIRM="Confirmar" ; COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" ; COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" COM_CONVERTFORMS_HIDE_TEXT="Ocultar texto" ; COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" ; COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" COM_CONVERTFORMS_EXCEL_SECURITY="Seguridad de Excel" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" COM_CONVERTFORMS_CHOICE_1_COLUMN="Una columna" COM_CONVERTFORMS_CHOICE_2_COLUMN="Dos columnas" COM_CONVERTFORMS_CHOICE_3_COLUMN="Tres columnas" ; COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." ; COM_CONVERTFORMS_INPUT_MASK="Input Mask" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" COM_CONVERTFORMS_NOTES="Notas" COM_CONVERTFORMS_DATE_RANGE="Rango de fechas" COM_CONVERTFORMS_START_DATE="Fecha inicial" COM_CONVERTFORMS_END_DATE="Fecha final" COM_CONVERTFORMS_PERIOD="Periodo" COM_CONVERTFORMS_PERIOD_SELECT="- Seleccionar periodo -" ; COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." ; COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" ; COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Destino de la subida" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Tipos de archivo permitidos" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filtro" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" ; COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Arrastra y suelta archivos aquí o" COM_CONVERTFORMS_UPLOAD_BROWSE="Examinar" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." ; COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" ; COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." ; COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Su navegador no admite la carga de archivos de arrastrar y soltar." ; COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" ; COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." ; COM_CONVERTFORMS_READONLY="Read-only" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" ; COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Después del envío del formulario" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Contraseña" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Preparación del formulario" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: el script reCAPTCHA de Google no está cargado. Asegúrese de que su navegador no lo esté bloqueando o póngase en contacto con el administrador del sitio." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." ; COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" COM_CONVERTFORMS_SECURITY="Seguridad" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Abajo a la derecha" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Abajo a la izquierda" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="En línea" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Envíos" COM_CONVERTFORMS_SUBMISSIONS_LIST="Lista de envíos" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Mostrar sólo los confirmados" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Ocultar valores vacíos" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." COM_CONVERTFORMS_SELECT_FORM="Seleccionar formulario" COM_CONVERTFORMS_SELECT_FORM_DESC="Seleccionar el formulario para mostrar los envíos recibidos" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." COM_CONVERTFORMS_ORDER_RECENT="Primero los más recientes" COM_CONVERTFORMS_ORDER_OLDEST="Primero los más antigüos" COM_CONVERTFORMS_ORDER_RANDOM="Orden aleatório" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." ; COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" COM_CONVERTFORMS_FILTER_USER_ALL="Todos los usuarios" COM_CONVERTFORMS_FILTER_USER_SELECT="Usuarios específicos" ; COM_CONVERTFORMS_SET_USERS="User IDs" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Diseño" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Tipo de diseño" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Tipo de diseño" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Plantilla" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Seleccionar plantilla" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Detalles del diseño" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Espacio vacio" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Espacio vacio" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Título del elemento HTML" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Enlace" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Abrir en una pestaña nueva" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Mostrar valores" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." COM_CONVERTFORMS_FIELD_DIVIDER="Divisor" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Sólido" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" COM_CONVERTFORMS_ADD_FIELD="Añadir campo" COM_CONVERTFORMS_ALL_FIELDS="Todos los campos" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." COM_CONVERTFORMS_LABEL_POSITION="Posición de la etiqueta" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." COM_CONVERTFORMS_FIELD_COLORPICKER="Selector de colores" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." COM_CONVERTFORMS_EDITOR_HEIGHT="Altura del editor" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Establecer la altura en píxeles." COM_CONVERTFORMS_EDITOR_SELECT="Editor de Joomla" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." COM_CONVERTFORMS_EXPORT_WORKING="Exportando" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]�- �����Ecomponents/com_convertforms/language/nl-NL/nl-NL.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Ontwerp" COM_CONVERTFORMS_BEHAVIOR="Gedrag" COM_CONVERTFORMS_LIST="Lijst" COM_CONVERTFORMS_NO_RESULTS_FOUND="Geen %s gevonden" COM_CONVERTFORMS_CREATE_NEW="Maak een nieuwe aan?" COM_CONVERTFORMS_EMAIL_ASCENDING="E-mail A-Z" COM_CONVERTFORMS_EMAIL_DESCENDING="E-mail Z-A" COM_CONVERTFORMS_ACTIONS="Acties" COM_CONVERTFORMS_VIEW_LEADS="Inzendingen bekijken" NRI_PLG_CONVERTFORMS="Convert Forms Plugin" COM_CONVERTFORMS_CONFIGURATION="Convert Forms Configuratie" COM_CONVERTFORMS_LOADCSS="Laad Stylesheet" COM_CONVERTFORMS_LOADCSS_DESC="Selecteer om het stylesheet van de extensie te laden. U kunt dit uitschakelen als u al uw eigen stijlen in een ander stylesheet plaatst, zoals het veld Aangepaste code of de sjablonen stylesheet" COM_CONVERTFORMS_DEBUG="Debug" COM_CONVERTFORMS_DEBUG_DESC="Schakel deze optie in om je te helpen bij het opsporen van fouten en onverwacht gedrag. Foutmeldingen worden naar je Browser's Console gestuurd (druk op F12) en dan naar de Logs map." COM_CONVERTFORMS_FORMS="Formulieren" COM_CONVERTFORMS_FORM="Formulier" COM_CONVERTFORMS_NEW_FORM="Nieuw" COM_CONVERTFORMS_EDIT_FORM="Bewerk Formulier" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formulieren gekopieerd" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formulieren gepubliceerd" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulieren gedepubliceerd" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formulieren naar prullenbak" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formulieren verwijderd" COM_CONVERTFORMS_FORM_ASCENDING="Formulieren A-Z" COM_CONVERTFORMS_FORM_DESCENDING="Formulieren Z-A" COM_CONVERTFORMS_FORM_SELECT="- Selecteer Formulier -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publiceer een module" COM_CONVERTFORMS_FORM_LEADS="Dit formulier heeft tot nu toe totaal %s inzendingen" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publiceer met behulp van shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Campagne" COM_CONVERTFORMS_CAMPAIGNS="Campagnes" COM_CONVERTFORMS_NEW_CAMPAIGN="Nieuwe Campagne" COM_CONVERTFORMS_EDIT_CAMPAIGN="Bewerk Campagne" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Geef een campagnenaam op. Deze naam kan door niemand anders dan u worden gezien." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campagnes gekopieerd" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campagnes gedepubliceerd" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campagnes gepubliceerd" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campagnes in prullenbak" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campagnes verwijderd" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s ongepubliceerde inzendingen " COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s gepubliceerde inzendingen" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s inzendingen in de prullenbak" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s inzendingen verwijderd" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s inzendingen gearchiveerd" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campagne A-Z" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campagne Z-A" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Selecteer campagne -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Bewaar de campagne om uw integratie in te stellen." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campagne gewijzigd" COM_CONVERTFORMS_CAMPAIGN_SYNC="Inzendingen synchroniseren" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Kies of uw inzending moet worden gesynchroniseerd met software van derden of alleen in uw database moet worden verzameld. <Br> Opmerking: als u wilt integreren met software van derden zoals MailChimp, Aweber, GetResponse, Active Campaign, enz. Installeert u de betreffende addon in het gedeelte Addons." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campagnes verwijderd" COM_CONVERTFORMS_CHOOSE_SERVICE="Kies Service" COM_CONVERTFORMS_PENDING_LEADS="In afwachting van inzendingen" COM_CONVERTFORMS_SUBMISSIONS="Inzendingen" COM_CONVERTFORMS_SUBMISSION="Inzending" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Laatste inzendingen" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Bevestigd" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Onbevestigd" COM_CONVERTFORMS_EDIT_CONVERSION="Bewerk Inzending" COM_CONVERTFORMS_SUBMISSION_INVALID="Inzending niet gevonden" COM_CONVERTFORMS_NOT_AUTHORIZED="U hebt geen toegangsrechten voor deze pagina" COM_CONVERTFORMS_LEADS_ASC="Inzendingen A-Z" COM_CONVERTFORMS_LEADS_DESC="Inzendingen Z-A" COM_CONVERTFORMS_LEADS_EXPORT="Inzendingen exporteren" COM_CONVERTFORMS_ADDONS="Addons" COM_CONVERTFORMS_INSTALL_ADDONS="Bekijk geïnstalleerde addons" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Om Convert Forms Addons te kunnen installeren, moet je je Download Key invoeren in de instellingen van de Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Add-ons breiden de functionaliteit van Convert Forms uit. Met deze add-ons kunt u verbinding maken met software van derden, nieuwe functies integreren en Convert Forms nog krachtiger maken." COM_CONVERTFORMS_LAST_YEAR="Vorig jaar" COM_CONVERTFORMS_THIS_YEAR="Dit jaar" COM_CONVERTFORMS_LAST_MONTH="Vorige maand" COM_CONVERTFORMS_THIS_MONTH="Deze maand" COM_CONVERTFORMS_LAST_WEEK="Vorige week" COM_CONVERTFORMS_THIS_WEEK="Deze week" COM_CONVERTFORMS_LAST_7_DAYS="Laatste 7 dagen" COM_CONVERTFORMS_YESTERDAY="Gisteren" COM_CONVERTFORMS_TODAY="Vandaag" COM_CONVERTFORMS_AVG_DAY="Gemiddelde dag (deze maand)" COM_CONVERTFORMS_PROJECTION="Projectie voor deze maand" COM_CONVERTFORMS_TOTAL="Totaal" COM_CONVERTFORMS_CHOOSE_FILE="Kies een .cnvf file" COM_CONVERTFORMS_FORMS_NAME_DESC="Een unieke en beschrijvende naam helpt u in de toekomst zoals deze zal verschijnen in het dashboard, analyses, enz." COM_CONVERTFORMS_BACKGROUND_IMAGE="Bron van achtergrond afbeelding" COM_CONVERTFORMS_IMAGE_DESC="Kies de bron van de achtergrond afbeelding" COM_CONVERTFORMS_CUSTOM_URL="Aangepaste URL" COM_CONVERTFORMS_BACKGROUND_URL="URL achtergrond afbeelding" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Typ de aangepaste URL voor uw afbeelding" COM_CONVERTFORMS_BACKGROUND_FILE="Achtergrond afbeelding" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Selecteer een afbeelding om op te laden" COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Je kunt een afbeelding leveren die achter de inhoud van het formulier zou kunnen verschijnen. Kies <b>Uploaden</b>om een nieuwe afbeelding te uploaden of een <b>Aangepaste URL</b> voor het invoeren van een aangepaste afbeeldings-URL. Om deze instelling in te schakelen dient de achtergrondkleur van de gekozen afbeelding transparant zijn." COM_CONVERTFORMS_FORM_BUILDER="Formulier Bouwer" COM_CONVERTFORMS_FIELD_TYPE="Veld Type" COM_CONVERTFORMS_FIELD_TYPE_DESC="Het Veld Type attribuut duidt het type input element aan dat zal getoond worden" COM_CONVERTFORMS_FIELD_LABEL="Veld Label" COM_CONVERTFORMS_FIELD_LABEL_DESC="Het Veld Label is de benaming die aan een input element gegeven wordt." COM_CONVERTFORMS_FIELD_NAME="Veldnaam" COM_CONVERTFORMS_FIELD_NAME_DESC="De Veld Sleutel is een referentie naar de formulier gegevens na het versturen van een formulier. Gebruik deze optie ook om formulier velden te linken met integratie apps." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="De tekst die u wil tonen in het veld vooraleer een gebruiker er iets in typt." COM_CONVERTFORMS_REQUIRED_NAME="Verplicht Veld" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Velden" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="U gebruikt de <b>Gratis</b> versie die slechts 1 e-mail veld ondersteunt. <b>Upgrade naar de Pro versie</b> om deze beperking op te heffen." COM_CONVERTFORMS_GENERAL="Algemeen" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Veld Tekst Uitlijning" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Formulier Tekst Uitlijning" COM_CONVERTFORMS_INPUT_COLOR="Veld Tekst Kleur" COM_CONVERTFORMS_INPUT_BGCOLOR="Veld Achtergrond Kleur" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Veld Rand Kleur" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Voegt schaduw toe in het input veld" COM_CONVERTFORMS_INPUT_FONT_SIZE="Veld Font Grootte" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Veld Font Grootte" COM_CONVERTFORMS_VPADDING_SIZE="Padding Verticaal" COM_CONVERTFORMS_HPADDING_SIZE="Padding Horizontaal" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Breedte" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Typ een maximum breedte, of laat deze box de volledige schermbreedte innemen. Merk op dat dit de maximum breedte is, wat betekent dat het formulier altijd zal passen in smallere schermen." COM_CONVERTFORMS_FORM_WIDTH="Aangepaste Max Breedte" COM_CONVERTFORMS_FORM_WIDTH_DESC="Typ de gewenste maximum breedte" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Verwijder Default Padding" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Verwijder de default padding tussen de inhoud en de rand van de formulier box." COM_CONVERTFORMS_FORM_BORDER_STYLE="Rand Stijl" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Plaats een rand om het formulier" COM_CONVERTFORMS_FORM_BORDER_COLOR="Rand Kleur" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Formulier Rand Kleur" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Rand Dikte" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="De dikte van de rand rond het formulier" COM_CONVERTFORMS_BOX_RADIUS="Box Hoekafronding" COM_CONVERTFORMS_BORDER_RADIUS="Rand Hoekafronding" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Typ de hoekafronding van de rand" COM_CONVERTFORMS_COLLECT_LEADS_USING="Verzamel Inzendingen via de Campagne" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Inzendingen via dit formulier worden gelinkt met de geselecteerde campagne. U beheert de campagnes in de Campagne sectie." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Geslaagde Inzending Actie" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Kies de actie die moet plaatsvinden na een geslaagde inzending." COM_CONVERTFORMS_DISPLAY_MSG="Toon bericht" COM_CONVERTFORMS_REDIRECT_USER="Redirect de gebruiker" COM_CONVERTFORMS_SUCCESS_TEXT="Bericht Na Succes" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Typ het bericht dat u wil tonen nadat de gebruiker succesvol toegevoegd is aan de lijst." COM_CONVERTFORMS_SUCCESS_URL="Redirect URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Typ de URL waarnaar de gebruiker verwezen wordt nadat hij/zij succesvol toegevoegd is aan de lijst." COM_CONVERTFORMS_PASS_DATA="Geef Inzending Data door aan Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Verzenden Knop Stijl" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Bepaal de stijl van de knop." COM_CONVERTFORMS_BTN_SHADOW_DESC="Voegt schaduw toe aan de knop" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Tekst Hover Kleur" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Tekst Hover Kleur" COM_CONVERTFORMS_CUSTOM_CSS="Aangepaste CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Styleer het formulier met je eigen aangepaste CSS. <br><br>Om je te helpen bij het vormgeven van het formulier zal de code die je hier toevoegd ook in de backend worden uitgevoerd." COM_CONVERTFORMS_CLASS_SUFFIX="Klasse Achtervoegsel" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Klasse Achtervoegsel" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Tekstgebied Hoogte" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Duidt de hoogte aan van een tekstgebied, in lijnen." COM_CONVERTFORMS_CHOICES="Keuzes" COM_CONVERTFORMS_CHOICES_DESC="Voeg keuzes toe aan het formulier veld." COM_CONVERTFORMS_FIELD_VALUE="Default Waarde" COM_CONVERTFORMS_FIELD_VALUE_DESC="Typ de tekst voor de default veld waarde." COM_CONVERTFORMS_HIDE_LABELS="Verberg Label" COM_CONVERTFORMS_HIDE_LABELS_DESC="Vink deze optie aan om het formulier veld label te verbergen." COM_CONVERTFORMS_IMAGE_SOURCE="Afbeelding Bron" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="U kunt een afbeelding tonen op het formulier. Kies <b>Upload</b> om een afbeelding op te laden, of <b>Aangepaste URL</b> om de URL van een afbeelding in te typen." COM_CONVERTFORMS_IMAGE_URL="Afbeelding URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Verberg Afbeelding op Kleine Schermen" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Op kleinere schermen zoals die van smartphones, ogen kleinere formuliergebieden beter. Om dat te bereiken kunt u met deze instelling de afbeelding verbergen." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontale Positie" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontale Positie" COM_CONVERTFORMS_VERTICAL_POSITION="Verticale Positie" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Verticale Positie" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Afbeelding Breedte" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Stel de breedte van de afbeelding in" COM_CONVERTFORMS_BUTTON_ALIGN="Knop Uitlijning" COM_CONVERTFORMS_FORM_POSITION="Formulier Positie" COM_CONVERTFORMS_FORM_POSITION_DESC="Stel de positie van het formulier in ten opzichte van de tekst container" COM_CONVERTFORMS_FORM_SIZE="Formulier Container Grootte" COM_CONVERTFORMS_COLUMNS_DESC="Duidt aan hoeveel kolommen zullen gebruikt worden. 6 kolommen nemen 50% ban de breedte in." COM_CONVERTFORMS_MESSAGE="Tekst Bericht" COM_CONVERTFORMS_MESSAGE_DESC="Typ het tekst bericht voor het formulier" COM_CONVERTFORMS_IMAGE_POSITION="Afbeelding positie" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Stel de positie van de afbeelding in ten opzichte van de tekst" COM_CONVERTFORMS_FOOTER="Formulier Footer" COM_CONVERTFORMS_BUTTON_TEXT="Knop Tekst" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Typ het tekst label voor de knop" COM_CONVERTFORMS_BTN_FONT_SIZE="Knop Tekst Grootte" COM_CONVERTFORMS_IMAGE_SIZE="Afbeelding Container Grootte" COM_CONVERTFORMS_BODY_FONT="Font Familie" COM_CONVERTFORMS_BODY_FONT_DESC="Kies de font familie die gebruikt moet worden in het formulier. Merk op dat niet-standaard fonts zoals Google Fonts de laadsnelheid van uw website kunnen beïnvloeden. Kies Default om de standaard font van uw website te gebruiken." COM_CONVERTFORMS_EMAIL="E-mail" COM_CONVERTFORMS_DATE="Datum" COM_CONVERTFORMS_CREATED="Datum Gemaakt" COM_CONVERTFORMS_SUBMISSION="Inzending" COM_CONVERTFORMS_PREVIEW_SUCCESS="Voorafbeelding van het bericht bij succes" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Deze versie zal getoond worden op schermen van 990px en groter" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Deze versie zal getoond worden op schermen van 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Deze versie zal getoond worden op schermen van 768px en kleiner" COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Smartphone" COM_CONVERTFORMS_RESET_FORM="Reset Formulier" COM_CONVERTFORMS_RESET_FORM_DESC="Reset formulier na geslaagde inzending" COM_CONVERTFORMS_HIDE_FORM="Verberg Formulier" COM_CONVERTFORMS_HIDE_FORM_DESC="Verberg formulier na geslaagde inzending" COM_CONVERTFORMS_TEMPLATES="Templates" COM_CONVERTFORMS_TEMPLATES_SELECT="Kies een template om te beginnen" COM_CONVERTFORMS_TEMPLATES_BLANK="Start van scratch" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start een nieuw formulier van scratch" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" COM_CONVERTFORMS_LABELS_COLOR="Label Tekst Kleur" COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Grootte" COM_CONVERTFORMS_IMAGE_ABOVE="Boven Tekst" COM_CONVERTFORMS_IMAGE_BELOW="Onder Tekst" COM_CONVERTFORMS_IMAGE_RIGHT="Rechts van Tekst" COM_CONVERTFORMS_IMAGE_LEFT="Links van Tekst" COM_CONVERTFORMS_FLAT="Flat" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Gradiënt" COM_CONVERTFORMS_EMAILS_DESC="Stuur e-mail notificaties als gebruikers een formulier versturen." COM_CONVERTFORMS_EMAILS="E-mail Notificaties" COM_CONVERTFORMS_EMAILS_REPLY_TO="Antwoord-Aan E-mail" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Antwoord-Aan Naam" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Van E-mail" COM_CONVERTFORMS_EMAILS_FROM="Van Naam" COM_CONVERTFORMS_EMAILS_RECIPIENT="Stuur naar E-mailadres" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Typ de e-mailadressen die notificaties moeten krijgen. Voor meerdere notificaties moet u e-mailadressen afscheiden met een komma." COM_CONVERTFORMS_EMAILS_SUBJECT="E-mail Onderwerp" COM_CONVERTFORMS_EMAILS_BODY="Bericht" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Wil u meerdere notificaties? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade naar PRO</a> om dit mogelijk te maken." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Bijlagen" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="De locatie van een bijlagebestand ten opzichte van de root van uw webruimte. Gebruik kommas om meerdere bestanden aan te duiden. " COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Ontbreekt er een add-on?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Als u geen integratie add-on voor uw favoriete app vindt, laat het ons weten, en we zullen die graag toevoegen aan de Convert Forms add-ons." COM_CONVERTFORMS_API_ENABLE="Enable JSON API" COM_CONVERTFORMS_API_DESC="Met de JSON API kunt u Convert Forms inhoud ophalen met HTTP requests." COM_CONVERTFORMS_API_KEY="Geheime Sleutel" COM_CONVERTFORMS_API_KEY_DESC="Deze geheime sleutel is nodig voor authentificatie van kritieke taken zoals CRON Jobs en de JSON API. Laat u dit blanco, dan worden alle taken waarvoor gebruikers authentificatie nodig is uitgeschakeld." COM_CONVERTFORMS_IMAGE_ALT="Afbeelding Alt" COM_CONVERTFORMS_IMAGE_ALT_DESC="Alternatieve tekst voor de afbeelding" COM_CONVERTFORMS_CUSTOM_CODE="Eigen code" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Plaats aangepaste code aan het einde van het formulier. HTML, CSS en Javascript worden geaccepteerd.<br><br>Zorg er voor dat je de Javascript code omwikkelt binnen de <script> -tag.<br><br> De code die in dit gebied wordt toegevoegd zal niet worden uitgevoerd aan de backend." COM_CONVERTFORMS_ISSUES="Problemen" COM_CONVERTFORMS_ISSUES_DETECTED="%s problemen bij inzendingen gevonden" COM_CONVERTFORMS_CREATED="Datum Gemaakt" COM_CONVERTFORMS_MODIFIED="Datum Gewijzigd" COM_CONVERTFORMS_IP="IP Adres Inzender" COM_CONVERTFORMS_USER_ID="Inzender ID" COM_CONVERTFORMS_USER_USERNAME="Inzender Gebruikersnaam" COM_CONVERTFORMS_VISITOR_ID="Bezoeker ID" COM_CONVERTFORMS_FORM_NAME="Formulier Naam" COM_CONVERTFORMS_CAMPAIGN_NAME="Campagne Naam" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Kolommen" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Om bepaalde formulier velden te activeren, kiest u eerst een formulier in de filters bar." COM_CONVERTFORMS_UNTITLED_BOX="Formulier Zonder Naam" COM_CONVERTFORMS_SELECT_LAYOUT="Kies uw layout" COM_CONVERTFORMS_SHOW_LAYOUTS="Toon Layouts" COM_CONVERTFORMS_HIDE_LAYOUTS="Verberg Layouts" COM_CONVERTFORMS_FIELDS_COPY="Dupliceer veld" COM_CONVERTFORMS_FIELDS_DELETE="Verwijder veld" COM_CONVERTFORMS_FIELDGROUP_COMMON="Gewone Velden" COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Velden" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Geavanceerde Velden" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Typ tekst of HTML code. Geen beperkingen!" COM_CONVERTFORMS_FIELD_TEXT="Tekstvak" COM_CONVERTFORMS_FIELD_TEXT_DESC="Een tekstvak veld met 1 lijn" COM_CONVERTFORMS_FIELD_TEXTAREA="Tekstgebied" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Zoals een tekstvak veld, maar voor meerdere lijnen gebruikers input" COM_CONVERTFORMS_FIELD_NUMBER="Getal" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Een tekstvak dat enkel getallen accepteert als input" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Stap" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Duidt aan met hoeveel de waarde zal wijzigen als op een pijl geklikt wordt." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Waarde" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="De minimale waarde die in het veld geaccepteerd wordt." COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max waarde" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="De maximale waarde die in het veld geaccepteerd wordt." COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam bij formulier inzendingen door Google reCAPTCHA te gebruiken" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Vul uw Site en Secret Key in op de configuratie pagina." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configureer reCAPTCHA nu" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Het kleurenthema van de widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="De grootte van de widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Lijst waarin één van meerdere waarden kan gekozen worden" COM_CONVERTFORMS_FIELD_RADIO="Radio Knoppen" COM_CONVERTFORMS_FIELD_RADIO_DESC="Lijst radio knoppen waarin één kan gekozen worden" COM_CONVERTFORMS_FIELD_URL="Website / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Een correcte URL start met http:// of https://" COM_CONVERTFORMS_FIELD_URL_INVALID="Ongeldige URL" COM_CONVERTFORMS_FIELD_COUNTRY="Land" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Lijst van alle gekende landen" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detecteer Land Bezoeker" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Indien dit ingeschakeld is, zal het formulier het land van de bezoeker proberen te detecteren en zelf in te vullen. Daarvoor moet wel de TGeoIP plugin geïnstalleerd zijn." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Land Uitsluitingen" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Munt" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Lijst van alle gekende munten" COM_CONVERTFORMS_FIELD_SUBMIT="Versturen Knop" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Met deze knop wordt het formulier verstuurd" COM_CONVERTFORMS_FIELD_HIDDEN="Verborgen Veld" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Een veld dat niet zichtbaar is voor de gebruiker" COM_CONVERTFORMS_FIELD_EMAIL="E-mailadres" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Een tekstvak dat enkel een geldig e-mailadres accepteert" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Voorwaarden" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Vraag aan de gebruiker om akkoord te gaan met uw voorwaarden vooraleer het formulier kan verstuurd worden" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Voorwaarden Tekst" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Deze tekst wordt naast het aanvinkvakje geplaatst" COM_CONVERTFORMS_FIELD_CHECKBOX="Aanvinkvakken" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Lijst waarin meerdere vakken kunnen aangevinkt worden" COM_CONVERTFORMS_FIELD_REQUIRED="Is verplicht" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Ongeldig e-mailadres" COM_CONVERTFORMS_FIELD_SIZE="Veld Grootte" COM_CONVERTFORMS_FIELD_SIZE_DESC="Kies de standaard (default) veld grootte voor het formulier" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Laat de gebruiker een telefoonnummer intypen." COM_CONVERTFORMS_FIELD_DATETIME="Datum / Tijd" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Datum / Tijd widget die toelaat een enkele datum, verschillende data, of zelfs een reeks data te kiezen" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Datum Formaat" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Het formaat van de datum. Voorbeelden:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Toon Tijdwidget" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Toont de tijdwidget. Indien ingeschakeld, zorg dan dat de tijdtekens (H:i) in het Datum Formaat veld ingevuld zijn." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Datum" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="De minimum / vroegste datum die kan gekozen worden. Ondersteunt relatieve data formaten zoals: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Datum" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="De maximum / laatste datum die kan gekozen worden. Ondersteunt relatieve data formatien zoals: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Datum selectiewijze" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Laat de gebruiker toe om een enkele datum, verschillende data of een datumreeks te kiezen" COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Tijd 24Uur" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Toont tijdwidget met 24 uren zonder AM/PM keuze." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minuut Interval" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Bepaalt het minuteninterval in de tijdwidget" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Toon inline" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Toont de kalender inline, niet als een popup." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Thema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Kies en kalender thema" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Ongeldig data formaat - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Schakel Mobile Native datumwidget uit" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Indien aangevinkt, zullen smartphone gebruikers de Convert Forms Datumwidget zien, in plaats van die van hun toestel." COM_CONVERTFORMS_CSS_CLASSES="CSS Klasse" COM_CONVERTFORMS_CSS_CLASSES_DESC="Voeg CSS Klassen toe aan de input container. U gebruikt dit vooral voor de layout." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Klasse" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Voeg CSS Klassen toe aan het input element. U gebruikt dit vooral om uw eigen stijl te geven aan de input." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Uitschakelen Browser Autocomplete" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Standaard herinneren browsers zich de informatie die gebruikers invullen in velden. Gebruik deze optie om automatische invulling van formulieren uit te schakelen." COM_CONVERTFORMS_FIELD_DESCRIPTION="Help tekst" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help tekst bij dit veld." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Valideer het opgegeven e-mailadres met een DNS Check." COM_CONVERTFORMS_FIELD_CONFIRM="Bevestig" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Een veld om er u van te vergewissen dat 2 velden overeenkomen" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Bevestig Veld Sleutel" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Typ the veldsleutel die gebruikt wordt om zeker te zijn dat zijn waarde overeenkomt." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Veld is niet correct geconfigureerd" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Veldwaarden komen niet overeen." COM_CONVERTFORMS_HIDE_TEXT="Verberg Tekst" COM_CONVERTFORMS_HIDE_TEXT_DESC="Verberg tekst na geslaagde inzending" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Er ontbreekt een e-mail veld in het formulier" COM_CONVERTFORMS_INVALID_LEAD="Kan het object van de Inzending niet valideren" COM_CONVERTFORMS_EXCEL_SECURITY="Excel Beveiliging" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Indien ingeschakeld zullen waarden in het CSV exportbestand die beginnen met =, +, - of @, een tab prefix krijgen om een CSV injectie te vermijden bij het openen van het exportbestand met Excel. <br><br>Schakel deze optie enkel uit als u 100% zeker bent dat de gegevens te vertrouwen zijn, of als u moeilijkheden ondervindt om het CSV bestand te importeren in een 3rd party toepassing." COM_CONVERTFORMS_CHOICE_LAYOUT="Keuze Layout" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Kies de layout om veld keuzes te tonen" COM_CONVERTFORMS_CHOICE_1_COLUMN="Eén Kolom" COM_CONVERTFORMS_CHOICE_2_COLUMN="Twee Kolommen" COM_CONVERTFORMS_CHOICE_3_COLUMN="Drie Kolommen" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Zij aan Zij" COM_CONVERTFORMS_REQUIRED_INDICATION="Verplicht Veld Aanduiding" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Duidt verplichte velden aan met een asterix naast elk veld label. Het veld label mag niet verborgen zijn." COM_CONVERTFORMS_INPUT_MASK="Input Mask" COM_CONVERTFORMS_INPUT_MASK_DESC="Helpt de gebruiker om een veld in een vooraf bepaald formaat in te vullen. <br><br><b>Syntax:</b><br>9: Numerisch (0-9)<br>a: Alfabetisch (a-z of A-Z)<br>A: Hoofdletters alfabetisch (A-Z)<br>*: Alfanumeriek (0-9, a-z, of A-Z)<br>&: Hoofdletters alfanumeriek (0-9 of A-Z)<br><br><b>Voorbeelden</b>:<br>Telefoon: +1 (999)-9999<br>Datum: 99/99/9999<br>Zip code: 99999?-9999 " COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Gebruiker Ingezonden Data" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Geen ingezonden data gevonden" COM_CONVERTFORMS_LEAD_INFO="Ingezonden Info" COM_CONVERTFORMS_NOTES="Notities" COM_CONVERTFORMS_DATE_RANGE="Datum Reeks" COM_CONVERTFORMS_START_DATE="Start Datum" COM_CONVERTFORMS_END_DATE="Eind Datum" COM_CONVERTFORMS_PERIOD="Periode" COM_CONVERTFORMS_PERIOD_SELECT="- Kies periode -" COM_CONVERTFORMS_HONEYPOT="Schakel Anti-Spam Honeypot in" COM_CONVERTFORMS_HONEYPOT_DESC="Schakel in om een Honeypot veld toe te voegen aan het formulier dat alleen zichtbaar is voor bots. Op die manier, als het honeypot veld ingevuld is, weet het formulier dat de gebruiker een spambot was.<br><br>Op veel websites is dit honeypot veld al genoeg om spam te vermijden. Ontvangt u nog altijd spam, of wil u nog een bijkomende maatregel voorzien, dan is reCAPTCHA een goede optie." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Bestand Opladen" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Geef de gebruiker de mogelijkheid om bestanden op te laden" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload bestemming" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Aangepaste upload bestemming" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Bestanden Limiet" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Hoeveel bestanden kunnen opgeladen worden? Typ 0 voor geen limiet." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Bestandsgrootte Limiet" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Bepaal de maximum grootte van elk opgeladen bestand in megabytes. Type 0 voor geen limiet. <br><br>Uw server's maximum oplaad grootte is: <b>%s</b>" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Toegelaten Bestand Types" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter de gebruiker's input met volgende filters. <br><b>Text</b>: converteert de input naar een volledige tekststring; stript alle tags / attributen.<br><b>Safe HTML</b>: Accepteer alleen veilige HTML elementen zoals.<br><b>Alpha Numeric</b>: Laat enkel a-z en 0-9 toe<br><b>Word</b>: Laat alleen a-z en liggend streepje toe<br><b>Integer</b>: Gebruik enkel de eerste getalwaarde<br><b>Float</b>: Alleen a-z en liggend streepje" COM_CONVERTFORMS_UPLOAD_ERROR="Ongeldig formulier of veldsleutel" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Ongeldig opladen veld" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Ongeldig of niet-ondersteund bestand" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="U kunt tot %d bestanden opladen" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Sleep en drop bestanden hier of" COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Tijdelijk bestand %s ontbreekt. Upload dit bestand opnieuw." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="De oplaad map %s bestaat niet of is niet beschrijfbaar." COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Bestand is te groot ({{filesize}}MB). Maximum bestandsgrootte: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="U kunt geen bestanden van dit type opladen." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Uw browser ondersteunt geen drag'n'drop opladen van bestanden." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server antwoordde met {{statusCode}} code." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Annuleer opladen" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Bent u zeker dat u deze oplading wilt annuleren?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Verwijder bestand" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="U kunt geen bestanden meer opladen." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Bestanden" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Als er veel bestanden opgeladen worden, dan kan de ingenomen ruimte op uw server vlug oplopen. U kunt dan ruimte vrijmaken. <br><br>Deze optie helpt u bestanden in de oplaadmap automatisch te verwijderen na een bepaalde tijd. <br><br>Voorbeeld, typ 3 om automatisch bestanden ouder dan 3 dagen te verwijderen, of 0 als u de bestanden altijd wilt behouden.<br><br>Opmerking: De Convert Forms Uploaded Files Cleaner plugin moet geactiveerd zijn en de respectieve Cron Job URL moet ingesteld zijn op uw server." COM_CONVERTFORMS_READONLY="Enkel-Lezen" COM_CONVERTFORMS_READONLY_DESC="Blokkeer dat er iets in dit veld geplaatst wordt" COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Bestand Tonen" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Het hier toegevoegde PHP script wordt uitgevoerd vooraleer het formulier verschijnt.ff<br><br>Belangrijk hierbij is de <b>$formLayout</b> (String) variabele die de HTML code van het formulier bevat.<br><br>Om de formulier instellingen te bewerken moet u de <b>$form</b> (Array) variable gebruiken.<br><br>U hoeft geen <?php en ?> tags te gebruiken." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Formulier Proces" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="De PHP code die u hier toevoegt wordt uitgevoerd net voor de formuliergegevens in de database opgeslagen worden, ongeacht of de inzending geldig of ongeldig is. <br><br>Dit kan handig zijn als u berekeningen, geavanceerde validaties of wijzigingen van veldwaardes wilt uitvoeren. Alle wijzigingen in de <b>$post</b> (Array) variabele die hier uitgevoerd worden zullen opgenomen worden in de inzendingsgegevens. <br><br>Om toegang te krijgen tot de formulier instellingen gebruikt u de <b>$form</b> (Array) variabele. <br><br>U hoeft geen <?php en ?> tags te gebruiken." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Wijzigen Formulier Inzending" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="De PHP code die u hier toevoegt wordt uitgevoerd nadat het formulier succesvol ingezonden werd, en de gegevens opgeslagen werden in de database. <br><br>Dit kan handig zijn als u extra taken wil uitvoeren, zoals het stilletjes doorsturen van gegevens naar een andere URL. U krijgt toegang tot de inzending met de <b>$submission</b> (Object) variabele. <br><br>Om toegang te krijgen tot de formulier instellingen gebruikt u de <b>$form</b> (Array) variabele.<br><br>U hoeft geen <?php en ?> tags te gebruiken." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP-scripts worden niet uitgevoerd op de backend om problemen met de live formuliervoorbeeldweergave te voorkomen. Test altijd aan de voorkant." COM_CONVERTFORMS_FIELD_PASSWORD="Wachtwoord" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Geef de gebruiker een manier om veilig een wachtwoord in te typen" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Bevestig Veld Type" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Kies voor het bevestigingsveld's input type tussen Tekst en Wachtwoord." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Formulier Voorbereiding" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Het PHP script dat u hier toevoegt wordt uitgevoerd net voor de formuliergegevens klaargemaakt worden en verstuurd worden naar de display (tonen) functie van het formulier.<br><br> Hier ligt de nadruk op de <b>$form</b> (Array) variabele die de instellingen van het formulier bevat. <br><br> U hoeft de <?php en ?> tags niet te gebruiken." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is al een member." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s lijkt vals of ongeldig, gelieve een echt e-mailadres in te typen." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Fout: Google reCAPTCHA script is niet geladen. Vergewis u ervan dat uw browser het niet blokkeert of contacteer de website administrator." COM_CONVERTFORMS_ACCESS_FORMS="Toegang Formulieren" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Laat gebruikers in de groep toe om Formulieren te beheren." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Toegang Inzendingen" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Laat gebruikers in de groep toe om Inzendingen te beheren." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Toegang Campagnes" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Laat gebruikers in de groep toe om Campagnes te beheren. Schakel dit in als u moeilijkheden ondervindt met spam inzendingen." COM_CONVERTFORMS_CSRF_CHECK="Gebruik Joomla! CSRF Token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Voeg een extra beveiligingslaag toe aan uw formulieren door alle AJAX requests te verifiëren met CSRF Tokens.<br><br> Als u dit inschakelt en u gebruikt een cache mechanisme dat de volledige output van een pagina cached zoals de Joomla! Page Cache plugin of een server-side proxy zoals Cloudflare of Sucuri, dan kunt u moeilijkheden ondervinden met de formulier inzending." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Formulier werd succesvol ingezonden" COM_CONVERTFORMS_SECRET_SET="Gelieve een geheime sleutel te configureren om te kunnen het optin endpoint gebruiken." COM_CONVERTFORMS_SECRET_NO="Geen geheime sleutel aanwezig in URL" COM_CONVERTFORMS_SECRET_WRONG="Foute geheime sleutel in de URL" COM_CONVERTFORMS_SECURITY="Beveiliging" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="Onzichtbare reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop het indienen van spamformulieren met de Ontzichtbare reCAPTCHA van Google" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="De positie van de reCAPTCHA-badge. 'inline' geeft je de mogelijkheid het met CSS positioneren." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Rechtsonder" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Linksonder" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="In lijn" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Inzendingen" COM_CONVERTFORMS_SUBMISSIONS_LIST="Inzendingen Lijst" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Toon Bevestigd Alleen" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Schakel dit in om alleen bevestigde inzendingen te tonen." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Verberg Lege Waarden" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Schakel deze optie in om velden met lege waarden te verbergen." COM_CONVERTFORMS_SELECT_FORM="Kies Formulier" COM_CONVERTFORMS_SELECT_FORM_DESC="Kies het formulier waarvan u de inzendingen wil tonen" COM_CONVERTFORMS_SELECT_FORM_DESC2="Selecteer het te tonen formulier" COM_CONVERTFORMS_LIST_LIMIT="Pagina limiet" COM_CONVERTFORMS_LIST_LIMIT_DESC="Aantal inzendingen te tonen per pagina. Typ 0 voor geen limiet." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Bekijk Eigen Alleen" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Alhoewel u een lijst kunt tonen met inzendingen van verschillende gebruikers, krijgt de bezoeker alleen toegang tot de details pagina van zijn/haar eigen inzendingen, als deze optie ingeschakeld is.<br><br>De bezoeker moet ingelogd zijn in zijn/haar account." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Toon Paginatie" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Als het aantal inzendingen de Pagina Limiet overschrijdt, dan worden onder de inzendingen lijst paginatie links getoond." COM_CONVERTFORMS_ORDER="Sorteer Inzendingen" COM_CONVERTFORMS_ORDER_DESC="De volgorde waarin inzendingen getoond worden." COM_CONVERTFORMS_ORDER_RECENT="Meest Recente Eerst" COM_CONVERTFORMS_ORDER_OLDEST="Oudste Eerst" COM_CONVERTFORMS_ORDER_RANDOM="Willekeurige volgorde" COM_CONVERTFORMS_FILTER_USER="Toon Inzendingen Van" COM_CONVERTFORMS_FILTER_USER_DESC="Gebruik dit om inzendingen per gebruiker te filteren.<br><br><b>Logged-in Gebruiker</b><br>Toon alleen inzendingen van de op dat moment ingelogde gebruiker. Elke gebruiker zal zijn inzendingen zien.<br><br><b>Alle Gebruikers</b><br>Toon alle inzendingen.<br><br><b>Specifieke Gebruikers</b><br>Specifieer de inzenders om hun inzendingen te filteren." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Ingelogde Gebruiker" COM_CONVERTFORMS_FILTER_USER_ALL="Alle Gebruikers" COM_CONVERTFORMS_FILTER_USER_SELECT="Specifieke Gebruikers" COM_CONVERTFORMS_SET_USERS="Gebruiker ID's" COM_CONVERTFORMS_SET_USERS_DESC="Vul de Joomla! Gebruiker ID's in om hun inzendingen te filteren. Plaats een komma tussen de verschillende lD's." COM_CONVERTFORMS_LOAD_CSS="Laad Stylesheet" COM_CONVERTFORMS_LOAD_CSS_DESC="Schakel deze optie uit als u het CSS bestand van Convert Forms niet wil laden." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Kies de layout die de inzending in de front-end zal tonen. U kunt ook uw eigen layouts maken in uw template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Kies Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Kies de template om de inzendingen te tonen. Deze template zal worden gebruikt voor zowel de lijst- als de detailview.<br><br>U kunt uw eigen template overrides maken in uw template." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="De hoofd HTML layout van de inzendingen lijst. Verwijder hier niet de {submissions} tag uit, want die wordt vervangen door de gegevens output." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Rij Layout" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="De HTML layout van elke inzending zoals getoond in de Container Layout." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="De HTML layout van de detail pagina van de inzending." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Lege ruimte" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Voeg een lege ruimte toe in jouw formulier" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Lege ruimte" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Stel een verticale opening tussen velden in pixels in." COM_CONVERTFORMS_FIELD_HEADING="Kop" COM_CONVERTFORMS_FIELD_HEADING_DESC="Voeg een heading titel toe om de velden te groeperen" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Titel HTML element" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Selecteer de heading type." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Gebruik link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Vul de link in om de gebruiker naar door te sturen." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Openen in een nieuw venster" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Selecteer om de link te openen in een nieuw venster." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Geef de lettergrootte op voor de kop." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Geef het lettertype op voor de kop." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Regelhoogte" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Geef de regelhoogte op voor de kop." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter spatiëring" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Selecteer de letter spatiëring voor de header." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Tekst uitlijning" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Selecteer de uitlijning van de heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Toon Waardes" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Zorg ervoor dat je voor elke keuze een unieke waarde instelt, anders weet je niet welke optie een gebruiker heeft geselecteerd" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Gebruik berekeningswaarden" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Berekeningswaarden worden over het algemeen gebruikt voor berekeningen. Het vertegenwoordigt de numerieke waarde van een keuze." COM_CONVERTFORMS_FIELD_DIVIDER="Verdeler" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Verdeelt de secties van je formulier" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Randstijl" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Selecteer de randstijl van de verdeler." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Vast" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Onderbroken" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Gestippeld" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Rand Breedte" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Stel de randbreedte van de verdeler in." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Rand Kleur" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Stel de randkleur van de verdeler in." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Bovenmarge" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Stel de bovenmarge van de verdeler in." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Ondermarge" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Stel de ondermarge van de verdeler in." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Eerste dag van de week" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Wijzig de eerste dag van de week in de kalender van de datumkiezer." COM_CONVERTFORMS_ENTER_LABEL="Label invoeren" COM_CONVERTFORMS_ADD_FIELD="Voeg Veld Toe" COM_CONVERTFORMS_ALL_FIELDS="Alle Velden" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Opmaak Velden" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Sta onveilige bestanden toe" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Sta het uploaden van onveilige bestanden toe.<br><br><b>Een bestand wordt als onveilig beschouwd wanneer:</b><br> - een null-byte wordt gevonden in de bestandsnaam.<br>- de bestandsextensie verboden is: .php, py enz. <br>- er een php-tag in de bestandsinhoud zit. <br>- er een verkorte tag in bestandsinhoud zit. <br>- er een verboden extensie ergens in de inhoud wordt gevonden. <br><br>Deze optie beschermt ook tegen onveilige bestanden in gecomprimeerde bestanden zoals zip, rar, tar enz." COM_CONVERTFORMS_LABEL_POSITION="Label positie" COM_CONVERTFORMS_LABEL_POSITION_DESC="Stel de positie van het veldlabel in" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Ongeldige reactie" COM_CONVERTFORMS_INVALID_TASK="Ongeldige taak" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Wacht tot de bestandsupload klaar is." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Incomplete masker" COM_CONVERTFORMS_SUBMISSION_ID="ID inzending" COM_CONVERTFORMS_SUBMISSION_DATE="Datum inzending" COM_CONVERTFORMS_SUBMISSION_STATUS="Status inzending" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID inzend campagne" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID Inzend formulier" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID bezoeker inzending" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID inzend gebruiker" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Totaal aantal inzendingen" COM_CONVERTFORMS_FIELD_RATING="Beoordeling" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." COM_CONVERTFORMS_FIELD_RATING_ICON="Icoon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Geselecteerde kleur" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Niet geselecteerde kleur" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximal beoordeling" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." COM_CONVERTFORMS_FIELD_RANGESLIDER="Bereik schuifregelaar" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." COM_CONVERTFORMS_FIELD_COLORPICKER="Kleurkiezer" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." COM_CONVERTFORMS_MIN_CHARS="Minimum aantal karakters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MAX_CHARS="Maximaal aantal karakters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MIN_WORDS="Minimaal aantal woorden" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." COM_CONVERTFORMS_MAX_WORDS="Maximum aantal woorden" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="Visuele editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." COM_CONVERTFORMS_EDITOR_HEIGHT="Editor hoogte" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" COM_CONVERTFORMS_EDITOR_SELECT="Joomla editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" COM_CONVERTFORMS_DOWNLOAD_WILL_START="De download zal automatisch starten" COM_CONVERTFORMS_EXPORT_WORKING="Exporteren" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Geëxporteerde bestand niet gevonden" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]��:�:�Ecomponents/com_convertforms/language/lv-LV/lv-LV.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Dizains" COM_CONVERTFORMS_BEHAVIOR="Uzvedība" COM_CONVERTFORMS_LIST="Saraksts" COM_CONVERTFORMS_NO_RESULTS_FOUND="%s netiek atrasts" COM_CONVERTFORMS_CREATE_NEW="Izveidot jaunu?" COM_CONVERTFORMS_EMAIL_ASCENDING="E-pasts augošā secībā" COM_CONVERTFORMS_EMAIL_DESCENDING="E-pasts dilstošā secībā" COM_CONVERTFORMS_ACTIONS="Darbības" COM_CONVERTFORMS_VIEW_LEADS="Skatīt iesniegumus" NRI_PLG_CONVERTFORMS="Convert Forms spraudni" COM_CONVERTFORMS_CONFIGURATION="Convert Forms konfigurācija" COM_CONVERTFORMS_LOADCSS="Ielādēt stila lapu" COM_CONVERTFORMS_LOADCSS_DESC="Atlasiet, lai ielādētu paplašinājumu stilu lapu. To var atspējot, ja visus savus stilus ievietojat kādā citā stilu lapā, piemēram, laukā Pielāgotais kods vai veidņu stilu lapā." COM_CONVERTFORMS_DEBUG="Atkļūdot" COM_CONVERTFORMS_DEBUG_DESC="Iespējojiet šo opciju, lai palīdzētu atkļūdot kļūdas un neparedzētu rīcību. Kļūdu ziņojumi tiek novirzīti uz pārlūka konsoli (nospiediet F12) un uz mapi Logs." COM_CONVERTFORMS_FORMS="Veidlapas" COM_CONVERTFORMS_FORM="Veidlapa" COM_CONVERTFORMS_NEW_FORM="Jauna veidlapa" COM_CONVERTFORMS_EDIT_FORM="Rediģēt veidlapu" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s veidlapas kopētas" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s veidlapas publicētas" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s veidlapas nepublicētas" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s veidlapas miskaste" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s veidlapas izdzēstas" COM_CONVERTFORMS_FORM_ASCENDING="Veidlapa augošā secībā" COM_CONVERTFORMS_FORM_DESCENDING="Veidlapa dilstošā secībā" COM_CONVERTFORMS_FORM_SELECT="- Izvēlies veidlapu -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publicē moduļa izveidošanu" COM_CONVERTFORMS_FORM_LEADS="Šai veidlapai līdz šim ir %s iesniegumi." COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publicēt, izmantojot shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Kampaņa" COM_CONVERTFORMS_CAMPAIGNS="kampaņas" COM_CONVERTFORMS_NEW_CAMPAIGN="Jauna kampaņa" COM_CONVERTFORMS_EDIT_CAMPAIGN="Rediģēt kampaņu" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Ievadiet kampaņas nosaukumu. Šo nosaukumu var redzēt tikai jūs." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s kampaņas sakopētas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s kampaņas nepublicētas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s kampaņas publicētas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s kampaņas izmestas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s kampaņas izdzēstas" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s iesniegumi nepublicēti" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s iesniegumi pubicēti" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s ieteikumi miskastē" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s iesniegumi izdzēsti" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampaņa augošā secibā" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampaņa dilstošā secībā" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Izvēlies kampaņu -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Saglabājiet kampaņu, lai iestatītu savu integrāciju." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampaņa izmainīta" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sinhronizē iesniegumus" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Izvēlies, vai jūsu iesniegumi jāsinhronizē ar trešās puses programmām vai jāapkopo tikai jūsu datubāzē. <Br> Piezīme: Ja jāintegrē ar trešās puses programmatūru, piemēram, MailChimp, Aweber, GetResponse, Active Campaign u.c., instalējiet attiecīgo pievienojumprogrammu sadaļā Addonti." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s kampaņas izdzēstas" COM_CONVERTFORMS_CHOOSE_SERVICE="Izvēlies pakalpojumu" COM_CONVERTFORMS_PENDING_LEADS="Gaidošie iesniegumi" COM_CONVERTFORMS_SUBMISSIONS="Iesniegumi" COM_CONVERTFORMS_SUBMISSION="Iesniegums" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Pēdējie iesniegumi" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Apstiprināts" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Neapstiprināts" COM_CONVERTFORMS_EDIT_CONVERSION="Rediģēt iesniegumus" COM_CONVERTFORMS_SUBMISSION_INVALID="Iesniegums nav atrasts." COM_CONVERTFORMS_NOT_AUTHORIZED="Jums nav tiesību piekļūt šai lapai." COM_CONVERTFORMS_LEADS_ASC="Iesniegumi augošā secībā" COM_CONVERTFORMS_LEADS_DESC="Iesniegumi dilstošā secībā" COM_CONVERTFORMS_LEADS_EXPORT="Eksportēt iesniegumu" COM_CONVERTFORMS_ADDONS="Papildinājumi" COM_CONVERTFORMS_INSTALL_ADDONS="Skatīt instalētos papildinājumus" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Lai varētu instalēt Covert Forms pievienojumprogrammas, Novarain Framework spraudņa iestatījumos ir jāievada jūsu lejupielādes atslēga." COM_CONVERTFORMS_ADDONS_DESC="Pievienojumprogrammas paplašina Covert Forms funkcionalitāti. Izmantojot šīs funkcijas, varat izveidot savienojumu ar trešo pušu programmām, integrēt jaunus iespējus un padarīt Covert Forms vēl jaudīgāks." COM_CONVERTFORMS_LAST_YEAR="Pagājušajā gadā" COM_CONVERTFORMS_THIS_YEAR="Šajā gadā" COM_CONVERTFORMS_LAST_MONTH="Pagājušajā mēnesī" COM_CONVERTFORMS_THIS_MONTH="Šajā mēnesī" COM_CONVERTFORMS_LAST_WEEK="Pagājušajā nedēļā" COM_CONVERTFORMS_THIS_WEEK="Šajā nedēļā" COM_CONVERTFORMS_LAST_7_DAYS="Pēdējās 7 dienās" COM_CONVERTFORMS_YESTERDAY="Vakar" COM_CONVERTFORMS_TODAY="Šodien" COM_CONVERTFORMS_AVG_DAY="Vidējā diena (šajā mēnesī)" COM_CONVERTFORMS_PROJECTION="Prognozes šim mēnesim" COM_CONVERTFORMS_TOTAL="Kopsumma" COM_CONVERTFORMS_CHOOSE_FILE="Izvēlies .cnvf failu" COM_CONVERTFORMS_FORMS_NAME_DESC="Unikāls un aprakstošs nosaukums palīdzēs turpmāk, jo tas būtu redzams informācijas panelī, analīzē utt." COM_CONVERTFORMS_BACKGROUND_IMAGE="Fona attēla avots" COM_CONVERTFORMS_IMAGE_DESC="Izvēlēties fona attēla avotu" COM_CONVERTFORMS_CUSTOM_URL="Pielāgots URL" COM_CONVERTFORMS_BACKGROUND_URL="Fona attēla URL" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Ievadiet pielāgotu attēla URL" COM_CONVERTFORMS_BACKGROUND_FILE="Fona attēls" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Atlasiet attēlu, ko augšupielādēt." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Var nodrošināt attēlu, kas tiek parādīts aiz veidlapas satura. Izvēlieties <b>Augšupielādēt</b>, lai augšupielādētu jaunu attēlu, vai <b>Pielāgots URL</b>, lai ievadītu pielāgotu attēla URL. Lai šis iestatījums darbotos, izvēlētajai fona krāsai ir jābūt caurspīdīgai." COM_CONVERTFORMS_FORM_BUILDER="Veidlapu veidotājs" COM_CONVERTFORMS_FIELD_TYPE="Lauku tips" COM_CONVERTFORMS_FIELD_TYPE_DESC="Atribūts Lauka tips norāda parādāmā ievades elementa tipu." COM_CONVERTFORMS_FIELD_LABEL="Lauka etiķete" COM_CONVERTFORMS_FIELD_LABEL_DESC="Lauka etiķete definē ievades elementu." COM_CONVERTFORMS_FIELD_NAME="Lauka nosaukums" COM_CONVERTFORMS_FIELD_NAME_DESC="Tajā norādīts ievades elementa nosaukums, kas tiek izmantots, lai atsauktos uz veidlapas datiem pēc veidlapas iesniegšanas. Izmantojiet šo opciju arī, lai kartētu veidlapas laukus ar integrēšanas programmām." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Teksts, kuru vēlaties parādīt laukā, pirms lietotājs ievada datus." COM_CONVERTFORMS_REQUIRED_NAME="Nepieciešamais lauks" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Ja šī opcija ir iespējota, tas nodrošinās šī lauka aizpildīšanu pirms veidlapas iesniegšanas." COM_CONVERTFORMS_FIELDS="Lauki" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Jūs izmantojat <b>bezmaksas</b> versiju, kas atbalsta tikai 1 e-pasta lauku. <b>Jauniniet uz Pro versiju</b>, lai varētu pārvaldīt neierobežotus laukus." COM_CONVERTFORMS_GENERAL="Vispārīgs" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Lauka teksta līdzinājums" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Lauka teksta līdzinājums" COM_CONVERTFORMS_INPUT_COLOR="Lauka teksta krāsa" COM_CONVERTFORMS_INPUT_BGCOLOR="Lauka fona krāsa" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Lauka apmales krāsa" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Pievieno ievades laukam iekšējo ēnu" COM_CONVERTFORMS_INPUT_FONT_SIZE="Lauka fonta lielums" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Lauka fonta lielums" COM_CONVERTFORMS_VPADDING_SIZE="Vertikālā papildināšana" COM_CONVERTFORMS_HPADDING_SIZE="Horizontālā papildināšana" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Ailes maksimālais platums" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Norādiet jūsu izvēlēto pielāgoto maks. platumu vai lieciet šim lodziņam aizsegt visu ekrāna apgabalu. Ņemiet vērā, ka šis ir maksimālais platums, kas nozīmē, ka forma vienmēr būs piemērota mazākām zonām." COM_CONVERTFORMS_FORM_WIDTH="Pielāgotais maksimālais platums" COM_CONVERTFORMS_FORM_WIDTH_DESC="Norādiet jūsu izvēlēto pielāgoto maks. platumu." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Noņemt noklusējuma papildināšanu" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Noņemiet noklusējuma papildinājumus starp satura apgabalu un formas lodziņa malām." COM_CONVERTFORMS_FORM_BORDER_STYLE="Apmales stils" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apmales lietošana ap formu" COM_CONVERTFORMS_FORM_BORDER_COLOR="Apmales krāsa" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Veidlapas apmales krāsa" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Apmales platums" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Veidlapa apmales platums" COM_CONVERTFORMS_BOX_RADIUS="Kvadrāta Rādiuss" COM_CONVERTFORMS_BORDER_RADIUS="Malu rādiuss" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Ievadīt apmales rādiusa lielumu" COM_CONVERTFORMS_COLLECT_LEADS_USING="Apkopot iesniegumus, izmantojot kampaņu" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Šajā veidlapā savāktie iesniegumi tiks salīdzināti ar atlasīto kampaņu. Kampaņas var pārvaldīt sadaļā \"Kampaņas\"." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Veiksmīga iesniegšanas darbība" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Izvēlieties darbību, kas jāveic pēc veiksmīgas iesniegšanas" COM_CONVERTFORMS_DISPLAY_MSG="Parādīt ziņojumu" COM_CONVERTFORMS_REDIRECT_USER="Novirzīt lietotāju" COM_CONVERTFORMS_SUCCESS_TEXT="Ziņojums pēc sekmīgas darbības" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Ievadiet ziņojumu, kuru vēlaties parādīt lietotājam pēc tam, kad tas ir veiksmīgi pievienots sarakstam." COM_CONVERTFORMS_SUCCESS_URL="Novirzīt URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Ievadiet URL, kur vēlaties novirzīt lietotāju pēc tam, kad tas ir veiksmīgi pievienots sarakstam." COM_CONVERTFORMS_PASS_DATA="Nodot iesniegšanas datus, lai pārvirzītu URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Iesniegšanas pogas stils" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Stilizējiet pogu ar patīkamiem efektiem." ; COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Teksta norādes krāsa" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Teksta norādes krāsa" ; COM_CONVERTFORMS_CUSTOM_CSS="Custom CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." ; COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" ; COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" COM_CONVERTFORMS_TEXTAREA_HEIGHT="teksta apgabals augstums" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Teksta apgabala augstums norāda teksta apgabala redzamo augstumu rindās." ; COM_CONVERTFORMS_CHOICES="Choices" ; COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." ; COM_CONVERTFORMS_FIELD_VALUE="Default Value" COM_CONVERTFORMS_FIELD_VALUE_DESC="Ievadiet noklusējuma lauka vērtība tekstu." ; COM_CONVERTFORMS_HIDE_LABELS="Hide Label" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" ; COM_CONVERTFORMS_IMAGE_SOURCE="Image Source" ; COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." ; COM_CONVERTFORMS_IMAGE_URL="Image URL" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." ; COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" ; COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" ; COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" ; COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" ; COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" ; COM_CONVERTFORMS_FORM_POSITION="Form Position" COM_CONVERTFORMS_FORM_POSITION_DESC="Iestatīt formas pozīciju attiecībā pret teksta konteineru" ; COM_CONVERTFORMS_FORM_SIZE="Form Container Size" ; COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." ; COM_CONVERTFORMS_MESSAGE="Text Message" ; COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" ; COM_CONVERTFORMS_IMAGE_POSITION="Image Position" ; COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" ; COM_CONVERTFORMS_FOOTER="Form Footer" ; COM_CONVERTFORMS_BUTTON_TEXT="Button Text" ; COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" ; COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" ; COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" ; COM_CONVERTFORMS_BODY_FONT="Font Family" ; COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." ; COM_CONVERTFORMS_EMAIL="Email" ; COM_CONVERTFORMS_DATE="Date" ; COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_SUBMISSION="Iesniegums" ; COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" ; COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" ; COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" ; COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" ; COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" ; COM_CONVERTFORMS_DEVICE_TABLET="Tablet" ; COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" ; COM_CONVERTFORMS_RESET_FORM="Reset Form" ; COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" ; COM_CONVERTFORMS_HIDE_FORM="Hide Form" ; COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" ; COM_CONVERTFORMS_TEMPLATES="Templates" ; COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" ; COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" ; COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" ; COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" ; COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" ; COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" ; COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" ; COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" ; COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" ; COM_CONVERTFORMS_IMAGE_BELOW="Below Text" ; COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" ; COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" ; COM_CONVERTFORMS_FLAT="Flat" ; COM_CONVERTFORMS_OUTLINE="Outline" ; COM_CONVERTFORMS_GRADIENT="Gradient" ; COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." ; COM_CONVERTFORMS_EMAILS="Email Notifications" ; COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" ; COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" ; COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" ; COM_CONVERTFORMS_EMAILS_FROM="From Name" ; COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" ; COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." ; COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" ; COM_CONVERTFORMS_EMAILS_BODY="Message" ; COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." ; COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." ; COM_CONVERTFORMS_API_ENABLE="Enable JSON API" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." ; COM_CONVERTFORMS_API_KEY="Secret Key" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." ; COM_CONVERTFORMS_IMAGE_ALT="Image Alt" ; COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" ; COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." ; COM_CONVERTFORMS_ISSUES="Issues" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_MODIFIED="Date Modified" ; COM_CONVERTFORMS_IP="Submitter's IP Address" ; COM_CONVERTFORMS_USER_ID="Submitter's ID" ; COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" ; COM_CONVERTFORMS_VISITOR_ID="Visitor ID" ; COM_CONVERTFORMS_FORM_NAME="Form Name" ; COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" ; COM_CONVERTFORMS_ID="ID" ; COM_CONVERTFORMS_CHOOSE_COLUMNS="Columns" ; COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." ; COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" ; COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" ; COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" ; COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" ; COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" ; COM_CONVERTFORMS_FIELDS_DELETE="Delete field" ; COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" ; COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" ; COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" ; COM_CONVERTFORMS_FIELD_TEXT="Textbox" ; COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" ; COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" ; COM_CONVERTFORMS_FIELD_NUMBER="Number" ; COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." ; COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" ; COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" ; COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" ; COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" ; COM_CONVERTFORMS_FIELD_URL="Website / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" ; COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" ; COM_CONVERTFORMS_FIELD_COUNTRY="Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" ; COM_CONVERTFORMS_FIELD_CURRENCY="Currency" ; COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" ; COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" ; COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" ; COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" ; COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" ; COM_CONVERTFORMS_FIELD_EMAIL="Email Address" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" ; COM_CONVERTFORMS_FIELD_REQUIRED="Is required" ; COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" ; COM_CONVERTFORMS_FIELD_SIZE="Field Size" ; COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" ; COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." ; COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Date Format" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." ; COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." ; COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" ; COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" ; COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." ; COM_CONVERTFORMS_CSS_CLASSES="CSS Class" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." ; COM_CONVERTFORMS_FIELD_CONFIRM="Confirm" ; COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" ; COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" ; COM_CONVERTFORMS_HIDE_TEXT="Hide Text" ; COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" ; COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" ; COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" ; COM_CONVERTFORMS_CHOICE_1_COLUMN="One Column" ; COM_CONVERTFORMS_CHOICE_2_COLUMN="Two Columns" ; COM_CONVERTFORMS_CHOICE_3_COLUMN="Three Columns" ; COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." ; COM_CONVERTFORMS_INPUT_MASK="Input Mask" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" ; COM_CONVERTFORMS_NOTES="Notes" ; COM_CONVERTFORMS_DATE_RANGE="Date Range" ; COM_CONVERTFORMS_START_DATE="Start Date" ; COM_CONVERTFORMS_END_DATE="End Date" ; COM_CONVERTFORMS_PERIOD="Period" ; COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" ; COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." ; COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" ; COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Allowed File Types" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." ; COM_CONVERTFORMS_FIELD_FILTER="Filter" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" ; COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" ; COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" ; COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." ; COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" ; COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." ; COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." ; COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." ; COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" ; COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." ; COM_CONVERTFORMS_READONLY="Read-only" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" ; COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." ; COM_CONVERTFORMS_FIELD_PASSWORD="Password" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." ; COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" ; COM_CONVERTFORMS_SECURITY="Security" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" ; COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" ; COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." ; COM_CONVERTFORMS_SELECT_FORM="Select Form" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." ; COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" ; COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" ; COM_CONVERTFORMS_ORDER_RANDOM="Random Order" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." ; COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" ; COM_CONVERTFORMS_FILTER_USER_ALL="All Users" ; COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" ; COM_CONVERTFORMS_SET_USERS="User IDs" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." ; COM_CONVERTFORMS_FIELD_DIVIDER="Divider" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Atlasiet dalītāja apmales stilu." ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Apmales platums" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Iestatiet dalītāja apmales platumu." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Apmales krāsa" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Iestatiet dalītāja apmales krāsu." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" ; COM_CONVERTFORMS_ADD_FIELD="Add Field" ; COM_CONVERTFORMS_ALL_FIELDS="All Fields" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]��d)-�-�Ecomponents/com_convertforms/language/el-GR/el-GR.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Σχεδιασμός" COM_CONVERTFORMS_BEHAVIOR="Συμπεριφορά" COM_CONVERTFORMS_LIST="Λίστα" COM_CONVERTFORMS_NO_RESULTS_FOUND="Κανένα %s δε βρέθηκε" COM_CONVERTFORMS_CREATE_NEW="Δημιουργία νέου?" COM_CONVERTFORMS_EMAIL_ASCENDING="αύξουσα σειρά Email" COM_CONVERTFORMS_EMAIL_DESCENDING="Φθίνουσα σειρά Email" COM_CONVERTFORMS_ACTIONS="Ενέργειες" COM_CONVERTFORMS_VIEW_LEADS="Προβολή εγγραφών" NRI_PLG_CONVERTFORMS="Πρόσθετο Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Ρύθμιση Convert Forms" COM_CONVERTFORMS_LOADCSS="Φόρτωση στυλ" COM_CONVERTFORMS_LOADCSS_DESC="Select to load the extensions stylesheet. You can disable this if you place all your own styles in some other stylesheet, like the Custom Code field or the templates stylesheet" COM_CONVERTFORMS_DEBUG="Εντοπισμός σφαλμάτων" COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." COM_CONVERTFORMS_FORMS="Φόρμες" COM_CONVERTFORMS_FORM="Φόρμα" COM_CONVERTFORMS_NEW_FORM="Νέα φόρμα" COM_CONVERTFORMS_EDIT_FORM="Επεξεργασία φόρμας" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s φόρμες αντιγράφηκαν" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s φόρμες δημοσιεύτηκαν" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s φόρμες αποσύρθηκαν" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s φόρμες σε ανακύκλωση" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s φόρμες διαγράφηκαν" COM_CONVERTFORMS_FORM_ASCENDING="αύξουσα σειρά φόρμας" COM_CONVERTFORMS_FORM_DESCENDING="Φθίνουσα σειρά φόρμας" COM_CONVERTFORMS_FORM_SELECT="- Επιλογή φόρμας -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publish creating a module" COM_CONVERTFORMS_FORM_LEADS="This form has %s total submissions so far" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publish using shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Καμπάνια" COM_CONVERTFORMS_CAMPAIGNS="Καμπάνιες" COM_CONVERTFORMS_NEW_CAMPAIGN="Νέα Καμπάνια" COM_CONVERTFORMS_EDIT_CAMPAIGN="Επεξεργασία Καμπάνιας" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Enter a campaign name. This name can not be seen by anyone else but you." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Καμπάνιες αντιγράφηκαν" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campaigns unpublished" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campaigns published" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campaigns trashed" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campaigns deleted" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s αδημοσίευτες εγγραφές" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s δημοσιευμένες εγγραφές" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s ανακυκλωμένες εγγραφές" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s διεγραμμένες εγγραφές" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s αρχειοθετημένες εγγραφές" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="αύξουσα σειρά καμπάνιας" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Φθίνουσα σειρά καμπάνιας" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Select Campaign -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Please save the campaign to setup your integration." COM_CONVERTFORMS_CAMPAIGN_CHANGED="η καμπάνια άλλαξε" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sync Submissions" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choose whether your submissions should be synced to third party softwares or to be collected in your database only. <Br>Note: If you need to integrate with third party software like MailChimp, Aweber, GetResponse, Active Campaign etc please install the respective addon in the Addons section." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campaigns deleted" COM_CONVERTFORMS_CHOOSE_SERVICE="Choose Service" COM_CONVERTFORMS_PENDING_LEADS="Pending Submissions" COM_CONVERTFORMS_SUBMISSIONS="Εγγραφές" COM_CONVERTFORMS_SUBMISSION="Εγγραφή" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Πρόσφατες εγγραφές" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Επιβεβαιωμένες" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Ανεπιβεβαίωτες" COM_CONVERTFORMS_EDIT_CONVERSION="Επεξεργασία εγγραφής" COM_CONVERTFORMS_SUBMISSION_INVALID="Δε βρέθηκε εγγραφή." COM_CONVERTFORMS_NOT_AUTHORIZED="You are not authorized to access this page." COM_CONVERTFORMS_LEADS_ASC="Αυξουσα σειρά εγγραφών" COM_CONVERTFORMS_LEADS_DESC="Φθίνουσα σειρά εγγραφών" COM_CONVERTFORMS_LEADS_EXPORT="Εξαγωγή εγγραφών" COM_CONVERTFORMS_ADDONS="Πρόσθετα" COM_CONVERTFORMS_INSTALL_ADDONS="Προβολή εγκατεστημένων πρόσθετων" COM_CONVERTFORMS_ADDONS_MISSING_KEY="To be able to install Convert Forms Addons, you will need enter your Download Key in the settings of the Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Add-ons extend the functionality of Convert Forms. With these addons, you can connect with third party softwares, integrate new features and make Convert Forms even more powerful." COM_CONVERTFORMS_LAST_YEAR="Πέρυσι" COM_CONVERTFORMS_THIS_YEAR="Φέτος" COM_CONVERTFORMS_LAST_MONTH="Προηγούμενο μήνα" COM_CONVERTFORMS_THIS_MONTH="Αυτό το μήνα" COM_CONVERTFORMS_LAST_WEEK="Περασμένη εβδομάδα" COM_CONVERTFORMS_THIS_WEEK="Αυτή την εβδομάδα" COM_CONVERTFORMS_LAST_7_DAYS="Τελευταίες 7 ημέρες" COM_CONVERTFORMS_YESTERDAY="Χτες" COM_CONVERTFORMS_TODAY="Σήμερα" COM_CONVERTFORMS_AVG_DAY="Average day (this month)" COM_CONVERTFORMS_PROJECTION="Προβολή αυτού του μήνα" COM_CONVERTFORMS_TOTAL="Σύνολο" COM_CONVERTFORMS_CHOOSE_FILE="Επέλεξε ένα αρχείο .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="A unique & descriptive name will help you in future as it would appear in the dashboard, analytics, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Background Image Source" COM_CONVERTFORMS_IMAGE_DESC="Choose the background image source" COM_CONVERTFORMS_CUSTOM_URL="Προσωπικό URL" COM_CONVERTFORMS_BACKGROUND_URL="URL εικόνας φόντου" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Enter custom URL for your image" COM_CONVERTFORMS_BACKGROUND_FILE="Εικόνα φόντου" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Select an image to upload." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." COM_CONVERTFORMS_FORM_BUILDER="Δημιουργός φόρμας" COM_CONVERTFORMS_FIELD_TYPE="Τϋπος πεδίου" COM_CONVERTFORMS_FIELD_TYPE_DESC="The Field Type attribute specifies the type of input element to display." COM_CONVERTFORMS_FIELD_LABEL="Ετικέτα πεδίου" COM_CONVERTFORMS_FIELD_LABEL_DESC="The Field Label defines a label for an input element." COM_CONVERTFORMS_FIELD_NAME="Ονομα πεδίου" COM_CONVERTFORMS_FIELD_NAME_DESC="It specifies the name of input element which is used to reference form data after a form is submitted. Use this option also to map form fields with integrations apps." COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="The text you would like displayed in the field, before a user enters any data." COM_CONVERTFORMS_REQUIRED_NAME="Απαραίτητο πεδίο" COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Πεδία" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="You are using the <b>Free</b> version which supports only 1 email field. <b>Upgrade to Pro version</b> to be able to manage unlimited fields." COM_CONVERTFORMS_GENERAL="Γενικά" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Field Text Alignment" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Form Text Alignment" COM_CONVERTFORMS_INPUT_COLOR="Field Text Color" COM_CONVERTFORMS_INPUT_BGCOLOR="Field Background Color" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Field Border Color" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adds an inner shadow to the input field" COM_CONVERTFORMS_INPUT_FONT_SIZE="Field Font Size" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Field Font Size" COM_CONVERTFORMS_VPADDING_SIZE="Vertical Padding" COM_CONVERTFORMS_HPADDING_SIZE="Horizontal Padding" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Width" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provide a custom max width of your choice or make this box cover entire screen area. Note that this is the max width which means the form will always fit on smaller areas." COM_CONVERTFORMS_FORM_WIDTH="Custom Max Width" COM_CONVERTFORMS_FORM_WIDTH_DESC="Provide custom max width of your choice." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remove Default Padding" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove the default padding between content area and form box edges." COM_CONVERTFORMS_FORM_BORDER_STYLE="Στυλ περιγράμματος" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apply a border around the form" COM_CONVERTFORMS_FORM_BORDER_COLOR="Χρώμα περιγράμματος" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Form Border Color" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Πάχος περιγράμματος" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="The form's border width" COM_CONVERTFORMS_BOX_RADIUS="Στρογγύλεμα πλαισίου" COM_CONVERTFORMS_BORDER_RADIUS="Στρογγύλεμα περιγράμματος" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Enter border's radius size" COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choose the action you would like to take place after a successful submission" COM_CONVERTFORMS_DISPLAY_MSG="Προβολή μηνύματος" COM_CONVERTFORMS_REDIRECT_USER="Ανακατεύθυνση χρήστη" COM_CONVERTFORMS_SUCCESS_TEXT="Μήνυμα μετά την επιτυχία" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Enter the message you would like to display the user after successfully added to the list." COM_CONVERTFORMS_SUCCESS_URL="URL ανακατεύθυνσης" COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" COM_CONVERTFORMS_PASS_DATA_GET="Ναι, χρήση μεθόδου GET" COM_CONVERTFORMS_PASS_DATA_POST="Ναι, χρήση μεθόδου POST" COM_CONVERTFORMS_SUBMIT_STYLE="Στυλ πλήκτρου επιβεβαίωσης" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" COM_CONVERTFORMS_CUSTOM_CSS="Προσωπικό CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." COM_CONVERTFORMS_CHOICES="Επιλογές" COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." COM_CONVERTFORMS_FIELD_VALUE="Προεπιλεγμένη αξία" COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." COM_CONVERTFORMS_HIDE_LABELS="Απόκρυψη ετικέτας" COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" COM_CONVERTFORMS_IMAGE_SOURCE="Πηγή εικόνας" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." COM_CONVERTFORMS_IMAGE_URL="URL εικόνας" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" COM_CONVERTFORMS_FORM_POSITION="Form Position" COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" COM_CONVERTFORMS_FORM_SIZE="Form Container Size" COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." COM_CONVERTFORMS_MESSAGE="Κείμενο μηνύματος" COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" COM_CONVERTFORMS_IMAGE_POSITION="Τοποθεσία εικόνας" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" COM_CONVERTFORMS_FOOTER="Υποσέλιδο φόρμας" COM_CONVERTFORMS_BUTTON_TEXT="Κείμενο πλήκτρου" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" COM_CONVERTFORMS_BODY_FONT="Οικογένεια γραμματοσειράς" COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Ημερομηνία" COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_SUBMISSION="Εγγραφή" COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" COM_CONVERTFORMS_DEVICE_DESKTOP="Επιτραπέζιος" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Κινητό" COM_CONVERTFORMS_RESET_FORM="Επαναφορά φόρμας" COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" COM_CONVERTFORMS_HIDE_FORM="Απόκρυψη φόρμας" COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" COM_CONVERTFORMS_TEMPLATES="Πρότυπα" COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Μπάρες" COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" COM_CONVERTFORMS_IMAGE_BELOW="Below Text" COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" COM_CONVERTFORMS_FLAT="Flat" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Gradient" COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." COM_CONVERTFORMS_EMAILS="Email Notifications" COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" COM_CONVERTFORMS_EMAILS_FROM="From Name" COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" COM_CONVERTFORMS_EMAILS_BODY="Message" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." COM_CONVERTFORMS_API_ENABLE="Enable JSON API" COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." COM_CONVERTFORMS_API_KEY="Secret Key" COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." COM_CONVERTFORMS_IMAGE_ALT="Image Alt" COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." COM_CONVERTFORMS_ISSUES="Issues" COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_MODIFIED="Date Modified" COM_CONVERTFORMS_IP="Submitter's IP Address" COM_CONVERTFORMS_USER_ID="Submitter's ID" COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" COM_CONVERTFORMS_VISITOR_ID="Visitor ID" COM_CONVERTFORMS_FORM_NAME="Form Name" COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Στήλες" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." COM_CONVERTFORMS_UNTITLED_BOX="Ανώνυμη φόρμα" COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" COM_CONVERTFORMS_FIELDS_DELETE="Delete field" COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" COM_CONVERTFORMS_FIELD_TEXT="Textbox" COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" COM_CONVERTFORMS_FIELD_NUMBER="Number" COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" COM_CONVERTFORMS_FIELD_URL="Website / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" COM_CONVERTFORMS_FIELD_COUNTRY="Country" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Currency" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" COM_CONVERTFORMS_FIELD_EMAIL="Email Address" COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" COM_CONVERTFORMS_FIELD_REQUIRED="Is required" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" COM_CONVERTFORMS_FIELD_SIZE="Field Size" COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Date Format" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." COM_CONVERTFORMS_CSS_CLASSES="CSS Class" COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." COM_CONVERTFORMS_FIELD_CONFIRM="Confirm" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" COM_CONVERTFORMS_HIDE_TEXT="Hide Text" COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" COM_CONVERTFORMS_CHOICE_1_COLUMN="One Column" COM_CONVERTFORMS_CHOICE_2_COLUMN="Two Columns" COM_CONVERTFORMS_CHOICE_3_COLUMN="Three Columns" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." COM_CONVERTFORMS_INPUT_MASK="Input Mask" COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" COM_CONVERTFORMS_LEAD_INFO="Submission Info" COM_CONVERTFORMS_NOTES="Notes" COM_CONVERTFORMS_DATE_RANGE="Date Range" COM_CONVERTFORMS_START_DATE="Start Date" COM_CONVERTFORMS_END_DATE="End Date" COM_CONVERTFORMS_PERIOD="Period" COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Allowed File Types" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." COM_CONVERTFORMS_READONLY="Read-only" COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Password" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" COM_CONVERTFORMS_SECURITY="Security" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." COM_CONVERTFORMS_SELECT_FORM="Select Form" COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" COM_CONVERTFORMS_LIST_LIMIT="Page Limit" COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." COM_CONVERTFORMS_ORDER="Sort Submissions" COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" COM_CONVERTFORMS_ORDER_RANDOM="Random Order" COM_CONVERTFORMS_FILTER_USER="Show Submissions From" COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" COM_CONVERTFORMS_FILTER_USER_ALL="All Users" COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" COM_CONVERTFORMS_SET_USERS="User IDs" COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." COM_CONVERTFORMS_FIELD_HEADING="Heading" COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." COM_CONVERTFORMS_FIELD_DIVIDER="Divider" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." COM_CONVERTFORMS_ENTER_LABEL="Enter Label" COM_CONVERTFORMS_ADD_FIELD="Add Field" COM_CONVERTFORMS_ALL_FIELDS="All Fields" COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." COM_CONVERTFORMS_LABEL_POSITION="Label Position" COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" COM_CONVERTFORMS_INVALID_TASK="Invalid Task" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" COM_CONVERTFORMS_SUBMISSION_ID="ID Εγγραφής" COM_CONVERTFORMS_SUBMISSION_DATE="Ημ/νια Εγγραφής" COM_CONVERTFORMS_SUBMISSION_STATUS="Κατάσταση Εγγραφής" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID καμπάνιας Εγγραφής" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID φόρμας Εγγραφής" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID επισκέπτη Εγγραφής" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID χρήστη Εγγραφής" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Αριθμός εγγραφών" COM_CONVERTFORMS_FIELD_RATING="Κατάταξη" COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." COM_CONVERTFORMS_FIELD_RATING_ICON="Εικονίδιο" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Επιλεγμένο χρώμα" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Αποεπιλεγμένο χρώμα" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Μέγιστη κατάταξη" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MIN_WORDS="Minimum Words" COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." COM_CONVERTFORMS_MAX_WORDS="Maximum Words" COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="επεξεργαστής πλούσιου κειμένου" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." COM_CONVERTFORMS_EDITOR_HEIGHT="Υψος επεξεργαστή" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" COM_CONVERTFORMS_EDITOR_SELECT="επεξεργαστής Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Δε βρέθηκα ο επεξεργαστής Joomla: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s εγγραφές εξάχθηκαν" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." COM_CONVERTFORMS_EXPORT_WORKING="Εξαγωγή" COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." COM_CONVERTFORMS_FIELD_SIGNATURE="Υπογραφή" COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Εξορισμού κατάσταση εγγραφής" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." COM_CONVERTFORMS_SAVE_DATA_TO_DB="Αποθήκευση εγγραφών στη Βάση δεδομένων" COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." COM_CONVERTFORMS_SAVE_DATA="Αποθήκευση εγγραφών" COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Μεταφόρτωση υπογραφής" COM_CONVERTFORMS_FILTER_SEARCH="Φίλτρο αναζήτησης" COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." COM_CONVERTFORMS_SUBMISSIONS_ASC="Αυξουσα σειρά εγγραφών" COM_CONVERTFORMS_SUBMISSIONS_DESC="Φθίνουσα σειρά εγγραφών" COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Κείμενο λανθασμένης απάντησης" COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]����Ecomponents/com_convertforms/language/pl-PL/pl-PL.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr ; CONVERTFORMS="Convert Forms" ; COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Projekt" COM_CONVERTFORMS_BEHAVIOR="Zachowanie" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="Znaleziono %s" COM_CONVERTFORMS_CREATE_NEW="Utwórz nowy" COM_CONVERTFORMS_EMAIL_ASCENDING="Email rosnąco" COM_CONVERTFORMS_EMAIL_DESCENDING="Email malejąco" COM_CONVERTFORMS_ACTIONS="Działania" COM_CONVERTFORMS_VIEW_LEADS="Przeglądaj zgłoszenia" NRI_PLG_CONVERTFORMS="Dodatek Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Konfiguracja Convert Forms" COM_CONVERTFORMS_LOADCSS="Załaduj Arkusz stylów" COM_CONVERTFORMS_LOADCSS_DESC="Wybierz, aby załadować arkusz stylów rozszerzeń. Możesz wyłączyć tę opcję, jeśli umieścisz wszystkie swoje własne style w innym arkuszu stylów, takim jak pole Kod niestandardowy lub arkusz stylów szablonów " ; COM_CONVERTFORMS_DEBUG="Debug" COM_CONVERTFORMS_DEBUG_DESC="Włącz tę opcję, aby pomóc w debugowaniu błędów i nieoczekiwanych zachowań. Komunikaty o błędach są przesyłane do konsoli przeglądarki (naciśnij F12) i do folderu Logs. " COM_CONVERTFORMS_FORMS="Formularze" COM_CONVERTFORMS_FORM="Formularz" COM_CONVERTFORMS_NEW_FORM="Nowy Formularz" COM_CONVERTFORMS_EDIT_FORM="Edytuj Formularz" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formularzy skopiowano" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formularzy opublikowano" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formularzy cofnięto z publikacji" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formularzy w koszu" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formularzy usunięto" COM_CONVERTFORMS_FORM_ASCENDING="Formularze rosnąco" COM_CONVERTFORMS_FORM_DESCENDING="Formularze malejąco" COM_CONVERTFORMS_FORM_SELECT="- Wybierz Formularz -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publikuj za pomocą modułu/tworząc moduł" COM_CONVERTFORMS_FORM_LEADS="Ten formularz ma %s zgłoszeń" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publikuj za pomocą kodu %s" COM_CONVERTFORMS_CAMPAIGN="Kampania" COM_CONVERTFORMS_CAMPAIGNS="Kampanie" COM_CONVERTFORMS_NEW_CAMPAIGN="Nowa Kampania" COM_CONVERTFORMS_EDIT_CAMPAIGN="Edytuj Kampanię" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Wpisz nazwę kampanii. Nazwa ta będzie ona widoczna tylko dla ciebie" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Kampanii skopiowano" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Kampanii cofnięto z publikacji" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Kampanii opublikowano" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Kampanii w koszu" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Kampanii usunięto" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s zgłoszeń cofniętych z publikacji" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s zgłoszeń upubliczniono" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s zgłoszeń w koszu" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s zgłoszeń usunięto" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s zgłoszeń zarchiwizowano" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampanie rosnąco" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampanie malejąco" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Wybierz Kampanię -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Zapisz kampanię, aby skonfigurować integrację." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampania zmieniona" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synchronizuj zgłoszenia" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Wybierz, czy Twoje zgłoszenia mają być synchronizowane z oprogramowaniem innych firm, czy też powinny być gromadzone tylko w Twojej bazie danych. <Br>Uwaga: Jeśli chcesz zintegrować się z oprogramowaniem innych firm, takim jak MailChimp, Aweber, GetResponse, Active Campaign itp., zainstaluj odpowiedni dodatek w sekcji Dodatki." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Kampanii usunięto" COM_CONVERTFORMS_CHOOSE_SERVICE="Wybierz usługę" COM_CONVERTFORMS_PENDING_LEADS="Zgłoszenia oczekujące" COM_CONVERTFORMS_SUBMISSIONS="Zgłoszenia" COM_CONVERTFORMS_SUBMISSION="Zgłoszenie" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Ostatnie zgłoszenie" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Potwierdzone" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Niepotwierdzone " COM_CONVERTFORMS_EDIT_CONVERSION="Edytuj zgłoszenie" COM_CONVERTFORMS_SUBMISSION_INVALID="Zgłoszenie nie znalezione" COM_CONVERTFORMS_NOT_AUTHORIZED="Nie masz wystarczających uprawnień, aby uzyskać dostęp do tej strony." COM_CONVERTFORMS_LEADS_ASC="Zgłoszenia rosnąco" COM_CONVERTFORMS_LEADS_DESC="Zgłoszenia malejąco" COM_CONVERTFORMS_LEADS_EXPORT="Eksportuj zgłoszenie" COM_CONVERTFORMS_ADDONS="Dodatki" COM_CONVERTFORMS_INSTALL_ADDONS="Wyświetl zainstalowane dodatki" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Aby móc zainstalować dodatki do Convert Forms, musisz wprowadzić klucz pobierania w ustawieniach Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Dodatki rozszerzają funkcjonalność Convert Forms. Dzięki tym dodatkom możesz łączyć się z oprogramowaniem innych firm, integrować nowe funkcje i jeszcze bardziej zwiększać możliwości Convert Forms." COM_CONVERTFORMS_LAST_YEAR="Poprzedni rok" COM_CONVERTFORMS_THIS_YEAR="Ten rok" COM_CONVERTFORMS_LAST_MONTH="Poprzedni miesiąc" COM_CONVERTFORMS_THIS_MONTH="Ten miesiąc" COM_CONVERTFORMS_LAST_WEEK="Poprzedni tydzień" COM_CONVERTFORMS_THIS_WEEK="Ten tydzień" COM_CONVERTFORMS_LAST_7_DAYS="Ostatnie 7 dni" COM_CONVERTFORMS_YESTERDAY="Wczoraj" COM_CONVERTFORMS_TODAY="Dzisiaj" COM_CONVERTFORMS_AVG_DAY="Przeciętny dzień (w tym miesiącu)" COM_CONVERTFORMS_PROJECTION="Wyświetleń w tym miesiącu" COM_CONVERTFORMS_TOTAL="Razem" COM_CONVERTFORMS_CHOOSE_FILE="Wybierz .cnvf file" COM_CONVERTFORMS_FORMS_NAME_DESC="Unikalna i opisowa nazwa pomoże Ci w przyszłości, gdy będzie pojawiać się w panelu głównym, analityce itp." COM_CONVERTFORMS_BACKGROUND_IMAGE="Źródło obrazu tła" COM_CONVERTFORMS_IMAGE_DESC="Wybierz źródło obrazu tła" COM_CONVERTFORMS_CUSTOM_URL="Niestandardowy adres URL" COM_CONVERTFORMS_BACKGROUND_URL="URL obrazu tła" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Wpisz niestandardowy adres URL swojego obrazu" COM_CONVERTFORMS_BACKGROUND_FILE="Obraz tła" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Wybierz obraz do przesłania." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Możesz wprowadzić obraz, który pojawi się za treścią formularza. Wybierz <b>Prześlij</b>, aby przesłać nowy obraz, lub <b>Niestandardowy URL</b>, aby wprowadzić niestandardowy adres URL obrazu. Aby to ustawienie działało, wybrany kolor tła musi być przezroczysty." COM_CONVERTFORMS_FORM_BUILDER="Kreator formularzy" COM_CONVERTFORMS_FIELD_TYPE="Typ pola" COM_CONVERTFORMS_FIELD_TYPE_DESC="Atrybut Typ pola określa typ elementu wejściowego do wyświetlenia." COM_CONVERTFORMS_FIELD_LABEL="Etykieta pola" COM_CONVERTFORMS_FIELD_LABEL_DESC="Etykieta pola definiuje etykietę dla elementu wejściowego." COM_CONVERTFORMS_FIELD_NAME="Nazwa pola" COM_CONVERTFORMS_FIELD_NAME_DESC="Określa nazwę elementu wejściowego, który służy do odwoływania się do danych formularza po przesłaniu formularza. Użyj tej opcji również do mapowania pól formularzy z aplikacjami integracyjnymi." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Tekst, który chcesz wyświetlić w polu, zanim użytkownik wprowadzi jakiekolwiek dane." COM_CONVERTFORMS_REQUIRED_NAME="Pole wymagane" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Jeśli ta opcja jest włączona, zagwarantuje to wypełnienie tego pola przed umożliwieniem przesłania formularza." COM_CONVERTFORMS_FIELDS="Pola" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Używasz <b>bezpłatnej</b> wersji, która obsługuje tylko 1 pole e-mail. <b>Uaktualnij do wersji Pro</b>, aby móc zarządzać nieograniczoną liczbą pól." ; COM_CONVERTFORMS_GENERAL="General" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Wyrównanie tekstu pola" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Wyrównanie tekstu formularza" COM_CONVERTFORMS_INPUT_COLOR="Kolor tekstu pola" COM_CONVERTFORMS_INPUT_BGCOLOR="Kolor tła pola" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Kolor ramki pola" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Dodaje wewnętrzny cień do pola wejściowego" COM_CONVERTFORMS_INPUT_FONT_SIZE="Rozmiar czcionki pola" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Rozmiar czcionki pola" COM_CONVERTFORMS_VPADDING_SIZE="Margines pionowy" COM_CONVERTFORMS_HPADDING_SIZE="Margines poziomy" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Maksymalna wielkość formularza" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Podaj niestandardową maksymalną szerokość, lub ustaw wielkość automatyczną. Wielkość automatyczna przyjmie maksymalną szerokość, co oznacza, że formularz obejmie cały ekran i zawsze zmieści się na mniejszych ekranach." COM_CONVERTFORMS_FORM_WIDTH="Niestandardowa maksymalna szerokość" COM_CONVERTFORMS_FORM_WIDTH_DESC="Podaj niestandardową maksymalną szerokość." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Usuń domyślny margines" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Usuń domyślny margines między obszarem zawartości a krawędziami pola formularza." COM_CONVERTFORMS_FORM_BORDER_STYLE="Styl ramki" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Zastosuj ramkę wokół formularza" COM_CONVERTFORMS_FORM_BORDER_COLOR="Kolor ramki" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Kolor ramki formularza" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Szerokość ramki" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Szerokość ramki formularza" COM_CONVERTFORMS_BOX_RADIUS="Zaokrąglenie rogów formularza" COM_CONVERTFORMS_BORDER_RADIUS="Zaokrąglenie ramki" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Wprowadź promień zaokrąglenia" ; COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Zgłoszenia zebrane przez ten formularz będą powiązane z wybraną kampanią. Możesz zarządzać kampaniami w sekcji Kampanie." ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Wybierz akcję, którą chcesz wykonać po pomyślnym przesłaniu zgłoszenia" COM_CONVERTFORMS_DISPLAY_MSG="Wyświetl wiadomość" COM_CONVERTFORMS_REDIRECT_USER="Przekieruj użytkownika" COM_CONVERTFORMS_SUCCESS_TEXT="Wiadomość po udanej akcji" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Wpisz wiadomość, którą chcesz wyświetlić użytkownikowi po pomyślnym dodaniu do listy." COM_CONVERTFORMS_SUCCESS_URL="Przekieruj URL" ; COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." ; COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" ; COM_CONVERTFORMS_SUBMIT_STYLE="Submit Button Style" ; COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." ; COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" ; COM_CONVERTFORMS_CUSTOM_CSS="Custom CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." ; COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" ; COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." ; COM_CONVERTFORMS_CHOICES="Choices" ; COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." ; COM_CONVERTFORMS_FIELD_VALUE="Default Value" ; COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." ; COM_CONVERTFORMS_HIDE_LABELS="Hide Label" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" ; COM_CONVERTFORMS_IMAGE_SOURCE="Image Source" ; COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." ; COM_CONVERTFORMS_IMAGE_URL="Image URL" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." ; COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" ; COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" ; COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" ; COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" ; COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" ; COM_CONVERTFORMS_FORM_POSITION="Form Position" ; COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" ; COM_CONVERTFORMS_FORM_SIZE="Form Container Size" ; COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." ; COM_CONVERTFORMS_MESSAGE="Text Message" ; COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" ; COM_CONVERTFORMS_IMAGE_POSITION="Image Position" ; COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" ; COM_CONVERTFORMS_FOOTER="Form Footer" ; COM_CONVERTFORMS_BUTTON_TEXT="Button Text" ; COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" ; COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" ; COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" ; COM_CONVERTFORMS_BODY_FONT="Font Family" ; COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." ; COM_CONVERTFORMS_EMAIL="Email" ; COM_CONVERTFORMS_DATE="Date" ; COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_SUBMISSION="Zgłoszenie" ; COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" ; COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" ; COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" ; COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" ; COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" ; COM_CONVERTFORMS_DEVICE_TABLET="Tablet" ; COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" ; COM_CONVERTFORMS_RESET_FORM="Reset Form" ; COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" ; COM_CONVERTFORMS_HIDE_FORM="Hide Form" ; COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" ; COM_CONVERTFORMS_TEMPLATES="Templates" ; COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" ; COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" ; COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" ; COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" ; COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" ; COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" ; COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" ; COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" ; COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" ; COM_CONVERTFORMS_IMAGE_BELOW="Below Text" ; COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" ; COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" ; COM_CONVERTFORMS_FLAT="Flat" ; COM_CONVERTFORMS_OUTLINE="Outline" ; COM_CONVERTFORMS_GRADIENT="Gradient" ; COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." ; COM_CONVERTFORMS_EMAILS="Email Notifications" ; COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" ; COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" ; COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" ; COM_CONVERTFORMS_EMAILS_FROM="From Name" ; COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" ; COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." ; COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" ; COM_CONVERTFORMS_EMAILS_BODY="Message" ; COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." ; COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." ; COM_CONVERTFORMS_API_ENABLE="Enable JSON API" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." ; COM_CONVERTFORMS_API_KEY="Secret Key" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." ; COM_CONVERTFORMS_IMAGE_ALT="Image Alt" ; COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" ; COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." ; COM_CONVERTFORMS_ISSUES="Issues" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_MODIFIED="Date Modified" ; COM_CONVERTFORMS_IP="Submitter's IP Address" ; COM_CONVERTFORMS_USER_ID="Submitter's ID" ; COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" ; COM_CONVERTFORMS_VISITOR_ID="Visitor ID" ; COM_CONVERTFORMS_FORM_NAME="Form Name" ; COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" ; COM_CONVERTFORMS_ID="ID" ; COM_CONVERTFORMS_CHOOSE_COLUMNS="Columns" ; COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." ; COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" ; COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" ; COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" ; COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" ; COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" ; COM_CONVERTFORMS_FIELDS_DELETE="Delete field" ; COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" ; COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" ; COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" ; COM_CONVERTFORMS_FIELD_TEXT="Textbox" ; COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" ; COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" ; COM_CONVERTFORMS_FIELD_NUMBER="Number" ; COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." ; COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" ; COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" ; COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" ; COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" ; COM_CONVERTFORMS_FIELD_URL="Website / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" ; COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" ; COM_CONVERTFORMS_FIELD_COUNTRY="Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" ; COM_CONVERTFORMS_FIELD_CURRENCY="Currency" ; COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" ; COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" ; COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" ; COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" ; COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" ; COM_CONVERTFORMS_FIELD_EMAIL="Email Address" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" ; COM_CONVERTFORMS_FIELD_REQUIRED="Is required" ; COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" ; COM_CONVERTFORMS_FIELD_SIZE="Field Size" ; COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" ; COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." ; COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Date Format" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." ; COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." ; COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" ; COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" ; COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." ; COM_CONVERTFORMS_CSS_CLASSES="CSS Class" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." ; COM_CONVERTFORMS_FIELD_CONFIRM="Confirm" ; COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" ; COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" ; COM_CONVERTFORMS_HIDE_TEXT="Hide Text" ; COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" ; COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" ; COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" ; COM_CONVERTFORMS_CHOICE_1_COLUMN="One Column" ; COM_CONVERTFORMS_CHOICE_2_COLUMN="Two Columns" ; COM_CONVERTFORMS_CHOICE_3_COLUMN="Three Columns" ; COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." ; COM_CONVERTFORMS_INPUT_MASK="Input Mask" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" ; COM_CONVERTFORMS_NOTES="Notes" ; COM_CONVERTFORMS_DATE_RANGE="Date Range" ; COM_CONVERTFORMS_START_DATE="Start Date" ; COM_CONVERTFORMS_END_DATE="End Date" ; COM_CONVERTFORMS_PERIOD="Period" ; COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" ; COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." ; COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" ; COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Allowed File Types" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." ; COM_CONVERTFORMS_FIELD_FILTER="Filter" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" ; COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" ; COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" ; COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." ; COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" ; COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." ; COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." ; COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." ; COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" ; COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" ; COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." ; COM_CONVERTFORMS_READONLY="Read-only" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" ; COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." ; COM_CONVERTFORMS_FIELD_PASSWORD="Password" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." ; COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" ; COM_CONVERTFORMS_SECURITY="Security" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" ; COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" ; COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." ; COM_CONVERTFORMS_SELECT_FORM="Select Form" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." ; COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" ; COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" ; COM_CONVERTFORMS_ORDER_RANDOM="Random Order" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." ; COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" ; COM_CONVERTFORMS_FILTER_USER_ALL="All Users" ; COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" ; COM_CONVERTFORMS_SET_USERS="User IDs" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." ; COM_CONVERTFORMS_FIELD_DIVIDER="Divider" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." ; COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" ; COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" ; COM_CONVERTFORMS_ADD_FIELD="Add Field" ; COM_CONVERTFORMS_ALL_FIELDS="All Fields" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]ng� ����Ecomponents/com_convertforms/language/fi-FI/fi-FI.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Ulkoasu" COM_CONVERTFORMS_BEHAVIOR="Toiminta" COM_CONVERTFORMS_LIST="Luettelo" COM_CONVERTFORMS_NO_RESULTS_FOUND="Ei %s löytynyt" COM_CONVERTFORMS_CREATE_NEW="Luotko uuden?" COM_CONVERTFORMS_EMAIL_ASCENDING="Sähköposti nouseva" COM_CONVERTFORMS_EMAIL_DESCENDING="Sähköposti laskeva" COM_CONVERTFORMS_ACTIONS="Toiminnot" COM_CONVERTFORMS_VIEW_LEADS="Näytä lähetykset" NRI_PLG_CONVERTFORMS="Convert Forms liitännäiset" COM_CONVERTFORMS_CONFIGURATION="Convert Forms asetukset" COM_CONVERTFORMS_LOADCSS="Lataa tyylit" COM_CONVERTFORMS_LOADCSS_DESC="Valitse lataa, kun haluat ladata laajennuksen tyylit. Voit poistaa tämän käytöstä, jos sijoitat kaikki omat tyylit johonkin muuhun tyyliin, kuten Mukautettu koodi -kenttään tai mallipohjien tyyleihin." COM_CONVERTFORMS_DEBUG="Virheenkorjaus" COM_CONVERTFORMS_DEBUG_DESC="Ota tämä vaihtoehto käyttöön selvittääksesi virheiden ja odottamattomien virheiden virheenkorjauksessa. Virheilmoitukset laitetaan selaimen konsoliin (paina F12) ja Logs-kansioon." COM_CONVERTFORMS_FORMS="Lomakkeet" COM_CONVERTFORMS_FORM="Lomake" COM_CONVERTFORMS_NEW_FORM="Uusi lomake" COM_CONVERTFORMS_EDIT_FORM="Muokkaa lomaketta" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s lomaketta kopioitu" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s lomaketta julkaistu" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s lomaketta julkaisematta" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s lomaketta roskakorissa" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s lomaketta poistettu" COM_CONVERTFORMS_FORM_ASCENDING="Lomake nouseva" COM_CONVERTFORMS_FORM_DESCENDING="Lomake laskeva" COM_CONVERTFORMS_FORM_SELECT="- Valitse lomake -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Julkaise luomalla moduuli" COM_CONVERTFORMS_FORM_LEADS="Tällä lomakkeella on tähän mennessä tehty %s lähetystä" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Julkaise käyttäen koodia: %s" COM_CONVERTFORMS_CAMPAIGN="Kampanja" COM_CONVERTFORMS_CAMPAIGNS="Kampanjat" COM_CONVERTFORMS_NEW_CAMPAIGN="Uusi kampanja" COM_CONVERTFORMS_EDIT_CAMPAIGN="Muokkaa kampanjaa" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Kirjoita kampanjan nimi. Tätä nimeä ei voi nähdä kukaan muu kuin sinä." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s kampanjaa kopioitu" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s kampanjaa julkaisematta" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s kampanjaa julkaistu" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s kampanjaa roskakorissa" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s kampanjaa poistettu" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s lähetystä julkaisematta" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s lähetystä julkaistu" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s lähetystä roskakorissa" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s lähetystä poistettu" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampanja nouseva" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampanja laskeva" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Valitse kampanja -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Tallenna kampanja määrittääksesi yhteyden." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampanja muutettu" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synkronoi lähetykset" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Valitse, synkronoidaanko lähetyksesi kolmannen osapuolen ohjelmistoihin vai kerätäänkö vain tietokantaan. <Br>Huomaa: Jos sinun on integroitava kolmansien osapuolien ohjelmistoihin, kuten MailChimp, Aweber, GetResponse, Active Campaign jne., Asenna vastaava lisäosa Lisäosat-osiossa." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s kampanjaa poistettu" COM_CONVERTFORMS_CHOOSE_SERVICE="Valitse palvelu" COM_CONVERTFORMS_PENDING_LEADS="Odottaa lähetyksiä" COM_CONVERTFORMS_SUBMISSIONS="Lähetykset" COM_CONVERTFORMS_SUBMISSION="Lähetys" ; COM_CONVERTFORMS_LATEST_SUBMISSIONS="Latest Submissions" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Vahvistettu" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Vahvistamaton" COM_CONVERTFORMS_EDIT_CONVERSION="Muokkaa lähetystä" COM_CONVERTFORMS_SUBMISSION_INVALID="Lähetystä ei löydy." COM_CONVERTFORMS_NOT_AUTHORIZED="Teillä ei ole oikeuksia käyttää tätä sivustoa." COM_CONVERTFORMS_LEADS_ASC="Lähetykset nouseva" COM_CONVERTFORMS_LEADS_DESC="Lähetykset laskeva" COM_CONVERTFORMS_LEADS_EXPORT="Vie lähetykset" COM_CONVERTFORMS_ADDONS="Lisäosat" COM_CONVERTFORMS_INSTALL_ADDONS="Näytä asennetut lisäosat" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Jotta pystyt asentamaan Convert Formsin lisäosia, sinun on kirjoitettava latausavaimesi Novarain Framework -lliitännäisen asetuksiin." COM_CONVERTFORMS_ADDONS_DESC="Lisäosat laajentavat Convert Formsin toiminnallisuutta. Näiden lisäosien avulla voit muodostaa yhteyden kolmansien osapuolten ohjelmistoihin, integroida uusia ominaisuuksia ja tehdä Convert Formsin entistä tehokkaammaksi." COM_CONVERTFORMS_LAST_YEAR="Viime vuonna" COM_CONVERTFORMS_THIS_YEAR="Tänä vuonna" COM_CONVERTFORMS_LAST_MONTH="Viime kuussa" COM_CONVERTFORMS_THIS_MONTH="Tässä kuussa" COM_CONVERTFORMS_LAST_WEEK="Viime viikolla" COM_CONVERTFORMS_THIS_WEEK="Tällä viikolla" COM_CONVERTFORMS_LAST_7_DAYS="Viimeisenä 7 päivänä" COM_CONVERTFORMS_YESTERDAY="Eilen" COM_CONVERTFORMS_TODAY="Tänään" COM_CONVERTFORMS_AVG_DAY="Keskimäärin päivässä (tässä kuussa)" COM_CONVERTFORMS_PROJECTION="Tämän kuukauden ennuste" COM_CONVERTFORMS_TOTAL="Yhteensä" COM_CONVERTFORMS_CHOOSE_FILE="Valitse .cnvf-tiedosto" COM_CONVERTFORMS_FORMS_NAME_DESC="Ainutlaatuinen ja kuvaava nimi auttaa sinua jatkossa, kun nimi näkyy hallintapaneelissa, analytiikassa jne." COM_CONVERTFORMS_BACKGROUND_IMAGE="Taustakuvan lähde" COM_CONVERTFORMS_IMAGE_DESC="Valitse taustakuvan lähde" COM_CONVERTFORMS_CUSTOM_URL="Mukautettu URL" COM_CONVERTFORMS_BACKGROUND_URL="Taustakuvan URL" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Kirjoita taustakuvan URL-osoite" COM_CONVERTFORMS_BACKGROUND_FILE="Taustakuva" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Valitse ladattava kuva." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Voit määritellä kuvan, joka näkyy lomakkeen sisällön taustalla. Valitse <b>Lataa</b> , jos haluat ladata uuden kuvan, <b> tai mukautettu URL</b>, jos haluat kirjoittaa mukautetun kuvan URL-osoitteen. Jotta tämä asetus toimisi, valitsemasi taustavärin on oltava läpinäkyvä." COM_CONVERTFORMS_FORM_BUILDER="Lomakkeen muodostaja" COM_CONVERTFORMS_FIELD_TYPE="Kentän tyyppi" COM_CONVERTFORMS_FIELD_TYPE_DESC="Kenttätyyppi-määrite määrittää näytettävän syöttöelementin tyypin." COM_CONVERTFORMS_FIELD_LABEL="Kentän nimi" COM_CONVERTFORMS_FIELD_LABEL_DESC="Kentän nimi näytetään kentän otsikkona." ; COM_CONVERTFORMS_FIELD_NAME="Field Name" COM_CONVERTFORMS_FIELD_NAME_DESC="Määrittelee syöttöelementin nimen, jota käytetään viittaamaan lomaketietoihin lomakkeen lähettämisessä. Käytä tätä asetusta myös lomakekentän käyttämiseen lisäsovelluksilla." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Teksti, jonka haluat näyttää kentässä, ennen kuin käyttäjä kirjoittaa siihen tietoja." COM_CONVERTFORMS_REQUIRED_NAME="Vaadittu kenttä" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Kentät" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Käytät <b>ilmaista</b> versiota, joka tukee vain 1 sähköpostikenttää. <b>Päivitä Pro-versioon</b> , jotta voit käyttää rajoittamatonta määrää." COM_CONVERTFORMS_GENERAL="Yleinen" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Kentän tekstin kohdistus" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Lomakkeen tekstin kohdistus" COM_CONVERTFORMS_INPUT_COLOR="Kentän tekstin väri" COM_CONVERTFORMS_INPUT_BGCOLOR="Kentän taustan väri" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Kentän reunuksen väri" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Lisää sisemmän varjon syöttökenttään" COM_CONVERTFORMS_INPUT_FONT_SIZE="Kentän fonttikoko" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Kentän fonttikoko" COM_CONVERTFORMS_VPADDING_SIZE="Pystysuora täyte" COM_CONVERTFORMS_HPADDING_SIZE="Vaakasuora täyte" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Laatikon enimmäisleveys" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Anna valitsemasi mukautettu enimmäisleveys tai tee tämä kenttä kattamaan koko näytön alue. Huomaa, että tämä on suurin leveys, mikä tarkoittaa, että lomake sopii aina pienemmille alueille." COM_CONVERTFORMS_FORM_WIDTH="Mukautettu enimmäisleveys" COM_CONVERTFORMS_FORM_WIDTH_DESC="Anna valitsemasi enimmäisleveys." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Poista oletus täyte" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Poista oletus täyte sisältöalueen ja lomakeen reunojen väliltä." COM_CONVERTFORMS_FORM_BORDER_STYLE="Reunan tyyli" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Lisää reunus lomakkeen ympärille" COM_CONVERTFORMS_FORM_BORDER_COLOR="Reunuksen väri" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Lomakkeen reunuksen väri" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Reunuksen leveys" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Lomakkeen reunuksen leveys" COM_CONVERTFORMS_BOX_RADIUS="Laatikon säde" COM_CONVERTFORMS_BORDER_RADIUS="Reunan säde" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Anna reunan sädekoko" COM_CONVERTFORMS_COLLECT_LEADS_USING="Kerää lähetykset käyttämällä kampanjaa" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Tämän lomakkeen lähetykset liitetään valittuun kampanjaan. Voit hallita kampanjoita Kampanjat-osiossa." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Onnistunut lähetys palaute" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Valitse toiminto, jonka haluat suorittaa onnistuneen lähettämisen jälkeen" COM_CONVERTFORMS_DISPLAY_MSG="Näytä viesti" COM_CONVERTFORMS_REDIRECT_USER="Ohjaa käyttäjä uudelleen" COM_CONVERTFORMS_SUCCESS_TEXT="Viesti lähetyksen jälkeen" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Kirjoita viesti jonka haluat näyttää käyttäjälle onnistuneen lähetyksen jälkeen." COM_CONVERTFORMS_SUCCESS_URL="Ohjaa URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Kirjoita URL-osoite, johon haluat ohjata käyttäjän uudelleen onnistuneen lähetyksen jälkeen." COM_CONVERTFORMS_PASS_DATA="Liitä lähetystiedot URL-osoitteeseen." ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Lähetä-napin tyyli" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Muokkaa Lähetä-nappi mukavilla tehosteilla." COM_CONVERTFORMS_BTN_SHADOW_DESC="Lisää ulkoinen varjon painikkeeseen" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Tekstin osoitinväri" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Tekstin osoitinväri" COM_CONVERTFORMS_CUSTOM_CSS="Muokattu CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Muotoile lomake omalla mukautetulla CSS: llä. <br><br>Lomakkeen muotoilun auttamiseksi tälle alueelle lisätty koodi suoritetaan myös taustassa." COM_CONVERTFORMS_CLASS_SUFFIX="Luokan jälkiliite" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Luokan jälkiliite" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Tekstialueen korkeus" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Tekstialueen korkeus määrittää tekstialueen näkyvän korkeuden riveinä." COM_CONVERTFORMS_CHOICES="Valinnat" COM_CONVERTFORMS_CHOICES_DESC="Lisää valinnat valintakenttään" COM_CONVERTFORMS_FIELD_VALUE="Oletusarvo" COM_CONVERTFORMS_FIELD_VALUE_DESC="Kirjoita kentän oletusarvo" COM_CONVERTFORMS_HIDE_LABELS="Piilota otsikko" COM_CONVERTFORMS_HIDE_LABELS_DESC="Valitse tämä vaihtoehto piilottaaksesi kentän otsikon" COM_CONVERTFORMS_IMAGE_SOURCE="Kuvan lähde" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Voit määrittää kuvan, joka näkyy lomakkeen sisällössä. Valitse <b>Lataa</b> , jos haluat ladata uuden kuvan, tai<b>Mukautettu URL</b> , jos haluat kirjoittaa kuvan URL-osoitteen." COM_CONVERTFORMS_IMAGE_URL="Kuvan URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Piilota kuva pienillä näytöillä" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Pienemmissä näytöissä, kuten mobiilit, yksinkertaisemmat tyylit näyttävät kauniimmilta. Voit pienentää tyylin kokoa piilottamalla kuvan tällä asetuksella." COM_CONVERTFORMS_HORIZONTAL_POSITION="Vaaka-asento" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Vaaka-asento" COM_CONVERTFORMS_VERTICAL_POSITION="Pystyasento" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Pystyasento" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Kuvan leveys" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Aseta kuvan leveys" COM_CONVERTFORMS_BUTTON_ALIGN="Napin kohdistus" COM_CONVERTFORMS_FORM_POSITION="Lomakkeen sijainti" COM_CONVERTFORMS_FORM_POSITION_DESC="Aseta lomakkeen sijainti suhteessa tekstisäiliöön" COM_CONVERTFORMS_FORM_SIZE="Lomakkeen koko" COM_CONVERTFORMS_COLUMNS_DESC="Määritä, kuinka monta saraketta käytetään. 6 saraketta ja leveys on 50%." COM_CONVERTFORMS_MESSAGE="Tekstiviesti" COM_CONVERTFORMS_MESSAGE_DESC="Kirjoita lomakkeen tekstiviesti" COM_CONVERTFORMS_IMAGE_POSITION="Kuvan sijainti" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Aseta kuvan sijainti suhteessa tekstiin" COM_CONVERTFORMS_FOOTER="Lomakkeen alatunniste" COM_CONVERTFORMS_BUTTON_TEXT="Napin teksti" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Kirjoita napin otsikkoteksti" COM_CONVERTFORMS_BTN_FONT_SIZE="Napin tekstin koko" COM_CONVERTFORMS_IMAGE_SIZE="Kuvan koko" COM_CONVERTFORMS_BODY_FONT="Kirjasinlaji" COM_CONVERTFORMS_BODY_FONT_DESC="Valitse lomakkeelle käytettävä kirjasinlaji. Muista, että epästandardien fonttien, kuten Google Fonts, lataaminen voi vaikuttaa verkkosivustosi nopeuteen. Valitse Oletus, jos haluat käyttää verkkosivustosi oletusfonttia." COM_CONVERTFORMS_EMAIL="Sähköposti" COM_CONVERTFORMS_DATE="Päivämäärä" COM_CONVERTFORMS_CREATED="Luotu" COM_CONVERTFORMS_SUBMISSION="Lähetys" COM_CONVERTFORMS_PREVIEW_SUCCESS="Esikatsele lähetysviesti" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Tämä versio näkyy vähintään 990px-näytöllä" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Tämä versio näkyy näytöissä, joiden koko on 768–990 kuvapistettä" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Tämä versio näytetään 768px ja sitä pienemmillä näytöillä" COM_CONVERTFORMS_DEVICE_DESKTOP="Työasema" COM_CONVERTFORMS_DEVICE_TABLET="Tabletti" COM_CONVERTFORMS_DEVICE_MOBILE="Mobiili" COM_CONVERTFORMS_RESET_FORM="Nollaa lomake" COM_CONVERTFORMS_RESET_FORM_DESC="Nollaa lomake onnistuneen lähetyksen jälkeen" COM_CONVERTFORMS_HIDE_FORM="Piilota lomake" COM_CONVERTFORMS_HIDE_FORM_DESC="Piilota lomake onnistuneen lähetyksen jälkeen" COM_CONVERTFORMS_TEMPLATES="Mallit" COM_CONVERTFORMS_TEMPLATES_SELECT="Valitse malli aloittaaksesi" COM_CONVERTFORMS_TEMPLATES_BLANK="Aloita tyhjästä" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Aloittaa uuden lomakkeen tyhjästä" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Linja" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sivupalkki" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Palkki" COM_CONVERTFORMS_LABELS_COLOR="Otsikon tekstin väri" COM_CONVERTFORMS_LABELS_FONT_SIZE="Otsikon fontin koko" COM_CONVERTFORMS_IMAGE_ABOVE="Tekstin yläpuolella" COM_CONVERTFORMS_IMAGE_BELOW="Tekstin alapuolella" COM_CONVERTFORMS_IMAGE_RIGHT="Tekstin oikealla puolella" COM_CONVERTFORMS_IMAGE_LEFT="Tekstin vasemmalla puolella" COM_CONVERTFORMS_FLAT="Tasainen" COM_CONVERTFORMS_OUTLINE="Ääriviivat" COM_CONVERTFORMS_GRADIENT="Kalteva" COM_CONVERTFORMS_EMAILS_DESC="Lähetä sähköposti-ilmoitus, kun käyttäjä lähettää lomakkeen." COM_CONVERTFORMS_EMAILS="Sähköposti-ilmoitus" COM_CONVERTFORMS_EMAILS_REPLY_TO="Vastaus sähköposti" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Vastaus nimi" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Sähköpostista" COM_CONVERTFORMS_EMAILS_FROM="Keneltä" COM_CONVERTFORMS_EMAILS_RECIPIENT="Lähetä sähköpostiosoitteeseen" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Kirjoita sähköpostiosoitteet vastaanottaaksesi lähetysilmoitukset. Useita ilmoituksia varten erota sähköpostiosoitteet pilkulla." COM_CONVERTFORMS_EMAILS_SUBJECT="Sähköpostin aihe" COM_CONVERTFORMS_EMAILS_BODY="Viesti" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Haluatko useita ilmoituksia? <br><a href='#' data-pro-only='Unlimited Notifications'>Päivitä PRO versioon</a> poistaaksesi rajoituksen." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Liitteet" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Liitettävän tiedoston sijainti suhteessa verkkosivustosi juureen. Määritä useita tiedostoja erottamalla toisistaan pilkulla." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Tarvitko uutta lisäosaa?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Jos jokin suosikkisovelluksesi lisäosa puuttuu ilmoita siitä meille. Lisäämme sen mielellämme Convert Formsin lisäosiin." COM_CONVERTFORMS_API_ENABLE="Ota JSON API käyttöön" COM_CONVERTFORMS_API_DESC="JSON API antaa sinun noutaa Convert Formsin sisältöä HTTP-pyyntöjen avulla." COM_CONVERTFORMS_API_KEY="Salausavain" COM_CONVERTFORMS_API_KEY_DESC="Tätä salausavainta käytetään todentamaan kriittiset tehtävät, kuten CRON ja JSON API. Jos jätät tämän tyhjäksi, kaikki käyttäjän todennusta vaativat tehtävät poistetaan käytöstä." COM_CONVERTFORMS_IMAGE_ALT="Kuvan Alt teksti" COM_CONVERTFORMS_IMAGE_ALT_DESC="Kuvan vaihtoehtoinen teksti" COM_CONVERTFORMS_CUSTOM_CODE="Muokattu koodi" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Sijoita mukautettu koodi lomakkeen loppuun. Hyväksytty on HTML, CSS ja Javascript. <br><br>Varmista, että Javascript on merkattu koodiin <script> tunnisteella. <br><br>Tälle alueelle lisättyä koodia ei suoriteta taustalla." COM_CONVERTFORMS_ISSUES="Ongelmat" COM_CONVERTFORMS_ISSUES_DETECTED="%s lähetys onhelmaa havaittu" COM_CONVERTFORMS_CREATED="Luotu" COM_CONVERTFORMS_MODIFIED="Muokattu" COM_CONVERTFORMS_IP="Lähettäjän IP osoite" COM_CONVERTFORMS_USER_ID="Lähettäjän ID" COM_CONVERTFORMS_USER_USERNAME="Lähettäjän käyttäjätunnus" COM_CONVERTFORMS_VISITOR_ID="Vierailijan ID" COM_CONVERTFORMS_FORM_NAME="Lomakkeen nimi" COM_CONVERTFORMS_CAMPAIGN_NAME="Kampanjan nimi" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Sarakkeet" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Jos haluat ottaa käyttöön tietyt lomakekentät, valitse ensin lomake suodatinpalkissa." COM_CONVERTFORMS_UNTITLED_BOX="Nimetön lomake" COM_CONVERTFORMS_SELECT_LAYOUT="Valitse asettelu" COM_CONVERTFORMS_SHOW_LAYOUTS="Näytä asettelut" COM_CONVERTFORMS_HIDE_LAYOUTS="Piilota asettelut" COM_CONVERTFORMS_FIELDS_COPY="Kopioi kenttä" COM_CONVERTFORMS_FIELDS_DELETE="Poista kenttä" COM_CONVERTFORMS_FIELDGROUP_COMMON="Yleiset kentät" COM_CONVERTFORMS_FIELDGROUP_FANCY="Erikoiskentät" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Lisäkentät" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Lisää mukautettu vapaa teksti tai HTML-koodi. Ei rajoja!" COM_CONVERTFORMS_FIELD_TEXT="Tekstilaatikko" COM_CONVERTFORMS_FIELD_TEXT_DESC="Yhden rivin tekstilaatikko kenttä" COM_CONVERTFORMS_FIELD_TEXTAREA="Tekstialue" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Kuten tekstikentän kenttä, mutta siihen mahtuu monirivinen käyttäjän syöte" COM_CONVERTFORMS_FIELD_NUMBER="Numero" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Tekstilaatikko joka hyväksyy vain numerot" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Askel" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Määrä, jonka arvo muuttuu, kun nuolta painetaan." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Alin arvo" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Pienin arvo, jonka kenttä sallii" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Ylin arvo" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Suurin arvo, jonka kenttä sallii" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Pysäyttää roskapostilomakkeiden lähettämisen Google reCAPTCHA -sovelluksella" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Aseta sivusto avain ja salainen avain asetussivulla." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Määritä reCAPTCHA nyt" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Widgetin väriteema" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Widgetin koko" COM_CONVERTFORMS_FIELD_DROPDOWN="Pudotusvalinta" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Lista, joka mahdollistaa yhden valinnan avattavasta valikosta" COM_CONVERTFORMS_FIELD_RADIO="Radionappi" COM_CONVERTFORMS_FIELD_RADIO_DESC="Lista, joka mahdollistaa yhden valinnan radionapeista" COM_CONVERTFORMS_FIELD_URL="Nettisivu / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Hyväksyy oikein muotoillun URL:n, joka alkaa joko http: // tai https: //" COM_CONVERTFORMS_FIELD_URL_INVALID="Virheellinen URL" COM_CONVERTFORMS_FIELD_COUNTRY="Valtio" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Luettelo kaikista tunnetuista valtioista" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Tunnista vierailijan valtio" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Jos tämä on käytössä, lomake yrittää tunnistaa ja esitäyttää vierailijan valtion. Edellyttää TGeoIP-laajennuksen asentamista." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Sulje pois valtiot" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Valuutta" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Lista kaikista tunnetuista valuutoista" COM_CONVERTFORMS_FIELD_SUBMIT="Lähetä nappi" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Painike, joka lähettää lomakkeen" COM_CONVERTFORMS_FIELD_HIDDEN="Piilotettu kenttä" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Kenttä, jota käyttäjä ei näe käyttöliittymässä" COM_CONVERTFORMS_FIELD_EMAIL="Sähköpostiosoite" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Tekstiruutu, joka hyväksyy vain kelvollisen sähköpostiosoitteen" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Käyttöehdot" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Pyydä käyttäjää suostumaan käyttöehtoihisi ennen kuin hänellä on oikeus lähettää lomake" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Käyttöehtojen teksti" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Tämä teksti tulee valintaruudun jälkeen" COM_CONVERTFORMS_FIELD_CHECKBOX="Valintaruudut" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Lista, joka sallii useita valintoja valintaruuduista" COM_CONVERTFORMS_FIELD_REQUIRED="Vaaditaan" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Virheellinen sähköpostiosoite" COM_CONVERTFORMS_FIELD_SIZE="Kentän koko" COM_CONVERTFORMS_FIELD_SIZE_DESC="Valitse lomakekentän oletuskoko" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Antaa käyttäjän kirjoittaa puhelinnumeron." COM_CONVERTFORMS_FIELD_DATETIME="Päivämäärä / Aika" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Päivämäärä- / aikavalitsin, joka mahdollistaa yhden päivämäärän, useita päivämääriä tai jopa ajanjakson valitsemisen" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Päivämäärän muoto" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Tulostetun päivämäärän muoto. Esimerkkejä:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Näytä aikavalitsin" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Mahdollistaa aikavalitsimen. Jos käytössä, varmista, että olet syöttänyt aikamerkit (H: i) Päivämäärämuoto-kenttään." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Pienin päivämäärä" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Pienin / aikaisin valintapäivämäärä. Tukee suhteellisia päivämäärämuotoja, kuten: tänään, huomenna, +5 päivää, +2 viikkoa" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Suurin päivämäärä" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Suurin / myöhäisin valintapäivämäärä. Tukee suhteellisia päivämäärämuotoja, kuten: tänään, huomenna, +5 päivää, +2 viikkoa" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Päivämäärän valintatila" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Salli käyttäjän valita yhden päivämäärän, useita päivämääriä tai ajanjakson." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Aika 24 tuntia" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Näyttää ajanvalitsimen 24 tunnin tilassa ilman AM / PM-valintaa." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minuutin askel" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Säätää minuutin syötön askelta aikavalitsimessa" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Näytä avoimena" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Näyttää kalenterin avoimena ponnahdusikkunan sijaan." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Teema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Valitse kalenterin teema" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Virheellinen päivämäärämuoto - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Poista käytöstä alkuperäinen päivämäärän valitsija" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Jos valittu, matkapuhelimen käyttäjät näkevät Convert Formsin päivämäärävalitsimen laitteen alkuperäisen päivämäärävalitsimen sijaan." COM_CONVERTFORMS_CSS_CLASSES="CSS luokka" COM_CONVERTFORMS_CSS_CLASSES_DESC="Lisää CSS-luokat koko kenttään. Tätä käytetään pääasiassa asettelutarkoituksiin." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Syötteen CSS luokka" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Lisää CSS-luokat syötteen kenttään. Tätä käytetään pääasiassa asettelutarkoituksiin." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Poista selaimen automaattinen täydennys käytöstä" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Oletuksena selaimet muistavat tiedot, jotka käyttäjä täyttää lomakkeiden kautta. Ota tämä vaihtoehto käyttöön, jos haluat poistaa lomakkeiden automaattisen täydennyksen käytöstä." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS tarkastus" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Vahvistaa annetun sähköpostiosoitteen DNS-tarkistuksella." COM_CONVERTFORMS_FIELD_CONFIRM="Vahvista" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Kenttä, jolla varmistetaan kahden kentän yhteensopivuus" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Vahvista kenttä-avain" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Kirjoita kentän avain, jota käytetään varmistamaan sen arvon vastaavuus" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Kenttää ei ole määritetty oikein" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Kenttäarvot eivät täsmää" COM_CONVERTFORMS_HIDE_TEXT="Piilota teksti" COM_CONVERTFORMS_HIDE_TEXT_DESC="Piilota teksti onnistuneen lähettämisen jälkeen" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Lomakkeesta puuttuu sähköpostikenttä" COM_CONVERTFORMS_INVALID_LEAD="Lähetystä ei voi vahvistaa" COM_CONVERTFORMS_EXCEL_SECURITY="Excel-suojaus" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Jos tämä on käytössä, CSV-vientitiedoston =, +, - tai @ alkavat arvot lisätään taulukossa, jotta vältetään CSV-injektiot avaamalla vietyä tiedostoa Excelillä. <br><br>Poista tämä vaihtoehto käytöstä vain, jos olet 100% varma tietojen luotettavuudesta tai jos sinulla on vaikeuksia tuoda CSV-tiedostoa kolmannen osapuolen sovellukseen." COM_CONVERTFORMS_CHOICE_LAYOUT="Valitse asettelu" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Valitse asettelu kentän näyttämiseen" COM_CONVERTFORMS_CHOICE_1_COLUMN="Yksi sarake" COM_CONVERTFORMS_CHOICE_2_COLUMN="Kaksi saraketta" COM_CONVERTFORMS_CHOICE_3_COLUMN="Kolme saraketta" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Rinnakkain" COM_CONVERTFORMS_REQUIRED_INDICATION="Pakollinen kenttämerkintä" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Ilmoita vaadittavat kentät tähdellä kunkin kentän otsikon vieressä. Se edellyttää, että kenttämerkintää ei saa piilottaa." COM_CONVERTFORMS_INPUT_MASK="Syöttömaski" COM_CONVERTFORMS_INPUT_MASK_DESC="Auttaa käyttäjää syötteessä varmistamalla ennalta määritetty muoto. <br><br><b>Syntaksi:</b><br>9: Numeerinen(0-9)<br>a: Aakkosellinen (a-z or A-Z)<br>A: Aakkosellinen iso (A-Z)<br>*: Aakkosnumeerinen (0-9, a-z, or A-Z)<br>&: Aakkosnumeerinen iso (0-9 or A-Z)<br><br><b>Esimerkiksi</b>:<br>Puhelin: +1 (999)-9999<br>Päivämäärä: 99/99/9999<br>Postinumero: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Käyttäjän lähettämät tiedot" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Lähetettyjä tietoja ei löydy" COM_CONVERTFORMS_LEAD_INFO="Lähetystiedot" COM_CONVERTFORMS_NOTES="Huomautukset" COM_CONVERTFORMS_DATE_RANGE="Ajanjakso" COM_CONVERTFORMS_START_DATE="Aloituspäivämäärä" COM_CONVERTFORMS_END_DATE="Lopetuspäivämäärä" COM_CONVERTFORMS_PERIOD="Aika" COM_CONVERTFORMS_PERIOD_SELECT="- Valitse aika -" COM_CONVERTFORMS_HONEYPOT="Ota roskapostin torjunta käyttöön" COM_CONVERTFORMS_HONEYPOT_DESC="Mahdollistaa roskaposti-kentän lisääminen lomakkeelle, joka näkyy vain robotille. Näin kun roskaposti-kenttä täytetään, lomake voi automaattisesti tietää, että käyttäjä oli spambotti. <br><br>Monilla sivustoilla tämä kenttä yksin riittää estämään roskapostia. Jos kuitenkin saat edelleen roskapostia tai jos haluat ryhtyä erityisiin varotoimenpiteisiin sitä vastaan, reCAPTCHA on upea lisävaihtoehto." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Tiedoston lataus" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Anntaa käyttäjälle mahdollisuuden ladata tiedostoja" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Tiedostojen määrä" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Kuinka monta tiedostoa voi ladata? Syötä 0 ilman rajoitusta." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Tiedoston kokoraja" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Määritä jokaiselle ladatulle tiedostolle suurin sallittu koko megatavuina. Syötä 0 ilman rajoitusta. Palvelimesi asetuksen enimmäiskoko on:. <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Sallitut tiedostotyypit" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Suodatin" COM_CONVERTFORMS_FIELD_FILTER_DESC="Suodata käyttäjän syötteet seuraavien suodattimien perusteella.<br><b>Text</b>: Muuntaa syötteen selkeäksi tekstimerkkijonoksi; poistaa kaikki tunnisteet / määritteet.<br><b>Safe HTML</b>: Hyväksy vain turvalliset HTML-elementit, kuten.<br><b>Alfa-numero</b>: Salli vain a-z ja 0-9<br><b>Word</b>: Salli vain merkit a-z, ja alaviivat<br><b>Integer</b>: Käytä vain ensimmäisen numeron arvoa<br><b>Float</b>: Salli vain merkit a-z, ja alaviivat" COM_CONVERTFORMS_UPLOAD_ERROR="Virheellinen lomake- tai kenttäavain" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Virheellinen latauskenttä" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Virheellinen tiedosto tai tiedosto jota ei tueta" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Voit lähettää %d tiedostoa" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Vedä ja pudota tiedostot tähän tai" COM_CONVERTFORMS_UPLOAD_BROWSE="Selaa" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Latauskansiota ei ole %s tai siihen ei voi kirjoittaa" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Tiedosto on liian suuri ({{filesize}}MB). Suurin tiedostokoko: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Et voi lähettää tämän tyyppisiä tiedostoja." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Selaimesi ei tue drag'n'drop-tiedostojen lataamista." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Palvelin vastasi {{statusCode}} koodilla." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Peruta lataus" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Haluatko varmasti peruuttaa tämän latauksen?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Poista tiedosto" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Et voi ladata enää tiedostoja." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Automaattinen tiedostojen poisto" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Jos saat paljon latauksia, ladattujen tiedostojen käyttämä palvelintila voi nopeasti täyttyä, mikä vaatii jonkin verran säännöllistä tiedostojen käsittelyä tilan vapauttamiseksi.<br><br>Tämä vaihtoehto auttaa sinua poistamaan automaattisesti Lataa-kansioon tallennetut tiedostot asetetun ajanjakson jälkeen.<br><br>Esimerkiksi kirjoita 3, jos haluat poistaa tiedostoja, jotka ovat yli 3 päivää vanhoja, tai 0, jos haluat säilyttää tiedostot ikuisesti.<br><br>Huomaa: Convert Formsin ladattujen tiedostojen automaattinen poisto -laajennus on otettava käyttöön ja palvelimellesi määritettävä vastaava Cron Job URL-osoite. " COM_CONVERTFORMS_READONLY="Vain luku" COM_CONVERTFORMS_READONLY_DESC="Estä pääsy tälle kentälle" COM_CONVERTFORMS_PHPSCRIPT="PHP scripti" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Lomakkeen näyttö" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Tälle alueelle lisätty PHP-skripti suoritetaan juuri ennen lomakkeen näyttämistä.<br><br>Tällä alueella pääpaino on <b>$formLayout</b> (String)-muuttujassa, joka sisältää lomakkeen HTML-koodin.<br><br>Lomakeasetusten käyttämiseksi käytä muotoa <b>$form</b> (Array) muuttuja.<br><br>Tunnisteita <?php and ?> ei tarvitse sisällyttää." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Lomakeprosessi" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Tälle alueelle lisätty PHP-koodi suoritetaan juuri ennen lomaketietojen tallentamista tietokantaan riippumatta siitä, onko lähetys kelvollinen vai ei.<br><br>Tämä alue on varsin hyödyllinen, kun joudut käsittelemään laskelmia, suorittamaan tarkennettau validointia tai muuttamaan kentän arvoa. Kaikki tässä tehdyt muutokset <b>$post</b> (Array) -muuttujaan heijastuvat lähetysmerkinnässä.<br><br>Lomakeasetusten käyttämiseksi käytä <b>$form</b> (Array) muuttujaa. <br><br>Tunnisteita <?php and ?> ei tarvitse sisällyttää." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Lomakkeen lähettämisen jälkeen" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Tälle alueelle lisätty PHP-koodi suoritetaan, kun lomake on lähetetty onnistuneesti ja tiedot on tallennettu tietokantaan. <br><br>Tämä on varsin hyödyllistä, kun yrität suorittaa joitain ylimääräisiä tehtäviä, kuten lähettää tietoja hiljaisesti toiseen URL-osoitteeseen. Voit käyttää lopullista lähetystä <b>$submission</b> (Object) muuttujalla.<br><br>Lomakeasetusten käyttämiseksi käytä <b>$form</b> (Array) muuttujaa. <br><br>Tunnisteita <?php and ?> ei tarvitse sisällyttää." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Salasana" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Antaa tavan, jolla käyttäjä voi kirjoittaa salasanan turvallisesti" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Vahvista kenttätyyppi" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Valitse vahvistuskentän syöttötyyppi Teksti ja Salasana välillä." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Lomakkeen valmistelu" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Tälle alueelle lisätty PHP-skripti suoritetaan juuri ennen lomakkeen tietojen valmistelua ja lähettämistä lomakkeen näyttötoimintoon. <br><br>Tällä alueella pääpaino on <b>$form</b> (Array) -muuttujassa, joka sisältää lomakkeen asetukset. <br><br>Tunnisteita <?php and ?> ei tarvitse sisällyttää." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s on jo käyttäjä." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%snäyttää keksityltä tai on virheellinen, kirjoita oikea sähköpostiosoite." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Virhe: Google reCAPTCHA-komentosarjaa ei ladata. Varmista, että selaimesi ei estä sitä, tai ota yhteyttä sivuston ylläpitäjään." COM_CONVERTFORMS_ACCESS_FORMS="Lomakkeen oikeudet" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Antaa oikeuden ryhmän käyttäjille hallita lomakkeita." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Lähetysten oikeudet" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Antaa oikeuden ryhmän käyttäjille hallita lähetyksiä." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Kampanjien oikeudet" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Antaa oikeuden ryhmän käyttäjille hallita kampanjia. Ota tämä käyttöön, jos kohtaat ongelmia roskapostin lähettämisen kanssa." COM_CONVERTFORMS_CSRF_CHECK="Käytä Joomla! CSRF-tunnusta" COM_CONVERTFORMS_CSRF_CHECK_DESC="Lisää ylimääräinen suoja lomakkeisiisi tarkistamalla kaikki AJAX-pyynnöt CSRF-tunnuksella.<br><br>Jos otat tämän asetuksen käyttöön ja käytät välimuistia, joka tallentaa välimuistiin koko sivun, kuten Joomla! Sivun välimuistin laajennus tai palvelinpuolen välimuistipalvelin, kuten CloudFlare tai Sucuri, saattaa aiheuttaa lomakkeen lähettämiseen ongelmia." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Lomake on lähetetty onnistuneesti" COM_CONVERTFORMS_SECRET_SET="Määritä salainen avain voidaksesi käyttää optin-päätepistettä." COM_CONVERTFORMS_SECRET_NO="URL-osoitteessa ei ole salaus-avainta" COM_CONVERTFORMS_SECRET_WRONG="Väärä salaus-avain on annettu URL-osoitteessa" COM_CONVERTFORMS_SECURITY="Turvallisuus" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Pysäytä roskapostilomakkeiden lähettäminen käyttämällä Invisible Google reCAPTCHA -sovellusta" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Merkki" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="ReCAPTCHA -merkin sijainti. 'inline' antaa sinun sijoittaa sen CSS: n kanssa." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Ala oikea" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Ala vasen" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Linja" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Lähetykset" COM_CONVERTFORMS_SUBMISSIONS_LIST="Lähetykset lista" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Näytä vahvistetut" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Ota tämä käyttöön, jos haluat näyttää vain vahvistetut lähetykset." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Piilota tyhjät arvot" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Ota tämä käyttöön, jos haluat piilottaa tyhjät kentät." COM_CONVERTFORMS_SELECT_FORM="Valitse lomake" COM_CONVERTFORMS_SELECT_FORM_DESC="Valitse lomake, jonka lähetykset näytetään" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" COM_CONVERTFORMS_LIST_LIMIT="Sivuraja" COM_CONVERTFORMS_LIST_LIMIT_DESC="Näytettävien lähetysten lukumäärä sivua kohden. Syötä 0 ilman rajoitusta." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Näytä vain oma" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Voit näyttää luettelon, jossa on eri käyttäjien lähetyksiä, niin vierailija saa käyttää vain omien lähetystensä tietosivua, jos tämä vaihtoehto on käytössä." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Näytä sivutus" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Jos lähetysten lukumäärä ylittää sivurajan, sivulinkit näkyvät lähetysluettelon alla." COM_CONVERTFORMS_ORDER="Lajittele lähetykset" COM_CONVERTFORMS_ORDER_DESC="Järjestys, jolla lähetykset näytetään." COM_CONVERTFORMS_ORDER_RECENT="Uusin ensin" COM_CONVERTFORMS_ORDER_OLDEST="Vanhin ensin" COM_CONVERTFORMS_ORDER_RANDOM="Satunnainen järjestys" COM_CONVERTFORMS_FILTER_USER="Näytä lähetykset alkaen" COM_CONVERTFORMS_FILTER_USER_DESC="Valitse lähetysten suodatin käyttäjän mukaan.<br><br><b>Sisäänkirjautunut</b><br>Näyttää lähetykset, jotka vain kirjautunut käyttäjä on lähettänyt. Jokainen käyttäjä näkee lähettämänsä tiedot.<br><br><b>Kaikki käyttäjät</b><br>Näyttää kaikki lähetykset.<br><br><b>Erityiset käyttäjät</b><br> Määritä lähettäjät suodattaaksesi lähetykset." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Sisäänkirjautunut" COM_CONVERTFORMS_FILTER_USER_ALL="Kaikki käyttäjät" COM_CONVERTFORMS_FILTER_USER_SELECT="Erityiset käyttäjät" COM_CONVERTFORMS_SET_USERS="Käyttäjän ID" COM_CONVERTFORMS_SET_USERS_DESC="Syötä Joomla-käyttäjätunnuksien ID:t suodattaaksesi lähetykset. Erota useita tunnuksia pilkulla." COM_CONVERTFORMS_LOAD_CSS="Lataa tyylisivu" COM_CONVERTFORMS_LOAD_CSS_DESC="Poista tämä asetus käytöstä, jos et halua ladata Convert Formsin CSS-tiedostoa." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Ulkoasu" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Valitse ulkoasu, jota käytetään lähettämisen näyttämiseen käyttöliittymässä. Voit myös luoda omia ulkoasuja malliisi." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Ulkoasun tyyppi" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Ulkoasun tyyppi" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Malli" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Valitse malli" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Valitse malli lähetyksillesi. Tätä mallia käytetään sekä luettelossa että yksityiskohtaisessa näkymässä<br><br>Voit luoda omia malleja, jotka korvaavat mallin." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container ulkoasu" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Pää HTML-asettelu lähetykset luettelolle. Älä poista {submissions} -tunnistetta tästä, koska se korvataan datan tuonnilla." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Rivin asettelu" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="Kunkin lähetyksen HTML-asettelu sellaisena kuin se näkyy Container ulkoasussa." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Yksityiskohdat asettelu" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Lähetyksen yksityiskohtien HTML-asettelu." ; COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Näytä arvot" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Varmista, että määrität yksilöllisen arvon jokaiselle valinnalle. Muuten et tiedä minkä vaihtoehdon käyttäjä valitsi" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Käytä laskenta-arvoja" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Laskenta-arvoja käytetään yleensä laskelmiin. Se edustaa valinnan numeerista arvoa." COM_CONVERTFORMS_FIELD_DIVIDER="Jakaja" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Jakaa lomakkeen osiot" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Reunan tyyli" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Valitse jakajan reunatyyli." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Yhtenäinen" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Katkoviiva" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Pisteviiva" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Reunuksen leveys" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Aseta jakajan reunan leveys." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Reunuksen väri" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Aseta jakajan reunan väri." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Yläosan marginaali" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Aseta marginaali jakajan yläosaan" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Alaosan marginaali" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Aseta marginaali jakajan alaosaan" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Viikon ensimmäinen päivä" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Vaihda viikon ensimmäinen päivä kalenterin päivämäärävalitsimessa." COM_CONVERTFORMS_ENTER_LABEL="Kirjoita otsikko" COM_CONVERTFORMS_ADD_FIELD="Lisää kenttä" COM_CONVERTFORMS_ALL_FIELDS="Kaikki kentät" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]���\��Ecomponents/com_convertforms/language/de-DE/de-DE.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Entwurf" COM_CONVERTFORMS_BEHAVIOR="Verhalten" COM_CONVERTFORMS_LIST="Liste" COM_CONVERTFORMS_NO_RESULTS_FOUND="Kein %s gefunden" COM_CONVERTFORMS_CREATE_NEW="Neues erstellen?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email aufsteigend" COM_CONVERTFORMS_EMAIL_DESCENDING="Email absteigend" COM_CONVERTFORMS_ACTIONS="Aktionen" COM_CONVERTFORMS_VIEW_LEADS="Übertragungen anzeigen" NRI_PLG_CONVERTFORMS="Convert Forms Plugin" COM_CONVERTFORMS_CONFIGURATION="Convert Forms Einstellungen" COM_CONVERTFORMS_LOADCSS="Stylesheet laden" COM_CONVERTFORMS_LOADCSS_DESC="Auswählen um das Stylsheet der Erweiterung zu laden. Sie können diese Option deaktivieren, falls Sie Ihre Stilvorlagen in einem andere Stylesheet wie dem Custom Code Feld oder dem Template Stylesheet eintragen." COM_CONVERTFORMS_DEBUG="Fehlersuche" COM_CONVERTFORMS_DEBUG_DESC="Aktivieren Sie diese Option, um Fehler und unerwartetes Verhalten zu beheben. Fehlermeldungen werden in die Konsole Ihres Browsers ( F12 drücken) und in den Ordner \"Protokolle\" verschoben." COM_CONVERTFORMS_FORMS="Formulare" COM_CONVERTFORMS_FORM="Formular" COM_CONVERTFORMS_NEW_FORM="Neues Formular" COM_CONVERTFORMS_EDIT_FORM="Formular bearbeiten" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s Formulare kopiert" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s Formulare veröffentlicht" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="Veröffentlichung für %s Formulare beendet" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s Formulare in Papierkorb verschoben" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s gelöscht" COM_CONVERTFORMS_FORM_ASCENDING="Formulare aufsteigend" COM_CONVERTFORMS_FORM_DESCENDING="Formulare absteigend" COM_CONVERTFORMS_FORM_SELECT="- Formular auswählen -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Modulerstellung veröffentlichen" COM_CONVERTFORMS_FORM_LEADS="Für diese Formular gibt es bis jetzt %s Übertragungen" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Mit Kurzbefehl %s veröffentlichen" COM_CONVERTFORMS_CAMPAIGN="Kampagne" COM_CONVERTFORMS_CAMPAIGNS="Kampagnen" COM_CONVERTFORMS_NEW_CAMPAIGN="Neue Kampagne" COM_CONVERTFORMS_EDIT_CAMPAIGN="Kampagne bearbeiten" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Kampagnenname eingeben. Dieser Name kann nur von Ihnen gesehen werden." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%sKampagnen kopiert " COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="Veröffentlichung für %s Kampagnen beendet " COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Kampagnen veröffentlicht " COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Kampagnen in Papierkorb verschoben " COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Kampagnen gelöscht" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s Einsendungen unveröffentlicht" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s Einsendungen veröffentlicht" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s Einsendungen wurden gelöscht" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s Einsendungen gelöscht" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s der Übermittlungen archiviert. " COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampagne aufsteigend" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampagne absteigend" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Kampagne auswählen -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Bitte speichern Sie die Kampagne um Ihre Integration einzurichten." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampagne gewechselt" COM_CONVERTFORMS_CAMPAIGN_SYNC="Übertragungen synchronisieren" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Wählen Sie ob die Übertragungen mit eienr Drittsoftware synchronisiert werden oder nur in der Datenbank gespeichert werden sollen.<Br>Anmerkung: Wenn eine Drittsoftware wie MailChimp, Aweber, GetResponse, Active Campaign usw. verwendet werden soll, dann installieren Sie die entsprechende Erweiterung im Addon Bereich." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Kampagnen gelöscht" COM_CONVERTFORMS_CHOOSE_SERVICE="Service auswählen" COM_CONVERTFORMS_PENDING_LEADS="Anstehende Übertragungen" COM_CONVERTFORMS_SUBMISSIONS="Übermittlungen" COM_CONVERTFORMS_SUBMISSION="Übertragung" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Letzte Übertragungen" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Bestätigt" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Nicht bestätigt" COM_CONVERTFORMS_EDIT_CONVERSION="Übertragung bearbeiten" COM_CONVERTFORMS_SUBMISSION_INVALID="Submission not found." COM_CONVERTFORMS_NOT_AUTHORIZED="Zugriff zur Seite nicht erlaubt." COM_CONVERTFORMS_LEADS_ASC="Übertragungen aufsteigend" COM_CONVERTFORMS_LEADS_DESC="Übertragungen absteigend" COM_CONVERTFORMS_LEADS_EXPORT="Übertragungen exportieren" COM_CONVERTFORMS_ADDONS="Addons" COM_CONVERTFORMS_INSTALL_ADDONS="Installierte Addons anzeigen" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Um Convert Forms Erweiterungen installieren zu können, müssen Sie Ihren Download Key in den Einstellungen der Novarain Framework Erweiterung eingeben" COM_CONVERTFORMS_ADDONS_DESC="Erweiterungen vergrößern die Funktionalität von Convert Forms. Mit diesen Erweiterungen können Sie Drittsoftware anbinden, neue Funktionen einbinden und Convert Forms noch leistungsfähiger machen." COM_CONVERTFORMS_LAST_YEAR="Letztes Jahr" COM_CONVERTFORMS_THIS_YEAR="Diese Jahr" COM_CONVERTFORMS_LAST_MONTH="Letzter Monat" COM_CONVERTFORMS_THIS_MONTH="Dieser Monat" COM_CONVERTFORMS_LAST_WEEK="Letzte Woche" COM_CONVERTFORMS_THIS_WEEK="Diese Woche" COM_CONVERTFORMS_LAST_7_DAYS="Die letzten 7 Tage" COM_CONVERTFORMS_YESTERDAY="Gestern" COM_CONVERTFORMS_TODAY="Heute" COM_CONVERTFORMS_AVG_DAY="Durchschnitt pro Tag (dieser Monat)" COM_CONVERTFORMS_PROJECTION="Prognose für diesen Monat" COM_CONVERTFORMS_TOTAL="Gesamt" COM_CONVERTFORMS_CHOOSE_FILE="Wählen Sie eine .cnvf Datei" COM_CONVERTFORMS_FORMS_NAME_DESC="Ein eindeutiger und beschreibender Name ist hilfreich. Er wird im Dashboard, in der Analyse, etc. angezeigt." COM_CONVERTFORMS_BACKGROUND_IMAGE="Quelle für Hintergrundbild" COM_CONVERTFORMS_IMAGE_DESC="Wählen Sie die Quelle für das Hintergrundbild" COM_CONVERTFORMS_CUSTOM_URL="Eigene URL" COM_CONVERTFORMS_BACKGROUND_URL="URL des Hintergrundbilds" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Individuelle URL für Ihr Bild eingeben" COM_CONVERTFORMS_BACKGROUND_FILE="Hintergrundbild" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Wählen Sie ein Bild zum hochladen" COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Sie können ein Bild bereitstellen, das hinter dem Inhalt des Formulars angezeigt wird. Wählen Sie <b> Hochladen </b>, um ein neues Bild hochzuladen, oder <b> Benutzerdefinierte URL </b>, um eine benutzerdefinierte Bild-URL einzugeben. Damit diese Einstellung funktioniert, muss die von Ihnen gewählte Hintergrundfarbe transparent sein." COM_CONVERTFORMS_FORM_BUILDER="Formulareditor" COM_CONVERTFORMS_FIELD_TYPE="Feldtyp" COM_CONVERTFORMS_FIELD_TYPE_DESC="Das Feldtyp Attribut definiert den Typ des angezeigten Eingabefelds" COM_CONVERTFORMS_FIELD_LABEL="Feld Bezeichnung" COM_CONVERTFORMS_FIELD_LABEL_DESC="Die Feldbezeichnung definiert eine Bezeichnung für das Eingabefeld" COM_CONVERTFORMS_FIELD_NAME="Feld Name" COM_CONVERTFORMS_FIELD_NAME_DESC="Es spezifiziert den Namen des Eingabeelements, welches als Referenz benutzt wird nachdem das Formular übetragen wurde. Benutzen Sie diese Option auch um Formularfelder in Integrations-Apps abzubilden." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Der Text der im Eingabefeld angezeigt wird bevor der Benutzer eine Eingabe macht." COM_CONVERTFORMS_REQUIRED_NAME="Pflichtfeld" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Wenn diese Option aktiviert ist, wird sichergestellt, dass dieses Feld ausgefüllt wird, bevor das Formular gesendet werden kann." COM_CONVERTFORMS_FIELDS="Felder" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Sie benutzen die <b>Freie</b> version welche nur 1 Emailfeld unterstützt. <b>Benutzen Sie die Pro Version</b> um eine unbegrenzte Anzahl von Feldern zu verwalten." COM_CONVERTFORMS_GENERAL="Allgemein" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Feld Textausrichtung" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Formular Textausrichtung" COM_CONVERTFORMS_INPUT_COLOR="Feld Textfarbe" COM_CONVERTFORMS_INPUT_BGCOLOR="Feld Texthintergrundfarbe" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Feld Rahmenfarbe" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Fügt einen inneren Schatten zum Eingabefeld hinzu" COM_CONVERTFORMS_INPUT_FONT_SIZE="Feld Schriftartgröße" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Feld Schriftartgröße" COM_CONVERTFORMS_VPADDING_SIZE="Vertikaler Abstand" COM_CONVERTFORMS_HPADDING_SIZE="Horizontaler Abstand" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Maximale Breite der Zelle" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Geben Sie eine eigene maximale Breite vor oder bestimmen Sie ob die Fläche den gesamten Bildschrimbereich ausfüllen soll. Beachten Sie, daß das die maximale Breite ist. Auf kleinere Anzeigebereiche wird das Formular immer eingepasst." COM_CONVERTFORMS_FORM_WIDTH="Eigene maximale Breite" COM_CONVERTFORMS_FORM_WIDTH_DESC="Vergeben Sie eine eigene maximale Breite Ihrer Wahl" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Standardabstand entfernen" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Entfernen des Standardabstandes zwischen dem Inhaltsbereich und der Formularbereichsgrenzen." COM_CONVERTFORMS_FORM_BORDER_STYLE="Rahmenstil" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Formularrahmen anzeigen" COM_CONVERTFORMS_FORM_BORDER_COLOR="Rahmenfarbe" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Formular Rahmenfarbe" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Rahmenbreite" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Rahmenbreite des Formulars" COM_CONVERTFORMS_BOX_RADIUS="Boxradius" COM_CONVERTFORMS_BORDER_RADIUS="Rahmenradius" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Eingabe Größe des Rahmenradius" COM_CONVERTFORMS_COLLECT_LEADS_USING="Übertragungen in der Kampagne sammeln" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Übertragungen dieses Formulars werden mit der gewählten Kampagne verknüpft. Sie können Kampagnen im Kampagnenbereich verwalten." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Erfolgreiche Übertragungsaktion" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Wählen Sie welche Aktion nach einer erfolgreichen Übertragung erfolgen soll" COM_CONVERTFORMS_DISPLAY_MSG="Nachricht anzeigen" COM_CONVERTFORMS_REDIRECT_USER="Benutzer umleiten" COM_CONVERTFORMS_SUCCESS_TEXT="Nachricht nach Erfolg" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Geben Sie die Nachricht ein, die dem Benutzer angezeigt wird nachdem er erfolgreich zu der Liste hinzugefügt wurde." COM_CONVERTFORMS_SUCCESS_URL="URL umleiten" COM_CONVERTFORMS_SUCCESS_URL_DESC="Geben Sie die URL an zu der der Benutzer umgeleitet wird nachdem er erfolgreich zu der Liste hinzugefügt wurde." COM_CONVERTFORMS_PASS_DATA="Daten der Übertragung zur umgeleiteten URL durchleiten" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Stil der Absenden-Schaltfläche" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Erweitern Sie Ihre Schaltfläche mit schönen Effekten" COM_CONVERTFORMS_BTN_SHADOW_DESC="Schaltfläche mit äußerem Schatten versehen" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Farbe des Textes wenn sich der Mauszeiger darüber befindet" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Farbe des Textes wenn sich der Mauszeiger darüber befindet" COM_CONVERTFORMS_CUSTOM_CSS="Eigenes CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Gestalten Sie das Formular mit Ihrem eigenen benutzerdefinierten CSS. <br> <br> Um Ihnen bei der Formgestaltung zu helfen, wird der in diesem Bereich hinzugefügte Code auch im Backend ausgeführt." COM_CONVERTFORMS_CLASS_SUFFIX="Klassen Suffix" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Klassen Suffix" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Höhe Textbereich" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Die Textbereichshöhe gibt die sichtbare Höhe des Textbereichs in Zeilen an." COM_CONVERTFORMS_CHOICES="Auswahlen" COM_CONVERTFORMS_CHOICES_DESC="Ergänze Wahlmöglichkeiten für das Formularfeld." COM_CONVERTFORMS_FIELD_VALUE="Standardwert" COM_CONVERTFORMS_FIELD_VALUE_DESC="Text für den Standardfeldwert eingeben." COM_CONVERTFORMS_HIDE_LABELS="Bezeichnung ausblenden" COM_CONVERTFORMS_HIDE_LABELS_DESC="Wählen Sie diese Option um die Bezeichnung für das Formularfeld auszublenden" COM_CONVERTFORMS_IMAGE_SOURCE="Bildquelle" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Sie können ein Bild bereitstellen, dass innerhalb des Formulars angezeigt wird. <b>Hochladen</b> um ein neues Bild hochzuladen oder <b>Eigene URL</b> für die URL Adresse eines Bildes." COM_CONVERTFORMS_IMAGE_URL="Bild URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Bild auf kleinen Anzeigen ausblenden" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Auf kleineren Anzeigen, wie Smartphones, sehen kleinere Dialoge besser aus. Um die Größe des Dialogs zu reduzieren, können Sie mit dieser Einstellung das Bild ausblenden." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontale Position" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontale Position" COM_CONVERTFORMS_VERTICAL_POSITION="Vertikale Position" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertikale Position" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Bildbreite" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Bildbreite setzen" COM_CONVERTFORMS_BUTTON_ALIGN="Schaltflächenausrichtung" COM_CONVERTFORMS_FORM_POSITION="Formularposition" COM_CONVERTFORMS_FORM_POSITION_DESC="Formularposition relativ zu übergeordnetem Textbereich setzen" COM_CONVERTFORMS_FORM_SIZE="Größe des Formularbereichs" COM_CONVERTFORMS_COLUMNS_DESC="Gibt an wie viele Spalten benutzt werden. 6 Spalten entsprechen 50% der Breite." COM_CONVERTFORMS_MESSAGE="Text Nachricht" COM_CONVERTFORMS_MESSAGE_DESC="Geben Sie die Textnachricht des Formulars ein" COM_CONVERTFORMS_IMAGE_POSITION="Bildposition" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Setzte Bildposition relative zum Text" COM_CONVERTFORMS_FOOTER="Formular Fußbereich" COM_CONVERTFORMS_BUTTON_TEXT="Schaltflächentext" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Geben Sie den Text für die Schaltflächenbezeichnung ein" COM_CONVERTFORMS_BTN_FONT_SIZE="Textgröße der Schaltfläche" COM_CONVERTFORMS_IMAGE_SIZE="Größe des Bildbereichs" COM_CONVERTFORMS_BODY_FONT="Schriftart" COM_CONVERTFORMS_BODY_FONT_DESC="Wählen Sie eine Schriftart, die für das Formular benutzt wird. Beachten Sie, dass andere als Standardschriftarten, wie z.B. Google Fonts die Ladezeit der Webseite verlangsamen können. Wählen Sie Standard um die Standardschriftart Ihrer Webseite zu benutzen." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Datum" COM_CONVERTFORMS_CREATED="Erstelldatum" COM_CONVERTFORMS_SUBMISSION="Übertragung" COM_CONVERTFORMS_PREVIEW_SUCCESS="Vorschau der Erfolgsnachricht" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Diese Version wird auf Anzeigen von 990px und höher angezeigt" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Diese Version wird auf Anzeigen von 768px - 990px angezeigt" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Diese Version wird auf Anzeigen bis 768px angezeigt" COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Smartphone" COM_CONVERTFORMS_RESET_FORM="Formular zurücksetzen" COM_CONVERTFORMS_RESET_FORM_DESC="Nach erfolgreicher Übertragung zurücksetzen" COM_CONVERTFORMS_HIDE_FORM="Formular ausblenden" COM_CONVERTFORMS_HIDE_FORM_DESC="Formular nach erfolgreicher Übertragung ausblenden" COM_CONVERTFORMS_TEMPLATES="Vorlagen" COM_CONVERTFORMS_TEMPLATES_SELECT="Eine Vorlage zum Beginnen auswählen" COM_CONVERTFORMS_TEMPLATES_BLANK="Ohne Vorlage beginnen" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Neues Formular ohne Vorlage erstellen" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Innenliegend" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Seitenbereich" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Leiste" COM_CONVERTFORMS_LABELS_COLOR="Textfarbe der Bezeichnung" COM_CONVERTFORMS_LABELS_FONT_SIZE="Schriftartgröße der Bezeichnung" COM_CONVERTFORMS_IMAGE_ABOVE="Über dem Text" COM_CONVERTFORMS_IMAGE_BELOW="Unter dem Text" COM_CONVERTFORMS_IMAGE_RIGHT="Rechts vom Text" COM_CONVERTFORMS_IMAGE_LEFT="Links vom Text" COM_CONVERTFORMS_FLAT="Flach" COM_CONVERTFORMS_OUTLINE="Umrandung" COM_CONVERTFORMS_GRADIENT="Verlauf" COM_CONVERTFORMS_EMAILS_DESC="Emailbenachrichtigung senden wenn der Benutzer das Formular absendet." COM_CONVERTFORMS_EMAILS="Emailbenachrichtigungen" COM_CONVERTFORMS_EMAILS_REPLY_TO="Antwort Emailadresse" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Antwort Name" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Email von" COM_CONVERTFORMS_EMAILS_FROM="Von Name" COM_CONVERTFORMS_EMAILS_RECIPIENT="Email Empfängeradresse" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Geben Sie die Emailadressen ein an die Übertragungsbenachrichtigungen gesendet werden sollen.\nFür mehrere Benachrichtigungen trennen Sie die Emailadressen mit einem Komma." COM_CONVERTFORMS_EMAILS_SUBJECT="Email Betreff" COM_CONVERTFORMS_EMAILS_BODY="Nachricht" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Benötigen Sie mehrere Benachrichtigungen?<br><a href='#' data-pro-only='Unlimited Notifications'>Upgraden Sie auf die PRO Version</a> um diese Funktion zu entsperren.\n" COM_CONVERTFORMS_EMAILS_ATTACHMENT="Anhänge" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Position einer anzuhängenden Datei relativ zum Stammverzeichnis Ihres Webspace. Verwenden Sie Komma, um mehrere Dateien zu definieren." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Fehlt ein Addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Für den Fall, dass Sie eine Integrationserweiterung für Ihre favorisierte App vermissen, lassen Sie es uns wissen. Wir werden die Erweiterung gerne in die Convert Forms Erweiterungssammlung aufnehmen." COM_CONVERTFORMS_API_ENABLE="JSON API aktivieren" COM_CONVERTFORMS_API_DESC="Mit der JSON-API können Sie Formulare mithilfe von HTTP-Anforderungen konvertieren." COM_CONVERTFORMS_API_KEY="Geheimer Schlüssel" COM_CONVERTFORMS_API_KEY_DESC="Mit diesem geheimen Schlüssel werden kritische Aufgaben wie CRON-Jobs und die JSON-API authentifiziert. Wenn Sie dieses Feld leer lassen, werden alle Aufgaben, für die eine Benutzerauthentifizierung erforderlich ist, deaktiviert." COM_CONVERTFORMS_IMAGE_ALT="Bild Alternativtext" COM_CONVERTFORMS_IMAGE_ALT_DESC="Alternativtext für das Bild" COM_CONVERTFORMS_CUSTOM_CODE="Eigener Code" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Platzieren Sie benutzerdefinierten Code am Ende des Formulars. Es akzeptiert HTML, CSS und Javascript. <br> <br> Stellen Sie für Javascript sicher, dass Sie den Code mit dem <script> -Tag umschließen. <br> <br> The In diesem Bereich hinzugefügter Code wird im Backend nicht ausgeführt." COM_CONVERTFORMS_ISSUES="Problem" COM_CONVERTFORMS_ISSUES_DETECTED="%s Übertragungsprobleme erkannt" COM_CONVERTFORMS_CREATED="Erstelldatum" COM_CONVERTFORMS_MODIFIED="Datum geändert" COM_CONVERTFORMS_IP="IP Adresse des Absenders" COM_CONVERTFORMS_USER_ID="ID des Absenders" COM_CONVERTFORMS_USER_USERNAME="Benutzername des Absenders" COM_CONVERTFORMS_VISITOR_ID="Besucher ID" COM_CONVERTFORMS_FORM_NAME="Formularname" COM_CONVERTFORMS_CAMPAIGN_NAME="Kampagnenname" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Spalten" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Um bestimmte Formularfelder zu aktivieren, wählen Sie zuerst ein Formular in der Filterleiste aus." COM_CONVERTFORMS_UNTITLED_BOX="Unbenanntes Formular" COM_CONVERTFORMS_SELECT_LAYOUT="Wählen Sie Ihr Layout" COM_CONVERTFORMS_SHOW_LAYOUTS="Layouts einblenden" COM_CONVERTFORMS_HIDE_LAYOUTS="Layouts ausblenden" COM_CONVERTFORMS_FIELDS_COPY="Feld duplizieren" COM_CONVERTFORMS_FIELDS_DELETE="Feld löschen" COM_CONVERTFORMS_FIELDGROUP_COMMON="Gemeinsame Felder" COM_CONVERTFORMS_FIELDGROUP_FANCY="Zusatzfelder" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Erweiterte Felder" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Ergänzen Sie eigenen Text oder HTML Code. Keine Beschränkungen!" COM_CONVERTFORMS_FIELD_TEXT="Textfeld" COM_CONVERTFORMS_FIELD_TEXT_DESC="Ein einzeiliges Textfeld" COM_CONVERTFORMS_FIELD_TEXTAREA="Textbereich" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Wie ein Textfeld, in das jedoch mehrere Zeilen eingegeben werden können" COM_CONVERTFORMS_FIELD_NUMBER="Nummer" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Ein Textfeld in das nur Nummer eingegeben werden können" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Schrittweite" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Der Wert um den sich die Zahl ändert wenn eine Pfeiltaste gedrückt wird" COM_CONVERTFORMS_FIELD_NUMBER_MIN="Minimaler Wert" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Der minimal erlaubte Zahlenwert des Feldes" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Maximaler Wert" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Der maximal erlaubte Zahlenwert des Feldes" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Spamübertragung aus Formularen durch Google reCAPTCHA verhindern" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Bitte setzen Sie Ihre Seiten- und geheimen Schlüssel auf der Konfigurationsseite." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Konfigurieren Sie jetzt reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Das Farbschema des Widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Die Größe des Widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Listenauswahl" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Liste die ein einzelnes Element zur Auswahl aus einer Listenauswahl erlaubt" COM_CONVERTFORMS_FIELD_RADIO="Radio Schaltflächen" COM_CONVERTFORMS_FIELD_RADIO_DESC="Liste die ein einzelnes Element zur Auswahl aus einer Optionsauswahl erlaubt" COM_CONVERTFORMS_FIELD_URL="Webseite / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Akzeptiert eine korrekt formatierte URL die mit http:// oder https:// anfängt" COM_CONVERTFORMS_FIELD_URL_INVALID="Ungültige URL" COM_CONVERTFORMS_FIELD_COUNTRY="Land" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Liste aller bekannten Länder" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Land des Webseitenbesuchers erkennen" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Wenn diese Option gesetzt ist, wird versucht das Land es Webseitenbesuchers zu erkennen und automatisch auszufüllen. Benötigt die TGeoIP Erweiterung." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Länder ausschließen" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Währung" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Liste aller bekannten Währungen" COM_CONVERTFORMS_FIELD_SUBMIT="Absende-Schaltfläche" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Die Schaltfläche welche das Formular abschickt" COM_CONVERTFORMS_FIELD_HIDDEN="Verstecktes Feld" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Ein Feld das für den Benutzer des Formulars nicht sichtbar ist" COM_CONVERTFORMS_FIELD_EMAIL="Emailadresse" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Ein Textfeld das nur eine gültige Emailadresse akzeptiert" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Nutzungsbedingungen" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Der Benutzer muss den Nutzungsbedingungen zustimmen bevor er das Formular absenden kann" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Text der Nutzungsbedingungen" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Dieser Text wird direkt nach dem Markierungsfeld angezeigt" COM_CONVERTFORMS_FIELD_CHECKBOX="Markierungsfelder" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Liste die mehrere Auswahlen in Form von Markierungsfeldern erlaubt" COM_CONVERTFORMS_FIELD_REQUIRED="Pflichtfeld" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Ungültige Emailadresse" COM_CONVERTFORMS_FIELD_SIZE="Feldgröße" COM_CONVERTFORMS_FIELD_SIZE_DESC="Wählen Sie die Standardfeldgröße" COM_CONVERTFORMS_FIELD_TEL="Telefonnummer" COM_CONVERTFORMS_FIELD_TEL_DESC="Erlaubt es dem Benutzer eine Telefonnummer einzugeben" COM_CONVERTFORMS_FIELD_DATETIME="Datum / Zeit" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Datum / Zeit Auswahl die erlaubt ein einzelnes Datum, mehrere Daten oder einen Datumsbereich auszuwählen" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Datumsformat" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Das Format der Datumsausgabe. Beispiele <br> <br> d/m/Y H:i <br> Y-m-d <br> m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Zeitauswahl anzeigen" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Aktiviert die Zeitauswahl. Stellen Sie sicher, dass Sie Zeitvariablen (H:i) im Datumsformat verwenden, wenn Sie diese Option aktivieren." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Frühestes Datum" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Das früheste/kleinste Datum das für die Auswahl erlaubt ist. Unterstüzt relative Datumsangaben wie: tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Spätestes Datum" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Das späteste/größte Datum das für die Auswahl erlaubt ist. Unterstüzt relative Datumsangaben wie: tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Datumsauswahl-Modus" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Erlaubt dem Benutzer ein einzelnes Datum, mehrere Daten oder einen Datumsbereich auszuwählen." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24-Stunden Zeitmodus" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Zeigt die Zeitauswahl im 24-Stunden Modus ohne AM/PM an" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Schritweite in Minuten" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Passt die Schrittweite in Minuten in der Zeitauswahl an" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Innenliegend anzeigen" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Kalender innerhalb des Formulars anstelle eines Popups anzeigen." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Thema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Wählen Sie ein Kalender Thema aus" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Ungültiges Datumsformat - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Deaktiviere die geräte-eigene Datumsauswahl auf mobilen Geräten" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Wenn aktiviert, wird die Convert Forms-Datumsauswahl angezeigt statt der nativen des mobilen Betriebssystems" COM_CONVERTFORMS_CSS_CLASSES="CSS-Klasse" COM_CONVERTFORMS_CSS_CLASSES_DESC="Fügen Sie dem Container der Eingabe CSS-Klassen hinzu. Dies kann hauptsächlich für Layoutzwecke verwendet werden." COM_CONVERTFORMS_INPUT_CSS_CLASSES="CSS-Klasse eingeben" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Fügen Sie dem Eingabeelement CSS-Klassen hinzu. Verwenden Sie diese Option, um die Eingabe selbst zu formatieren.\"COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE=\"Autovervollständigung des Browsers deaktivieren" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Autovervollständigung des Browsers deaktivieren" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Normalerweise merken sich Browser welche Daten der Benutzer mit Eingabefeldern übeträgt. Um die Autovervollständigung in Formularen abzuschalten, aktivieren Sie diese Option." COM_CONVERTFORMS_FIELD_DESCRIPTION="Hilfetext" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Hilfetext, der neben diesem Feld angezeigt wird." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Prüfung" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Überprüfung der Email-Adresse durch eine DNS Prüfung." COM_CONVERTFORMS_FIELD_CONFIRM="Bestätigen" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Ein Feld um sicherzustellen, dass zwei Felder übereinstimmen" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Feldschlüssel bestätigen" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Geben Sie den Feldschlüssel ein der benutzt wird um sicherzustellen, daß die Werte übereinstimmen." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Das Feld ist nicht richtig konfiguriert" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Feldwerte stimmen nicht überein" COM_CONVERTFORMS_HIDE_TEXT="Text ausblenden" COM_CONVERTFORMS_HIDE_TEXT_DESC="Text nach erfolgreicher Übertragung ausblenden" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Es ist kein Emailadressfeld im Formular vorhanden" COM_CONVERTFORMS_INVALID_LEAD="Die Übertragung kann nicht geprüft werden" COM_CONVERTFORMS_EXCEL_SECURITY="Erweiterte Sicherheit" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Wenn aktiviert, wird Werten in der CSV-Exportdatei welche mit =, +, - oder @ anfangen, ein Tabulator vorangestellt um eine CSV-Injektion zu vermeiden, wenn die exportierte Datei in Excel geöffnet wird. <br><br>Deaktivieren Sie diese Option nur, wenn Sie 100% sicher sind, dass die Daten vertrauenswürdig sind oder falls Sie Schwierigkeiten haben die CSV-Datei in einer anderen Anwendung zu öffnen." COM_CONVERTFORMS_CHOICE_LAYOUT="Layout auswählen" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Wählen Sie das Layout um Feldauswahlen anzuzeigen" COM_CONVERTFORMS_CHOICE_1_COLUMN="Eine Spalte" COM_CONVERTFORMS_CHOICE_2_COLUMN="Zwei Spalten" COM_CONVERTFORMS_CHOICE_3_COLUMN="Drei Spalten" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Nebeneinander" COM_CONVERTFORMS_REQUIRED_INDICATION="Pflichtfeldmarkierung" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Kennzeichne Pflichtfelder mit einem Stern bei der jeweiligen Bezeichnung." COM_CONVERTFORMS_INPUT_MASK="Eingabemaske" COM_CONVERTFORMS_INPUT_MASK_DESC="Helfen Sie dem Benutzer mit vordefinierten Formaten bein Eingeben von Daten. <br><br><b>Syntax:</b><br>9: Nummer (0-9)<br>a: Buchstaben (a-z or A-Z)<br>A: Großbuchstaben (A-Z)<br>*: Alphanummerisch (0-9, a-z, or A-Z)<br>&: Alphanummerisch Großschreibung (0-9 or A-Z)<br><br><b>Beispiele</b>:<br>Telefon: +1 (999)-9999<br>Datum: 99/99/9999<br>Postleitzahl: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Vom Benutzer übertragene Daten" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Keine übertragene Daten gefunden" COM_CONVERTFORMS_LEAD_INFO="Info zur Übertragung" COM_CONVERTFORMS_NOTES="Notizen" COM_CONVERTFORMS_DATE_RANGE="Datumsbereich" COM_CONVERTFORMS_START_DATE="Start Datum" COM_CONVERTFORMS_END_DATE="End Datum" COM_CONVERTFORMS_PERIOD="Datumsbereich" COM_CONVERTFORMS_PERIOD_SELECT="- Wählen Sie den Datumsbereich -" COM_CONVERTFORMS_HONEYPOT="Anti-Spam Honigtopf aktivieren" COM_CONVERTFORMS_HONEYPOT_DESC="Aktivieren Sie diese Option, um dem Formular ein Honeypot-Feld hinzuzufügen, das nur für Bots sichtbar ist. Wenn das Honeypot-Feld ausgefüllt ist, erkennt das Formular automatisch, dass der Benutzer ein Spambot war. <br> <br> Auf vielen Websites Wenn Sie jedoch immer noch Spam erhalten oder zusätzliche Vorsichtsmaßnahmen treffen möchten, ist reCAPTCHA eine großartige zusätzliche Option. " COM_CONVERTFORMS_FIELD_FILEUPLOAD="Datei hochladen" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Erlauben Sie dem Benutzer Dateien hochzuladen" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Der temporäre Ordner Ihrer Site ist auf <b>%s</b> eingestellt, aber es ist nicht beschreibbar. Bitte geben einen beschreibbaren temporären Ordner an." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Zielordner für Hochladen" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Geben Sie einen Zielordner für hochgeladene Dateien an.<br><br><b>Auto</b>: Die Dateien werden in den Ordner /media/com_convertforms/uploads hochgeladen. Zusätzlich wird am Anfang jedes Dateinamens ein zufälliger Präfix hinzugefügt, um die Sicherheit zu erhöhen. .<br><br><b>Custom</b>: Geben Sie einen benutzerdefinierten Zielordner und Namen an." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Benutzerdefinierte Zielordner für Hochladen" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Den Pfad relativ zum Stammverzeichnis Ihres Webspace eingeben, in dem die hochgeladenen Dateien gespeichert werden. Verwenden Sie zum Umbenennen hochgeladener Dateien die folgenden Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>Es kann auch globale Smart Tags wie {Jahr}, {Monat}, {user.id} oder {randomid} akzeptieren, um ein noch dynamischeres Upload-Ziel zu erstellen." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limit der Anzahl der Dateien" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Wie viele Dateien können hochgeladen werden? Geben Sie 0 für unlimitiert ein." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Limit der Dateigröße" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Konfigurieren Sie die maximal erlaube Größe für jede hochgeladene Datei in MB. Geben Sie 0 für eine nicht limitierte Dateigröße ein. <br><br>Ihr Server erlaubt eine maxlimale Dateigröße von: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Erlaubte Dateitypen" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Eine durch Kommas getrennte Liste zulässiger Dateitypen eingeben: </b> .jpg, .gif, .png, .pdf <br> <br> Sie können Medientypen wie: application / pdf, images / *, video eingeben / * <br> <br> Oder Sie können sogar beides mischen: application / *, .png, .jpg <br> <br> Hinweis: Dies ist nicht narrensicher und kann ausgetrickst werden. Bitte denken Sie daran, dass es immer eine gibt Gefahr beim Hochladen von Dateien durch Benutzer. " COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtern Sie die Benutzereingaben anhand der folgenden Filter. <br> <b> Text </b>: Konvertiert die Eingabe in eine einfache Textzeichenfolge und entfernt alle Tags / Attribute. <br> <b> Sicheres HTML </b>: Akzeptiere nur sichere HTML-Elemente wie. <br> <b> Alphanumerisch </b>: Erlaube nur az und 0-9. <b> Wort </b>: Erlaube nur die Zeichen az und Unterstriche < br> <b> Integer </b>: Nur den ersten Zahlenwert verwenden. <br> <b> Float </b>: Nur die Zeichen az und Unterstriche zulassen. \"COM_CONVERTFORMS_UPLOAD_ERROR=\"Ungültiger Formular- und Feldschlüssel" COM_CONVERTFORMS_UPLOAD_ERROR="Ungültiger Formular- und Feldschlüssel" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Ungültiges Hochlade-Feld" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Ungültige oder nicht unterstützte Datei" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Sie können bis zu %d Dateien hochladen" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Ziehen Sie Dateien hier her oder" COM_CONVERTFORMS_UPLOAD_BROWSE="Durchsuchen" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporäre Datei %s ist vermisst. Bitte erneut hochladen." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Der Ordner zum Hochladen von Dateien %s existiert nicht oder ist nicht beschreibar." COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Die Datei ist zu groß ({{filesize}}MB). Maximale Dateigröße: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Sie können keine Dateien dieses Typs hochladen." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Ihr Browser unterstützt kein Drag'n'Drop für das Hochladen von Dateien." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server antwortete mit dem Code {{statusCode}} ." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Hochladen abbrechen" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Sind Sie sicher, daß Sie das Hochladen abbrechen wollen?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Datei entfernen" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Sie können keine weiteren Dateien hochladen." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Dateien automatisch löschen" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Wenn Sie viele Uploads erhalten, kann der von den hochgeladenen Dateien belegte Server-Speicherplatz schnell aufgebaut werden. Dies erfordert eine regelmäßige Reinigung, um Speicherplatz freizugeben. <br> <br> Mit dieser Option können Sie gespeicherte Dateien automatisch löschen Upload-Ordner nach einem festgelegten Zeitraum. <br> <br> Geben Sie beispielsweise 3 ein, um Dateien, die älter als 3 Tage sind, automatisch zu löschen, oder 0, wenn Sie die Dateien für immer behalten möchten. <br> <br> Hinweis: Die \"Das Plug-In\" Formulare hochgeladener Dateien konvertieren muss aktiviert und die entsprechende Cron Job-URL auf Ihrem Server festgelegt sein." COM_CONVERTFORMS_READONLY="Schreibgeschützt" COM_CONVERTFORMS_READONLY_DESC="Eintrag in dieses Feld verhindern" COM_CONVERTFORMS_PHPSCRIPT="PHP-Skripte" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Formularanzeige" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Das in diesem Bereich hinzugefügte PHP-Skript wird unmittelbar vor der Anzeige des Formulars ausgeführt. <br> <br> Der Schwerpunkt in diesem Bereich liegt auf dem <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Formularprozess" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Der in diesem Bereich hinzugefügte PHP-Code wird unmittelbar vor dem Speichern der Formulardaten in der Datenbank ausgeführt, unabhängig davon, ob die Übermittlung gültig ist oder nicht. <br> <br> Dieser Bereich ist nützlich, wenn Sie Berechnungen durchführen, eine erweiterte Validierung durchführen oder den Wert eines Feldes ändern müssen. Änderungen an <b>$post</b> (Array) Die hier vorgenommene Variable wird im Übermittlungseintrag berücksichtigt. <br> <br> Um auf die Formulareinstellungen zuzugreifen, verwenden Sie die <b>$form</b> (Array) variable. <br><br>Sie müssen das nicht einschließen <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Nach dem Absenden des Formulars" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Der in diesem Bereich hinzugefügte PHP-Code wird ausgeführt, nachdem das Formular erfolgreich gesendet und die Daten in der Datenbank gespeichert wurden. <br> <br> Dies ist eher nützlich, wenn Sie versuchen, einige zusätzliche Aufgaben auszuführen, z. B. unbeaufsichtigt Daten an eine andere URL zu senden. Sie können auf die endgültige Einreichung zugreifen, indem Sie auf <b>$submission</b> (Object) variable.<br><br>Um auf die Formulareinstellungen zuzugreifen, verwenden Sie die <b>$form</b> (Array) variable. <br><br>Sie müssen das nicht einschließen the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP-Skripte werden im Backend nicht ausgeführt, um Probleme mit dem Live Form Previewer zu vermeiden. Testen Sie immer am Frontend." COM_CONVERTFORMS_FIELD_PASSWORD="Passwort" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Benutzern die sichere Eingabe eines Passworts ermöglichen" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Feldtyp bestätigen" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Wählen Sie den Eingabetyp des Bestätigungsfelds zwischen Text und Passwort." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Formularvorbereitung" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Das in diesem Bereich hinzugefügte PHP-Skript wird ausgeführt, bevor die Daten des Formulars aufbereitet und an die Formularanzeigefunktion gesendet werden. <br> <br> Der Schwerpunkt in diesem Bereich liegt auf der <b>$form</b> (Array) Variable, die die Einstellungen des Formulars enthält. <br> <br> Sie müssen das nicht einfügen <?php and ?> tags." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s ist bereit registriert." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s sieht falsch oder ungültig aus, bitte geben Sie eine echte E-Mail-Adresse ein." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Fehler: Das Google reCAPTCHA-Skript wurde nicht geladen. Stellen Sie sicher, dass Ihr Browser es nicht blockiert, oder wenden Sie sich an den Site-Administrator." COM_CONVERTFORMS_ACCESS_FORMS="Formular Verwaltung" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Ermöglicht Benutzern in der Gruppe das Verwalten von Formularen." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Übermittlungen" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Ermöglicht Benutzern in der Gruppe das Verwalten von Übermittlungen." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Zugang zu Kampagnen" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Ermöglicht Benutzern in der Gruppe das Verwalten von Kampagnen. Aktivieren Sie diese Option, wenn Sie Probleme mit der Übermittlung von Spam haben." COM_CONVERTFORMS_CSRF_CHECK="Joomla! CSRF-Token verwenden" COM_CONVERTFORMS_CSRF_CHECK_DESC="Fügen Sie Ihren Formularen eine zusätzliche Schutzschicht hinzu, indem Sie alle AJAX-Anforderungen mit CSRF-Tokens überprüfen. <br> <br> Wenn Sie dies aktivieren und einen Cache-Mechanismus verwenden, der die gesamte Ausgabe der Seite wie Joomla zwischenspeichert ! Page Cache-Plugin oder ein serverseitiger Caching-Proxy wie CloudFlare oder Sucuri können Probleme beim Absenden des Formulars auftreten. " COM_CONVERTFORMS_THANK_YOU_MESSAGE="Formular wurde erfolgreich gesendet" COM_CONVERTFORMS_SECRET_SET="Bitte konfigurieren Sie einen geheimen Schlüssel, um den optin-Endpunkt verwenden zu können." COM_CONVERTFORMS_SECRET_NO="Kein geheimer Schlüssel in URL angegeben" COM_CONVERTFORMS_SECRET_WRONG="Falscher geheimer Schlüssel in URL angegeben" COM_CONVERTFORMS_SECURITY="Sicherheit" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stoppen Sie die Übermittlung von Spam-Formularen mithilfe von Invisible Google reCAPTCHA." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Abzeichen" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position des reCAPTCHA-Badges. Mit 'inline' können Sie es mit CSS positionieren." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Unten rechts" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Unten links" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Einreichungen" COM_CONVERTFORMS_SUBMISSIONS_LIST="Einreichungsliste" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Nur bestätigte anzeigen" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Aktivieren Sie diese Option, um nur bestätigte Einsendungen anzuzeigen." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Leere Werte ausblenden" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Aktivieren Sie diese Option, um Felder mit leeren Werten auszublenden." COM_CONVERTFORMS_SELECT_FORM="Formular auswählen" COM_CONVERTFORMS_SELECT_FORM_DESC="Wählen Sie das Formular für die Anzeige von Einsendungen aus" COM_CONVERTFORMS_SELECT_FORM_DESC2="Formular auswählen" COM_CONVERTFORMS_LIST_LIMIT="Seitenlimit" COM_CONVERTFORMS_LIST_LIMIT_DESC="Anzahl der Einreichungen, die pro Seite angezeigt werden sollen. Geben Sie 0 für unbegrenzt ein." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Nur eigene anzeigen" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Obwohl Sie möglicherweise eine Liste mit Beiträgen von verschiedenen Benutzern anzeigen, kann der Besucher nur auf die Detailseite seiner eigenen Beiträge zugreifen, wenn diese Option aktiviert ist. <br> <br> Der Besucher muss sich anmelden ihr Konto. " COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Paginierung anzeigen" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Wenn die Gesamtzahl der Übermittlungen das Seitenlimit überschreitet, werden unter der Übermittlungsliste Links zur Paginierung angezeigt." COM_CONVERTFORMS_ORDER="Einsendungen sortieren" COM_CONVERTFORMS_ORDER_DESC="Die Reihenfolge, in der die Einreichungen angezeigt werden." COM_CONVERTFORMS_ORDER_RECENT="Neueste zuerst" COM_CONVERTFORMS_ORDER_OLDEST="Älteste zuerst" COM_CONVERTFORMS_ORDER_RANDOM="Zufällige Reihenfolge" COM_CONVERTFORMS_FILTER_USER="Einreichungen anzeigen von" COM_CONVERTFORMS_FILTER_USER_DESC="Wählen Sie diese Option, um die Übermittlungen des Benutzers zu filtern, der die Übermittlung vorgenommen hat. <br> <br> <b> Eingeloggter Benutzer </b> <br> Übermittlungen nur des aktuell angemeldeten Benutzers anzeigen. Jeder Benutzer sieht Ihre Übermittlungen. <br> <br> <b> Alle Benutzer </b> <br> Alle Übermittlungen anzeigen. <br> <br> <b> Bestimmte Benutzer </b> <br> Geben Sie die Übermittler an, die die Übermittlungen filtern sollen . " COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Angemeldeter Benutzer" COM_CONVERTFORMS_FILTER_USER_ALL="Alle Benutzer" COM_CONVERTFORMS_FILTER_USER_SELECT="Bestimmte Benutzer" COM_CONVERTFORMS_SET_USERS="Benutzer-IDs" COM_CONVERTFORMS_SET_USERS_DESC="Geben Sie die Joomla-Benutzer-IDs ein, um die Übermittlungen zu filtern. Verwenden Sie ein Komma, um mehrere IDs zu trennen." COM_CONVERTFORMS_LOAD_CSS="Stylesheet laden" COM_CONVERTFORMS_LOAD_CSS_DESC="Deaktivieren Sie diese Option, wenn Sie die Convert Forms-CSS-Datei nicht laden möchten." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Wählen Sie das Layout aus, mit dem die Einreichung im Frontend angezeigt werden soll. Sie können auch eigene Layouts in Ihrer Vorlage erstellen." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layouttyp" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layouttyp" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Vorlage" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Vorlage auswählen" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Wählen Sie die Vorlage aus, um die Übermittlungen anzuzeigen. Diese Vorlage wird sowohl für Listen- als auch für Detailansichten verwendet. <br> <br> Sie können Ihre eigenen Vorlagenüberschreibungen in Ihrer Vorlage erstellen." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Containerlayout" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Das HTML-Hauptlayout der Übermittlungsliste. Entfernen Sie das Tag {Submissions} nicht, da es durch die Datenausgabe ersetzt wird." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Zeilenlayout" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="Das HTML-Layout jeder Einreichung, wie im Container-Layout angezeigt." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Detaillayout" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Das HTML-Layout der Detailseite der Einreichung." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Leerer Raum" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Fügen Sie Ihrem Formular einen leeren Bereich hinzu" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Leerer Raum" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Legen Sie eine vertikale Lücke zwischen Feldern in Pixel fest." COM_CONVERTFORMS_FIELD_HEADING="Überschrift" COM_CONVERTFORMS_FIELD_HEADING_DESC="Einen Überschriftentitel hinzufügen, um Ihre Felder zu gruppieren." COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Titel-HTML-Element" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Den Überschriftentyp auswählen" COM_CONVERTFORMS_FIELD_HEADING_USELINK="Link verwenden" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Gibt an, ob die Überschrift auf eine URL verweisen soll." COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Den Link eingeben, zu dem der Benutzer umgeleitet werden soll." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="In neuem Tab öffnen" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Diese Option aktivieren, um den Link in einer neuen Registerkarte zu öffnen." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Die Schriftgröße für die Überschrift festlegen." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Die Schriftfamilie für die Überschrift auswählen." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Zeilenhöhe" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Die Zeilenhöhe für die Überschrift festlegen." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Buchstabenabstand" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Den Buchstabenabstand für die Überschrift festlegen." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Inhaltsausrichtung" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Die Ausrichtung der Überschrift auswählen." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Werte anzeigen" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Stellen Sie sicher, dass Sie für jede Auswahl einen eindeutigen Wert festlegen, da Sie sonst nicht wissen können, welche Option ein Benutzer ausgewählt hat." COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Berechnungswerte verwenden" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Berechnungswerte werden im Allgemeinen für Berechnungen verwendet. Sie stellen den numerischen Wert einer Auswahl dar." COM_CONVERTFORMS_FIELD_DIVIDER="Teiler" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Teilt die Abschnitte Ihres Formulars" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Rahmenstil" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Wählen Sie den Rahmenstil des Teilers aus." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Gestrichelt" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Gepunktet" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Randbreite" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Legen Sie die Randbreite des Teilers fest." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Rahmenfarbe" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Legen Sie die Rahmenfarbe des Teilers fest." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Rand oben" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Legen Sie den oberen Rand des Teilers fest." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Rand unten" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Legen Sie den unteren Rand des Teilers fest." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Erster Tag der Woche" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Ändern Sie den ersten Wochentag, der im Datumsauswahlkalender angezeigt wird." COM_CONVERTFORMS_ENTER_LABEL="Bezeichnung eingeben" COM_CONVERTFORMS_ADD_FIELD="Feld hinzufügen" COM_CONVERTFORMS_ALL_FIELDS="Felder verwalten" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layoutfelder" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Unsichere Dateien zulassen" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Hochladen unsicherer Dateien zulassen. <br> <br> <b> Eine Datei gilt als unsicher, wenn: </b> <br> - Der Dateiname enthält ein Null-Byte. <br> - Dateierweiterung ist verboten: .php, py usw. <br> - Es gibt ein PHP-Tag im Dateiinhalt. <br> - Es gibt ein kurzes Tag im Dateiinhalt. <br> - Es gibt eine verbotene Erweiterung irgendwo im Inhalt. <br> < br> Diese Option schützt Sie auch vor unsicheren Dateien, die in komprimierten Dateien wie zip, rar, tar usw. enthalten sind. " COM_CONVERTFORMS_LABEL_POSITION="Etikettenposition" COM_CONVERTFORMS_LABEL_POSITION_DESC="Position der Feldbezeichnung festlegen" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Ungültige Antwort" COM_CONVERTFORMS_INVALID_TASK="Ungültige Aufgabe" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Bitte warten Sie, bis der Datei-Upload abgeschlossen ist." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Maske ist unvollständig" COM_CONVERTFORMS_SUBMISSION_ID="Übermittlungs-ID" COM_CONVERTFORMS_SUBMISSION_DATE="Einreichungsdatum" COM_CONVERTFORMS_SUBMISSION_STATUS="Übermittlungsstatus" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID der Übermittlungskampagne" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID des Übermittlungsformulars" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" COM_CONVERTFORMS_SUBMISSION_USER_ID="Benutzer ID der Übermittlung" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Anzahl der Einreichungen" COM_CONVERTFORMS_FIELD_RATING="Bewertung" COM_CONVERTFORMS_FIELD_RATING_DESC="Fügen Sie Ihrem Formular eine Bewertung hinzu und ermöglichen Sie Benutzern, eine oder mehrere Bewertungen abzugeben. " COM_CONVERTFORMS_FIELD_RATING_ICON="Symbol" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Wählen Sie eines der acht integrierten Symboldesigns für Ihr Bewertungsfeld aus. " COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Legen Sie die Größe der Bewertungssymbole fest. " COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Farbe bei Auswahl" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Wählen Sie die Farbe aus, die verwendet wird, wenn ein Bewertungssymbol ausgewählt oder mit der Maus darüber bewegt wird. " COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Farbe - Nichts augewählt" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Wählen Sie die Farbe aus, die verwendet wird, wenn kein Bewertungssymbol ausgewählt ist. " COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximalbewertung" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Maximale Anzahl von Bewertungssymbolen die angezeigt wird." COM_CONVERTFORMS_FIELD_RANGESLIDER="Bereichsschieberegler " COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Fügen Sie Ihrem Formular einen Bereichsschieberegler hinzu und ermöglichen Sie Benutzern, einen Wert mithilfe einer Schieberegleroberfläche auszuwählen. " COM_CONVERTFORMS_FIELD_COLORPICKER="Farbwähler" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Im Farbauswahlfeld können Benutzer eine Farbe angeben, indem sie entweder eine visuelle Farbauswahl verwenden oder ihre eigene Farbe im Hexadezimalformat eingeben. " COM_CONVERTFORMS_MIN_CHARS="Mindestzeichen" COM_CONVERTFORMS_MIN_CHARS_DESC="Mindestlänge für dieses Feld in Zeichen. Geben Sie 0 für unbegrenzt ein." COM_CONVERTFORMS_MAX_CHARS="Maximale Zeichenanzahl" COM_CONVERTFORMS_MAX_CHARS_DESC="Maximale Länge für dieses Feld in Zeichen. 0 für unbegrenzt eingeben." COM_CONVERTFORMS_MIN_WORDS="Minimale Wörteranzahl" COM_CONVERTFORMS_MIN_WORDS_DESC="Mindestlänge für dieses Feld in Worten. 0 für unbegrenzt eingeben." COM_CONVERTFORMS_MAX_WORDS="Maximale Wörteranzahl" COM_CONVERTFORMS_MAX_WORDS_DESC="Maximale Länge für dieses Feld in Worten. 0 für unbegrenzt eingeben." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Bitte verlängern Sie diesen Text auf %s Zeichen oder mehr. Sie verwenden derzeit %s Zeichen" COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Bitte kürzen Sie diesen Text auf %s Zeichen oder weniger. Sie verwenden derzeit %s Zeichen" COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Bitte verlängern Sie diesen Text auf %s Wörter oder mehr. Sie verwenden derzeit %s Wörter" COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Bitte kürzen Sie diesen Text auf %s Wörter oder weniger. Sie verwenden derzeit %s Wörter" COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Geben Sie den Mindestwert des Schiebereglers ein. " COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Geben Sie den maximalen Wert des Schiebereglers ein. " COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Geben Sie die Schrittweite des Schiebereglers ein. " COM_CONVERTFORMS_FIELD_RATINGS_HALF="Halbe Bewertungen " COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Unterstützt werden zum Bespiel Bewertungen wie: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Stellen Sie dem Benutzer einen Rich-Text-Editor bereit, um seine Antworten in diesem Feld zu formatieren. " COM_CONVERTFORMS_EDITOR_HEIGHT="Editorhöhe " COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Legen Sie die Höhe in Pixel fest " COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Wählen Sie den Joomla-Editor aus, der für dieses Feld verwendet werden soll. <br><br>Wenn Sie keine Editoren in der Liste sehen, stellen Sie sicher, dass Sie mindestens ein Joomla Editor Plugin über den Joomla Plugins Manager installiert und aktiviert haben. " COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla-Editor nicht gefunden: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s der Übermittlungen exportiert" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Ihr Download wird automatisch gestartet. " COM_CONVERTFORMS_EXPORT_WORKING="Exportiere" COM_CONVERTFORMS_EXPORT_PROCESSING="%s von %s Übermittlungen verarbeitet." COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Kann die exportierte Datei nicht finden" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Jetzt hCaptcha konfigurieren " COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stoppen Sie das Senden von Spam-Nachrichten mit hCaptcha " COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Wählen Sie aus, ob Sie das Kontrollkästchen oder die unsichtbare Version von hCaptcha verwenden möchten. " COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="Die PHP-Erweiterung <b>fileinfo</b> ist erforderlich, um den Mime-Typ der hochgeladenen Dateien zu ermitteln. Die Erweiterung ist aber nicht installiert oder nicht geladen. Bitte kontaktieren Sie Ihren Provider, um es zu installieren. " ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Standardstatus der Übermittlung " COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Legen Sie den Standardstatus jeder neuen Übermittlung fest. " ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signatur" COM_CONVERTFORMS_FILTER_SEARCH="Filtersuche" COM_CONVERTFORMS_FILTER_SEARCH_DESC="Geben Sie einen Suchbegriff ein, um nach Einreichungen zu suchen. Sie können Einreichungen auch nach ihrer ID filtern, indem Sie die Syntax id: 1,2,3 verwenden" COM_CONVERTFORMS_FIELD_CAPTCHA="Mathemathisches Captcha" COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Bitten Sie die Benutzer, eine zufällig generierte grundlegende mathematische Aufgabe zu lösen, bevor sie das Formular erfolgreich absenden können." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Die Antwort ist leider falsch." ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]�2)��Ecomponents/com_convertforms/language/pt-BR/pt-BR.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Projeto" COM_CONVERTFORMS_BEHAVIOR="Comportamento" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="Nenhum %s foi encontrado" COM_CONVERTFORMS_CREATE_NEW="Criar um novo?" COM_CONVERTFORMS_EMAIL_ASCENDING="E-mail crescente" COM_CONVERTFORMS_EMAIL_DESCENDING="E-mail decrescente" COM_CONVERTFORMS_ACTIONS="Ações" COM_CONVERTFORMS_VIEW_LEADS="Visualizar Envios" NRI_PLG_CONVERTFORMS="Plugin do Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Configuração do Convert Forms" COM_CONVERTFORMS_LOADCSS="Carregar CSS" COM_CONVERTFORMS_LOADCSS_DESC="Selecione para carregar a folha de estilos (CSS) da extensão. Você pode desativar isso, se você colocar todos os seus próprios estilos em outra folha de estilo, como o campo Código Personalizado ou a folha de estilos do template." COM_CONVERTFORMS_DEBUG="Depurar" ; COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." COM_CONVERTFORMS_FORMS="Formulários" COM_CONVERTFORMS_FORM="Formulário" COM_CONVERTFORMS_NEW_FORM="Novo Formulário" COM_CONVERTFORMS_EDIT_FORM="Editar Formulário" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formulários copiados" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formulários publicados" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulários despublicados" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formulários na lixeira" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formulários excluídos" COM_CONVERTFORMS_FORM_ASCENDING="Formulário crescente" COM_CONVERTFORMS_FORM_DESCENDING="Formulário decrescente" COM_CONVERTFORMS_FORM_SELECT="- Selecionar Formulário -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publicar a criação de um módulo" COM_CONVERTFORMS_FORM_LEADS="Este formulário tem o total de %s envios até agora" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publicar usando código curto: %s" COM_CONVERTFORMS_CAMPAIGN="Campanha" COM_CONVERTFORMS_CAMPAIGNS="Campanhas" COM_CONVERTFORMS_NEW_CAMPAIGN="Nova Campanha" COM_CONVERTFORMS_EDIT_CAMPAIGN="Editar Campanha" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Entre o nome da campanha. Este nome não pode ser visto por mais ninguém." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campanhas copiadas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campanhas despublicadas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campanhas publicadas" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campanhas na lixeira" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campanhas excluídas" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s registros despublicados" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s registros publicados" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s registros no lixo" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s registros apagados" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campanha crescente" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campanha decrescente" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Selecionar Campanha -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Por favor, salve a campanha para configurar sua integração." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campanha alterada" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sicronizar Envios" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Escolha se os seus envios devem ser sincronizados com softwares de terceiros ou coletados apenas em seu banco de dados. <Br> Nota: Se você precisar integrar-se a softwares de terceiros, como MailChimp, Aweber, GetResponse, Active Campaign, etc, instale o respectivo complemento na seção Complementos.." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campanhas excluídas" COM_CONVERTFORMS_CHOOSE_SERVICE="Escolher Serviço" COM_CONVERTFORMS_PENDING_LEADS="Envios Pendentes" COM_CONVERTFORMS_SUBMISSIONS="Registros" COM_CONVERTFORMS_SUBMISSION="Envio" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Últimos registos" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmados" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="por confirmar" COM_CONVERTFORMS_EDIT_CONVERSION="Editar Envio" COM_CONVERTFORMS_SUBMISSION_INVALID="Registro não encontrado" COM_CONVERTFORMS_NOT_AUTHORIZED="Não estas autorizado a aceder a esta página." COM_CONVERTFORMS_LEADS_ASC="Envios crescente" COM_CONVERTFORMS_LEADS_DESC="Envios decrescente" COM_CONVERTFORMS_LEADS_EXPORT="Exportar Envios" COM_CONVERTFORMS_ADDONS="Complementos" COM_CONVERTFORMS_INSTALL_ADDONS="Veja os Addons instalados" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Para ser capaz de instalar os Complementos do Convert Forms, você precisará digitar sua Chave de Download nas configurações do Plugin Novarain Framework." COM_CONVERTFORMS_ADDONS_DESC="Complementos estende a funcionalidade do Convert Forms. Comestes complementos, você pode conectar com softwares de terceiros, integrar novos recursos e tornar o Convert Forms sempre mais poderoso." COM_CONVERTFORMS_LAST_YEAR="Último Ano" COM_CONVERTFORMS_THIS_YEAR="Este Ano" COM_CONVERTFORMS_LAST_MONTH="Último Mês" COM_CONVERTFORMS_THIS_MONTH="Este Mês" COM_CONVERTFORMS_LAST_WEEK="Última Semana" COM_CONVERTFORMS_THIS_WEEK="Esta Semana" COM_CONVERTFORMS_LAST_7_DAYS="Últimos 7 Dias" COM_CONVERTFORMS_YESTERDAY="Ontem" COM_CONVERTFORMS_TODAY="Hoje" COM_CONVERTFORMS_AVG_DAY="Média do dia (este mês)" COM_CONVERTFORMS_PROJECTION="Projeção para este mês" COM_CONVERTFORMS_TOTAL="Total" COM_CONVERTFORMS_CHOOSE_FILE="Escolha um arquivo .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Um nome único e descritivo irá ajudá-lo no futuro, como ele apareceria no painel de controle, análise, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Fonte da Imagem de Fundo" COM_CONVERTFORMS_IMAGE_DESC="Escolha a fonte da imagem de fundo." COM_CONVERTFORMS_CUSTOM_URL="URL Personalizada" COM_CONVERTFORMS_BACKGROUND_URL="URL da Imagem de Fundo" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Digite a URL personalizada para a sua imagem." COM_CONVERTFORMS_BACKGROUND_FILE="Imagem de Fundo" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Selecione uma imagem para carregar." ; COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." COM_CONVERTFORMS_FORM_BUILDER="Construtor de Formulário" COM_CONVERTFORMS_FIELD_TYPE="Tipo de Campo" COM_CONVERTFORMS_FIELD_TYPE_DESC="O atributo Tipo de Campo especifica o tipo de elemento de entrada a ser exibido." COM_CONVERTFORMS_FIELD_LABEL="Rótulo do Campo" COM_CONVERTFORMS_FIELD_LABEL_DESC="O rótulo de campo define um rótulo para um elemento de entrada." ; COM_CONVERTFORMS_FIELD_NAME="Field Name" COM_CONVERTFORMS_FIELD_NAME_DESC="Especifica o nome do elemento de entrada que é usado para referenciar os dados do formulário após o envio de um formulário. Use esta opção também para mapear campos de formulário com aplicativos de integração." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="O texto que você gostaria de exibir no campo, antes de um usuário digitar qualquer dado." COM_CONVERTFORMS_REQUIRED_NAME="Campo Obrigatório" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Campos" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Você está usando a versão <b>Gratuíta</b> que suporta apenas 1 campo de e-mail. <b>Atualizar para a versão Pro</b> para gerenciar campos ilimitados." COM_CONVERTFORMS_GENERAL="Geral" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Alinhar Texto do Campo" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="O alinhamento do texto do campo." COM_CONVERTFORMS_INPUT_COLOR="Cor do Texto do Campo" COM_CONVERTFORMS_INPUT_BGCOLOR="Cor de Fundo do Campo" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Cor da Borda do Campo" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adiciona uma sombra interna para o campo de entrada." COM_CONVERTFORMS_INPUT_FONT_SIZE="Tamanho da Fonte do Campo" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="O tamanho da fonte do campo." COM_CONVERTFORMS_VPADDING_SIZE="Padding Vertical" COM_CONVERTFORMS_HPADDING_SIZE="Padding Horizontal" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Largura Máxima da Caixa" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Forneça uma largura máxima personalizada de sua escolha ou faça com que esta caixa cubra toda a área da tela. Observe que esta é a largura máxima que significa que o formulário sempre caberá em áreas menores." COM_CONVERTFORMS_FORM_WIDTH="Largura Máxima Personalizada" COM_CONVERTFORMS_FORM_WIDTH_DESC="Forneça uma largura máxima personalizada da sua escolha." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remover Padding Padrão" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove o padding padrão entre a área do conteúdo e as bordas da caixa de formulário." COM_CONVERTFORMS_FORM_BORDER_STYLE="Estilo da Borda" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Aplica uma borda ao redor do formulário." COM_CONVERTFORMS_FORM_BORDER_COLOR="Cor da Borda" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="A cor da borda do formulário." COM_CONVERTFORMS_FORM_BORDER_WIDTH="Largura da Borda" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="A largura da borda do formulário." COM_CONVERTFORMS_BOX_RADIUS="Raio da Caixa" COM_CONVERTFORMS_BORDER_RADIUS="Raio da Borda" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Digite o tamanho do raio da borda." COM_CONVERTFORMS_COLLECT_LEADS_USING="Coletar Envios Usando a Campanha" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Os envios coletados por este formulário serão associadas à campanha selecionada. Você pode gerenciar as campanhas na seção Campanhas." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Ação de Envio com Sucesso" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Escolha a ação que você gostaria de ter lugar após um envio com sucesso." COM_CONVERTFORMS_DISPLAY_MSG="Exibir Mensagem" COM_CONVERTFORMS_REDIRECT_USER="Redirecionar Usuário" COM_CONVERTFORMS_SUCCESS_TEXT="Mensagem Após Sucesso" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Digite a mensagem que você gostaria de mostrar ao usuário após adicionar com sucesso para a lista." COM_CONVERTFORMS_SUCCESS_URL="Redirecionar URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Digite o URL em que você gostaria de redirecionar o usuário após adicionar com sucesso para a lista." COM_CONVERTFORMS_PASS_DATA="Passar Dados de Envio para Redirecionar URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Estilo do Botão Enviar" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="O estilo do seu botão com efeitos agradáveis." COM_CONVERTFORMS_BTN_SHADOW_DESC="Adiciona uma sombra externa ao botão" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Cor Hover do Texto" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="A cor do texto ao passar o mouse sobre." COM_CONVERTFORMS_CUSTOM_CSS="Personalizar CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." COM_CONVERTFORMS_CLASS_SUFFIX="Sufixo de Classe" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="O sufixo de classe." COM_CONVERTFORMS_TEXTAREA_HEIGHT="Altura da Área de Texto" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="A altura da área de texto específica a altura visível de uma área de texto, em linhas." COM_CONVERTFORMS_CHOICES="Escolhas" COM_CONVERTFORMS_CHOICES_DESC="Adiciona opções para o campo de formulário." COM_CONVERTFORMS_FIELD_VALUE="Valor Padrão" COM_CONVERTFORMS_FIELD_VALUE_DESC="Digite o texto para o valor do campo padrão." COM_CONVERTFORMS_HIDE_LABELS="Ocultar Rótulo" COM_CONVERTFORMS_HIDE_LABELS_DESC="Marque esta opção para ocultar o rótulo do campo do formulário." COM_CONVERTFORMS_IMAGE_SOURCE="Fonte da Imagem" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Você pode fornecer uma imagem que seria exibida entre o conteúdo do formulário. Escolha <b>Carregar</b> para carregar uma nova imagem ou <b>URL Personalizada</b> para digitar uma URL da imagem personalizada." COM_CONVERTFORMS_IMAGE_URL="URL da Imagem" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Ocultar Imagem em Telas Menores" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Em telas menores como celulares, os modais menores parecem mais bonitos. Para reduzir o tamanho do modal, você pode ocultar a imagem com esta configuração." COM_CONVERTFORMS_HORIZONTAL_POSITION="Posição Horizontal" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="A posição horizontal." COM_CONVERTFORMS_VERTICAL_POSITION="Posição Vertical" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="A posição vertical." COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Largura da Imagem" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Defina a largura da imagem." COM_CONVERTFORMS_BUTTON_ALIGN="Alinhamento do Botão" COM_CONVERTFORMS_FORM_POSITION="Posição do Formulário" COM_CONVERTFORMS_FORM_POSITION_DESC="Defina a posição do formulário em relação ao container da texto." COM_CONVERTFORMS_FORM_SIZE="Tamanho do Container do Formulário" COM_CONVERTFORMS_COLUMNS_DESC="Especifique quantas colunas serão usadas. 6 colunas levam 50% de largura." COM_CONVERTFORMS_MESSAGE="Mensagem de Texto" COM_CONVERTFORMS_MESSAGE_DESC="Digite a mensagem de texto do formulário." COM_CONVERTFORMS_IMAGE_POSITION="Posição da Imagem" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Defina a posição da imagem em relação ao texto." COM_CONVERTFORMS_FOOTER="Rodapé do Formulário" COM_CONVERTFORMS_BUTTON_TEXT="Texto do Botão" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Digite o rótulo do texto do botão." COM_CONVERTFORMS_BTN_FONT_SIZE="Tamanho do Texto do Botão" COM_CONVERTFORMS_IMAGE_SIZE="Tamanho do Container da Imagem" COM_CONVERTFORMS_BODY_FONT="Família de Fonte" COM_CONVERTFORMS_BODY_FONT_DESC="Escolha a família de fontes que deve ser usada para o formulário. Lembre-se de que o carregamento de fontes não padrão, como o Google Fonts, pode afetar a velocidade do seu site. Selecione Padrão para usar a fonte padrão do seu site." COM_CONVERTFORMS_EMAIL="E-mail" COM_CONVERTFORMS_DATE="Data" COM_CONVERTFORMS_CREATED="Data de Criação" COM_CONVERTFORMS_SUBMISSION="Envio" COM_CONVERTFORMS_PREVIEW_SUCCESS="Prévisualizar mensagem de sucesso" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Esta versão será exibida em telas de tamanho 990px e acima" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Esta versão será exibida em telas de tamanho 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Esta versão será exibida em telas de tamanho 768px e abaixo" COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Celular" COM_CONVERTFORMS_RESET_FORM="Redefinir Formulário" COM_CONVERTFORMS_RESET_FORM_DESC="Redefine o formulário após o envio com sucesso." COM_CONVERTFORMS_HIDE_FORM="Ocultar Formulário" COM_CONVERTFORMS_HIDE_FORM_DESC="Oculta o formulário após o envio com sucesso" COM_CONVERTFORMS_TEMPLATES="Templates" COM_CONVERTFORMS_TEMPLATES_SELECT="Selecione um template para iniciar" COM_CONVERTFORMS_TEMPLATES_BLANK="Começar do zero" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Comece do zero um novo formulário." COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Em Linha" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Barra Lateral" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Barras" COM_CONVERTFORMS_LABELS_COLOR="Cor do Texto do Rótulo" COM_CONVERTFORMS_LABELS_FONT_SIZE="Tamanho da Fonte do Rótulo" COM_CONVERTFORMS_IMAGE_ABOVE="Acima do Texto" COM_CONVERTFORMS_IMAGE_BELOW="Abaixo do Texto" COM_CONVERTFORMS_IMAGE_RIGHT="Direita do Texto" COM_CONVERTFORMS_IMAGE_LEFT="Esquerda do Texto" COM_CONVERTFORMS_FLAT="Plano" COM_CONVERTFORMS_OUTLINE="Contorno" COM_CONVERTFORMS_GRADIENT="Gradiente" COM_CONVERTFORMS_EMAILS_DESC="Envia notificações por e-mail quando usuários enviar um formulário." COM_CONVERTFORMS_EMAILS="E-mail de Notificações" COM_CONVERTFORMS_EMAILS_REPLY_TO="Responder para E-mail" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Responder para Nome" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Remetente" COM_CONVERTFORMS_EMAILS_FROM="Nome do remetente " COM_CONVERTFORMS_EMAILS_RECIPIENT="Enviar do e-mail" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Digite os endereços de e-mail para receber notificações de envio. Para várias notificações, separe os endereços de email com uma vírgula." COM_CONVERTFORMS_EMAILS_SUBJECT="Assunto do e-mail" COM_CONVERTFORMS_EMAILS_BODY="Mensagem" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Você quer várias notificações? <br><a href='#' data-pro-only='Notificações Ilimitadas'>Atualizar para PRO</a> para desbloqueá-lo." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Anexos" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Você está faltando um addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Caso você esteja sentindo a falta de um complemento de integração para o seu aplicativo favorito, por favor, deixe-nos saber e teremos o maior prazer de incluí-lo na coleção de complementos do Convert Forms ." COM_CONVERTFORMS_API_ENABLE="Ativar API JSON" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." COM_CONVERTFORMS_API_KEY="Chave Secreta" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." COM_CONVERTFORMS_IMAGE_ALT="Alt da Imagem" COM_CONVERTFORMS_IMAGE_ALT_DESC="O texto alternativo da imagem." COM_CONVERTFORMS_CUSTOM_CODE="Código Personalizado" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." COM_CONVERTFORMS_ISSUES="Problemas" COM_CONVERTFORMS_ISSUES_DETECTED="%s problemas de envio detectados" COM_CONVERTFORMS_CREATED="Data de Criação" COM_CONVERTFORMS_MODIFIED="Data da modificação" COM_CONVERTFORMS_IP="Endereço de IP do Remetente" COM_CONVERTFORMS_USER_ID="ID do Remetente" COM_CONVERTFORMS_USER_USERNAME="Nome de Usuário do Remetente" COM_CONVERTFORMS_VISITOR_ID="ID do Visitante" COM_CONVERTFORMS_FORM_NAME="Nome do Formulário" COM_CONVERTFORMS_CAMPAIGN_NAME="Nome da Campanha" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Colunas" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Para ativar campos de formulário específicos, selecione um primeiro um formulário na barra de filtros." COM_CONVERTFORMS_UNTITLED_BOX="Formulário sem Título" COM_CONVERTFORMS_SELECT_LAYOUT="Selecione seu Layout" COM_CONVERTFORMS_SHOW_LAYOUTS="Exibir Layouts" COM_CONVERTFORMS_HIDE_LAYOUTS="Ocultar Layouts" COM_CONVERTFORMS_FIELDS_COPY="Campo Duplicado" COM_CONVERTFORMS_FIELDS_DELETE="Excluir campo" COM_CONVERTFORMS_FIELDGROUP_COMMON="Campos Comuns" COM_CONVERTFORMS_FIELDGROUP_FANCY="Campos Fantasia" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Campos Avançados" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Adicione texto livre personalizado ou código HTML. Sem limites!" COM_CONVERTFORMS_FIELD_TEXT="Caixa de Texto" COM_CONVERTFORMS_FIELD_TEXT_DESC="Um campo de caixa de texto de linha única." COM_CONVERTFORMS_FIELD_TEXTAREA="Área de Texto" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Como um campo de caixa de texto, mas pode acomodar uma entrada de usuário de várias linhas." COM_CONVERTFORMS_FIELD_NUMBER="Número" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Uma caixa de texto que aceita apenas números" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Passo" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="A quantidade que o valor mudará quando uma seta for pressionada." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Valor Mínimo" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="O valor mínimo que o campo permitirá." COM_CONVERTFORMS_FIELD_NUMBER_MAX="Valor Máximo" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="O valor máximo que o campo permitirá." COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Parar envios de formulários de spam usando o Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Por favor, defina seu site e chave secreta na página de configuração." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configurar reCAPTCHA agora" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="A cor do tema do widget." COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="O tamanho do widget." COM_CONVERTFORMS_FIELD_DROPDOWN="Menu Suspenso" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Lista que permite uma seleção de um menu suspenso." COM_CONVERTFORMS_FIELD_RADIO="Botões de Opção" COM_CONVERTFORMS_FIELD_RADIO_DESC="Lista que permite uma seleção de botões de opção." COM_CONVERTFORMS_FIELD_URL="Website / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Aceita um URL formado corretamente que comece com http:// ou https://." COM_CONVERTFORMS_FIELD_URL_INVALID="URL Inválido" COM_CONVERTFORMS_FIELD_COUNTRY="País" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Lista de todos os países conhecidos." COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detectar País do Visitante" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Se ativado, o formulário tentará detectar e preencher o país do visitante. Requer que o plugin TGeoIP seja instalado." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Países excluídos" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Moeda" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Lista de todas as moedas conhecidas." COM_CONVERTFORMS_FIELD_SUBMIT="Botão de Envio" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="O botão que enviará o formulário." COM_CONVERTFORMS_FIELD_HIDDEN="Campo Oculto" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Um campo não visível pelo usuário no front-end." COM_CONVERTFORMS_FIELD_EMAIL="Endereço de E-mail" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Uma caixa de texto que aceita apenas um endereço de email válido." COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Termos de Serviço" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Exigir que o usuário concorde com seus termos de serviço antes que eles possam enviar o formulário." COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Texto dos Termos de Serviço" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Este é o texto que vai logo após a caixa de seleção." COM_CONVERTFORMS_FIELD_CHECKBOX="Caixas de Seleção" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Lista que permite várias seleções em caixas de seleção." COM_CONVERTFORMS_FIELD_REQUIRED="É requerido" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Endereço de e-mail inválido!" COM_CONVERTFORMS_FIELD_SIZE="Tamanho do Campo" COM_CONVERTFORMS_FIELD_SIZE_DESC="Selecione o tamanho do campo de formulário padrão" ; COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Permite que o usuário digite um número de telefone." COM_CONVERTFORMS_FIELD_DATETIME="Data / Hora" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Seletor de data / hora que permite a seleção de uma única data, várias datas ou até mesmo um período." COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Formato da Data" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="O formato da data de saída. Exemplos:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Exibir Seletor de Hora" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Habilita o selecionador de hora. Se ativado, inclua os caracteres de hora (H: i) no campo Formato de data." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Data Mínima" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="A data mínima / mais antiga permitida para seleção. Suporta formatos de data relativos como: hoje, amanhã, +5 dia, +2 semana." COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Data Máxima" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="A data máxima / última permitida para seleção. Suporta formatos de data relativos como: hoje, amanhã, +5 dia, +2 semana." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Modo de Seleção de Data" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Permitir que o usuário selecione uma data única, várias datas em um período." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Hora 24 horas" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Exibe o selecionador de hora no modo 24 horas sem seleção AM / PM." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Passo do Minuto" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Ajusta o passo para a entrada de minuto no Seletor de Hora." COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Exibir em Linha" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Exibe o calendário em linha como um pop-up." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Tema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Selecione um tema de calendário." COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Formato de data inválida - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Desativar Seletor Nativo" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Defina como Sim para sempre usar o seletor não nativo em dispositivos móveis." COM_CONVERTFORMS_CSS_CLASSES="Classe de CSS" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Introduzir Classe de CSS" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Desativar Autocompletar do Navegador" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Por padrão, os navegadores lembram informações que o usuário envia por meio de campos de entrada. Para desativar o preenchimento automático em formulários, ative esta opção." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Verificar DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validar o endereço de e-mail fornecido com uma verificação de DNS." COM_CONVERTFORMS_FIELD_CONFIRM="Confirmar" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Um campo para garantir que dois campos correspondam" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirmar Chave do Campo" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Digite a chave do campo que será usada para garantir a correspondência do valor." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="O campo não está configurado corretamente!" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Os valores de campo não correspondem!" COM_CONVERTFORMS_HIDE_TEXT="Ocultar Texto" COM_CONVERTFORMS_HIDE_TEXT_DESC="Oculta o texto após envio com sucesso." COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Falta um campo de e-mail no formulário!" COM_CONVERTFORMS_INVALID_LEAD="Não é possível validar o objeto de envio!" COM_CONVERTFORMS_EXCEL_SECURITY="Segurança do Excel" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Se ativado, os valores no arquivo exportado CSV que começam com a =, +, - ou @ serão prefixados por uma guia para evitar qualquer injeção de CSV ao abrir o arquivo exportado usando o Excel. <br> <br> Desative esta opção somente se você tiver 100% de certeza de que os dados são confiáveis ou se estiver enfrentando dificuldades para importar o arquivo CSV para um aplicativo de terceiros." COM_CONVERTFORMS_CHOICE_LAYOUT="Escolher Layout" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Selecione o layout para exibir opções do campo." COM_CONVERTFORMS_CHOICE_1_COLUMN="Uma Coluna" COM_CONVERTFORMS_CHOICE_2_COLUMN="Duas Colunas" COM_CONVERTFORMS_CHOICE_3_COLUMN="Três Colunas" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Lado a lado" COM_CONVERTFORMS_REQUIRED_INDICATION="Indicação de Campo Requerido" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indique os campos obrigatórios com um asterisco ao lado de cada rótulo de campo. Requer que o rótulo do campo não fique oculto." COM_CONVERTFORMS_INPUT_MASK="Máscara de Entrada" COM_CONVERTFORMS_INPUT_MASK_DESC="Ajuda o usuário com a entrada, garantindo um formato predefinido. <br><br><b>Sintaxe:</b><br>9: Numérico (0-9)<br>a: Alfabético (a-z ou A-Z)<br>A: Alfabeto em maiúsculas (A-Z)<br>*: Alfanumérico (0-9, a-z, ou A-Z)<br>&: Alfanumérico em maiúsculas (0-9 ou A-Z)<br><br><b>Exemplos</b>:<br>Telefone: +1 (999)-9999<br>Data: 99/99/9999<br>CEP: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Dados Enviados pelo Usuário" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Registos não encontrados" COM_CONVERTFORMS_LEAD_INFO="Informações de Envio" COM_CONVERTFORMS_NOTES="Notas" COM_CONVERTFORMS_DATE_RANGE="Intervalo de Data" COM_CONVERTFORMS_START_DATE="Data Inicial" COM_CONVERTFORMS_END_DATE="Data Final" COM_CONVERTFORMS_PERIOD="Período" COM_CONVERTFORMS_PERIOD_SELECT="- Selecionar Período -" COM_CONVERTFORMS_HONEYPOT="Ativar Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Ative para adicionar um campo Honeypot ao formulário que é visível somente para robôs. Dessa forma, quando o campo do honeypot é preenchido, o formulário pode saber automaticamente que o usuário era um spambot.<br><br>Em muitos sites, este honeypot é suficiente por si só para evitar entradas de spam. Se você ainda estiver recebendo spam ou se quiser tomar uma precaução extra, o reCAPTCHA é uma ótima opção adicional." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Carregar Arquivo" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Dê ao usuário a capacidade de fazer upload de arquivos." ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limitar Arquivos" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Quantos arquivos podem ser enviados? Digite 0 para sem limite." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Limitar Tamanho do Arquivo" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure o tamanho máximo permitido para cada arquivo enviado em megabytes. Digite 0 para sem limite. <br><br>O tamanho máximo de upload do seu servidor é: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Tipos de Arquivos Permitido" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filtrar" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtra a entrada do usuário com base nos seguintes filtros.<br><b>Texto</b>: Converte a entrada em uma string de texto simples; retira todas as tags / atributos.<br><b>HTML Seguro</b>: Aceite apenas elementos HTML seguros, como.<br><b>Alfa Numérico</b>: Permite apenas de a-z e 0-9<br><b>Palavra</b>: Permite apenas caracteres de a-z e sublinhados<br><b>Inteiro</b>: Use apenas o primeiro valor numérico<br><b>Flutuador</b>: Permite apenas caracteres de a-z e sublinhados." COM_CONVERTFORMS_UPLOAD_ERROR="Formulário inválido ou chave de campo!" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Campo de upload inválido!" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Arquivo inválido ou não suportado!" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Você pode fazer upload de até %d arquivos!" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Arraste e solte arquivos aqui ou" COM_CONVERTFORMS_UPLOAD_BROWSE="Navagedor" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="A pasta de upload %s não existe ou não é gravável!" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="O arquivo é muito grande ({{filesize}}MB). Tamanho máximo do arquivo: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Você não pode fazer upload de arquivos desse tipo." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Seu navegador não suporta uploads de arquivos arrastar e soltar." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "O servidor respondeu com o código {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancelar upload" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Tem certeza de que deseja cancelar este upload??" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remover arquivo" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Você não pode fazer upload de mais arquivos." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Excluir Arquivos" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Se você estiver recebendo muitos uploads, o espaço do servidor usado pelos arquivos enviados poderá ser montado rapidamente, exigindo um serviço de limpeza regular para liberar espaço. <br><br>Esta opção ajuda você a excluir automaticamente arquivos armazenados na pasta Upload após um período definido. <br><br>Por exemplo, digite 3, para excluir arquivos com mais de 3 dias ou 0 se quiser manter os arquivos para sempre.<br><br>Nota: O plug-in Limpador de Arquivos Carregados de Formulários de Conversão precisa ser ativado e o respectivo URL de Trabalho Cron definido em seu servidor." COM_CONVERTFORMS_READONLY="Somente leitura" COM_CONVERTFORMS_READONLY_DESC="Prevenir inserção de dados neste campo" COM_CONVERTFORMS_PHPSCRIPT="Scripts PHP" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Exibir Formulário" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="O script PHP adicionado nessa área é executado logo antes do formulário ser exibido.<br><br>O foco principal nessa área é a variável (String) <b>$formLayout</b> que contém o código HTML do formulário.<br><br>Para acessar as configurações do formulário utilize a váriável (Array) <b>$form</b>.<br><br> Você não precisa incluir as tags <?php e ?> ." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Processamento do Formulário" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Após Envio do Formulário" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Senha" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Providencia uma forma do usuário colocar a senha de forma segura." COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirmar tipo de campo" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Preparação de Formulário" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="1%s já é membro." ; COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." COM_CONVERTFORMS_ACCESS_FORMS="Acesso a Formulários" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Os utilizadores deste grupo podem gerir formulários." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Acesso aos registros" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Os utilizadores deste grupo podem gerir os registros." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Acesso a Campanhas" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." COM_CONVERTFORMS_THANK_YOU_MESSAGE="O Formulário foi submetido com sucesso" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" COM_CONVERTFORMS_SECURITY="Segurança" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA invisível " COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Acabe com o spam dos formulários usando o reCAPTCH invisível do Google" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Em baixo à direita" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Em baixo à esquerda" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="em linha" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Registros" COM_CONVERTFORMS_SUBMISSIONS_LIST="Lista de registros" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Mostrar apenas os confirmados" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Ocultar os valores em branco" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Ative esta opção para ocultar campos com valores vazios." COM_CONVERTFORMS_SELECT_FORM="Selecionar Formulário" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" COM_CONVERTFORMS_LIST_LIMIT="Limite da Página" COM_CONVERTFORMS_LIST_LIMIT_DESC="Número de registros a mostrar por página. Introduza 0 para ficar sem limite." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Ver apenas os meus" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Mostrar paginação" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." COM_CONVERTFORMS_ORDER="Registros curtos" COM_CONVERTFORMS_ORDER_DESC="A ordem pela qual os registos são mostrados" COM_CONVERTFORMS_ORDER_RECENT="Os mais recentes primeiro" COM_CONVERTFORMS_ORDER_OLDEST="Os mais antigos primeiro" COM_CONVERTFORMS_ORDER_RANDOM="Ordem aleatória" COM_CONVERTFORMS_FILTER_USER="Mostrar registros do formulário" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Utilizador Logado" COM_CONVERTFORMS_FILTER_USER_ALL="Todos os utilizadores" COM_CONVERTFORMS_FILTER_USER_SELECT="Utilizadores específicos" COM_CONVERTFORMS_SET_USERS="IDs utilizdor" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." COM_CONVERTFORMS_LOAD_CSS="Carregar tabela de Estilos" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Tipo de Layout" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Tipo de Layout" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Selecionar Template" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Desenho da Linha" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Detalhes do Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Espaço Vazio" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Adicionar um espaço vazio no teu formulário" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Espaço vazio" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Mostrar valores" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Usar cálculo de valores" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calcular valores é genericamente usado pela calculadora. Representa um valor numérico a escolher" COM_CONVERTFORMS_FIELD_DIVIDER="Divisor" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divide o seu formulário em secções" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Estilo da borda" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Selecione o estilo da borda do divisor." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Sólido" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Tracejado " COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Pontuado " COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Largura da Borda" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Selecione a largura da borda do seu divisor" COM_CONVERTFORMS_FIELD_BORDER_COLOR="Côr da borda" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Selecione a côr da borda do seu divisor." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margem superior" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Selecione a margem superior do seu divisor" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margem inferior" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Definir a margem inferior do divisor" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Primeiro dia da Semana" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Mudar o primeiro dia da semana apresentado na data do calendário" COM_CONVERTFORMS_ENTER_LABEL="Rótulo do Campo" COM_CONVERTFORMS_ADD_FIELD="Adicionar campo" COM_CONVERTFORMS_ALL_FIELDS="Todos os campos" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Campos" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Permitir Ficheiros não seguros" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." COM_CONVERTFORMS_LABEL_POSITION="Posição da Label" COM_CONVERTFORMS_LABEL_POSITION_DESC="Selecionar a posição da label do campo" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" ; COM_CONVERTFORMS_FIELD_RATING="Rating" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." ; COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]���f � �Ecomponents/com_convertforms/language/en-GB/en-GB.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Design" COM_CONVERTFORMS_BEHAVIOR="Behavior" COM_CONVERTFORMS_LIST="List" COM_CONVERTFORMS_NO_RESULTS_FOUND="No %s found" COM_CONVERTFORMS_CREATE_NEW="Create a new one?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email ascending" COM_CONVERTFORMS_EMAIL_DESCENDING="Email descending" COM_CONVERTFORMS_ACTIONS="Actions" COM_CONVERTFORMS_VIEW_LEADS="View Submissions" NRI_PLG_CONVERTFORMS="Convert Forms Plugin" COM_CONVERTFORMS_CONFIGURATION="Convert Forms Configuration" COM_CONVERTFORMS_LOADCSS="Load Stylesheet" COM_CONVERTFORMS_LOADCSS_DESC="Select to load the extensions stylesheet. You can disable this if you place all your own styles in some other stylesheet, like the Custom Code field or the templates stylesheet" COM_CONVERTFORMS_DEBUG="Debug" COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." COM_CONVERTFORMS_FORMS="Forms" COM_CONVERTFORMS_FORM="Form" COM_CONVERTFORMS_NEW_FORM="New Form" COM_CONVERTFORMS_EDIT_FORM="Edit Form" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s forms copied" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s forms published" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s form unpublished" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s forms trashed" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s forms deleted" COM_CONVERTFORMS_FORM_ASCENDING="Form ascending" COM_CONVERTFORMS_FORM_DESCENDING="Form descending" COM_CONVERTFORMS_FORM_SELECT="- Select Form -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publish creating a module" COM_CONVERTFORMS_FORM_LEADS="This form has %s total submissions so far" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publish using shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Campaign" COM_CONVERTFORMS_CAMPAIGNS="Campaigns" COM_CONVERTFORMS_NEW_CAMPAIGN="New Campaign" COM_CONVERTFORMS_EDIT_CAMPAIGN="Edit Campaign" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Enter a campaign name. This name can not be seen by anyone else but you." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campaigns copied" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campaigns unpublished" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campaigns published" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campaigns trashed" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campaigns deleted" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s submissions unpublished" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s submissions published" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s submissions trashed" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s submissions deleted" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campaign ascending" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campaign descending" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Select Campaign -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Please save the campaign to setup your integration." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Campaign changed" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sync Submissions" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choose whether your submissions should be synced to third party softwares or to be collected in your database only. <Br>Note: If you need to integrate with third party software like MailChimp, Aweber, GetResponse, Active Campaign etc please install the respective addon in the Addons section." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campaigns deleted" COM_CONVERTFORMS_CHOOSE_SERVICE="Choose Service" COM_CONVERTFORMS_PENDING_LEADS="Pending Submissions" COM_CONVERTFORMS_SUBMISSIONS="Submissions" COM_CONVERTFORMS_SUBMISSION="Submission" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Latest Submissions" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmed" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Unconfirmed" COM_CONVERTFORMS_EDIT_CONVERSION="Edit Submission" COM_CONVERTFORMS_SUBMISSION_INVALID="Submission not found." COM_CONVERTFORMS_NOT_AUTHORIZED="You are not authorized to access this page." COM_CONVERTFORMS_LEADS_ASC="Submissions ascending" COM_CONVERTFORMS_LEADS_DESC="Submissions descending" COM_CONVERTFORMS_LEADS_EXPORT="Export Submissions" COM_CONVERTFORMS_ADDONS="Addons" COM_CONVERTFORMS_INSTALL_ADDONS="View Installed Addons" COM_CONVERTFORMS_ADDONS_MISSING_KEY="To be able to install Convert Forms Addons, you will need enter your Download Key in the settings of the Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Add-ons extend the functionality of Convert Forms. With these addons, you can connect with third party softwares, integrate new features and make Convert Forms even more powerful." COM_CONVERTFORMS_LAST_YEAR="Last Year" COM_CONVERTFORMS_THIS_YEAR="This Year" COM_CONVERTFORMS_LAST_MONTH="Last Month" COM_CONVERTFORMS_THIS_MONTH="This Month" COM_CONVERTFORMS_LAST_WEEK="Last Week" COM_CONVERTFORMS_THIS_WEEK="This Week" COM_CONVERTFORMS_LAST_7_DAYS="Last 7 Days" COM_CONVERTFORMS_YESTERDAY="Yesterday" COM_CONVERTFORMS_TODAY="Today" COM_CONVERTFORMS_AVG_DAY="Average day (this month)" COM_CONVERTFORMS_PROJECTION="Projection for this month" COM_CONVERTFORMS_TOTAL="Total" COM_CONVERTFORMS_CHOOSE_FILE="Choose a .cnvf file" COM_CONVERTFORMS_FORMS_NAME_DESC="A unique & descriptive name will help you in future as it would appear in the dashboard, analytics, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Background Image Source" COM_CONVERTFORMS_IMAGE_DESC="Choose the background image source" COM_CONVERTFORMS_CUSTOM_URL="Custom URL" COM_CONVERTFORMS_BACKGROUND_URL="Background Image URL" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Enter custom URL for your image" COM_CONVERTFORMS_BACKGROUND_FILE="Background Image" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Select an image to upload." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." COM_CONVERTFORMS_FORM_BUILDER="Form Builder" COM_CONVERTFORMS_FIELD_TYPE="Field Type" COM_CONVERTFORMS_FIELD_TYPE_DESC="The Field Type attribute specifies the type of input element to display." COM_CONVERTFORMS_FIELD_LABEL="Field Label" COM_CONVERTFORMS_FIELD_LABEL_DESC="The Field Label defines a label for an input element." COM_CONVERTFORMS_FIELD_NAME="Field Name" COM_CONVERTFORMS_FIELD_NAME_DESC="It specifies the name of input element which is used to reference form data after a form is submitted. Use this option also to map form fields with integrations apps." COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="The text you would like displayed in the field, before a user enters any data." COM_CONVERTFORMS_REQUIRED_NAME="Required Field" COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Fields" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="You are using the <b>Free</b> version which supports only 1 email field. <b>Upgrade to Pro version</b> to be able to manage unlimited fields." COM_CONVERTFORMS_GENERAL="General" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Field Text Alignment" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Form Text Alignment" COM_CONVERTFORMS_INPUT_COLOR="Field Text Color" COM_CONVERTFORMS_INPUT_BGCOLOR="Field Background Color" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Field Border Color" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adds an inner shadow to the input field" COM_CONVERTFORMS_INPUT_FONT_SIZE="Field Font Size" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Field Font Size" COM_CONVERTFORMS_VPADDING_SIZE="Vertical Padding" COM_CONVERTFORMS_HPADDING_SIZE="Horizontal Padding" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Width" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provide a custom max width of your choice or make this box cover entire screen area. Note that this is the max width which means the form will always fit on smaller areas." COM_CONVERTFORMS_FORM_WIDTH="Custom Max Width" COM_CONVERTFORMS_FORM_WIDTH_DESC="Provide custom max width of your choice." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remove Default Padding" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove the default padding between content area and form box edges." COM_CONVERTFORMS_FORM_BORDER_STYLE="Border Style" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apply a border around the form" COM_CONVERTFORMS_FORM_BORDER_COLOR="Border Color" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Form Border Color" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Border Width" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="The form's border width" COM_CONVERTFORMS_BOX_RADIUS="Box Radius" COM_CONVERTFORMS_BORDER_RADIUS="Border Radius" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Enter border's radius size" COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choose the action you would like to take place after a successful submission" COM_CONVERTFORMS_DISPLAY_MSG="Display message" COM_CONVERTFORMS_REDIRECT_USER="Redirect user" COM_CONVERTFORMS_SUCCESS_TEXT="Message After Success" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Enter the message you would like to display the user after successfully added to the list." COM_CONVERTFORMS_SUCCESS_URL="Redirect URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Submit Button Style" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" COM_CONVERTFORMS_CUSTOM_CSS="Custom CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." COM_CONVERTFORMS_CHOICES="Choices" COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." COM_CONVERTFORMS_FIELD_VALUE="Default Value" COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." COM_CONVERTFORMS_HIDE_LABELS="Hide Label" COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" COM_CONVERTFORMS_IMAGE_SOURCE="Image Source" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." COM_CONVERTFORMS_IMAGE_URL="Image URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Hide Image on Small Screens" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontal Position" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontal Position" COM_CONVERTFORMS_VERTICAL_POSITION="Vertical Position" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertical Position" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Image Width" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" COM_CONVERTFORMS_FORM_POSITION="Form Position" COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" COM_CONVERTFORMS_FORM_SIZE="Form Container Size" COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." COM_CONVERTFORMS_MESSAGE="Text Message" COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" COM_CONVERTFORMS_IMAGE_POSITION="Image Position" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" COM_CONVERTFORMS_FOOTER="Form Footer" COM_CONVERTFORMS_BUTTON_TEXT="Button Text" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" COM_CONVERTFORMS_BODY_FONT="Font Family" COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Date" COM_CONVERTFORMS_CREATED="Date Created" COM_CONVERTFORMS_SUBMISSION="Submission" COM_CONVERTFORMS_PREVIEW_SUCCESS="Preview success message" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" COM_CONVERTFORMS_DEVICE_DESKTOP="Desktop" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" COM_CONVERTFORMS_RESET_FORM="Reset Form" COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" COM_CONVERTFORMS_HIDE_FORM="Hide Form" COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" COM_CONVERTFORMS_TEMPLATES="Templates" COM_CONVERTFORMS_TEMPLATES_SELECT="Select a template to start" COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" COM_CONVERTFORMS_IMAGE_BELOW="Below Text" COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" COM_CONVERTFORMS_FLAT="Flat" COM_CONVERTFORMS_OUTLINE="Outline" COM_CONVERTFORMS_GRADIENT="Gradient" COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." COM_CONVERTFORMS_EMAILS="Email Notifications" COM_CONVERTFORMS_EMAILS_REPLY_TO="Reply-To Email" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Reply-To Name" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="From Email" COM_CONVERTFORMS_EMAILS_FROM="From Name" COM_CONVERTFORMS_EMAILS_RECIPIENT="Send To Email Address" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." COM_CONVERTFORMS_EMAILS_SUBJECT="Email Subject" COM_CONVERTFORMS_EMAILS_BODY="Message" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Attachments" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." COM_CONVERTFORMS_API_ENABLE="Enable JSON API" COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." COM_CONVERTFORMS_API_KEY="Secret Key" COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." COM_CONVERTFORMS_IMAGE_ALT="Image Alt" COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" COM_CONVERTFORMS_CUSTOM_CODE="Custom Code" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." COM_CONVERTFORMS_ISSUES="Issues" COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" COM_CONVERTFORMS_CREATED="Date Submitted" COM_CONVERTFORMS_MODIFIED="Date Modified" COM_CONVERTFORMS_IP="Submitter's IP Address" COM_CONVERTFORMS_USER_ID="Submitter's ID" COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" COM_CONVERTFORMS_VISITOR_ID="Visitor ID" COM_CONVERTFORMS_FORM_NAME="Form Name" COM_CONVERTFORMS_CAMPAIGN_NAME="Campaign Name" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Columns" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" COM_CONVERTFORMS_FIELDS_COPY="Duplicate field" COM_CONVERTFORMS_FIELDS_DELETE="Delete field" COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" COM_CONVERTFORMS_FIELD_TEXT="Textbox" COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" COM_CONVERTFORMS_FIELD_TEXTAREA="Textarea" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" COM_CONVERTFORMS_FIELD_NUMBER="Number" COM_CONVERTFORMS_FIELD_NUMBER_DESC="A textbox that accepts only numbers" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min Value" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max Value" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Dropdown" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" COM_CONVERTFORMS_FIELD_RADIO="Radio Buttons" COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" COM_CONVERTFORMS_FIELD_URL="Website / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" COM_CONVERTFORMS_FIELD_URL_INVALID="Invalid URL" COM_CONVERTFORMS_FIELD_COUNTRY="Country" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Detect Visitor Country" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Currency" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" COM_CONVERTFORMS_FIELD_HIDDEN="Hidden Field" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" COM_CONVERTFORMS_FIELD_EMAIL="Email Address" COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Terms of Service" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" COM_CONVERTFORMS_FIELD_REQUIRED="Is required" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Invalid email address" COM_CONVERTFORMS_FIELD_SIZE="Field Size" COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" COM_CONVERTFORMS_FIELD_TEL="Phone Number" COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." COM_CONVERTFORMS_FIELD_DATETIME="Date / Time" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Date Format" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minute Step" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." COM_CONVERTFORMS_CSS_CLASSES="CSS Class" COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS Check" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." COM_CONVERTFORMS_FIELD_CONFIRM="Confirm" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" COM_CONVERTFORMS_HIDE_TEXT="Hide Text" COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" COM_CONVERTFORMS_CHOICE_1_COLUMN="One Column" COM_CONVERTFORMS_CHOICE_2_COLUMN="Two Columns" COM_CONVERTFORMS_CHOICE_3_COLUMN="Three Columns" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Side by Side" COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." COM_CONVERTFORMS_INPUT_MASK="Input Mask" COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" COM_CONVERTFORMS_LEAD_INFO="Submission Info" COM_CONVERTFORMS_NOTES="Notes" COM_CONVERTFORMS_DATE_RANGE="Date Range" COM_CONVERTFORMS_START_DATE="Start Date" COM_CONVERTFORMS_END_DATE="End Date" COM_CONVERTFORMS_PERIOD="Period" COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" COM_CONVERTFORMS_HONEYPOT="Enable Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." COM_CONVERTFORMS_FIELD_FILEUPLOAD="File Upload" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="How many files can be uploaded? Enter 0 for no limit." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="File Size Limit" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Allowed File Types" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="You can upload up to %d files" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="You can't upload files of this type." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Cancel upload" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="You can not upload any more files." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Auto Delete Files" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." COM_CONVERTFORMS_READONLY="Read-only" COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" COM_CONVERTFORMS_PHPSCRIPT="PHP Scripts" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="After Form Submission" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Password" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Form Prepare" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s is already a member." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s looks fake or invalid, please enter a real email address." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Form has been successfully submitted" COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" COM_CONVERTFORMS_SECURITY="Security" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Hide Empty Values" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." COM_CONVERTFORMS_SELECT_FORM="Select Form" COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" COM_CONVERTFORMS_LIST_LIMIT="Page Limit" COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." COM_CONVERTFORMS_ORDER="Sort Submissions" COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" COM_CONVERTFORMS_ORDER_OLDEST="Oldest First" COM_CONVERTFORMS_ORDER_RANDOM="Random Order" COM_CONVERTFORMS_FILTER_USER="Show Submissions From" COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Logged-in User" COM_CONVERTFORMS_FILTER_USER_ALL="All Users" COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" COM_CONVERTFORMS_SET_USERS="User IDs" COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Select Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Empty Space" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Add an empty space in your form" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Empty Space" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." COM_CONVERTFORMS_FIELD_HEADING="Heading" COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." COM_CONVERTFORMS_FIELD_DIVIDER="Divider" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solid" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Dashed" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Dotted" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Border Width" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Border Color" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="First Day of the Week" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." COM_CONVERTFORMS_ENTER_LABEL="Enter Label" COM_CONVERTFORMS_ADD_FIELD="Add Field" COM_CONVERTFORMS_ALL_FIELDS="All Fields" COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." COM_CONVERTFORMS_LABEL_POSITION="Label Position" COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" COM_CONVERTFORMS_INVALID_TASK="Invalid Task" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" COM_CONVERTFORMS_FIELD_RATING="Rating" COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." COM_CONVERTFORMS_FIELD_RATING_ICON="Icon" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." COM_CONVERTFORMS_MIN_WORDS="Minimum Words" COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." COM_CONVERTFORMS_MAX_WORDS="Maximum Words" COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." COM_CONVERTFORMS_EXPORT_WORKING="Exporting" COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." COM_CONVERTFORMS_SAVE_DATA="Save Submissions" COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)"PKBA#]#��qqIcomponents/com_convertforms/language/en-GB/en-GB.com_convertforms.sys.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2019 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESC="Convert Forms" COM_CONVERTFORMS_FORM="Form" COM_CONVERTFORMS_FORM_DESC="Display a single form" COM_CONVERTFORMS_FORMS="Forms" COM_CONVERTFORMS_CAMPAIGNS="Campaigns" COM_CONVERTFORMS_SUBMISSIONS="Submissions" COM_CONVERTFORMS_SUBMISSIONS_DESC="Shows a list of all user submissions" COM_CONVERTFORMS_ADDONS="Addons"PKBA#]�}H�b�b�Ecomponents/com_convertforms/language/hu-HU/hu-HU.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Megjelenés" ; COM_CONVERTFORMS_BEHAVIOR="Behavior" COM_CONVERTFORMS_LIST="Lista" COM_CONVERTFORMS_NO_RESULTS_FOUND="Nincs találat %s -re" COM_CONVERTFORMS_CREATE_NEW="Készít egy újat?" ; COM_CONVERTFORMS_EMAIL_ASCENDING="Email ascending" ; COM_CONVERTFORMS_EMAIL_DESCENDING="Email descending" COM_CONVERTFORMS_ACTIONS="Műveletek" ; COM_CONVERTFORMS_VIEW_LEADS="View Submissions" NRI_PLG_CONVERTFORMS="Convert Forms beépülő " COM_CONVERTFORMS_CONFIGURATION="Convert Forms Konfigurációja" COM_CONVERTFORMS_LOADCSS="Stíluslap betöltése" ; COM_CONVERTFORMS_LOADCSS_DESC="Select to load the extensions stylesheet. You can disable this if you place all your own styles in some other stylesheet, like the Custom Code field or the templates stylesheet" COM_CONVERTFORMS_DEBUG="Hibakeresés" ; COM_CONVERTFORMS_DEBUG_DESC="Enable this option in order to help you debug errors and unexpected behavior. Error messages are pushed to your Browser's Console (Press F12) and to the Logs folder." COM_CONVERTFORMS_FORMS="Űrlapok" COM_CONVERTFORMS_FORM="Űrlap" COM_CONVERTFORMS_NEW_FORM="Új űrlap" COM_CONVERTFORMS_EDIT_FORM="Űrlap módosítása" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s űrlap másolva" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s űrlap közzétéve" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s űrlap visszavonva" ; COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s forms trashed" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s űrlap törölve" ; COM_CONVERTFORMS_FORM_ASCENDING="Form ascending" ; COM_CONVERTFORMS_FORM_DESCENDING="Form descending" COM_CONVERTFORMS_FORM_SELECT="-Válasszon űrlapot-" ; COM_CONVERTFORMS_FORM_CREATE_MODULE="Publish creating a module" ; COM_CONVERTFORMS_FORM_LEADS="This form has %s total submissions so far" ; COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publish using shortcode: %s" COM_CONVERTFORMS_CAMPAIGN="Kampány" COM_CONVERTFORMS_CAMPAIGNS="Kampányok" COM_CONVERTFORMS_NEW_CAMPAIGN="Új kampány" COM_CONVERTFORMS_EDIT_CAMPAIGN="Kampány módosítása" ; COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Enter a campaign name. This name can not be seen by anyone else but you." ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Campaigns copied" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Campaigns unpublished" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Campaigns published" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Campaigns trashed" ; COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campaigns deleted" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s submissions unpublished" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s submissions published" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s submissions trashed" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s submissions deleted" ; COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s submissions archived" ; COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campaign ascending" ; COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campaign descending" ; COM_CONVERTFORMS_CAMPAIGN_SELECT="- Select Campaign -" ; COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Please save the campaign to setup your integration." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampány megváltoztatva" ; COM_CONVERTFORMS_CAMPAIGN_SYNC="Sync Submissions" ; COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choose whether your submissions should be synced to third party softwares or to be collected in your database only. <Br>Note: If you need to integrate with third party software like MailChimp, Aweber, GetResponse, Active Campaign etc please install the respective addon in the Addons section." ; COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campaigns deleted" ; COM_CONVERTFORMS_CHOOSE_SERVICE="Choose Service" ; COM_CONVERTFORMS_PENDING_LEADS="Pending Submissions" ; COM_CONVERTFORMS_SUBMISSIONS="Submissions" ; COM_CONVERTFORMS_SUBMISSION="Submission" ; COM_CONVERTFORMS_LATEST_SUBMISSIONS="Latest Submissions" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Megerősített" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Nem megerősített" ; COM_CONVERTFORMS_EDIT_CONVERSION="Edit Submission" ; COM_CONVERTFORMS_SUBMISSION_INVALID="Submission not found." ; COM_CONVERTFORMS_NOT_AUTHORIZED="You are not authorized to access this page." ; COM_CONVERTFORMS_LEADS_ASC="Submissions ascending" ; COM_CONVERTFORMS_LEADS_DESC="Submissions descending" ; COM_CONVERTFORMS_LEADS_EXPORT="Export Submissions" COM_CONVERTFORMS_ADDONS="Kiegészítők" COM_CONVERTFORMS_INSTALL_ADDONS="Megjeleníti a telepített kiegészítőket" ; COM_CONVERTFORMS_ADDONS_MISSING_KEY="To be able to install Convert Forms Addons, you will need enter your Download Key in the settings of the Novarain Framework Plugin" ; COM_CONVERTFORMS_ADDONS_DESC="Add-ons extend the functionality of Convert Forms. With these addons, you can connect with third party softwares, integrate new features and make Convert Forms even more powerful." COM_CONVERTFORMS_LAST_YEAR="Múlt év" COM_CONVERTFORMS_THIS_YEAR="Ezév" COM_CONVERTFORMS_LAST_MONTH="Múlt hónap" COM_CONVERTFORMS_THIS_MONTH="E hónap" COM_CONVERTFORMS_LAST_WEEK="Múlt hét" COM_CONVERTFORMS_THIS_WEEK="E hét" COM_CONVERTFORMS_LAST_7_DAYS="Az utolsó 7 nap" COM_CONVERTFORMS_YESTERDAY="Tegnap" COM_CONVERTFORMS_TODAY="Ma" ; COM_CONVERTFORMS_AVG_DAY="Average day (this month)" ; COM_CONVERTFORMS_PROJECTION="Projection for this month" COM_CONVERTFORMS_TOTAL="Összesen" COM_CONVERTFORMS_CHOOSE_FILE="Válasszon egy .cnvf fájlt" ; COM_CONVERTFORMS_FORMS_NAME_DESC="A unique & descriptive name will help you in future as it would appear in the dashboard, analytics, etc." ; COM_CONVERTFORMS_BACKGROUND_IMAGE="Background Image Source" ; COM_CONVERTFORMS_IMAGE_DESC="Choose the background image source" COM_CONVERTFORMS_CUSTOM_URL="Egyéni URL" COM_CONVERTFORMS_BACKGROUND_URL="Háttérkép URL" ; COM_CONVERTFORMS_BACKGROUND_URL_DESC="Enter custom URL for your image" COM_CONVERTFORMS_BACKGROUND_FILE="Háttérkép" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Válasszon egy feltöltendő képet" ; COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="You can provide an image that would appear behind the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL. For this setting to work, the background color you've chosen must be transparent." COM_CONVERTFORMS_FORM_BUILDER="Űrlap építő" COM_CONVERTFORMS_FIELD_TYPE="Mező típus" ; COM_CONVERTFORMS_FIELD_TYPE_DESC="The Field Type attribute specifies the type of input element to display." COM_CONVERTFORMS_FIELD_LABEL="Mező címke" ; COM_CONVERTFORMS_FIELD_LABEL_DESC="The Field Label defines a label for an input element." COM_CONVERTFORMS_FIELD_NAME="Mező név" ; COM_CONVERTFORMS_FIELD_NAME_DESC="It specifies the name of input element which is used to reference form data after a form is submitted. Use this option also to map form fields with integrations apps." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" ; COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="The text you would like displayed in the field, before a user enters any data." COM_CONVERTFORMS_REQUIRED_NAME="Kötelező mező" ; COM_CONVERTFORMS_REQUIRED_NAME_DESC="If enabled, this will ensure that this field is completed before allowing the form to be submitted." COM_CONVERTFORMS_FIELDS="Mezők" ; COM_CONVERTFORMS_FIELDS_FREE_NOTICE="You are using the <b>Free</b> version which supports only 1 email field. <b>Upgrade to Pro version</b> to be able to manage unlimited fields." ; COM_CONVERTFORMS_GENERAL="General" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN="Field Text Alignment" ; COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Form Text Alignment" ; COM_CONVERTFORMS_INPUT_COLOR="Field Text Color" ; COM_CONVERTFORMS_INPUT_BGCOLOR="Field Background Color" ; COM_CONVERTFORMS_INPUT_BORDER_COLOR="Field Border Color" ; COM_CONVERTFORMS_INPUT_SHADOW_DESC="Adds an inner shadow to the input field" ; COM_CONVERTFORMS_INPUT_FONT_SIZE="Field Font Size" ; COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Field Font Size" ; COM_CONVERTFORMS_VPADDING_SIZE="Vertical Padding" ; COM_CONVERTFORMS_HPADDING_SIZE="Horizontal Padding" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE="Box Max Width" ; COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Provide a custom max width of your choice or make this box cover entire screen area. Note that this is the max width which means the form will always fit on smaller areas." ; COM_CONVERTFORMS_FORM_WIDTH="Custom Max Width" ; COM_CONVERTFORMS_FORM_WIDTH_DESC="Provide custom max width of your choice." ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Remove Default Padding" ; COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Remove the default padding between content area and form box edges." ; COM_CONVERTFORMS_FORM_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Apply a border around the form" COM_CONVERTFORMS_FORM_BORDER_COLOR="Keret szín" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Űrlap keret szín" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Keret vastagság" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Űrlap keretének vastagsága" ; COM_CONVERTFORMS_BOX_RADIUS="Box Radius" ; COM_CONVERTFORMS_BORDER_RADIUS="Border Radius" ; COM_CONVERTFORMS_BORDER_RADIUS_DESC="Enter border's radius size" ; COM_CONVERTFORMS_COLLECT_LEADS_USING="Collect Submissions Using the Campaign" ; COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Submissions collected by this form will be assosiated with the selected campaign. You can manage the campaigns in the Campaigns section." ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Successful Submission Action" ; COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choose the action you would like to take place after a successful submission" ; COM_CONVERTFORMS_DISPLAY_MSG="Display message" COM_CONVERTFORMS_REDIRECT_USER="Felhasználó átirányítása" ; COM_CONVERTFORMS_SUCCESS_TEXT="Message After Success" ; COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Enter the message you would like to display the user after successfully added to the list." COM_CONVERTFORMS_SUCCESS_URL="Átirányítási URL" ; COM_CONVERTFORMS_SUCCESS_URL_DESC="Enter the URL where you would like to redirect the user after successfully added to the list." ; COM_CONVERTFORMS_PASS_DATA="Pass Submission Data To Redirect URL" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" ; COM_CONVERTFORMS_SUBMIT_STYLE="Submit Button Style" ; COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Style your button with nice effects." ; COM_CONVERTFORMS_BTN_SHADOW_DESC="Adds an outer shadow to the button" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Text Hover Color" ; COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Text Hover Color" COM_CONVERTFORMS_CUSTOM_CSS="Egyéni CSS" ; COM_CONVERTFORMS_CUSTOM_CSS_DESC="Style the form with your own custom CSS. <br><br>To help you with the form styling, the code added in this area is executed in the backend as well." ; COM_CONVERTFORMS_CLASS_SUFFIX="Class Suffix" ; COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Class Suffix" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT="Textarea Height" ; COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Textarea height specifies the visible height of a text area, in lines." ; COM_CONVERTFORMS_CHOICES="Choices" ; COM_CONVERTFORMS_CHOICES_DESC="Add choices for the form field." COM_CONVERTFORMS_FIELD_VALUE="Alapértelmezett érték" ; COM_CONVERTFORMS_FIELD_VALUE_DESC="Enter the text for the default field Value." ; COM_CONVERTFORMS_HIDE_LABELS="Hide Label" ; COM_CONVERTFORMS_HIDE_LABELS_DESC="Check this option to hide the form field label" COM_CONVERTFORMS_IMAGE_SOURCE="Kép forrása" ; COM_CONVERTFORMS_IMAGE_SOURCE_DESC="You can provide an image that would be appear among the form's content. Choose <b>Upload</b> to upload a new image or <b>Custom URL</b> to enter a custom image URL." COM_CONVERTFORMS_IMAGE_URL="Kép URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Kis képernyőn képet rejt" ; COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="On smaller screens like mobile, smaller modals look more beautiful. To reduce the size of the modal, you may hide the image with this setting." COM_CONVERTFORMS_HORIZONTAL_POSITION="Vízszintes pozíció" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Vízszintes pozíció" COM_CONVERTFORMS_VERTICAL_POSITION="Függőleges pozíció" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Függőleges pozíció" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Kép szélesség" ; COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Set image width" ; COM_CONVERTFORMS_BUTTON_ALIGN="Button Alignment" ; COM_CONVERTFORMS_FORM_POSITION="Form Position" ; COM_CONVERTFORMS_FORM_POSITION_DESC="Set form position relative to text container" ; COM_CONVERTFORMS_FORM_SIZE="Form Container Size" ; COM_CONVERTFORMS_COLUMNS_DESC="Specify how many columns it will be used. 6 columns takes the 50% of width." ; COM_CONVERTFORMS_MESSAGE="Text Message" ; COM_CONVERTFORMS_MESSAGE_DESC="Enter the form's text message" ; COM_CONVERTFORMS_IMAGE_POSITION="Image Position" ; COM_CONVERTFORMS_IMAGE_POSITION_DESC="Set image position relative to text" ; COM_CONVERTFORMS_FOOTER="Form Footer" ; COM_CONVERTFORMS_BUTTON_TEXT="Button Text" ; COM_CONVERTFORMS_BUTTON_TEXT_DESC="Enter button's text label" ; COM_CONVERTFORMS_BTN_FONT_SIZE="Button Text Size" ; COM_CONVERTFORMS_IMAGE_SIZE="Image Container Size" ; COM_CONVERTFORMS_BODY_FONT="Font Family" ; COM_CONVERTFORMS_BODY_FONT_DESC="Choose the font family that would be used for the form. Keep in mind that loading non-standard fonts such as Google Fonts may impact your website's speed. Select Default in order to use your website's default font." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Dátum" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_SUBMISSION="Submission" COM_CONVERTFORMS_PREVIEW_SUCCESS="Az űrlap sikeresen elküldve esetén annak előnézete" ; COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="This version will be displayed on screens sized 990px and above" ; COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="This version will be displayed on screens sized 768px - 990px" ; COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="This version will be displayed on screens sized 768px and below" COM_CONVERTFORMS_DEVICE_DESKTOP="Asztali gép" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Mobil" ; COM_CONVERTFORMS_RESET_FORM="Reset Form" ; COM_CONVERTFORMS_RESET_FORM_DESC="Reset form after successful submission" COM_CONVERTFORMS_HIDE_FORM="Űrlap rejtése" ; COM_CONVERTFORMS_HIDE_FORM_DESC="Hide form after successful submission" COM_CONVERTFORMS_TEMPLATES="Sablonok" COM_CONVERTFORMS_TEMPLATES_SELECT="Válasszon sablont a kezdéshez" ; COM_CONVERTFORMS_TEMPLATES_BLANK="Start from scratch" ; COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Start from scratch a new form" ; COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" ; COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Sidebar" ; COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bars" ; COM_CONVERTFORMS_LABELS_COLOR="Label Text Color" ; COM_CONVERTFORMS_LABELS_FONT_SIZE="Label Font Size" ; COM_CONVERTFORMS_IMAGE_ABOVE="Above Text" ; COM_CONVERTFORMS_IMAGE_BELOW="Below Text" ; COM_CONVERTFORMS_IMAGE_RIGHT="Right of Text" ; COM_CONVERTFORMS_IMAGE_LEFT="Left of Text" ; COM_CONVERTFORMS_FLAT="Flat" ; COM_CONVERTFORMS_OUTLINE="Outline" ; COM_CONVERTFORMS_GRADIENT="Gradient" ; COM_CONVERTFORMS_EMAILS_DESC="Send email notifications when users submit a form." COM_CONVERTFORMS_EMAILS="Email értesítések" COM_CONVERTFORMS_EMAILS_REPLY_TO="Válasz e-mail cím" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Válasz e-mail név" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Küldő e-mail címe" COM_CONVERTFORMS_EMAILS_FROM="Küldő neve" COM_CONVERTFORMS_EMAILS_RECIPIENT="Küldés az e-mail címre" ; COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Enter the email addresses to receive submission notifications. For multiple notifications, separate email addresses with a comma." COM_CONVERTFORMS_EMAILS_SUBJECT="Email tárgy" COM_CONVERTFORMS_EMAILS_BODY="Üzenet" ; COM_CONVERTFORMS_EMAILS_FREE_NOTE="Do you want multiple notifications? <br><a href='#' data-pro-only='Unlimited Notifications'>Upgrade to PRO</a> to unlock it." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Csatolmányok" ; COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Location of a file to attach relative to the root of your webspace. Use comma to define multiple files." ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Are you missing an addon?" ; COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="In case you are missing an integration addon for your favorite app, please do let us know and we'll be glad to include it the Convert Forms addons collection." COM_CONVERTFORMS_API_ENABLE="JSON API engedélyezése" ; COM_CONVERTFORMS_API_DESC="JSON API allows you to retrieve Convert Forms content using HTTP requests." COM_CONVERTFORMS_API_KEY="Titkos kulcs" ; COM_CONVERTFORMS_API_KEY_DESC="This secret key is used to authenticate critical tasks such as CRON Jobs and the JSON API. If you leave it empty all tasks require user authentication will be disabled." ; COM_CONVERTFORMS_IMAGE_ALT="Image Alt" ; COM_CONVERTFORMS_IMAGE_ALT_DESC="The image alternative text" COM_CONVERTFORMS_CUSTOM_CODE="Egyéni kód" ; COM_CONVERTFORMS_CUSTOM_CODE_DESC="Place custom code at the end of the form. It accepts HTML, CSS and Javascript. <br><br>For Javascript, make sure you wrap the code with the <script> tag. <br><br>The code added in this area is not get executed in the backend." ; COM_CONVERTFORMS_ISSUES="Issues" ; COM_CONVERTFORMS_ISSUES_DETECTED="%s submission issues detected" ; COM_CONVERTFORMS_CREATED="Date Created" ; COM_CONVERTFORMS_MODIFIED="Date Modified" ; COM_CONVERTFORMS_IP="Submitter's IP Address" ; COM_CONVERTFORMS_USER_ID="Submitter's ID" ; COM_CONVERTFORMS_USER_USERNAME="Submitter's Username" COM_CONVERTFORMS_VISITOR_ID="Látogató ID" COM_CONVERTFORMS_FORM_NAME="Űrlap név" COM_CONVERTFORMS_CAMPAIGN_NAME="Kampány név" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Oszlopok" ; COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="To enable specific form fields, select a form in the filters bar first." ; COM_CONVERTFORMS_UNTITLED_BOX="Untitled Form" ; COM_CONVERTFORMS_SELECT_LAYOUT="Select your layout" ; COM_CONVERTFORMS_SHOW_LAYOUTS="Show Layouts" ; COM_CONVERTFORMS_HIDE_LAYOUTS="Hide Layouts" COM_CONVERTFORMS_FIELDS_COPY="Mező duplikálása" COM_CONVERTFORMS_FIELDS_DELETE="Mező törlése" ; COM_CONVERTFORMS_FIELDGROUP_COMMON="Common Fields" ; COM_CONVERTFORMS_FIELDGROUP_FANCY="Fancy Fields" ; COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Advanced Fields" COM_CONVERTFORMS_FIELD_HTML="HTML" ; COM_CONVERTFORMS_FIELD_HTML_DESC="Add custom freetext or HTML code. No Limits!" COM_CONVERTFORMS_FIELD_TEXT="Szövegdoboz" ; COM_CONVERTFORMS_FIELD_TEXT_DESC="A single line text box field" COM_CONVERTFORMS_FIELD_TEXTAREA="Szövegmező" ; COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Like a textbox field, but can accommodate a multi line user input" COM_CONVERTFORMS_FIELD_NUMBER="Szám" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Szövegdoboz amely csak számokat fogad el" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP="Step" ; COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="The amount the value will change when an arrow is pressed." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Minimum érték" ; COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="The minimum value the field will allow" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Maximum érték" ; COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="The maximum value the field will allow" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Stop spam form submissions using Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Please set your Site and Secret key in the configuration page." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configure reCAPTCHA now" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="The color theme of the widget" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="The size of the widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Legördülő" ; COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="List that allows for one selection from a drop-down" COM_CONVERTFORMS_FIELD_RADIO="Rádió gombok" ; COM_CONVERTFORMS_FIELD_RADIO_DESC="List that allows for one selection from radio buttons" COM_CONVERTFORMS_FIELD_URL="Weboldal / URL" ; COM_CONVERTFORMS_FIELD_URL_DESC="Accept a properly-formed URL that starts with either http:// or https://" COM_CONVERTFORMS_FIELD_URL_INVALID="Helytelen URL" COM_CONVERTFORMS_FIELD_COUNTRY="Ország" ; COM_CONVERTFORMS_FIELD_COUNTRY_DESC="List of all known countries" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Látogató országának automatikus megállapítása" ; COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="If enabled, the form will try to detect and prefill the visitor's country. Requires the TGeoIP plugin to be installed." ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclude Countries" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Pénznem" ; COM_CONVERTFORMS_FIELD_CURRENCY_DESC="List of all known currencies" ; COM_CONVERTFORMS_FIELD_SUBMIT="Submit Button" ; COM_CONVERTFORMS_FIELD_SUBMIT_DESC="The button that will submit the form" COM_CONVERTFORMS_FIELD_HIDDEN="Rejtett mező" ; COM_CONVERTFORMS_FIELD_HIDDEN_DESC="A field not visible by the user on the front-end" COM_CONVERTFORMS_FIELD_EMAIL="Email cím" ; COM_CONVERTFORMS_FIELD_EMAIL_DESC="A textbox that accepts only a valid email address" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Áétalános Szerződési Feltételek (ÁSZF)" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Require user to agree to your terms of service before they are allowed to submit the form" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Terms of Service Text" ; COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="This the text that goes right after the checkbox" ; COM_CONVERTFORMS_FIELD_CHECKBOX="Checkboxes" ; COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="List that allows for multiple selections from checkboxes" COM_CONVERTFORMS_FIELD_REQUIRED="Kötelező" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Érvénytelen email cím" COM_CONVERTFORMS_FIELD_SIZE="Mező mérete" ; COM_CONVERTFORMS_FIELD_SIZE_DESC="Select the default form field size" COM_CONVERTFORMS_FIELD_TEL="Telefonszám" ; COM_CONVERTFORMS_FIELD_TEL_DESC="Let the user enter a telephone number." COM_CONVERTFORMS_FIELD_DATETIME="Dátum / idő" ; COM_CONVERTFORMS_FIELD_DATETIME_DESC="Date / Time picker that allows selection of a single date, multiple dates or even a date range" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Dátum formátum" ; COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="The format of the outputted date. Examples:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Show Timepicker" ; COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Enables the time picker. If enabled, make sure you include the time characters (H:i) in the Date Format field." ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="The minimum/earliest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max Date" ; COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="The maximum/latest date allowed for selection. Supports relative date formats such as: today, tomorrow, +5 day, +2 week." ; COM_CONVERTFORMS_FIELD_DATETIME_MODE="Date selection mode" ; COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Enable user to select a single date, mulitple dates or a date range." ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Time 24Hour" ; COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Displays time picker in 24 hour mode without AM/PM selection." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Perc lépésköz" ; COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Adjusts the step for the minute input in the Time Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Display Inline" ; COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Displays the calendar inline instead as a popup." ; COM_CONVERTFORMS_FIELD_DATETIME_THEME="Theme" ; COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Select a calendar theme" ; COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Invalid date format - %s" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Disable Mobile Native Date Picker" ; COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="If checked, mobile users will see the Convert Forms Date Picker instead of the device native date picker." COM_CONVERTFORMS_CSS_CLASSES="CSS osztály" ; COM_CONVERTFORMS_CSS_CLASSES_DESC="Add CSS Classes to the input's container. This can mainly used for layout purposes." ; COM_CONVERTFORMS_INPUT_CSS_CLASSES="Input CSS Class" ; COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Add CSS Classes to the input element. Use this option to style the input itself." ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Disable Browser Autocomplete" ; COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="By default, browsers remember information that the user submits through input fields. To disable autocompletion in forms enable this option." ; COM_CONVERTFORMS_FIELD_DESCRIPTION="Help Text" ; COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Help text to show alongside this field." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS ellenőrzés" ; COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Validate the given email address with a DNS Check." COM_CONVERTFORMS_FIELD_CONFIRM="Megerősít" ; COM_CONVERTFORMS_FIELD_CONFIRM_DESC="A field to ensure two fields match" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirm Field Key" ; COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Enter the field's key that will be used to ensure its value match" ; COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Field is not properly configured" ; COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Field values don't match" ; COM_CONVERTFORMS_HIDE_TEXT="Hide Text" ; COM_CONVERTFORMS_HIDE_TEXT_DESC="Hide Text after successfull submission" ; COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Form is missing an Email Field" ; COM_CONVERTFORMS_INVALID_LEAD="Can't validate Submission object" ; COM_CONVERTFORMS_EXCEL_SECURITY="Excel Security" ; COM_CONVERTFORMS_EXCEL_SECURITY_DESC="If enabled, values in the CSV exported file starting with a =, +, - or @ will be prefixed by a tab to avoid any CSV injection when opening the exported file using Excel. <br><br>Disable this option only if you are 100% certain that the data are trustworth or if you're facing difficulties importing the CSV file to a 3rd party application." ; COM_CONVERTFORMS_CHOICE_LAYOUT="Choice Layout" ; COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Select the layout for displaying field choices" COM_CONVERTFORMS_CHOICE_1_COLUMN="Egy oszlop" COM_CONVERTFORMS_CHOICE_2_COLUMN="Két oszlop" COM_CONVERTFORMS_CHOICE_3_COLUMN="Három oszlop" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Egymás mellett" ; COM_CONVERTFORMS_REQUIRED_INDICATION="Required Field Indication" ; COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indicate required fields with an asterisk next to each field label. It requires the field label to not be hidden." COM_CONVERTFORMS_INPUT_MASK="Bevitel maszkolása" ; COM_CONVERTFORMS_INPUT_MASK_DESC="Help user with the input by ensuring a predefined format. <br><br><b>Syntax:</b><br>9: Numeric (0-9)<br>a: Alphabetical (a-z or A-Z)<br>A: Uppercase alphabetical (A-Z)<br>*: Alphanumeric (0-9, a-z, or A-Z)<br>&: Uppercase alphanumeric (0-9 or A-Z)<br><br><b>Examples</b>:<br>Phone: +1 (999)-9999<br>Date: 99/99/9999<br>Zip Code: 99999?-9999" ; COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="User Submitted Data" ; COM_CONVERTFORMS_NO_SUBMITTED_DATA="No submitted data found" ; COM_CONVERTFORMS_LEAD_INFO="Submission Info" COM_CONVERTFORMS_NOTES="Megjegyzések" ; COM_CONVERTFORMS_DATE_RANGE="Date Range" COM_CONVERTFORMS_START_DATE="Kezdő dátum" COM_CONVERTFORMS_END_DATE="Záró dátum" ; COM_CONVERTFORMS_PERIOD="Period" ; COM_CONVERTFORMS_PERIOD_SELECT="- Select Period -" COM_CONVERTFORMS_HONEYPOT="Anti-spam (Honeypot) engedélyezése" ; COM_CONVERTFORMS_HONEYPOT_DESC="Enable to add a Honeypot field to the form which is visible to bots only. That way, when the honeypot field is filled out the form can automatically know that the user was a spambot.<br><br>On many sites, this honeypot is enough by itself to avoid spam entries. If you’re still receiving spam, however, or if you’d like to take an extra precaution against it, reCAPTCHA is a great additional option." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Fájl feltöltés" ; COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Give the user the ability to upload files" ; COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Your site's temp folder is set to <b>%s</b> but it's not writable. Please specify a writable temp folder." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Specify a destination folder for uploaded files.<br><br><b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Custom Upload Destination" ; COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Enter the path relative to the root of your webspace where the uploaded files will be stored. To rename uploaded files use the following Smart Tags.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>It can also accept global Smart Tags like {year}, {month}, {user.id} or {randomid} to create an even more dynamic upload destination." ; COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Files Limit" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Hány fájl tölthető fel? 0 = végtelen" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Fájlméret korlát" ; COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Configure the maximum allowable size for each uploaded file in megabytes. Enter 0 for no limit. <br><br>Your server's maximum upload size is: <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Engedélyezett fájltípusok" ; COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Enter comma separated list of allowed file types like: </b>.jpg, .gif, .png, .pdf<br><br>You may enter media types like: application/pdf, images/*, video/* or you can mix both: application/*, .png, .jpg<br><br>Note: This is not fool-proof and can be tricked, please remember that there is always a danger in allowing users to upload files.<br><br>The PHP extension <b>fileinfo</b> is required to be installed to guess." COM_CONVERTFORMS_FIELD_FILTER="Szűrő" ; COM_CONVERTFORMS_FIELD_FILTER_DESC="Filter the user input based on the following filters.<br><b>Text</b>: Converts the input to a plain text string; strips all tags / attributes.<br><b>Safe HTML</b>: Accept only safe HTML elements like.<br><b>Alpha Numeric</b>: Allow a-z and 0-9 only<br><b>Word</b>: Only allow characters a-z, and underscores<br><b>Integer</b>: Only use the first number value<br><b>Float</b>: Only allow characters a-z, and underscores" ; COM_CONVERTFORMS_UPLOAD_ERROR="Invalid form or field key" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Invalid upload field" ; COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Invalid or unsupported file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Feltölthet %d fájlt" ; COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Drag and drop files here or" ; COM_CONVERTFORMS_UPLOAD_BROWSE="Browse" ; COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Temporary file %s is missing. Please re-upload." ; COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="The upload folder %s doesn't exist or is not writable" ; COM_CONVERTFORMS_UPLOAD_FILETOOBIG="File is too big ({{filesize}}MB). Max filesize: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Nem tölthet fel ilyen típusú fájlt!" ; COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Your browser does not support drag'n'drop file uploads." ; COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server responded with {{statusCode}} code." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Feltöltés megszakítása" ; COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Are you sure you want to cancel this upload?" ; COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Remove file" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Nem tölthet fel több fájlt" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Fájlok automatikus törlése" ; COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="If you are getting a lot of uploads, the server space used by the uploaded files can quickly mount up, requiring some regular housekeeping to free up space. <br><br>This option helps you auto-delete files stored in the Upload Folder after a set period. <br><br>For example, enter 3, to auto-delete files more than 3 days old or 0 if you want to keep the files forever.<br><br>Note: The Convert Forms Uploaded Files Cleaner plugin needs to be enabled and the respective Cron Job URL set on your server." COM_CONVERTFORMS_READONLY="Csak olvasható" ; COM_CONVERTFORMS_READONLY_DESC="Prevent entry into this field" COM_CONVERTFORMS_PHPSCRIPT="PHP kódok" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Form Display" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="The PHP script added in this area is executed just before the form is displayed.<br><br>The main focus in this area is the <b>$formLayout</b> (String) variable which contains the HTML code of the form.<br><br>To access the form settings use the <b>$form</b> (Array) variable.<br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Form Process" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="The PHP code added in this area is executed just before the form data has been saved into the database regardless if the submission is valid or not. <br><br>This area is rather useful when you need to process calculations, make advanced validation or modify the value of a field. Any modifications to <b>$post</b> (Array) variable performed here, will be reflected in the submission entry.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Űrlap elküldése után" ; COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="The PHP code added in this area is executed after the form has been successfully submitted and the data has been saved into the database. <br><br>This is rather useful when you are trying to run some extra tasks such as silently post data to another URL. You can access the final submission using the <b>$submission</b> (Object) variable.<br><br>To access the form settings use the <b>$form</b> (Array) variable. <br><br>You don't need to include the <?php and ?> tags." ; COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP Scripts are not executed on the backend to prevent issues with the live form previewer. Always test on the front-end." COM_CONVERTFORMS_FIELD_PASSWORD="Jelszó" ; COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Provide a way for the user to securely enter a password" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Confirm Field Type" ; COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choose the confirm field's input type between Text and Password." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Űrlap betöltődése előtt" ; COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="The PHP script added in this area is executed just before the form's data is prepared and send to the form display function.<br><br>The main focus in this area is the <b>$form</b> (Array) variable which contains the form's settings. <br><br>You don't need to include the <?php and ?> tags." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s már tag." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="Úgy tűnik, hogy%s hamis vagy nem valós, kérjük adjon meg valós email címet!" ; COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Error: Google reCAPTCHA script is not loaded. Make sure your browser is not blocking it or contact the site administrator." ; COM_CONVERTFORMS_ACCESS_FORMS="Access Forms" ; COM_CONVERTFORMS_ACCESS_FORMS_DESC="Allows users in the group to manage Forms." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Access Submissions" ; COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Allows users in the group to manage Submissions." ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Access Campaigns" ; COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Allows users in the group to manage Campaigns. Enable this, if you face troubles with spam submissions." ; COM_CONVERTFORMS_CSRF_CHECK="Use Joomla! CSRF Token" ; COM_CONVERTFORMS_CSRF_CHECK_DESC="Add an extra protection layer to your forms by verifying all AJAX requests with CSRF Tokens.<br><br>If you enable this and you're using a cache mechanism that caches the whole output of the page such as the Joomla! Page Cache plugin or a server-side caching proxy such as CloudFlare or Sucuri, you may face troubles with the form submission." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Az űrlap sikeresen elküldve" ; COM_CONVERTFORMS_SECRET_SET="Please configure a secret key to be able to use the optin endpoint." ; COM_CONVERTFORMS_SECRET_NO="No secret key provided in URL" ; COM_CONVERTFORMS_SECRET_WRONG="Wrong secret key provided in URL" COM_CONVERTFORMS_SECURITY="Biztonság" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" ; COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Stop spam form submissions using the Invisible Google reCAPTCHA" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position of the reCAPTCHA badge. 'inline' lets you position it with CSS." ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Bottom right" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Bottom left" ; COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" ; COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Submissions" ; COM_CONVERTFORMS_SUBMISSIONS_LIST="Submissions List" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Show Confirmed Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Enable this, to show only confirmed submissions." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Üres értékek rejtése" ; COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Enable this option to hide fields with empty values." COM_CONVERTFORMS_SELECT_FORM="Válasszon űrlapot" ; COM_CONVERTFORMS_SELECT_FORM_DESC="Select the form to display submissions from" ; COM_CONVERTFORMS_SELECT_FORM_DESC2="Select the form to display" ; COM_CONVERTFORMS_LIST_LIMIT="Page Limit" ; COM_CONVERTFORMS_LIST_LIMIT_DESC="Number of submissions to display per page. Enter 0 for no limit." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="View Own Only" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Although you may display a list with submissions from different users, the visitor will be allowed to access the details page of their own submissions only, if this option is enabled.<br><br>The visitor is required to log into their account." ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Show Pagination" ; COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="If the total number of submissioins exceeds the Page Limit, pagination links will be shown below the submissions list." ; COM_CONVERTFORMS_ORDER="Sort Submissions" ; COM_CONVERTFORMS_ORDER_DESC="The order that submissions will show in." ; COM_CONVERTFORMS_ORDER_RECENT="Most Recent First" COM_CONVERTFORMS_ORDER_OLDEST="Legrégebbi legelől" COM_CONVERTFORMS_ORDER_RANDOM="Véletlenszerű sorrend" ; COM_CONVERTFORMS_FILTER_USER="Show Submissions From" ; COM_CONVERTFORMS_FILTER_USER_DESC="Select to filter submissions by the user who made the submission.<br><br><b>Logged-in User</b><br>Display submissions submitted by the current logged in user only. Each user will see their submissions.<br><br><b>All Users</b><br>Display all submissions.<br><br><b>Specific Users</b><br>Specify the submitters to filter the submissions." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Bejelentkezett felhasználó" COM_CONVERTFORMS_FILTER_USER_ALL="Összes felhasználó" ; COM_CONVERTFORMS_FILTER_USER_SELECT="Specific Users" COM_CONVERTFORMS_SET_USERS="Felhasználói azonosítók (ID)" ; COM_CONVERTFORMS_SET_USERS_DESC="Enter the Joomla User IDs to filter the submissions. Use a comma to separate multiple IDs." ; COM_CONVERTFORMS_LOAD_CSS="Load Stylesheet" ; COM_CONVERTFORMS_LOAD_CSS_DESC="Disable this option if you don't want to load the Convert Forms CSS file." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Layout" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choose the layout that will be used to display the submission in the front-end. You can also create your own layouts in your template." ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Layout Type" ; COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Layout Type" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Sablon" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Válasszon sablont" ; COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Select the template to display the submissions. This template will be used for both list and detailed view.<br><br>You can create your own template overrides within your template." ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Container Layout" ; COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="The main HTML layout of the submissions list. Do not remove {submissions} tag from this, since it is replaced with the data output." ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Row Layout" ; COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="The HTML layout of each submission as displayed in the Container Layout." ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Details Layout" ; COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="The HTML layout of the submission's details page." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Üres hely" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Adjon egy üres helyet az űrlapon" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Üres hely" ; COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Set a vertical gap between fields in pixels." ; COM_CONVERTFORMS_FIELD_HEADING="Heading" ; COM_CONVERTFORMS_FIELD_HEADING_DESC="Add a Heading title to group your fields" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Title HTML Element" ; COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Select the heading type." ; COM_CONVERTFORMS_FIELD_HEADING_USELINK="Use Link" ; COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Whether to make the heading point to a URL." ; COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" ; COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Enter the link to redirect the user to." ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Open in new tab" ; COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Enable to open the link in a new tab." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Set the font font size for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Select the font family for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Line Height" ; COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Set the line height for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Letter Spacing" ; COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Set the letter spacing for the heading." ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Content Alignment" ; COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Select the alignment of the heading." ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Show values" ; COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Make sure you set a unique value to each choice or you will have no way of knowing which option a user selected" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Use Calculation Values" ; COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Calculation values are generally used for calculations. It represents the numerical value of a choice." ; COM_CONVERTFORMS_FIELD_DIVIDER="Divider" ; COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Divides your form's sections" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE="Border Style" ; COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Select the border style of the divider." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Folytonos vonal" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Szaggatott vonal" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Pontozott" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Keret szélessége" ; COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Set the border width of the divider." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Keret színe" ; COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Set the border color of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_TOP="Margin Top" ; COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Set the top margin of the divider." ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Margin Bottom" ; COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Set the bottom margin of the divider." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="A hét első napja" ; COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Change the first day of the week presented in the date picker calendar." ; COM_CONVERTFORMS_ENTER_LABEL="Enter Label" COM_CONVERTFORMS_ADD_FIELD="Mezőt hozzáad" COM_CONVERTFORMS_ALL_FIELDS="Mezőket hozzáad" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" ; COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Layout Fields" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Allow Unsafe Files" ; COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Allow the upload of unsafe files.<br><br><b>A file is considered unsafe when:</b><br>- A null byte is found in the file name.<br>- File extension is forbidden: .php, py etc.<br>- There's a php tag in file content.<br>- There's a short tag in file content.<br>- There's a forbidden extension anywhere in the content.<br><br>This option protects you also from unsafe files included in compressed files such as zip, rar, tar e.t.c." ; COM_CONVERTFORMS_LABEL_POSITION="Label Position" ; COM_CONVERTFORMS_LABEL_POSITION_DESC="Set the position of the field label" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" ; COM_CONVERTFORMS_INVALID_RESPONSE="Invalid Response" ; COM_CONVERTFORMS_INVALID_TASK="Invalid Task" ; COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Please wait file uploading to complete." ; COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask is incomplete" ; COM_CONVERTFORMS_SUBMISSION_ID="Submission ID" ; COM_CONVERTFORMS_SUBMISSION_DATE="Submission Date" ; COM_CONVERTFORMS_SUBMISSION_STATUS="Submission Status" ; COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Submission Campaign ID" ; COM_CONVERTFORMS_SUBMISSION_FORM_ID="Submission Form ID" ; COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Submission Visitor ID" ; COM_CONVERTFORMS_SUBMISSION_USER_ID="Submission User ID" ; COM_CONVERTFORMS_SUBMISSIONS_COUNT="Submissions Count" COM_CONVERTFORMS_FIELD_RATING="Értékelés" ; COM_CONVERTFORMS_FIELD_RATING_DESC="Add a rating in your form and enable your users to give one or more ratings." COM_CONVERTFORMS_FIELD_RATING_ICON="Ikon" ; COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Select one from the eight built-in icon designs for your rating field." ; COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Set the size of the rating icons." ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Selected Color" ; COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Select the color that will be used when a rating icon is selected or hovered over." ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Unselected Color" ; COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Select the color that will be used when a rating icon is not selected." ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximum Rating" ; COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Enter the maximum rating icons that will be shown." ; COM_CONVERTFORMS_FIELD_RANGESLIDER="Range Slider" ; COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Add a range slider in your form and allow your users to select a value using a slider interface." ; COM_CONVERTFORMS_FIELD_COLORPICKER="Color Picker" ; COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="The color picker field allows your users to specify a color either by using a visual color picker interface or by entering their own color in hexadecimal format." ; COM_CONVERTFORMS_MIN_CHARS="Minimum Characters" ; COM_CONVERTFORMS_MIN_CHARS_DESC="Minimum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_CHARS="Maximum Characters" ; COM_CONVERTFORMS_MAX_CHARS_DESC="Maximum length for this field in characters. Enter 0 for no limit." ; COM_CONVERTFORMS_MIN_WORDS="Minimum Words" ; COM_CONVERTFORMS_MIN_WORDS_DESC="Minimum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_MAX_WORDS="Maximum Words" ; COM_CONVERTFORMS_MAX_WORDS_DESC="Maximum length for this field in words. Enter 0 for no limit." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Please lengthen this text to %s characters or more. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Please shorten this text to %s characters or less. You're currently using %s characters." ; COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Please lengthen this text to %s words or more. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Please shorten this text to %s words or less. You're currently using %s words." ; COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Enter the slider's minimum value." ; COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Enter the slider's maximum value." ; COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Enter the slider's step." ; COM_CONVERTFORMS_FIELD_RATINGS_HALF="Half Ratings" ; COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Support half ratings, eg: 0.5, 1,5, 2.5." ; COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" ; COM_CONVERTFORMS_FIELD_EDITOR_DESC="Provide a rich text editor for the user to format their responses in this field." ; COM_CONVERTFORMS_EDITOR_HEIGHT="Editor Height" ; COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Set the height in pixels" ; COM_CONVERTFORMS_EDITOR_SELECT="Joomla Editor" ; COM_CONVERTFORMS_EDITOR_SELECT_DESC="Select the Joomla editor to be used for this field. <br><br>If you don't see any editors in the list, make sure you've installed and activated at least 1 Joomla Editor plugin through the Joomla Plugins Manager." ; COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor not found: %s" ; COM_CONVERTFORMS_EXPORT_COMPLETED="%s submissions exported" ; COM_CONVERTFORMS_DOWNLOAD_WILL_START="Your download will start automatically." ; COM_CONVERTFORMS_EXPORT_WORKING="Exporting" ; COM_CONVERTFORMS_EXPORT_PROCESSING="Processed %s of %s submissions" ; COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Can't find exported file" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configure hCaptcha now" ; COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stop spam form submissions using hCaptcha" ; COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Select whether to use the checkbox or invisible version of hCaptcha." ; COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="The PHP extension <b>fileinfo</b> is required to guess the mime type of uploaded files but it's not installed or not loaded. Please contact your host to install it." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Submission Default State" ; COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Set the default state of each new submission." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]Ks%�[[Ecomponents/com_convertforms/language/uk-UA/uk-UA.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Конструктор форм" COM_CONVERTFORMS="Конструктор форм" COM_CONVERTFORMS_DESIGN="Дизайн" COM_CONVERTFORMS_BEHAVIOR="Поведінка" COM_CONVERTFORMS_LIST="Список" COM_CONVERTFORMS_NO_RESULTS_FOUND="Не %s знайдено" COM_CONVERTFORMS_CREATE_NEW="Створити нову?" COM_CONVERTFORMS_EMAIL_ASCENDING="Emai за зростанням" COM_CONVERTFORMS_EMAIL_DESCENDING="Email за спаданням" COM_CONVERTFORMS_ACTIONS="Дії" COM_CONVERTFORMS_VIEW_LEADS="Показати трансляцію" NRI_PLG_CONVERTFORMS="Конструктор форм плагін" COM_CONVERTFORMS_CONFIGURATION="Конструктор форм конфігурація" COM_CONVERTFORMS_LOADCSS="Завантажити таблицю стилів" COM_CONVERTFORMS_LOADCSS_DESC="Виберіть для завантаження розширеня таблиці стилів. Ви можете відключити цю функцію, якщо ви помістите всі свої власні стилі в деяких інших стилях, як поле для користувача код або таблиці стилів шаблонів" COM_CONVERTFORMS_DEBUG="Налаштування" COM_CONVERTFORMS_DEBUG_DESC="Увімкніть цю опцію, щоб допомогти вам налагодити помилки та несподівану поведінку. Повідомлення про помилки передаються в консоль браузера (натисніть F12) та в папку Журнали." COM_CONVERTFORMS_FORMS="Форми" COM_CONVERTFORMS_FORM="Форма" COM_CONVERTFORMS_NEW_FORM="Нова форма" COM_CONVERTFORMS_EDIT_FORM="Редагувати форму" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s копіювати форму" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s опублікувати форму" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s зняти з публікації" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s пошкоджені форми" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s Видалені форми" COM_CONVERTFORMS_FORM_ASCENDING="Форма по зростанню" COM_CONVERTFORMS_FORM_DESCENDING="Форма по спаданню" COM_CONVERTFORMS_FORM_SELECT="- Вибрати форму -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Опублікувати створений модуль" COM_CONVERTFORMS_FORM_LEADS="Наразі є %s передачі для цієї форми" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Публікація з використанням шорткод: %s" COM_CONVERTFORMS_CAMPAIGN="Компанія" COM_CONVERTFORMS_CAMPAIGNS="Компанії" COM_CONVERTFORMS_NEW_CAMPAIGN="Нова компанія" COM_CONVERTFORMS_EDIT_CAMPAIGN="Редагувати компанію" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Введіть назву кампанії. Це ім'я бачать лише ви." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s скопійовані компанії" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Неопубліковані компанії" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Опубліковані компанії" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Пошкоджені компанії" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Видалені компанії" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s публікації не опубліковані" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="Опубліковані %s публікації" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s подання додано до кошику" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s подань видалено" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Компанії по зростанню" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Компанії по спаданню" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Вибрати кампанію -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Будь ласка, збережіть кампанію, щоб налаштувати вашу інтеграцію." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Змінені компанії" COM_CONVERTFORMS_CAMPAIGN_SYNC="Синхронізувати передачі" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Виберіть, чи слід передачі синхронізувати з програмним забезпеченням сторонніх розробників або зберігати лише в базі даних. <Br> Примітка. Якщо потрібно використовувати програмне забезпечення сторонніх виробників, наприклад MailChimp, Aweber, GetResponse, Active Campaign тощо, то встановіть відповідне. Розширення в області аддону. " COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Видалені компанії" COM_CONVERTFORMS_CHOOSE_SERVICE="Виберіть послуги" COM_CONVERTFORMS_PENDING_LEADS="Перевірка в очікуванні" COM_CONVERTFORMS_SUBMISSIONS="Матеріали" COM_CONVERTFORMS_SUBMISSION="Подання" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Останні подання" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Підтверджено" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Не підтверджено" COM_CONVERTFORMS_EDIT_CONVERSION="Редагувати передачу" COM_CONVERTFORMS_SUBMISSION_INVALID="Подання не знайдено." COM_CONVERTFORMS_NOT_AUTHORIZED="Ви не маєте права доступу до цієї сторінки." COM_CONVERTFORMS_LEADS_ASC="Передача у порядку зростання" COM_CONVERTFORMS_LEADS_DESC="Нисхідні перекази" COM_CONVERTFORMS_LEADS_EXPORT="Експорт переказів" COM_CONVERTFORMS_ADDONS="Аддони" COM_CONVERTFORMS_INSTALL_ADDONS="Показати встановлені додатки" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Для того, щоб мати можливість встановити конвертувати форми плагінів, вам потрібно буде ввести свій ключ в Download налаштуваннях Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Додатки розширюють функціональні можливості конвертування форми. За допомогою цих аддонів, ви можете зв'язатися з програмним забезпеченням сторонніх виробників, інтегрувати нові функції і конвертувати форми ще більш потужними." COM_CONVERTFORMS_LAST_YEAR="Минулого року" COM_CONVERTFORMS_THIS_YEAR="Цього року" COM_CONVERTFORMS_LAST_MONTH="Минулого місяця" COM_CONVERTFORMS_THIS_MONTH="Цього місяця" COM_CONVERTFORMS_LAST_WEEK="Минулого тижня" COM_CONVERTFORMS_THIS_WEEK="Цей тиждень" COM_CONVERTFORMS_LAST_7_DAYS="Минулих 7 днів" COM_CONVERTFORMS_YESTERDAY="Вчора" COM_CONVERTFORMS_TODAY="Сьогодні" COM_CONVERTFORMS_AVG_DAY="Середнє в день (в цьому місяці)" COM_CONVERTFORMS_PROJECTION="Проекція за цей місяць" COM_CONVERTFORMS_TOTAL="Разом" COM_CONVERTFORMS_CHOOSE_FILE="Вибрати .cnvf file" COM_CONVERTFORMS_FORMS_NAME_DESC="Унікальна і описова назва допоможе вам в майбутньому, так як вона буде відображатися в панелі приладів, аналітика і т.д." COM_CONVERTFORMS_BACKGROUND_IMAGE="Фонове зображення Джерело" COM_CONVERTFORMS_IMAGE_DESC="Виберіть джерело зображення фону" COM_CONVERTFORMS_CUSTOM_URL="Власний URL" COM_CONVERTFORMS_BACKGROUND_URL="Фон зображення URL" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Введіть свій URL для вашого зображення" COM_CONVERTFORMS_BACKGROUND_FILE="Фонове зображення" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Виберіть зображення для завантаження." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Ви можете надати зображення, яке відображатиметься за вмістом форми. Виберіть <b> Завантажити </b>, щоб завантажити нове зображення, або <b> Спеціальна URL-адреса </b>, щоб ввести URL-адресу користувача. Щоб ця настройка працювала, обраний вами колір тла повинен бути прозорим" COM_CONVERTFORMS_FORM_BUILDER="Будівельник форми" COM_CONVERTFORMS_FIELD_TYPE="Поле Тип" COM_CONVERTFORMS_FIELD_TYPE_DESC="Атрибут Тип поля визначає тип вхідного елемента для відображення." COM_CONVERTFORMS_FIELD_LABEL="Поле Мітка" COM_CONVERTFORMS_FIELD_LABEL_DESC="Поле Метка визначає мітку для елемента вводу." COM_CONVERTFORMS_FIELD_NAME="Назва поля" COM_CONVERTFORMS_FIELD_NAME_DESC="Він вказує ім'я вхідного елемента, який використовується як посилання після подання форми. Використовуйте цю опцію для відображення полів форм у програмах інтеграції." COM_CONVERTFORMS_PLACEHOLDER_NAME="заміщає текст" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Текст, який відображається у полі введення до того, як користувач зробить запис." COM_CONVERTFORMS_REQUIRED_NAME="Обов'язкове поле" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Якщо увімкнено, це забезпечить заповнення цього поля перед тим, як дозволити подання форми." COM_CONVERTFORMS_FIELDS="Поля" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Ви використовуєте <b> Безкоштовну</b> версію, яка підтримує тільки 1 поле електронної пошти. <b> Оновіться до версії Pro</b> щоб мати можливість керувати необмеженими полями." COM_CONVERTFORMS_GENERAL="Загальний" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Поле Вирівнювання тексту" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Форма Вирівнювання тексту" COM_CONVERTFORMS_INPUT_COLOR="Поле Колір тексту" COM_CONVERTFORMS_INPUT_BGCOLOR="Поле Колір фону" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Поле Колір рамки" COM_CONVERTFORMS_SHADOW="Тінь" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Додає внутрішню тінь в поле вводу" COM_CONVERTFORMS_INPUT_FONT_SIZE="Поле Розмір шрифту" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Поле Розмір шрифту" COM_CONVERTFORMS_VPADDING_SIZE="Вертикальний відступ" COM_CONVERTFORMS_HPADDING_SIZE="Горизонтальний відступ" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Блок Максимальна ширина" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Забезпечити максимальну ширину паперу за вашим вибором або зробити цей блок на весь екран. Зверніть увагу, що це максимальна ширина, яка означає, що форма завжди буде відповідати на менші площі." COM_CONVERTFORMS_FORM_WIDTH="Користувацька Максимальна ширина" COM_CONVERTFORMS_FORM_WIDTH_DESC="Забезпечити максимальну ширину на замовлення за вашим вибором." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Видалити За замовчуванням підкладку" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Видалити відступ за замовчуванням між області вмісту і блочної форми країв." COM_CONVERTFORMS_FORM_BORDER_STYLE="Стиль рамки" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Нанесіть рамку навколо форми" COM_CONVERTFORMS_FORM_BORDER_COLOR="Колір Рамки" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Форма Колір рамки" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Ширина рамки" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Ширина рамки вигляд" COM_CONVERTFORMS_BOX_RADIUS="Радіус боксу" COM_CONVERTFORMS_BORDER_RADIUS="Радіус рамки" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Введіть розмір радіусу для рамки" COM_CONVERTFORMS_COLLECT_LEADS_USING="Збір трансляцій у кампанії" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Подання цієї форми буде пов’язане з обраною кампанією. Ви можете керувати кампаніями в області кампанії." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Успішне представлення дій" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Виберіть дію, яку ви хотіли б мати місце після успішного представлення" COM_CONVERTFORMS_DISPLAY_MSG="Повідомлення на дисплеї" COM_CONVERTFORMS_REDIRECT_USER="Перенаправлення користувача" COM_CONVERTFORMS_SUCCESS_TEXT="Повідомлення Після успіху" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Введіть повідомлення, яке ви хотіли б, щоб відобразити користувачеві після того, як успішно доданий в список." COM_CONVERTFORMS_SUCCESS_URL="Перенаправлення URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Введіть URL-адресу, де ви хотіли б, щоб перенаправити користувача після того, як успішно доданий в список." COM_CONVERTFORMS_PASS_DATA="Передати дані від передачі до перенаправленої URL-адреси" COM_CONVERTFORMS_PASS_DATA_DESC="Пересилає дані передачі як аргументи запиту на перенаправлену URL-адресу." COM_CONVERTFORMS_SUBMIT_STYLE="Стиль Кнопки Веведення" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Стиль вашої кнопки з хорошими ефектами." COM_CONVERTFORMS_BTN_SHADOW_DESC="Додає зовнішню тінь до кнопки" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Непевний колір тексту" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Непевний колір тексту" COM_CONVERTFORMS_CUSTOM_CSS="Власний CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Формуйте форму за допомогою власного спеціального CSS. <br> <br> Щоб допомогти вам у формуванні форми, код, доданий у цій області, виконується також у бекенді." COM_CONVERTFORMS_CLASS_SUFFIX="Клас суфіксу" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Клас суфіксу" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Вистота Textarea" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Висота Textarea визначає видиму висоту текстового поля, в рядках." COM_CONVERTFORMS_CHOICES="Вибір" COM_CONVERTFORMS_CHOICES_DESC="Додати параметри для форми форми." COM_CONVERTFORMS_FIELD_VALUE="за замовчуванням" COM_CONVERTFORMS_FIELD_VALUE_DESC="Введіть текст для значення поля за замовчуванням." COM_CONVERTFORMS_HIDE_LABELS="Сховати мітку" COM_CONVERTFORMS_HIDE_LABELS_DESC="Виберіть цей параметр, щоб приховати мітку для поля форми" COM_CONVERTFORMS_IMAGE_SOURCE="Джерело зображення" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Ви можете надати зображення, яке буде відображатися серед вмісту форми. Вибирати <b>Завантажити</b>щоб завантажити нове зображення або <b>Власний URL</b> ввести URL призначеного для користувача зображення." COM_CONVERTFORMS_IMAGE_URL="Зображення URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Приховати зображення на невеликих екранах" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="На невеликих екранах мобільних пристроїв, так як, менші модальності будуть виглядати більш красиво. Для того, щоб зменшити розмір модального, ви можете приховати зображення з цією установкою." COM_CONVERTFORMS_HORIZONTAL_POSITION="Горизонтальне положення" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Горизонтальне положення" COM_CONVERTFORMS_VERTICAL_POSITION="Вертикальне положення" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Вертикальне положення" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Ширина зображення" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Набір ширина зображення" COM_CONVERTFORMS_BUTTON_ALIGN="Кнопка Вирівнювання" COM_CONVERTFORMS_FORM_POSITION="Позиція форми" COM_CONVERTFORMS_FORM_POSITION_DESC="Встановити форми положення щодо тексту контейнера" COM_CONVERTFORMS_FORM_SIZE="Контейнер форми Розмір " COM_CONVERTFORMS_COLUMNS_DESC="Вкажіть, скільки колонок буде використовуватися. 6 колонок займає 50% від ширини." COM_CONVERTFORMS_MESSAGE="Текст Повідомлення" COM_CONVERTFORMS_MESSAGE_DESC="Введіть текст повідомлення в вигляді" COM_CONVERTFORMS_IMAGE_POSITION="Позиція Зображення" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Встановити положення зображення по відношенню до тексту" COM_CONVERTFORMS_FOOTER="Форма нижнього колонтитула" COM_CONVERTFORMS_BUTTON_TEXT="Текст Кнопки" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Кнопка введення текстової мітки" COM_CONVERTFORMS_BTN_FONT_SIZE="Розмір Тексту Кнопки" COM_CONVERTFORMS_IMAGE_SIZE="Розмір контейнера зображення" COM_CONVERTFORMS_BODY_FONT="Варіант шрифтів" COM_CONVERTFORMS_BODY_FONT_DESC="Виберіть шрифт, який буде використовуватися для форми. Зверніть увагу, що нестандартні шрифти, такі як Google Fonts, можуть сповільнити час завантаження веб-сайту. Виберіть"_QQ_" Стандартний "_QQ_", щоб використовувати шрифт за замовчуванням вашого веб-сайту." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Дата" COM_CONVERTFORMS_CREATED="Створено" COM_CONVERTFORMS_SUBMISSION="Подання" COM_CONVERTFORMS_PREVIEW_SUCCESS="Повідомлення про успішне виконання попереднього перегляду" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Ця версія буде відображатися на екранах розміром 990px і вище" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Ця версія буде відображатися на екранах розміром 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Ця версія буде відображатися на екранах розміром 768px і нижче" COM_CONVERTFORMS_DEVICE_DESKTOP="Робочий стіл" COM_CONVERTFORMS_DEVICE_TABLET="Планшет" COM_CONVERTFORMS_DEVICE_MOBILE="Мобільний телефон" COM_CONVERTFORMS_RESET_FORM="Очистити форму" COM_CONVERTFORMS_RESET_FORM_DESC="Очистити форму після успішного представлення" COM_CONVERTFORMS_HIDE_FORM="Приховати форму" COM_CONVERTFORMS_HIDE_FORM_DESC="Приховати форму після успішного представлення" COM_CONVERTFORMS_TEMPLATES="Шаблони" COM_CONVERTFORMS_TEMPLATES_SELECT="Виберіть шаблон, щоб почати" COM_CONVERTFORMS_TEMPLATES_BLANK="Починати з нуля" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Почати з початку нову форму" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="В лінію" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Бічна панель" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Бар" COM_CONVERTFORMS_LABELS_COLOR="Мітка Колір тексту" COM_CONVERTFORMS_LABELS_FONT_SIZE="Мітка Розмір шрифту" COM_CONVERTFORMS_IMAGE_ABOVE="Над текстом" COM_CONVERTFORMS_IMAGE_BELOW="Внизу тексту" COM_CONVERTFORMS_IMAGE_RIGHT="Праворуч від тексту" COM_CONVERTFORMS_IMAGE_LEFT="Ліворуч від тексту" COM_CONVERTFORMS_FLAT="Відділ" COM_CONVERTFORMS_OUTLINE="Контур" COM_CONVERTFORMS_GRADIENT="Градієнт" COM_CONVERTFORMS_EMAILS_DESC="Надіслати сповіщення електронною поштою, коли користувач подає форму." COM_CONVERTFORMS_EMAILS="Повідомлення по електронній пошті" COM_CONVERTFORMS_EMAILS_REPLY_TO="Відповісти електронну адресу" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Ім'я відповіді" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Електронний лист від" COM_CONVERTFORMS_EMAILS_FROM="Від імені" COM_CONVERTFORMS_EMAILS_RECIPIENT="Адреса одержувача електронної пошти" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Введіть адреси електронної пошти, на які слід надсилати сповіщення про передачу. \\ N Для декількох повідомлень розділіть електронні адреси комою." COM_CONVERTFORMS_EMAILS_SUBJECT="Тема електронної пошти" COM_CONVERTFORMS_EMAILS_BODY="повідомлення" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Вам потрібні кілька повідомлень" COM_CONVERTFORMS_EMAILS_ATTACHMENT="Вкладення" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Положення файлу, який потрібно приєднати відносно кореневого каталогу вашого веб-простору. Використовуйте кома для визначення кількох файлів." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Немає розширення?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="У разі, якщо ви хочете розширення інтеграції для вашого бажаного додатка, повідомте нас про це. Ми будемо раді включити розширення до колекції розширень Convert Forms." COM_CONVERTFORMS_API_ENABLE="Активувати API JSON" COM_CONVERTFORMS_API_DESC="API JSON дозволяє конвертувати форми за допомогою HTTP-запитів." COM_CONVERTFORMS_API_KEY="Секретний ключ" COM_CONVERTFORMS_API_KEY_DESC="Цей секретний ключ використовується для автентифікації критичних завдань, таких як завдання CRON та API JSON. Якщо залишити це поле порожнім, усі завдання, які потребують автентифікації користувача, будуть деактивовані."_QQ_" COM_CONVERTFORMS_IMAGE_ALT="_QQ_"Альтернативний текст зображення" COM_CONVERTFORMS_IMAGE_ALT="Альтернативний текст світлини" COM_CONVERTFORMS_IMAGE_ALT_DESC="Альтернативний текст для зображення" COM_CONVERTFORMS_CUSTOM_CODE="Власний код" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Розмістіть спеціальний код у кінці форми. Він приймає HTML, CSS та Javascript. <br> <br> Для Javascript переконайтеся, що ви загорнули код тегом <script>. <br> <br> Код, доданий у цій області, не виконується в бекенді." COM_CONVERTFORMS_ISSUES="проблема" COM_CONVERTFORMS_ISSUES_DETECTED="Виявлені %s проблеми передачі" COM_CONVERTFORMS_CREATED="Створено" COM_CONVERTFORMS_MODIFIED="Дата змінена" COM_CONVERTFORMS_IP="IP-адреса відправника" COM_CONVERTFORMS_USER_ID="Ідентифікатор відправника" COM_CONVERTFORMS_USER_USERNAME="Ім'я користувача відправника" COM_CONVERTFORMS_VISITOR_ID="Ідентифікатор відвідувача" COM_CONVERTFORMS_FORM_NAME="Ім'я форми" COM_CONVERTFORMS_CAMPAIGN_NAME="Назва кампанії" COM_CONVERTFORMS_ID="ВД" COM_CONVERTFORMS_CHOOSE_COLUMNS="стовпці" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Щоб активувати певні поля форми, спочатку виберіть форму на панелі фільтру." COM_CONVERTFORMS_UNTITLED_BOX="Форма без імені" COM_CONVERTFORMS_SELECT_LAYOUT="Виберіть макет" COM_CONVERTFORMS_SHOW_LAYOUTS="Показати макети" COM_CONVERTFORMS_HIDE_LAYOUTS="Сховати макети" COM_CONVERTFORMS_FIELDS_COPY="Повторне поле" COM_CONVERTFORMS_FIELDS_DELETE="Видалити поле" COM_CONVERTFORMS_FIELDGROUP_COMMON="Загальні поля" COM_CONVERTFORMS_FIELDGROUP_FANCY="Додаткові поля" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Розширені поля" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Додайте власний текст або HTML-код. Без обмежень!" COM_CONVERTFORMS_FIELD_TEXT="текстове поле" COM_CONVERTFORMS_FIELD_TEXT_DESC="Однорядне текстове поле" COM_CONVERTFORMS_FIELD_TEXTAREA="текстова область" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Як текстове поле, але в яке можна ввести кілька рядків" COM_CONVERTFORMS_FIELD_NUMBER="число" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Текстове поле, у яке можна вводити лише числа" COM_CONVERTFORMS_FIELD_NUMBER_STEP="прирощення" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Значення, за допомогою якого число змінюється при натисканні клавіші зі стрілкою" COM_CONVERTFORMS_FIELD_NUMBER_MIN="Мінімальне значення" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Мінімальне дозволене числове значення поля" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Максимальне значення" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Максимально дозволене числове значення поля" COM_CONVERTFORMS_FIELD_RECAPTCHA="рекапчі" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Запобігти передачі спаму з форм Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Будь ласка, встановіть свою сторінку та секретні ключі на сторінці конфігурації." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Тепер налаштуйте reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Колірна схема віджета" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Розмір віджета" COM_CONVERTFORMS_FIELD_DROPDOWN="Виберіть" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Список, який дозволяє вибрати один елемент із вибору списку" COM_CONVERTFORMS_FIELD_RADIO="Перемикачі" COM_CONVERTFORMS_FIELD_RADIO_DESC="Список, який дозволяє вибрати один елемент із вибору опції" COM_CONVERTFORMS_FIELD_URL="Веб-сайт / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Приймає правильно відформатовану URL-адресу, що починається з http: // або https: //" COM_CONVERTFORMS_FIELD_URL_INVALID="Недійсна URL-адреса" COM_CONVERTFORMS_FIELD_COUNTRY="Країна" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Список усіх відомих країн" COM_CONVERTFORMS_FIELD_COUNTRY_VALUE="Зміст поля країни" COM_CONVERTFORMS_FIELD_COUNTRY_VALUE_DESC="Виберіть, чи хочете ви зберегти ім'я країни (Німеччина) або код країни (DE) у базі даних." COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Визнати країну відвідувача веб-сайту" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Якщо цей параметр встановлений, країна спробує розпізнати відвідувачів веб-сайту та заповнити їх автоматично. Потрібно розширення TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_NAME="Назва країни" COM_CONVERTFORMS_FIELD_COUNTRY_CODE="код країни" COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Виключити країни" COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Введіть коди країн, розділені комами, щоб виключити зі спадного списку. Приклад: США, Великобританія, GR" COM_CONVERTFORMS_FIELD_CURRENCY="валюта" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Список усіх відомих валют" COM_CONVERTFORMS_FIELD_SUBMIT="Submit-кнопки" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Кнопка, що надсилає форму" COM_CONVERTFORMS_FIELD_HIDDEN="Приховане поле" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Поле, яке не видно користувачу форми" COM_CONVERTFORMS_FIELD_EMAIL="Адреса електронної пошти" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Текстове поле, яке приймає лише дійсну адресу електронної пошти" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Умови використання" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Користувач повинен погодитися з умовами користування перед подачею форми" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Текст умов використання" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Цей текст відображається безпосередньо після прапорця" COM_CONVERTFORMS_FIELD_CHECKBOX="родзинка коробки" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Список, який дозволяє кілька виборів у вигляді прапорців" COM_CONVERTFORMS_FIELD_REQUIRED="Обов'язково" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Недійсна адреса електронної пошти" COM_CONVERTFORMS_FIELD_SIZE="розмір поля" COM_CONVERTFORMS_FIELD_SIZE_DESC="Вибрати розмір поля за замовчуванням" COM_CONVERTFORMS_FIELD_TEL="Телефон" COM_CONVERTFORMS_FIELD_TEL_DESC="Дозволяє користувачеві вводити номер телефону" COM_CONVERTFORMS_FIELD_DATETIME="Дата / Час" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Вибір дати / часу, який дозволяє вибрати одну дату, кілька дат або діапазон дат" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Формат дати" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Формат виводу дати. Приклади. <br> d / m / Y H: i <br> Y-m-d <br> m / d / YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Показати вибір часу" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Активує вибір часу. Переконайтесь, що ви використовуєте змінні часу (H: i) у форматі дати, якщо ви активуєте цю опцію." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Рання дата" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Найдавніша / найменша дата, дозволена для вибору. Підтримує відносні дати, такі як: завтра, +5 день, +2 тижні" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Остання дата" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Остання / найбільша дата, дозволена для вибору. Підтримує відносні дати, такі як: завтра, +5 день, +2 тижні" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Режим вибору дати" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Дозволяє користувачеві вибрати одну дату, декілька дат або діапазон дат." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24-годинний режим часу" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Відображення вибору часу в режимі 24 години без AM / PM" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Розмір кроку в хвилинах" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Відрегулювати розмір кроку в хвилинах під час вибору часу" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Показати всередині" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Показати календар у формі замість спливаючого вікна." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Вигляд" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Вибрати тему календаря" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Недійсний формат дати - %s " COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Вимкнути вибір дати для мобільних пристроїв" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Якщо активовано, замість рідної операційної системи мобільного оператора відображатиметься інструмент вибору дати перетворення форм"_QQ_"" COM_CONVERTFORMS_CSS_CLASSES="CSS клас" COM_CONVERTFORMS_CSS_CLASSES_DESC="Додавання CSS-класів до вхідного контейнера. Це в основному можна використовувати для цілей компонування." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Введіть клас CSS" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Додати класи CSS до вхідного елемента. Використовуйте цю опцію, щоб самостійно відформатувати вхід. COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE ="_QQ_" Вимкнути автоматичне завершення браузера " COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Вимкнути автозаповненя в браузері" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Зазвичай браузери пам'ятають, які дані передає користувач із полями введення. Щоб вимкнути автоматичне заповнення у формах, активуйте цю опцію." COM_CONVERTFORMS_FIELD_DESCRIPTION="Текст допомоги" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Текст довідки відображатиметься поруч із цим полем." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Перевірка DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Перевірка електронної адреси за допомогою перевірки DNS." COM_CONVERTFORMS_FIELDGROUP_USERINFO="Поля інформації користувача" COM_CONVERTFORMS_FIELD_CONFIRM="Підтвердити" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Одне поле для забезпечення відповідності двох полів" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Підтвердити клавішу поля" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Введіть ключ поля, який буде використовуватися для забезпечення відповідності значень." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Поле неправильно налаштовано" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Значення поля не відповідають" COM_CONVERTFORMS_HIDE_TEXT="Сховати текст" COM_CONVERTFORMS_HIDE_TEXT_DESC="Сховати текст після успішної передачі" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="У формі немає поля електронної адреси" COM_CONVERTFORMS_INVALID_LEAD="Передачу неможливо перевірити" COM_CONVERTFORMS_EXCEL_SECURITY="Розширена безпека" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Якщо активовано, значень у файлі експорту CSV, що починаються з =, +, - або @, передуватиме вкладкою, щоб уникнути ін'єкції CSV, коли експортований файл відкриється в Excel. <br> <br> Деактивуйте цю опцію, лише якщо ви на 100% впевнені, що дані надійні або якщо у вас виникли труднощі з відкриттям файлу CSV в іншій програмі. " COM_CONVERTFORMS_CHOICE_LAYOUT="Вибрати макет" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Виберіть макет для відображення вибору поля" COM_CONVERTFORMS_CHOICE_1_COLUMN="Один стовпець" COM_CONVERTFORMS_CHOICE_2_COLUMN="Два стовпці" COM_CONVERTFORMS_CHOICE_3_COLUMN="Три стовпці" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Поруч" COM_CONVERTFORMS_REQUIRED_INDICATION="Обов'язкове поле знак" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Позначте обов'язкові поля зірочкою у відповідному описі." COM_CONVERTFORMS_INPUT_MASK="маска введення" COM_CONVERTFORMS_INPUT_MASK_DESC="Допоможіть користувачеві заздалегідь заданими форматами при введенні даних. <br> <br> <b> Синтаксис: </b> <br> 9: число (0-9). A: літеру (az або AZ) <br> A: Великі літери (AZ) <br> *: Буквено-цифрові (0-9, az або AZ) <br> &: Буквено-цифрові літери (0-9 або AZ) <br> <br> <b> Приклади </b>: телефон телефону: +1 (999) -9999 - дата: 99/99/9999 - поштовий індекс: 99999? -9999 " COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Дані, передані користувачем" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Не передано переданих даних" COM_CONVERTFORMS_LEAD_INFO="Інформація про передачу" COM_CONVERTFORMS_NOTES="Примітка" COM_CONVERTFORMS_DATE_RANGE="діапазон дат" COM_CONVERTFORMS_START_DATE="Дата початку" COM_CONVERTFORMS_END_DATE="Дата закінчення" COM_CONVERTFORMS_PERIOD="діапазон дат" COM_CONVERTFORMS_PERIOD_SELECT="- Виберіть діапазон дат -" COM_CONVERTFORMS_HONEYPOT="Активувати медовий горщик проти спаму" COM_CONVERTFORMS_HONEYPOT_DESC="Активуйте цю опцію, щоб додати поле меду до форми, яку видно лише ботам. Якщо поле медового поля заповнене, форма автоматично визнає, що користувач був спамом. <br> <br> Однак на багатьох веб-сайтах, якщо ви все-таки отримуєте спам або хочете вжити додаткових запобіжних заходів, ReCAPTCHA - це чудовий додатковий варіант "_QQ_"" COM_CONVERTFORMS_FIELD_FILEUPLOAD="Завантажити файл" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Дозволити користувачу завантажувати файли" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Для тимчасової папки вашого веб-сайту встановлено значення <b>%s</b> але це не для запису. Вкажіть тимчасову папку для запису." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Пункт завантаження" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Вкажіть цільову папку для завантажених файлів.<br><br> <b>Auto</b>: The files will be uploaded to /media/com_convertforms/uploads folder. Additionally a random prefix will be added in the beginning of each file name to increase security.<br><br><b>Custom</b>: Specify a custom destination folder and naming convention." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Спеціальне призначення завантаження" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Введіть шлях відносно кореня вашого веб-простору, де будуть зберігатися завантажені файли. Щоб перейменувати завантажені файли, використовуйте такі смарт-теги.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>Він також може приймати глобальні розумні теги, такі як {year}, {month}, {user.id} або {randomid}, щоб створити ще більш динамічне місце призначення для завантаження." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Обмежити кількість файлів" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Скільки файлів можна завантажити? Введіть 0 для необмежено"_QQ_"" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Обмеження розміру файлу" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Налаштувати максимальний розмір для кожного завантаженого файлу в МБ. Введіть 0 для необмеженого розміру файлу. <br> <br> Ваш сервер дозволяє максимальний розмір файлу: <b> %s </b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Дозволені типи файлів" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Введіть розділений комами список дозволених типів файлів, таких як: </b> .jpg, .gif, .png, .pdf <br> <br> Ви можете вводити такі типи медіа, як: application / pdf, images / *, video / * < br> <br> Або ви навіть можете змішати обидва: application / *, .png, .jpg <br> <br> Примітка: Це не дурість, будь ласка, пам’ятайте, що завжди існує небезпека дозволити користувачі завантажують файли." COM_CONVERTFORMS_FIELD_FILTER="Фільтр" COM_CONVERTFORMS_FIELD_FILTER_DESC="Фільтруйте введення користувача за допомогою наступних фільтрів. <br> <b> Текст </b>: Перетворює введення у простий текстовий рядок та видаляє всі теги / атрибути. <br> <b> Безпечний HTML </b> : Приймайте лише захищені HTML-елементи, такі як. <br> <b> Буквено-цифровий </b>: Дозволити лише az та 0-9. <b> Word </b>: Дозволити лише символи az та підкреслення <br> << > Integer </b>: Використовуйте лише перше числове значення. <br> <b> Float </b>: Дозвольте лише символи az та підкреслення. "_QQ_"COM_CONVERTFORMS_UPLOAD_ERROR ="_QQ_" Недійсна клавіша форми та поля " COM_CONVERTFORMS_UPLOAD_ERROR="Недійсна форма форми або ключ поля" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Неправильне поле для завантаження" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Недійсний або непідтримуваний файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Ви можете завантажити до % d файлів" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Перетягніть файли сюди або" COM_CONVERTFORMS_UPLOAD_BROWSE="Перегляд" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Тимчасовий файл %s відсутній. Будь ласка, повторно завантажте." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Папка для завантаження файлів %s не існує або не піддається запису." COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Файл занадто великий ({{розмір файлів}} МБ). Максимальний розмір файлу: {{maxFilesize}} МБ." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Ви не можете завантажувати файли такого типу." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Ваш браузер не підтримує Drag'n'Drop для завантаження файлів." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Сервер відповів з кодом {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Скасувати завантаження" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Ви впевнені, що хочете скасувати завантаження?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Видалити файл" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Ви не можете завантажити більше файлів." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Автоматично видаляти файли" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Якщо ви отримуєте багато завантажень, місце для зберігання серверу, яке займають завантажені файли, можна швидко наростити. Для цього потрібно регулярне очищення, щоб звільнити місця для зберігання. <br> <br> За допомогою цієї опції ви можете автоматично видаляти збережені файли. Папки через певний проміжок часу. <br> <br> Наприклад, введіть 3, щоб автоматично видалити файли старше 3 днів, або 0, якщо ви хочете зберегти файли назавжди. <br> <br> Примітка. "_QQ_"Плагін"_QQ_" Перетворити форми завантажених файлів "_QQ_"повинен бути активований і на вашому сервері має бути встановлена відповідна URL-адреса завдання" COM_CONVERTFORMS_READONLY="Тільки для читання" COM_CONVERTFORMS_READONLY_DESC="Запобігти введенню в це поле" COM_CONVERTFORMS_PHPSCRIPT="PHP скрипти" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Показ форми" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Доданий у цій області скрипт PHP виконується безпосередньо перед відображенням форми. <br> <br> У центрі уваги в цій галузі є <b>$formLayout</b> (String) змінна, що містить HTML-код форми. <br> <br> Для доступу до налаштувань форми використовуйте <b>$form</b> (Array)змінна. <br> <br> Не потрібно включати <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Процесс форми" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="PHP-код, доданий у цій області, виконується безпосередньо перед збереженням даних форми в базі даних, незалежно від того, чи надійність подання чи ні. <br> <br> Ця область корисна, коли потрібно робити обчислення, виконувати розширену перевірку чи змінювати значення поля. Зміни в<b>$post</b> (Array) Die hier vorgenommene Variable wird im Übermittlungseintrag berücksichtigt. <br> <br> Um auf die Formulareinstellungen zuzugreifen, verwenden Sie die <b>$form</b> (Array) змінна. <br> <br> Вам не потрібно включати <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Після відправки форми" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="PHP-код, доданий у цій області, буде виконаний після успішного подання форми та збереження даних у базі даних. <br> <br> Це корисніше, намагаючись виконувати деякі додаткові завдання, такі як: B. надсилати дані до іншої URL-адреси без нагляду. Ви можете отримати доступ до остаточного подання, натиснувши кнопку<b>$submission</b> (Object) Змінна. <br> <br> Для доступу до налаштувань форми використовуйте <b>$form</b> (Array) змінна. <br> <br> Вам не потрібно включати <?php and ?> теги." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP-скрипти не виконуються на бекенді, щоб запобігти проблемам із програмою попереднього перегляду форми. Завжди тестуйте на передній частині." COM_CONVERTFORMS_FIELD_PASSWORD="Пароль" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Дозволити користувачам безпечно вводити пароль" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Підтвердити тип поля" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Виберіть тип запису для поля підтвердження між текстом та паролем." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Formularvorbereitung" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Доданий у цій області скрипт PHP виконується до обробки даних форми та надсилання їх до переглядача форми. <br> <br> У центрі уваги в цій галузі є <b>$form</b> (Array) Змінна, що містить налаштування форми. <br> <br> Вам не потрібно це вставляти <?php and ?> теги." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s вже зареєстрований." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s виглядає неправильним або недійсним, введіть справжню електронну адресу." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Помилка: reCAPTCHA Google не завантажений. Переконайтеся, що ваш браузер не блокує його, або зверніться до адміністратора сайту." COM_CONVERTFORMS_ACCESS_FORMS="Адміністрація форми" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Дозволяє користувачам групи керувати формами." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Переклади" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Дозволяє користувачам групи керувати доставками." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Доступ до кампаній" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Дозволяє користувачам у групі керувати кампаніями. Поставте цей прапорець, якщо у вас є проблеми з надсиланням спаму." COM_CONVERTFORMS_CSRF_CHECK="Використовувати маркер Joomla! CSRF" COM_CONVERTFORMS_CSRF_CHECK_DESC="Додайте додатковий рівень захисту до своїх форм, перевіривши всі запити AJAX з маркерами CSRF. ! Плагін кеш-сторінки або проксі-сервер кешування на стороні сервера, як CloudFlare або Sucuri, можуть спричинити проблеми при надсиланні форми. " COM_CONVERTFORMS_THANK_YOU_MESSAGE="Форма успішно надіслана" COM_CONVERTFORMS_SECRET_SET="Будь ласка, налаштуйте секретний ключ, щоб використовувати оптимальну кінцеву точку." COM_CONVERTFORMS_SECRET_NO="Не вказаний секретний ключ в URL" COM_CONVERTFORMS_SECRET_WRONG="Неправильний секретний ключ вказаний в URL" COM_CONVERTFORMS_SECURITY="Безпека" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA невидимий" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Зупинити подання форми спаму, використовуючи невидимий Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Значок" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Положення значка reCAPTCHA."_QQ_" Inline "_QQ_"дозволяє позиціонувати його за допомогою CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Знизу праворуч" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Знизу вліво" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Вбудований" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Матеріали" COM_CONVERTFORMS_SUBMISSIONS_LIST="Список Подання" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Показати лише підтверджене" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Позначте цю опцію, щоб відображатись лише підтверджені подання." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Сховати порожні значення" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Позначте цю опцію, щоб сховати поля з порожніми значеннями." COM_CONVERTFORMS_SELECT_FORM="Вибрати форму" COM_CONVERTFORMS_SELECT_FORM_DESC="Вибрати форму для відображення записів" COM_CONVERTFORMS_SELECT_FORM_DESC2="Виберіть форму для відображення" COM_CONVERTFORMS_LIST_LIMIT="межа сторінки" COM_CONVERTFORMS_LIST_LIMIT_DESC="Кількість подань для відображення на сторінці. Введіть 0 необмежено." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Показати лише своє" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Хоча ви можете побачити список публікацій від різних користувачів, відвідувач може отримати доступ до сторінки детальних даних про свої власні публікації, лише якщо ця опція включена. <br> <br> Відвідувач повинен увійти до свого акаунта." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Показати сторінку" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Якщо загальна кількість публікацій перевищує ліміт сторінки, в списку подань з'являться посилання на сторінки." COM_CONVERTFORMS_ORDER="Сортувати записи" COM_CONVERTFORMS_ORDER_DESC="Порядок відображення подань." COM_CONVERTFORMS_ORDER_RECENT="Останній перший" COM_CONVERTFORMS_ORDER_OLDEST="Найстаріший перший" COM_CONVERTFORMS_ORDER_RANDOM="Випадкове замовлення" COM_CONVERTFORMS_FILTER_USER="Показати матеріали від" COM_CONVERTFORMS_FILTER_USER_DESC="Виберіть цей параметр, щоб відфільтрувати подання користувача, який подав матеріали. <br> <br> <b> Увійшов користувач </b> <br> Показуйте матеріали лише тих, хто ввійшов у систему. Будь-який користувач бачить ваші подання. для фільтрації матеріалів. " COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Зареєстрований користувач" COM_CONVERTFORMS_FILTER_USER_ALL="Усі користувачі" COM_CONVERTFORMS_FILTER_USER_SELECT="Конкретні користувачі" COM_CONVERTFORMS_SET_USERS="ідентифікатори користувачів" COM_CONVERTFORMS_SET_USERS_DESC="Введіть ідентифікатори користувачів Joomla для фільтрації подань. Використовуйте кому для розділення кількох ідентифікаторів." COM_CONVERTFORMS_LOAD_CSS="Завантажити таблицю стилів" COM_CONVERTFORMS_LOAD_CSS_DESC="Вимкнути цю опцію, якщо ви не хочете завантажити CSS-файл конвертувати форми." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="розташування" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Виберіть макет, з яким подання має відображатися у фронтальному віці. Ви також можете створити власні макети у своєму шаблоні." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="типу компонування" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="типу компонування" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Вибрати шаблон" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Виберіть шаблон для перегляду поданих матеріалів. Цей шаблон використовується як для перегляду списку, так і деталей. <br> <br> Ви можете створити власні зміни в шаблоні." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Контейнер макету" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Головний HTML-макет списку доставки. Не видаляйте тег {Submissions}, оскільки він буде замінений вихідними даними." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Line макет" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="HTML-макет кожного подання, як показано в макеті контейнера." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Детальний макет" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Макет HTML сторінки детальної інформації про подання"_QQ_"" COM_CONVERTFORMS_FIELD_EMPTYSPACE="Порожній простір" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Додати порожній простір у форму" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Порожній простір" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Встановити вертикальний зазор між полями в пікселях." COM_CONVERTFORMS_FIELD_HEADING="Заголовок" COM_CONVERTFORMS_FIELD_HEADING_DESC="Додайте заголовок заголовка, щоб згрупувати ваші поля" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Елемент HTML заголовка" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Виберіть тип заголовка." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Використовувати посилання" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Чи потрібно вказувати заголовок на URL-адресу." COM_CONVERTFORMS_FIELD_HEADING_LINK="Посилання" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Введіть посилання для перенаправлення користувача." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Відкрити в новій вкладці" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Увімкнути, щоб відкрити посилання в новій вкладці." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Встановити розмір шрифту шрифту для заголовка." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Виберіть сімейство шрифтів для заголовка." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Висота лінії" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Встановити висоту рядка для заголовка." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Інтервал між літерами" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Встановити інтервал літер для заголовка." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Вирівнювання вмісту" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Вибрати вирівнювання заголовка." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Показати значення" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Переконайтесь, що ви встановили унікальне значення для кожного вибору, або у вас не буде можливості знати, який варіант обрав користувач" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Використовувати значення обчислення" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Значення обчислення зазвичай використовуються для обчислень. Це представляє числове значення вибору." COM_CONVERTFORMS_FIELD_DIVIDER="Роздільник" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Розділяє розділи форми" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Стиль кордону" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Виберіть стиль межі роздільника." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Суцільний" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Пунктирний" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Пунктирний" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Ширина кордону" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Встановити ширину кордону дільника." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Колір рамки" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Встановити колір межі дільника." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Поверхня поля" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Встановити верхню межу дільника." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Дно поля" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Встановити нижню межу дільника." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Перший день тижня" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Змініть перший день тижня, представлений у календарі вибору дат." COM_CONVERTFORMS_ENTER_LABEL="Ввести назву" COM_CONVERTFORMS_ADD_FIELD="Додати поле" COM_CONVERTFORMS_ALL_FIELDS="Додати поля" COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="Усі поля - тільки поля" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Поле макета" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Дозволити небезпечні файли" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Дозволити завантаження небезпечних файлів. заборонено: .php, py тощо. <br> - В вмісті файлу є тег php. br> Ця опція захищає вас також від небезпечних файлів, включених до стислих файлів, таких як zip, rar, tar тощо " COM_CONVERTFORMS_LABEL_POSITION="Позиція мітки" COM_CONVERTFORMS_LABEL_POSITION_DESC="Встановити положення мітки поля" COM_CONVERTFORMS_INVALID_RESPONSE="Недійсна відповідь" COM_CONVERTFORMS_INVALID_TASK="Недійсне завдання" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Зачекайте, поки завантаження файлів завершиться." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Маска неповна" COM_CONVERTFORMS_SUBMISSION_ID="Ідентифікатор подання" COM_CONVERTFORMS_SUBMISSION_DATE="Дата подання" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Ідентифікатор кампанії для подання" COM_CONVERTFORMS_SUBMISSION_FORM_ID="Ідентифікатор форми подання" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Ідентифікатор відвідувача подання" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Кількість подань" COM_CONVERTFORMS_MIN_CHARS="Мінімум символів" COM_CONVERTFORMS_MIN_CHARS_DESC="Мінімальна довжина для цього поля в символах. Введіть 0 без обмеження." COM_CONVERTFORMS_MAX_CHARS="Максимум символів" COM_CONVERTFORMS_MAX_CHARS_DESC="Максимальна довжина цього поля в символах. Введіть 0 без обмеження." COM_CONVERTFORMS_MIN_WORDS="Мінімум слів" COM_CONVERTFORMS_MIN_WORDS_DESC="Мінімальна довжина для цього поля словами. Введіть 0 без обмеження." COM_CONVERTFORMS_MAX_WORDS="Максимум слів" COM_CONVERTFORMS_MAX_WORDS_DESC="Максимальна довжина для цього поля словами. Введіть 0 без обмеження." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Будь ласка, продовжте цей текст до%s символів або більше. Ви зараз використовуєте %s символів." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Скоротіть цей текст до %s символів або менше. Ви зараз використовуєте %s символів" COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Будь ласка, продовжте цей текст до %s слів або більше. Ви зараз використовуєте%s слів" COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Скоротіть цей текст до %s слів або менше. Ви зараз використовуєте%s слів." PKBA#]�F�{��Ecomponents/com_convertforms/language/et-EE/et-EE.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Kujundus" COM_CONVERTFORMS_BEHAVIOR="Tegevused" COM_CONVERTFORMS_LIST="Nimekiri" COM_CONVERTFORMS_NO_RESULTS_FOUND="%s pole olemas" COM_CONVERTFORMS_CREATE_NEW="Kas loome mõne?" COM_CONVERTFORMS_EMAIL_ASCENDING="E-mail kasvavalt" COM_CONVERTFORMS_EMAIL_DESCENDING="E-mail kahanevalt" COM_CONVERTFORMS_ACTIONS="Toimingud" COM_CONVERTFORMS_VIEW_LEADS="Vaata sisetusi" NRI_PLG_CONVERTFORMS="Convert Forms plugin" COM_CONVERTFORMS_CONFIGURATION="Convert Forms seadistused" COM_CONVERTFORMS_LOADCSS="Lae CSS" COM_CONVERTFORMS_LOADCSS_DESC="Lae laienduse kujundusfail. Sa saad selle keelata kui kasutad oma CSS faili." COM_CONVERTFORMS_DEBUG="Veaotsing" COM_CONVERTFORMS_DEBUG_DESC="Luba see seade kui sul on lisaga tõrkeid. Veateated näidatakse brauseri konsoolile (vajuta F12) ja kirjutatakse logifaili." COM_CONVERTFORMS_FORMS="Vormid" COM_CONVERTFORMS_FORM="Vorm" COM_CONVERTFORMS_NEW_FORM="Uus vorm" COM_CONVERTFORMS_EDIT_FORM="Muuda vormi" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s vormi kopeeritud" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s vormi avalikustatud" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s vormi peidetud" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s vormi prügikasti tõstetud" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s vormi kustutatud" COM_CONVERTFORMS_FORM_ASCENDING="Vormid kasvavalt" COM_CONVERTFORMS_FORM_DESCENDING="Vormid kahanevalt" COM_CONVERTFORMS_FORM_SELECT="- Vali vorm -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Avalikusta luues moodul" COM_CONVERTFORMS_FORM_LEADS="Vormil on %s sisestust" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Avalda kasutades lühikoodi: %s" COM_CONVERTFORMS_CAMPAIGN="Kampaania" COM_CONVERTFORMS_CAMPAIGNS="Kampaaniad" COM_CONVERTFORMS_NEW_CAMPAIGN="Uus kampaania" COM_CONVERTFORMS_EDIT_CAMPAIGN="Muuda kampaaniat" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Sisesta kampaania nimi. Seda nime ei näe peale sinu mitte keegi teine." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s kampaaniat kopeeritud" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s kampaaniat avalikustatud" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s kampaaniat peidetud" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s kampaaniat prügikasti tõstetud" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s kampaaniat kustutatud" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s sisestust peidetud" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s sisestust avalikustatud" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s sisestust prügikasti tõstetud" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s sisestust kustutatud" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s sisestust arhiveeritud" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampaania kasvavalt" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampaania kahanevalt" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Vali kampaania -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Palun salvesta kampaania et seadistada integratsioon." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampaania muudetud" COM_CONVERTFORMS_CAMPAIGN_SYNC="Sünkroniseeri sisestusi" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Vali kas sisestusi sünkroniseeritakse mõnesse kolmanda osapoole tarkvarasse või andmebaasi. <Br>Tähelepanu: Kui sa vajad integreeimist kolmanda osapoole tarkvarasse, nagu näiteks MailChimp, Aweber, GetResponse, Active Campaign, vms, siis pead paigaldama ka vastava lisa lisade sektsioonist." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s kampaaniat kustutatud" COM_CONVERTFORMS_CHOOSE_SERVICE="Vali teenus" COM_CONVERTFORMS_PENDING_LEADS="ootel sisestused" COM_CONVERTFORMS_SUBMISSIONS="Sisestused" COM_CONVERTFORMS_SUBMISSION="Sisestus" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Viimased sisestused" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Kinnitatud" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Kinnitamata" COM_CONVERTFORMS_EDIT_CONVERSION="Muuda sisestust" COM_CONVERTFORMS_SUBMISSION_INVALID="Sisestust ei leitud." COM_CONVERTFORMS_NOT_AUTHORIZED="Sul pole sellele lehele õigusi." COM_CONVERTFORMS_LEADS_ASC="Sisestused kasvavalt" COM_CONVERTFORMS_LEADS_DESC="Sisestused kahanevalt" COM_CONVERTFORMS_LEADS_EXPORT="Ekspordi sisestusi" COM_CONVERTFORMS_ADDONS="Lisad" COM_CONVERTFORMS_INSTALL_ADDONS="Vaata paigaldatud lisasid" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Et Conver Forms lisasid paigaldada, pead sisestama allalaadimisvõtme Novarain Framework pluginas" COM_CONVERTFORMS_ADDONS_DESC="Lisad on Convert Forms laiendused. Nende laiendustega saad ühendada kolmanda osapoole tarkvara laiendamaks Conver Forms võimalusi." COM_CONVERTFORMS_LAST_YEAR="Eelmine aasta" COM_CONVERTFORMS_THIS_YEAR="See aasta" COM_CONVERTFORMS_LAST_MONTH="Eelmine kuu" COM_CONVERTFORMS_THIS_MONTH="See kuu" COM_CONVERTFORMS_LAST_WEEK="Eelmine nädal" COM_CONVERTFORMS_THIS_WEEK="See nädal" COM_CONVERTFORMS_LAST_7_DAYS="Viimased 7 päeva" COM_CONVERTFORMS_YESTERDAY="Eile" COM_CONVERTFORMS_TODAY="Täna" COM_CONVERTFORMS_AVG_DAY="Keskmiselt päevi (selles kuus)" COM_CONVERTFORMS_PROJECTION="Selle kuu kokkuvõte" COM_CONVERTFORMS_TOTAL="Kokku" COM_CONVERTFORMS_CHOOSE_FILE="Vali .cnvf faile" COM_CONVERTFORMS_FORMS_NAME_DESC="Unikaalne ja siseloomustav nimi aitab sul tulevikus endal paremini arus aada nii töölaual kui analüütikas kui mujalgi." COM_CONVERTFORMS_BACKGROUND_IMAGE="Tausta pildi asukoht" COM_CONVERTFORMS_IMAGE_DESC="Vali taustapildi asukoht" COM_CONVERTFORMS_CUSTOM_URL="Oma URL" COM_CONVERTFORMS_BACKGROUND_URL="Taustapildi URL" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Sisesta oma URL pildile" COM_CONVERTFORMS_BACKGROUND_FILE="Taustapilt" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Vali üleslaadimiseks pilt" COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Sa saad valid apildi mida näidatakse vormi taustaks. Vali <b>La üles</b> et üles laadida uus pilt, või <b>Oma URL</b> et sisestada oma URL pildi asukohaks. Et see seade toimiks, peab tausta värv vormil olema määratud läbipaistvaks." COM_CONVERTFORMS_FORM_BUILDER="Vormide looja" COM_CONVERTFORMS_FIELD_TYPE="Välja tüüp" COM_CONVERTFORMS_FIELD_TYPE_DESC="Välja tüüp määrab ära vormi elemendi tüübi." COM_CONVERTFORMS_FIELD_LABEL="Välja nimi" COM_CONVERTFORMS_FIELD_LABEL_DESC="Sisestuselemendi juures näidatav nimi." COM_CONVERTFORMS_FIELD_NAME="Välja nimi" COM_CONVERTFORMS_FIELD_NAME_DESC="See on nimetus mid akasutatakse vormi andmete defineerimiseks peale sisestust." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Seda teksti näidatakse välja sees enne kui kasutaja sinna midagi sisestab." COM_CONVERTFORMS_REQUIRED_NAME="Nõutud väli" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Kui on lubatud, siis enne andmete sisestamist kontrollitakse vormi poolt väli üle." COM_CONVERTFORMS_FIELDS="Väljad" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Sa kasutad <b>Tasuta</b> versiooni mis toetab vaid ühte välja. <b>Uuenda Pro versioonile</b>, et kasutada piiramatu arv välju." COM_CONVERTFORMS_GENERAL="Peamine" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Välja teksti asetus" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Vormi teksti asetus" COM_CONVERTFORMS_INPUT_COLOR="Välja teksti värv" COM_CONVERTFORMS_INPUT_BGCOLOR="Välja tausta värv" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Välja raami värv" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Lisab sisemise varju sisetusväljale" COM_CONVERTFORMS_INPUT_FONT_SIZE="Välja fondi suurus" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Välja fondi suurus" COM_CONVERTFORMS_VPADDING_SIZE="Vertikaalne nihe" COM_CONVERTFORMS_HPADDING_SIZE="Horisontaalne nihe" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Kasti maksimaalne laius" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Kasti näidatakse kas nii suurena kui soovid või sikutatakse ta kogu ala laiusesse. Siin määrad sa maksimaalse laiuse, väiksemas seadmes näidatakse teda siiski ekraani järgi väiksemalt." COM_CONVERTFORMS_FORM_WIDTH="Oma max laius" COM_CONVERTFORMS_FORM_WIDTH_DESC="Määra max laius oma soovi järgi." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Eemalda nihke vaikemäärang" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Eemalda vaikismisi määratud nihe sisu ja vormi elementide vahelt." COM_CONVERTFORMS_FORM_BORDER_STYLE="Raami stiil" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Lisa vormi ümber raam" COM_CONVERTFORMS_FORM_BORDER_COLOR="Raami värv" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Vormi raami värv" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Raami laius" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Vormi raami laius" COM_CONVERTFORMS_BOX_RADIUS="Kasti raadius" COM_CONVERTFORMS_BORDER_RADIUS="Raami raadius" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Määra raami raadius" COM_CONVERTFORMS_COLLECT_LEADS_USING="Koonda sisestusi kasutades kampaaniaid" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Selle vormi sisestused seotakse siin määratud kampaaniaga. Kampaaniaid saad hallata kampaaniate sekstioonist." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Õnnestunud sisestuse toiming" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Vali toiming mida kasutajale näidatakse peale andmete õnnestunud sisestust" COM_CONVERTFORMS_DISPLAY_MSG="Kuva teade" COM_CONVERTFORMS_REDIRECT_USER="Kasutaja suunamine" COM_CONVERTFORMS_SUCCESS_TEXT="Teade peale õnnestunud sisestust" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Sisesta teade mida soovid kasutajale näidata peale õnnestunud sisestust." COM_CONVERTFORMS_SUCCESS_URL="Suunamise URL" COM_CONVERTFORMS_SUCCESS_URL_DESC="Sisesta URL kuhu kasutaja suunatakse peale õnnestunud sisestust." COM_CONVERTFORMS_PASS_DATA="Saada sisestuse andmed ümbersuunasmise URL'le" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Sisestusnupu stiil" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Stiliseeri sisestusnuppu põnevate efektidega." COM_CONVERTFORMS_BTN_SHADOW_DESC="Lisab välimise varju nupule." COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Teksti ületamise värv" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Teksti ületamise värv" COM_CONVERTFORMS_CUSTOM_CSS="Oma CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Stiliseeri vormi oma CSS failiga. <br><br>Et sind stiiliga aidata, siis kood mida siin sisestad, on kohe näha ka siin adminnis." COM_CONVERTFORMS_CLASS_SUFFIX="Klassi eelliide" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Klassi eelliide" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Tekstiala kõrgus" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Tekstiala kõrgus määrab tekstiala visuaalse kõrguse ja seda ridade arvuga." COM_CONVERTFORMS_CHOICES="Valikud" COM_CONVERTFORMS_CHOICES_DESC="Lisa valikud vormi väljale." COM_CONVERTFORMS_FIELD_VALUE="Vaikeväärtus" COM_CONVERTFORMS_FIELD_VALUE_DESC="Sisesta teks välja vaikevärtuseks." COM_CONVERTFORMS_HIDE_LABELS="Peida silt" COM_CONVERTFORMS_HIDE_LABELS_DESC="Vali see seade kui soovid peita vormi välja silti." COM_CONVERTFORMS_IMAGE_SOURCE="Pildi allikas" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Sa saad valida pildi mida näidatakse vormi sisu kõrval. Vali <b>Lae üles</b>, et üles laadida uus pilt, või <b> Oma URL</b>, et sisestada oma URL pildi asukohaks." COM_CONVERTFORMS_IMAGE_URL="Pildi URL" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Peida pilt väikestel ekraanidel" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Väikestel ekraanidel, nagu mobiilid, näevad väikesed modaalaknad välja ilusamad. Et vähendada modaalakna suurust, saad määrata, et pilti ei näidataks." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horisontaalne positsioon" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horisontaalne positsioon" COM_CONVERTFORMS_VERTICAL_POSITION="Vertikaalne positsioon" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertikaalne positsioon" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Pildi laius" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Määra pildi laius" COM_CONVERTFORMS_BUTTON_ALIGN="Nupu joondus" COM_CONVERTFORMS_FORM_POSITION="Vormi asukoht" COM_CONVERTFORMS_FORM_POSITION_DESC="Määra vormi asukoht võrduma teksti konteineriga" COM_CONVERTFORMS_FORM_SIZE="Vormi konteineri mõõt" COM_CONVERTFORMS_COLUMNS_DESC="Saad määrata mitut tulpa kasutatakse. 6 tulpa võtavad 50% laiusest." COM_CONVERTFORMS_MESSAGE="Tekstiline sõnum" COM_CONVERTFORMS_MESSAGE_DESC="Sisesta vormi tekstiline sõnum" COM_CONVERTFORMS_IMAGE_POSITION="Pildi asukoht" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Määra pildi asukoht võrreldes tekstiga" COM_CONVERTFORMS_FOOTER="Vormi jalus" COM_CONVERTFORMS_BUTTON_TEXT="Nupu tekst" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Sisesta nupu testiline silt" COM_CONVERTFORMS_BTN_FONT_SIZE="Nupu teksti suurus" COM_CONVERTFORMS_IMAGE_SIZE="Pildi konteineri mõõt" COM_CONVERTFORMS_BODY_FONT="Font Family" COM_CONVERTFORMS_BODY_FONT_DESC="Määra font mida vormis kasutatakse. Tea, et laadides mittestandartseid fonte, nagu Google Fonts, võib see aeglustada su lehe kiirust. Määra oma lehe fontide vaikimisi järjekord." COM_CONVERTFORMS_EMAIL="E-mail" COM_CONVERTFORMS_DATE="Kuupäev" COM_CONVERTFORMS_CREATED="Loomiskuupäev" COM_CONVERTFORMS_SUBMISSION="Sisestus" COM_CONVERTFORMS_PREVIEW_SUCCESS="Õnnestumise teate eelvaade" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="See eelvaade kuvatakse ekraanisuurusele 990px ja suurematele" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="See eelvaade kuvatakse ekraanisuurusele 768px - 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="See eelvaade kuvatakse ekraanisuurusele 768px ja väiksematele" COM_CONVERTFORMS_DEVICE_DESKTOP="Lauaarvuti" COM_CONVERTFORMS_DEVICE_TABLET="Tahvel" COM_CONVERTFORMS_DEVICE_MOBILE="Mobiil" COM_CONVERTFORMS_RESET_FORM="Tühjenda vorm" COM_CONVERTFORMS_RESET_FORM_DESC="Tuhjenda vormi andmed peale õnnestunud sisestust" COM_CONVERTFORMS_HIDE_FORM="Peida vorm" COM_CONVERTFORMS_HIDE_FORM_DESC="Peida vorm peale õnnestunud sisestust" COM_CONVERTFORMS_TEMPLATES="Mallid" COM_CONVERTFORMS_TEMPLATES_SELECT="Vali mall millega alustada" COM_CONVERTFORMS_TEMPLATES_BLANK="Alusta nullist" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Alusta uut vormi nullist" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Sisemine" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Külgriba" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Ribad" COM_CONVERTFORMS_LABELS_COLOR="Sildi tekti värv" COM_CONVERTFORMS_LABELS_FONT_SIZE="Sildi fondi suurus" COM_CONVERTFORMS_IMAGE_ABOVE="Eeltekst" COM_CONVERTFORMS_IMAGE_BELOW="Järeltekst" COM_CONVERTFORMS_IMAGE_RIGHT="Paremal tekstist" COM_CONVERTFORMS_IMAGE_LEFT="Vasakul tekstist" COM_CONVERTFORMS_FLAT="Lame" COM_CONVERTFORMS_OUTLINE="Kontuur" COM_CONVERTFORMS_GRADIENT="Gradient" COM_CONVERTFORMS_EMAILS_DESC="Saada e-maili teade kui kasutaja sisestab vormi" COM_CONVERTFORMS_EMAILS="E-maili teated" COM_CONVERTFORMS_EMAILS_REPLY_TO="Vasta e-mail" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Vasta nimi" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Kellelt e-mail" COM_CONVERTFORMS_EMAILS_FROM="Kellelt nimi" COM_CONVERTFORMS_EMAILS_RECIPIENT="Edastamise e-maili aadress" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Sisesta e-maili aadressid kuhu saadetakse vormi sisestuse kohta teated. Mitme e-maili jaoks eralda e-maili aadressid komaga." COM_CONVERTFORMS_EMAILS_SUBJECT="E-maili teema" COM_CONVERTFORMS_EMAILS_BODY="Teade" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Kas sa vajad mitut teavitust? <br><a href='#' data-pro-only='Unlimited Notifications'>Uuenda Pro</a> versioonile ja saadku kasutada." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Manused" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Faili asukoht mis lisatakse sinu veebilehe kaustast. Mitme faili jaoks eralda need komaga." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Kas vajad mõnd teistsugust lisa?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Kui sul on vaja mõnd teistsugust lisa, anna meile teada, ja me hea meelega lisame selle Convert Forms kollektsiooni." COM_CONVERTFORMS_API_ENABLE="Luba JSON API" COM_CONVERTFORMS_API_DESC="JSON API võimaldab sul küsida andmeid HTTP päringutena Convert Forms lisast." COM_CONVERTFORMS_API_KEY="Turvavõti" COM_CONVERTFORMS_API_KEY_DESC="Turvavõtit kasutatakse kriitiliste ülesannete, nagu CRON tööd ja JSON API, autentimist. Kui sa jätad selle tühjaks, siis kõik päringud mis vajavad autentimist, keelatakse." COM_CONVERTFORMS_IMAGE_ALT="Pildi ALT tekst" COM_CONVERTFORMS_IMAGE_ALT_DESC="Pildi alternatiivtekst" COM_CONVERTFORMS_CUSTOM_CODE="Oma kood" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Lisa oma kood vormi lõppu. Siin lubatakse HTML, CSS ja JavaScripti koodi.<br><br>JavaScripti jaoks veendu, et murrad koodi <script> võtmega. <br><br>Kood, mis siin sisestatakse, ei käivitata admin poolel." COM_CONVERTFORMS_ISSUES="Probleemid" COM_CONVERTFORMS_ISSUES_DETECTED="%s sisestuse probleem avastatud" COM_CONVERTFORMS_CREATED="Loomiskuupäev" COM_CONVERTFORMS_MODIFIED="Muutmiskuupäev" COM_CONVERTFORMS_IP="Sisestaja IP aadress" COM_CONVERTFORMS_USER_ID="Sisestaja ID" COM_CONVERTFORMS_USER_USERNAME="Sisestaja kasutajanimi" COM_CONVERTFORMS_VISITOR_ID="Külastaja ID" COM_CONVERTFORMS_FORM_NAME="Vormi nimi" COM_CONVERTFORMS_CAMPAIGN_NAME="Kampaania nimi" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Tulbad" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Et lubada spetsiifilisi välju, vali enne filtritest vorm." COM_CONVERTFORMS_UNTITLED_BOX="Nimetu vorm" COM_CONVERTFORMS_SELECT_LAYOUT="Määra paigutus" COM_CONVERTFORMS_SHOW_LAYOUTS="Näita paigutusi" COM_CONVERTFORMS_HIDE_LAYOUTS="Peida paigutused" COM_CONVERTFORMS_FIELDS_COPY="Loo väljast duplikaat" COM_CONVERTFORMS_FIELDS_DELETE="Kustuta väli" COM_CONVERTFORMS_FIELDGROUP_COMMON="Tavaväljad" COM_CONVERTFORMS_FIELDGROUP_FANCY="Moodsamad väljad" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Edasijõudnute väljad" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Lisa oma tekst või HTML kood. Piiranguid ei ole!" COM_CONVERTFORMS_FIELD_TEXT="Tekstiväli" COM_CONVERTFORMS_FIELD_TEXT_DESC="Üherealine teksti väli" COM_CONVERTFORMS_FIELD_TEXTAREA="Tekstiala" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Nagu teksti väli, aga teksti saab sisestada mitmerealiselt" COM_CONVERTFORMS_FIELD_NUMBER="Number" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Teksti väli mis lubab vaid numbreid" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Samm" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Väärtuse suurus muutub sammu võrra kui nooltele klikitakse." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Min väärtus" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Minimaalne väärtus paremal asetseva nooli kuures" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Max väärtus" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Maksimaalne väärtus vasakul asetseva nooli kuures" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Spämmi peatamine Google reCAPTCHA'ga" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Palun seadista Site ja Secret võtmed seadistuste lehel." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Seadista reCAPTCHA kohe" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Värviteema vidinale" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Vidina mõõt" COM_CONVERTFORMS_FIELD_DROPDOWN="Rippmenüü" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Rippmenüü nimekiri kus saab teha ühe valiku" COM_CONVERTFORMS_FIELD_RADIO="Raadio nupud" COM_CONVERTFORMS_FIELD_RADIO_DESC="Loetelu valikutest kus saab valida ühe raadio-nupu" COM_CONVERTFORMS_FIELD_URL="Veebileht / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Kindlasti vaata, et URL'id algaksid http:// või https://" COM_CONVERTFORMS_FIELD_URL_INVALID="Vigane URL" COM_CONVERTFORMS_FIELD_COUNTRY="Riik" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Nimekiri kõigist riikidest" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Tuvasta külastaja riik" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Kui on lubatud, siis proovitakse kasutaja riiki automaatselt tuvastada. Selleks peab olema paigaldatud TGeoIP plugin." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Välista riike" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Valuuta" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Nimekiri kõigist valuutadest" COM_CONVERTFORMS_FIELD_SUBMIT="Sisestusnupp" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Nupp millega sisestatakse vormi andmed" COM_CONVERTFORMS_FIELD_HIDDEN="Peidetud väli" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Väli, mida külastajale esilehel ei näidata" COM_CONVERTFORMS_FIELD_EMAIL="E-maili aadress" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Teksti väli mis tunnistab vaid e-maili aadressi" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Kasutustingimused" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Nõuab kasutajalt kasutustingimustega nõustumist enne kui vormi andmeid on võimalik sisestada" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Kasutustingimuste tekst" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Tekst, mis kuvatakse märkeruudu kõrval" COM_CONVERTFORMS_FIELD_CHECKBOX="Märkeruudud" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Nimekiri valikutest kus saab teha mitut valikut korraga" COM_CONVERTFORMS_FIELD_REQUIRED="on nõutud" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Vigane e-maili aadress" COM_CONVERTFORMS_FIELD_SIZE="Välja suurus" COM_CONVERTFORMS_FIELD_SIZE_DESC="Vali vaikimisi välja suurus" COM_CONVERTFORMS_FIELD_TEL="Telefoninumber" COM_CONVERTFORMS_FIELD_TEL_DESC="Telefoninumbri väli" COM_CONVERTFORMS_FIELD_DATETIME="Kuupäev / Kellaaeg" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Kuupäeva / Kellaaja valik lubab valid ühte kuupäeva või mitut kuupäeva luues vahemiku" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Kuupäeva formaat" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Sisestatava kuupäöeva formaat. Näited:<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Näita aja valijat" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Lubatakse aja valimise aken. Kui selle lubad, siis veendu, et ka kellaaja märgendid (H:i) oleksid kuupäeva formaadis olemas." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min kuupäev" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Kõige vanem kuupäev mida näidata. Toetatakse ka relatiivseid kuupäeva formaate nagu: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Max kuupäev" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Kõige tulevikulisem kuupäev mida näidata. Toetatakse ka relatiivseid kuupäeva formaate nagu: today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Kuupäeva valiku laad" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Luba kasutajal valida kas üks kuupäev, mitu kuupäeva või kuupäevade vahemik." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24 tunnine aeg" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Näita kellaaega 24 tunnises laadis ilma AM/PM märgenditeta." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minuti samm" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Määra minuti samm aja valijas" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Näita sisemiselt" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Näidatakse kalendrit kohe ilma popup aknata." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Teema" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Määra kalendri teema" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Vigane kuupäeva formaat - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Keela mobiilseadme sisseehitatud kuupäeva valija" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Kui on valitud, siis kasutatakse Conver Forms sisemist kuupäeva valijat mitte mobiilseadme poolt pakutavat." COM_CONVERTFORMS_CSS_CLASSES="CSS klass" COM_CONVERTFORMS_CSS_CLASSES_DESC="Lisa CSS klasse sisestuskonteinerile. Kasutatakse enamasti kujunduslikul eesmärgil." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Sisestuse CDD klass" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="CSS klass sisestusväljale. Kasutatakse enamasti kujunduslikul eesmärgil." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Keela brauseri automaattäitmine" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Vaikimisi kipuvad brauserid väljade sisestusi meelde jätma. Siit saad brauseri automaatsed pakkumised välja lülitada." COM_CONVERTFORMS_FIELD_DESCRIPTION="Abitekst" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Abitekst mida näidatakse välja juures." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="DNS kontroll" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Valideeri sisestatud e-maili DNS kontrolliga." COM_CONVERTFORMS_FIELD_CONFIRM="Kinnita" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Väli, mis tagab kahe välja vastavuse" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Kinnita välja võti" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Sisesta välja võti mida kasutatkse vastavuse kontrolliks" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Väli pole korrektselt seadistatud" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Väljade väärtused ei klapi" COM_CONVERTFORMS_HIDE_TEXT="Peida tekst" COM_CONVERTFORMS_HIDE_TEXT_DESC="Peida tekst peame õnnestunud sisestust" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Vormil ei ole e-maili välja" COM_CONVERTFORMS_INVALID_LEAD="Ei suuda valideerida sisestatavat objekti" COM_CONVERTFORMS_EXCEL_SECURITY="Exceli turvalisus" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Kui on lubatud, siis eksporditava CSV faili väärtused algavad =, +, - või @ märgiga, et välistada vahesisestusi faili avamisel Excelis. <br><br>Keela see seade kui sa oled 100% kindel mida sa teed." COM_CONVERTFORMS_CHOICE_LAYOUT="Vali paigutus" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Vali paigutus näitamaks väljade valikuid" COM_CONVERTFORMS_CHOICE_1_COLUMN="Üks tulp" COM_CONVERTFORMS_CHOICE_2_COLUMN="Kaks tulpa" COM_CONVERTFORMS_CHOICE_3_COLUMN="Kolm tulpa" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Üksteise kõrval" COM_CONVERTFORMS_REQUIRED_INDICATION="Nõutud välja indikaator" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Näidatakse nõutud välja tähist välja sildi juures. Välja silt peab sel juhul olema nähtav." COM_CONVERTFORMS_INPUT_MASK="Sisestuse mask" COM_CONVERTFORMS_INPUT_MASK_DESC="Aita kasutajat sisestusel eeldefineeritud maski näitamisega. <br><br><b>Süntaks:</b><br>9: Numbriline (0-9)<br>a: Tähestikuline (a-z or A-Z)<br>A: Suurtähed tähestikuliselt (A-Z)<br>*: Tähed ja numbrid (0-9, a-z, or A-Z)<br>&: Suurtähed ja numbrid (0-9 or A-Z)<br><br><b>Näited</b>:<br>Telefon: +1 (999)-9999<br>Kuupäev: 99/99/9999<br>Sihtnumber: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Kasutaja sisestatud andmed" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Sisestatud andmeid ei leitud" COM_CONVERTFORMS_LEAD_INFO="Sisestusinfo" COM_CONVERTFORMS_NOTES="Märkused" COM_CONVERTFORMS_DATE_RANGE="Kuupäeva vahemik" COM_CONVERTFORMS_START_DATE="Alguse kuupäev" COM_CONVERTFORMS_END_DATE="Lõpu kuupäev" COM_CONVERTFORMS_PERIOD="Periood" COM_CONVERTFORMS_PERIOD_SELECT="- Vali periood -" COM_CONVERTFORMS_HONEYPOT="Luba Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Luba Honeypot väli mida näevad ainult botid. Sellisel juhul kui bott täidab selle välja, saame kohe aru, et tegemist on spämmimootoriga.<br><br>Paljudel lehtedel on honeypot piisav, et välistada võlts-sisestusi. Kui sa siiski hakkad spämmi saama, saad vormile lisada reCAPTCHA." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Faili üleslaadimine" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Luba kasutajal faile üles laadida" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Sinu lehe temp kaust on määratud asukohta <b>%s</b> kuid se epole kirjutusõigusega. Palun määra kirjutusõigusega kaust." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Üleslaadimise sihtpunkt" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Määra üles laetavatele failidel kaust.<br><br><b>Auto</b>: Failid pannakse kausta /media/com_convertforms/uploads. Faili nimele lisatakse turvalisuse mõttes juhuslik eelliide.<br><br><b>Oma</b>: Määra oma kaust ja nime muutmine." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Oma üleslaadimise kaust" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Sisesta relatiivne kausta tee üles laetavatele failidele. Et faile ümber nimetada, kasuta järgmisi tarku võtmeid.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>Saab kasutada ka globaalseid võtmeid nagu {year}, {month}, {user.id} või {randomid}." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Failide piirangud" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Mitut faili võib üles laadida? Piiranguvabaks pead määrama 0." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Faili mahupiirang" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Määra maksimaalne maht igale failile megabaitides. piiranguvabaks pead määrama 0.<br><br>Sinu serveri poolt toetatud maksimaalne maht on:<b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Lubatud failitüübid" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Sisesta komaga eraldatud faililaiendid, näiteks: </b>.jpg, .gif, .png, .pdf<br><br>Võid lisada ka meedia tüübi järgi, näiteks: application/pdf, images/*, video/* või miksid mõlemaid: application/*, .png, .jpg<br><br>Tähelepanu: See pole alati lollikindel piirang mida ei annaks manipuleerida. Veendu alati üles laetud faili õigsuses enne kui seda avad..<br><br>PHP laiendus <b>fileinfo</b> on selle meetodi jaoks nõutav." COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtreeri sisendeid järgmiste filtritega.<br><b>Tekst</b>: Sisend konventeeritakse tavatekstiks; eemaldatagse tagid ja atribuudid.<br><b>Turvaline HTML</b>: Lubatakse turvalised HTML võtmed.<br><b>Tähed ja numbrid</b>: Lubatakse vaid a-z ja 0-9<br><b>Sõna</b>: Lubatakse vaid tähed a-z, ja alakriipsud<br><b>Täisarv</b>: Kasutatakse ainult esimest numbrit<br><b>Ujuv</b>: Lubatakse vaid tähed a-z, ja alakriipsud" COM_CONVERTFORMS_UPLOAD_ERROR="Vigane vorm või välja võti" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Vigane üleslaadimise väli" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Vigane või mitte toetatud fail" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Sa saad üles laadida %d faili" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Sikuta ja lase lahti failid siia või" COM_CONVERTFORMS_UPLOAD_BROWSE="lae üles" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Ajutine fail %s puudub. Palun lae uuesti." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Ajutine kaust %s puudub või on kirjutuskaitstud" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="fail on liiga suur ({{filesize}}MB). Max lubatud maht: {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Seda tüüpi faile ei lubata üles laadida." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Sinu brauser ei toeta faili sikutamist ja lahti laskmist üleslaadimiseks." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server andis veateate {{statusCode}} ." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Katkesta üleslaadimine" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Kas soovid üleslaadimist katkestada?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Eemalda fail" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Rohkem faile sa laadida ei saa." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Kustuta failid automaatselt" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Kui sul saab olema suur failide üleslaadimine, siis võib serveri kettamaht täis saada. Ehk et vahepeal oleks vaja teha ka koristustööd.<br><br>See seade aitab automaatselt teatud perioodi tagant faile kustutada.<br><br>Näiteks, sisestades 3. kustutatakse failid kolme päeva möödudes; või sisestades nulli, jäävad failid alatiseks alles.<br><br>Tähelepanu: Selle toimingu jaoks pead lubama Convert Forms üleslaadimiste kustutamise plugina ja siduma temaga CRON töö." COM_CONVERTFORMS_READONLY="Ainult loetav" COM_CONVERTFORMS_READONLY_DESC="Keela sellesse välja sisestamine" COM_CONVERTFORMS_PHPSCRIPT="PHP skriptid" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Vormi näitamine" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="PHP skriptid käivitatakse enne vormi laadimist.<br><br>Pemine ala on <b>$formLayout</b> (String) muutuja mis sisaldab vormi HTML koodi.<br><br>Et toimetada vormi seadetega, kasuta muutujat <b>$form</b> (Array).<br><br>PHP tage <?php and ?> kasutama ei pea." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Vormi menetlus" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="PHP kood lisatakse alas mis käivitatakse enne seda kui andmed salvestatakse andmebaasi, sõltumata kas sisetus on valiidne või mitte. <br><br>See ala on kasulik siis kui soovid luua mingeid kalkulatsiooe, valideerida midagi oma vajaduste järgi või vajad välja andmete muutmist mingil moel. Kõik toimingud <b>$post</b> (Array) muutujasse korraldatakse siin.<br><br>Et toimetada vormi seadetega, kasuta <b>$form</b> (Array) muutujat. <br><br>PHP tage <?php and ?> kasutama ei pea." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Peale vormi andmete sisestamist" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="PHP kood käivitatakse peale vormi andmete sisestamist andmebaasi. <br><br>See on kasulik kui soovid mõnd lisatoimingut, näiteks post andmete saatmist teisele URL'ile.. Lõputoiminguks kasuta<b>$submission</b> (Object) muutujat.<br><br>Et kasutada vormi seadeid, kasuta muutujat <b>$form</b> (Array). <br><br>PHP tage <?php and ?> kasutama ei pea." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP skripte ei käivitata admin poolel, neid pead testima esilehe vaates." COM_CONVERTFORMS_FIELD_PASSWORD="Salasõna" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Määra kuidas kasutaja turvaliselt parooli sisestada saab" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Oma välja tüüp" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Kasuta kinnitusvälja teksti ja salasõna vahel." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Vormi ettevalmistamine" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="PHP skriptid selles alas käivitatakse enne kui vormi andmed ette valmistatakse ja saadetakse vormi kuvamise funktsioonile.<br><br>Siin saad sa kasutada vormi seadeid muutujas <b>$form</b> (Array). <br><br>PHP tage <?php and ?> kasutama ei pea." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s on juba kasutaja." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s paistab vale või vigane, palun sisesta reaalne e-maili aadress." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Viga: Google reCaptcha skripti ei ole laetud. Veendu, et su brauser ei blokeeri neid." COM_CONVERTFORMS_ACCESS_FORMS="Vormide juurdepääsud" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Luba selle grupi kasutajatel hallata vorme." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Sisestuste juurdepääsud" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Luba selle grupi kasutajatel hallata sisestusi." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Kampaaniate juurdepääsud" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Luba selle grupi kasutajatel hallata kampaaniaid. Luba see, kui on probleeme spämmiga." COM_CONVERTFORMS_CSRF_CHECK="Kasuta Joomla! CSRF märki" COM_CONVERTFORMS_CSRF_CHECK_DESC="Kasuta lisa turvalisust oma vormidel kinnitamaks kõiki AJAX päringuid CSRF märgiga.<br><br>Kui sa selle lubad ja kasutad puhverdamist, võib tekkida vormi andmete sisestamisega probleeme." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Vormi andmed õnnestunult sisestatud" COM_CONVERTFORMS_SECRET_SET="Palun seadista turvavõti et saaksid kasutada selle seade lõpp-punkti." COM_CONVERTFORMS_SECRET_NO="Turvavõtit URL'is ei ole" COM_CONVERTFORMS_SECRET_WRONG="Vale turvavõti URL'is" COM_CONVERTFORMS_SECURITY="Turvalisus" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Peata spämm kasutades Google reCaptchat" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Silt" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="reCaptcha sildi asukoht. 'inline' ehk 'sees' korral määratakse asukoht CSS'ga." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="All paremal" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="All vasakul" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Sees" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Sisestused" COM_CONVERTFORMS_SUBMISSIONS_LIST="Sisestuste nimekiri" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Näita vaid kinnitatuid" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Luba see, et näha vaid kinnitatud sisestusi." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Peida tühjad andmed" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Luba see seade, et peita väljad mille sisu on tühi." COM_CONVERTFORMS_SELECT_FORM="Vali vorm" COM_CONVERTFORMS_SELECT_FORM_DESC="Vali vorm mille sisestusi näha soovid" COM_CONVERTFORMS_SELECT_FORM_DESC2="Vali vorm mida näidata" COM_CONVERTFORMS_LIST_LIMIT="Lehe piirang" COM_CONVERTFORMS_LIST_LIMIT_DESC="Sisestuste arv mida näidata lehel. Nulli korral piirangut ei ole." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Vaata ainult omi" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Siin ono võimalik kuvada sisestusi kasutaja järgi. Külastajad saavad siis näha oma sisestusi kui see võimalus on sisse lülitatud.<br><br>Külastajal peab loomulikult olema sel juhul sinu lehel konto." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Näita lehekülgedeks jagamist" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Kui sisestuste arv on suurem kui Lehe Piirang seade, siis jagatakse need lehekülgede kaupa." COM_CONVERTFORMS_ORDER="Sorteeri sisestusi" COM_CONVERTFORMS_ORDER_DESC="Järjestus milles sisestusi näidatakse." COM_CONVERTFORMS_ORDER_RECENT="Uuemad eespool" COM_CONVERTFORMS_ORDER_OLDEST="Vanemad eespool" COM_CONVERTFORMS_ORDER_RANDOM="Suvaline järjestus" COM_CONVERTFORMS_FILTER_USER="Näita vormi" COM_CONVERTFORMS_FILTER_USER_DESC="Filtreeri sisestusi kasutaja järgi.<br><br><b>Sisse logitud kasutaja</b><br>Näita sisestusi sisse loginud kasutajate järgi. Iga kasutaja näeb oma sisestusi.<br><br><b>Kõik kasutajad</b><br>Näita kõiki sisestusi.<br><br><b>Valitud kasutajad</b><br>Määra sisestajad kes saavad filtreerida sisestusi." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Sisse logitud kasutaja" COM_CONVERTFORMS_FILTER_USER_ALL="Kõik kasutajad" COM_CONVERTFORMS_FILTER_USER_SELECT="Valitud kasutajad" COM_CONVERTFORMS_SET_USERS="Kasutaja ID'd" COM_CONVERTFORMS_SET_USERS_DESC="Sisesta joomla kasutajate ID'd, et filtreerida sisestusi. Mitme ID korral eralda need komaga." COM_CONVERTFORMS_LOAD_CSS="Lae stiilitabel" COM_CONVERTFORMS_LOAD_CSS_DESC="Keela see seade kui sa ei soovi, et laetakse Convert Formsi CSS faili." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Kujundus" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Vali kujundus millisena näidatakse vormi kasutajale esilehel. Olemasolevatest kujundustest saad luua ka oma kujundusi." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Kujunduse tüüp" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Kujunduse tüüp" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Mall" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Vali mall" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Vali mall mille järgi kuvatakse sisestusi. Seda kasutatakse nii nimekirja kui detaili vaate juures.<br><br>Sa saad ka luua oma malle kasutades ülekirjutusi." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Konteineri kujundus" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="HTML kujundus sisestuste nimekirjale. Ära eemalda tagi {submissions} siit, kuna see tag asendataksegi andmestikuga." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Rea kujundus" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="HTML kujundus igale sisestusele mida kuvatakse konteineri kujunduses." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Detailide kujundus" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="HTML kujundus sisestuste detaililehel." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Tühi ala" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Lisa tühi ala vormile" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Tühi ala" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Määra vertikaalne vahe väljadele pikslites" COM_CONVERTFORMS_FIELD_HEADING="Päis" COM_CONVERTFORMS_FIELD_HEADING_DESC="Lisa päis grupi väljadele" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Pealkirja HTML element" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Vali päise tüüp." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Kasuta linki" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Määra lõpp-punkt URL'le." COM_CONVERTFORMS_FIELD_HEADING_LINK="Link" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Sisesta link millele kasutaja saadetakse." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Ava uues aknas" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Luba lingi avamine uude aknasse." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Määra fondi suurus päisele." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Vali fondi perekond päisele." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Rea kõrgus" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Määra rea kõrgus päisele." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Tähtede vahe" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Määra tähtede vahe päisele." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Sisu asetus" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Määra asetus päisele." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Näita väärtusi" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Veendu, et määrad unikaalse väärtuse igale valikule, muidu ei saa sa hiljem aru millise valiku kasutaja tegi." COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Kasuta kalkulatsiooni väärtusi" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Kalkulatsiooni väärtuseid kasutatakse matemaatiliste arvutuste jaoks. See tähendab numbrilist väärtust valikule." COM_CONVERTFORMS_FIELD_DIVIDER="Eraldaja" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Jagab su vormi sektsioonideks" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Raami stiil" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Määra raami stiil eraldajale." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Joon" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Kriipsud" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Täpid" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Raami laius" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Määra raami laius eraldajale." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Raami värv" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Määra raami värv eraldajale." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Nihe ülevalt" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Määra raldajale ülemine nihe." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Nihe all" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Määra raamile alumine nihe." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Nädala esimene päev" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Määra nädala esimene päev mida kasutatakse kalendri kuupäeva valikus." COM_CONVERTFORMS_ENTER_LABEL="Sisesta silt" COM_CONVERTFORMS_ADD_FIELD="Lisa väli" COM_CONVERTFORMS_ALL_FIELDS="Kõik väljad" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Kujunda välju" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Luba ebaturvalisi faile" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Luba ebaturvaliste failide üleslaadimist.<br><br><b>Faili loetakse ebaturvaliseks kui:</b><br>- faili nimes on null baiti.<br>- on keelatud failitüübid: .php, py etc.<br>- faili sisus on PHP tag.<br>- faili sisus on lühike tag.<br>- kui faili sisus on keelatud laiendeid.<br><br>See sedae kaitseb sind ka ebaturvaliste failide eest mis on pakitud failides nagu zip, rar, tar jms." COM_CONVERTFORMS_LABEL_POSITION="Sildi asukoht" COM_CONVERTFORMS_LABEL_POSITION_DESC="Määra välja sildi asukoht." ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Vigane vastus" COM_CONVERTFORMS_INVALID_TASK="Vigane ülesanne" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Palun oota kuniks faili üles laetakse." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Mask on ebatäiuslik" COM_CONVERTFORMS_SUBMISSION_ID="Sisestuse ID" COM_CONVERTFORMS_SUBMISSION_DATE="Sisestuse kuupäev" COM_CONVERTFORMS_SUBMISSION_STATUS="Sisestuse staatus" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="Sisestuse kampaania ID" COM_CONVERTFORMS_SUBMISSION_FORM_ID="Sisestuse vormi ID" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="Sisestuse külastaja ID" COM_CONVERTFORMS_SUBMISSION_USER_ID="Sisestuse kasutaja ID" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Sisestuste arv" COM_CONVERTFORMS_FIELD_RATING="Hinnang" COM_CONVERTFORMS_FIELD_RATING_DESC="Luba oma vormile hinnangud ja luba kasutajatel anda üks või enam hinnangut." COM_CONVERTFORMS_FIELD_RATING_ICON="Ikoon" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Vali hinnanguikoonid kaheksast sisseehitatud ikoonide kujundusest." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Määra hinnangu ikoonide suurus." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Vali värv" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Vali ikoonide värvid mida kasutatakse valitud või üleliikuvuse ikoonide puhul." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Valimata värv" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Vali värv mida kasutatakse valimata ikooni puhul." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maksimaalne hinnang" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Määra maksimaalne ikoonide arv hinnangu juurde." COM_CONVERTFORMS_FIELD_RANGESLIDER="Vahemiku liugur" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Lisa oma vormile vahemiku liuguri väli millega kasutajad saavad määrata väärtuse sikutades liugurit." COM_CONVERTFORMS_FIELD_COLORPICKER="Värvivalija" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Värvivalija väljaga saab kasutaja edastada värvust hex kujul ka svalides selle modaalaknast või sisestades käsitsi koodi." COM_CONVERTFORMS_MIN_CHARS="Minimaalne täheühikute arv" COM_CONVERTFORMS_MIN_CHARS_DESC="Selle välja minimaalne täheühikute arv. Nulli korral piirangut ei ole." COM_CONVERTFORMS_MAX_CHARS="Maksimaalne täheühikute arv" COM_CONVERTFORMS_MAX_CHARS_DESC="Selle välja maksimaalne täheühikute arv. Nulli korral piirangut ei ole." COM_CONVERTFORMS_MIN_WORDS="Minimaalselt sõnu" COM_CONVERTFORMS_MIN_WORDS_DESC="Selle välja minimaalne sõnade arv. Nulli korral piirangut ei ole." COM_CONVERTFORMS_MAX_WORDS="Maksimaalselt sõnu" COM_CONVERTFORMS_MAX_WORDS_DESC="Selle välja maksimaalne sõnade arv. Nulli korral piirangut ei ole." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Tekstis peab olema vähemalt %s täheühikut. Sinul on kasutuses hetkel %s täheühikut." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Tekstis võib olla %s täheühikut. Sinul on kasutuses hetkel %s täheühikut." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Tekstis peab olema vähemalt %s sõna. Sinul on kasutuses hetkel %s sõna." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Tekstis võib olla %s sõna. Sinul on kasutuses hetkel %s sõna." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Sisesta liuguri minimaalne väärtus." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Sisesta liuguri maksimaalne väärtus." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Määra liuguri samm" COM_CONVERTFORMS_FIELD_RATINGS_HALF="Pooliepunktised hinnangud" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Toetatud on sellised hinnangud: 0.5, 1,5, 2.5." COM_CONVERTFORMS_FIELD_EDITOR="Tekstiredaktor" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Luba tõsisem tekstiredaktor kasutajale, et viimistleda välja sisu." COM_CONVERTFORMS_EDITOR_HEIGHT="Redaktori kõrgus" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Määra redaktori akna kõrgus pikslites." COM_CONVERTFORMS_EDITOR_SELECT="Joomla tekstiredaktor" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Luba sellele väljale Joomlas määratud tekstiredaktor.<br><br>Kui sa nimekirjast ühtegi ei leia, siis veendu, et sinu Joomlas oleks paigaldatud ja lubatud vähemalt üks redaktor." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla redaktorit ei leitud: %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s sisestus eksporditud" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Alallaadimine algab peagi." COM_CONVERTFORMS_EXPORT_WORKING="Ekspordin" COM_CONVERTFORMS_EXPORT_PROCESSING="Töötlen %s sisetuse toimingut %s-st" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Ei leidnud ekspordifaili" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Seadista hCaptcha kohe" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Peata spämmi saatmise võimalus hCaptcha'ga" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Valis, kas kasutatakse märkeruuduga või nähtamatut versiooni hCaptcha'st." COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="PHP laiendus<b>fileinfo</b> on failide mime-tüüpide tuvastamiseks vajalik. Palun suhtle oma veebimajutajaga." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Sisestuse vaikimisi staatus" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Määra uue sisestuse staatus peale laekumist." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]F�cی���Ecomponents/com_convertforms/language/fr-FR/fr-FR.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr CONVERTFORMS="Convert Forms" COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Apparence" COM_CONVERTFORMS_BEHAVIOR="Comportement" COM_CONVERTFORMS_LIST="Liste" COM_CONVERTFORMS_NO_RESULTS_FOUND="%s non trouvé" COM_CONVERTFORMS_CREATE_NEW="Créer un nouveau formulaire ?" COM_CONVERTFORMS_EMAIL_ASCENDING="Courriel par ordre croissant" COM_CONVERTFORMS_EMAIL_DESCENDING="Courriel par ordre décroissant" COM_CONVERTFORMS_ACTIONS="Actions" COM_CONVERTFORMS_VIEW_LEADS="Voir les soumissions" NRI_PLG_CONVERTFORMS="Plugin Convert Forms" COM_CONVERTFORMS_CONFIGURATION="Paramètres de Convert Forms" COM_CONVERTFORMS_LOADCSS="Charger la feuille de style" COM_CONVERTFORMS_LOADCSS_DESC="Sélectionnez cette option si vous voulez charger les feuilles de styles des extensions. Vous pouvez désactiver cette option si vous placez tous vos styles dans une autre feuille de style, comme par exemple dans le champ personnalisé dédié au code personnalisé ou dans les feuilles de style des templates." COM_CONVERTFORMS_DEBUG="Débogage" COM_CONVERTFORMS_DEBUG_DESC="Activez cette option pour obtenir des informations sur les erreurs de débogage et le comportements inattendus. Les messages d'erreurs sont affichés dans la console de votre navigateur (Pressez F12) et enregistrées dans le dossier \"logs\" du site" COM_CONVERTFORMS_FORMS="Formulaires" COM_CONVERTFORMS_FORM="Formulaire" COM_CONVERTFORMS_NEW_FORM="Nouveau formulaire" COM_CONVERTFORMS_EDIT_FORM="Modifier le formulaire" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formulaires copiés" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s formulaires publiés" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulaire dépublié" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formulaires mis dans la corbeille" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formulaires supprimés" COM_CONVERTFORMS_FORM_ASCENDING="Formulaire par ordre croissant" COM_CONVERTFORMS_FORM_DESCENDING="Formulaire par ordre décroissant" COM_CONVERTFORMS_FORM_SELECT="- Sélectionner le formulaire -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publier la création du module" COM_CONVERTFORMS_FORM_LEADS="Ce formulaire a été soumis %s fois." COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publier en utilisant le raccourci : %s" COM_CONVERTFORMS_CAMPAIGN="Campagne" COM_CONVERTFORMS_CAMPAIGNS="Campagnes" COM_CONVERTFORMS_NEW_CAMPAIGN="Nouvelle compagne" COM_CONVERTFORMS_EDIT_CAMPAIGN="Modifier une campagne" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Entrez un nom de campagne. Ce nom ne sera visible par personne à part vous." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s campagnes copiées" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s campagnes non publiées" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s campagnes publiées" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s campagnes supprimées" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Campagnes définitivement supprimées" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s soumissions non publiées" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s soumissions publiées" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s soumissions dans la corbeille" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s soumissions supprimées" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s soumissions archivées" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Campagne par ordre croissant" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Campagne par ordre décroissant" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Choisir une campagne -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Enregistrez la campagne pour configurer votre intégration" COM_CONVERTFORMS_CAMPAIGN_CHANGED="La campagne a été modifiée" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synchroniser les envois" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Choisissez si les données des formulaires doivent être synchronisées avec des logiciels externes ou si elles doivent uniquement être sauvegardées dans votre base de données. <br>Nota : Si vous avez besoin d'utiliser des logiciels externes comme MailChimp, Aweber, GetResponse, Active Campaign, etc., pensez à activer le module dédié dans la rubrique Modules." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Campagnes définitivement supprimées" COM_CONVERTFORMS_CHOOSE_SERVICE="Choisir le service" COM_CONVERTFORMS_PENDING_LEADS="Soumissions en attente" COM_CONVERTFORMS_SUBMISSIONS="Soumissions" COM_CONVERTFORMS_SUBMISSION="Soumission" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Dernières soumissions" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Confirmé" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Non confirmé" COM_CONVERTFORMS_EDIT_CONVERSION="Éditer la Soumission" COM_CONVERTFORMS_SUBMISSION_INVALID="Soumission non trouvée" COM_CONVERTFORMS_NOT_AUTHORIZED="Vous n'êtes pas autorisé à accéder à cette page" COM_CONVERTFORMS_LEADS_ASC="Soumissions croissantes" COM_CONVERTFORMS_LEADS_DESC="Soumissions décroissantes" COM_CONVERTFORMS_LEADS_EXPORT="Exporter des soumissions" COM_CONVERTFORMS_ADDONS="Modules" COM_CONVERTFORMS_INSTALL_ADDONS="Voir les modules installés" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Pour pouvoir installer le module de conversion de formulaires, vous devrez saisir votre clé de téléchargement dans les paramètres du plugin du framework Novarain." COM_CONVERTFORMS_ADDONS_DESC="Les modules complètent Convert Forms. Avec eux, vous pouvez vous connecter avec des logiciels tiers, intégrer de nouvelles fonctionnalités et rendre Convert Forms encore plus puissant." COM_CONVERTFORMS_LAST_YEAR="Dernière année" COM_CONVERTFORMS_THIS_YEAR="Cette année" COM_CONVERTFORMS_LAST_MONTH="Dernier mois" COM_CONVERTFORMS_THIS_MONTH="Ce mois" COM_CONVERTFORMS_LAST_WEEK="La semaine dernière" COM_CONVERTFORMS_THIS_WEEK="Cette semaine" COM_CONVERTFORMS_LAST_7_DAYS="Les 7 derniers jours" COM_CONVERTFORMS_YESTERDAY="Hier" COM_CONVERTFORMS_TODAY="Aujourd'hui" COM_CONVERTFORMS_AVG_DAY="Journée moyenne (ce mois-ci)" COM_CONVERTFORMS_PROJECTION="Projection pour ce mois" COM_CONVERTFORMS_TOTAL="Total" COM_CONVERTFORMS_CHOOSE_FILE="Choisissez un fichier .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Un nom unique et évocateur vous aidera à l'avenir, puisqu'il apparaîtra dans le tableau de bord, les analyses, etc." COM_CONVERTFORMS_BACKGROUND_IMAGE="Source de l'image de fond" COM_CONVERTFORMS_IMAGE_DESC="Choisissez la source de l'image de fond" COM_CONVERTFORMS_CUSTOM_URL="URL personnalisée" COM_CONVERTFORMS_BACKGROUND_URL="URL personnalisée de l'image de fond" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Entrez une URL personnalisée pour votre image" COM_CONVERTFORMS_BACKGROUND_FILE="Image de fond" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Choisissez une image à téléverser" COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Vous pouvez définir une image qui sera utilisée en toile de fond de votre formulaire. Choisissez <b>Téléverser</b> pour envoyer une nouvelle image ou <b>URL personnalisée</b> pour saisir l'URL de l'image. Pour que cela fonctionne, la couleur de fond doit être définie comme transparente." COM_CONVERTFORMS_FORM_BUILDER="Constructeur de formulaire" COM_CONVERTFORMS_FIELD_TYPE="Type de champ" COM_CONVERTFORMS_FIELD_TYPE_DESC="L'attribut Type de champ spécifie le type de l'élément d'entrée à afficher." COM_CONVERTFORMS_FIELD_LABEL="Label du champ" COM_CONVERTFORMS_FIELD_LABEL_DESC="Le label du champ définit une étiquette pour votre élément d'entrée." COM_CONVERTFORMS_FIELD_NAME="Nom du champ" COM_CONVERTFORMS_FIELD_NAME_DESC="Cette clé sera utilisée pour identifier l'élément du formulaire lors de la récolte des données après l'envoi d'un formulaire. Vous pouvez aussi utiliser cette option pour faire correspondre des champs du formulaire avec des applications tierces." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Il s'agit du texte qui sera affiché dans le champ avant que l'utilisateur ne le remplisse." COM_CONVERTFORMS_REQUIRED_NAME="Champ requis" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Si activé, cela vérifiera si le champ a bien été rempli avant de permettre la soumission du formulaire" COM_CONVERTFORMS_FIELDS="Champs" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Vous utilisez la version <b>gratuite</b> qui ne supporte qu'1 seul champ e-mail.<b>Mettez à niveau vers la version Pro</b> pour gérer un nombre illimité de champs." COM_CONVERTFORMS_GENERAL="Général" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Alignement du texte du champ" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Alignement du texte du formulaire" COM_CONVERTFORMS_INPUT_COLOR="Couleur du texte du champ" COM_CONVERTFORMS_INPUT_BGCOLOR="Couleur de fond du champ" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Couleur de la bordure du champ" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Ajouter une ombre interne au champ d'entrée" COM_CONVERTFORMS_INPUT_FONT_SIZE="Taille de la police du champ" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Taille de la police du champ" COM_CONVERTFORMS_VPADDING_SIZE="Espacement vertical" COM_CONVERTFORMS_HPADDING_SIZE="Espacement horizontal" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Largeur max de la boîte" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Définissez une largeur maximale de votre choix ou faites en sorte que cette boîte couvre toute la surface de l'écran. Notez qu'il s'agit de la largeur maximale, ce qui signifie que la forme s'adaptera toujours à des zones plus petites." COM_CONVERTFORMS_FORM_WIDTH="Largeur max personnalisée" COM_CONVERTFORMS_FORM_WIDTH_DESC="Fournissez une largeur maximale personnalisée de votre choix." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Supprimer l'espacement par défaut" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Supprime l'espacement par défaut entre la zone de contenu et les bords de la boîte du formulaire." COM_CONVERTFORMS_FORM_BORDER_STYLE="Style de bordure" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Applique une bordure autour du formulaire" COM_CONVERTFORMS_FORM_BORDER_COLOR="Couleur de la bordure" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Couleur de la bordure du formulaire" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Largeur de la bordure" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="La largeur de la bordure du formulaire" COM_CONVERTFORMS_BOX_RADIUS="Rayon de la boîte" COM_CONVERTFORMS_BORDER_RADIUS="Rayon de la bordure" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Entrez une taille de rayon de la bordure" COM_CONVERTFORMS_COLLECT_LEADS_USING="Recueillir des soumissions à l'aide de la campagne" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Les soumissions récoltées par ce formulaire seront associées à la campagne sélectionnée. Vous pouvez gérer les campagnes dans la rubrique Campagnes." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Action à la réussite de l'envoi" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Choisissez une action que vous souhaitez voir après l'envoi réussi" COM_CONVERTFORMS_DISPLAY_MSG="Afficher le message" COM_CONVERTFORMS_REDIRECT_USER="Rediriger l'utilisateur" COM_CONVERTFORMS_SUCCESS_TEXT="Message post-réussite" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Entrez le message qui vous souhaitez afficher à l'utilisateur après l'ajout réussi à la liste" COM_CONVERTFORMS_SUCCESS_URL="URL de redirection" COM_CONVERTFORMS_SUCCESS_URL_DESC="Entrez l'URL vers laquelle rediriger l'utilisateur après l'ajout réussi à la liste." COM_CONVERTFORMS_PASS_DATA="Ajouter les données de la soumission à l'URL de redirection" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Style du bouton d'envoi" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Stylisez votre bouton avec des effets cools." COM_CONVERTFORMS_BTN_SHADOW_DESC="Ajouter une ombre externe au bouton" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Couleur du texte survolé" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Couleur du texte survolé" COM_CONVERTFORMS_CUSTOM_CSS="CSS personnalisé" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Personnalisez le formulaire avec votre propre code CSS. <br><br>Pour vous aider à le définir, ce code est également exécuté dans l'administration." COM_CONVERTFORMS_CLASS_SUFFIX="Suffixe de classe" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Suffixe de classe" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Hauteur de la zone de texte" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="La hauteur de la zone de texte spécifie la hauteur visible en lignes d'une zone de texte" COM_CONVERTFORMS_CHOICES="Choix" COM_CONVERTFORMS_CHOICES_DESC="Ajouter des choix dans votre champ de formulaire." COM_CONVERTFORMS_FIELD_VALUE="Valeur par défaut" COM_CONVERTFORMS_FIELD_VALUE_DESC="Entrer le texte utilisé comme valeur par défaut du champ" COM_CONVERTFORMS_HIDE_LABELS="Masquer le libellé" COM_CONVERTFORMS_HIDE_LABELS_DESC="Cocher cette option pour masquer l'étiquette du champ de formulaire" COM_CONVERTFORMS_IMAGE_SOURCE="Source de l'image" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Vous pouvez choisir une image qui apparaîtra au sein du contenu du formulaire. Choisissez <b>Téléverser</b> pour charger une image ou <b>URL personnalisée</b> pour entrer une URL personnalisée de l'image" COM_CONVERTFORMS_IMAGE_URL="URL de l'image" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Masquer les images sur petits écrans" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Sur les petits écrans comme les mobiles, les petits groupes sont plus beaux. Pour réduire la taille du groupe, vous pouvez masquer l'image avec cette option." COM_CONVERTFORMS_HORIZONTAL_POSITION="Position horizontale" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Position horizontale" COM_CONVERTFORMS_VERTICAL_POSITION="Position verticale" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Position verticale" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Largeur de l'image" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Définir la largeur de l'image" COM_CONVERTFORMS_BUTTON_ALIGN="Alignement du bouton" COM_CONVERTFORMS_FORM_POSITION="Position du formulaire" COM_CONVERTFORMS_FORM_POSITION_DESC="Définir la position du formulaire par rapport au texte du contenant" COM_CONVERTFORMS_FORM_SIZE="Taille du contenant du formulaire" COM_CONVERTFORMS_COLUMNS_DESC="Spécifie combien de colonnes vont être utilisées. 6 colonnes représentent 50% de la largeur." COM_CONVERTFORMS_MESSAGE="Texte du message" COM_CONVERTFORMS_MESSAGE_DESC="Entrez le texte du message du formulaire" COM_CONVERTFORMS_IMAGE_POSITION="Position de l'image" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Définir la position de l'image par rapport au texte" COM_CONVERTFORMS_FOOTER="Formulaire de pied-de-page" COM_CONVERTFORMS_BUTTON_TEXT="Texte du bouton" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Entrez le texte du label du bouton" COM_CONVERTFORMS_BTN_FONT_SIZE="Taille du texte du bouton" COM_CONVERTFORMS_IMAGE_SIZE="Taille du contenant de l'image" COM_CONVERTFORMS_BODY_FONT="Famille de police" COM_CONVERTFORMS_BODY_FONT_DESC="Choisissez une famille de police à utiliser pour le formulaire. Gardez en tête qu'importer des polices non standards comme Google Fonts peut impacter la vitesse de votre site web. Sélectionner Défaut pour utiliser la police par défaut de votre site." COM_CONVERTFORMS_EMAIL="Mail" COM_CONVERTFORMS_DATE="Date" COM_CONVERTFORMS_CREATED="Date de création" COM_CONVERTFORMS_SUBMISSION="Soumission" COM_CONVERTFORMS_PREVIEW_SUCCESS="Aperçu du message de succès" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Cette version s'affichera sur les écrans de 990px et plus" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Cette version s'affichera sur les écrans entre 768px et 990px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Cette version s'affichera sur les écrans de 768px et moins" COM_CONVERTFORMS_DEVICE_DESKTOP="Ordinateur" COM_CONVERTFORMS_DEVICE_TABLET="Tablette" COM_CONVERTFORMS_DEVICE_MOBILE="Mobile" COM_CONVERTFORMS_RESET_FORM="Réinitialiser le formulaire" COM_CONVERTFORMS_RESET_FORM_DESC="Réinitialise le formulaire après son envoi réussi" COM_CONVERTFORMS_HIDE_FORM="Masquer le formulaire" COM_CONVERTFORMS_HIDE_FORM_DESC="Masque le formulaire après son envoi réussi" COM_CONVERTFORMS_TEMPLATES="Templates" COM_CONVERTFORMS_TEMPLATES_SELECT="Sélectionner un template pour commencer" COM_CONVERTFORMS_TEMPLATES_BLANK="Partir de zéro" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Démarrer un nouveau formulaire a minima" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="Inline" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Barre latérale" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Barres" COM_CONVERTFORMS_LABELS_COLOR="Couleur du texte du label" COM_CONVERTFORMS_LABELS_FONT_SIZE="Taille de la police du label" COM_CONVERTFORMS_IMAGE_ABOVE="Au-dessus du texte" COM_CONVERTFORMS_IMAGE_BELOW="En-dessous du texte" COM_CONVERTFORMS_IMAGE_RIGHT="A droite du texte" COM_CONVERTFORMS_IMAGE_LEFT="A gauche du texte" COM_CONVERTFORMS_FLAT="A plat" COM_CONVERTFORMS_OUTLINE="Contour" COM_CONVERTFORMS_GRADIENT="Inclinaison" COM_CONVERTFORMS_EMAILS_DESC="Envoyer une notification par mail lorsqu'un utilisateur a complété le formulaire." COM_CONVERTFORMS_EMAILS="Notification par mail" COM_CONVERTFORMS_EMAILS_REPLY_TO="Email de réponse" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Nom du destinataire de la réponse" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Mail de" COM_CONVERTFORMS_EMAILS_FROM="De" COM_CONVERTFORMS_EMAILS_RECIPIENT="A envoyer à" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Indiquez les adresses email qui recevront les notifications lors du remplissage du formulaire. Pour indiquer plusieurs adresses, séparez-les avec une virgule." COM_CONVERTFORMS_EMAILS_SUBJECT="Sujet du mail" COM_CONVERTFORMS_EMAILS_BODY="Message" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Vous voulez des notifications multiples ? <br><a href='#' data-pro-only='Unlimited Notifications'>Souscrivez à l'offre PRO</a> pour en bénéficier." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Pièces jointes" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Localisation du fichier à joindre, par rapport à la racine de votre espace web. Utilisez une virgule entre deux si vous définissez plus d'un fichier." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Un module vous manque ?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="Dans le cas où un module vous manquerait pour votre application favorite, faites nous le savoir et nous serons heureux de l'inclure dans la librairie Convert Forms" COM_CONVERTFORMS_API_ENABLE="Activer l'API JSON" COM_CONVERTFORMS_API_DESC="L'API JSON vous permet de retrouver du contenu Convert Forms en utilisant des requêtes HTTP." COM_CONVERTFORMS_API_KEY="Clef secrète" COM_CONVERTFORMS_API_KEY_DESC="Cette clé secrète est utilisée pour authentifier des tâches sensibles comme des tâches CRON et l'API JSON. Si vous laissez ce champ vide, toutes les tâches nécessitant une authentification de l'utilisateur seront désactivées." COM_CONVERTFORMS_IMAGE_ALT="Alt de l'image" COM_CONVERTFORMS_IMAGE_ALT_DESC="Le texte alternatif de l'image" COM_CONVERTFORMS_CUSTOM_CODE="Code personnalisé" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Placez le code personnalisé à la fin du formulaire. Sont acceptés HTML, CSS et JavaScript. <br><br>Pour JavaScript, n'oubliez pas de préciser le type de code avec la balise <script>.<br><br>Ce code n'est pas exécuté dans l'administration." COM_CONVERTFORMS_ISSUES="Problèmes" COM_CONVERTFORMS_ISSUES_DETECTED="%s problèmes détectés avec les soumisions" COM_CONVERTFORMS_CREATED="Date de création" COM_CONVERTFORMS_MODIFIED="Date modifiée" COM_CONVERTFORMS_IP="Adresse IP de l'auteur" COM_CONVERTFORMS_USER_ID="ID de l'auteur" COM_CONVERTFORMS_USER_USERNAME="Nom d'utilisateur de l'auteur" COM_CONVERTFORMS_VISITOR_ID="ID du visiteur" COM_CONVERTFORMS_FORM_NAME="Nom du formulaire" COM_CONVERTFORMS_CAMPAIGN_NAME="Nom de la campagne" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Colonnes" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Pour activer des champs spécifiques dans le formulaire, sélectionnez d'abord un formulaire dans la barre des filtres" COM_CONVERTFORMS_UNTITLED_BOX="Formulaire sans nom" COM_CONVERTFORMS_SELECT_LAYOUT="Choisissez votre mise en page" COM_CONVERTFORMS_SHOW_LAYOUTS="Voir les mises en page" COM_CONVERTFORMS_HIDE_LAYOUTS="Masquer les mises en page" COM_CONVERTFORMS_FIELDS_COPY="Dupliquer" COM_CONVERTFORMS_FIELDS_DELETE="Supprimer" COM_CONVERTFORMS_FIELDGROUP_COMMON="Champs courants" COM_CONVERTFORMS_FIELDGROUP_FANCY="Champs originaux" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="Champs avancés" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Ajouter du texte ou du code HTML personnalisé. Aucune limite !" COM_CONVERTFORMS_FIELD_TEXT="Boîte de texte" COM_CONVERTFORMS_FIELD_TEXT_DESC="Une ligne seule avec une boîte de texte" COM_CONVERTFORMS_FIELD_TEXTAREA="Zone de texte" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Similaire à une boîte de texte, mais permet d'ajouter un texte sur plusieurs lignes" COM_CONVERTFORMS_FIELD_NUMBER="Nombre" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Un champ texte qui n'accepte que des chiffres" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Étape " COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Lorsqu'on clique sur une flèche, la valeur du champ change" COM_CONVERTFORMS_FIELD_NUMBER_MIN="Valeur minimum" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="La valeur minimum acceptée dans ce champ" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Valeur maximum" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="La valeur maximum acceptée dans ce champ" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA " COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Bloquez les soumissions de formulaire indésirables en utilisant Google ReCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Merci d'indiquer vos clés publique et secrète dans la configuration" COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Configurer reCAPTCHA maintenant" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Le thème de couleurs du widget" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="La taille du widget" COM_CONVERTFORMS_FIELD_DROPDOWN="Liste déroulante" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Permet de sélectionner un élément dans une liste déroulante" COM_CONVERTFORMS_FIELD_RADIO="Boutons radio" COM_CONVERTFORMS_FIELD_RADIO_DESC="Permet de sélectionner un élément dans une liste à cocher" COM_CONVERTFORMS_FIELD_URL="Site internet / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Accepte une URL qui commence par http:// ou https://" COM_CONVERTFORMS_FIELD_URL_INVALID="URL invalide" COM_CONVERTFORMS_FIELD_COUNTRY="Pays" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Liste des pays connus" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Détecter le pays du visiteur" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Si activé, le formulaire essaie de détecter et de pré-remplir le champ avec le pays du visiteur. Nécessite l'installation du plugin TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Exclure des pays" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="Devise" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Liste des devises connues" COM_CONVERTFORMS_FIELD_SUBMIT="Bouton soumettre" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Le bouton qui va envoyer le formulaire" COM_CONVERTFORMS_FIELD_HIDDEN="Champ caché" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Un champ non visible par l'utilisateur sur le site" COM_CONVERTFORMS_FIELD_EMAIL="Adresse email" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Un champ texte qui n'accepte qu'une adresse email valide" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Conditions d'utilisation" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Oblige l'utilisateur à accepter les conditions d'utilisation avant de pouvoir envoyer le formulaire" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Texte des conditions d'utilisation" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Ce texte apparaît juste après la case à cocher" COM_CONVERTFORMS_FIELD_CHECKBOX="Cases à cocher" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Permet de sélectionner plusieurs éléments dans une liste à cocher" COM_CONVERTFORMS_FIELD_REQUIRED="Est requis" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="Courriel invalide" COM_CONVERTFORMS_FIELD_SIZE="Taille du champ" COM_CONVERTFORMS_FIELD_SIZE_DESC="Sélectionner la taille par défaut du champ" COM_CONVERTFORMS_FIELD_TEL="Numéro de téléphone" COM_CONVERTFORMS_FIELD_TEL_DESC="Permet à l'utilisateur d'entrer un numéro de téléphone" COM_CONVERTFORMS_FIELD_DATETIME="Date / Heure" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Sélecteur de date et heure qui permet de sélectionner une seule date, plusieurs dates ou même une plage de dates" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Format de date" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Le format de sortie pour la date. Exemples :<br><br>d/m/Y H:i<br>Y-m-d<br>m/d/YYY" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Afficher le sélecteur d'heure" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Active le sélecteur d'heure. Si activé, veillez à inclure les caractères correspondants (H:i) dans le champ Format de date." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Date min" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="La date minimale/plus ancienne autorisée pour sélection. Supporte des formats comme : today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Date maximum" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="La date maximale/plus lointaine autorisée pour sélection. Supporte des formats comme : today, tomorrow, +5 day, +2 week" COM_CONVERTFORMS_FIELD_DATETIME_MODE="Mode de sélection de la date" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Autoriser l'utilisateur à sélectionner une date unique, plusieurs dates ou une période" COM_CONVERTFORMS_FIELD_DATETIME_TIME24="24 heures" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Affiche le sélecteur d'heure sur 24 heures, sans sélection AM/PM" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Pas des minutes" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Ajuste le pas de saisie des minutes dans le sélecteur" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Afficher en ligne" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Affiche le calendrier en ligne plutôt qu'en pop-up" COM_CONVERTFORMS_FIELD_DATETIME_THEME="Thème" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Sélectionnez un thème de calendrier" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Format de date non valide - %s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Désactiver le sélecteur de date natif des mobiles" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Si sélectionné, les utilisateurs de mobiles verront le sélecteur de date de Convert Forms à la place de celui intégré à leur mobile." COM_CONVERTFORMS_CSS_CLASSES="Classe CSS" COM_CONVERTFORMS_CSS_CLASSES_DESC="Ajoutez des classes CSS au conteneur de saisie. Ceci est essentiellement utilisé pour la mise en page." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Classes CSS de saisie" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Ajoutez ces classes CSS dans l'élément de saisie. A utiliser pour modifier l'affichage de la saisie elle-même." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Désactiver l'autocomplétion par le navigateur" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="Par défaut, les navigateurs mémorisent les informations que l'utilisateur écrit dans les champs de saisie. Pour désactiver l'autocomplétion à partir de ces informations, activez cette option." COM_CONVERTFORMS_FIELD_DESCRIPTION="Texte d'aide" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Texte d'aide à afficher à côté de ce champ." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Vérification DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Valide l'adresse e-mail par une vérification de DNS" COM_CONVERTFORMS_FIELD_CONFIRM="Confirmer" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Un champ pour vérifier que deux champs sont identiques" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Confirmer la clé de champ" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Indiquer la clé de champ qui sera utilisée pour vérifier la correspondance des valeurs." COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Le champ n'est pas correctement configuré" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Les valeurs ne correspondent pas" COM_CONVERTFORMS_HIDE_TEXT="Masquer le texte" COM_CONVERTFORMS_HIDE_TEXT_DESC="Cacher le texte après l'envoi du formulaire" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Il manque un champ email dans le formulaire" COM_CONVERTFORMS_INVALID_LEAD="Impossible de valider la soumission" COM_CONVERTFORMS_EXCEL_SECURITY="Sécurité Excel" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Si activé, les valeurs dans le fichier CSV exporté, débutant par =, +, - ou @, seront préfixées par une tabulation pour éviter toute injection CSV lors de l'ouverture du fichier exporté avec Excel. <br><br>Désactivez cette option uniquement si vous êtes certain à 100% de la fiabilité des données ou si vous avez des difficultés pour importer le fichier CSV dans une autre application." COM_CONVERTFORMS_CHOICE_LAYOUT="Affichage des choix" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Choisissez le type d'affichage pour les choix de réponses" COM_CONVERTFORMS_CHOICE_1_COLUMN="Une colonne" COM_CONVERTFORMS_CHOICE_2_COLUMN="Deux colonnes" COM_CONVERTFORMS_CHOICE_3_COLUMN="Trois colonnes" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Côte à côte" COM_CONVERTFORMS_REQUIRED_INDICATION="Indication de champ requis" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Indique les champs requis avec un astérisque à côté de chaque étiquette de champ. Cela nécessite que l'étiquette ne soit pas masquée." COM_CONVERTFORMS_INPUT_MASK="Masque de saisie" COM_CONVERTFORMS_INPUT_MASK_DESC="Aide l'utilisateur à la saisie en s'assurant que celle-ci correspond au format attendu. <br><br><b>Syntaxe :</b><br>9 : Numérique (0-9)<br>a : Alphabétique (a-z ou A-Z)<br>A : Alphabétique majuscules (A-Z)<br>* : Alphanumérique (0-9, a-z, or A-Z)<br>& : Alphanumérique majuscules(0-9 or A-Z)<br><br><b>Exemples </b>:<br>Téléphone : +1 (999)-9999<br>Date : 99/99/9999<br>Code postal : 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Données soumises par l'utilisateur" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Aucune donnée trouvée" COM_CONVERTFORMS_LEAD_INFO="Informations sur la soumission" COM_CONVERTFORMS_NOTES="Notes" COM_CONVERTFORMS_DATE_RANGE="Plage de dates" COM_CONVERTFORMS_START_DATE="Date de début" COM_CONVERTFORMS_END_DATE="Date de fin" COM_CONVERTFORMS_PERIOD="Période" COM_CONVERTFORMS_PERIOD_SELECT="- Choisir la période -" COM_CONVERTFORMS_HONEYPOT="Activer l'anti-spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Active l'ajout d'un champ Honeypot au formulaire, seulement visble des robots. Ainsi, quand ce champ honeypot est rempli, le formulaire détecte immédiatement qu'il l'a été par un robot de spam. <br><br>Sur de nombreux sites, cette méthode honeypot est suffisante pour éviter le spam. Si vous en recevez cependant, ou si vous voulez plus de protection, reCAPTCHA est une option intéressante." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Téléversement de fichier" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Permet à l'utilisateur de téléverser des fichiers" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Votre dossier temporaire est <b>%s</b> mais il n'est pas inscriptible. Veuillez définir un dossier temporaire modifiable." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Destination" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="Précisez le dossier de destination des fichiers.<br><br><b>Auto </b>: les fichiers seront placés dans le dossier media/com_convertforms/uploads. Un préfixe aléatoire sera ajouté au début du nom de fichier pour augmenter la sécurité.<br><br><b>Personnalisé </b>: définissez un dossier de destination personnalisé et une convention de renommage." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Destination personnalisée" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Saisissez le chemin relatif du dossier depuis la racine de votre serveur, où envoyer vos fichiers. Pour renommer les fichiers, utilisez ces balises.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index <br><br>On peut aussi utiliser des balises comme {year}, {month}, {user.id} ou {randomid} pour créer une destination encore plus dynamique." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limite de fichiers" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Combien de fichiers peuvent être téléversés ? Indiquez 0 pour ne pas avoir de limite." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Taille maximale des fichiers" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Indiquez en mégaoctets la taille maximale allouée pour chaque fichier téléversé. Indiquez 0 pour ne pas avoir de limite. <br><br>La taille maximale de téléversement supportée par votre serveur est : <b>%s</b>." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Types de fichiers autorisés" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Saisissez une liste de types de fichiers autorisés, séparés par une virgule, comme : </b>.jpg, .gif, .png, .pdf<br><br>Vous pouvez aussi définir des types de média comme : application/pdf, images/*, video/* et vous pouvez mixer les deux : application/*, .png, .jpg<br><br>Note : Ce système n'est pas infaillible et peut être détourné. N'oubliez pas qu'il y a toujours un danger à autoriser les utilisateurs à téléverser des fichiers.<br><br>L'extension PHP <b>fileinfo</b> est indispensable " COM_CONVERTFORMS_FIELD_FILTER="Filtrer" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtrer la saisie des utilisateurs sur les filtres suivants.<br><b>Texte</b> : Convertit la saisie en texte ; supprime tous les tags / attributs.<br><b>Safe HTML</b> : Accepte uniquement des éléments HTML sûrs comme<br><b>Alpha Numeric</b> : Autorise uniquement a-z et 0-9 <br><b>Word</b> : Autorise seulement a-z, et trait de soulignement<br><b>Integer</b> : Utilise uniquement la première valeur numérique<br><b>Float</b>: Autorise seulement a-z, et trait de soulignement" COM_CONVERTFORMS_UPLOAD_ERROR="Formulaire ou clé de champ invalide" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Champ de téléversement invalide" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Fichier invalide ou non supporté" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Vous pouvez téléverser jusqu'à %d fichiers" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Glisser-déposer les fichiers ici ou" COM_CONVERTFORMS_UPLOAD_BROWSE="parcourir" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Le fichier temporaire %s est absent, veuillez le transférer de nouveau" COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Le dossier de téléversement %s n'existe pas ou vous ne disposez pas des droits d'écriture" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Le fichier est trop lourd ({{filesize}}MB). Taille maximale des fichiers : {{maxFilesize}}MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Vous ne pouvez pas téléverser des fichiers de ce type" COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Votre navigateur ne permet pas le téléversement de fichiers par glisser-déposer." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Le serveur a répondu avec le code d'erreur {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Annuler le téléversement" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Êtes-vous sûr(e) de vouloir annuler le téléversement ?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Supprimer le fichier" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Vous ne pouvez plus téléverser de fichiers" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Supprimer les fichiers automatiquement" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Si vous recevez beaucoup de pièces jointes, cela peut rapidement prendre beaucoup de place sur votre serveur et nécessiter que vous y fassiez du ménage pour libérer de l'espace. <br><br>Cette option vous permet de supprimer automatiquement les fichiers placés dans le répertoire de téléversement après une période donnée. <br><br>Par exemple, entrez 3 pour supprimer les fichiers qui ont plus de 3 jours ou 0 si vous voulez garder les fichiers éternellement. <br><br>Nota : Le plugin Convert Forms Uploaded Files Cleaner doit être activé et l'URL de tâche Cron dédiée doit être paramétrée sur votre serveur." COM_CONVERTFORMS_READONLY="Lecture seule" COM_CONVERTFORMS_READONLY_DESC="Interdire la saisie dans ce champ" COM_CONVERTFORMS_PHPSCRIPT="Scripts PHP" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Affichage du formulaire" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="Le script PHP ajouté dans cette zone est exécuté juste avant l'affichage du formulaire. <br><br>Le principal dans cette zone est la variable <b>$formLayout</b> (String) qui contient le code HTML du formulaire.<br><br>Pour accéder aux paramètres du formulaire, utilisez la variable <b>$form</b> (Array).<br><br>Vous n'avez pas besoin d'utiliser les balises <?php et ?>" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Déroulement du formulaire" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="Le code ajouté ici est exécuté juste avant la sauvegarde du formulaire dans la base de données, que la soumission soit ou non valide.<br><br>Cette zone est surtout utile lorsque vous devez effectuer des calculs, faire une validation avancée ou modifier la valeur d'un champ. Toute modification de la variable <b>$post</b> (Array) définie ici sera reprise dans la soumission.<br><br>Pour accéder aux paramètres, utilisez la variable <b>$form </b>(Array).<br><br>Vous n'avez pas besoin d'utiliser les balises <?php et ?>." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Après soumission du formulaire" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="Le code PHP ajouté ici est exécuté après la soumission réussie et l'enregistrement des données dans la base.<br><br>Il est utile pour exécuter des tâches complémentaires comme transmettre des données de manière masquée vers une autre URL. Vous pouvez accéder à la soumission complète en utilisant la variable <b>$submission</b> (Object).<br><br>Pour accéder aux paramètres du formulaire, utilisez la variable <b>$form</b> (Array).<br><br>Vous n'avez pas besoin d'inclure les balises <?php et ?>." COM_CONVERTFORMS_PHPSCRIPT_NOTE="Les scripts PHP ne sont pas exécutés dans la partie admin du site afin d'éviter les problèmes liés à la prévisualisation des formulaires en direct. Testez toujours sur le site (front-end)." COM_CONVERTFORMS_FIELD_PASSWORD="Mot de passe" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Permet à l'utilisateur d'entrer un mot de passe de manière sécurisée" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Type de champ de confirmation." COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Choisissez le type de champ : texte ou mot de passe" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Préparation du formulaire" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="Le code PHP inséré ici est exécuté juste avant la préparation des données du formulaire et l'envoi à la fonction d'affichage.<br><br>L'objet principal ici est la variable <b>$form</b> (Array) contenant les paramètres du formulaire. <br><br>Vous n'avez pas besoin d'utiliser les balises <?php et ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s est déjà utilisateur." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s semble être faux ou invalide, merci d'entrer une vraie adresse email." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Erreur : le script de Google reCAPTCHA n'est pas chargé. Assurez-vous qu'il n'est pas bloqué par votre navigateur ou contactez l'administrateur du site. " COM_CONVERTFORMS_ACCESS_FORMS="Voir les formulaires" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Autoriser les utilisateurs du groupe à administrer les formulaires" ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Voir les soumissions" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Autoriser les utilisateurs du groupe à administrer les soumissions." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Voir les campagnes" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Autorise les utilisateurs du groupe à gérer les campagnes. Activez cette option si vous êtes confronté à des soumissions spam." COM_CONVERTFORMS_CSRF_CHECK="Utiliser le jeton Joomla! CSRF" COM_CONVERTFORMS_CSRF_CHECK_DESC="Ajoute une protection complémentaire à vos formulaires en vérifiant toutes les requêtes AJAX avec les jetons CSRF.<br><br>Si vous activez ceci et que vous utilisez une solution de cache mettant en cache la totalité de la page comme le plugin Cache de Page Joomla! ou un cache côté serveur comme Cloudflare ou Sucuri, vous risquez de rencontrer des anomalies de soumission des formulaires." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Le formulaire a été soumis avec succès" COM_CONVERTFORMS_SECRET_SET="Veuillez configurer une clé secrète qui permettra d'utiliser l'option endpoint" COM_CONVERTFORMS_SECRET_NO="Aucune clé secrète dans l'URL" COM_CONVERTFORMS_SECRET_WRONG="La clé secrète présente dans l'URL est erronée" COM_CONVERTFORMS_SECURITY="Sécurité" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCaptcha invisible" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Bloquez le spam lors de la soumission en utilisant le reCaptcha invisible Google" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Badge" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Position du badge reCaptcha. \"Inline\" vous permet de le positionner avec du CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="En bas à droite" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="En bas à gauche" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="Inline" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Soumissions" COM_CONVERTFORMS_SUBMISSIONS_LIST="Liste des soumissions" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Afficher uniquement les soumissions confirmées" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Activez ce paramètre pour n'afficher que les soumissions confirmées" COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Masquer les valeurs vides" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Activez ce paramètre pour masquer les champs vides" COM_CONVERTFORMS_SELECT_FORM="Sélectionnez le formulaire" COM_CONVERTFORMS_SELECT_FORM_DESC="Sélectionnez le formulaire duquel afficher les soumissions" COM_CONVERTFORMS_SELECT_FORM_DESC2="Sélectionnez le formulaire à afficher" COM_CONVERTFORMS_LIST_LIMIT="Limite de pages" COM_CONVERTFORMS_LIST_LIMIT_DESC="Nombre de soumissions à afficher par page. Mettez 0 pour aucune limite." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Voir uniquement les siennes" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Bien que vous puissiez afficher une liste avec les soumissions de différents utilisateurs, le visiteur ne sera autorisé à accéder qu'aux détails de ses propres soumissions, si cette option est activée.<br><br>Le visiteur devra s'identifier." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Afficher la pagination" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Si le nombre de soumissions dépasse la limite d'affichage, les liens de pagination seront affichés sous la liste." COM_CONVERTFORMS_ORDER="Trier les soumissions" COM_CONVERTFORMS_ORDER_DESC="Ordre des soumissions" COM_CONVERTFORMS_ORDER_RECENT="Les plus récents" COM_CONVERTFORMS_ORDER_OLDEST="Les plus anciens" COM_CONVERTFORMS_ORDER_RANDOM="Ordre aléatoire" COM_CONVERTFORMS_FILTER_USER="Afficher les soumissions de" COM_CONVERTFORMS_FILTER_USER_DESC="Sélectionner les soumissions d'un auteur en particulier.<br><br><b>Utilisateur connecté</b><br>N'affiche que les soumissions du membre connecté. Chaque membre ne verra que ses soumissions.<br><br><b>Tous les utilisateurs</b><br>Affiche toutes les soumissions.<br><br><b>Utilisateurs spécifiques</b><br>Spécifiez les auteurs des soumissions." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Utilisateur identifié" COM_CONVERTFORMS_FILTER_USER_ALL="Tous les utilisateurs" COM_CONVERTFORMS_FILTER_USER_SELECT="Utilisateurs spécifiques" COM_CONVERTFORMS_SET_USERS="IDs des utilisateurs" COM_CONVERTFORMS_SET_USERS_DESC="Saisissez les IDs des utilisateurs pour filtrer les soumissions. Utilisez une virgule entre deux valeurs." COM_CONVERTFORMS_LOAD_CSS="Charger la feuille de style" COM_CONVERTFORMS_LOAD_CSS_DESC="Désactivez cette option si vous ne voulez pas utiliser la feuille de style CSS de Convert Forms" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Type d'affichage" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Choisissez le type d'affichage à utiliser pour afficher la soumission sur le site. Vous pouvez créer vos propres types d'affichage dans votre template." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Type d'affichage" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Type d'affichage" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Choisissez le template" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Choisissez le template d'affichage des soumissions. Ce template sera utilisé pour la vue en liste et la vue détaillée. Vous pouvez créer votre propre surcharge dans votre template." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Disposition du conteneur" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Le conteneur HTML principal de la liste de soumissions. Ne supprimez pas le tag {submissions}, car il est remplacé par les données." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Disposition de la ligne" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="L'affichage HTML tel qu'utilisé dans celui du conteneur" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Affichage des détails" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Le type d'affichage HTML de la page de détails de la soumission" COM_CONVERTFORMS_FIELD_EMPTYSPACE="Espace vide" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Ajoutez un espace vide dans votre formulaire" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Espace vide" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Définissez un espace vertical entre les champs en pixels." COM_CONVERTFORMS_FIELD_HEADING="Titre" COM_CONVERTFORMS_FIELD_HEADING_DESC="Ajouter un titre de rubrique pour grouper vos champs" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Elément titre HTML" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Sélectionnez le type de titre." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Lien" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Faut-il faire pointer le titre vers une URL ?" COM_CONVERTFORMS_FIELD_HEADING_LINK="Lien" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Entrez le lien vers lequel l'utilisateur sera redirigé." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Ouvrir dans un nouvel onglet" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Activer l'ouverture du lien dans un nouvel onglet." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Définissez la taille des caractères pour le titre." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Sélectionnez la police d'écriture pour le titre." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Hauteur de la ligne" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Définissez la hauteur de la ligne pour le titre." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Espacement des caractères" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Définissez l'espacement des lettres pour le titre." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Alignement du contenu" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Choisir l'alignement du titre." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Afficher les valeurs" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Assurez-vous de définir une valeur unique pour chaque choix, sinon vous serez dans l'impossibilité de savoir quelle option l'utilisateur aura sélectionnée." COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Utiliser les calculs de valeurs" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Les \"valeurs de calcul\" sont utilisées pour les calculs. Elles représentent la valeur numérique d'un choix." COM_CONVERTFORMS_FIELD_DIVIDER="Séparateur" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Sépare les sections de votre formulaire" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Style de la bordure" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Choisissez le style de bordure du séparateur." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Solide" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Tirets" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Pointillés" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Largeur de la bordure" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Définissez la largeur de la bordure du séparateur" COM_CONVERTFORMS_FIELD_BORDER_COLOR="Couleur de la bordure" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Définissez la couleur de la bordure du séparateur" COM_CONVERTFORMS_FIELD_MARGIN_TOP="Marge haute" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Définissez la marge haute du séparateur" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Marge basse" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Définissez la marge basse du séparateur" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Premier jour de la semaine" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Modifier le premier jour de la semaine pour l'affichage du calendrier" COM_CONVERTFORMS_ENTER_LABEL="Saisissez l'étiquette" COM_CONVERTFORMS_ADD_FIELD="Ajouter" COM_CONVERTFORMS_ALL_FIELDS="Tous" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Champs de mise en forme" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Autoriser les fichiers non sécurisés" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Autoriser le téléchargement de fichiers non sécurisés.<br><br><b> Un fichier est considéré comme dangereux lorsque : </b><br>- Un octet vide se trouve dans le nom du fichier.<br>- L'extension de fichier est interdite : .php, py etc.<br>- Il y a une balise php dans le contenu du fichier.<br>- Il y a un ”short tag\" dans le contenu du fichier.<br>- Il y a une extension interdite quelque part dans le contenu.<br><br>Cette option vous protège également contre les fichiers dangereux inclus dans des fichiers compressés tels que zip, rar, tar etc." COM_CONVERTFORMS_LABEL_POSITION="Position du libellé" COM_CONVERTFORMS_LABEL_POSITION_DESC="Définissez la position de l'étiquette" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Réponse invalide" COM_CONVERTFORMS_INVALID_TASK="Tâche invalide" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Veuillez attendre que le téléchargement du fichier soit terminé." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Le masque est incomplet" COM_CONVERTFORMS_SUBMISSION_ID="ID de soumission" COM_CONVERTFORMS_SUBMISSION_DATE="Date de soumission" COM_CONVERTFORMS_SUBMISSION_STATUS="État de la soumission" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID de campagne de soumission" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID du formulaire soumis" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID du visiteur" COM_CONVERTFORMS_SUBMISSION_USER_ID="ID de l'utilisateur ayant soumis le formulaire" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Nombre de soumissions" COM_CONVERTFORMS_FIELD_RATING="Notation" COM_CONVERTFORMS_FIELD_RATING_DESC="Ajoutez une évaluation dans votre formulaire et permettez à vos utilisateurs de donner une ou plusieurs évaluations." COM_CONVERTFORMS_FIELD_RATING_ICON="Icône" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Sélectionnez l'un des huit modèles d'icônes intégrés pour votre champ d'évaluation." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Définissez la taille des icônes de notation." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Couleur sélectionnée" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Sélectionnez la couleur qui sera utilisée lorsqu'une icône de notation est sélectionnée ou survolée." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Couleur non sélectionnée" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Sélectionnez la couleur qui sera utilisée lorsqu'une icône de notation n'est pas sélectionnée." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Valeur maximale" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Entrez le nombre maximum d'icônes de notation qui seront affichées." COM_CONVERTFORMS_FIELD_RANGESLIDER="Curseur de gamme" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Ajoutez un curseur de plage dans votre formulaire et permettez à vos utilisateurs de sélectionner une valeur à l'aide d'une interface de curseur." COM_CONVERTFORMS_FIELD_COLORPICKER="Sélecteur de couleurs" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Le champ sélecteur de couleurs permet à vos utilisateurs de spécifier une couleur soit en utilisant une interface visuelle de sélecteur de couleurs, soit en saisissant leur propre couleur au format hexadécimal." COM_CONVERTFORMS_MIN_CHARS="Nombre minimum de caractères" COM_CONVERTFORMS_MIN_CHARS_DESC="Longueur minimale de ce champ en caractères. Saisissez 0 pour ne pas limiter" COM_CONVERTFORMS_MAX_CHARS="Nombre maximum de caractères" COM_CONVERTFORMS_MAX_CHARS_DESC="Longueur maximale de ce champ en caractères. Saisissez 0 pour ne pas limiter" COM_CONVERTFORMS_MIN_WORDS="Nombre minimum de mots" COM_CONVERTFORMS_MIN_WORDS_DESC="Longueur minimale de ce champ en mots. Saisissez 0 pour ne pas limiter" COM_CONVERTFORMS_MAX_WORDS="Nombre maximum de mots" COM_CONVERTFORMS_MAX_WORDS_DESC="Longueur maximale de ce champ en mots. Saisissez 0 pour ne pas limiter" COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Veuillez saisir %s caractères au moins. Vous n'avez actuellement que %s caractères." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Veuillez réduire la longueur de ce texte à %s caractères au maximum. Il comporte actuellement %s caractères." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Veuillez saisir %s mots au minimum. Vous n'en avez saisi que %s " COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Veuillez réduire ce texte à %s mots au maximum. Il comporte actuellement %s mots." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Entrez la valeur minimale du curseur." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Entrez la valeur maximale du curseur." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Entrez le niveau du curseur." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Demi-évaluations" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Supporte les demi-notes, par exemple : 0,5, 1,5, 2,5." COM_CONVERTFORMS_FIELD_EDITOR="Éditeur de texte enrichi" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Met un éditeur de texte enrichi à la disposition des utilisateurs pour mettre en forme leurs réponses dans ce champ." COM_CONVERTFORMS_EDITOR_HEIGHT="Hauteur de l'éditeur" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Définissez la hauteur en pixels" COM_CONVERTFORMS_EDITOR_SELECT="Éditeur Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Choisissez l'éditeur Joomla à utiliser pour ce champ <br><br>Si vous n'en voyez aucun dans la liste, activez au moins 1 plugin éditeur Joomla dans le gestionnaire de plugins de Joomla." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Éditeur Joomla non trouvé %s" COM_CONVERTFORMS_EXPORT_COMPLETED="%s soumissions exportées" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Votre téléchargement démarrera automatiquement" COM_CONVERTFORMS_EXPORT_WORKING="En cours d'export" COM_CONVERTFORMS_EXPORT_PROCESSING="Soumission %s de %s exportée" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Le fichier exporté n'a pas été trouvé" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Configurer hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Stoppez le spam de soumissions avec hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Choisissez la version case à cocher ou invisible de hCaptcha" COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="L'extension PHP <b>fileinfo</b> est nécessaire pour contrôler le type mime des fichiers téléchargés mais il n'est pas installé ou pas chargé. Veuillez contacter votre hébergeur pour l'installer." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Statut par défaut des nouvelles soumissions" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Précisez le statut à affecter à chaque nouvelle soumission" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]����K�K�Ecomponents/com_convertforms/language/sk-SK/sk-SK.com_convertforms.ininu�[���; @package Convert Forms ; @version 3.2.11 Pro ; ; @author Tassos Marinos - http://www.tassos.gr ; @copyright Copyright (c) 2016 Tassos Marinos. All rights reserved. ; @license http://www.tassos.gr ; CONVERTFORMS="Convert Forms" ; COM_CONVERTFORMS="Convert Forms" COM_CONVERTFORMS_DESIGN="Dizajn" COM_CONVERTFORMS_BEHAVIOR="Správanie" COM_CONVERTFORMS_LIST="Zoznam" COM_CONVERTFORMS_NO_RESULTS_FOUND="Nie %s nájdené" COM_CONVERTFORMS_CREATE_NEW="Vytvoriť nový?" COM_CONVERTFORMS_EMAIL_ASCENDING="Email ascending" COM_CONVERTFORMS_EMAIL_DESCENDING="E-mail vzostupne" COM_CONVERTFORMS_ACTIONS="Akcie" COM_CONVERTFORMS_VIEW_LEADS="Zobraziť príspevky" NRI_PLG_CONVERTFORMS="Doplnok Convert Forms Plugin" COM_CONVERTFORMS_CONFIGURATION="Previesť konfiguráciu formulárov" COM_CONVERTFORMS_LOADCSS="Načítať šablónu so štýlmi" COM_CONVERTFORMS_LOADCSS_DESC="Vyberte, ak chcete načítať šablónu so štýlmi rozšírení. Môžete to zakázať, ak umiestnite všetky svoje vlastné štýly do inej šablóny so štýlmi, napríklad do poľa Vlastný kód alebo do šablóny so štýlmi" COM_CONVERTFORMS_DEBUG="ladenie" COM_CONVERTFORMS_DEBUG_DESC="Povoľte túto možnosť, aby vám pomohla ladiť chyby a neočakávané správanie. Chybové hlásenia sa doručia do konzoly vášho prehliadača (stlačte F12) a do priečinka Protokoly." COM_CONVERTFORMS_FORMS="Formuláre" COM_CONVERTFORMS_FORM="Form" COM_CONVERTFORMS_NEW_FORM="Nový formulár" COM_CONVERTFORMS_EDIT_FORM="Upraviť formulár" COM_CONVERTFORMS_FORM_N_ITEMS_COPIED="%s formuláre skopírované" COM_CONVERTFORMS_FORM_N_ITEMS_PUBLISHED="%s zverejnené formuláre" COM_CONVERTFORMS_FORM_N_ITEMS_UNPUBLISHED="%s formulár nezverejnený" COM_CONVERTFORMS_FORM_N_ITEMS_TRASHED="%s formuláre vyhodené do koša" COM_CONVERTFORMS_FORM_N_ITEMS_DELETED="%s formuláre vymazané" COM_CONVERTFORMS_FORM_ASCENDING="Formulare vzostupne" COM_CONVERTFORMS_FORM_DESCENDING="Formulár zostupne" COM_CONVERTFORMS_FORM_SELECT="- Vyberte formulár -" COM_CONVERTFORMS_FORM_CREATE_MODULE="Publikovať vytvorenie modulu" COM_CONVERTFORMS_FORM_LEADS="Tento formulár má %s celkový počet doterajších podaní" COM_CONVERTFORMS_FORM_CLIPBOARD_SHORTCODE="Publikovať pomocou krátkeho kódu: %s" COM_CONVERTFORMS_CAMPAIGN="Kampaň" COM_CONVERTFORMS_CAMPAIGNS="Kampane" COM_CONVERTFORMS_NEW_CAMPAIGN="Nová kampaň" COM_CONVERTFORMS_EDIT_CAMPAIGN="Upraviť kampaň" COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC="Zadajte názov kampane. Toto meno nemôže vidieť nikto iný okrem vás." COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_COPIED="%s Kampane boli skopírované" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_UNPUBLISHED="%s Zverejnenie kampaní bolo zrušené" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_PUBLISHED="%s Zverejnené kampane" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_TRASHED="%s Kampane boli vyhodené do koša" COM_CONVERTFORMS_CAMPAIGN_N_ITEMS_DELETED="%s Kampane boli odstránené" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_UNPUBLISHED="%s nezverejnené príspevky" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_PUBLISHED="%s zverejnené príspevky" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_TRASHED="%s príspevky boli vyhodené do koša" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_DELETED="%s vymazané príspevky" COM_CONVERTFORMS_SUBMISSION_N_ITEMS_ARCHIVED="%s podania archivované" COM_CONVERTFORMS_CAMPAIGN_ASCENDING="Kampaň vzostupne" COM_CONVERTFORMS_CAMPAIGN_DESCENDING="Kampaň klesá" COM_CONVERTFORMS_CAMPAIGN_SELECT="- Vyberte kampaň -" COM_CONVERTFORMS_CAMPAIGN_CONFIRM_DESC="Ak chcete nastaviť integráciu, uložte kampaň." COM_CONVERTFORMS_CAMPAIGN_CHANGED="Kampaň zmenená" COM_CONVERTFORMS_CAMPAIGN_SYNC="Synchronizovať príspevky" COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC="Vyberte, či sa vaše príspevky majú synchronizovať so softvérom tretích strán alebo sa majú zhromažďovať iba vo vašej databáze. Poznámka: Ak sa potrebujete integrovať so softvérom tretích strán, ako je MailChimp, Aweber, GetResponse, Active Campaign atď., nainštalujte si príslušný doplnok v sekcii Addons." COM_CONVERTFORMS_N_ITEMS_TRASHED="%s Kampane boli odstránené" COM_CONVERTFORMS_CHOOSE_SERVICE="Vyberte položku Služba" COM_CONVERTFORMS_PENDING_LEADS="Čakajúce príspevky" COM_CONVERTFORMS_SUBMISSIONS="Podania" COM_CONVERTFORMS_SUBMISSION="Podanie" COM_CONVERTFORMS_LATEST_SUBMISSIONS="Najnovšie príspevky" COM_CONVERTFORMS_SUBMISSION_CONFIRMED="Potvrdené" COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED="Nepotvrdený" COM_CONVERTFORMS_EDIT_CONVERSION="Upraviť príspevok" COM_CONVERTFORMS_SUBMISSION_INVALID="Príspevok sa nenašiel." COM_CONVERTFORMS_NOT_AUTHORIZED="Nemáte oprávnenie na prístup k tejto stránke." COM_CONVERTFORMS_LEADS_ASC="Podania vzostupne" COM_CONVERTFORMS_LEADS_DESC="Podania zostupne" COM_CONVERTFORMS_LEADS_EXPORT="Exportovať podania" COM_CONVERTFORMS_ADDONS="Doplnky" COM_CONVERTFORMS_INSTALL_ADDONS="Zobraziť nainštalované doplnky" COM_CONVERTFORMS_ADDONS_MISSING_KEY="Aby ste mohli nainštalovať doplnky Convert Forms Addons, budete musieť zadať svoj Download Key v nastaveniach doplnku Novarain Framework Plugin" COM_CONVERTFORMS_ADDONS_DESC="Doplnky rozširujú funkčnosť prevodu formulárov. Pomocou týchto doplnkov sa môžete pripojiť k softvérom tretích strán, integrovať nové funkcie a urobiť Convert Forms ešte výkonnejším." COM_CONVERTFORMS_LAST_YEAR="Minulý rok" COM_CONVERTFORMS_THIS_YEAR="Tento rok" COM_CONVERTFORMS_LAST_MONTH="Minulý mesiac" COM_CONVERTFORMS_THIS_MONTH="Tento mesiac" COM_CONVERTFORMS_LAST_WEEK="Minulý týždeň" COM_CONVERTFORMS_THIS_WEEK="Tento týždeň" COM_CONVERTFORMS_LAST_7_DAYS="Posledných 7 dní" COM_CONVERTFORMS_YESTERDAY="včera" COM_CONVERTFORMS_TODAY="Dnes" COM_CONVERTFORMS_AVG_DAY="Priemerný deň (tento mesiac)" COM_CONVERTFORMS_PROJECTION="Projekcia na tento mesiac" COM_CONVERTFORMS_TOTAL="Celkom" COM_CONVERTFORMS_CHOOSE_FILE="Vyberte súbor .cnvf" COM_CONVERTFORMS_FORMS_NAME_DESC="Jedinečný a popisný názov vám v budúcnosti pomôže tak, ako by sa objavil na informačnom paneli, v analytike atď." COM_CONVERTFORMS_BACKGROUND_IMAGE="Zdroj obrázka na pozadí" COM_CONVERTFORMS_IMAGE_DESC="Vyberte zdroj obrázka na pozadí" COM_CONVERTFORMS_CUSTOM_URL="Vlastná adresa URL" COM_CONVERTFORMS_BACKGROUND_URL="Adresa URL obrázka na pozadí" COM_CONVERTFORMS_BACKGROUND_URL_DESC="Zadajte vlastnú webovú adresu pre svoj obrázok" COM_CONVERTFORMS_BACKGROUND_FILE="Obrázok na pozadí" COM_CONVERTFORMS_BACKGROUND_FILE_DESC="Vyberte obrázok, ktorý chcete odovzdať." COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC="Môžete poskytnúť obrázok, ktorý sa zobrazí za obsahom formulára. Vyberte si <b> Nahrať </b> o nahrať nový obrázok alebo <b> Vlastná adresa URL </b> zadajte vlastnú webovú adresu obrázka. Aby toto nastavenie fungovalo, farba pozadia, ktorú ste si vybrali, musí byť priehľadná." COM_CONVERTFORMS_FORM_BUILDER="Form Builder" COM_CONVERTFORMS_FIELD_TYPE="Typ poľa" COM_CONVERTFORMS_FIELD_TYPE_DESC="Atribút Field Type určuje typ vstupného prvku, ktorý sa má zobraziť." COM_CONVERTFORMS_FIELD_LABEL="Označenie poľa" COM_CONVERTFORMS_FIELD_LABEL_DESC="Označenie poľa definuje označenie pre vstupný prvok." COM_CONVERTFORMS_FIELD_NAME="Názov poľa" COM_CONVERTFORMS_FIELD_NAME_DESC="Špecifikuje názov vstupného prvku, ktorý sa používa na odkazovanie na údaje formulára po odoslaní formulára. Túto možnosť použite aj na mapovanie polí formulára s integračnými aplikáciami." ; COM_CONVERTFORMS_PLACEHOLDER_NAME="Input Placeholder" COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC="Text, ktorý chcete zobraziť v poli predtým, ako používateľ zadá akékoľvek údaje." COM_CONVERTFORMS_REQUIRED_NAME="Požadované pole" COM_CONVERTFORMS_REQUIRED_NAME_DESC="Ak je povolená, zaistí sa vyplnenie tohto poľa pred odoslaním formulára." COM_CONVERTFORMS_FIELDS="Polia" COM_CONVERTFORMS_FIELDS_FREE_NOTICE="Používate <b> bezplatnú </b>verziu, ktorá podporuje iba 1 pole pre e-mail. <b> Inovujte na verziu Pro, </b> aby ste mohli spravovať neobmedzené polia." COM_CONVERTFORMS_GENERAL="všeobecný" COM_CONVERTFORMS_FORM_TEXT_ALIGN="Zarovnanie textu poľa" COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC="Zarovnanie textu formulára" COM_CONVERTFORMS_INPUT_COLOR="Farba textu poľa" COM_CONVERTFORMS_INPUT_BGCOLOR="Farba pozadia poľa" COM_CONVERTFORMS_INPUT_BORDER_COLOR="Farba okraja poľa" COM_CONVERTFORMS_INPUT_SHADOW_DESC="Pridá vnútorný tieň do vstupného poľa" COM_CONVERTFORMS_INPUT_FONT_SIZE="Veľkosť písma poľa" COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC="Veľkosť písma poľa" COM_CONVERTFORMS_VPADDING_SIZE="Vertikálne polstrovanie" COM_CONVERTFORMS_HPADDING_SIZE="Horizontálne polstrovanie" COM_CONVERTFORMS_BOX_WIDTH_TYPE="Maximálna šírka boxu" COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC="Poskytnite vlastnú maximálnu šírku podľa vlastného výberu alebo zaistite, aby tento box pokrýval celú plochu obrazovky. Upozorňujeme, že toto je maximálna šírka, čo znamená, že formulár sa vždy zmestí na menšie plochy." COM_CONVERTFORMS_FORM_WIDTH="Vlastná maximálna šírka" COM_CONVERTFORMS_FORM_WIDTH_DESC="Poskytnite vlastnú maximálnu šírku podľa vlastného výberu." COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING="Odstrániť predvolenú výplň" COM_CONVERTFORMS_REMOVE_DEFAULT_PADDING_DESC="Odstráňte predvolenú výplň medzi oblasťou obsahu a okrajmi poľa formulára." COM_CONVERTFORMS_FORM_BORDER_STYLE="Štýl okrajov" COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC="Použite orámovanie okolo formulára" COM_CONVERTFORMS_FORM_BORDER_COLOR="Farba okraja" COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC="Farba orámovania formulára" COM_CONVERTFORMS_FORM_BORDER_WIDTH="Šírka okraja" COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC="Šírka okraja formulára" COM_CONVERTFORMS_BOX_RADIUS="Polomer boxu" COM_CONVERTFORMS_BORDER_RADIUS="Polomer okraja" COM_CONVERTFORMS_BORDER_RADIUS_DESC="Zadajte veľkosť polomeru okraja" COM_CONVERTFORMS_COLLECT_LEADS_USING="Zbierajte príspevky pomocou kampane" COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC="Príspevky zhromaždené týmto formulárom budú priradené k vybranej kampani. Kampane môžete spravovať v sekcii Kampane." COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION="Akcia úspešného odoslania" COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC="Vyberte akciu, ktorú chcete vykonať po úspešnom odoslaní" COM_CONVERTFORMS_DISPLAY_MSG="Zobraziť správu" COM_CONVERTFORMS_REDIRECT_USER="Presmerovať používateľa" COM_CONVERTFORMS_SUCCESS_TEXT="Správa po úspechu" COM_CONVERTFORMS_SUCCESS_TEXT_DESC="Zadajte správu, ktorú chcete zobraziť používateľovi po úspešnom pridaní do zoznamu." COM_CONVERTFORMS_SUCCESS_URL="Adresa URL presmerovania" COM_CONVERTFORMS_SUCCESS_URL_DESC="Zadajte adresu URL, na ktorú chcete používateľa presmerovať po úspešnom pridaní do zoznamu." COM_CONVERTFORMS_PASS_DATA="Odovzdať údaje o odoslaní na adresu URL presmerovania" ; COM_CONVERTFORMS_PASS_DATA_GET="Yes, using GET method" ; COM_CONVERTFORMS_PASS_DATA_POST="Yes, using POST method" COM_CONVERTFORMS_SUBMIT_STYLE="Odoslať štýl tlačidla" COM_CONVERTFORMS_SUBMIT_STYLE_DESC="Upravte svoje tlačidlo pomocou pekných efektov." COM_CONVERTFORMS_BTN_SHADOW_DESC="Pridá k tlačidlu vonkajší tieň" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR="Farba kurzora textu" COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC="Farba kurzora textu" COM_CONVERTFORMS_CUSTOM_CSS="Vlastné CSS" COM_CONVERTFORMS_CUSTOM_CSS_DESC="Štýl formulára pomocou vlastného CSS. <br> <br> Aby sme vám pomohli so štýlom formulára, kód pridaný v tejto oblasti sa spustí aj v backende." COM_CONVERTFORMS_CLASS_SUFFIX="Prípona triedy" COM_CONVERTFORMS_CLASS_SUFFIX_DESC="Prípona triedy" COM_CONVERTFORMS_TEXTAREA_HEIGHT="Výška textovej oblasti" COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC="Výška textovej oblasti určuje viditeľnú výšku textovej oblasti v riadkoch." COM_CONVERTFORMS_CHOICES="Voľby" COM_CONVERTFORMS_CHOICES_DESC="Pridajte možnosti pre pole formulára." COM_CONVERTFORMS_FIELD_VALUE="Predvolená hodnota" COM_CONVERTFORMS_FIELD_VALUE_DESC="Zadajte text pre predvolené pole Hodnota." COM_CONVERTFORMS_HIDE_LABELS="Skryť štítok" COM_CONVERTFORMS_HIDE_LABELS_DESC="Začiarknutím tejto možnosti skryjete označenie poľa formulára" COM_CONVERTFORMS_IMAGE_SOURCE="Zdroj obrázka" COM_CONVERTFORMS_IMAGE_SOURCE_DESC="Môžete poskytnúť obrázok, ktorý sa zobrazí medzi obsahom formulára. Ak chcete odovzdať <b> nový obrázok, </b> vyberte možnosť Odovzdať. <b> Ak chcete zadať vlastnú webovú adresu obrázka, </b> vyberte možnosť Vlastná adresa URL." COM_CONVERTFORMS_IMAGE_URL="Adresa URL obrázka" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE="Skryť obrázok na malých obrazovkách" COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC="Na menších obrazovkách, ako sú mobilné zariadenia, vyzerajú menšie modály krajšie. Ak chcete zmenšiť veľkosť modálu, môžete pomocou tohto nastavenia skryť obrázok." COM_CONVERTFORMS_HORIZONTAL_POSITION="Horizontálna poloha" COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC="Horizontálna poloha" COM_CONVERTFORMS_VERTICAL_POSITION="Vertikálna poloha" COM_CONVERTFORMS_VERTICAL_POSITION_DESC="Vertikálna poloha" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE="Šírka obrázka" COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC="Nastavte šírku obrázka" COM_CONVERTFORMS_BUTTON_ALIGN="Zarovnanie tlačidiel" COM_CONVERTFORMS_FORM_POSITION="Pozícia formulára" COM_CONVERTFORMS_FORM_POSITION_DESC="Nastavte polohu formulára vzhľadom na textový kontajner" COM_CONVERTFORMS_FORM_SIZE="Veľkosť kontajnera formulára" COM_CONVERTFORMS_COLUMNS_DESC="Zadajte, koľko stĺpcov sa použije. 6 stĺpcov zaberá 50 % šírky." COM_CONVERTFORMS_MESSAGE="Textová správa" COM_CONVERTFORMS_MESSAGE_DESC="Zadajte textovú správu formulára" COM_CONVERTFORMS_IMAGE_POSITION="Pozícia obrazu" COM_CONVERTFORMS_IMAGE_POSITION_DESC="Nastavte polohu obrázka vzhľadom na text" COM_CONVERTFORMS_FOOTER="Päta formulára" COM_CONVERTFORMS_BUTTON_TEXT="Text tlačidla" COM_CONVERTFORMS_BUTTON_TEXT_DESC="Zadajte textový štítok tlačidla" COM_CONVERTFORMS_BTN_FONT_SIZE="Veľkosť textu tlačidla" COM_CONVERTFORMS_IMAGE_SIZE="Veľkosť kontajnera s obrázkami" COM_CONVERTFORMS_BODY_FONT="Rodina písiem" COM_CONVERTFORMS_BODY_FONT_DESC="Vyberte rodinu písiem, ktorá sa použije pre formulár. Majte na pamäti, že načítanie neštandardných písiem, ako napríklad Google Fonts, môže ovplyvniť rýchlosť vašich webových stránok. Ak chcete použiť predvolené písmo svojej webovej lokality, vyberte možnosť Predvolené." COM_CONVERTFORMS_EMAIL="Email" COM_CONVERTFORMS_DATE="Dátum" COM_CONVERTFORMS_CREATED="Dátum vytvorenia" COM_CONVERTFORMS_SUBMISSION="Podanie" COM_CONVERTFORMS_PREVIEW_SUCCESS="Ukážka správy o úspechu" COM_CONVERTFORMS_PREVIEW_SIZE_DESKTOP="Táto verzia sa zobrazí na obrazovkách s veľkosťou 990 pixelov a viac" COM_CONVERTFORMS_PREVIEW_SIZE_TABLET="Táto verzia sa zobrazí na obrazovkách s veľkosťou 768 – 990 px" COM_CONVERTFORMS_PREVIEW_SIZE_MOBILE="Táto verzia sa zobrazí na obrazovkách s veľkosťou 768 pixelov a menej" COM_CONVERTFORMS_DEVICE_DESKTOP="Plocha počítača" COM_CONVERTFORMS_DEVICE_TABLET="Tablet" COM_CONVERTFORMS_DEVICE_MOBILE="Mobil" COM_CONVERTFORMS_RESET_FORM="Obnoviť formulár" COM_CONVERTFORMS_RESET_FORM_DESC="Po úspešnom odoslaní formulár resetujte" COM_CONVERTFORMS_HIDE_FORM="Skryť formulár" COM_CONVERTFORMS_HIDE_FORM_DESC="Po úspešnom odoslaní formulár skryť" COM_CONVERTFORMS_TEMPLATES="Šablóny" COM_CONVERTFORMS_TEMPLATES_SELECT="Začnite výberom šablóny" COM_CONVERTFORMS_TEMPLATES_BLANK="Začať úplne od začiatku" COM_CONVERTFORMS_TEMPLATES_BLANK_DESC="Začnite od začiatku nový formulár" COM_CONVERTFORMS_TEMPLATE_GROUP_INLINE="V rade" COM_CONVERTFORMS_TEMPLATE_GROUP_SIDEBAR="Bočný panel" COM_CONVERTFORMS_TEMPLATE_GROUP_BAR="Bary" COM_CONVERTFORMS_LABELS_COLOR="Farba textu štítku" COM_CONVERTFORMS_LABELS_FONT_SIZE="Veľkosť písma menovky" COM_CONVERTFORMS_IMAGE_ABOVE="Nad textom" COM_CONVERTFORMS_IMAGE_BELOW="Pod textom" COM_CONVERTFORMS_IMAGE_RIGHT="Právo na text" COM_CONVERTFORMS_IMAGE_LEFT="Vľavo od textu" COM_CONVERTFORMS_FLAT="Plochý" COM_CONVERTFORMS_OUTLINE="Obrys" COM_CONVERTFORMS_GRADIENT="Uhol" COM_CONVERTFORMS_EMAILS_DESC="Odosielať e-mailové upozornenia, keď používatelia odoslali formulár." COM_CONVERTFORMS_EMAILS="E-mailové upozornenia" COM_CONVERTFORMS_EMAILS_REPLY_TO="Odpovedať na e-mail" COM_CONVERTFORMS_EMAILS_REPLY_TO_NAME="Odpovedať na meno" COM_CONVERTFORMS_EMAILS_FROM_EMAIL="Z e-mailu" COM_CONVERTFORMS_EMAILS_FROM="Z mena" COM_CONVERTFORMS_EMAILS_RECIPIENT="Odoslať na e-mailovú adresu" COM_CONVERTFORMS_EMAILS_RECIPIENT_DESC="Zadajte e-mailové adresy, na ktoré chcete dostávať oznámenia o odoslaní. V prípade viacerých upozornení oddeľte e-mailové adresy čiarkou." COM_CONVERTFORMS_EMAILS_SUBJECT="Predmet emailu" COM_CONVERTFORMS_EMAILS_BODY="Správa" COM_CONVERTFORMS_EMAILS_FREE_NOTE="Chcete viac upozornení? Ak ju chcete odomknúť, inovujte na verziu PRO." COM_CONVERTFORMS_EMAILS_ATTACHMENT="Prílohy" COM_CONVERTFORMS_EMAILS_ATTACHMENT_DESC="Umiestnenie súboru na pripojenie vzhľadom na koreňový adresár vášho webového priestoru. Na definovanie viacerých súborov použite čiarku." COM_CONVERTFORMS_ADDONS_MISSING_ADDON="Chýba vám doplnok?" COM_CONVERTFORMS_ADDONS_MISSING_ADDON_DESC="V prípade, že vám chýba integračný doplnok pre vašu obľúbenú aplikáciu, dajte nám vedieť a my ho radi zahrnieme do zbierky doplnkov Convert Forms." COM_CONVERTFORMS_API_ENABLE="Povoliť JSON API" COM_CONVERTFORMS_API_DESC="JSON API vám umožňuje získať obsah Convert Forms pomocou HTTP požiadaviek." COM_CONVERTFORMS_API_KEY="Tajný kľúč" COM_CONVERTFORMS_API_KEY_DESC="Tento tajný kľúč sa používa na overenie kritických úloh, ako sú úlohy CRON a JSON API. Ak ho necháte prázdne, všetky úlohy vyžadujúce overenie používateľa budú zakázané." COM_CONVERTFORMS_IMAGE_ALT="Obrázok Alt" COM_CONVERTFORMS_IMAGE_ALT_DESC="Alternatívny text obrázka" COM_CONVERTFORMS_CUSTOM_CODE="Vlastný kód" COM_CONVERTFORMS_CUSTOM_CODE_DESC="Umiestnite vlastný kód na koniec formulára. Akceptuje HTML, CSS a Javascript. <br> <br>V prípade JavaScriptu sa uistite, že ste kód obalili značkou <script>. <br> <br>Kód pridaný v tejto oblasti sa v backende nespustí." COM_CONVERTFORMS_ISSUES="Problémy" COM_CONVERTFORMS_ISSUES_DETECTED="%s zistené problémy s odoslaním" COM_CONVERTFORMS_CREATED="Dátum vytvorenia" COM_CONVERTFORMS_MODIFIED="Zmenený dátum" COM_CONVERTFORMS_IP="IP adresa odosielateľa" COM_CONVERTFORMS_USER_ID="ID odosielateľa" COM_CONVERTFORMS_USER_USERNAME="Používateľské meno odosielateľa" COM_CONVERTFORMS_VISITOR_ID="ID návštevníka" COM_CONVERTFORMS_FORM_NAME="Názov formulára" COM_CONVERTFORMS_CAMPAIGN_NAME="Názov kampane" COM_CONVERTFORMS_ID="ID" COM_CONVERTFORMS_CHOOSE_COLUMNS="Stĺpce" COM_CONVERTFORMS_CHOOSE_COLUMNS_OPTIONS="Ak chcete povoliť špecifické polia formulára, najprv vyberte formulár na paneli filtrov." COM_CONVERTFORMS_UNTITLED_BOX="Formulár bez názvu" COM_CONVERTFORMS_SELECT_LAYOUT="Vyberte rozloženie" COM_CONVERTFORMS_SHOW_LAYOUTS="Zobraziť rozloženia" COM_CONVERTFORMS_HIDE_LAYOUTS="Skryť rozloženia" COM_CONVERTFORMS_FIELDS_COPY="Duplicitné pole" COM_CONVERTFORMS_FIELDS_DELETE="Odstrániť pole" COM_CONVERTFORMS_FIELDGROUP_COMMON="Spoločné polia" COM_CONVERTFORMS_FIELDGROUP_FANCY="luxusný priatelia" COM_CONVERTFORMS_FIELDGROUP_ADVANCED="pokročilí priatelia" COM_CONVERTFORMS_FIELD_HTML="HTML" COM_CONVERTFORMS_FIELD_HTML_DESC="Pridajte vlastný voľný text alebo HTML kód. Bez limitov!" COM_CONVERTFORMS_FIELD_TEXT="Textové pole" COM_CONVERTFORMS_FIELD_TEXT_DESC="Jednoriadkové textové pole" COM_CONVERTFORMS_FIELD_TEXTAREA="Textová oblasť" COM_CONVERTFORMS_FIELD_TEXTAREA_DESC="Ako pole textového poľa, ale môže obsahovať viacriadkový vstup používateľa" COM_CONVERTFORMS_FIELD_NUMBER="číslo" COM_CONVERTFORMS_FIELD_NUMBER_DESC="Textové pole, ktoré akceptuje iba čísla" COM_CONVERTFORMS_FIELD_NUMBER_STEP="Krok" COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC="Hodnota, o ktorú sa zmení po stlačení šípky." COM_CONVERTFORMS_FIELD_NUMBER_MIN="Minimálna hodnota" COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC="Minimálna hodnota, ktorú pole povolí" COM_CONVERTFORMS_FIELD_NUMBER_MAX="Maximálna hodnota" COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC="Maximálna hodnota, ktorú pole povolí" COM_CONVERTFORMS_FIELD_RECAPTCHA="reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_DESC="Zastavte odosielanie spamových formulárov pomocou služby Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE="Na konfiguračnej stránke nastavte svoju lokalitu a tajný kľúč." COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE="Teraz nakonfigurujte reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC="Farebný motív miniaplikácie" COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC="Veľkosť miniaplikácie" COM_CONVERTFORMS_FIELD_DROPDOWN="Rozbaľovacia ponuka" COM_CONVERTFORMS_FIELD_DROPDOWN_DESC="Zoznam, ktorý umožňuje jeden výber z rozbaľovacej ponuky" COM_CONVERTFORMS_FIELD_RADIO="Prepínače" COM_CONVERTFORMS_FIELD_RADIO_DESC="Zoznam, ktorý umožňuje jeden výber z prepínačov" COM_CONVERTFORMS_FIELD_URL="Webová stránka / URL" COM_CONVERTFORMS_FIELD_URL_DESC="Prijmite správne vytvorenú adresu URL, ktorá začína http:// alebo https://" COM_CONVERTFORMS_FIELD_URL_INVALID="neplatná URL adresa" COM_CONVERTFORMS_FIELD_COUNTRY="Krajina" COM_CONVERTFORMS_FIELD_COUNTRY_DESC="Zoznam všetkých známych krajín" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT="Zistiť krajinu návštevníka" COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC="Ak je povolené, formulár sa pokúsi zistiť a predvyplniť krajinu návštevníka. Vyžaduje inštaláciu zásuvného modulu TGeoIP." COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE="Vylúčiť krajiny" ; COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC="Enter comma separated country codes or country names to exclude from the dropdown. Example: GR, SP, IT or Greece, Spain, Italy" COM_CONVERTFORMS_FIELD_CURRENCY="mena" COM_CONVERTFORMS_FIELD_CURRENCY_DESC="Zoznam všetkých známych mien" COM_CONVERTFORMS_FIELD_SUBMIT="Tlačidlo Odoslať" COM_CONVERTFORMS_FIELD_SUBMIT_DESC="Tlačidlo, ktoré odošle formulár" COM_CONVERTFORMS_FIELD_HIDDEN="Skryté pole" COM_CONVERTFORMS_FIELD_HIDDEN_DESC="Pole, ktoré používateľ nevidí na klientskom rozhraní" COM_CONVERTFORMS_FIELD_EMAIL="Emailová adresa" COM_CONVERTFORMS_FIELD_EMAIL_DESC="Textové pole, ktoré akceptuje iba platnú e-mailovú adresu" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE="Podmienky služby" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_DESC="Pred odoslaním formulára požiadajte používateľa, aby súhlasil s vašimi zmluvnými podmienkami" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL="Text zmluvných podmienok" COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC="Toto je text, ktorý nasleduje hneď za začiarkavacím políčkom" COM_CONVERTFORMS_FIELD_CHECKBOX="Začiarkavacie políčka" COM_CONVERTFORMS_FIELD_CHECKBOX_DESC="Zoznam, ktorý umožňuje viacnásobný výber zo začiarkavacích políčok" COM_CONVERTFORMS_FIELD_REQUIRED="Vyžaduje sa" COM_CONVERTFORMS_FIELD_EMAIL_INVALID="neplatná emailová adresa" COM_CONVERTFORMS_FIELD_SIZE="Veľkosť poľa" COM_CONVERTFORMS_FIELD_SIZE_DESC="Vyberte predvolenú veľkosť poľa formulára" COM_CONVERTFORMS_FIELD_TEL="Telefónne číslo" COM_CONVERTFORMS_FIELD_TEL_DESC="Nechajte používateľa zadať telefónne číslo." COM_CONVERTFORMS_FIELD_DATETIME="Dátum / Čas" COM_CONVERTFORMS_FIELD_DATETIME_DESC="Výber dátumu / času, ktorý umožňuje výber jedného dátumu, viacerých dátumov alebo dokonca rozsahu dátumov" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT="Formát dátumu" COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC="Formát dátumu odoslania. Príklady:<br> <br>d/m/Y H:i <br>Y-m-d<br>m/d/RRRR" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER="Zobraziť časovač" COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC="Povolí výber času. Ak je povolené, uistite sa, že ste do poľa Formát dátumu zahrnuli časové znaky (H:i)." COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE="Min. dátum" COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC="Minimálny/najskorší dátum povolený na výber. Podporuje relatívne formáty dátumu, ako napríklad: dnes, zajtra, +5 dní, +2 týždeň" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE="Maximálny dátum" COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC="Maximálny/najneskôr povolený dátum na výber. Podporuje relatívne formáty dátumu, ako napríklad: dnes, zajtra, +5 dní, +2 týždeň." COM_CONVERTFORMS_FIELD_DATETIME_MODE="Režim výberu dátumu" COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC="Umožnite používateľovi vybrať jeden dátum, viacero dátumov alebo rozsah dátumov." COM_CONVERTFORMS_FIELD_DATETIME_TIME24="Čas 24 hodín" COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC="Zobrazuje výber času v 24-hodinovom režime bez výberu AM/PM." COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP="Minútový krok" COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC="Upraví krok pre minútový vstup vo výbere času" COM_CONVERTFORMS_FIELD_DATETIME_INLINE="Zobraziť Inline" COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC="Namiesto toho zobrazí vložený kalendár ako kontextové okno." COM_CONVERTFORMS_FIELD_DATETIME_THEME="Téma" COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC="Vyberte tému kalendára" COM_CONVERTFORMS_FIELD_DATETIME_INVALID="Neplatný formát dátumu -%s" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE="Zakázať výber dátumu mobilnej natívnej" COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC="Ak je začiarknuté, mobilným používateľom sa namiesto natívneho výberu dátumu zariadenia zobrazí nástroj na výber dátumu prevodu formulárov." COM_CONVERTFORMS_CSS_CLASSES="CSS trieda" COM_CONVERTFORMS_CSS_CLASSES_DESC="Pridajte triedy CSS do kontajnera vstupu. Toto sa dá použiť hlavne na účely rozloženia." COM_CONVERTFORMS_INPUT_CSS_CLASSES="Vstupná trieda CSS" COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC="Pridajte triedy CSS do vstupného prvku. Túto možnosť použite na úpravu samotného vstupu." COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE="Zakázať automatické dopĺňanie prehliadača" COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC="V predvolenom nastavení si prehliadače pamätajú informácie, ktoré používateľ odošle prostredníctvom vstupných polí. Ak chcete zakázať automatické dopĺňanie vo formulároch, povoľte túto možnosť." COM_CONVERTFORMS_FIELD_DESCRIPTION="Pomocný text" COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC="Text pomocníka, ktorý sa má zobraziť vedľa tohto poľa." COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK="Kontrola DNS" COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC="Overte zadanú e-mailovú adresu pomocou kontroly DNS." COM_CONVERTFORMS_FIELD_CONFIRM="Potvrďte" COM_CONVERTFORMS_FIELD_CONFIRM_DESC="Pole na zabezpečenie zhody dvoch polí" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD="Potvrďte tlačidlo poľa" COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC="Zadajte kľúč poľa, ktorý sa použije na zabezpečenie zhody jeho hodnoty" COM_CONVERTFORMS_FIELD_CONFIRM_INVALID="Pole nie je správne nakonfigurované" COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH="Hodnoty polí sa nezhodujú" COM_CONVERTFORMS_HIDE_TEXT="Skryť text" COM_CONVERTFORMS_HIDE_TEXT_DESC="Skryť text po úspešnom odoslaní" COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD="Vo formulári chýba pole pre e-mail" COM_CONVERTFORMS_INVALID_LEAD="Nie je možné overiť objekt odoslania" COM_CONVERTFORMS_EXCEL_SECURITY="Zabezpečenie Excelu" COM_CONVERTFORMS_EXCEL_SECURITY_DESC="Ak je táto možnosť povolená, hodnoty v exportovanom súbore CSV začínajúce znakmi =, +, - alebo @ budú predponované tabulátorom, aby sa predišlo vloženiu CSV pri otváraní exportovaného súboru pomocou Excelu. <br> <br>Túto možnosť zakážte iba vtedy, ak ste si na 100 % istí, že údaje sú dôveryhodné, alebo ak máte problémy s importovaním súboru CSV do aplikácie 3tej strany." COM_CONVERTFORMS_CHOICE_LAYOUT="Rozloženie voľby" COM_CONVERTFORMS_CHOICE_LAYOUT_DESC="Vyberte rozloženie pre zobrazenie možností poľa" COM_CONVERTFORMS_CHOICE_1_COLUMN="Jeden stĺpec" COM_CONVERTFORMS_CHOICE_2_COLUMN="Dva stĺpce" COM_CONVERTFORMS_CHOICE_3_COLUMN="Tri stĺpce" COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE="Bok po boku" COM_CONVERTFORMS_REQUIRED_INDICATION="Povinné pole" COM_CONVERTFORMS_REQUIRED_INDICATION_DESC="Označte povinné polia hviezdičkou vedľa každého označenia poľa. Vyžaduje, aby označenie poľa nebolo skryté." COM_CONVERTFORMS_INPUT_MASK="Vstupná maska" COM_CONVERTFORMS_INPUT_MASK_DESC="Pomôžte používateľovi so vstupom zabezpečením preddefinovaného formátu. <br><br><b>Syntax:</b><br>9: Číselné (0-9)<br>a: Abecedné (a-z alebo A-Z)<br>A: Veľké abecedné písmená (A-Z)<br>*: Alfanumerické (0-9, a-z alebo A-Z)<br>&: Veľké alfanumerické písmená (0-9 alebo A-Z) <br><br><b>Príklady</b> :<br>Telefón: +1 (999)-9999<br>Dátum: 99/99/9999 <br>PSČ: 99999?-9999" COM_CONVERTFORMS_LEAD_USER_SUBMITTED_DATA="Údaje odoslané používateľom" COM_CONVERTFORMS_NO_SUBMITTED_DATA="Nenašli sa žiadne odoslané údaje" COM_CONVERTFORMS_LEAD_INFO="Informácie o podaní" COM_CONVERTFORMS_NOTES="Poznámky" COM_CONVERTFORMS_DATE_RANGE="Rozsah dátumov" COM_CONVERTFORMS_START_DATE="Rozsah dátumov" COM_CONVERTFORMS_END_DATE="Dátum ukončenia" COM_CONVERTFORMS_PERIOD="Obdobie" COM_CONVERTFORMS_PERIOD_SELECT="- Vyberte obdobie -" COM_CONVERTFORMS_HONEYPOT="Povoliť Anti-Spam Honeypot" COM_CONVERTFORMS_HONEYPOT_DESC="Povoliť pridanie poľa Honeypot do formulára, ktoré je viditeľné iba pre roboty. Týmto spôsobom, keď je pole honeypot vyplnené, formulár môže automaticky vedieť, že používateľ bol spambot. <br><br>Na mnohých stránkach tento honeypot sám o sebe stačí na to, aby sa vyhli spamovým záznamom. Ak však stále dostávate nevyžiadanú poštu, alebo ak by ste proti nej chceli prijať dodatočné opatrenia, reCAPTCHA je skvelá doplnková možnosť." COM_CONVERTFORMS_FIELD_FILEUPLOAD="Nahranie súboru" COM_CONVERTFORMS_FIELD_FILEUPLOAD_DESC="Poskytnite používateľovi možnosť nahrávať súbory" COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE="Dočasný priečinok vášho webu je nastavený na, <b>%s</b>ale nie je možné do neho zapisovať. Zadajte dočasný priečinok, do ktorého je možné zapisovať." COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE="Cieľ odovzdania" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC="adajte cieľový priečinok pre nahrané súbory. <br><br><b>Auto</b>: Súbory sa nahrajú do priečinka /media/com_convertforms/uploads. Okrem toho sa na začiatok každého názvu súboru pridá náhodná predpona, aby sa zvýšila bezpečnosť. <br><br><b>Vlastné</b>: Zadajte vlastný cieľový priečinok a konvenciu pomenovania." COM_CONVERTFORMS_FILEUPLOAD_FOLDER="Vlastný cieľ nahrávania" COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC="Zadajte cestu relatívne ku koreňovému adresáru vášho webového priestoru, kde budú uložené nahrané súbory. Na premenovanie nahratých súborov použite nasledujúce inteligentné značky.<br><br><b>{file.basename}</b>: cat.jpg<br><b>{file.extension}</b>: jpg<br><b>{file.filename}</b>: cat<b><br>{file.index}</b>: index number<br><br>Môže tiež akceptovať globálne inteligentné značky ako {year }, {month}, {user.id} alebo {randomid} na vytvorenie ešte dynamickejšieho cieľa nahrávania." COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES="Limit súborov" COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC="Koľko súborov je možné nahrať? Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE="Limit veľkosti súboru" COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC="Nakonfigurujte maximálnu povolenú veľkosť pre každý odovzdaný súbor v megabajtoch. Zadajte 0 pre žiadny limit. <br><br>Maximálna veľkosť nahrávania vášho servera je:<b>%s</b> ." COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES="Povolené typy súborov" COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC="Zadajte čiarkami oddelený zoznam povolených typov súborov, ako napríklad: </b>.jpg, .gif, .png, .pdf.<br><br> Môžete zadať typy médií ako: application/pdf, images/*, video/* alebo môžete kombinovať oboje: application/*, .png , .jpg<br><br>Poznámka: Toto nie je odolné voči hlúpostiam a dá sa oklamať, pamätajte prosím, že povolenie používateľom nahrávať súbory vždy predstavuje nebezpečenstvo.<br><br> Na uhádnutie je potrebné nainštalovať rozšírenie PHP <b>fileinfo</b>." COM_CONVERTFORMS_FIELD_FILTER="Filter" COM_CONVERTFORMS_FIELD_FILTER_DESC="Filtrujte vstup používateľa na základe nasledujúcich filtrov.<br><b>Text</b>: Konvertuje vstup na reťazec obyčajného textu; odstráni všetky značky/atribúty.<br><b>Bezpečný kód HTML</b>: Akceptujte iba bezpečné prvky HTML, ako sú.<br><b>Alpha Numeric</b>: Povoliť iba znaky a-z a 0-9<br><b>Slovo</b>: Povoliť iba znaky a-z a podčiarkovníky<br><b>Celé číslo</b>: Použite iba prvé číslo value<br><b>Float</b>: Povoliť iba znaky a-z a podčiarkovníky" COM_CONVERTFORMS_UPLOAD_ERROR="Neplatný kľúč formulára alebo poľa" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD="Neplatné pole nahrávania" COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE="Neplatný alebo nepodporovaný súbor" COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT="Môžete nahrať maximálne %d súborov" COM_CONVERTFORMS_UPLOAD_DRAG_AND_DROP_FILES="Presuňte súbory sem alebo" COM_CONVERTFORMS_UPLOAD_BROWSE="Prehľadávať" COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING="Chýba dočasný %s súbor. Nahrajte znova." COM_CONVERTFORMS_UPLOAD_FOLDER_INVALID="Priečinok na nahrávanie %s neexistuje alebo nie je zapisovateľný" COM_CONVERTFORMS_UPLOAD_FILETOOBIG="Súbor je príliš veľký ({{filesize}} MB). Maximálna veľkosť súboru: {{maxFilesize}} MB." COM_CONVERTFORMS_UPLOAD_INVALID_FILE="Súbory tohto typu nemôžete nahrať." COM_CONVERTFORMS_UPLOAD_FALLBACK_MESSAGE="Váš prehliadač nepodporuje nahrávanie súborov drag'n'drop." COM_CONVERTFORMS_UPLOAD_RESPONSE_ERROR = "Server odpovedal kódom {{statusCode}}." COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD="Zrušiť nahrávanie" COM_CONVERTFORMS_UPLOAD_CANCEL_UPLOAD_CONFIRMATION="Naozaj chcete zrušiť toto nahrávanie?" COM_CONVERTFORMS_UPLOAD_REMOVE_FILE="Odstrániť súbor" COM_CONVERTFORMS_UPLOAD_MAX_FILES_EXCEEDED="Nemôžete nahrať žiadne ďalšie súbory." COM_CONVERTFORMS_UPLOAD_AUTO_DELETE="Automatické mazanie súborov" COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC="Ak nahrávate veľa, priestor na serveri, ktorý nahrané súbory využívajú, sa môže rýchlo zvýšiť, čo si vyžaduje pravidelné upratovanie, aby sa uvoľnilo miesto. <br><br>Táto možnosť vám pomáha automaticky odstraňovať súbory uložené v priečinku nahrávania po uplynutí nastaveného obdobia. <br><br>Zadajte napríklad 3, ak chcete automaticky vymazať súbory staršie ako 3 dni, alebo 0, ak si súbory chcete ponechať navždy. <br><br> Poznámka: Zásuvný modul Convert Forms Uploaded Files Cleaner musí byť povolený a na vašom serveri musí byť nastavená príslušná adresa URL úlohy Cron ." COM_CONVERTFORMS_READONLY="Iba na čítanie" COM_CONVERTFORMS_READONLY_DESC="Zabráňte vstupu do tohto poľa" COM_CONVERTFORMS_PHPSCRIPT="PHP skripty" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY="Zobrazenie formulára" COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC="PHP skript pridaný v tejto oblasti sa spustí tesne pred zobrazením formulára.<br><br> Hlavným zameraním v tejto oblasti je premenná <b>$formLayout </b>(String), ktorá obsahuje HTML kód formulára. <br><br>Na prístup k nastaveniam formulára použite <b>$form </b>(Array ) premenná. <br><br>Nemusíte zahrnúť značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS="Proces formulára" COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC="PHP kód pridaný v tejto oblasti sa spustí tesne pred uložením údajov formulára do databázy bez ohľadu na to, či je odoslanie platné alebo nie. <br><br>Táto oblasť je užitočná, keď potrebujete spracovať výpočty, vykonať pokročilé overenie alebo upraviť hodnotu poľa. Akékoľvek úpravy premennej<b> $post </b>(Array), ktoré tu vykonáte, sa prejavia v položke odoslania. <br><br>Na prístup k nastaveniam formulára použite premennú <b>$form </b>(Array). <br><br>Nemusíte zahrnúť značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION="Po odoslaní formulára" COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC="PHP kód pridaný v tejto oblasti sa spustí po úspešnom odoslaní formulára a uložení údajov do databázy. <br><br>Je to užitočné, keď sa pokúšate spustiť niektoré ďalšie úlohy, ako napríklad tiché odosielanie údajov na inú adresu URL. Ku konečnému odoslaniu môžete pristupovať pomocou premennej <b>$submission </b>(Object). <br><br>Na prístup k nastaveniam formulára použite premennú <b>$form </b>(Array). <br><br>Nemusíte zahrnúť značky <?php a ?>." COM_CONVERTFORMS_PHPSCRIPT_NOTE="PHP skripty sa nespúšťajú na backende, aby sa predišlo problémom s náhľadom živých formulárov. Vždy testujte na front-ende." COM_CONVERTFORMS_FIELD_PASSWORD="heslo" COM_CONVERTFORMS_FIELD_PASSWORD_DESC="Poskytnite používateľovi spôsob, ako bezpečne zadať heslo" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE="Potvrďte typ poľa" COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC="Vyberte typ vstupu v poli potvrdenia medzi Text a Heslo." COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE="Pripravte si formulár" COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC="PHP skript pridaný v tejto oblasti sa spustí tesne pred prípravou údajov formulára a ich odoslaním do funkcie zobrazenia formulára. <br><br>Hlavným zameraním v tejto oblasti je premenná <b>$form </b>(Array), ktorá obsahuje nastavenia formulára. <br><br>Nemusíte zahrnúť značky <?php a ?>." COM_CONVERTFORMS_ERROR_USER_ALREADY_EXIST="%s je už členom." COM_CONVERTFORMS_ERROR_INVALID_EMAIL_ADDRESS="%s vyzerá falošne alebo neplatne, zadajte skutočnú e-mailovú adresu." COM_CONVERTFORMS_RECAPTCHA_NOT_LOADED="Chyba: Skript Google reCAPTCHA sa nenačítal. Uistite sa, že to váš prehliadač neblokuje, alebo kontaktujte správcu stránky." COM_CONVERTFORMS_ACCESS_FORMS="Prístupové formuláre" COM_CONVERTFORMS_ACCESS_FORMS_DESC="Umožňuje používateľom v skupine spravovať formuláre." ; COM_CONVERTFORMS_ACCESS_ADDONS="Access Addons" ; COM_CONVERTFORMS_ACCESS_ADDONS_DESC="Allows users in the group to manage Addons." COM_CONVERTFORMS_ACCESS_SUBMISSIONS="Prístup k podaniam" COM_CONVERTFORMS_ACCESS_SUBMISSIONS_DESC="Umožňuje používateľom v skupine spravovať príspevky." COM_CONVERTFORMS_ACCESS_CAMPAIGNS="Prístup ku kampaniam" COM_CONVERTFORMS_ACCESS_CAMPAIGNS_DESC="Umožňuje používateľom v skupine spravovať kampane. Povoľte to, ak máte problémy s odosielaním spamu." COM_CONVERTFORMS_CSRF_CHECK="Použite Joomla! CSRF token" COM_CONVERTFORMS_CSRF_CHECK_DESC="Pridajte do svojich formulárov ďalšiu vrstvu ochrany overením všetkých požiadaviek AJAX pomocou tokenov CSRF. <br><br>Ak to povolíte a používate mechanizmus vyrovnávacej pamäte, ktorý ukladá do vyrovnávacej pamäte celý výstup stránky, ako je napríklad Joomla! Doplnok Page Cache alebo server proxy na ukladanie do vyrovnávacej pamäte, ako je CloudFlare alebo Sucuri, môžete mať problémy s odoslaním formulára." COM_CONVERTFORMS_THANK_YOU_MESSAGE="Formulár bol úspešne odoslaný" COM_CONVERTFORMS_SECRET_SET="Nakonfigurujte tajný kľúč, aby ste mohli používať koncový bod optin." COM_CONVERTFORMS_SECRET_NO="V adrese URL nie je uvedený žiadny tajný kľúč" COM_CONVERTFORMS_SECRET_WRONG="V adrese URL je uvedený nesprávny tajný kľúč" COM_CONVERTFORMS_SECURITY="Bezpečnosť" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE="reCAPTCHA Neviditeľný" COM_CONVERTFORMS_FIELD_RECAPTCHAV2INVISIBLE_DESC="Zastavte odosielanie spamových formulárov pomocou funkcie Invisible Google reCAPTCHA" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE="Odznak" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC="Pozícia odznaku reCAPTCHA. 'inline' vám umožňuje umiestniť ho pomocou CSS." COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT="Vpravo dole" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT="Dole vľavo" COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE="V rade" COM_CONVERTFORMS_SUBMISSIONS_VIEW_DEFAULT_TITLE="Podania" COM_CONVERTFORMS_SUBMISSIONS_LIST="Zoznam podaní" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY="Zobraziť iba potvrdené" COM_CONVERTFORMS_FRONT_SUBMISSIONS_CONFIRMED_ONLY_DESC="Povoľte túto možnosť, ak chcete zobraziť iba potvrdené príspevky." COM_CONVERTFORMS_HIDE_EMPTY_VALUES="Skryť prázdne hodnoty" COM_CONVERTFORMS_HIDE_EMPTY_VALUES_DESC="Povolením tejto možnosti skryjete polia s prázdnymi hodnotami." COM_CONVERTFORMS_SELECT_FORM="Vyberte položku Formulár" COM_CONVERTFORMS_SELECT_FORM_DESC="Vyberte formulár, z ktorého chcete zobraziť príspevky" COM_CONVERTFORMS_SELECT_FORM_DESC2="Vyberte formulár, ktorý chcete zobraziť" COM_CONVERTFORMS_LIST_LIMIT="Limit strán" COM_CONVERTFORMS_LIST_LIMIT_DESC="Počet príspevkov na zobrazenie na stránke. Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY="Zobraziť len vlastné" COM_CONVERTFORMS_FRONT_SUBMISSIONS_VIEW_OWN_ONLY_DESC="Aj keď môžete zobraziť zoznam s príspevkami od rôznych používateľov, návštevník bude mať povolený prístup na stránku s podrobnosťami o svojich vlastných príspevkoch, iba ak je táto možnosť povolená. <br><br>Návštevník sa musí prihlásiť do svojho účtu." COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION="Zobraziť stránkovanie" COM_CONVERTFORMS_FRONT_SUBMISSIONS_PAGINATION_DESC="Ak celkový počet odoslaní prekročí limit stránky, pod zoznamom odoslaní sa zobrazia odkazy na stránkovanie." COM_CONVERTFORMS_ORDER="Triediť príspevky" COM_CONVERTFORMS_ORDER_DESC="Poradie, v ktorom sa príspevky zobrazia." COM_CONVERTFORMS_ORDER_RECENT="Najnovšie prvé" COM_CONVERTFORMS_ORDER_OLDEST="Najstaršia prvá" COM_CONVERTFORMS_ORDER_RANDOM="Náhodné poradie" COM_CONVERTFORMS_FILTER_USER="Zobraziť príspevky od" COM_CONVERTFORMS_FILTER_USER_DESC="Vyberte, ak chcete filtrovať príspevky podľa používateľa, ktorý odoslal príspevok. <br><br><b>Prihlásený používateľ</b><br>Zobrazí príspevky odoslané iba aktuálne prihláseným používateľom. Každý používateľ uvidí svoje príspevky.<br><br><b>Všetci používatelia</b><br>Zobrazia všetky príspevky.<br><br><b>Konkrétni používatelia</b><br>Uveďte odosielateľov na filtrovanie príspevkov." COM_CONVERTFORMS_FILTER_USER_LOGGED_IN="Prihlásený používateľ" COM_CONVERTFORMS_FILTER_USER_ALL="Všetci používatelia" COM_CONVERTFORMS_FILTER_USER_SELECT="Konkrétni používatelia" COM_CONVERTFORMS_SET_USERS="ID používateľov" COM_CONVERTFORMS_SET_USERS_DESC="Zadajte Joomla User ID na filtrovanie príspevkov. Na oddelenie viacerých ID použite čiarku." COM_CONVERTFORMS_LOAD_CSS="Načítať šablónu so štýlmi" COM_CONVERTFORMS_LOAD_CSS_DESC="Zakážte túto možnosť, ak nechcete načítať súbor CSS Convert Forms." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT="Rozloženie" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_DESC="Vyberte rozloženie, ktoré sa použije na zobrazenie príspevku v klientskom rozhraní. Vo svojej šablóne si môžete vytvoriť aj vlastné rozloženia." COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE="Typ rozloženia" COM_CONVERTFORMS_SUBMISSIONS_LAYOUT_TYPE_DESC="Typ rozloženia" COM_CONVERTFORMS_SUBMISSIONS_TEMPLATE="Šablóna" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE="Vyberte položku Šablóna" COM_CONVERTFORMS_SUBMISSIONS_SELECT_TEMPLATE_DESC="Vyberte šablónu na zobrazenie príspevkov. Táto šablóna sa použije na zobrazenie zoznamu aj podrobného zobrazenia. <br><br>Vo svojej šablóne si môžete vytvoriť vlastné nahradenia šablóny." COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT="Rozloženie kontajnera" COM_CONVERTFORMS_SUBMISSIONS_CONTAINER_LAYOUT_DESC="Hlavné rozloženie HTML zoznamu príspevkov. Neodstraňujte z toho značku {submissions}, pretože je nahradená výstupom údajov." COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT="Rozloženie riadkov" COM_CONVERTFORMS_SUBMISSIONS_ROW_LAYOUT_DESC="Rozloženie HTML každého príspevku, ako je zobrazené v rozložení kontajnera." COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT="Podrobnosti Rozloženie" COM_CONVERTFORMS_SUBMISSIONS_DETAILS_LAYOUT_DESC="Rozloženie HTML stránky s podrobnosťami o odoslaní." COM_CONVERTFORMS_FIELD_EMPTYSPACE="Prázdne miesto" COM_CONVERTFORMS_FIELD_EMPTYSPACE_DESC="Pridajte do formulára prázdne miesto" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP="Prázdne miesto" COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC="Nastavte vertikálnu medzeru medzi poľami v pixeloch." COM_CONVERTFORMS_FIELD_HEADING="Nadpis" COM_CONVERTFORMS_FIELD_HEADING_DESC="Pridajte názov nadpisu na zoskupenie polí" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE="Hlavný prvok HTML" COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC="Vyberte typ nadpisu." COM_CONVERTFORMS_FIELD_HEADING_USELINK="Použite odkaz" COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC="Či má hlavička smerovať na adresu URL." COM_CONVERTFORMS_FIELD_HEADING_LINK="Odkaz" COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC="Zadajte odkaz na presmerovanie používateľa." COM_CONVERTFORMS_FIELD_HEADING_NEWTAB="Otvoriť na novej karte" COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC="Povolením otvoríte odkaz na novej karte." COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC="Nastavte veľkosť písma pre nadpis." COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC="Vyberte rodinu písiem pre nadpis." COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT="Výška riadku" COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC="Nastavte výšku riadku pre nadpis." COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING="Medzery medzi písmenami" COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC="Nastavte medzery medzi písmenami pre nadpis." COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT="Zarovnanie obsahu" COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC="Vyberte zarovnanie nadpisu." COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES="Zobraziť hodnoty" COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC="Uistite sa, že ste nastavili jedinečnú hodnotu pre každú voľbu, inak nebudete mať možnosť zistiť, ktorú možnosť si používateľ vybral" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES="Použite Výpočtové hodnoty" COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC="Výpočtové hodnoty sa vo všeobecnosti používajú na výpočty. Predstavuje číselnú hodnotu výberu." COM_CONVERTFORMS_FIELD_DIVIDER="Rozdeľovač" COM_CONVERTFORMS_FIELD_DIVIDER_DESC="Rozdeľuje časti formulára" COM_CONVERTFORMS_FIELD_BORDER_STYLE="Štýl okraja" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC="Vyberte štýl okraja oddeľovača." COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID="Pevné" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED="Prerušovaná" COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED="Bodkovaný" COM_CONVERTFORMS_FIELD_BORDER_WIDTH="Šírka okraja" COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC="Nastavte šírku okraja oddeľovača." COM_CONVERTFORMS_FIELD_BORDER_COLOR="Farba okraja" COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC="Nastavte farbu okraja oddeľovača." COM_CONVERTFORMS_FIELD_MARGIN_TOP="Horný okraj" COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC="Nastavte horný okraj oddeľovača." COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM="Okraj dole" COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC="Nastavte spodný okraj oddeľovača." COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK="Prvý deň v týždni" COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC="Zmeňte prvý deň v týždni uvedený v kalendári výberu dátumu." COM_CONVERTFORMS_ENTER_LABEL="Zadajte štítok" COM_CONVERTFORMS_ADD_FIELD="Pridať pole" COM_CONVERTFORMS_ALL_FIELDS="Všetky polia" ; COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS="All Fields - Hide Labels" ; COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS="All Fields - Exclude Empty" COM_CONVERTFORMS_FIELDGROUP_LAYOUT="Polia rozloženia" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE="Povoliť nebezpečné súbory" COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC="Povoliť nahrávanie nebezpečných súborov. <br><br><b>Súbor sa považuje za nebezpečný, ak:</b><br>- v názve súboru sa nájde nulový bajt.<br>- Prípona súboru je zakázaná: .php, py atď.<br>- Obsah súboru obsahuje značku php.<br>- Krátky text tag in file content.<br>- Kdekoľvek v obsahu je zakázaná prípona.T<br><br>áto možnosť vás chráni aj pred nebezpečnými súbormi zahrnutými v komprimovaných súboroch, ako sú zip, rar, tar atď." COM_CONVERTFORMS_LABEL_POSITION="Poloha štítku" COM_CONVERTFORMS_LABEL_POSITION_DESC="Nastavte polohu označenia poľa" ; COM_CONVERTFORMS_HELP_TEXT_POSITION="Help Text Position" ; COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC="Set the position of the help text" ; COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT="After Input" ; COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT="Before Input" COM_CONVERTFORMS_INVALID_RESPONSE="Neplatná odpoveď" COM_CONVERTFORMS_INVALID_TASK="Neplatná úloha" COM_CONVERTFORMS_ERROR_WAIT_FILE_UPLOADS="Počkajte na dokončenie nahrávania súboru." COM_CONVERTFORMS_ERROR_INPUTMASK_INCOMPLETE="Maska je neúplná" COM_CONVERTFORMS_SUBMISSION_ID="ID podania" COM_CONVERTFORMS_SUBMISSION_DATE="Dátum predloženia" COM_CONVERTFORMS_SUBMISSION_STATUS="Stav podania" COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID="ID kampane odoslania" COM_CONVERTFORMS_SUBMISSION_FORM_ID="ID formulára na odoslanie" COM_CONVERTFORMS_SUBMISSION_VISITOR_ID="ID návštevníka odoslania" COM_CONVERTFORMS_SUBMISSION_USER_ID="Odoslať ID používateľa" COM_CONVERTFORMS_SUBMISSIONS_COUNT="Počet podaní" COM_CONVERTFORMS_FIELD_RATING="Hodnotenie" COM_CONVERTFORMS_FIELD_RATING_DESC="Pridajte hodnotenie do svojho formulára a umožnite svojim používateľom udeliť jedno alebo viac hodnotení." COM_CONVERTFORMS_FIELD_RATING_ICON="Ikona" COM_CONVERTFORMS_FIELD_RATING_ICON_DESC="Vyberte si jeden z ôsmich vstavaných návrhov ikon pre pole hodnotenia." COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC="Nastavte veľkosť ikon hodnotenia." COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR="Vybraná farba" COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC="Vyberte farbu, ktorá sa použije, keď vyberiete ikonu hodnotenia alebo na ňu umiestnite kurzor myši." COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR="Nevybraná farba" COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC="Vyberte farbu, ktorá sa použije, keď nie je vybratá ikona hodnotenia." COM_CONVERTFORMS_FIELD_RATING_MAX_RATING="Maximálne hodnotenie" COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC="Zadajte ikony maximálneho hodnotenia, ktoré sa zobrazia." COM_CONVERTFORMS_FIELD_RANGESLIDER="Posuvník rozsahu" COM_CONVERTFORMS_FIELD_RANGESLIDER_DESC="Pridajte do formulára posúvač rozsahu a umožnite používateľom vybrať hodnotu pomocou rozhrania posúvača." COM_CONVERTFORMS_FIELD_COLORPICKER="Výber farieb" COM_CONVERTFORMS_FIELD_COLORPICKER_DESC="Pole na výber farby umožňuje používateľom určiť farbu pomocou vizuálneho rozhrania na výber farby alebo zadaním vlastnej farby v hexadecimálnom formáte." COM_CONVERTFORMS_MIN_CHARS="Minimálny počet znakov" COM_CONVERTFORMS_MIN_CHARS_DESC="Minimálna dĺžka tohto poľa v znakoch. Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_MAX_CHARS="Maximálny počet znakov" COM_CONVERTFORMS_MAX_CHARS_DESC="Maximálna dĺžka tohto poľa v znakoch. Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_MIN_WORDS="Minimálny počet slov" COM_CONVERTFORMS_MIN_WORDS_DESC="Minimálna dĺžka tohto poľa v slovách. Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_MAX_WORDS="Maximum slov" COM_CONVERTFORMS_MAX_WORDS_DESC="Maximálna dĺžka tohto poľa v slovách. Zadajte 0 pre žiadny limit." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS="Predĺžte tento text na %sznaky alebo viac. Momentálne používate %sznaky." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS="Skráťte tento text na %sznakov alebo menej. Momentálne používate %sznaky." COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS="Predĺžte tento text na %sslová alebo viac. Momentálne používate %sslová." COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS="Predĺžte tento text na %sslová alebo viac. Momentálne používate %sslová." COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC="Zadajte minimálnu hodnotu posúvača." COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC="Zadajte maximálnu hodnotu posúvača." COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC="Zadajte krok posúvača." COM_CONVERTFORMS_FIELD_RATINGS_HALF="Polovičné hodnotenie" COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC="Podporujte polovičné hodnotenie, napr.: 0,5, 1,5, 2,5." COM_CONVERTFORMS_FIELD_EDITOR="Rich Text Editor" COM_CONVERTFORMS_FIELD_EDITOR_DESC="Poskytnite používateľovi editor formátovaného textu na formátovanie svojich odpovedí v tomto poli." COM_CONVERTFORMS_EDITOR_HEIGHT="Výška editora" COM_CONVERTFORMS_EDITOR_HEIGHT_DESC="Nastavte výšku v pixeloch" COM_CONVERTFORMS_EDITOR_SELECT="Editor Joomla" COM_CONVERTFORMS_EDITOR_SELECT_DESC="Vyberte editor Joomla, ktorý sa má použiť pre toto pole. <br><br>Ak v zozname nevidíte žiadne editory, uistite sa, že ste si nainštalovali a aktivovali aspoň 1 doplnok Joomla Editor cez Joomla Plugins Manager." COM_CONVERTFORMS_EDITOR_NOT_FOUND="Joomla Editor sa nenašiel:%s" COM_CONVERTFORMS_EXPORT_COMPLETED="%sexportované príspevky" COM_CONVERTFORMS_DOWNLOAD_WILL_START="Sťahovanie sa spustí automaticky." COM_CONVERTFORMS_EXPORT_WORKING="Exportuje sa" COM_CONVERTFORMS_EXPORT_PROCESSING="Spracované %sz %spodaní" COM_CONVERTFORMS_EXPORT_ERROR_CANT_FIND_FILE="Nedá sa nájsť exportovaný súbor" COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE="Nakonfigurujte hCaptcha teraz" COM_CONVERTFORMS_FIELD_HCAPTCHA="hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_DESC="Zastavte odosielanie spamových formulárov pomocou hCaptcha" COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC="Vyberte, či chcete použiť začiarkavacie políčko alebo neviditeľnú verziu hCaptcha" COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING="Rozšírenie PHP <b>fileinfo </b>je potrebné na uhádnutie typu MIME nahrávaných súborov, ale nie je nainštalované alebo nie je načítané. Ak ho chcete nainštalovať, kontaktujte svojho hostiteľa." ; COM_CONVERTFORMS_FIELD_SIGNATURE="Signature" ; COM_CONVERTFORMS_FIELD_SIGNATURE_DESC="Allow your users to sign contracts and other agreements with their mouse or touch screen" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE="Predvolený stav odoslania" COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC="Nastavte predvolený stav každého nového odoslania." ; COM_CONVERTFORMS_SAVE_DATA_TO_DB="Save Submission Data in Database" ; COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC="Set whether to save the submission data into the database." ; COM_CONVERTFORMS_SAVE_DATA="Save Submissions" ; COM_CONVERTFORMS_SAVE_DATA_1="This form saves submission data in the database" ; COM_CONVERTFORMS_SAVE_DATA_0="This form does not save submission data in the database" ; COM_CONVERTFORMS_SIGNATURE_DOWNLOAD="Download Signature" ; COM_CONVERTFORMS_FILTER_SEARCH="Filter Search" ; COM_CONVERTFORMS_FILTER_SEARCH_DESC="Enter a search term to search for submissions. You can also filter submissions by their ID using: id:1,2,3 syntax" ; COM_CONVERTFORMS_FIELD_CAPTCHA="Math Captcha" ; COM_CONVERTFORMS_FIELD_CAPTCHA_DESC="Ask users to complete a randomly generated basic math problem before they can successfully submit the form." ; COM_CONVERTFORMS_SUBMISSIONS_ASC="Submissions ascending" ; COM_CONVERTFORMS_SUBMISSIONS_DESC="Submissions descending" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER="Wrong Answer Text" ; COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC="The text that will be displayed when the user submits a wrong answer." ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY="Complexity" ; COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC="Choose the complexity level of the equation.<br><br><b>Low</b><br>Numbers from 1 to 10.<br>Operators: Addition (+)<br><br><b>Medium</b><br>Numbers from 1 to 20.<br>Operators: Addition (+), Subtraction (-)<br><br><b>High</b><br>Numbers from 1 to 30.<br>Operators: Addition (+), Subtraction (-), Multiplication (*)" PKBA#]ɺ���!�!,components/com_convertforms/models/forms.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); class ConvertFormsModelForms extends JModelList { /** * File extension used for exported files * * @var string */ private $fileExtension = ".cnvf"; /** * Constructor. * * @param array An optional associative array of configuration settings. * * @see JController */ public function __construct($config = array()) { if (empty($config['filter_fields'])) { $config['filter_fields'] = array( 'id', 'a.id', 'state', 'a.state', 'created', 'a.created', 'ordering', 'a.ordering', 'search', 'name','a.name', 'leads', 'issues' ); } parent::__construct($config); } /** * Method to auto-populate the model state. * * This method should only be called once per instantiation and is designed * to be called on the first call to the getState() method unless the model * configuration flag to ignore the request is set. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 3.7.0 */ protected function populateState($ordering = 'a.id', $direction = 'desc') { // List state information. parent::populateState($ordering, $direction); } /** * Method to build an SQL query to load the list data. * * @return string An SQL query */ protected function getListQuery() { // Create a new query object. $db = JFactory::getDBO(); $query = $db->getQuery(true); // Select some fields from the item table $query ->select('a.*') ->from('#__convertforms a'); // Filter State $filter = $this->getState('filter.state'); if (is_numeric($filter)) { $query->where('a.state = ' . ( int ) $filter); } else if (is_array($filter)) { $query->where('a.state IN (' . implode(',', $filter) . ')'); } else if ($filter == '') { $query->where('(a.state IN (0,1,2))'); } // Filter the list over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $query->where('a.id = ' . ( int ) substr($search, 3)); } else { $search = $db->quote('%' . $db->escape($search, true) . '%'); $query->where( '( `name` LIKE ' . $search . ' )' ); } } // Add the list ordering clause. $orderCol = $this->state->get('list.ordering', 'a.id'); $orderDirn = $this->state->get('list.direction', 'desc'); if ($orderCol == 'leads') { $query->select('(select count(submissions.id) from #__convertforms_conversions as submissions where submissions.form_id = a.id and submissions.state IN (1,2)) as leads'); } $query->order($db->escape($orderCol . ' ' . $orderDirn)); return $query; } /** * Import Method * Import the selected items specified by id * and set Redirection to the list of items */ public function import($model) { $app = JFactory::getApplication(); $file = $app->input->files->get("file"); if (!is_array($file) || !isset($file['name'])) { $app->enqueueMessage(JText::_('NR_PLEASE_CHOOSE_A_VALID_FILE')); $app->redirect('index.php?option=com_convertforms&view=forms&layout=import'); } $ext = explode(".", $file['name']); if ($ext[count($ext) - 1] != substr($this->fileExtension, 1)) { $app->enqueueMessage(JText::_('NR_PLEASE_CHOOSE_A_VALID_FILE')); $app->redirect('index.php?option=com_convertforms&view=forms&layout=import'); } jimport('joomla.filesystem.file'); $publish_all = $app->input->getInt('publish_all', 0); $data = file_get_contents($file['tmp_name']); if (empty($data)) { $app->enqueueMessage(JText::_('File is empty!')); $app->redirect('index.php?option=com_convertforms&view=forms'); return; } $items = json_decode($data, true); if (is_null($items)) { $items = array(); } $msg = JText::_('Items saved'); foreach ($items as $item) { $item['id'] = 0; if ($publish_all == 0) { unset($item['published']); } else if ($publish_all == 1) { $item['published'] = 1; } $items[] = $item; $saved = $model->save($item); if ($saved != 1) { $msg = JText::_('Error Saving Item') . ' ( ' . $saved . ' )'; } } $app->enqueueMessage($msg); $app->redirect('index.php?option=com_convertforms&view=forms'); } /** * Export Method * Export the selected items specified by id */ public function export($ids) { $db = $this->getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__convertforms') ->where('id IN ( ' . implode(', ', $ids) . ' )'); $db->setQuery($query); $rows = $db->loadObjectList(); $string = json_encode($rows); $filename = JText::_("COM_CONVERTFORMS") . ' Items'; if (count($rows) == 1) { $name = Joomla\String\StringHelper::strtolower(html_entity_decode($rows['0']->name)); $name = preg_replace('#[^a-z0-9_-]#', '_', $name); $name = trim(preg_replace('#__+#', '_', $name), '_-'); $filename = JText::_("COM_CONVERTFORMS") . ' Item (' . $name . ')'; } // SET DOCUMENT HEADER if (preg_match('#Opera(/| )([0-9].[0-9]{1,2})#', $_SERVER['HTTP_USER_AGENT'])) { $UserBrowser = "Opera"; } elseif (preg_match('#MSIE ([0-9].[0-9]{1,2})#', $_SERVER['HTTP_USER_AGENT'])) { $UserBrowser = "IE"; } else { $UserBrowser = ''; } $mime_type = ($UserBrowser == 'IE' || $UserBrowser == 'Opera') ? 'application/octetstream' : 'application/octet-stream'; @ob_end_clean(); ob_start(); header('Content-Type: ' . $mime_type); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); if ($UserBrowser == 'IE') { header('Content-Disposition: inline; filename="' . $filename . $this->fileExtension . '"'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); } else { header('Content-Disposition: attachment; filename="' . $filename . $this->fileExtension . '"'); header('Pragma: no-cache'); } // PRINT STRING echo $string; die; } /** * Returns Items Object and transforms params JSON field to object * * @return object */ public function getItems() { $items = parent::getItems(); foreach ($items as $key => $item) { $params = json_decode($item->params); $items[$key] = (object) array_merge((array) $item, (array) $params); unset($items[$key]->params); } return $items; } }PKBA#]�u227components/com_convertforms/models/forms/conversion.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset name="main" addfieldpath="administrator/components/com_convertforms/models/forms/fields"> <field name="state" type="list" label="JSTATUS" description="NR_FIELD_STATE_DESC" class="chzn-color-state" size="1" default="1"> <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="id" type="text" label="JGLOBAL_FIELD_ID_LABEL" description="JGLOBAL_FIELD_ID_DESC" default="0" readonly="true" class="readonly" /> <field name="form_id" type="convertforms" label="COM_CONVERTFORMS_FORM" readonly="true" /> <field name="visitor_id" type="text" label="COM_CONVERTFORMS_VISITOR_ID" readonly="true" /> <field name="user_id" type="user" label="Joomla User" /> <field name="created" type="calendar" label="NR_CREATED_DATE" description="NR_CREATED_DATE_DESC" size="40" translateformat="true" showtime="true" filter="user_utc" readonly="true" /> <field name="modified" type="calendar" label="NR_MODIFIFED_DATE" description="NR_MODIFIFED_DATE_DESC" size="40" translateformat="true" showtime="true" filter="user_utc" readonly="true" /> <fields name="params"> <field name="leadnotes" type="textarea" label="COM_CONVERTFORMS_NOTES" rows="10" class="span12" /> </fields> </fieldset> <fieldset name="params" addfieldpath='/plugins/system/nrframework/fields'> <field name="params"/> </fieldset> </form>PKBA#]H˹̐�=components/com_convertforms/models/forms/filter_campaigns.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fields name="filter"> <field name="search" type="text" label="JSEARCH_FILTER_LABEL" hint="JSEARCH_FILTER" /> <field name="state" type="status" filter="-2,0,1" label="JPUBLISHED" onchange="this.form.submit();"> <option value="">JOPTION_SELECT_PUBLISHED</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="NR_LIST_FULL_ORDERING" description="NR_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.id DESC"> <option value="">JGLOBAL_SORT_BY</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.name ASC">JGLOBAL_TITLE_ASC</option> <option value="a.name DESC">JGLOBAL_TITLE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" class="input-mini" default="10" label="NR_LIST_LIMIT" description="NN_LIST_LIMIT_DESC" onchange="this.form.submit();" /> </fields> </form> PKBA#]��t1components/com_convertforms/models/forms/form.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset name="submission" label="Submission" tab="conversion"> <field name="save_data_to_db" type="nrtoggle" label="COM_CONVERTFORMS_SAVE_DATA_TO_DB" description="COM_CONVERTFORMS_SAVE_DATA_TO_DB_DESC" checked="true" /> <field name="submission_state" type="list" label="COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE" description="COM_CONVERTFORMS_SUBMISSION_DEFAULT_STATE_DESC" class="chzn-color-state" size="1" default="1" showon="save_data_to_db:1"> <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="campaign" type="campaigns" label="COM_CONVERTFORMS_COLLECT_LEADS_USING" description="COM_CONVERTFORMS_COLLECT_LEADS_USING_DESC" required="true" /> <field name="onsuccess" type="list" label="COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION" description="COM_CONVERTFORMS_SUCCESSFUL_SUBMISSION_DESC" default="msg"> <option value="msg">COM_CONVERTFORMS_DISPLAY_MSG</option> <option value="url">COM_CONVERTFORMS_REDIRECT_USER</option> </field> <field name="successmsg" type="textarea" label="COM_CONVERTFORMS_SUCCESS_TEXT" description="COM_CONVERTFORMS_SUCCESS_TEXT_DESC" default="Thanks for contacting us! We will get in touch with you shortly." class="editorx show-smart-tags" showon="onsuccess:msg"> </field> <field name="resetform" type="nrtoggle" label="COM_CONVERTFORMS_RESET_FORM" description="COM_CONVERTFORMS_RESET_FORM_DESC" checked="true" showon="onsuccess:msg" /> <field name="hideform" type="nrtoggle" label="COM_CONVERTFORMS_HIDE_FORM" description="COM_CONVERTFORMS_HIDE_FORM_DESC" checked="true" showon="onsuccess:msg" /> <field name="hidetext" type="nrtoggle" label="COM_CONVERTFORMS_HIDE_TEXT" description="COM_CONVERTFORMS_HIDE_TEXT_DESC" showon="onsuccess:msg" /> <field name="successurl" type="text" label="COM_CONVERTFORMS_SUCCESS_URL" description="COM_CONVERTFORMS_SUCCESS_URL_DESC" hint="http://" showon="onsuccess:url"> </field> <field name="passdata" type="list" label="COM_CONVERTFORMS_PASS_DATA" description="COM_CONVERTFORMS_PASS_DATA_DESC" showon="onsuccess:url"> <option value="">JNO</option> <option value="1">COM_CONVERTFORMS_PASS_DATA_GET</option> <option value="2">COM_CONVERTFORMS_PASS_DATA_POST</option> </field> </fieldset> <fieldset name="behavior" label="COM_CONVERTFORMS_BEHAVIOR" tab="behavior" addfieldpath="plugins/system/nrframework/fields"> <field name="state" type="list" label="JSTATUS" description="NR_FIELD_STATE_DESC" class="chzn-color-state" size="1" default="1"> <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="honeypot" type="nrtoggle" label="COM_CONVERTFORMS_HONEYPOT" description="COM_CONVERTFORMS_HONEYPOT_DESC" checked="true" /> <field name="id" type="hidden" label="JGLOBAL_FIELD_ID_LABEL" description="JGLOBAL_FIELD_ID_DESC" default="0" readonly="true" class="readonly" /> </fieldset> <fieldset name="phpscripts" label="COM_CONVERTFORMS_PHPSCRIPT" tab="behavior"> <fields name="phpscripts"> <field name="formprepare" type="textarea" label="COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE" description="COM_CONVERTFORMS_PHPSCRIPT_FORM_PREPARE_DESC" rows="10" /> <field name="formdisplay" type="textarea" label="COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY" description="COM_CONVERTFORMS_PHPSCRIPT_FORM_DISPLAY_DESC" rows="10" /> <field name="formprocess" type="textarea" label="COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS" description="COM_CONVERTFORMS_PHPSCRIPT_FORM_PROCESS_DESC" rows="10" /> <field name="afterformsubmission" type="textarea" label="COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION" description="COM_CONVERTFORMS_PHPSCRIPT_AFTER_FORM_SUBMISSION_DESC" rows="10" /> <field name="notephpscripts" type="note" description="COM_CONVERTFORMS_PHPSCRIPT_NOTE" class="alert" /> </fields> </fieldset> </form>PKBA#]Y��� 9components/com_convertforms/models/forms/filter_forms.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fields name="filter"> <field name="search" type="text" label="JSEARCH_FILTER_LABEL" hint="JSEARCH_FILTER" /> <field name="state" type="status" filter="-2,0,1" label="JPUBLISHED" onchange="this.form.submit();"> <option value="">JOPTION_SELECT_PUBLISHED</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="NR_LIST_FULL_ORDERING" description="NR_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.id DESC"> <option value="">JGLOBAL_SORT_BY</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.name ASC">JGLOBAL_TITLE_ASC</option> <option value="a.name DESC">JGLOBAL_TITLE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> <option value="leads ASC">COM_CONVERTFORMS_SUBMISSIONS_ASC</option> <option value="leads DESC">COM_CONVERTFORMS_SUBMISSIONS_DESC</option> </field> <field name="limit" type="limitbox" class="input-mini" default="10" label="NR_LIST_LIMIT" description="NN_LIST_LIMIT_DESC" onchange="this.form.submit();" /> </fields> </form> PKBA#]�F��^@^@8components/com_convertforms/models/forms/form_design.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset name="box" label="Box" tab="design" addfieldpath="administrator/components/com_convertforms/models/forms/fields"> <field name="name" type="text" label="NR_NAME" hint="NR_NAME" description="COM_CONVERTFORMS_FORMS_NAME_DESC" /> <field name="autowidth" type="list" label="COM_CONVERTFORMS_BOX_WIDTH_TYPE" description="COM_CONVERTFORMS_BOX_WIDTH_TYPE_DESC" default="custom"> <option value="auto">NR_AUTO</option> <option value="custom">NR_CUSTOM</option> </field> <field name="width" type="nrnumber" label="COM_CONVERTFORMS_FORM_WIDTH" description="COM_CONVERTFORMS_FORM_WIDTH_DESC" default="500" min="0" step="50" addon="px" showon="autowidth:custom" /> <field name="bgcolor" type="color" default="rgba(255, 255, 255, 1)" keywords="transparent,none" format="rgba" label="NR_BACKGROUND_COLOR" description="NR_BACKGROUND_COLOR_DESC" position="bottom" /> <field name="bgimage" type="list" label="COM_CONVERTFORMS_BACKGROUND_IMAGE" description="COM_CONVERTFORMS_BACKGROUND_IMAGE_DESC" filter="intval" size="1" default="0"> <option value="0">NR_NONE</option> <option value="1">NR_UPLOAD</option> <option value="2">COM_CONVERTFORMS_CUSTOM_URL</option> </field> <field name="bgurl" type="text" hint="http://" label="COM_CONVERTFORMS_BACKGROUND_URL" description="COM_CONVERTFORMS_BACKGROUND_URL_DESC" showon="bgimage:2" /> <field name="bgfile" type="media" label="COM_CONVERTFORMS_BACKGROUND_FILE" description="COM_CONVERTFORMS_BACKGROUND_FILE_DESC" showon="bgimage:1" /> <field name="bgrepeat" type="list" showon="bgimage:1,2" label="NR_BGIMAGE_REPEAT" description="NR_BGIMAGE_REPEAT_DESC" default="no-repeat"> <option value="no-repeat">NR_REPEAT_NO</option> <option value="repeat-x">NR_REPEAT_X</option> <option value="repeat-y">NR_REPEAT_Y</option> <option value="repeat">NR_REPEAT</option> </field> <field name="bgsize" type="list" showon="bgimage:1,2" label="NR_BGIMAGE_SIZE" description="NR_BGIMAGE_SIZE_DESC" default="auto"> <option value="auto">NR_AUTO</option> <option value="cover">NR_IMAGE_SIZE_COVER</option> <option value="contain">NR_IMAGE_SIZE_CONTAIN</option> <option value="100% 100%">100% 100%</option> </field> <field name="bgposition" type="list" showon="bgimage:1,2" label="NR_BGIMAGE_POSITION" description="NR_BGIMAGE_POSITION_DESC" default="left top"> <option value="left top">Left Top</option> <option value="left center">Left Center</option> <option value="left bottom">Left Bottom</option> <option value="right top">Right Top</option> <option value="right center">Right Center</option> <option value="right bottom">Right Bottom</option> <option value="center top">Center Top</option> <option value="center center">Center Center</option> <option value="center bottom">Center Bottom</option> </field> <field name="spacer1" type="spacer" hr="true" /> <field name="text" type="textarea" label="COM_CONVERTFORMS_MESSAGE" description="COM_CONVERTFORMS_MESSAGE_DESC" class="editorx show-smart-tags" filter="raw" hint="Enter your message here" /> <field name="font" type="nrfonts" class="nrfont" label="COM_CONVERTFORMS_BODY_FONT" description="COM_CONVERTFORMS_BODY_FONT_DESC" default="Arial"> <option value=" ">JDEFAULT</option> </field> <field name="padding" type="nrnumber" label="NR_PADDING" description="NR_PADDING_DESC" addon="px" min="0" step="5" default="0"> </field> <field name="borderradius" type="nrnumber" label="COM_CONVERTFORMS_BOX_RADIUS" description="COM_CONVERTFORMS_BORDER_RADIUS_DESC" addon="px" default="0" min="0" step="5" /> <field name="spacer2" type="spacer" hr="true" /> <field name="borderstyle" type="list" label="COM_CONVERTFORMS_FORM_BORDER_STYLE" description="COM_CONVERTFORMS_FORM_BORDER_STYLE_DESC" default="none"> <option value="none">NR_NONE</option> <option value="solid">Solid</option> <option value="dotted">Dotted</option> <option value="dashed">Dashed</option> <option value="double">Double</option> <option value="groove">Groove</option> <option value="ridge">Ridge</option> <option value="inset">Inset</option> <option value="outset">Outset</option> </field> <field name="bordercolor" type="color" label="COM_CONVERTFORMS_FORM_BORDER_COLOR" description="COM_CONVERTFORMS_FORM_BORDER_COLOR_DESC" showon="borderstyle:solid,dotted,dashed,double,groove,ridge,inset,outset" position="bottom" /> <field name="borderwidth" type="nrnumber" addon="px" default="2" min="0" label="COM_CONVERTFORMS_FORM_BORDER_WIDTH" description="COM_CONVERTFORMS_FORM_BORDER_WIDTH_DESC" showon="borderstyle:solid,dotted,dashed,double,groove,ridge,inset,outset" /> </fieldset> <fieldset name="image" label="NR_IMAGE" tab="design"> <field name="image" type="list" label="COM_CONVERTFORMS_IMAGE_SOURCE" description="COM_CONVERTFORMS_IMAGE_SOURCE_DESC" filter="intval" size="1" default="0"> <option value="0">NR_NONE</option> <option value="1">NR_UPLOAD</option> <option value="2">COM_CONVERTFORMS_CUSTOM_URL</option> </field> <field name="imageurl" type="text" hint="http://" label="COM_CONVERTFORMS_IMAGE_URL" description="COM_CONVERTFORMS_IMAGE_URL_DESC" showon="image:2" /> <field name="imagefile" type="media" label="NR_IMAGE_SELECT" description="COM_CONVERTFORMS_IMAGE_SOURCE" showon="image:1" /> <field name="imgposition" type="list" showon="image:1,2" label="COM_CONVERTFORMS_IMAGE_POSITION" description="COM_CONVERTFORMS_IMAGE_POSITION_DESC" default="img-above"> <option value="img-above">COM_CONVERTFORMS_IMAGE_ABOVE</option> <option value="img-below">COM_CONVERTFORMS_IMAGE_BELOW</option> <option value="img-right">COM_CONVERTFORMS_IMAGE_RIGHT</option> <option value="img-left">COM_CONVERTFORMS_IMAGE_LEFT</option> </field> <field name="imageautowidth" type="list" label="COM_CONVERTFORMS_IMAGE_WIDTH_TYPE" description="COM_CONVERTFORMS_IMAGE_WIDTH_TYPE_DESC" default="auto" showon="image:1,2"> <option value="auto">NR_AUTO</option> <option value="custom">NR_CUSTOM</option> </field> <field name="imagewidth" type="nrnumber" label="NR_WIDTH" description="NR_WIDTH_DESC" addon="px" min="0" step="10" default="200" showon="imageautowidth:custom[AND]image:1,2" /> <field name="imagesize" type="nrnumber" label="COM_CONVERTFORMS_IMAGE_SIZE" description="COM_CONVERTFORMS_IMAGE_SIZE_DESC" addon="Columns" max="16" min="1" default="6" filter="intval" showon="imgposition:img-right,img-left[AND]image:1,2" /> <field name="imagehposition" type="nrnumber" label="COM_CONVERTFORMS_HORIZONTAL_POSITION" description="COM_CONVERTFORMS_HORIZONTAL_POSITION_DESC" addon="px" default="0" step="5" showon="image:1,2" /> <field name="imagevposition" type="nrnumber" label="COM_CONVERTFORMS_VERTICAL_POSITION" description="COM_CONVERTFORMS_VERTICAL_POSITION_DESC" addon="px" default="0" step="5" showon="image:1,2" /> <field name="imagealt" type="text" label="COM_CONVERTFORMS_IMAGE_ALT" description="COM_CONVERTFORMS_IMAGE_ALT_DESC" showon="image:1,2" /> <field name="hideimageonmobile" type="nrtoggle" label="COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE" description="COM_CONVERTFORMS_HIDE_IMAGE_ON_MOBILE_DESC" showon="image:1,2" /> </fieldset> <fieldset name="layouts" label="Form" tab="design"> <field name="formposition" type="list" label="COM_CONVERTFORMS_FORM_POSITION" description="COM_CONVERTFORMS_FORM_POSITION_DESC" showlabels="false" default="form-bottom"> <option value="form-left">NR_LEFT</option> <option value="form-bottom">NR_BOTTOM</option> <option value="form-right">NR_RIGHT</option> </field> <field name="formsize" type="nrnumber" label="COM_CONVERTFORMS_FORM_SIZE" description="COM_CONVERTFORMS_COLUMNS_DESC" addon="Columns" max="16" min="1" default="16" filter="intval" showon="formposition:form-left,form-right" /> <field name="formbgcolor" type="color" default="" keywords="transparent,none" format="rgba" label="NR_BACKGROUND_COLOR" description="NR_BACKGROUND_COLOR_DESC" position="bottom" /> </fieldset> <fieldset name="fields" label="COM_CONVERTFORMS_FIELDS" tab="fields"> <field name="fields" type="formfields" hiddenLabel="true" default='{ "fields0": { "key": "0", "type": "email", "name": "email", "label": "Enter your email address", "placeholder": "Enter your email address" }, "fields1": { "key": "1", "type": "text", "name": "name", "label": "Enter your name", "placeholder": "Enter your name" }, "fields2": { "key": "2", "type": "submit", "text": "Submit" } }' /> </fieldset> <fieldset name="formbuilder" label="COM_CONVERTFORMS_FIELDS" tab="design"> <field name="labelscolor" type="color" default="#888" label="COM_CONVERTFORMS_LABELS_COLOR" description="NR_COLOR_DESC" position="bottom" /> <field name="labelsfontsize" type="nrnumber" default="15" label="COM_CONVERTFORMS_LABELS_FONT_SIZE" description="COM_CONVERTFORMS_LABELS_FONT_SIZE" addon="px" /> <field name="labelposition" type="list" label="COM_CONVERTFORMS_LABEL_POSITION" description="COM_CONVERTFORMS_LABEL_POSITION_DESC" default="top"> <option value="top">Top Aligned</option> <option value="left">Left Aligned</option> </field> <field name="required_indication" type="nrtoggle" label="COM_CONVERTFORMS_REQUIRED_INDICATION" description="COM_CONVERTFORMS_REQUIRED_INDICATION_DESC" checked="true" /> <field name="inputfontsize" type="nrnumber" addon="px" default="15" min="0" label="COM_CONVERTFORMS_INPUT_FONT_SIZE" description="COM_CONVERTFORMS_INPUT_FONT_SIZE_DESC" /> <field name="inputcolor" type="color" default="#888" label="COM_CONVERTFORMS_INPUT_COLOR" description="NR_COLOR_DESC" position="bottom" /> <field name="inputbg" type="color" default="#fff" label="COM_CONVERTFORMS_INPUT_BGCOLOR" description="NR_COLOR_DESC" position="bottom" /> <field name="inputalign" type="list" label="COM_CONVERTFORMS_FORM_TEXT_ALIGN" description="COM_CONVERTFORMS_FORM_TEXT_ALIGN_DESC" default="left"> <option value="left">NR_LEFT</option> <option value="center">NR_CENTER</option> <option value="right">NR_RIGHT</option> </field> <field name="inputbordercolor" type="color" label="COM_CONVERTFORMS_INPUT_BORDER_COLOR" description="NR_COLOR_DESC" default="#ccc" position="bottom" /> <field name="inputborderradius" type="nrnumber" label="COM_CONVERTFORMS_BORDER_RADIUS" description="COM_CONVERTFORMS_BORDER_RADIUS_DESC" addon="px" default="3" min="0" step="1" /> <field name="inputvpadding" type="nrnumber" addon="px" default="10" min="0" label="COM_CONVERTFORMS_VPADDING_SIZE" description="COM_CONVERTFORMS_INPUT_PADDING_DESC" /> <field name="inputhpadding" type="nrnumber" addon="px" default="10" min="0" label="COM_CONVERTFORMS_HPADDING_SIZE" description="COM_CONVERTFORMS_INPUT_PADDING_DESC" /> <field name="help_text_position" type="list" label="COM_CONVERTFORMS_HELP_TEXT_POSITION" description="COM_CONVERTFORMS_HELP_TEXT_POSITION_DESC" default="after"> <option value="after">COM_CONVERTFORMS_HELP_TEXT_AFTER_INPUT</option> <option value="before">COM_CONVERTFORMS_HELP_TEXT_BEFORE_INPUT</option> </field> </fieldset> <fieldset name="advanced" label="Advanced" tab="design"> <field name="footer" type="textarea" label="COM_CONVERTFORMS_FOOTER" description="COM_CONVERTFORMS_FOOTER_DESC" filter="raw" class="editorx show-smart-tags" /> <field name="customcss" type="textarea" label="COM_CONVERTFORMS_CUSTOM_CSS" description="COM_CONVERTFORMS_CUSTOM_CSS_DESC" rows="10" /> <field name="customcode" type="textarea" label="COM_CONVERTFORMS_CUSTOM_CODE" description="COM_CONVERTFORMS_CUSTOM_CODE_DESC" rows="10" /> <field name="classsuffix" type="text" label="COM_CONVERTFORMS_CLASS_SUFFIX" description="COM_CONVERTFORMS_CLASS_SUFFIX_DESC" /> </fieldset> </form>PKBA#]a�f��?components/com_convertforms/models/forms/filter_conversions.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fields name="filter" addfieldpath="administrator/components/com_convertforms/models/forms/fields"> <field name="search" type="text" label="JSEARCH_FILTER_LABEL" hint="JSEARCH_FILTER" /> <field name="form_id" type="convertforms" label="COM_CONVERTFORMS_FORM" description="COM_CONVERTFORMS_FORM" state="0,1" onchange="this.form.submit();"> <option disabled="disabled">COM_CONVERTFORMS_FORM_SELECT</option> </field> <field name="period" type="list" label="COM_CONVERTFORMS_PERIOD" onchange="if (document.getElementById('filter_period').value == 'daterange') return; this.form.submit();"> <option value="">COM_CONVERTFORMS_PERIOD_SELECT</option> <option value="today">COM_CONVERTFORMS_TODAY</option> <option value="yesterday">COM_CONVERTFORMS_YESTERDAY</option> <option value="this_week">COM_CONVERTFORMS_THIS_WEEK</option> <option value="this_month">COM_CONVERTFORMS_THIS_MONTH</option> <option value="this_year">COM_CONVERTFORMS_THIS_YEAR</option> <option value="last_week">COM_CONVERTFORMS_LAST_WEEK</option> <option value="last_month">COM_CONVERTFORMS_LAST_MONTH</option> <option value="last_year">COM_CONVERTFORMS_LAST_YEAR</option> <option value="daterange">COM_CONVERTFORMS_DATE_RANGE</option> </field> <field name="created_from" type="calendar" label="COM_CONVERTFORMS_START_DATE" hint="COM_CONVERTFORMS_START_DATE" format="%Y-%m-%d" onchange="this.form.submit();" showon="period:daterange" class="input-medium" /> <field name="created_to" type="calendar" label="COM_CONVERTFORMS_END_DATE" hint="COM_CONVERTFORMS_END_DATE" format="%Y-%m-%d" onchange="this.form.submit();" showon="period:daterange" class="input-medium" /> <field name="state" type="status" label="JPUBLISHED" onchange="this.form.submit();"> <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="columns" type="leadcolumns" label="COM_CONVERTFORMS_CHOOSE_COLUMNS" onchange="this.form.submit();" /> </fields> <fields name="list"> <field name="fullordering" type="list" label="NR_LIST_FULL_ORDERING" description="NR_LIST_FULL_ORDERING_DESC" onchange="this.form.submit();" default="a.id DESC"> <option value="">JGLOBAL_SORT_BY</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.created ASC">JDATE_ASC</option> <option value="a.created DESC">JDATE_DESC</option> <option value="a.form_id ASC">COM_CONVERTFORMS_FORM_ASCENDING</option> <option value="a.form_id DESC">COM_CONVERTFORMS_FORM_DESCENDING</option> </field> <field name="limit" type="limitbox" class="input-mini" default="10" label="NR_LIST_LIMIT" description="NN_LIST_LIMIT_DESC" onchange="this.form.submit();" /> </fields> </form> PKBA#]"�$� � >components/com_convertforms/models/forms/fields/formfields.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); use ConvertForms\FieldsHelper; class JFormFieldFormFields extends JFormField { /** * Disable field label * * @return void */ protected function getLabel() { return; } /** * Method to attach a JForm object to the field. * * @param SimpleXMLElement $element The SimpleXMLElement object representing the <field /> tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. * * @return boolean True on success. * * @since 3.6 */ public function setup(SimpleXMLElement $element, $value, $group = null) { if (!parent::setup($element, $value, $group)) { return false; } if ($this->value) { // Convert JSON passed in the default property to array if (is_string($this->value)) { $this->value = json_decode($this->value, true); } // Migration Fixes foreach ($this->value as $key => &$value) { if (is_object($value)) { $value = (array) $value; } $value['key'] = (int) str_replace('fields', '', $key); } } return true; } /** * Get field input * * @return string */ protected function getInput() { $html = JLayoutHelper::render('layout', array( 'formControl' => $this->name . '[' . $this->fieldname . 'X]', 'items' => $this->renderItems(), 'fieldgroups' => FieldsHelper::getFieldTypes(), 'nextid' => $this->getNextID() ), __DIR__ . '/formfields/'); $this->addMediaFiles(); return $html; } private function getNextID() { $max = 0; if (is_array($this->value)) { foreach ($this->value as $key => $item) { $max = $item['key'] > $max ? $item['key'] : $max; } } return $max + 1; } private function renderItems() { $items = array(); if (!$this->value || !is_array($this->value)) { return $items; } $i = 0; foreach ($this->value as $key => $item) { if (!$class = FieldsHelper::getFieldClass($item['type'])) { continue; } $formControl = $this->name . '[' . $this->fieldname . $item['key'] . ']'; $items[] = array( 'form' => $class->getOptionsForm($formControl, $item), 'data' => $item ); $i++; } return $items; } private function addMediaFiles() { JHtml::script('com_convertforms/choices.js', ['relative' => true, 'version' => 'auto']); } }PKBA#]� >components/com_convertforms/models/forms/fields/cfservices.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFormHelper::loadFieldClass('list'); class JFormFieldCFServices extends JFormFieldList { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getOptions() { // Trigger all ConvertForms plugins JPluginHelper::importPlugin('convertforms'); // Get a list with all available services $services = JFactory::getApplication()->triggerEvent('onConvertFormsServiceName'); $options[] = JHTML::_('select.option', '0', JText::_('JDISABLED')); // Alphabetically sort services asort($services); foreach ($services as $option) { $options[] = JHTML::_('select.option', $option['alias'], $option['name']); } return array_merge(parent::getOptions(), $options); } }PKBA#]|�����=components/com_convertforms/models/forms/fields/campaigns.phpnu�[���<?php /** * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ // No direct access to this file defined('_JEXEC') or die; JFormHelper::loadFieldClass('list'); class JFormFieldCampaigns extends JFormFieldList { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getOptions() { $lists = ConvertForms\Helper::getCampaigns(); if (!count($lists)) { return; } $options = array(); foreach ($lists as $option) { $options[] = JHTML::_('select.option', $option->id, $option->name); } $options = array_merge(parent::getOptions(), $options); return $options; } }PKBA#]N_����@components/com_convertforms/models/forms/fields/convertforms.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFormHelper::loadFieldClass('list'); JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/' . 'models'); class JFormFieldConvertForms extends JFormFieldList { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getOptions() { $model = JModelLegacy::getInstance('Forms', 'ConvertFormsModel', ['ignore_request' => true]); $state = isset($this->element['state']) ? (string) $this->element['state'] : 1; $model->setState('filter.state', explode(',', $state)); $convertforms = $model->getItems(); $options = array(); foreach ($convertforms as $key => $convertform) { $name = $convertform->state != 1 ? $convertform->name . ' (' . JText::_('JUNPUBLISHED') . ')' : $convertform->name; $options[] = JHTML::_('select.option', $convertform->id, $name . ' (' . $convertform->id . ')'); } return array_merge(parent::getOptions(), $options); } }PKBA#]�Ԃ� � >components/com_convertforms/models/forms/fields/cssclasses.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); class JFormFieldCSSClasses extends JFormFieldText { /** * Layout class prefix * * @var string */ private $class_prefix = 'cf-'; /** * List of available layout classes * * @var array */ private $layouts = array( 'one-half, one-half', 'one-third, one-third, one-third', 'one-fourth, one-fourth, one-fourth, one-fourth', 'one-third, two-thirds', 'two-thirds, one-third', 'one-fourth, one-fourth, two-fourths', 'two-fourths, one-fourth, one-fourth', 'one-fourth, two-fourths, one-fourth' ); /** * Display a layouts button next to the field label * * @return string */ protected function getLabel() { $html = ' <a class="cf-layout-btn" href="#" data-show-label="' . JText::_('COM_CONVERTFORMS_SHOW_LAYOUTS') . '" data-hide-label="' . JText::_('COM_CONVERTFORMS_HIDE_LAYOUTS') . '"> ' . JText::_('COM_CONVERTFORMS_SHOW_LAYOUTS') . '</a>'; return parent::getLabel() . $html; } /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getInput() { $uniqueClasses = array(); $html = ' <div class="cf-layout-classes"> <span>' . JText::_('COM_CONVERTFORMS_SELECT_LAYOUT') . '</span> <div class="cf-layout-list">'; foreach ($this->layouts as $key => $layout) { $classes = explode(',', $layout); $html .= '<div class="cf-layout">'; foreach ($classes as $key => $class) { $class = trim($class); $classLabel = ucfirst(str_replace('-', ' ', $class)); $html .= ' <span title="' . $classLabel . '" class="' . $this->class_prefix . $class . '"></span>'; } $html .= '</div>'; } $html .= '</div></div>'; return $html . parent::getInput(); } }PKBA#]���r��<components/com_convertforms/models/forms/fields/textlist.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFormHelper::loadFieldClass('text'); class JFormFieldTextList extends JFormFieldText { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getInput() { if (!empty($this->value) && !is_array($this->value)) { $this->value = (array) $this->value; } // Add brackets to field name to accept multiple values $this->name .= '[]'; $html = '<div class="input_item_list"><div class="input_items">'; if (is_array($this->value) && !empty($this->value)) { foreach ($this->value as $key => $item) { $this->value = $item; $html .= '<div>' . parent::getInput() . '<button class="btn btn-mini remove_item"><span class="icon-minus"></button></div>'; } } $html .= '</div>'; // Add an extra input for template needs $this->value = ''; $this->disabled = true; $html .= '<div class="input_item_list_tmpl"> ' . parent::getInput() . '<button class="btn btn-mini remove_item"><span class="icon-minus"></button></div>'; $html .= '<button class="btn btn-mini btn-success add_item"><span class="icon-plus"></span></button></div>'; static $run; if (!$run) { $this->addMedia(); $run = true; } return $html; } private function addMedia() { // Add CSS JFactory::getDocument()->addStyleDeclaration(' .input_item_list .input_item_list_tmpl { display:none; } .input_item_list div div { margin-bottom:5px; display:flex; display:-webkit-flex; align-items:center; -webkit-align-items:center; } .input_item_list input { margin-right:5px; } .input_item_list *[class^="icon"] { margin:0; pointer-events: none; } '); // Add Script JFactory::getDocument()->addScriptDeclaration(' document.addEventListener("DOMContentLoaded", function(e) { var els = document.querySelectorAll(".input_item_list"); els.forEach(function(el) { el.addEventListener("click", function(e) { e.preventDefault(); // Remove item action if (e.target.classList.contains("remove_item")) { var button = e.target; var container = button.closest(".input_items"); container.removeChild(button.parentNode); } // Add new item action if (e.target.classList.contains("add_item")) { var el_tmpl = el.querySelector(".input_item_list_tmpl"); var cln = el_tmpl.cloneNode(true); cln.querySelector("input").disabled = false; cln.classList.remove("input_item_list_tmpl"); el.querySelector(".input_items").appendChild(cln); } }); }); }); '); } }PKBA#]4�luEcomponents/com_convertforms/models/forms/fields/formfields/layout.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); extract($displayData); $activeTab = count($items) > 0 ? 'fmAllFields' : 'fmaddField'; JHtml::script('https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js'); ?> <div class="fm" data-formcontrol="<?php echo $formControl ?>" data-nextid="<?php echo $nextid; ?>"> <?php echo JHtml::_('bootstrap.startTabSet', 'fieldsManager', array('active' => $activeTab)); echo JHtml::_('bootstrap.addTab', 'fieldsManager', 'fmaddField', JText::_('COM_CONVERTFORMS_ADD_FIELD')); ?> <div class="fmAvailableFields"> <?php foreach ($fieldgroups as $group => $fieldgroup) { ?> <div class="fmFieldGroup"> <h5><?php echo $fieldgroup['title'] ?></h5> <div class="fmFields"> <?php foreach ($fieldgroup['fields'] as $key => $field) { $isProOnly = !$field['class']; ?> <div> <button class="cf-btn btn-dark addField" type="button" data-type="<?php echo $field['name']; ?>" title="<?php echo $field['desc']; ?>"<?php if ($isProOnly) { ?> data-pro-only="<?php echo str_replace('Field', '', $field['title']) . ' Field' ?>"<?php } ?>> <?php echo $field['title'] ?> <?php if ($isProOnly) { ?> <span class="icon-lock right"></span> <?php } ?> </button> </div> <?php } ?> </div> </div> <?php } ?> </div> <?php echo JHtml::_('bootstrap.endTab'); echo JHtml::_('bootstrap.addTab', 'fieldsManager', 'fmAllFields', JText::_('COM_CONVERTFORMS_ALL_FIELDS')); ?> <div class="fmAddedFields"> <?php foreach ($items as $key => $item) { ?> <div class="item" data-key="<?php echo $item['data']['key'] ?>"> <span class="fmFieldLabel"></span> <span class="fmFieldControl"> <a href="#" class="copyField" title="<?php echo JText::_('COM_CONVERTFORMS_FIELDS_COPY') ?>"> <span class="cf-icon-copy"></span> </a> <a href="#" class="removeField" title="<?php echo JText::_('COM_CONVERTFORMS_FIELDS_DELETE') ?>"> <span class="cf-icon-cancel"></span> </a> </span> </div> <?php } ?> </div> <?php echo JHtml::_('bootstrap.endTab'); echo JHtml::_('bootstrap.addTab', 'fieldsManager', 'fmItems', JText::_('JOPTIONS')); ?> <div class="fmItems"> <?php foreach ($items as $key => $item) { echo $item['form']; } ?> </div> <?php echo JHtml::_('bootstrap.endTab'); echo JHtml::_('bootstrap.endTabSet'); ?> </div>PKBA#]���?11;components/com_convertforms/models/forms/fields/choices.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); require_once JPATH_PLUGINS . '/system/nrframework/helpers/field.php'; class JFormFieldNR_Choices extends NRFormField { /** * Default Choices * * @var array */ private $defaultChoices = array( 1 => array("label" => "First Choice"), 2 => array("label" => "Second Choice"), 3 => array("label" => "Third Choice") ); /** * Get Input HTML * * @return string */ protected function getInput() { $this->addMedia(); $choiceType = $this->get("choicetype", "dropdown"); // Settings $showValuesFieldName = $this->name . '[showvalues]'; $showValuesFieldChecked = isset($this->value["showvalues"]) ? "checked" : ""; $showCalcValuesFieldName = $this->name . '[showcalcvalues]'; $showCalcValuesFieldChecked = isset($this->value["showcalcvalues"]) ? "checked" : ""; // Choices $choices = $this->getChoices(); $nextid = max(array_keys($choices)) + 1; $html[] = ' <div id="nr_choices_' . $this->id . '" class="nr_choices" data-min="1" data-fieldname="' . $this->name . '" data-nextid="' . $nextid . '"> '; foreach ($choices as $key => $value) { // Skip empty choices if (!isset($value["label"]) || $value["label"] == '') { continue; } $choiceName = $this->name . '[choices][' . $key . ']'; $checked = (isset($value["default"]) && (bool) $value["default"] === true) ? "checked" : ""; $choiceValue = isset($value["value"]) ? $value["value"] : ""; $choiceCalcValue = isset($value["calc-value"]) ? $value["calc-value"] : ""; $choiceLabel = $value["label"]; $html[] = ' <div class="nr-choice-item" data-id=' . $key . '> <div> <input tabindex="-1" class="nr-choice-default norender" type="'.($choiceType == "dropdown" ? "radio" : "checkbox") .'" name="' . $choiceName . '[default]" value="1" '.$checked .'> </div> <div class="nr-choice-sort"> <span class="cf-icon-menu"></span> </div> <div class="nr-choice-input"> <input placeholder="' . JText::_('COM_CONVERTFORMS_ENTER_LABEL') . '" class="form-control nr-choice-label" name="' . $choiceName . '[label]" value="' . htmlspecialchars($choiceLabel) . '" type="text"/> <input '.(!$showValuesFieldChecked ? "style=\"display:none;\"" : "").' placeholder="Enter saved value" class="form-control nr-choice-value" name="' . $choiceName . '[value]" value="'.$choiceValue.'" type="text"/> <input '.(!$showCalcValuesFieldChecked ? "style=\"display:none;\"" : "").' placeholder="Enter Calculation Value" class="form-control nr-choice-calc-value" name="' . $choiceName . '[calc-value]" value="'.$choiceCalcValue.'" type="text"/> </div> <div class="nr-choice-control"> <a tabindex="-1" href="#" class="nr-choice-add"><span class="cf-icon-plus"></span></a> <a tabindex="-1" href="#" class="nr-choice-remove"><span class="cf-icon-minus"></span></a> </div> </div> '; } // Add settings fields $html[] = ' </div> <div class="nr-choice-settings"> <span> <input value"1" class="showvalues" type="checkbox" id="' . $showValuesFieldName . '" name="' . $showValuesFieldName . '" '.$showValuesFieldChecked.'> <label title="' . JText::_('COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES_DESC') . '" for="' . $showValuesFieldName . '">' . JText::_('COM_CONVERTFORMS_FIELD_OPTIONS_SHOW_VALUES') . '</label> </span> <span> <input value"1" class="showcalcvalues" type="checkbox" id="' . $showCalcValuesFieldName . '" name="' . $showCalcValuesFieldName . '" '.$showCalcValuesFieldChecked.'> <label title="' . JText::_('COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES_DESC') . '" for="' . $showCalcValuesFieldName . '">' . JText::_('COM_CONVERTFORMS_FIELD_OPTIONS_CALC_VALUES') . '</label> </span> </div> '; return implode(" ", $html); } /** * Get Field Choices * * @return array */ private function getChoices() { // Setup some default choices if we don't have saved data if (!isset($this->value) || !isset($this->value["choices"]) || count($this->value["choices"]) == 0) { return $this->defaultChoices; } return $this->value["choices"]; } /** * Adds CSS and JavaScript files to DOM */ private function addMedia() { JHtml::script('https://cdn.jsdelivr.net/npm/sortablejs@latest/Sortable.min.js'); JHtml::script('com_convertforms/choices.js', ['relative' => true, 'version' => 'auto']); } }PKBA#]���33=components/com_convertforms/models/forms/fields/signature.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFormHelper::loadFieldClass('media'); class JFormFieldSignature extends JFormFieldMedia { /** * Allow editing the signature field on the backend * * @return string */ protected function getInput() { JFactory::getDocument()->addStyleDeclaration(' .previewSignature { max-width:600px; position:relative; } .previewSignature .btn-download { position:absolute; right:10px; top:10px; display:none; } .previewSignature:hover .btn-download { display:block; } '); $this->class = ''; $parent = parent::getInput(); if (!defined('nrJ4')) { JFactory::getDocument()->addStyleDeclaration(' .previewSignature { border:solid 1px #ccc; border-radius:3px; box-sizing: border-box; } .previewSignature * { box-sizing: inherit; } .previewSignature .pop-helper, .previewSignature .tooltip { display:none !important; } .previewSignature .input-prepend { width:100%; display:flex; height:34px; } .previewSignature .input-prepend > * { flex:0; height:100%; } .previewSignature .input-prepend input { flex:1; border-radius: 0 0 0 3px; padding-left: 10px; } .previewSignature .field-media-wrapper { margin-bottom: -1px; margin-left: -1px; } .previewSignature .img-prv { padding:10px; background-color:#f2f2f2; text-align:center; } '); $parent = '<div class="img-prv"><img src="' . JURI::root() . '/' . $this->value . '"/></div>' . $parent; } return ' <div class="previewSignature">' . $parent . ' <a href="' . JURI::root() . '/' . $this->value . '" title="' . \JText::_('COM_CONVERTFORMS_SIGNATURE_DOWNLOAD') . '" class="btn btn-small btn-primary btn-sm btn-download" download> <span class="icon-download"></span> </a> </div> '; } }PKBA#]��s� � ?components/com_convertforms/models/forms/fields/leadcolumns.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); JFormHelper::loadFieldClass('checkboxes'); class JFormFieldLeadColumns extends JFormFieldCheckboxes { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getOptions() { $formID = $this->getFormID(); $form_fields = ConvertForms\Helper::getColumns($formID); $optionsForm = []; foreach ($form_fields as $key => $field) { $label = ucfirst(str_replace('param_', '', $field)); if (strpos($field, 'param_') === false) { $label = JText::_('COM_CONVERTFORMS_' . $label); } $optionsForm[] = (object) [ 'value' => $field, 'text' => $label ]; } return $optionsForm; } protected function getInput() { JFactory::getDocument()->addScriptDeclaration(' function cfSubmissionColumnsApply(that) { // Reset task in case it was previously set and would trigger the task on submit such as submissions export let task = document.querySelector("input[type=\"hidden\"][name=\"task\"]"); if (task) { task.value = ""; } that.form.submit(); } '); $html = ' <div class="chooseColumns"> <a class="btn btn-secondary" data-bs-toggle="collapse" data-toggle="collapse" href="#" data-target=".chooseColumnsOptions" data-bs-target=".chooseColumnsOptions">' . JText::_('COM_CONVERTFORMS_CHOOSE_COLUMNS') . ' </a> <div class="collapse chooseColumnsOptions"> <div> ' . parent::getInput() . ' <button class="btn btn-sm btn-success" onclick="cfSubmissionColumnsApply(this);">' . JText::_('JAPPLY') . '</button> </div> </div> </div> '; return $html; } private function getFormID() { return $this->form->getData()->get('filter.form_id'); } }PKBA#]� �@components/com_convertforms/models/forms/fields/servicelists.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); class JFormFieldServiceLists extends JFormFieldText { /** * Method to get a list of options for a list input. * * @return array An array of JHtml options. */ protected function getInput() { $this->addMedia(); return implode(" ", array( parent::getInput(), '<button type="button" class="btn btn-secondary viewLists"> <span class="icon-loop"></span> Lists </button> <ul class="cflists"></ul>' )); } /** * Adds field's JavaScript and CSS files to the document */ private function addMedia() { JHtml::stylesheet('com_convertforms/servicelists.css', ['relative' => true, 'version' => 'auto']); JHtml::script('com_convertforms/servicelists.js', ['relative' => true, 'version' => 'auto']); } }PKBA#] ��!995components/com_convertforms/models/forms/campaign.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset addfieldpath="plugins/system/nrframework/fields"></fieldset> <fieldset name="main" addfieldpath="administrator/components/com_convertforms/models/forms/fields"> <field name="name" type="text" label="NR_NAME" description="COM_CONVERTFORMS_CAMPAIGNS_NAME_DESC" class="input-xlarge" required="true" /> <field name="state" type="list" label="JSTATUS" description="NR_FIELD_STATE_DESC" class="chzn-color-state" size="1" default="1"> <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="service" type="cfservices" label="COM_CONVERTFORMS_CHOOSE_SERVICE" description="COM_CONVERTFORMS_CAMPAIGN_SYNC_DESC" class="chzn-color-state"> </field> <field name="id" type="hidden" label="JGLOBAL_FIELD_ID_LABEL" description="JGLOBAL_FIELD_ID_DESC" default="0" readonly="true" class="readonly" /> </fieldset> </form>PKBA#]�9>>?components/com_convertforms/models/forms/export_submissions.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset name="submission" addfieldpath="plugins/system/nrframework/fields"> </fieldset> <fieldset name="submission" addfieldpath="administrator/components/com_convertforms/models/forms/fields/"> <field name="filter_form_id" type="convertforms" label="COM_CONVERTFORMS_FORM" description="COM_CONVERTFORMS_FORM" required="true"> </field> <field name="filter_search" type="text" label="COM_CONVERTFORMS_FILTER_SEARCH" description="COM_CONVERTFORMS_FILTER_SEARCH_DESC" /> <field name="filter_period" type="list" label="COM_CONVERTFORMS_PERIOD" default=""> <option value="">NR_ANY</option> <option value="today">COM_CONVERTFORMS_TODAY</option> <option value="yesterday">COM_CONVERTFORMS_YESTERDAY</option> <option value="this_week">COM_CONVERTFORMS_THIS_WEEK</option> <option value="this_month">COM_CONVERTFORMS_THIS_MONTH</option> <option value="this_year">COM_CONVERTFORMS_THIS_YEAR</option> <option value="last_week">COM_CONVERTFORMS_LAST_WEEK</option> <option value="last_month">COM_CONVERTFORMS_LAST_MONTH</option> <option value="last_year">COM_CONVERTFORMS_LAST_YEAR</option> <option value="daterange">COM_CONVERTFORMS_DATE_RANGE</option> </field> <field name="filter_created_from" type="calendar" label="COM_CONVERTFORMS_START_DATE" hint="COM_CONVERTFORMS_START_DATE" format="%Y-%m-%d" showon="filter_period:daterange" class="input-medium" /> <field name="filter_created_to" type="calendar" label="COM_CONVERTFORMS_END_DATE" hint="COM_CONVERTFORMS_END_DATE" format="%Y-%m-%d" showon="filter_period:daterange" /> <field name="filter_state" type="status" label="State" default="1" /> <field name="export_type" type="list" label="Export as" default="csv"> <option value="csv">CSV</option> <option value="json">JSON</option> </field> <field name="advanced" type="nrtoggle" label="Advanced options" /> <field name="limit" type="list" label="Batch" default="10000" showon="advanced:1"> <option value="1000">1,000</option> <option value="5000">5,000</option> <option value="10000">10,000</option> <option value="30000">30,000</option> <option value="50000">50,000</option> </field> <!-- <field name="state" type="status" label="JSTATE" showon="advanced:1"> <option value="">JOPTION_SELECT_PUBLISHED</option> </field> --> </fieldset> </form>PKBA#]D����!�!+components/com_convertforms/models/form.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla modelform library jimport('joomla.application.component.modeladmin'); /** * Item Model */ class ConvertFormsModelForm extends JModelAdmin { /** * Returns a reference to the a Table object, always creating it. * * @param type The table type to instantiate * @param string A prefix for the table class name. Optional. * @param array Configuration array for model. Optional. * @return JTable A database object * @since 2.5 */ public function getTable($type = 'Form', $prefix = 'ConvertFormsTable', $config = array()) { return JTable::getInstance($type, $prefix, $config); } /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * @return mixed A JForm object on success, false on failure * @since 2.5 */ public function getForm($data = array(), $loadData = true) { // Get the form. $form = $this->loadForm('com_convertforms.form', 'form', array('control' => 'jform', 'load_data' => $loadData)); if (empty($form)) { return false; } return $form; } protected function preprocessForm(Joomla\CMS\Form\Form $form, $data, $group = 'content') { $files = array( "form_design" ); foreach ($files as $key => $value) { $form->loadFile($value, false); } // Call all ConvertForms plugins JPluginHelper::importPlugin('convertforms'); // load translation strings $this->loadTranslations(); parent::preprocessForm($form, $data, $group); } /** * Enqueues translations for the back-end * * @return void */ private function loadTranslations() { JText::script('COM_CONVERTFORMS_SUBMISSION_ID'); JText::script('COM_CONVERTFORMS_SUBMISSION_DATE'); JText::script('COM_CONVERTFORMS_SUBMISSION_USER_ID'); JText::script('COM_CONVERTFORMS_SUBMISSION_CAMPAIGN_ID'); JText::script('COM_CONVERTFORMS_SUBMISSION_FORM_ID'); JText::script('COM_CONVERTFORMS_SUBMISSION_VISITOR_ID'); JText::script('COM_CONVERTFORMS_SUBMISSIONS_COUNT'); JText::script('COM_CONVERTFORMS_ALL_FIELDS'); JText::script('COM_CONVERTFORMS_ALL_FIELDS_NO_LABELS'); JText::script('COM_CONVERTFORMS_ALL_FILLED_ONLY_FIELDS'); } /** * Prepare form fieldsets by tab into an array * * @return array */ public function getTabs() { $form = $this->getForm(); // Tabs $tabs = array( "fields" => array( "label" => "COM_CONVERTFORMS_FIELDS", "icon" => "icon-list-2" ), "design" => array( "label" => "COM_CONVERTFORMS_DESIGN", "icon" => "icon-picture" ), "behavior" => array( "label" => "COM_CONVERTFORMS_BEHAVIOR", "icon" => "icon-options" ), "conversion" => array( "label" => "COM_CONVERTFORMS_SUBMISSION", "icon" => "icon-generic" ) ); foreach ($tabs as $key => $tab) { $tabs[$key]["fields"] = $this->getFieldsetbyTab($form, $key); } return $tabs; } /** * Return form fieldsets by tab attribute * * @param JForm $form The form * @param string $tab The tab name * * @return array Found fieldsets */ private function getFieldsetbyTab($form, $tab) { $fieldsets = $form->getXML()->fieldset; $found = array(); foreach ($fieldsets as $key => $fieldset) { if ($tab == (string) $fieldset["tab"]) { $found[] = $fieldset; } } return $found; } public function getItem($pk = null) { if ($item = parent::getItem($pk)) { $params = $item->params; if (is_array($params) && count($params)) { foreach ($params as $key => $value) { if (!isset($item->$key) && !is_object($value)) { $item->$key = $value; } } unset($item->params); } } return $item; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. */ protected function loadFormData() { // Check the session for previously entered form data. $data = JFactory::getApplication()->getUserState('com_convertforms.edit.form.data', array()); if (!empty($data)) { $params = json_decode($data['params'], true); $data = array_merge($data, $params); unset($data['params']); return $data; } // Load existing form template if ($template = JFactory::getApplication()->input->get('template', null)) { return ConvertForms\Helper::loadFormTemplate($template); } if (empty($data)) { $data = $this->getItem(); if (is_null($data->name)) { $data->name = JText::_('COM_CONVERTFORMS_UNTITLED_BOX'); } } return $data; } /** * Method to save the form data. * * @param array The form data. * * @return boolean True on success. * @since 1.6 */ public function save($data) { $params = json_decode($data['params'], true); if (is_null($params)) { $params = array(); } // Validate field options foreach ($params['fields'] as $key => &$field) { if (!isset($field['type'])) { continue; } $class = ConvertForms\FieldsHelper::getFieldClass($field['type']); if (!method_exists($class, 'onBeforeFormSave')) { continue; } if (!$class->onBeforeFormSave($this, $params, $field)) { return false; } } $data['params'] = json_encode($params); return parent::save($data); } /** * Method to validate form data. */ public function validate($form, $data, $group = null) { // Prevent saving form with an empty name if (empty($data["name"])) { $data["name"] = JText::_("COM_CONVERTFORMS_UNTITLED_BOX"); } $newdata = array(); $params = array(); $this->_db->setQuery('SHOW COLUMNS FROM #__convertforms'); $dbkeys = $this->_db->loadObjectList('Field'); $dbkeys = array_keys($dbkeys); foreach ($data as $key => $val) { if (in_array($key, $dbkeys)) { $newdata[$key] = $val; } else { $params[$key] = $val; } } $newdata['params'] = json_encode($params); return $newdata; } /** * Method to copy an item * * @access public * @return boolean True on success */ public function copy($id) { $item = $this->getItem($id); unset($item->_errors); $item->id = 0; $item->published = 0; $item->name = JText::sprintf('NR_COPY_OF', $item->name); $item = $this->validate(null, (array) $item); return ($this->save($item)); } } PKBA#]�a!w\\/components/com_convertforms/models/campaign.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // import Joomla modelform library jimport('joomla.application.component.modeladmin'); /** * Campaign Model Class */ class ConvertFormsModelCampaign extends JModelAdmin { /** * Returns a reference to the a Table object, always creating it. * * @param type The table type to instantiate * @param string A prefix for the table class name. Optional. * @param array Configuration array for model. Optional. * @return JTable A database object * @since 2.5 */ public function getTable($type = 'Campaign', $prefix = 'ConvertFormsTable', $config = array()) { return JTable::getInstance($type, $prefix, $config); } /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * @return mixed A JForm object on success, false on failure * @since 2.5 */ public function getForm($data = array(), $loadData = true) { // Get the form. $form = $this->loadForm('com_convertforms.campaign', 'campaign', array('control' => 'jform', 'load_data' => $loadData)); if (empty($form)) { return false; } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. */ protected function loadFormData() { // Check the session for previously entered form data. $data = JFactory::getApplication()->getUserState('com_convertforms.edit.campaign.data', array()); if (empty($data)) { $data = $this->getItem(); } return $data; } /** * Method to validate form data. */ public function validate($form, $data, $group = null) { $newdata = array(); $params = array(); $this->_db->setQuery('SHOW COLUMNS FROM #__convertforms_campaigns'); $dbkeys = $this->_db->loadObjectList('Field'); $dbkeys = array_keys($dbkeys); foreach ($data as $key => $val) { if (in_array($key, $dbkeys)) { $newdata[$key] = $val; } else { $params[$key] = $val; } } $newdata['params'] = json_encode($params); return $newdata; } /** * [getItem description] * * @param [type] $pk [description] * * @return [type] [description] */ public function getItem($pk = null) { if ($item = parent::getItem($pk)) { $params = $item->params; if (is_array($params) && count($params)) { foreach ($params as $key => $value) { if (!isset($item->$key) && !is_object($value)) { $item->$key = $value; } } unset($item->params); } } return $item; } /** * Method to copy an item * * @access public * @return boolean True on success */ function copy($id) { $item = $this->getItem($id); unset($item->_errors); $item->id = 0; $item->published = 0; $item->name = JText::sprintf('NR_COPY_OF', $item->name); $item = $this->validate(null, (array) $item); return ($this->save($item)); } } PKBA#]|:<�qq0components/com_convertforms/models/campaigns.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); class ConvertFormsModelCampaigns extends JModelList { /** * Constructor. * * @param array An optional associative array of configuration settings. * * @see JController */ public function __construct($config = array()) { if (empty($config['filter_fields'])) { $config['filter_fields'] = array( 'id', 'a.id', 'state', 'a.state', 'created', 'a.created', 'search', 'ordering', 'a.ordering', 'service', 'a.service', 'name','a.name', 'leads', 'issues' ); } parent::__construct($config); } /** * Method to auto-populate the model state. * * This method should only be called once per instantiation and is designed * to be called on the first call to the getState() method unless the model * configuration flag to ignore the request is set. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 3.7.0 */ protected function populateState($ordering = 'a.id', $direction = 'desc') { // List state information. parent::populateState($ordering, $direction); } /** * Method to build an SQL query to load the list data. * * @return string An SQL query */ protected function getListQuery() { // Create a new query object. $db = JFactory::getDBO(); $query = $db->getQuery(true); // Select some fields from the item table $query ->select('a.*') ->from('#__convertforms_campaigns a'); // Filter State $filter = $this->getState('filter.state'); if (is_numeric($filter)) { $query->where('a.state = ' . ( int ) $filter); } else if ($filter == '') { $query->where('( a.state IN (0,1,2))'); } // Filter the list over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $query->where('a.id = ' . ( int ) substr($search, 3)); } else { $search = $db->quote('%' . $db->escape($search, true) . '%'); $query->where( '( `name` LIKE ' . $search . ' )' ); } } // Confirmed Total Leads $query->select(' (select count(c.id) from #__convertforms_conversions as c where c.campaign_id = a.id) as leads' ); // Add the list ordering clause. $orderCol = $this->state->get('list.ordering', 'a.id'); $orderDirn = $this->state->get('list.direction', 'desc'); $query->order($db->escape($orderCol . ' ' . $orderDirn)); return $query; } /** * [getItems description] * * @return object */ public function getItems() { $items = parent::getItems(); foreach ($items as $key => $item) { if (!$item->params) { continue; } $params = json_decode($item->params); $items[$key] = (object) array_merge((array) $item, (array) $params); unset($items[$key]->params); } return $items; } }PKBA#]:��sQsQ1components/com_convertforms/models/conversion.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Filter\InputFilter; use ConvertForms\Form; use ConvertForms\Helper; use ConvertForms\FieldsHelper; defined('_JEXEC') or die('Restricted access'); // import Joomla modelform library jimport('joomla.application.component.modeladmin'); /** * Conversion Model Class */ class ConvertFormsModelConversion extends JModelAdmin { /** * The database object * * @var object */ private $db; /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @see JModelLegacy * @since 1.6 */ public function __construct($config = array()) { parent::__construct($config); $this->db = JFactory::getDbo(); // Make sure our plugins are loaded. Without this line, the PDF plugin won't be able to catch the onContentAfterSave event. JPluginHelper::importPlugin('convertformstools'); } /** * Returns a reference to the a Table object, always creating it. * * @param type The table type to instantiate * @param string A prefix for the table class name. Optional. * @param array Configuration array for model. Optional. * @return JTable A database object * @since 2.5 */ public function getTable($type = 'Conversion', $prefix = 'ConvertFormsTable', $config = array()) { return JTable::getInstance($type, $prefix, $config); } /** * Allows preprocessing of the JForm object. * * @param JForm $form The form object * @param array $data The data to be merged into the form object * @param string $group The plugin group to be executed * * @return void * * @since 3.6.1 */ protected function preprocessForm(Joomla\CMS\Form\Form $form, $data, $group = 'content') { if (!isset($data->params)) { return parent::preprocessForm($form, $data, $group); } // Ensure the form binds the data regardless the letter case of the field's name. // We should not rely on the field's name. Instead we need to switch over to field's IDs instead. $data->params = array_change_key_case($data->params); // @todo - What we do here is somehow a joke. We should consider moving the logic of preparing each field to the respective field class in the namespace. $data_ = clone $data; $this->prepare($data_); // Add form custom fields to form $fields = []; foreach ($data_->prepared_fields as $key => $field) { $type = $field->options->get('type'); // Map of fields types that need to be transformed in order to be recognized by the XML parser. $transformFields = [ 'hidden' => 'text', 'currency' => 'NR_Currencies', 'country' => 'NR_Geo', 'checkbox' => 'checkboxes', 'dropdown' => 'list', 'fileupload' => 'textlist', 'confirm' => $field->options->get('confirm_type') ]; if ($type == 'fileupload') { $limit_files = $field->options->get('limit_files'); if (!isset($limit_files) || (isset($limit_files) && $limit_files == '1')) { $transformFields['fileupload'] = 'text'; // In case the previous multiple field is turn into a single field, we need to transform the value from array to string too. if (is_array($data->params[$key])) { $data->params[$key] = implode(',', $data->params[$key]); } } } if (array_key_exists($type, $transformFields)) { $type = $transformFields[$type]; } // Radio fields doesn't accept Array as a value and we need to transform it into a string. if (in_array($type, ['radio'])) { if (isset($data->params[$key])) { $data->params[$key] = implode('', (array) $data->params[$key]); } } // Create the field $label = $field->class->getLabel(); $fld = new SimpleXMLElement('<field/>'); $fld->addAttribute('name', $key); $fld->addAttribute('type', $type); $fld->addAttribute('label', $label); $fld->addAttribute('hint', $field->options->get('placeholder', $label)); $fld->addAttribute('description', $fld->attributes()->hint); $fld->addAttribute('class', 'input-xlarge'); $fld->addAttribute('rows', 10); // Used for textarea inputs $fld->addAttribute('filter', $field->options->get('filter', 'safehtml')); if ($type == 'editor') { $fld->addAttribute('editor', $field->options->get('editor')); } // Define options to list-based fields if (in_array($type, ['list', 'radio', 'checkboxes']) && $choices = $field->class->getOptions()) { if ($type == 'list' && $hint = $field->options->get('placeholder')) { array_unshift($choices, [ 'label' => trim($hint), 'value' => '', 'selected' => true ]); } foreach ($choices as $choice) { $option = $fld->addChild('option', htmlspecialchars($choice['label'])); $option->addAttribute('value', strip_tags($choice['value'])); } } // Get field's XML $fields[] = str_replace('<?xml version="1.0"?>', '', $fld->asXml()); } $form->setField(new SimpleXMLElement(' <fieldset name="params"> <fields name="params"> ' . implode('', $fields) . ' </fields> </fieldset> ')); parent::preprocessForm($form, $data, $group); } /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * @return mixed A JForm object on success, false on failure * @since 2.5 */ public function getForm($data = array(), $loadData = true) { // Get the form. $form = $this->loadForm('com_convertforms.conversion', 'conversion', array('control' => 'jform', 'load_data' => $loadData)); if (empty($form)) { return false; } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. */ protected function loadFormData() { // Check the session for previously entered form data. $data = JFactory::getApplication()->getUserState('com_convertforms.edit.conversion.data', array()); if (empty($data)) { $data = $this->getItem(null, false); } return $data; } /** * Validate data before saving * * @param object $form The form to validate * @param object $data The data to validate * @param string $group * * @return array The validated data */ public function validate($form, $data, $group = null) { // Validate conversion edited via the backend if (JFactory::getApplication()->isClient('administrator')) { return parent::validate($form, $data, $group); } // Make sure we have a valid Form data if (!isset($data['cf']) || empty($data['cf'])) { throw new Exception('No submission data found'); } // Make sure we have a valid Form ID passed if (!isset($data['cf']['form_id']) || !$formid = (int) $data['cf']['form_id']) { throw new Exception('Form ID is either missing or invalid'); } // Let the user manipulate the post data before saved into the database. // @todo - Move PHP Scripts logic to a separate plugin. $payload = ['post' => &$data['cf']]; Form::runPHPScript($formid, 'formprocess', $payload); // Get form from payload or load a new instance $form = isset($payload['form']) ? $payload['form'] : Form::load($formid); $error_message = null; $result = JFactory::getApplication()->triggerEvent('onConvertFormsSubmissionValidate', [&$data['cf'], &$error_message, $form]); if (in_array(false, $result, true)) { throw new \Exception(is_null($error_message) ? 'Error' : $error_message); } // Honeypot check if (isset($data['cf']['hnpt']) && !empty($data['cf']['hnpt'])) { throw new Exception('Honeypot field triggered'); die(); } // Make sure the right form is loaded if (is_null($form['id'])) { throw new Exception('Unknown Form'); } // Initialize the object that is going to be saved in the database $newData = [ 'form_id' => $formid, 'campaign_id' => (int) $form['params']['campaign'], 'state' => isset($form['params']['submission_state']) ? $form['params']['submission_state'] : 1 ]; $overrides = isset($data['overrides']) ? json_decode($data['overrides']) : []; // Let's validate submitted data foreach ($form['fields'] as $key => $form_field) { $field_name = isset($form_field['name']) ? $form_field['name'] : null; $field_class = FieldsHelper::getFieldClass($form_field['type'], $form_field, $data); $user_value = (!is_null($field_name) && isset($data['cf'][$field_name])) ? $data['cf'][$field_name] : null; // Check if the field must be ignored and not be validated. Eg: hidden by conditional logic. if (isset($overrides->ignore) && is_array($overrides->ignore) && in_array($form_field['key'], $overrides->ignore)) { continue; } // Validate and Filter user value. If an error occurs the submission aborts with an exception shown in the form $field_class->validate($user_value); // Skip unknown fields or fields with an empty value if (!$field_name || $user_value == '') { continue; } $newData['params'][$field_name] = $user_value; } return $newData; } /** * Create a new conversion based on the post data. * * @return object The new conversion row object */ public function createConversion($data) { JPluginHelper::importPlugin('convertforms'); JPluginHelper::importPlugin('convertformstools'); JPluginHelper::importPlugin('system'); // Validate data $data = $this->validate(null, $data); /** * This event is rather useful for the following reasons: * * 1. It allows us to make modifications to the submission after it passes the validation checks. * 2. It allows us to access and modify submission properties such as 'state' and 'form_id'. Eg: Store all submissions unpublished by default. * * We may support this event in the PHP Scripts section too. */ JFactory::getApplication()->triggerEvent('onConvertFormsSubmissionBeforeSave', [&$data]); $form_data = Form::load($data['form_id']); $submission = null; // If we are not saving the data to the database, mock the submission in order to be used as expected. if (isset($form_data['params']['save_data_to_db']) && $form_data['params']['save_data_to_db'] == '0') { $submission = (object) array_merge($form_data, $data); $submission->id = 'unsaved_submission_' . uniqid(); $submission->user_id = 0; $submission->created = JFactory::getDate()->toSql(); $submission->modified = JFactory::getDbo()->getNullDate(); $this->prepareItem($submission); JPluginHelper::importPlugin('convertforms'); JPluginHelper::importPlugin('convertformstools'); JFactory::getApplication()->triggerEvent('onConvertFormsConversionAfterSave', [$submission, $this, 1]); } else { // JSON_UNESCAPED_UNICODE encodes multibyte unicode characters literally. // Without: Τάσος => \u03a4\u03ac\u03c3\u03bf\u03c2 // With: Τάσος => Τάσος $data['params'] = json_encode($data['params'], JSON_UNESCAPED_UNICODE); // Everything seems fine. Let's save data to the database. if (!$this->save($data)) { throw new Exception($this->getError()); } $submission = $this->getItem(); } // Run user's PHP script after the form has been processed, stored into the database and all addons have run. // @todo - Move PHP Scripts logic into a separate plugin. $payload = ['submission' => &$submission]; Form::runPHPScript($data['form_id'], 'afterformsubmission', $payload); /** * Why this event was created: * * - Due to the fact that we cannot hook into "onConvertFormsSubmissionAfterSave" and manipulate the $submission object. * If we try to do so, the updated $submission wont find its way to the other listeners hooked to this event. * * When does this event run: * * - Right after the submission has been saved to the database. * - Before other plugins hook to run their own code after the submission has been processed. * * When it should be used: * * - When we want to modify the submission object just before other listeners hook into "onConvertFormsSubmissionAfterSave" * such as Email Notifications so they will get the updated $submission object. * * Example Use Case: * * - If we want to rename the uploaded files and use add the submission id to the filename, we must listen to this event, * update the $submission object, rename the file, update the database and emails will use the updated file data. */ JFactory::getApplication()->triggerEvent('onConvertFormsSubmissionAfterSavePrepare', [&$submission]); /** * When does this event run: * * - At the end of the submission process, after the $submission object has been finalized and its ready to be given * out to plugins/code that hook to this event. * * When it should be used: * * - We dont want to modify the $submission data and plan to execute our code after the form has been submitted * successfully. * * Example Use Case: * - Send Email Notifications * - Submit data to Campaigns */ JFactory::getApplication()->triggerEvent('onConvertFormsSubmissionAfterSave', [&$submission]); return $submission; } /** * Get a conversion item * * @param interger $pk The conversion row primary key * @param bool $prepare Whether to prepare the submission fields. * * @return object The conversion object */ public function getItem($pk = null, $prepare = true) { if (!$item = parent::getItem($pk)) { return; } $this->prepareItem($item, $prepare); return $item; } /** * Prepares the submission item. * * @param object $item The submission item. * @param bool $prepare Whether to prepare the submission fields. * * @return void */ protected function prepareItem(&$item, $prepare = true) { JPluginHelper::importPlugin('convertformstools'); // There's no need to change the timezone on the backend as the date properties are mainly used in the Calendar fields // which are already modifying the timezone offset with the filter="user_utc" property. if (JFactory::getApplication()->isClient('site')) { $item->created = Helper::formatDate($item->created); $item->modified = Helper::formatDate($item->modified); } if ($item->user_id) { $item->user_name = JFactory::getUser($item->user_id)->name; } // Load Form & Campaign Model JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/models', 'ConvertFormsModel'); $modelForm = JModelLegacy::getInstance('Form', 'ConvertFormsModel', ['ignore_request' => true]); $modelCampaign = JModelLegacy::getInstance('Campaign', 'ConvertFormsModel', ['ignore_request' => true]); $item->form = $modelForm->getItem($item->form_id); $item->campaign = $modelCampaign->getItem($item->campaign_id); // On J4 we get infinite loop if we inject the prepared fields to $data. // Thus, we don't prepare the submission on this method in order to not pollute the $data object. // Instead we use the preprocessForm() method with a cloned object. if ($prepare) { $this->prepare($item); } return $item; } /** * Prepares the submission by adding the submitted fields values. * * @param object $submission * * @return void */ public function prepare(&$submission) { if (!$submission || is_null($submission->id)) { return; } // Note: Form may be already available in the $submission object. if (!$form = Form::load($submission->form_id, false, true)) { return; } $fields = []; // Make sure we're manipualating an array. $submission_params = array_change_key_case((array) $submission->params); foreach ($form['fields'] as $field) { // Skip fields with no name like reCAPTCHA, HTML e.t.c if (!isset($field['name'])) { continue; } $field_name = strtolower($field['name']); $submitted_value = isset($submission_params[$field_name]) ? $submission_params[$field_name] : ''; // Make sure the type of field is valid if (!$class = FieldsHelper::getFieldClass($field['type'], $field)) { continue; } $prepared_field = (object) [ 'options' => new Registry($field), 'class' => $class, 'label' => isset($field['label']) && !empty($field['label']) ? JText::_($field['label']) : $field['name'], 'value' => $class->prepareValue($submitted_value), 'value_html' => $class->prepareValueHTML($submitted_value), 'value_raw' => $submitted_value ]; $fields[$field_name] = $prepared_field; } // @todo - Stop using 'prepare_fields' property and switch over to the standard 'fields' property. $submission->prepared_fields = $fields; } }PKBA#]g���uBuB2components/com_convertforms/models/conversions.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); /** * Conversions Class */ class ConvertFormsModelConversions extends JModelList { /** * Constructor. * * @param array An optional associative array of configuration settings. * * @see JController */ public function __construct($config = array()) { if (empty($config['filter_fields'])) { $config['filter_fields'] = array( 'id', 'a.id', 'state', 'a.state', 'created', 'a.created', 'search', 'campaign_id', 'a.campaign_id', 'form_id', 'a.form_id', 'created_from', 'created_to', 'columns', 'a.columns', 'period', 'a.period' ); } parent::__construct($config); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.id', $direction = 'desc') { // Get the previously set form ID before populating the State. $session = JFactory::getSession(); $registry = $session->get('registry'); $previous_form_id = $registry->get($this->context . '.filter.form_id'); // List state information. parent::populateState($ordering, $direction); $state = $this->getUserStateFromRequest($this->context . '.filter.state', 'filter_state'); $this->setState('filter.state', $state); $formID = $this->getUserStateFromRequest($this->context . '.filter.form_id', 'filter_form_id', $this->getLastFormID()); $this->setState('filter.form_id', $formID); $campaignID = $this->getUserStateFromRequest($this->context . '.filter.campaign_id', 'filter_campaign_id'); $this->setState('filter.campaign_id', $campaignID); $period = $this->getUserStateFromRequest($this->context . '.filter.period', 'filter_period'); $this->setState('filter.period', $period); $columns = $this->getUserStateFromRequest($this->context . '.filter.columns', 'filter_columns'); $columns = is_array($columns) ? array_filter($columns) : (array) $columns; $sameForm = !is_null($previous_form_id) ? $previous_form_id == $formID : true; // Get form fields from the database when the user has switched to another form using // the search filters or when the filters frorm has been reset. if (!$sameForm || empty($columns)) { $columns = \ConvertForms\Helper::getColumns($formID); // Pre-select the first 8 only $columns = array_slice($columns, 0, 8); } $this->setState('filter.columns', $columns); } /** * Allows preprocessing of the JForm object. * * @param JForm $form The form object * @param array $data The data to be merged into the form object * @param string $group The plugin group to be executed * * @return void * * @since 3.6.1 */ protected function preprocessForm(Joomla\CMS\Form\Form $form, $data, $group = 'content') { if (!isset($data->filter)) { $data->filter = []; } else { if (is_object($data->filter)) { $data->filter = (array) $data->filter; } } $data->filter['form_id'] = $this->getState('filter.form_id'); $columns = $this->getState('filter.columns'); $data->filter['columns'] = $columns; parent::preprocessForm($form, $data, $group); } /** * Method to build an SQL query to load the list data. * * @return string An SQL query */ public function getListQuery() { // Create a new query object. $db = JFactory::getDBO(); $query = $db->getQuery(true); // Select some fields from the item table $query ->select('a.*') ->from('#__convertforms_conversions a'); // Filter State $filter = $this->getState('filter.state'); if ($filter !== 'skip') { if (is_numeric($filter)) { $query->where($db->quoteName('a.state') . ' = ' . (int) $filter); } if (is_array($filter)) { $query->where('(' . $db->quoteName('a.state') . ' IN (' . implode(',', $filter) . '))'); } if (is_null($filter) || $filter == '') { $query->where('(a.state = 0 OR a.state = 1)'); } } // Join Forms Table if ($this->getState('filter.join_forms') != 'skip') { $query->select("c.name as form_name"); $query->join('LEFT', $db->quoteName('#__convertforms', 'c') . ' ON (' . $db->quoteName('a.form_id') . ' = ' . $db->quoteName('c.id') . ')'); } // Filter the list over the search string if set. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $ids = str_replace('id:', '', $search); $ids = array_map('trim', explode(',', $ids)); $query->where('a.id IN (' . implode(', ', (array) $ids) . ')'); } else { $query->where('a.params LIKE "%' . $search . '%" '); } } // Filter by ID if ($id = $this->getState('filter.id')) { $query->where('a.id IN (' . implode(', ', (array) $id) . ')'); } // Filter by Campaign ID if ($campaign_id = $this->getState('filter.campaign_id')) { $query->where('a.campaign_id IN (' . implode(', ', (array) $campaign_id) . ')'); } // Filter Form if ($form_id = $this->getState('filter.form_id')) { $query->where('a.form_id = ' . $form_id); } // Period if ($period = $this->getState('filter.period')) { switch ($period) { case 'today': $date_from = 'now'; $date_to = 'now'; break; case 'yesterday': $date_from = '-1 day'; $date_to = '-1 day'; break; case 'this_week': $date_from = 'monday this week'; $date_to = 'sunday this week'; break; case 'this_month': $date_from = 'first day of this month'; $date_to = 'last day of this month'; break; case 'this_year': $date_from = 'first day of January'; $date_to = 'last day of December'; break; case 'last_week': $date_from = 'monday previous week'; $date_to = 'sunday previous week'; break; case 'last_month': $date_from = 'first day of previous month'; $date_to = 'last day of previous month'; break; case 'last_year': $date_from = 'first day of January ' . (date('Y') - 1); $date_to = 'last day of December ' . (date('Y') - 1); break; default: $date_from = $this->getState('filter.created_from'); $date_to = $this->getState('filter.created_to'); break; } // MySQL optimizer won't use an index once a column in the WHERE clause is wrapped with a function. // So we should never never never use MONTH(), YEAR(), DATE() methods again if we do care about performance. if ($date_from) { $query->where($db->quoteName('a.created') . ' >= ' . $db->q(JHtml::date($date_from, 'Y-m-d 00:00:00'))); } if ($date_to) { $query->where($db->quoteName('a.created') . ' <= ' . $db->q(JHtml::date($date_to, 'Y-m-d 23:59:59'))); } } // Filter User $filter_user = $this->getState('filter.user_id'); if ($filter_user != '') { if (is_numeric($filter_user)) { $query->where($db->quoteName('a.user_id') . ' = ' . $filter_user); } else { $query->where('(' . $db->quoteName('a.state') . ' IN (' . $filter_user . '))'); } } // Add the list ordering clause. $orderCol = $this->state->get('list.ordering', 'a.id'); $orderDirn = $this->state->get('list.direction', 'desc'); $query->order($db->escape($orderCol . ' ' . $orderDirn)); return $query; } /** * Exports leads in CSV file * Leads can be exported by passing either row IDs or Campaign IDs * * @param array $ids Array of row IDs * @param array $campaign_ids Array of Campaign IDs * * @return void */ public function export($ids = array(), $campaign_ids = array(), $save_to = null) { // Increase memory size and execution time to prevent PHP errors on datasets > 20K set_time_limit(300); // 5 Minutes ini_set('memory_limit', '-1'); $filename = ''; if (is_array($ids) && count($ids)) { $this->setState('filter.id', $ids); } if (is_array($campaign_ids) && count($campaign_ids)) { $filename = '_Campaign' . $campaign_ids[0]; $this->setState('filter.state', 1); $this->setState('filter.campaign_id', $campaign_ids); } else { $this->setState('filter.state', 'skip'); } $this->setState('filter.join_campaigns', 'skip'); $this->setState('filter.join_forms', 'skip'); $rows = $this->getItems(); $this->prepareRowsForExporting($rows); $columns = array_keys($rows[0]); $filename = 'ConvertForms_Submissions_' . $filename . '_' . date('Y-m-d') . '.csv'; $excel_security = (bool) ConvertForms\Helper::getComponentParams()->get('excel_security', true); return $this->createCSV($rows, $columns, $excel_security, $filename, $save_to); } /** * Prepares rows with their custom fields for exporting * * @param object &$rows The rows object * * @return void */ private function prepareRowsForExporting(&$rows) { $columns = array( 'id', 'created', 'name', 'email' ); $rows_ = []; // Find custom fields per row foreach ($rows as $key => $row) { $rows_[$key]['id'] = $row->id; $rows_[$key]['created'] = (string) $row->created; foreach ($row->params as $pkey => $param) { $pkey = trim(strtolower($pkey)); if (strpos($pkey, 'sync_') !== false) { continue; } $value = is_array($param) ? implode(', ', $param) : $param; $rows_[$key][$pkey] = $value; if (!in_array($pkey, $columns)) { array_push($columns, $pkey); } } } $rowsNew = array(); // Fix rows based on columns foreach ($columns as $ckey => $column) { foreach ($rows_ as $rkey => $row) { $value = isset($row[$column]) ? $row[$column] : ''; // Remove newline characters to prevent the row from forcing a new line. We should integrate this fix in the Export class too. $value = str_replace(["\r\n", "\n", "\r"], ' ', $value); $rowsNew[$rkey][$column] = $value; } } $rows = $rowsNew; } /** * Create the CSV file * * CSV Injection info: https://vel.joomla.org/articles/2140-introducing-csv-injection * * @param array $rows CSV Rows to print * @param array $columns CSV Columns to print * @param boolean $excel_security If enabled, certain row values will be prefixed by a tab to avoid any CSV injection * * @return mixed */ public function createCSV($rows, $columns, $excel_security, $filename, $save_to = null) { $csvPath = is_null($save_to) ? 'php://output' : $save_to . $filename; if (!$save_to) { // Create the downloadable file $this->downloadFile($filename); ob_start(); } $output = fopen($csvPath, 'w'); // Support UTF-8 on Microsoft Excel fputs($output, "\xEF\xBB\xBF"); fputcsv($output, $columns); foreach ($rows as $key => $row) { // Prevent CSV Injection if ($excel_security) { foreach ($row as $rowKey => &$rowValue) { $firstChar = substr($rowValue, 0, 1); // Prefixe values starting with a =, +, - or @ by a tab character if (in_array($firstChar, array('=', '+', '-', '@'))) { $rowValue = ' ' . $rowValue; } } } fputcsv($output, $row); } fclose($output); if ($save_to) { return $csvPath; } echo ob_get_clean(); die(); } /** * Sets propert headers to document to force download of the file * * @param string $filename Filename * * @return void */ public function downloadFile($filename) { // disable caching $now = gmdate("D, d M Y H:i:s"); header("Expires: Tue, 03 Jul 2001 06:00:00 GMT"); header("Cache-Control: max-age=0, no-cache, must-revalidate, proxy-revalidate"); header("Last-Modified: {$now} GMT"); // force download header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); // disposition / encoding on response body header("Content-Disposition: attachment;filename={$filename}"); header("Content-Transfer-Encoding: binary"); } /** * [getItems description] * * @return object */ public function getItems() { if (!$items = parent::getItems()) { return []; }; JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/models', 'ConvertFormsModel'); $submission_model = JModelLegacy::getInstance('Conversion', 'ConvertFormsModel', ['ignore_request' => true]); foreach ($items as $key => $item) { $items[$key]->params = json_decode($item->params); $item->created = \NRFramework\Functions::applySiteTimezoneToDate($item->created); $submission_model->prepare($item); } return $items; } private function getLastFormID() { $model = JModelLegacy::getInstance('Forms', 'ConvertFormsModel', ['ignore_request' => true]); $model->setState('list.limit', 1); $model->setState('list.direction', 'asc'); $forms = $model->getItems(); return empty($forms) ? null : $forms[0]->id; } } PKBA#]�g��,components/com_convertforms/convertforms.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die('Restricted access'); // Load Framework if (!@include_once(JPATH_PLUGINS . '/system/nrframework/autoload.php')) { throw new RuntimeException('Novarain Framework is not installed', 500); } $app = JFactory::getApplication(); // Access check. if (!JFactory::getUser()->authorise('core.manage', 'com_convertforms')) { $app->enqueueMessage(JText::_('JERROR_ALERTNOAUTHOR'), 'error'); return; } use NRFramework\Functions; use NRFramework\Extension; // Load framework's and component's language files Functions::loadLanguage(); Functions::loadLanguage('com_convertforms'); Functions::loadLanguage('plg_system_convertforms'); // Initialize Convert Forms Library require_once JPATH_ADMINISTRATOR . '/components/com_convertforms/autoload.php'; // Check required extensions if (!Extension::pluginIsEnabled('nrframework')) { $app->enqueueMessage(JText::sprintf('NR_EXTENSION_REQUIRED', JText::_('COM_CONVERTFORMS'), JText::_('PLG_SYSTEM_NRFRAMEWORK')), 'error'); } if (!Extension::pluginIsEnabled('convertforms')) { $app->enqueueMessage(JText::sprintf('NR_EXTENSION_REQUIRED', JText::_('COM_CONVERTFORMS'), JText::_('PLG_SYSTEM_CONVERTFORMS')), 'error'); } if (!Extension::componentIsEnabled('ajax')) { $app->enqueueMessage(JText::sprintf('NR_EXTENSION_REQUIRED', JText::_('COM_CONVERTFORMS'), 'Ajax Interface'), 'error'); } // Load component's CSS/JS files ConvertForms\Helper::loadassets(); if (defined('nrJ4')) { JHtml::stylesheet('plg_system_nrframework/joomla4.css', ['relative' => true, 'version' => 'auto']); } else { JHtml::stylesheet('com_convertforms/joomla3.css', ['relative' => true, 'version' => 'auto']); } // Perform the Request task $controller = JControllerLegacy::getInstance('ConvertForms'); $controller->execute($app->input->get('task')); $controller->redirect();PKBA#]�t�YY3components/com_convertforms/ConvertForms/Helper.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); use NRFramework\Cache; use ConvertForms\Form; use Joomla\Registry\Registry; jimport('joomla.log.log'); class Helper { /** * Ensure same script are added once on the page * * @param string $styles The script code * * @return null on failure. */ public static function addScriptDeclarationOnce($script) { $hash = 'cf_script_' . md5($script); if (Cache::has($hash)) { return; } \JFactory::getDocument()->addScriptDeclaration($script); Cache::set($hash, true); } /** * Ensure same styles are added once on the page * * @param string $styles The CSS code * * @return null on failure. */ public static function addStyleDeclarationOnce($styles) { $hash = 'cf_styles_' . md5($styles); if (Cache::has($hash)) { return; } \JFactory::getDocument()->addStyleDeclaration($styles); Cache::set($hash, true); } /** * Check if current logged in user is authorised to view a resource. * * @param string $action * * @return void */ public static function authorise($action, $throw_exception = false) { $authorised = \JFactory::getUser()->authorise($action, 'com_convertforms'); if (!$authorised && $throw_exception) { throw new \JAccessExceptionNotallowed(\JText::_('JERROR_ALERTNOAUTHOR'), 403); } return $authorised; } /** * Trigger Error Event * * @param string $error The error message * @param string $category The error category * @param integer $form_id The form ID assosiated with the error * @param mixed $data Extra data related to the error occured * * @return void */ public static function triggerError($error, $category, $form_id, $data = null) { \JPluginHelper::importPlugin('convertforms'); \JFactory::getApplication()->triggerEvent('onConvertFormsError', [$error, $category, $form_id, $data]); } /** * Convert all applicable characters to HTML entities * * @param string $input The input string. * * @return string */ public static function escape($input) { if (!is_string($input)) { return $input; } // Convert all HTML tags to HTML entities. $input = htmlspecialchars($input, ENT_NOQUOTES, 'UTF-8'); // We do not need any Smart Tag replacements take place here, so we need to escape curly brackets too. $input = str_replace(['{', '}'], ['{', '}'], $input); // Respect newline characters, by converting them to <br> tags. $input = nl2br($input); return $input; } public static function getComponentParams() { $hash = 'cfComponentParams'; if (Cache::has($hash)) { return Cache::get($hash); } return Cache::set($hash, \JComponentHelper::getParams('com_convertforms')); } public static function getFormLeadsCount($form) { $hash = 'formLeadsCount' . $form; if (Cache::has($hash)) { return Cache::get($hash); } if (!$form || $form == 0) { return 0; } $db = \JFactory::getDBO(); $query = $db->getQuery(true); $query ->select('count(*)') ->from('#__convertforms_conversions') ->where('form_id = ' . $form); $db->setQuery($query); return Cache::set($hash, $db->loadResult()); } /** * Renders form template selection modal to the document * * @return void */ public static function renderSelectTemplateModal() { echo \JHtml::_('bootstrap.renderModal', 'cfSelectTemplate', array( 'url' => 'index.php?option=com_convertforms&view=templates&tmpl=component', 'title' => \JText::_('COM_CONVERTFORMS_TEMPLATES_SELECT'), 'closeButton' => true, 'height' => '100%', 'width' => '100%', 'modalWidth' => '70', 'bodyHeight' => '70', 'footer' => ' <a href="' . \JURI::base() . 'index.php?option=com_convertforms&view=form&layout=edit" class="btn btn-primary"> <span class="icon-new"></span> ' . \JText::_('COM_CONVERTFORMS_TEMPLATES_BLANK') . ' </a> ' )); } /** * Writes the Not Found Items message * * @param string $view * * @return string */ public static function noItemsFound($view = 'submissions') { $html[] = '<span style="font-size:16px; position:relative; top:2px;" class="icon-smiley-sad-2"></span>'; $html[] = \JText::sprintf('COM_CONVERTFORMS_NO_RESULTS_FOUND', strtolower(\JText::_('COM_CONVERTFORMS_' . $view))); return implode(' ', $html); } /** * Get Visitor ID * * @return string */ public static function getVisitorID() { return \NRFramework\VisitorToken::getInstance()->get(); } /** * Returns campaigns list visitor is subscribed to * If the user is logged in, we try to get the campaigns by user's ID * Otherwise, the visitor cookie ID will be used instead * * @return array List of campaign IDs */ public static function getVisitorCampaigns() { $db = \JFactory::getDBO(); $query = $db->getQuery(true); $user = \JFactory::getUser(); $query ->select('campaign_id') ->from('#__convertforms_conversions') ->where('state = 1') ->group('campaign_id'); // Get submissions by user id if visitor is logged in if ($user->id) { $query->where('user_id = ' . (int) $user->id); } else { // Get submissions by Visitor Cookie if (!$visitorID = self::getVisitorID()) { return false; } $query->where('visitor_id = ' . $db->q($visitorID)); } $db->setQuery($query); return $db->loadColumn(); } /** * Returns an array with all available campaigns * * @return array */ public static function getCampaigns() { \JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/models'); $model = \JModelLegacy::getInstance('Campaigns', 'ConvertFormsModel', array('ignore_request' => true)); $model->setState('filter.state', 1); return $model->getItems(); } /** * Logs messages to log file * * @param string $msg The message * @param object $type The log type * * @return void */ public static function log($msg, $type = 'debug') { $debugIsEnabled = self::getComponentParams()->get('debug', false); if ($type == 'debug' && !$debugIsEnabled) { return; } $type = ($type == 'debug') ? \JLog::DEBUG : \JLog::ERROR; try { \JLog::add($msg, $type, 'com_convertforms'); } catch (\Throwable $th){ } } /** * Loads pre-made form template * * @param string $name The template name * * @return object */ public static function loadFormTemplate($name) { $form = JPATH_ROOT . '/media/com_convertforms/templates/' . $name . '.cnvf'; if (!\JFile::exists($form)) { return; } $content = file_get_contents($form); if (empty($content)) { return; } $item = json_decode($content, true); $item = $item[0]; $data = (object) array_merge((array) $item, (array) json_decode($item['params'])); $data->id = 0; $data->campaign = null; $data->fields = (array) $data->fields; return $data; } /** * Configure the Linkbar. * * @param string $vName The name of the active view. * * @return void */ public static function addSubmenu($vName) { $items = [ [ 'label' => 'NR_DASHBOARD', 'view' => 'convertforms', 'skip_auth' => true ], [ 'label' => 'COM_CONVERTFORMS_FORMS', 'view' => 'forms', ], [ 'label' => 'COM_CONVERTFORMS_CAMPAIGNS', 'view' => 'campaigns', ], [ 'label' => 'COM_CONVERTFORMS_SUBMISSIONS', 'view' => 'conversions', 'view_rule' => 'submissions' ], [ 'label' => 'COM_CONVERTFORMS_ADDONS', 'view' => 'addons', ] ]; foreach ($items as $item) { if (!isset($item['skip_auth']) && !self::authorise('convertforms.' . (isset($item['view_rule']) ? $item['view_rule'] : $item['view']) . '.manage')) { continue; } \JHtmlSidebar::addEntry(\JText::_($item['label']), 'index.php?option=com_convertforms&view=' . $item['view'], $item['view']); } } /** * Returns permissions * * @return object */ public static function getActions() { $user = \JFactory::getUser(); $result = new \JObject; $assetName = 'com_convertforms'; $actions = array( 'core.admin', 'core.manage', 'core.create', 'core.edit', 'core.edit.state', 'core.delete' ); foreach ($actions as $action) { $result->set($action, $user->authorise($action, $assetName)); } return $result; } /** * Prepares a form object for rendering * * @param Object $form The form object * * @return array The prepared form array */ public static function prepareForm($item) { $item['id'] = isset($item['id']) ? $item['id'] : 0; $classPrefix = 'cf'; // Replace variables $item = \ConvertForms\SmartTags::replace($item, null, $item['id']); $params = new Registry($item['params']); $item['params'] = $params; /* Box Classes */ $boxClasses = array( "convertforms", $classPrefix, $classPrefix . "-" . $params->get("imgposition"), $classPrefix . "-" . $params->get("formposition"), $params->get("hideform", true) ? $classPrefix . "-success-hideform" : null, $params->get("hidetext", false) ? $classPrefix . "-success-hidetext" : null, !$params->get("hidelabels", false) ? $classPrefix . "-hasLabels" : null, $params->get("centerform", false) ? $classPrefix . "-isCentered" : null, $params->get("classsuffix", null), $classPrefix . '-labelpos-' . $params->get('labelposition', 'top'), ); /* Box Styles */ $font = trim($params->get('font')); // Form HTML Attributes $item['boxattributes'] = implode(" ", array( 'id="' . $classPrefix . '_' . $item['id'] . '"', 'class="' . implode(" ", $boxClasses) . '"', ) ); // Main Image Checks $imageOption = $params->get("image"); if ($imageOption == '1') { $imageFile = Helper::cleanLocalImage($params->get('imagefile', '')); if (\JFile::exists(JPATH_SITE . '/' . $imageFile)) { $item['image'] = \JURI::root() . $imageFile; } } if ($imageOption == '2') { $item['image'] = $params->get("imageurl"); } // Image Container $item['imagecontainerclasses'] = implode(" ", array( (in_array($params->get("imgposition"), array("img-right", "img-left")) ? $classPrefix . "-col-medium-" . $params->get("imagesize", 6) : null), )); // Image $item['imagestyles'] = array( "width:" . ($params->get("imageautowidth", "auto") == "auto" ? "auto" : (int) $params->get("imagewidth", "500") . "px"), "left:". (int) $params->get("imagehposition", "0") . "px ", "top:". (int) $params->get("imagevposition", "0") . "px" ); $item['imageclasses'] = array( ($params->get("hideimageonmobile", false) ? "cf-hide-mobile" : "") ); // Form Container $item['formclasses'] = array( (in_array($params->get("formposition"), array("form-left", "form-right")) ? $classPrefix . "-col-large-" . $params->get("formsize", 6) : null), ); $item['formstyles'] = array( "background-color:" . $params->get("formbgcolor", "none") ); // Content $item['contentclasses'] = implode(" ", array( (in_array($params->get("formposition"), array("form-left", "form-right")) ? $classPrefix . "-col-large-" . (16 - $params->get("formsize", 6)) : null), )); // Text Container $item['textcontainerclasses'] = implode(" ", array( (in_array($params->get("imgposition"), array("img-right", "img-left")) ? $classPrefix . "-col-medium-" . (16 - $params->get("imagesize", 6)) : null), )); $textContent = trim($params->get("text", '')); $footerContent = trim($params->get("footer", '')); $item['textIsEmpty'] = empty($textContent); $item['footerIsEmpty'] = empty($footerContent); $item['hascontent'] = !$item['textIsEmpty'] || (bool) isset($item['image']) ? 1 : 0; // Prepare Fields $item['fields_prepare'] = \ConvertForms\FieldsHelper::prepare($item); // Load custom fonts into the document \NRFramework\Fonts::loadFont($font); return $item; } /** * Renders form by ID * * @param integer $id The form ID * * @return string The form HTML */ public static function renderFormById($id) { if (!$data = Form::load($id)) { return; } self::loadassets(true); return self::renderForm($data); } /** * Renders Form * * @param integer $formid The form id * * @return string The form HTML */ public static function renderForm($data) { $app = \JFactory::getApplication(); \JPluginHelper::importPlugin('convertforms'); \JPluginHelper::importPlugin('convertformstools'); // load translation strings self::loadTranslations(); // @todo - Move PHP Scripts logic into a separate plugin // Let user manipulate the form's settings by running their own PHP script $payload_1 = ['form' => &$data]; Form::runPHPScript($data['id'], 'formprepare', $payload_1); $app->triggerEvent('onConvertFormsFormBeforeRender', [&$data]); // Prepare form and fields $data = self::prepareForm($data); $html = self::layoutRender('form', $data); // Let user manipulate the form's HTML by running their own PHP script $payload_2 = [ 'formLayout' => &$html, 'form' => $data ]; Form::runPHPScript($data['id'], 'formdisplay', $payload_2); $app->triggerEvent('onConvertFormsFormAfterRender', [&$html, $data]); // Prevent user frustration by fixing broken images in the backend. // This is required since v2.8.0 where we no longer forces absolute URLs in the text editors. if ($app->isClient('administrator')) { $html = \NRFramework\URLHelper::relativePathsToAbsoluteURLs($html, null, false); } return $html; } /** * Enqueues translations for the front-end * * @return void */ private static function loadTranslations() { \JText::script('COM_CONVERTFORMS_INVALID_RESPONSE'); \JText::script('COM_CONVERTFORMS_INVALID_TASK'); } /** * Render HTML overridable layout * * @param string $layout The layout name * @param object $data The data passed to layout * * @return string The rendered HTML layout */ public static function layoutRender($layout, $data) { return \JLayoutHelper::render($layout, $data, null, ['debug' => false, 'client' => 1, 'component' => 'com_convertforms']); } /** * Loads components media files * * @param boolean $front * * @return void */ public static function loadassets($frontend = false) { static $run; if ($run) { return; } $run = true; // Front-end media files if ($frontend) { // Load core.js needed by keepalive script. \JHtml::_('behavior.core'); \JHtml::_('behavior.keepalive'); \JHtml::script('com_convertforms/site.js', ['relative' => true, 'version' => 'auto']); $params = self::getComponentParams(); if ($params->get("loadCSS", true)) { \JHtml::stylesheet('com_convertforms/convertforms.css', ['relative' => true, 'version' => 'auto']); } $doc = \JFactory::getDocument(); $options = $doc->getScriptOptions('com_convertforms'); $options = is_array($options) ? $options : []; $options = [ // Remove trailing slash from the base URL to prevent unwanted redirections during AJAX submission 'baseURL' => \Joomla\String\StringHelper::rtrim(\JRoute::_('index.php?option=com_convertforms'), '/'), 'debug' => (bool) $params->get('debug', false) ]; $doc->addScriptOptions('com_convertforms', $options); return; } \JHtml::_('jquery.framework'); \JHtml::stylesheet('com_convertforms/convertforms.sys.css', ['relative' => true, 'version' => 'auto']); } /** * Get Campaign Item by ID * * @param integer $id The campaign ID * * @return object */ public static function getCampaign($id) { $model = \JModelLegacy::getInstance('Campaign', 'ConvertFormsModel', array('ignore_request' => true)); return $model->getItem($id); } /** * Write the given error message to log file. * * @param string $error_message The error message * * @return void */ public static function logError($error_message) { try { \JLog::add($error_message, \JLog::ERROR, 'convertforms_errors'); } catch (\Throwable $th) { } } /** * Format given date based on the DATE_FORMAT_LC5 global format * * @param string $date * * @return string */ public static function formatDate($date) { if (!$date || $date == '0000-00-00 00:00:00') { return $date; } return \JHtml::_('date', $date, \JText::_('DATE_FORMAT_LC5')); } public static function getColumns($form_id) { if (!$form_id) { return []; } $fields = Form::load($form_id, true, true); if (!is_array($fields) || !is_array($fields['fields'])) { return []; } // Form Fields $form_fields = array_map(function($value) { return 'param_' . $value; }, array_keys($fields['fields'])); $default_columns = [ 'id', 'created', 'user_id', 'user_username', 'visitor_id', 'form_name', 'param_leadnotes' ]; // Set ID and Date Submitted as the first 2 columns $columns = array_merge(array_slice($default_columns, 0, 2), $form_fields, array_slice($default_columns, 2, count($default_columns))); return $columns; } /** * Return absolute full URL of a path * * @param string $path * * @return string */ public static function pathTorelative($path) { return str_replace([JPATH_SITE, JPATH_ROOT], '', $path); } /** * Return absolute full URL of a path * * @param string $path * * @return string */ public static function absURL($path) { $path = str_replace([JPATH_SITE, JPATH_ROOT, \JURI::root()], '', $path); $path = \JPath::clean($path); // Convert Windows Path to Unix $path = str_replace('\\','/',$path); $path = ltrim($path, '/'); $path = \JURI::root() . $path; return $path; } /** * This is a joke. Joomla 4's media field started including width and height information in the path. * So, we need to clean the path before we can use it. * * images/headers/blue-flower.jpg#joomlaImage://local-images/headers/blue-flower.jpg?width=700&height=180) * * @param string $path * * @return string */ public static function cleanLocalImage($path) { return defined('nrJ4') ? \Joomla\CMS\Helper\MediaHelper::getCleanMediaFieldValue($path) : $path; } }PKBA#]-P�4components/com_convertforms/ConvertForms/JsonApi.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Helper; /** * ConvertForms API Class */ class JsonApi { /** * Joomla Application Object * * @var object */ private $app; /** * API Key * * @var string */ private $apikey; /** * Class Constructor * * @param string $key User API Key */ public function __construct($apikey) { if (!isset($apikey) || empty($apikey)) { $this->throwError('API Key is missing'); } $this->apikey = $apikey; if (!$this->authenticate()) { $this->throwError('Invalid API Key: '. $this->apikey); } $this->app = \JFactory::getApplication(); } /** * Throws an exception and logs the error message to the log file * * @param string $error The error message * * @return void */ private function throwError($error) { $error = 'ConvertForms API: ' . $error; Helper::log($error, 'error'); throw new \Exception($error); } /** * Authenticate API Call * * @return bool */ public function authenticate() { return $this->getSiteKey() === $this->apikey; } /** * Returns Domain Key * * @return string */ public static function generateDomainKey() { $parse = parse_url(\JURI::root()); $domain = isset($parse['host']) ? $parse['host'] : '-'; $hash = md5('CF' . $domain); return $hash; } /** * Returns Domain Key * * @return string */ public static function getSiteKey() { return Helper::getComponentParams()->get('api_key', null); } /** * Route API endpoint to the proper method * * @param string $endpoint The API Endpoint Name * * @return string Response Array */ public function route($endpoint) { $endPointMethod = 'endPoint' . $endpoint; if (!method_exists($this, $endPointMethod)) { $this->throwError('Endpoint not found:' . $endpoint); } return $this->$endPointMethod(); } /** * Loads and populates model * * @param JModel &$model * * @return JModel */ private function getModel($modelName) { if (!$modelName) { return; } $model = \JModelLegacy::getInstance($modelName, 'ConvertFormsModel', array('ignore_request' => true)); $model->setState('list.limit', $this->app->input->get('limit', 1000)); $model->setState('list.start', $this->app->input->get('start', 0)); $model->setState('list.ordering', $this->app->input->get('order', 'a.id')); $model->setState('list.direction', $this->app->input->get('dir', 'desc')); $state = $this->app->input->get('state', null); if (!is_null($state)) { $model->setState('filter.state', $state); } return $model; } /** * Backwards compatibility support for old Leads endpoint * * @deprecated 2.2.0 * * @return array Database array */ private function endPointLeads() { return $this->endPointSubmissions(); } /** * Submissions Endpoint * * @since 2.2.0 * * @return array Database array */ private function endPointSubmissions() { // Load Model $model = $this->getModel('Conversions'); // Apply form filter $formID = $this->app->input->get('form', null); if (!is_null($formID)) { $model->setState('filter.form_id', $formID); } // Apply campaign filter $campaignID = $this->app->input->get('campaign', null); if (!is_null($campaignID)) { $model->setState('filter.campaign_id', $campaignID); } // Get Data $leads = $model->getItems(); $data = array(); $tz = new \DateTimeZone($this->app->getCfg('offset', 'UTC')); foreach ($leads as $key => $lead) { // Convert created date to ISO8601 format to make Zapier happy. $date_ = new \JDate($lead->created, $tz); $lead->created = $date_->toISO8601(true); $data_ = array( 'id' => $lead->id, 'state' => $lead->state, 'created' => $lead->created, 'form_id' => $lead->form_id, 'campaign_id' => $lead->campaign_id, 'user_id' => $lead->user_id, 'visitor_id' => $lead->visitor_id ); // Include custom fields as well if (isset($lead->prepared_fields)) { foreach ($lead->prepared_fields as $key => $field) { // This is a temporary workaround for File Upload field, to display files as absolute URLs in array // We can't use $field->value directly as it transforms the array to string. if ($field->options->get('type') == 'fileupload') { $field->value_raw = array_filter(array_map('trim', explode(',', $field->value))); } $data_['field_' . $key] = $field->value_raw; if ($field->value_raw !== $field->value_html) { $data_['field_' . $key . '.html'] = $field->value_html; } } } $data[] = $data_; } return $data; } /** * Forms Endpoint * * @return array Database array */ private function endPointForms() { return $this->endPointDefault('Forms'); } /** * Campaigns Endpoint * * @return array Database array */ private function endPointCampaigns() { return $this->endPointDefault('Campaigns'); } /** * Common Default Endpoint * * @param string $model ConvertForms model name * * @return array */ private function endPointDefault($model) { // Load Model $model = $this->getModel($model); if (!$model) { return; } // Get Data $items = $model->getItems(); if (!$items) { return; } $data = array(); foreach ($items as $key => $item) { $data[] = array( 'id' => $item->id, 'name' => $item->name, 'created' => $item->created, 'state' => $item->state ); } return $data; } } ?>PKBA#]�o����8components/com_convertforms/ConvertForms/FieldChoice.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); /** * Field Choice Class used by dropdown, checkbox and radio fields */ class FieldChoice extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'browserautocomplete', ]; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); // Get input options $this->field->choices = $this->getChoices(); // Use the selected choice as the field value if we don't have a default value set. if ($this->field->value == '') { foreach ($this->field->choices as $choice) { if ($choice['selected']) { $this->field->value = $choice['value']; break; } } } if ($this->multiple && !is_array($this->field->value)) { $this->field->value = explode(',', $this->field->value); } return $this; } /** * Get an array of all field options * * @return array */ public function getOptions() { $options = []; foreach ($this->field->get('choices.choices', []) as $option) { $option = (array) $option; if (!isset($option['label']) || $option['label'] == '') { continue; } // Prepare all options, not only the Label (Remember, we can use Smart Tags in any option, right?) with Smart Tags. $option = \NRFramework\SmartTags::getInstance()->replace($option); $label = trim($option['label']); $value = $option['value'] == '' ? $label : $option['value']; $calcValue = isset($option['calc-value']) && $option['calc-value'] !== '' ? $option['calc-value'] : $value; $isSelected = isset($option['default']) && $option['default'] ? true : false; $options[] = [ 'label' => $label, 'value' => $value, 'calc-value' => $calcValue, 'selected' => $isSelected ]; } return $options; } /** * Set the field choices * * Return Array sample * * $choices = array( * 'label' => 'Color', * 'value' => 'color, * 'calc-value' => '150r, * 'selected' => true, * 'disabled' => false * ) * * @return array The field choices array */ protected function getChoices() { $field = $this->field; if (!isset($field->choices) || !isset($field->choices['choices'])) { return; } $choices = array(); $hasPlaceholder = (isset($field->placeholder) && !empty($field->placeholder)); // Create a new array of valid only choices // @todo Use $this->getOptions() to get the field options foreach ($field->choices['choices'] as $key => $choiceValue) { if (!isset($choiceValue['label']) || $choiceValue['label'] == '') { continue; } $label = trim($choiceValue['label']); $value = $choiceValue['value'] == '' ? strip_tags($label) : $choiceValue['value']; $choices[] = array( 'label' => $label, 'value' => $value, 'calc-value' => (isset($choiceValue['calc-value']) && $choiceValue['calc-value'] != '' ? $choiceValue['calc-value'] : $value), 'selected' => (isset($choiceValue['default']) && $choiceValue['default'] && !$hasPlaceholder) ? true : false ); } // If we have a placeholder available, add it to dropdown choices. if ($hasPlaceholder) { array_unshift($choices, array( 'label' => trim($field->placeholder), 'value' => '', 'selected' => true, 'disabled' => $field->required == '1' ? true : false )); } return $choices; } /** * In choice-based fields, it makes more sense to display the choice's label instead of the choice's value when the field is used for presentation purposes like in the * * 1. Thank you Message * 2. {all_fields} Smart Tag * 3. Form editing page in the back-end * 4. PDF Form Submission addon. * * While we keep using the choice's value in functions like * 1. Calculations * 2. Conditional fields * 3. JSON API. * 4. {field.FIELDNAME} * * @param string $value The raw value as stored in the database / submitted by the user * * @return string */ public function prepareValueHTML($value) { if (is_array($value)) { foreach ($value as &$value_) { $value_ = $this->findChoiceLabelByValue($value_); } } else { $value = $this->findChoiceLabelByValue($value); } return parent::prepareValueHTML($value); } /** * Attempt to assosiate a choice value with a choice label. As a fallback the raw value will be returned. * * The attempt may fail for one of the reasons below: * * 1. A choice value is renamed. * 2. A choice is removed. * 3. Multiple choices has the same value (which obviously is a mistake by the user). * * The most reliable way to always know the choice's label, is to implement this task https://smilemotive.teamwork.com/#/tasks/30244858 * and start storing in the database a choice's unique ID instead of the choice's value. * * @param mixed $value * * @return string */ private function findChoiceLabelByValue($value) { // In multiple choice fields, the value can't be empty. if ($value == '') { return $value; } if ($options = $this->getOptions()) { foreach ($options as $option) { // We might lowercase both values? if ($option['value'] == $value) { return $option['label']; } } } // If we can't assosiacte the given value with a label, return the raw value as a fallback. return $value; } } ?>PKBA#]R_��1components/com_convertforms/ConvertForms/Form.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Helper; use NRFramework\Cache; use Joomla\Registry\Registry; class Form { /** * Returns a form object from database * * @param integer $id The ID of the form * @param bool $only_inputs If true, fields that doesn't have an input element such as HTML and reCAPTCHA, won't be returned. * * @return mixed Null on failure, array on success */ public static function load($id, $only_inputs = false, $ignore_state = false) { if (!$id) { return; } $hash = 'convertforms_' . $id . '_' . (string) $only_inputs; if (Cache::has($hash)) { return Cache::get($hash); } // Get a db connection. $db = \JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*') ->from($db->quoteName('#__convertforms')) ->where($db->quoteName('id') . ' = '. (int) $id); if (!$ignore_state) { $query->where($db->quoteName('state') . ' = 1'); } $db->setQuery($query); if (!$form = $db->loadAssoc()) { return; } $form['params'] = json_decode($form['params'], true); // Make 3rd party developer's life easier by setting field's name as the array key for faster code manipulation through PHP scripts. foreach ($form['params']['fields'] as $key => $field) { // This is useful when we would like to skip non-interactive fields such as HTML, reCAPTCHA e.t.c. if ($only_inputs && !isset($field['name'])) { unset($form['params']['fields'][$key]); continue; } $name = isset($field['name']) ? $field['name'] : $key; unset($form['params']['fields'][$key]); $form['params']['fields'][$name] = $field; } $form['fields'] = $form['params']['fields']; unset($form['params']['fields']); return Cache::set($hash, $form); } /** * Get settings of a form field * * @param integer $form_id The id of the form * @param integer $field_key The id of the field * * @return mixed Null on failure, Registry object on success */ public static function getFieldSettingsByKey($form_id, $field_key) { if (!$form = self::load($form_id)) { return; } $found = array_filter($form['fields'], function($field) use ($field_key) { return ($field['key'] == $field_key); }); return new Registry(array_pop($found));; } /** * Run user-defined PHP scripts on certain form events. * * The available events are: * * formprepare: Called on form data prepare. * formdisplay: Called on form display. * formsubmission: Called on form process. * afterformprocess: Called after the form has been processed and the submission is saved into the database. * * @param Integer $form_id The form's ID * @param String $script_name The script name to run * @param Array $payload The data passed as argument to the PHP script. By reference. * * @return void */ public static function runPHPScript($form_id, $script_name, &$payload) { // Only on the front-end if (\JFactory::getApplication()->isClient('administrator')) { return; } if (!$form = self::load($form_id)) { return; } // Abort, if the script is not found if (!isset($form['params']['phpscripts'][$script_name])) { return; } // Abort, if the script is empty if (!$php_script = $form['params']['phpscripts'][$script_name]) { return; } if (!isset($payload['form'])) { $payload['form'] = $form; } $payload['script_name'] = $script_name; try { $executer = new \NRFramework\Executer($php_script, $payload); $executer->run(); } catch (\Throwable $th) { $error = $th->getMessage() . ' - ' . $th->getFile() . ' on line ' . $th->getLine(); // Log error Helper::triggerError($error, 'PHP Script', $form_id); // Re throw exception throw new \Exception($th->getMessage()); } } /** * Return the total number of form submissions * * @param integer $form_id The form's ID * * @return integer */ public static function getSubmissionsTotal($form_id) { if (!$form_id) { return; } $hash = md5('cf_count_' . $form_id); if (Cache::has($hash)) { return Cache::get($hash); } \JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/models'); $model = \JModelLegacy::getInstance('Conversions', 'ConvertFormsModel', ['ignore_request' => true]); $model->setState('filter.form_id', (int) $form_id); $model->setState('filter.state', [1, 2]); $model->setState('filter.join_campaigns', 'skip'); $model->setState('filter.join_forms', 'skip'); $query = $model->getListQuery(); $query->clear('select'); $query->select('count(a.id)'); $db = \JFactory::getDbo(); $db->setQuery($query); $count = $db->loadResult(); return Cache::set($hash, $count); } }PKBA#] G��;components/com_convertforms/ConvertForms/Field/Hcaptcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use \ConvertForms\Helper; class Hcaptcha extends \ConvertForms\Field { /** * Exclude all common fields * * @var mixed */ protected $excludeFields = array( 'name', 'required', 'size', 'value', 'placeholder', 'browserautocomplete', 'inputcssclass' ); /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); $this->field->required = true; // When captcha is in invisible mode, don't show the control group if ($this->field->hcaptcha_type == 'invisible') { $this->field->cssclass .= 'hide'; } return $this; } /** * Get the hCaptcha Site Key used in Javascript code * * @return string */ public function getSiteKey() { return Helper::getComponentParams()->get('hcaptcha_sitekey'); } /** * Get the hCaptcha Secret Key used in communication between the website and the hCaptcha server * * @return string */ public function getSecretKey() { return Helper::getComponentParams()->get('hcaptcha_secretkey'); } /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { if (!$this->field->get('required')) { return true; } // In case this is a submission via URL, skip the check. if (\JFactory::getApplication()->input->get('task') == 'optin') { return true; } $hcaptcha = new \NRFramework\Integrations\HCaptcha( ['secret' => $this->getSecretKey()] ); $response = isset($this->data['h-captcha-response']) ? $this->data['h-captcha-response'] : null; $hcaptcha->validate($response); if (!$hcaptcha->success()) { throw new \Exception($hcaptcha->getLastError()); } } /** * Display a text before the form options * * @return string The text to display */ protected function getOptionsFormHeader() { if ($this->getSiteKey() && $this->getSecretKey()) { return; } $url = \JURI::base() . 'index.php?option=com_config&view=component&component=com_convertforms#hcaptcha'; return \JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE') . ' <a onclick=\'window.open("' . $url . '", "cfrecaptcha", "width=1000, height=750");\' href="#">' . \JText::_("COM_CONVERTFORMS_FIELD_HCAPTCHA_CONFIGURE") . '</a>.'; } }PKBA#]��6components/com_convertforms/ConvertForms/Field/Tel.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Tel extends \ConvertForms\Field { protected $inheritInputLayout = 'text'; /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if (!$value) { return; } return '<a href="tel:' . $value . '">' . $value . '</a>'; } } ?>PKBA#]�A�FO O 9components/com_convertforms/ConvertForms/Field/Editor.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Editor extends Textarea { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'placeholder', 'browserautocomplete', 'size', ]; /** * Event fired before the field options form is rendered in the backend * * @param object $form * * @return void */ protected function onAfterRenderOptionsForm(&$html) { // Remove the 'None' editor from dropdown options $html = str_replace('<option value="none">Editor - None</option>', '', $html); } /** * Renders the field's input element * * @return string HTML output */ protected function getInput() { $selected_editor = empty($this->field->editor) ? \JFactory::getConfig()->get('editor') : $this->field->editor; if (!$selected_editor) { return \JText::sprintf('COM_CONVERTFORMS_EDITOR_NOT_FOUND', $selected_editor); } // Instantiate the editor $editor = \Joomla\CMS\Editor\Editor::getInstance($selected_editor); $id = $this->field->input_id; $name = $this->field->input_name; $contents = htmlspecialchars($this->field->value, ENT_COMPAT, 'UTF-8'); $width = '100%'; $height = (int) $this->field->height; $row = 1; $col = 10; $buttons = false; $author = null; $asset = null; $params = [ 'readonly' => $this->field->readonly, ]; $this->field->richeditor = $editor->display($name, $contents, $width, $height, $col, $row, $buttons, $id, $author, $asset, $params); return parent::getInput(); } /** * Return the HTML version of the submitted value. * * @param string $value * * @return string */ public function prepareValueHTML($value) { // Editor's value is already in HTML format in the database return $value; } } ?>PKBA#]B�`p��=components/com_convertforms/ConvertForms/Field/Emptyspace.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2018 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class EmptySpace extends \ConvertForms\Field { /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'name', 'placeholder', 'browserautocomplete', 'size', 'required', 'label', 'description', 'cssclass', 'hidelabel', 'inputcssclass', 'value' ]; } ?>PKBA#]�����;components/com_convertforms/ConvertForms/Field/Textarea.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Textarea extends \ConvertForms\Field\Text { } ?>PKBA#]����Acomponents/com_convertforms/ConvertForms/Field/Termsofservice.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Termsofservice extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'placeholder', 'value', 'browserautocomplete', 'required', 'size', ]; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); $this->field->required = true; return $this; } } ?>PKBA#]q<YQ��>components/com_convertforms/ConvertForms/Field/Colorpicker.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class ColorPicker extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'size', 'placeholder', 'browserautocomplete', 'inputmask', 'inputcssclass' ]; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { // Joomla's Color field in the Field settings returns 'none' if the input is left blank // which makes the CF input to have 'none' as the default value in the backend. // The code below fixes that issue. if ($field['value'] == 'none') { $field['value'] = ''; } $field['placeholder'] = '#000000'; parent::setField($field); return $this; } }PKBA#]�}n��Gcomponents/com_convertforms/ConvertForms/Field/Recaptchav2invisible.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use \ConvertForms\Helper; class RecaptchaV2Invisible extends \ConvertForms\Field\Recaptcha { /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); // When the widget is shown at the bottom right or left position, we need to remove the .control-group's div default padding. if ($this->field->badge != 'inline') { $this->field->cssclass .= 'cf-no-padding'; } return $this; } /** * Get the reCAPTCHA Site Key used in Javascript code * * @return string */ public function getSiteKey() { return Helper::getComponentParams()->get('recaptcha_sitekey_invs'); } /** * Get the reCAPTCHA Secret Key used in communication between the website and the reCAPTCHA server * * @return string */ public function getSecretKey() { return Helper::getComponentParams()->get('recaptcha_secretkey_invs'); } } ?>PKBA#]����[[9components/com_convertforms/ConvertForms/Field/Number.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Number extends \ConvertForms\Field { /** * Filter user value before saving into the database * * @var string */ protected $filterInput = 'FLOAT'; } ?>PKBA#]�'�#11>components/com_convertforms/ConvertForms/Field/Rangeslider.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class RangeSlider extends \ConvertForms\Field { /** * Filter user value before saving into the database * * @var string */ protected $filterInput = 'FLOAT'; /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'placeholder', 'browserautocomplete', 'size', 'inputmask', 'inputcssclass' ]; }PKBA#]yi���:components/com_convertforms/ConvertForms/Field/Captcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; use Joomla\CMS\Factory; use NRFramework\Executer; defined('_JEXEC') or die('Restricted access'); class Captcha extends Text { /** * Exclude all common fields * * @var mixed */ protected $excludeFields = [ 'name', 'required', 'size', 'value', 'placeholder', 'browserautocomplete', 'inputcssclass' ]; /** * This is bullshit. We should call setField() in the Field's Class constructor so we can access the field's ID correctly. Consider this as a workround. * * @return string */ private function getSessionNamespace() { return 'cf.' . $this->getField()->key . '.captcha'; } /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); // Once we start calling $this->setField() in the constructo, we can get rid of this line. $this->field->required = true; $complexity = isset($this->field->complexity) ? $this->field->complexity : ''; switch ($complexity) { case 'high': $min = 1; $max = 30; $comparators = ['+', '-', '*']; break; case 'medium': $min = 1; $max = 20; $comparators = ['+', '-']; break; // low default: $min = 1; $max = 10; $comparators = ['+']; } // Pick random numbers $number1 = rand($min, $max); $number2 = rand($min, $max); // Pick a random math comparison operator shuffle($comparators); $comparator = end($comparators); // Calculate the Captcha answer $equation = "return ($number1 $comparator $number2)"; $executer = new Executer($equation); $answer = $executer->run(); // Store the Captcha answer in the Session object. Factory::getSession()->set($this->getSessionNamespace(), $answer); // Pass data to template $this->field->question = [ 'number1' => $number1, 'number2' => $number2, 'comparator' => $comparator, ];; return $this; } /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { // In case this is a submission via URL, skip the check. if (Factory::getApplication()->input->get('task') == 'optin') { return true; } $math_solution = (string) Factory::getSession()->get($this->getSessionNamespace()); $field = $this->getField(); // Once we start calling $this->setField() in the constructor we can easily find the field's name by using $this->field->name instead of relying on the submitted data. $user_solution = (string) $this->data['captcha_' . $field->key]; // In v3.2.9 we added an option to set the Wrong Answer Text in the Field Settings. In the previous version we were using a language strings instead. // To prevnt breaking the user's form, we need to check whether the new option is available. Otherwise we fallback to the old language string. // We can get rid of compatibility check in a few months. $wrong_answer_text = isset($field->wrong_answer_text) && !empty($field->wrong_answer_text) ? $field->wrong_answer_text : \JText::_('COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER'); if ($math_solution !== $user_solution) { $this->throwError($wrong_answer_text); } } } ?>PKBA#]��VV:components/com_convertforms/ConvertForms/Field/Heading.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2018 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Heading extends \ConvertForms\Field { /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'name', 'placeholder', 'browserautocomplete', 'size', 'required', 'hidelabel', 'inputcssclass', 'value' ); } ?>PKBA#]䛚Z��<components/com_convertforms/ConvertForms/Field/Recaptcha.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use \ConvertForms\Helper; class Recaptcha extends \ConvertForms\Field { /** * Exclude all common fields * * @var mixed */ protected $excludeFields = array( 'name', 'required', 'size', 'value', 'placeholder', 'browserautocomplete', 'inputcssclass' ); /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); $this->field->required = true; return $this; } /** * Get the reCAPTCHA Site Key used in Javascript code * * @return string */ public function getSiteKey() { return Helper::getComponentParams()->get('recaptcha_sitekey'); } /** * Get the reCAPTCHA Secret Key used in communication between the website and the reCAPTCHA server * * @return string */ public function getSecretKey() { return Helper::getComponentParams()->get('recaptcha_secretkey'); } /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { if (!$this->field->get('required')) { return true; } // In case this is a submission via URL, skip the check. if (\JFactory::getApplication()->input->get('task') == 'optin') { return true; } jimport('recaptcha', JPATH_PLUGINS . '/system/nrframework/helpers/wrappers'); $recaptcha = new \NR_ReCaptcha( ['secret' => $this->getSecretKey()] ); $response = isset($this->data['g-recaptcha-response']) ? $this->data['g-recaptcha-response'] : null; $recaptcha->validate($response); if (!$recaptcha->success()) { throw new \Exception($recaptcha->getLastError()); } } /** * Display a text before the form options * * @return string The text to display */ protected function getOptionsFormHeader() { if ($this->getSiteKey() && $this->getSecretKey()) { return; } $url = \JURI::base() . 'index.php?option=com_config&view=component&component=com_convertforms#recaptcha'; return \JText::_('COM_CONVERTFORMS_FIELD_RECAPTCHA_KEYS_NOTE') . ' <a onclick=\'window.open("' . $url . '", "cfrecaptcha", "width=1000, height=750");\' href="#">' . \JText::_("COM_CONVERTFORMS_FIELD_RECAPTCHA_CONFIGURE") . '</a>.'; } } ?>PKBA#]q��� :components/com_convertforms/ConvertForms/Field/Country.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; use NRFramework\Countries; defined('_JEXEC') or die('Restricted access'); class Country extends \ConvertForms\FieldChoice { protected $inheritInputLayout = 'dropdown'; /** * Set the field choices * * @return array The field choices array */ protected function getChoices() { // Get list of all countries $countries = Countries::getCountriesList(); asort($countries); $choices = array(); // Exclude countries if (!empty($this->field->exclude_countries)) { $countries_ex = explode(',', $this->field->exclude_countries); if (is_array($countries_ex)) { foreach ($countries_ex as $country) { $country = trim($country); // Search by country name first if ($key = array_search(strtolower($country), array_map('strtolower', $countries))) { unset($countries[$key]); continue; } unset($countries[strtoupper($country)]); } } } foreach ($countries as $countryCode => $countryName) { if ($selected = in_array(strtolower($this->field->value), [strtolower($countryCode), strtolower($countryName)])) { // Make sure the default value is set to a country code $this->field->value = $countryCode; } $choices[] = [ 'value' => $countryCode, 'label' => $countryName, 'selected' => $selected ]; } // Detect visitor's country if ($this->field->detectcountry && $detectedCountryCode = $this->getVisitorCountryCode()) { $this->field->value = $detectedCountryCode; } // If we have a placeholder available, add it to dropdown choices. if (isset($this->field->placeholder) && !empty($this->field->placeholder)) { array_unshift($choices, array( 'label' => trim($this->field->placeholder), 'value' => '', 'selected' => true, 'disabled' => true )); } return $choices; } /** * Detect visitor's country * * @return string The visitor's country code (GR) */ private function getVisitorCountryCode() { $path = JPATH_PLUGINS . '/system/tgeoip/'; if (!\JFolder::exists($path)) { return; } if (!class_exists('TGeoIP')) { @include_once $path . 'vendor/autoload.php'; @include_once $path . 'helper/tgeoip.php'; } $geo = new \TGeoIP(); return $geo->getCountryCode(); } /** * Always display the Country name. * * @param mixed $value The country code (GR, US e.t.c) * * @return string The name of the country */ public function prepareValue($value) { if ($countryName = Countries::toCountryName($value)) { return $countryName; } // Fallback as Countries::toCountryName() returns null if nothing found. return $value; } } ?>PKBA#]��J���9components/com_convertforms/ConvertForms/Field/Rating.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Rating extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'placeholder', 'browserautocomplete', 'size', 'inputmask', 'inputcssclass' ]; }PKBA#]�:� ;components/com_convertforms/ConvertForms/Field/Checkbox.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Checkbox extends \ConvertForms\FieldChoice { /** * Indicates whether it accepts multiple values * * @var bool */ protected $multiple = true; /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'placeholder', 'browserautocomplete', 'size', ); } ?>PKBA#]�Q�HUU9components/com_convertforms/ConvertForms/Field/Submit.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Submit extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'name', 'description', 'label', 'placeholder', 'required', 'hidelabel', 'browserautocomplete', 'value', ); /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; } ?>PKBA#]��>rr9components/com_convertforms/ConvertForms/Field/Hidden.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Hidden extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'label', 'placeholder', 'description', 'cssclass', 'hidelabel', 'browserautocomplete', 'size', 'inputcssclass' ]; /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); // Always hide the container of a hidden field $this->field->cssclass = 'cf-hide'; return $this; } } ?>PKBA#]7��k� � 7components/com_convertforms/ConvertForms/Field/Text.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; use Joomla\String\StringHelper; defined('_JEXEC') or die('Restricted access'); class Text extends \ConvertForms\Field { /** * Validate form submitted value * * @param mixed $value The field's value to validate (Passed by reference) * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { $isEmpty = $this->isEmpty($value); $isRequired = $this->field->get('required'); // If the field is empty and its not required, skip validation if ($isEmpty && !$isRequired) { return; } if ($isEmpty && $isRequired) { $this->throwError(\JText::_('COM_CONVERTFORMS_FIELD_REQUIRED'), $field_options); } // Validate Min / Max characters $min_chars = $this->field->get('minchars', 0); $max_chars = $this->field->get('maxchars', 0); $value_length = StringHelper::strlen($value); if ($min_chars > 0 && $value_length < $min_chars) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_VALIDATION_MIN_CHARS', $min_chars, $value_length), $field_options); } if ($max_chars > 0 && $value_length > $max_chars) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_VALIDATION_MAX_CHARS', $max_chars, $value_length), $field_options); } // Validate Min / Max words $min_words = $this->field->get('minwords', 0); $max_words = $this->field->get('maxwords', 0); // Find words count $words_temp = preg_replace('/\s+/', ' ', trim($value)); $words_temp = array_filter(explode(' ', $words_temp)); $words_count = count($words_temp); if ($min_words > 0 && $words_count < $min_words) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_VALIDATION_MIN_WORDS', $min_words, $words_count), $field_options); } if ($max_words > 0 && $words_count > $max_words) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_VALIDATION_MAX_WORDS', $max_words, $words_count), $field_options); } // Let's do some filtering. $value = $this->filterInput($value); } } ?>PKBA#]�H��:components/com_convertforms/ConvertForms/Field/Confirm.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Confirm extends \ConvertForms\Field { protected $inheritInputLayout = 'text'; /** * Prepares the field's input layout data * * @return array */ protected function getInputData() { $this->field->type = isset($this->field->confirm_type) ? $this->field->confirm_type : 'text'; return parent::getInputData(); } /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { if (!$this->field->get('required')) { return true; } $confirmField = $this->field->get('confirmfield'); if (empty($confirmField) || !isset($this->data['cf'][$confirmField])) { $this->throwError('COM_CONVERTFORMS_FIELD_CONFIRM_INVALID'); } $confirmFieldValue = $this->data['cf'][$confirmField]; if ($confirmFieldValue !== $value) { $this->throwError('COM_CONVERTFORMS_FIELD_CONFIRM_NOT_MATCH'); } } /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if ($this->field->get('confirm_type') == 'password') { return str_repeat('*', strlen($value)); } return $value; } } ?>PKBA#]�fFF7components/com_convertforms/ConvertForms/Field/Html.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class HTML extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'name', 'value', 'size', 'placeholder', 'browserautocomplete', 'required', 'description', 'inputcssclass' ); /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); $this->field->required = false; return $this; } } ?>PKBA#]Z}�?��<components/com_convertforms/ConvertForms/Field/Signature.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2018 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use \NRFramework\File; class Signature extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'placeholder', 'browserautocomplete', 'inputcssclass', 'value' ]; /** * While we capture the base64 image data on front-end, we should not save this format in the database * for storage capacity reasons. * * Instead, we upload the image on /media/com_convertforms/signatures and save only * the relative path of the signature file in the database. * * @param string $value The base64 image data * * @return void */ public function validate(&$value) { // A required field should not be empty. if ($this->field->get('required') && empty($value)) { $this->throwError(\JText::_('COM_CONVERTFORMS_FIELD_REQUIRED')); } $ds = DIRECTORY_SEPARATOR; // Get the field name $field_name = $this->field->get('name'); // Decoded the signature $decoded_image_data = base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $value)); // Path of the temporary signature $tmp_path = implode($ds, [File::getTempFolder(), 'signature_' . $field_name . '_' . uniqid() . '.png']); // Upload temporary signature to temp folder file_put_contents($tmp_path, $decoded_image_data); $this->app->registerEvent('onConvertFormsSubmissionBeforeSave', function(&$data) use ($value, $field_name, $tmp_path, $ds) { try { // Get the data $tmpData = $data; if (defined('nrJ4')) { $tmpData = $data->getArgument('0'); } // Destination folder. We are not using /media/ folder here as the 'media' Joomla field supports only relative paths to the top level /images/ folder only :( $destination_folder = implode($ds, ['images', 'convertforms', 'signatures']); // Move the signature to the destination folder $destination = implode($ds, [JPATH_SITE, $destination_folder, $field_name . '_' . uniqid() . '.png']); $destination = File::move($tmp_path, $destination); // Set the new Signature value $tmpData['params'][$field_name] = implode($ds, [$destination_folder, basename($destination)]); // Set back the new value to $data object if (defined('nrJ4')) { $data->setArgument(0, $tmpData); } else { $data = $tmpData; } } catch (\Throwable $th) { $this->throwError($th->getMessage()); } }); } /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if (!$value) { return; } return '<img src="' . \JURI::root() . $value . '" alt="Signature"/>'; } }PKBA#]�K�6components/com_convertforms/ConvertForms/Field/Url.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Validate; class Url extends \ConvertForms\Field { protected $inheritInputLayout = 'text'; /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { parent::validate($value); if ($this->isEmpty($value)) { return true; } if (!Validate::url($value)) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_URL_INVALID')); } } /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if (!$value) { return; } return '<a href="' . $value . '">' . $value . '</a>'; } } ?>PKBA#]kD�Q998components/com_convertforms/ConvertForms/Field/Radio.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Radio extends \ConvertForms\FieldChoice { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'placeholder', 'browserautocomplete', 'size', ); /** * Radio buttons expect single text value. So we need to transform the submitted array data to string. * * @param mixed $input User input value * * @return mixed The filtered user input */ public function filterInput($input) { $value = parent::filterInput($input); if (is_array($value) && isset($value[0])) { return $value[0]; } return $value; } } ?>PKBA#]�K��;components/com_convertforms/ConvertForms/Field/Dropdown.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Dropdown extends \ConvertForms\FieldChoice { } ?>PKBA#]��j�]];components/com_convertforms/ConvertForms/Field/Datetime.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Validate; use Joomla\String\StringHelper; use Joomla\CMS\HTML\HTMLHelper; class DateTime extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = array( 'browserautocomplete', ); /** * Prepares the field's input layout data in order to support PHP date relative formats such as * first day of this month, next week, +5 day e.t.c * * http://php.net/manual/en/datetime.formats.relative.php * * @return array */ protected function getInputData() { $data = parent::getInputData(); $properties = array( 'value', 'mindate', 'maxdate', 'placeholder' ); // Make sure we have a valid dateformat $dateFormat = $data['field']->dateformat ?: 'd/m/Y'; foreach ($properties as $key => $property) { if (!isset($data['field']->$property) || empty($data['field']->$property)) { continue; } // Try to format the date property. try { $data['field']->$property = HTMLHelper::date($data['field']->$property, $dateFormat); } catch (\Exception $e) { } } return $data; } } ?>PKBA#]�f�%%;components/com_convertforms/ConvertForms/Field/Password.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Validate; class Password extends \ConvertForms\Field { protected $inheritInputLayout = 'text'; } ?>PKBA#]4!W�~~:components/com_convertforms/ConvertForms/Field/Divider.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Divider extends \ConvertForms\Field { /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'name', 'placeholder', 'browserautocomplete', 'size', 'required', 'label', 'description', 'cssclass', 'hidelabel', 'inputcssclass', 'value' ]; /** * Indicates the default required behavior on the form * * @var bool */ protected $required = false; } ?>PKBA#]oi��)�)=components/com_convertforms/ConvertForms/Field/Fileupload.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); jimport('joomla.filesystem.file'); jimport('joomla.filesystem.folder'); jimport('joomla.filesystem.path'); use ConvertForms\Helper; use ConvertForms\Validate; use NRFramework\File; use Joomla\Registry\Registry; class FileUpload extends \ConvertForms\Field { /** * The default upload folder * * @var string */ protected $default_upload_folder = '/media/com_convertforms/uploads/{randomid}_{file.basename}'; /** * Remove common fields from the form rendering * * @var mixed */ protected $excludeFields = [ 'size', 'value', 'browserautocomplete', 'placeholder', 'inputcssclass' ]; /** * Set field object * * @param mixed $field Object or Array Field options */ public function setField($field) { parent::setField($field); $field = $this->field; if (!isset($field->limit_files)) { $field->limit_files = 1; } if (!isset($field->upload_types) || empty($field->upload_types)) { $field->upload_types = 'image/*'; } // Accept multiple values if ((int) $field->limit_files != 1) { $field->input_name .= '[]'; } return $this; } /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { $is_required = $this->field->get('required'); $max_files_allowed = $this->field->get('limit_files', 1); $allowed_types = $this->field->get('upload_types'); $upload_folder = $this->field->get('upload_folder_type', 'auto') == 'auto' ? $this->default_upload_folder : $this->field->get('upload_folder', $this->default_upload_folder); // Remove null and empty values $value = is_array($value) ? $value : (array) $value; $value = array_filter($value); // We expect a not empty array if ($is_required && empty($value)) { $this->throwError(\JText::_('COM_CONVERTFORMS_FIELD_REQUIRED')); } // Do we have the correct number of files? if ($max_files_allowed > 0 && count($value) > $max_files_allowed) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_UPLOAD_MAX_FILES_LIMIT', $max_files_allowed)); } // Validate file paths foreach ($value as $key => &$source_file) { $source_file = base64_decode($source_file); $source_file_info = File::pathinfo($source_file); $source_basename = $source_file_info['basename']; if (!\JFile::exists($source_file)) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_UPLOAD_FILE_IS_MISSING', $source_basename)); } // Although the file is already checked during upload, make another sanity check here. File::checkMimeOrDie($allowed_types, ['tmp_name' => $source_file]); // Remove the random ID added to file's name during upload process $source_file_info['filename'] = preg_replace('#cf_(.*?)_(.*?)#', '', $source_file_info['filename']); $source_file_info['basename'] = preg_replace('#cf_(.*?)_(.*?)#', '', $source_basename); $source_file_info['index'] = $key + 1; // Replace Smart Tags in the upload folder value // Unfortunately at this time, we don't have submitted data available yet and so, we can't replace field-based Smart Tags. See @todo below. $SmartTags = new \NRFramework\SmartTags(); $SmartTags->add($source_file_info, 'file.'); $destination_file = JPATH_ROOT . DIRECTORY_SEPARATOR . $SmartTags->replace($upload_folder); // Validate destination file $destination_file_info = File::pathinfo($destination_file); if (!isset($destination_file_info['extension'])) { $destination_file = implode(DIRECTORY_SEPARATOR, [$destination_file_info['dirname'], $destination_file_info['basename'], $source_basename]); } // Move uploaded file to the destination folder after the form passes all validation checks. // Thus, if an error is triggered by another field, the file will remain in the temp folder and the user will be able to re-submit the form. $this->app->registerEvent('onConvertFormsSubmissionBeforeSave', function(&$data) use ($key, $source_file, $destination_file) { try { // get the data $tmpData = $data; if (defined('nrJ4')) { $tmpData = $data->getArgument('0'); } // This is a temporary workaround to support field-based Smart Tags in the upload folder // @todo 1: We need to prepare $data with ConvertFormsModelConversion->prepare() and pass it down to Submission::replaceSmartTags() in order for submitted values to be prepared with each field prepare() method. // @todo 2: Do Smart Tags replacement once. Merge previous replacement for file Smart Tags with this one. $SmartTags = new \NRFramework\SmartTags(); $SmartTags->add($tmpData['params'], 'field.'); $destination_file = $SmartTags->replace($destination_file); // Move uploaded file from the temp folder to the destination folder. $destination_file = File::move($source_file, $destination_file); // Give a chance to manipulate the file with a hook. // We can move the file to another folder, rename it, resize it or even uploaded it to a cloud storage service. $this->app->triggerEvent('onConvertFormsFileUpload', [&$destination_file, $tmpData]); // Always save the relative path to the database. $destination_file = Helper::pathTorelative($destination_file); // Update fields' value $tmpData['params'][$this->field->get('name')][$key] = $destination_file; // Set back the new value to $data object if (defined('nrJ4')) { $data->setArgument(0, $tmpData); } else { $data = $tmpData; } } catch (\Throwable $th) { $this->throwError($th->getMessage()); } }); } } /** * Event fired before the field options form is rendered in the backend * * @param object $form * * @return void */ protected function onBeforeRenderOptionsForm($form) { // Set the maximum upload size limit to the respective options form field $max_upload_size_str = \JHtml::_('number.bytes', \JUtility::getMaxUploadSize()); $max_upload_size_int = (int) $max_upload_size_str; $form->setFieldAttribute('max_file_size', 'max', $max_upload_size_int); $desc_lang_str = $form->getFieldAttribute('max_file_size', 'description'); $desc = \JText::sprintf($desc_lang_str, $max_upload_size_str); $form->setFieldAttribute('max_file_size', 'description', $desc); } /** * Ajax method triggered by System Plugin during file upload. * * @param string $form_id * @param string $field_key * * @return array */ public function onAjax($form_id, $field_key) { // Make sure we have a valid form and a field key if (!$form_id || !$field_key) { $this->uploadDie('COM_CONVERTFORMS_UPLOAD_ERROR'); } // Get field settings if (!$upload_field_settings = \ConvertForms\Form::getFieldSettingsByKey($form_id, $field_key)) { $this->uploadDie('COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FIELD'); } $allow_unsafe = $upload_field_settings->get('allow_unsafe', false); // Make sure we have a valid file passed if (!$file = $this->app->input->files->get('file', null, ($allow_unsafe ? 'raw' : 'cmd'))) { $this->uploadDie('COM_CONVERTFORMS_UPLOAD_ERROR_INVALID_FILE'); } // In case we allow multiple uploads the file parameter is a 2 levels array. $first_property = array_pop($file); if (is_array($first_property)) { $file = $first_property; } // Upload temporarily to the default upload folder $allowed_types = $upload_field_settings->get('upload_types'); try { $uploaded_filename = File::upload($file, null, $allowed_types, $allow_unsafe, 'cf_'); return [ // Since the path of the uploaded file will be included in the form's POST data, obfuscate the path for security reasons. // This will also prevent Akeeba Admin Tools DFIShield from mistakenly blocking File Uploads. 'file' => base64_encode($uploaded_filename), ]; } catch (\Throwable $th) { $this->uploadDie($th->getMessage()); } } /** * DropzoneJS detects errors based on the response error code. * * @param string $error_message * * @return void */ private function uploadDie($error_message) { http_response_code('500'); die(\JText::_($error_message)); } /** * Prepare value to be displayed to the user as plain text * * @param mixed $value * * @return string */ public function prepareValue($value) { if (!$value) { return; } $value = (array) $value; foreach ($value as &$link) { $link = Helper::absURL($link); } return implode(', ', $value); } /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if (!$value) { return; } $links = (array) $value; $value = ''; foreach ($links as $link) { $link = Helper::absURL($link); $value .= '<div><a download href="' . $link . '">' . File::pathinfo($link)['basename'] . '</a></div>'; } return '<div class="cf-links">' . $value . '</div>'; } /** * Display a text before the form options * * @return string The text to display */ protected function getOptionsFormHeader() { $html = ''; $temp_folder = File::getTempFolder(); if (!@is_writable($temp_folder)) { $html .= ' <div class="alert alert-danger"> ' . \JText::sprintf('COM_CONVERTFORMS_FILEUPLOAD_TEMP_FOLDER_NOT_WRITABLE', $temp_folder) . ' </div> '; } // Check if the Fileinfo PHP extension is installed required to detect the mime type. if (!extension_loaded('fileinfo') || !function_exists('mime_content_type')) { $html .= ' <div class="alert alert-danger"> ' . \JText::sprintf('COM_CONVERTFORMS_FILEUPLOAD_MIME_CONTENT_TYPE_MISSING') . ' </div> '; } return $html; } }PKBA#]�[��oo8components/com_convertforms/ConvertForms/Field/Email.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Validate; class Email extends \ConvertForms\Field { protected $inheritInputLayout = 'text'; /** * Validate field value * * @param mixed $value The field's value to validate * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { parent::validate($value); if ($this->isEmpty($value)) { return true; } if (!Validate::email($value) || $this->field->get('dnscheck') && !Validate::emaildns($value)) { $this->throwError(\JText::sprintf('COM_CONVERTFORMS_FIELD_EMAIL_INVALID'), $this->field); } } /** * Prepare value to be displayed to the user as HTML/text * * @param mixed $value * * @return string */ public function prepareValueHTML($value) { if (!$value) { return; } return '<a target="_blank" href="mailto:' . $value . '">' . $value . '</a>'; } } ?>PKBA#]7&;components/com_convertforms/ConvertForms/Field/Currency.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\Field; defined('_JEXEC') or die('Restricted access'); class Currency extends \ConvertForms\FieldChoice { protected $inheritInputLayout = 'dropdown'; /** * Set the field choices * * @return array The field choices array */ protected function getChoices() { require_once JPATH_PLUGINS . '/system/nrframework/fields/currencies.php'; $class = new \JFormFieldNR_Currencies(); $currencies = $class->currencies; asort($currencies); $choices = array(); foreach ($currencies as $currencyCode => $currencyName) { switch ($this->field->display) { case '2': $label = $currencyCode; break; case '3': $label = $currencyName . ' (' . $currencyCode . ')'; break; default: $label = $currencyName; break; } $choices[] = array( 'label' => $label, 'value' => $currencyCode, 'selected' => strtolower($this->field->value) == strtolower($currencyCode) ); } // If we have a placeholder available, add it to dropdown choices. if (isset($this->field->placeholder) && !empty($this->field->placeholder)) { array_unshift($choices, array( 'label' => trim($this->field->placeholder), 'value' => '', 'selected' => true, 'disabled' => true )); } return $choices; } } ?>PKBA#]��N݁'�'5components/com_convertforms/ConvertForms/Migrator.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; use Joomla\Registry\Registry; use \NRFramework\Countries; defined('_JEXEC') or die('Restricted access'); /** * Convert Forms Migrator */ class Migrator { /** * The database class * * @var object */ private $db; /** * Indicates the current installed version of the extension * * @var string */ private $installedVersion; /** * Class constructor * * @param string $installedVersion The current extension version */ public function __construct($installedVersion) { $this->installedVersion = $installedVersion; $this->db = \JFactory::getDbo(); } /** * Start migration process * * @return void */ public function start() { $this->set_sib_campaigns_default_v2_version(); if (!$items = $this->getForms()) { return; } foreach ($items as $item) { $item->params = new Registry($item->params); if (version_compare($this->installedVersion, '2.7.3', '<=')) { $this->fixUploadFolder($item); } if (version_compare($this->installedVersion, '3.2.8', '<=')) { $this->updateSubmissionCountryNamesToCodes($item->id, $item); $this->updateFormConditionsCountryNamesToCodes($item); } // Update item using id as the primary key. $item->params = json_encode($item->params); $this->db->updateObject('#__convertforms', $item, 'id'); } } private function fixUploadFolder(&$item) { if (!$fields = $item->params->get('fields')) { return; } foreach ($fields as &$field) { if ($field->type != 'fileupload') { continue; } if (isset($field->upload_folder_type)) { continue; } $field->upload_folder_type = 'custom'; } } /** * Finds all SendInBlue campaigns and sets the version to v2 if not set. * * @since 2.8.4 * * @return void */ private function set_sib_campaigns_default_v2_version() { if (version_compare($this->installedVersion, '2.8.4', '>=')) { return; } if (!$campaigns = $this->getCampaigns('sendinblue')) { return; } foreach ($campaigns as $item) { $item->params = new Registry($item->params); // version exists, move on if ($version = $item->params->get('version')) { continue; } // if no version is found, set it to v2 $item->params->set('version', '2'); // Also set update existing to default value, true $item->params->set('updateexisting', '1'); // Update item using id as the primary key. $item->params = json_encode($item->params); $this->db->updateObject('#__convertforms_campaigns', $item, 'id'); } } /** * Updates a submission's country names to country codes. * * @param int $form_id * @param object $item * * @since 3.2.7 * * @return void */ private function updateSubmissionCountryNamesToCodes(&$form_id, $item) { $fields = (array) $item->params->get('fields'); // Return all country field names $formCountryFields = array_filter(array_map(function($field) { return $field->type === 'country' ? $field->name : false; }, $fields)); // Skip this form if it does not have a country field if (!$formCountryFields) { return; } // Get form submissions if (!$submissions = $this->getFormSubmissions($form_id)) { return; } foreach ($formCountryFields as $key => $field_name) { // Loop each submissions foreach ($submissions as $submission) { // Get submission data if (!$submission_data = json_decode($submission->params, true)) { continue; } // Sanity check if (!count($submission_data)) { continue; } // Ensure the submission has country field related value if (!isset($submission_data[$field_name])) { continue; } // Update country name to code $submission_data[$field_name] = Countries::toCountryCode($submission_data[$field_name]); // Update submission $submission->params = json_encode($submission_data); $this->db->updateObject('#__convertforms_conversions', $submission, 'id'); } } } /** * Updates Conditional Logic of the form to transform * Country Names to Country Codes. * * @param object $item * * @since 3.2.7 * * @return void */ private function updateFormConditionsCountryNamesToCodes(&$item) { $fields = (array) $item->params->get('fields'); // Return all country field IDs $formCountryFields = array_values(array_filter(array_map(function($field) { return $field->type === 'country' ? $field->key : false; }, $fields))); // Ensure the form has country fields if (!$formCountryFields) { return; } // Ensure the form has conditional logic rules set up if (!$item->params->get('conditionallogic.rules')) { return; } // Ensure we can parse them if (!$rules = json_decode($item->params->get('conditionallogic.rules'), true)) { return; } foreach ($rules as $key => &$value) { // Fix "When" if (isset($value['rules'])) { foreach ($value['rules'] as $whenKey => &$whenValue) { foreach ($whenValue as $whenRuleKey => &$whenRuleValue) { if (!in_array($whenRuleValue['field'], $formCountryFields)) { continue; } if ($newValue = Countries::toCountryCode($whenRuleValue['arg'])) { $whenRuleValue['arg'] = $newValue; } } } } // Fix "Do" if (isset($value['actions'])) { foreach ($value['actions'] as $doKey => &$doValue) { if (!in_array($doValue['field'], $formCountryFields)) { continue; } if ($newValue = Countries::toCountryCode($doValue['arg'])) { $doValue['arg'] = $newValue; } } } // Fix "If the condition is not met" if (isset($value['else'])) { foreach ($value['else'] as $elseKey => &$elseValue) { if (!in_array($elseValue['field'], $formCountryFields)) { continue; } if ($newValue = Countries::toCountryCode($elseValue['arg'])) { $elseValue['arg'] = $newValue; } } } } // Set rules $item->params->set('conditionallogic.rules', json_encode($rules)); } /** * Get Forms List * * @return object */ public function getForms() { $db = $this->db; $query = $db->getQuery(true); $query ->select('*') ->from('#__convertforms'); $db->setQuery($query); return $db->loadObjectList(); } /** * Get form submissions. * * @return object */ public function getFormSubmissions($form_id = null) { if (!$form_id) { return; } $db = $this->db; $query = $db->getQuery(true); $query ->select('*') ->from('#__convertforms_conversions') ->where($this->db->quoteName('form_id') . ' = ' . $this->db->quote($form_id)); $db->setQuery($query); return $db->loadObjectList(); } /** * Get Campaigns List * * @param string $service * * @return object */ public function getCampaigns($service = null) { $db = $this->db; $query = $db->getQuery(true); $query ->select('*') ->from('#__convertforms_campaigns'); if ($service) { $query->where($this->db->quoteName('service') . ' = ' . $this->db->quote($service)); } $db->setQuery($query); return $db->loadObjectList(); } }PKBA#]db}�|-|-2components/com_convertforms/ConvertForms/Field.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; use Joomla\CMS\Filter\InputFilter; use Joomla\Registry\Registry; use ConvertForms\Helper; defined('_JEXEC') or die('Restricted access'); /** * Convert Forms Field Main Class */ class Field { /** * Field Object * * @var object */ protected $field; /** * The prefix name used for input names * * @var string */ private $namePrefix = 'cf'; /** * Filter user value before saving into the database. By default converts the input to a string; strips all HTML tags / attributes. * * @var string */ protected $filterInput = 'HTML'; /** * Exclude common fields from the form rendering * * @var mixed */ protected $excludeFields; /** * Data passed to layout rendering * * @var object */ private $layoutData; /** * Indicates whether it accepts multiple values * * @var bool */ protected $multiple = false; /** * Indicates the default required behavior on the form * * @var bool */ protected $required = true; /** * The data submitted by the user in the form * * @var array */ protected $data; /** * Class constructor * * @param mixed $field_options Object or Array Field options * * @return void */ public function __construct($field_options = null, $form_data = null) { $this->data = $form_data; if ($field_options) { $field_options['required'] = isset($field_options['required']) ? $field_options['required'] : $this->required; // We should better call $this->setField() here $this->field = new Registry($field_options); } $this->app = \JFactory::getApplication(); } /** * Set field object * * Rename to prepareField * * @param mixed $field Object or Array Field options */ public function setField($field) { $field = is_array($field) ? (object) $field : $field; if (!isset($field->name) || empty($field->name)) { $field->name = $this->getName() . '_' . $field->key; } $field->input_id = 'form' . $field->namespace . '_' . $field->name; $field->input_name = $this->namePrefix . '[' . $field->name . ']'; $field->htmlattributes = []; $this->field = $field; return $this; } /** * This is bullshit. We should call setField() in the Field's Class constructor so we can access the field object correctly. Consider this as a temporary workround. * * @return mixed */ public function getField() { return get_class($this->field) == 'Joomla\Registry\Registry' ? $this->field->toObject() : $this->field; } /** * Event fired during form saving in the backend to help us validate user options. * * @param object $model The Form Model * @param array $form_data The form data to be saved * @param array $field_options The field data * * @return bool */ public function onBeforeFormSave($model, $form_data, &$field_options) { if (isset($field_options['name']) && $field_options['name'] == '') { $field_options['name'] = $field_options['type'] . '_' . $field_options['key']; } return true; } /** * Discovers the actual field name from the called class * * @return string */ protected function getName() { $class_parts = explode('\\', get_called_class()); return strtolower(end($class_parts)); } /** * Renders the field's input element * * @return string HTML output */ protected function getInput() { $layoutsPath = JPATH_ADMINISTRATOR . '/components/com_convertforms/layouts/fields/'; // Override layout path if it's available $layoutName = isset($this->inheritInputLayout) ? $this->inheritInputLayout : $this->getName(); // Check if an admininistrator layout is available if ($this->app->isClient('administrator') && \JFile::exists($layoutsPath . $layoutName . '_admin.php')) { $layoutName .= '_admin'; } // @todo - Pass only this class to payload as $field and change all layouts accordingly. Mind the backwards compatibility. return Helper::layoutRender('fields.' . $layoutName, $this->getInputData()); } /** * Prepares the field's input layout data * * @return array */ protected function getInputData() { return array( 'class' => $this, 'field' => $this->field, 'form' => $this->field->form ); } /** * Renders the Field's control group that will contain both input and label parts. * * @return string HTML Output */ public function getControlGroup() { \JPluginHelper::importPlugin('convertformstools'); $this->app->triggerEvent('onConvertFormsFieldBeforeRender', [&$this->field, $this->field->form]); $this->field->input = $this->getInput(); $layoutData = [ 'field' => $this->field, 'form' => $this->field->form ]; $html = Helper::layoutRender('controlgroup', $layoutData); $this->app->triggerEvent('onConvertFormsFieldAfterRender', [&$html, $this->field, $this->field->form]); return $html; } /** * Renders the Field's Options Form used in the backend * * @param string $formControl From control prefix * @param array $loadData Form data to bind * * @return string The final HTML output */ public function getOptionsForm($formControl = 'jform', $loadData = null) { // Setup the common form first $form = new \JForm('cf', array('control' => $formControl)); $form->addFieldPath(JPATH_COMPONENT_ADMINISTRATOR . '/models/forms/fields'); $form->addFieldPath(JPATH_PLUGINS . '/system/nrframework/fields'); $form->loadFile(JPATH_COMPONENT_ADMINISTRATOR . '/ConvertForms/xml/field.xml'); // Exclude Fields if (is_array($this->excludeFields)) { $reservedFields = array( 'key', 'type' ); foreach ($form->getFieldSets() as $key => $fieldSetName) { $fields = $form->getFieldset($fieldSetName->name); foreach ($fields as $key => $field) { // We can't exclude reserved fields if (in_array($field->fieldname, $reservedFields)) { continue; } if (!in_array($field->fieldname, $this->excludeFields) && !in_array('*', $this->excludeFields)) { continue; } $form->removeField($field->fieldname); } } } // Load field based options $form->loadFile(JPATH_COMPONENT_ADMINISTRATOR . '/ConvertForms/xml/field/' . $this->getName() . '.xml'); \JPluginHelper::importPlugin('convertformstools'); $this->app->triggerEvent('onConvertFormsBackendRenderOptionsForm', [&$form, $this->getName()]); // Bind Data $form->bind($loadData); // Give individual field classes to manipulate the form before the render if (method_exists($this, 'onBeforeRenderOptionsForm')) { $this->onBeforeRenderOptionsForm($form); } // Render Layout $data = array( 'form' => $form, 'header' => $this->getOptionsFormHeader(), 'fieldTypeName' => $this->getName(), 'loadData' => $loadData ); $html = Helper::layoutRender('optionsform', $data); // Give individual field classes to manipulate the form after the render if (method_exists($this, 'onAfterRenderOptionsForm')) { $this->onAfterRenderOptionsForm($html); } return $html; } /** * Display a text before the form options * * @return string The text to display */ protected function getOptionsFormHeader() { return; } /** * Validate form submitted value * * @param mixed $value The field's value to validate (Passed by reference) * * @return mixed True on success, throws an exception on error */ public function validate(&$value) { $isEmpty = $this->isEmpty($value); $isRequired = $this->field->get('required'); if ($isEmpty && $isRequired) { $this->throwError(\JText::_('COM_CONVERTFORMS_FIELD_REQUIRED'), $field_options); } // Let's do some filtering. $value = $this->filterInput($value); } /** * Checks if submitted value is empty * * @param mixed $value * * @return bool */ protected function isEmpty($value) { if (is_array($value) && count($value) == 0) { return true; } // Note: Do not use empty() as evaluates '0' as true which is a valid value for the Number field. if ($value == '' || is_null($value)) { return true; } return false; } /** * Filter user input * * @param mixed $input User input value * * @return mixed The filtered user input */ public function filterInput($input) { $filter = $this->field->get('filter', $this->filterInput); // Safehtml is a special filter and we need to initialize InputFilter class differently if ($filter == 'safehtml') { return InputFilter::getInstance([], [], 1, 1)->clean($input, 'html'); } return InputFilter::getInstance()->clean($input, $filter); } /** * Get the field's label which is also parsed for Smart Tags */ public function getLabel() { if ($label = $this->field->get('label')) { return \NRFramework\SmartTags::getInstance()->replace($label); } // In case the Label option is empty, use the name of the field. return $this->field->get('name'); } /** * Throw an error exception * * @param [type] $message [description] * * @return [type] [description] */ public function throwError($message) { if (!$label = $this->getLabel()) { $label = $this->field->get('name', ucfirst($this->field->get('type'))); } throw new \Exception($label . ': ' . \JText::_($message)); } /** * Prepare value to be displayed to the user as plain text * * @param mixed $value * * @return string */ public function prepareValue($value) { if (is_bool($value)) { return $value ? '1' : '0'; } if (is_array($value)) { return implode(', ', $value); } // Strings and numbers return Helper::escape($value); } public function prepareValueHTML($value) { return $this->prepareValue($value); } /** * Convert a field object to Widget * * @param array $widget_options The widget options * * @return string The widget final layout */ public function toWidget($widget_options = []) { $default_options = [ 'id' => $this->field->input_id, 'name' => $this->field->input_name, 'readonly' => isset($this->field->readonly) ? (bool) $this->field->readonly : false, 'value' => isset($this->field->value) ? (string) $this->field->value : null, 'required' => isset($this->field->required) ? (bool) $this->field->required : false, 'placeholder' => isset($this->field->placeholder) ? $this->field->placeholder : '', 'load_css_vars' => false, 'input_class' => 'cf-input', ]; $widget_options = array_merge($default_options, $widget_options); return \NRFramework\Widgets\Helper::render($this->getName(), $widget_options); } } ?>PKBA#]7(��777components/com_convertforms/ConvertForms/xml/addons.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <addons> <addon name="mailchimp" label="MailChimp" description="Convert Forms MailChimp addon allows you to create MailChimp newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/mailchimp.png" docalias="sync-leads-with-mailchimp" /> <addon name="getresponse" label="GetResponse" description="Convert Forms GetResponse addon allows you to create GetResponse newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/get-response.png" docalias="sync-leads-with-getresponse" /> <addon name="activecampaign" label="Active Campaign" description="Convert Forms ActiveCampaign addon allows you to create ActiveCampaign newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/active-campaign.png" docalias="sync-leads-with-activecampaign" /> <addon name="acymailing" label="AcyMailing" description="Convert Forms AcyMailing addon allows you to create AcyMailing newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/acymailing.png" docalias="sync-leads-with-acymailing" proonly="false" /> <addon name="aweber" label="AWeber" description="Convert Forms AWeber addon allows you to create AWeber newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/aweber.png" docalias="sync-leads-with-aweber" /> <addon name="campaignmonitor" label="Campaign Monitor" description="Convert Forms CampaignMonitor addon allows you to create CampaignMonitor newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/campaign-monitor.png" docalias="sync-leads-with-campaignmonitor" /> <addon name="convertkit" label="ConvertKit" description="Convert Forms ConvertKit addon allows you to create ConvertKit newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/convertkit.png" docalias="sync-leads-with-convertkit" /> <addon name="hubspot" label="HubSpot" description="Convert Forms HubSpot addon allows you to create HubSpot newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/hubspot.png" docalias="sync-leads-with-hubspot" /> <addon name="sendinblue" label="SendinBlue" description="Convert Forms SendinBlue addon allows you to create SendinBlue newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/sendinblue.png" docalias="sync-leads-with-sendinblue" /> <addon name="zapier" label="Zapier" description="Convert Forms Zapier addon allows you to connect Your Joomla Forms with 500+ Web Apps." image="https://static.tassos.gr/images/integrations/zapier.png" docalias="how-to-connect-convertforms-with-zapier" /> <addon name="zoho" label="Zoho Campaigns" description="Convert Forms Zoho addon allows you to connect Your Joomla Forms with Zoho Campaigns." image="https://static.tassos.gr/images/integrations/zoho.png" docalias="sync-leads-with-zoho" /> <addon name="elasticemail" label="Elastic Email" description="Convert Forms Elastic Email addon allows you to create Elastic Email newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/elasticemail.png" docalias="sync-leads-with-elasticemail" /> <addon name="icontact" label="iContact" description="Convert Forms iContact addon allows you to create iContact newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/icontact.png" docalias="how-to-connect-convertforms-with-icontact" /> <addon name="zohocrm" label="Zoho CRM" description="Convert Forms Zoho CRM addon allows you to sync your Submissions with Zoho CRM's modules." image="https://static.tassos.gr/images/integrations/zohocrm.png" docalias="sync-leads-with-zohocrm" /> <addon name="salesforce" label="SalesForce Web-to-Lead" description="Convert Forms SalesForce addon allows you to create SalesForce Web-to-Lead forms in Joomla." image="https://static.tassos.gr/images/integrations/salesforce.png" docalias="sync-leads-with-salesforce" /> <addon name="drip" label="Drip" description="Convert Forms Drip addon allows you to sync form submissions with the Drip Ecommerce CRM." image="https://static.tassos.gr/images/integrations/drip.png" docalias="sync-leads-with-drip" /> <!-- Coming Soon --> <addon name="constantcontact" label="Constant Contact" description="Convert Forms ConstantContact addon allows you to create ConstantContact newsletter signup forms in Joomla." image="https://static.tassos.gr/images/integrations/constant-contact.png" comingsoon="true" docalias="how-to-connect-convert-forms-with-constant-contact" /> </addons>PKBA#]�Uff>components/com_convertforms/ConvertForms/xml/field/confirm.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="confirmfield" type="text" label="COM_CONVERTFORMS_FIELD_CONFIRM_FIELD" description="COM_CONVERTFORMS_FIELD_CONFIRM_FIELD_DESC" /> <field name="confirm_type" type="list" label="COM_CONVERTFORMS_FIELD_CONFIRM_TYPE" description="COM_CONVERTFORMS_FIELD_CONFIRM_TYPE_DESC" default="text"> <option value="text">COM_CONVERTFORMS_FIELD_TEXT</option> <option value="password">COM_CONVERTFORMS_FIELD_PASSWORD</option> </field> </fieldset> <fieldset name="restrictions"> <field name="inputmask" type="text" label="COM_CONVERTFORMS_INPUT_MASK" description="COM_CONVERTFORMS_INPUT_MASK_DESC" hint="(999) 999-9999" /> </fieldset> </form>PKBA#]��P��:components/com_convertforms/ConvertForms/xml/field/url.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> <fieldset name="advanced"> <field name="placeholder" type="text" label="COM_CONVERTFORMS_PLACEHOLDER_NAME" description="COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC" default="http://www.example.com" /> </fieldset> </form>PKBA#]��a��<components/com_convertforms/ConvertForms/xml/field/email.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> <fieldset name="basic"> <field name="dnscheck" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK" description="COM_CONVERTFORMS_FIELD_EMAIL_DNSCHECK_DESC" /> </fieldset> </form>PKBA#]A7ֳ=components/com_convertforms/ConvertForms/xml/field/hidden.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="required" type="nrtoggle" label="COM_CONVERTFORMS_REQUIRED_NAME" description="COM_CONVERTFORMS_REQUIRED_NAME_DESC" /> </fieldset> </form>PKBA#]��x���Bcomponents/com_convertforms/ConvertForms/xml/field/rangeslider.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="min" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_MIN" description="COM_CONVERTFORMS_FIELD_SLIDER_MIN_VALUE_DESC" default="0" /> <field name="max" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_MAX" description="COM_CONVERTFORMS_FIELD_SLIDER_MAX_VALUE_DESC" default="100" max="100" /> <field name="step" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_STEP" description="COM_CONVERTFORMS_FIELD_SLIDER_STEP_VALUE_DESC" default="1" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> </form>PKBA#]�6S%� � =components/com_convertforms/ConvertForms/xml/field/submit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="text" type="text" default="Sign up" hint="Sign up" label="COM_CONVERTFORMS_BUTTON_TEXT" description="COM_CONVERTFORMS_BUTTON_TEXT_DESC" /> <field name="align" type="list" label="COM_CONVERTFORMS_BUTTON_ALIGN" description="COM_CONVERTFORMS_BUTTON_ALIGN_DESC" showon="size:cf-width-auto,cf-one-third,cf-one-half" default="left"> <option value="left">NR_LEFT</option> <option value="center">NR_CENTER</option> <option value="right">NR_RIGHT</option> </field> <field name="btnstyle" type="list" label="COM_CONVERTFORMS_SUBMIT_STYLE" description="COM_CONVERTFORMS_SUBMIT_STYLE_DESC" default="flat"> <option value="flat">COM_CONVERTFORMS_FLAT</option> <option value="outline">COM_CONVERTFORMS_OUTLINE</option> <option value="gradient">COM_CONVERTFORMS_GRADIENT</option> </field> <field name="fontsize" type="nrnumber" addon="px" default="15" min="12" step="2" label="COM_CONVERTFORMS_BTN_FONT_SIZE" description="COM_CONVERTFORMS_BTN_FONT_SIZE_DESC" /> <field name="bg" type="color" label="NR_BACKGROUND_COLOR" description="NR_BACKGROUND_COLOR_DESC" default="#444" /> <field name="textcolor" type="color" label="NR_TEXT_COLOR" description="NR_COLOR_DESC" default="#fff" /> <field name="texthovercolor" type="color" label="COM_CONVERTFORMS_SUBMIT_HOVER_COLOR" description="COM_CONVERTFORMS_SUBMIT_HOVER_COLOR_DESC" default="#fff" showon="btnstyle:outline" /> <field name="borderradius" type="nrnumber" addon="px" default="3" min="0" step="1" label="COM_CONVERTFORMS_BORDER_RADIUS" description="COM_CONVERTFORMS_BORDER_RADIUS_DESC" /> <field name="vpadding" type="nrnumber" addon="px" default="11" min="0" label="COM_CONVERTFORMS_VPADDING_SIZE" description="COM_CONVERTFORMS_PADDING_DESC" /> <field name="hpadding" type="nrnumber" addon="px" default="15" min="0" label="COM_CONVERTFORMS_HPADDING_SIZE" description="COM_CONVERTFORMS_PADDING_DESC" /> </fieldset> </form>PKBA#]�R8���Kcomponents/com_convertforms/ConvertForms/xml/field/recaptchav2invisible.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="badge" type="list" label="COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE" description="COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_DESC" default="inline"> <option value="inline">COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_INLINE</option> <option value="bottomright">COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMRIGHT</option> <option value="bottomleft">COM_CONVERTFORMS_FIELD_RECAPTCHA_INVIS_BADGE_BOTTOMLEFT</option> </field> </fieldset> </form>PKBA#]��i77<components/com_convertforms/ConvertForms/xml/field/radio.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="choices" type="nr_choices" label="COM_CONVERTFORMS_CHOICES" description="COM_CONVERTFORMS_CHOICES_DESC" /> </fieldset> <fieldset name="advanced"> <field name="choicelayout" type="list" label="COM_CONVERTFORMS_CHOICE_LAYOUT" description="COM_CONVERTFORMS_CHOICE_LAYOUT_DESC" default=""> <option value="">COM_CONVERTFORMS_CHOICE_1_COLUMN</option> <option value="2">COM_CONVERTFORMS_CHOICE_2_COLUMN</option> <option value="3">COM_CONVERTFORMS_CHOICE_3_COLUMN</option> <option value="auto">COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE</option> </field> </fieldset> </form>PKBA#]��i77?components/com_convertforms/ConvertForms/xml/field/checkbox.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="choices" type="nr_choices" label="COM_CONVERTFORMS_CHOICES" description="COM_CONVERTFORMS_CHOICES_DESC" /> </fieldset> <fieldset name="advanced"> <field name="choicelayout" type="list" label="COM_CONVERTFORMS_CHOICE_LAYOUT" description="COM_CONVERTFORMS_CHOICE_LAYOUT_DESC" default=""> <option value="">COM_CONVERTFORMS_CHOICE_1_COLUMN</option> <option value="2">COM_CONVERTFORMS_CHOICE_2_COLUMN</option> <option value="3">COM_CONVERTFORMS_CHOICE_3_COLUMN</option> <option value="auto">COM_CONVERTFORMS_CHOICE_SIDE_BY_SIDE</option> </field> </fieldset> </form>PKBA#]�N8��Ecomponents/com_convertforms/ConvertForms/xml/field/termsofservice.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="terms_text" type="textarea" label="COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL" description="COM_CONVERTFORMS_FIELD_TERMSOFSERVICE_TEXT_LABEL_DESC" default="I agree with the terms of service" class="editorx show-smart-tags" /> </fieldset> </form>PKBA#]��`| >components/com_convertforms/ConvertForms/xml/field/divider.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="border_style" type="list" label="COM_CONVERTFORMS_FIELD_BORDER_STYLE" description="COM_CONVERTFORMS_FIELD_BORDER_STYLE_DESC" default="dashed"> <option value="dashed">COM_CONVERTFORMS_FIELD_BORDER_STYLE_DASHED</option> <option value="solid">COM_CONVERTFORMS_FIELD_BORDER_STYLE_SOLID</option> <option value="dotted">COM_CONVERTFORMS_FIELD_BORDER_STYLE_DOTTED</option> </field> <field name="border_width" type="nrnumber" label="COM_CONVERTFORMS_FIELD_BORDER_WIDTH" description="COM_CONVERTFORMS_FIELD_BORDER_WIDTH_DESC" addon="px" min="0" default="1" /> <field name="border_color" type="nrcolor" label="COM_CONVERTFORMS_FIELD_BORDER_COLOR" description="COM_CONVERTFORMS_FIELD_BORDER_COLOR_DESC" default="#ccc" /> <field name="margin_top" type="nrnumber" label="COM_CONVERTFORMS_FIELD_MARGIN_TOP" description="COM_CONVERTFORMS_FIELD_MARGIN_TOP_DESC" addon="px" min="0" default="0" /> <field name="margin_bottom" type="nrnumber" label="COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM" description="COM_CONVERTFORMS_FIELD_MARGIN_BOTTOM_DESC" addon="px" min="0" default="0" /> </fieldset> </form>PKBA#]x�`{{?components/com_convertforms/ConvertForms/xml/field/currency.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="display" type="list" label="Display Type" default="1"> <option value="1">Currency Name</option> <option value="2">Currency Code</option> <option value="3">Both</option> </field> </fieldset> </form>PKBA#]&�kAcomponents/com_convertforms/ConvertForms/xml/field/fileupload.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="upload_folder_type" type="list" label="COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE" description="COM_CONVERTFORMS_FILEUPLOAD_FOLDER_TYPE_DESC" default="auto"> <option value="auto">NR_AUTO</option> <option value="custom">NR_CUSTOM</option> </field> <field name="upload_folder" type="text" label="COM_CONVERTFORMS_FILEUPLOAD_FOLDER" description="COM_CONVERTFORMS_FILEUPLOAD_FOLDER_DESC" hint="media/com_convertforms/uploads" class="show-smart-tags" showon="upload_folder_type:custom" /> <field name="limit_files" type="number" label="COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES" description="COM_CONVERTFORMS_FILEUPLOAD_LIMIT_FILES_DESC" default="1" min="0" /> <field name="max_file_size" type="nrnumber" label="COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE" description="COM_CONVERTFORMS_FILEUPLOAD_MAX_FILE_SIZE_DESC" addon="MB" min="0" default="0" /> <field name="upload_types" type="text" label="COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES" description="COM_CONVERTFORMS_FILEUPLOAD_UPLOAD_TYPES_DESC" hint=".jpg, .png, .gif" default=".jpg, .png, .gif" /> <field name="allow_unsafe" type="nrtoggle" label="COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE" description="COM_CONVERTFORMS_UPLOAD_ALLOW_UNSAFE_DESC" /> <field name="auto_delete_files" type="nrnumber" label="COM_CONVERTFORMS_UPLOAD_AUTO_DELETE" description="COM_CONVERTFORMS_UPLOAD_AUTO_DELETE_DESC" addon="NR_DAYS" min="0" default="0" /> </fieldset> </form>PKBA#])�� ?components/com_convertforms/ConvertForms/xml/field/dropdown.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="choices" type="nr_choices" label="COM_CONVERTFORMS_CHOICES" description="COM_CONVERTFORMS_CHOICES_DESC" /> </fieldset> </form>PKBA#]��+���Bcomponents/com_convertforms/ConvertForms/xml/field/colorpicker.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> <fieldset name="advanced"> <field name="value" type="color" label="COM_CONVERTFORMS_FIELD_VALUE" description="COM_CONVERTFORMS_FIELD_VALUE_DESC" class="span12" /> </fieldset> </form>PKBA#]> ��ss;components/com_convertforms/ConvertForms/xml/field/text.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="restrictions"> <field name="inputmask" type="text" label="COM_CONVERTFORMS_INPUT_MASK" description="COM_CONVERTFORMS_INPUT_MASK_DESC" hint="(999) 999-9999" /> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> <field name="minchars" type="nrnumber" label="COM_CONVERTFORMS_MIN_CHARS" description="COM_CONVERTFORMS_MIN_CHARS_DESC" default="0" min="0" /> <field name="maxchars" type="nrnumber" label="COM_CONVERTFORMS_MAX_CHARS" description="COM_CONVERTFORMS_MAX_CHARS_DESC" default="0" min="0" /> <field name="minwords" type="nrnumber" label="COM_CONVERTFORMS_MIN_WORDS" description="COM_CONVERTFORMS_MIN_WORDS_DESC" default="0" min="0" /> <field name="maxwords" type="nrnumber" label="COM_CONVERTFORMS_MAX_WORDS" description="COM_CONVERTFORMS_MAX_WORDS_DESC" default="0" min="0" /> </fieldset> <fieldset name="advanced"> <field name="filter" type="list" label="COM_CONVERTFORMS_FIELD_FILTER" description="COM_CONVERTFORMS_FIELD_FILTER_DESC" default="html"> <option value="safehtml">JLIB_FILTER_PARAMS_SAFEHTML</option> <option value="html">JLIB_FILTER_PARAMS_TEXT</option> <option value="raw">JLIB_FILTER_PARAMS_RAW</option> <option value="alnum">JLIB_FILTER_PARAMS_ALNUM</option> <option value="word">Word</option> <option value="integer">JLIB_FILTER_PARAMS_INTEGER</option> <option value="float">JLIB_FILTER_PARAMS_FLOAT</option> </field> </fieldset> </form>PKBA#])k]��?components/com_convertforms/ConvertForms/xml/field/datetime.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="mode" type="list" label="COM_CONVERTFORMS_FIELD_DATETIME_MODE" description="COM_CONVERTFORMS_FIELD_DATETIME_MODE_DESC" default="date"> <option value="single">NR_SINGLE</option> <option value="multiple">NR_MULTIPLE</option> <option value="range">NR_RANGE</option> </field> <field name="dateformat" type="text" label="COM_CONVERTFORMS_FIELD_DATETIME_FORMAT" description="COM_CONVERTFORMS_FIELD_DATETIME_FORMAT_DESC" default="d/m/Y H:i" hint="d/m/Y H:i, m/d/Y, d-m-Y H:i" /> <field name="firstDayOfWeek" type="list" label="COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK" description="COM_CONVERTFORMS_FIELD_DATETIME_FIRSTDAYOFWEEK_DESC" default="1"> <option value="1">NR_MONDAY</option> <option value="2">NR_TUESDAY</option> <option value="3">NR_WEDNESDAY</option> <option value="4">NR_THURSDAY</option> <option value="5">NR_FRIDAY</option> <option value="6">NR_SATURDAY</option> <option value="0">NR_SUNDAY</option> </field> <field name="mindate" type="text" label="COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE" description="COM_CONVERTFORMS_FIELD_DATETIME_MIN_DATE_DESC" hint="now, today, tomorrow, -3 day, +5 day" /> <field name="maxdate" type="text" label="COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE" description="COM_CONVERTFORMS_FIELD_DATETIME_MAX_DATE_DESC" hint="+5 day, +2 month, +3 week" /> <!-- Time --> <field name="showtimepicker" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER" description="COM_CONVERTFORMS_FIELD_DATETIME_TIMEPICKER_DESC" checked="true" /> <field name="time24" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_DATETIME_TIME24" description="COM_CONVERTFORMS_FIELD_DATETIME_TIME24_DESC" showon="showtimepicker:1" /> <field name="minuteincrement" type="number" label="COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP" description="COM_CONVERTFORMS_FIELD_DATETIME_MINUTE_STEP_DESC" default="5" min="0" showon="showtimepicker:1" /> <field name="inline" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_DATETIME_INLINE" description="COM_CONVERTFORMS_FIELD_DATETIME_INLINE_DESC" /> <field name="theme" type="list" label="COM_CONVERTFORMS_FIELD_DATETIME_THEME" description="COM_CONVERTFORMS_FIELD_DATETIME_THEME_DESC" default=""> <option value="">JDEFAULT</option> <option value="dark">Dark</option> <option value="material_blue">Material Blue</option> <option value="material_green">Material Green</option> <option value="material_red">Material Red</option> <option value="material_orange">Material Orange</option> <option value="airbnb">Airbnb</option> <option value="confetti">Confetti</option> </field> </fieldset> <fieldset name="advanced"> <field name="value" type="textarea" label="COM_CONVERTFORMS_FIELD_VALUE" description="COM_CONVERTFORMS_FIELD_VALUE_DESC" class="show-smart-tags" hint="now, today, tomorrow, -3 day, +5 day" /> <field name="disable_mobile" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE" description="COM_CONVERTFORMS_FIELD_DATETIME_DISABLEMOBILE_DESC" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> </form>PKBA#]Geƫgg;components/com_convertforms/ConvertForms/xml/field/html.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="text" type="textarea" label="COM_CONVERTFORMS_FIELD_VALUE" description="COM_CONVERTFORMS_FIELD_VALUE_DESC" class="editorx show-smart-tags" default="Add custom <b>freetext</b> or <i>HTML</i> code" /> </fieldset> </form>PKBA#]%����@components/com_convertforms/ConvertForms/xml/field/recaptcha.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="theme" type="list" label="NR_THEME" description="COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC" default="light"> <option value="light">NR_LIGHT</option> <option value="dark">NR_DARK</option> </field> <field name="size" type="list" label="NR_SIZE" description="COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC" default="normal"> <option value="normal">NR_NORMAL</option> <option value="compact">NR_COMPACT</option> </field> </fieldset> </form>PKBA#]z��.ffAcomponents/com_convertforms/ConvertForms/xml/field/emptyspace.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="gap" type="nrnumber" label="COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP" description="COM_CONVERTFORMS_FIELD_EMPTY_SPACE_GAP_DESC" addon="px" min="0" default="20" /> </fieldset> </form>PKBA#]�2�jj?components/com_convertforms/ConvertForms/xml/field/hcaptcha.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="hcaptcha_type" type="list" label="NR_TYPE" description="COM_CONVERTFORMS_FIELD_HCAPTCHA_TYPE_DESC" default="checkbox"> <option value="checkbox">NR_CHECKBOX</option> <option value="invisible">NR_INVISIBLE</option> </field> <field name="theme" type="list" label="NR_THEME" description="COM_CONVERTFORMS_FIELD_RECAPTCHA_THEME_DESC" showon="hcaptcha_type:checkbox" default="light"> <option value="light">NR_LIGHT</option> <option value="dark">NR_DARK</option> </field> <field name="size" type="list" label="NR_SIZE" description="COM_CONVERTFORMS_FIELD_RECAPTCHA_SIZE_DESC" showon="hcaptcha_type:checkbox" default="normal"> <option value="normal">NR_NORMAL</option> <option value="compact">NR_COMPACT</option> </field> </fieldset> </form>PKBA#]� ���=components/com_convertforms/ConvertForms/xml/field/editor.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="editor" type="plugins" label="COM_CONVERTFORMS_EDITOR_SELECT" description="COM_CONVERTFORMS_EDITOR_SELECT_DESC" folder="editors"> <option value="">JOPTION_USE_DEFAULT</option> </field> <field name="height" type="nrnumber" label="COM_CONVERTFORMS_EDITOR_HEIGHT" description="COM_CONVERTFORMS_EDITOR_HEIGHT_DESC" addon="px" default="300" step="50" min="0" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> <field name="minchars" type="nrnumber" label="COM_CONVERTFORMS_MIN_CHARS" description="COM_CONVERTFORMS_MIN_CHARS_DESC" default="0" min="0" /> <field name="maxchars" type="nrnumber" label="COM_CONVERTFORMS_MAX_CHARS" description="COM_CONVERTFORMS_MAX_CHARS_DESC" default="0" min="0" /> <field name="minwords" type="nrnumber" label="COM_CONVERTFORMS_MIN_WORDS" description="COM_CONVERTFORMS_MIN_WORDS_DESC" default="0" min="0" /> <field name="maxwords" type="nrnumber" label="COM_CONVERTFORMS_MAX_WORDS" description="COM_CONVERTFORMS_MAX_WORDS_DESC" default="0" min="0" /> </fieldset> <fieldset name="advanced"> <field name="filter" type="list" label="COM_CONVERTFORMS_FIELD_FILTER" description="COM_CONVERTFORMS_FIELD_FILTER_DESC" default="safehtml"> <option value="safehtml">JLIB_FILTER_PARAMS_SAFEHTML</option> <option value="raw">JLIB_FILTER_PARAMS_RAW</option> </field> </fieldset> </form>PKBA#]��N?components/com_convertforms/ConvertForms/xml/field/textarea.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="textareaheight" type="nrnumber" label="COM_CONVERTFORMS_TEXTAREA_HEIGHT" description="COM_CONVERTFORMS_TEXTAREA_HEIGHT_DESC" addon="rows" default="3" min="1" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> <field name="minchars" type="nrnumber" label="COM_CONVERTFORMS_MIN_CHARS" description="COM_CONVERTFORMS_MIN_CHARS_DESC" default="0" min="0" /> <field name="maxchars" type="nrnumber" label="COM_CONVERTFORMS_MAX_CHARS" description="COM_CONVERTFORMS_MAX_CHARS_DESC" default="0" min="0" /> <field name="minwords" type="nrnumber" label="COM_CONVERTFORMS_MIN_WORDS" description="COM_CONVERTFORMS_MIN_WORDS_DESC" default="0" min="0" /> <field name="maxwords" type="nrnumber" label="COM_CONVERTFORMS_MAX_WORDS" description="COM_CONVERTFORMS_MAX_WORDS_DESC" default="0" min="0" /> </fieldset> <fieldset name="advanced"> <field name="filter" type="list" label="COM_CONVERTFORMS_FIELD_FILTER" description="COM_CONVERTFORMS_FIELD_FILTER_DESC" default="html"> <option value="safehtml">JLIB_FILTER_PARAMS_SAFEHTML</option> <option value="html">JLIB_FILTER_PARAMS_TEXT</option> <option value="raw">JLIB_FILTER_PARAMS_RAW</option> <option value="alnum">JLIB_FILTER_PARAMS_ALNUM</option> <option value="word">Word</option> <option value="integer">JLIB_FILTER_PARAMS_INTEGER</option> <option value="float">JLIB_FILTER_PARAMS_FLOAT</option> </field> </fieldset> </form>PKBA#]h{;v� � >components/com_convertforms/ConvertForms/xml/field/heading.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="heading_type" type="list" label="COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE" description="COM_CONVERTFORMS_FIELD_HEADING_HEADINGTYPE_DESC" default="h2"> <option value="h1">H1</option> <option value="h2">H2</option> <option value="h3">H3</option> <option value="h4">H4</option> <option value="h5">H5</option> <option value="h6">H6</option> </field> <field name="font_size" type="nrnumber" label="COM_CONVERTFORMS_INPUT_FONT_SIZE" description="COM_CONVERTFORMS_FIELD_HEADING_FONT_SIZE_DESC" addon="px" min="0" default="22" /> <field name="font_family" type="nrfonts" class="nrfont" label="COM_CONVERTFORMS_BODY_FONT" description="COM_CONVERTFORMS_FIELD_HEADING_FONT_FAMILY_DESC" default="Arial"> <option value=" ">JDEFAULT</option> </field> <field name="line_height" type="nrnumber" label="COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT" description="COM_CONVERTFORMS_FIELD_HEADING_LINE_HEIGHT_DESC" addon="px" min="0" default="22" /> <field name="letter_spacing" type="nrnumber" label="COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING" description="COM_CONVERTFORMS_FIELD_HEADING_LETTER_SPACING_DESC" addon="px" min="0" default="0" /> <field name="content_alignment" type="list" label="COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT" description="COM_CONVERTFORMS_FIELD_HEADING_CONTENT_ALIGNMENT_DESC" default="none"> <option value="left">NR_LEFT</option> <option value="center">NR_CENTER</option> <option value="right">NR_RIGHT</option> </field> <field name="use_link" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_HEADING_USELINK" description="COM_CONVERTFORMS_FIELD_HEADING_USELINK_DESC" /> <field name="link_url" type="text" label="COM_CONVERTFORMS_FIELD_HEADING_LINK" description="COM_CONVERTFORMS_FIELD_HEADING_LINK_DESC" hint="http://" showon="use_link:1" /> <field name="open_new_tab" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_HEADING_NEWTAB" description="COM_CONVERTFORMS_FIELD_HEADING_NEWTAB_DESC" showon="use_link:1" /> </fieldset> </form>PKBA#]�+˞��>components/com_convertforms/ConvertForms/xml/field/captcha.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="complexity" type="list" label="COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY" description="COM_CONVERTFORMS_FIELD_CAPTCHA_COMPLEXITY_DESC"> <option value="">NR_LOW</option> <option value="medium">NR_MEDIUM</option> <option value="high">NR_HIGH</option> </field> <field name="wrong_answer_text" type="text" label="COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER" description="COM_CONVERTFORMS_FIELD_CAPTCHA_WRONG_ANSWER_DESC" default="Wrong answer!" hint="Wrong answer!" /> <field name="placeholder" type="text" label="COM_CONVERTFORMS_PLACEHOLDER_NAME" description="COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC" hint="Type in the result of the equation" /> </fieldset> </form>PKBA#]� a���=components/com_convertforms/ConvertForms/xml/field/rating.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="icon" type="NRImagesSelector" images="/media/plg_system_nrframework/svg/rating" height="60px" columns="4" label="COM_CONVERTFORMS_FIELD_RATING_ICON" description="COM_CONVERTFORMS_FIELD_RATING_ICON_DESC" default="media/plg_system_nrframework/svg/rating/star.svg" /> <field name="size" type="nrnumber" label="NR_SIZE" description="COM_CONVERTFORMS_FIELD_RATING_SIZE_DESC" addon="px" min="0" default="24" /> <field name="max_rating" type="nrnumber" label="COM_CONVERTFORMS_FIELD_RATING_MAX_RATING" description="COM_CONVERTFORMS_FIELD_RATING_MAX_RATING_DESC" min="1" default="5" /> <field name="half_ratings" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_RATINGS_HALF" description="COM_CONVERTFORMS_FIELD_RATINGS_HALF_DESC" /> <field name="selected_color" type="color" default="#f6cc01" keywords="transparent,none" format="rgba" label="COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR" description="COM_CONVERTFORMS_FIELD_RATING_SELECTED_COLOR_DESC" position="bottom" /> <field name="unselected_color" type="color" default="#ceced2" keywords="transparent,none" format="rgba" label="COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR" description="COM_CONVERTFORMS_FIELD_RATING_UNSELECTED_COLOR_DESC" position="bottom" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> </form>PKBA#]���|��>components/com_convertforms/ConvertForms/xml/field/country.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="detectcountry" type="nrtoggle" label="COM_CONVERTFORMS_FIELD_COUNTRY_DETECT" description="COM_CONVERTFORMS_FIELD_COUNTRY_DETECT_DESC" /> <field name="exclude_countries" type="text" label="COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE" description="COM_CONVERTFORMS_FIELD_COUNTRY_EXCLUDE_DESC" /> </fieldset> </form>PKBA#]�ϐ���:components/com_convertforms/ConvertForms/xml/field/tel.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="restrictions"> <field name="inputmask" type="text" label="COM_CONVERTFORMS_INPUT_MASK" description="COM_CONVERTFORMS_INPUT_MASK_DESC" hint="(999) 999-9999" /> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> </form>PKBA#]��ݹoo=components/com_convertforms/ConvertForms/xml/field/number.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="step" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_STEP" description="COM_CONVERTFORMS_FIELD_NUMBER_STEP_DESC" default="1" min="1" /> <field name="min" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_MIN" description="COM_CONVERTFORMS_FIELD_NUMBER_MIN_DESC" /> <field name="max" type="nrnumber" label="COM_CONVERTFORMS_FIELD_NUMBER_MAX" description="COM_CONVERTFORMS_FIELD_NUMBER_MAX_DESC" /> </fieldset> <fieldset name="restrictions"> <field name="readonly" type="nrtoggle" label="COM_CONVERTFORMS_READONLY" description="COM_CONVERTFORMS_READONLY_DESC" /> </fieldset> </form>PKBA#]7��<� � 6components/com_convertforms/ConvertForms/xml/field.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset name="basic"> <field name="key" type="hidden"/> <field name="type" type="hidden"/> <field name="name" type="text" label="COM_CONVERTFORMS_FIELD_NAME" description="COM_CONVERTFORMS_FIELD_NAME_DESC" hint="COM_CONVERTFORMS_FIELD_NAME" /> <field name="label" type="text" label="COM_CONVERTFORMS_FIELD_LABEL" description="COM_CONVERTFORMS_FIELD_LABEL_DESC" hint="COM_CONVERTFORMS_FIELD_LABEL" /> <field name="description" type="textarea" label="COM_CONVERTFORMS_FIELD_DESCRIPTION" description="COM_CONVERTFORMS_FIELD_DESCRIPTION_DESC" filter="raw" /> <field name="required" type="nrtoggle" label="COM_CONVERTFORMS_REQUIRED_NAME" description="COM_CONVERTFORMS_REQUIRED_NAME_DESC" checked="true" /> </fieldset> <fieldset name="advanced"> <field name="size" type="list" label="COM_CONVERTFORMS_FIELD_SIZE" description="COM_CONVERTFORMS_FIELD_SIZE_DESC" default=""> <option value="cf-width-auto">Auto</option> <option value="cf-one-third">Small</option> <option value="cf-one-half">Medium</option> <option value="">Large</option> </field> <field name="value" type="textarea" label="COM_CONVERTFORMS_FIELD_VALUE" description="COM_CONVERTFORMS_FIELD_VALUE_DESC" class="show-smart-tags" /> <field name="placeholder" type="text" label="COM_CONVERTFORMS_PLACEHOLDER_NAME" description="COM_CONVERTFORMS_PLACEHOLDER_NAME_DESC" /> <field name="cssclass" type="cssclasses" label="COM_CONVERTFORMS_CSS_CLASSES" description="COM_CONVERTFORMS_CSS_CLASSES_DESC" /> <field name="inputcssclass" type="text" label="COM_CONVERTFORMS_INPUT_CSS_CLASSES" description="COM_CONVERTFORMS_INPUT_CSS_CLASSES_DESC" /> <field name="hidelabel" type="nrtoggle" label="COM_CONVERTFORMS_HIDE_LABELS" description="COM_CONVERTFORMS_HIDE_LABELS_DESC" /> <field name="browserautocomplete" type="nrtoggle" label="COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE" description="COM_CONVERTFORMS_DISABLE_BROWSER_AUTOCOMPLETE_DESC" /> </fieldset> </form>PKBA#]�?�(��5components/com_convertforms/ConvertForms/Validate.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; // No direct access to this file defined('_JEXEC') or die; class Validate { /** * Check if given email address is valid * * @param String $email The email address to check * * @return Boolean Return true if the email address is valid */ public static function email($email) { return filter_var($email, FILTER_VALIDATE_EMAIL); } /** * Check DNS records corresponding to a given email address * * @param String $email The email address to check * * @return Boolean Return true if the email address has valid MX records */ public static function emaildns($email) { // Check if it's an email address format if (!self::email($email)) { return false; } list($user, $domain) = explode('@', $email, 2); // checkdnsrr for PHP < 5.3.0 if (!function_exists('checkdnsrr') && function_exists('exec') && is_callable('exec')) { @exec('nslookup -type=MX ' . escapeshellcmd($domain), $output); foreach($output as $line) { if (preg_match('/^' . preg_quote($domain) . '/', $line)) { return true; } } return false; } // fallback method... if (!function_exists('checkdnsrr') || !is_callable('checkdnsrr')) { return true; } return checkdnsrr($domain, substr(PHP_OS, 0, 3) == 'WIN' ? 'A' : 'MX'); } /** * Validates the given date. * * Note: This method is limited to validate only english-based dates * as the Date PHP class doesn't respect current locale without using hacks * * @param String $date The date string * @param String $format The date format to be used * * @return boolean */ public static function dateFormat($date, $format = null) { return \JDate::createFromFormat($format, trim($date)); } /** * Validates URL * * @param string $url * * @return void */ public static function url($url) { return filter_var($url, FILTER_VALIDATE_URL); } }PKBA#]���M�)�)3components/com_convertforms/ConvertForms/Plugin.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); use ConvertForms\Helper; jimport('joomla.filesystem.file'); jimport('joomla.filesystem.folder'); /** * Services main class used by ConvertForms plugins */ class Plugin extends \JPlugin { /** * Application Object * * @var object */ protected $app; /** * Wrappers Directory * * @var string */ private $wrappersDir = '/system/nrframework/helpers/wrappers/'; /** * Lead row to manipulate * * @var object */ protected $lead; /** * Auto loads the plugin language file * * @var boolean */ protected $autoloadLanguage = true; /** * The campaign data. * * @var array */ protected $campaignData; /** * Method to retrieve available lists/campaigns from API * * @param string $campaignData The Campaign's Data * * @return mixed Array on success, Throws an exception on fail */ public function getLists($campaignData) { $integration = $this->getCampaignIntegration($campaignData); $api = new $integration($campaignData); if (!method_exists($api, 'getLists')) { throw new \Exception('Method getLists() is missing from the ' . $this->getName() . ' wrapper'); } $lists = $api->getLists(); if (!$api->success()) { throw new \Exception($api->getLastError()); } return $lists; } /** * Returns the campaign integration. * * @param array $campaignData * * @return string */ protected function getCampaignIntegration($campaignData) { $class = str_replace('plgConvertForms', '', get_class($this)); return '\NRFramework\Integrations\\' . $class; } /** * Event ServiceName - Returns the service information * * @return array */ public function onConvertFormsServiceName() { $service = array( 'name' => \JText::_('PLG_CONVERTFORMS_' . strtoupper($this->getName()) . '_ALIAS'), 'alias' => $this->getName() ); return $service; } /** * Appends form.xml to Campaign editing form * * @param JForm $form The form to be altered. * @param mixed $data The associated data for the form. * @param string $string The associated service name. * * @return boolean */ public function onConvertFormsCampaignPrepareForm($form, $data, $service) { if ($service != $this->getName()) { return true; } // Try to load service form try { $form->loadFile($this->getForm(), false); $form->addFieldPath(JPATH_COMPONENT_ADMINISTRATOR . '/models/forms/fields'); } catch (Exception $e) { $this->app->enqueueMessage($e->getMessage(), 'error'); } return true; } /** * Event that gets triggered whenever we want to retrieve service's account list * * @param array $campaignData All the Campaign Data * * @return array An array with all available lists */ public function onConvertFormsServiceLists($campaignData) { // Proceed only if we have a valid service if ($campaignData['service'] != $this->getName()) { return; } // Load service wrapper $this->loadWrapper(); // Try to get service's account lists try { return $this->getLists($campaignData); } // Catch any exception catch (Exception $e) { Helper::log($e->getMessage(), 'error'); return $e->getMessage(); } } /** * Syncs conversion data with the assosiated third-party service. * A conversion is assosiated with a Form who has a Campaign who has a Service * Sync is skipped if the service is empty. * * Content is passed by reference, but after the save, so no changes will be saved. * Method is called right after the content is saved. * * @param string $conversion The Conversion data * @param bool $model The Conversions Model * @param bool $isNew If the Conversion has just been created * * @return void * * @todo Use onConvertFormsSubmissionAfterSave() event instead. */ public function onConvertFormsConversionAfterSave($conversion, $model, $isNew) { // Proceed only if we have a valid service if ($conversion->campaign->service != $this->getName()) { return; } // Validate Lead $this->lead = clone $conversion; $this->validateLead(); // Load service wrapper $this->loadWrapper(); // Load Lead row for update $table = $model->getTable(); $table->load($conversion->id); $params = json_decode($table->params); if (!is_object($params)) { $params = new \stdClass(); } $params->sync_service = $conversion->campaign->service; // Try to sync the Lead with the assosiated 3rd party service try { $this->subscribe($conversion); // Success. Update the Lead record. unset($params->sync_error); $table->params = json_encode($params); $table->store(); // Log debug message Helper::log('Lead #' . $conversion->id . ' successfully synched with ' . $params->sync_service); } // Catch any exception and save it to the Lead row. // Then re-throw the same exception in order to be used by the AJAX handler. catch (\Exception $e) { $params->sync_error = $e->getMessage(); $table->params = json_encode($params); $table->state = 0; $table->store(); // Log error message Helper::log('Error syncing lead #' . $conversion->id . ' with ' . $params->sync_service . " - " . $e->getMessage(), 'error'); // Re-throw the exception throw new \Exception($e->getMessage()); } } /** * Validate lead and make sure there is at least 1 email field * * @return void */ protected function validateLead() { if (!isset($this->lead->params) || !is_array($this->lead->params)) { throw new \Exception(\JText::_('COM_CONVERTFORMS_INVALID_LEAD')); } // First, try to find a field with a name set to 'email'. foreach($this->lead->params as $key => $value) { if (strtolower($key) != 'email') { continue; } // Email field found! $this->lead->email = $value; // Remove the parameter in order to avoid sending the email value twice unset($this->lead->params[$key]); } // If no email field found, make a second attempt to find an email field by type if (!isset($this->lead->email) || empty($this->lead->email)) { if (isset($this->lead->form->fields) && is_array($this->lead->form->fields)) { foreach ($this->lead->form->fields as $key => $field) { if ($field['type'] != 'email') { continue; } if (!isset($this->lead->params[$field['name']])) { continue; } // Email field found! $this->lead->email = $this->lead->params[$field['name']]; unset($this->lead->params[$field['name']]); } } } // Make sure now we have found an email field if (!isset($this->lead->email) || empty($this->lead->email)) { throw new \Exception(\JText::_('COM_CONVERTFORMS_FORM_IS_MISSING_THE_EMAIL_FIELD')); } } /** * Loads Service Wrapper * * @return boolean */ protected function loadWrapper() { $wrapper = $this->getWrapperFile(); if (!\JFile::exists($wrapper)) { throw new \Exception('Wrapper ' . $wrapper . ' not found'); } return include_once($wrapper); } /** * Returns Service Wrapper File * * @return string */ protected function getWrapperFile() { return JPATH_PLUGINS . $this->wrappersDir . $this->getName() . '.php'; } /** * Returns form.xml file path * * @return string */ private function getForm() { $xml = JPATH_PLUGINS . '/convertforms/' . $this->getName() . '/form.xml'; if (!\JFile::exists($xml)) { throw new \Exception('XML file is missing: ' . $xml); } return $xml; } /** * Insensitive search for array key * * @param string $name The array key to search for * @param array $array The array * * @return mixed False if not found, string if found */ public function findKey($name, $array) { $result = false; foreach ($array as $key => $value) { if (strtolower($key) == $name) { $result = $value; break; } } return $result; } /** * Get plugin name alias * * @return string */ public function getName() { return isset($this->name) ? $this->name : $this->_name; } }PKBA#]D鈫�6components/com_convertforms/ConvertForms/Analytics.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; use NRFramework\Cache; defined('_JEXEC') or die('Restricted access'); /** * Analytics Helper Class */ class Analytics { /** * Returns average submission in current month * * @return float */ public static function getLeadsAverageThisMonth() { return number_format(self::getTotal('this_month') / date('d'), 1); } /** * Returns current month projection * * @return integer */ public static function getMonthProjection() { return number_format(self::getTotal('this_month') / date('d') * date('t'), 1); } public static function getRows($type = null, $options = []) { return number_format(self::getTotal($type, $options)); } public static function getTotal($type = null, $options = []) { $hash = md5($type . serialize($options)); if (Cache::has($hash)) { return Cache::get($hash); } $model = \JModelLegacy::getInstance('Conversions', 'ConvertFormsModel', ['ignore_request' => true]); $model->setState('filter.state', [1, 2]); $model->setState('filter.join_campaigns', 'skip'); $model->setState('filter.join_forms', 'skip'); if ($type) { $model->setState('filter.period', $type); } if ($type == 'range') { $model->setState('filter.created_from', $options['created_from']); $model->setState('filter.created_to', $options['created_to']); } $query = $model->getListQuery(); $query->clear('select'); $query->select('count(a.id)'); $db = \JFactory::getDbo(); // Prevent the "The SELECT would examine more than MAX_JOIN_SIZE rows; " MySQL error // on websites with a big number of menu items in the db. $db->setQuery('SET SQL_BIG_SELECTS = 1')->execute(); $db->setQuery($query); $count = $db->loadResult(); return Cache::set($hash, $count); } } ?>PKBA#]�*�.cc0components/com_convertforms/ConvertForms/Api.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); /** * This is the main Convert Forms API helper class meant to be used ONLY by 3rd party developers and advanced users. * Do not ever use this class to implement and rely any core feture. */ class Api { /** * Delete a submission from the database * * @param integer $id The submission's primary key * * @return bool True on success */ public static function removeSubmission($submission_id) { if (!$submission_id) { return; } \JTable::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/tables'); $table = \JTable::getInstance('Conversion', 'ConvertFormsTable'); return $table->delete($submission_id); } /** * Delete all form submissions from the database * * @param integer $form_id The form's primary key * * @return bool */ public static function removeFormSubmissions($form_id) { if (!$form_id) { return; } $db = \JFactory::getDbo(); $query = $db->getQuery(true) ->delete($db->quoteName('#__convertforms_conversions')) ->where($db->quoteName('form_id') . ' = ' . $form_id); $db->setQuery($query); return $db->execute(); } /** * Return all form submissions * * @param integer $form_id The form's ID * * @return Object */ public static function getFormSubmissions($form_id) { if (!$form_id) { return; } $db = \JFactory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from($db->quoteName('#__convertforms_conversions')) ->where($db->quoteName('form_id') . ' = ' . $form_id); $db->setQuery($query); $rows = $db->loadObjectList(); foreach ($rows as $key => $row) { $row->params = json_decode($row->params); } return $rows; } /** * Return the total number of form total submissions * * @param integer $form_id The form's ID * * @return integer */ public static function getFormSubmissionsTotal($form_id) { return number_format(Form::getSubmissionsTotal($form_id)); } /** * Get the visitor's device type: desktop, tablet, mobile * * @return string */ public static function getDeviceType() { return \NRFramework\WebClient::getDeviceType(); } /** * Indicate if the visitor is browsing the site via a mobile * * @return bool */ public static function isMobile() { return self::getDeviceType() == 'mobile'; } }PKBA#])�A���9components/com_convertforms/ConvertForms/FieldsHelper.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); use Joomla\Registry\Registry; use ConvertForms\Helper; /** * ConvertForms Fields Helper Class */ class FieldsHelper { /** * List of available field groups and types * * Consider using a field class property in order to declare the field group instead. * * @var array */ public static $fields = [ 'common' => [ 'text', 'textarea', 'dropdown', 'radio', 'checkbox', 'number', 'email', 'tel', 'url', 'submit', ], 'layout' => [ 'html', 'heading', 'emptyspace', 'divider', ], 'advanced' => [ 'hidden', 'datetime', 'password', 'fileupload', 'termsofservice', 'editor', 'confirm', 'rating', 'rangeslider', 'colorpicker', 'captcha', 'recaptcha', 'recaptchav2invisible', 'hcaptcha', 'signature', 'country', 'currency' ] ]; /** * Returns a list of all available field groups and types * * @return array */ public static function getFieldTypes() { $arr = []; foreach (self::$fields as $group => $fields) { if (!count($fields)) { continue; } $arr[$group] = array( 'name' => $group, 'title' => \JText::_('COM_CONVERTFORMS_FIELDGROUP_' . strtoupper($group)) ); foreach ($fields as $key => $field) { $arr[$group]['fields'][] = array( 'name' => $field, 'title' => \JText::_('COM_CONVERTFORMS_FIELD_' . strtoupper($field)), 'desc' => \JText::_('COM_CONVERTFORMS_FIELD_' . strtoupper($field) . '_DESC'), 'class' => self::getFieldClass($field) ); } } return $arr; } /** * Render field control group used in the front-end * * @param object $fields The fields to render * * @return string The HTML output */ public static function render($fields) { $html = array(); foreach ($fields as $key => $field) { if (!isset($field['type'])) { continue; } // Skip unknown field types if (!$class = self::getFieldClass($field['type'])) { continue; } $html[] = $class->setField($field)->getControlGroup(); } return implode(' ', $html); } /** * Constructs and returns the field type class * * @param String $name The field type name * * @return Mixed Object on success, Null on failure */ public static function getFieldClass($name, $field_data = null, $form_data = null) { $class = __NAMESPACE__ . '\\Field\\' . ucfirst($name); if (!class_exists($class)) { return false; } return new $class($field_data, $form_data); } public static function prepare($form, $classPrefix = 'cf') { $params = $form['params']; if (!is_array($form['fields']) || count($form['fields']) == 0) { return; } $fields_ = []; foreach ($form['fields'] as $key => $field) { $field['namespace'] = $form['id']; // Field Classes $fieldClasses = [ $classPrefix . "-input", isset($field['size']) ? $field['size'] : null, isset($field['inputcssclass']) ? $field['inputcssclass'] : null ]; $field['class'] = implode(' ', $fieldClasses); $field['form'] = $form; $fields_[] = $field; } $globalCSSVars = [ 'color-primary' => '#4285F4', 'color-success' => '#0F9D58', 'color-danger' => '#DB4437', 'color-warning' => '#F4B400', 'color-default' => '#444', 'color-grey' => '#ccc', ]; $cssVars = [ // Form settings 'font' => trim($params->get('font')), 'max-width' => ($params->get('autowidth', 'auto') == 'auto' ? null : (int) $params->get('width', 500) . 'px'), 'background-color' => $params->get('bgcolor'), 'border' => $params->get('borderstyle', 'solid') !== 'none' ? implode(' ', [$params->get('borderstyle', 'solid'), (int) $params->get('borderwidth', 2) . 'px', $params->get('bordercolor', '#000')]) : null, 'border-radius' => (int) $params->get('borderradius', 0) . 'px', 'padding' => $params->get('padding', 20) > 0 ? (int) $params->get('padding', 20) . 'px' : null, // Label settings 'label-color' => $params->get('labelscolor', '#888'), 'label-size' => (int) $params->get('labelsfontsize', 15) . 'px', // Input settings 'input-color' => $params->get('inputcolor', '#888'), 'input-text-align' => $params->get('inputalign', 'left'), 'input-background-color' => $params->get('inputbg', '#fff'), 'input-border-color' => $params->get('inputbordercolor', '#ccc'), 'input-border-radius' => (int) $params->get('inputborderradius', '0') . 'px', 'input-size' => (int) $params->get('inputfontsize', 15) . 'px', 'input-padding' => (int) $params->get('inputvpadding', 11) . 'px ' . (int) $params->get('inputhpadding', '12') . 'px', ]; // Background Image if ($params->get('bgimage', false)) { $imgurl = intval($params->get("bgimage")) == 1 ? \JURI::root() . Helper::cleanLocalImage($params->get('bgfile')) : $params->get("bgurl"); $cssVars['background-image'] = 'url' . '(' . $imgurl . ')'; $cssVars['background-repeat'] = strtolower($params->get("bgrepeat")); $cssVars['background-size'] = strtolower($params->get("bgsize")); $cssVars['background-position'] = strtolower($params->get("bgposition")); } $cssVarsGlobal = self::cssVarsToString($globalCSSVars, '.convertforms'); $cssVarsForm = self::cssVarsToString($cssVars, '#cf_' . $form['id']); $html = self::render($fields_); if (\JFactory::getApplication()->isClient('site')) { Helper::addStyleDeclarationOnce($cssVarsGlobal); Helper::addStyleDeclarationOnce($cssVarsForm); } else { $html .= ' <style>' . $cssVarsGlobal . $cssVarsForm . '</style> '; } return $html; } public static function cssVarsToString($cssVars, $namespace) { $output = ''; foreach (array_filter($cssVars) as $key => $value) { $output .= '--' . $key . ': ' . $value . ';' . "\n"; } return $namespace . ' { ' . $output . ' } '; } } ?>PKBA#]�a���7components/com_convertforms/ConvertForms/Submission.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); class Submission { /** * Replaces the Smart Tags of a submission. * * @param object $submission * @param string $layout * * @return string */ public static function replaceSmartTags($submission, $layout) { $st = new \NRFramework\SmartTags(); // Register CF Smart Tags $st->register( '\ConvertForms\SmartTags', JPATH_SITE . '/administrator/components/com_convertforms/ConvertForms/SmartTags', [ 'submission' => $submission ] ); return $st->replace($layout); } }PKBA#]�vg���;components/com_convertforms/ConvertForms/SubmissionMeta.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; defined('_JEXEC') or die('Restricted access'); class SubmissionMeta { /** * Logs table * * @var string */ private static $table = '#__convertforms_submission_meta'; /** * Adds or updates a record in the database * * @param int $submission_id * @param string $type * @param string $key * @param string $value * @param array $params * * @return void */ public static function save($submission_id, $type, $key = '', $value = '', $params = []) { if ($record = self::getMeta($submission_id, $type, $key)) { // Update existing record $data = (object) [ 'id' => $record['id'], 'submission_id' => $submission_id, 'meta_type' => $type, 'meta_key' => $key, 'meta_value' => $value, 'params' => json_encode($params), 'date_modified' => \JFactory::getDate()->toSql() ]; try { \JFactory::getDbo()->updateObject(self::$table, $data, 'id'); } catch (Exception $e) { } return; } // Add new record self::add($submission_id, $type, $key, $value, $params); } /** * Adds a Submission Meta. * * @param int $submission_id * @param string $type * @param string $key * @param string $value * @param array $params * * @return void */ public static function add($submission_id, $type, $key = '', $value = '', $params = []) { if (!$submission_id || !$type || !$value) { return; } // Data to save $data = (object) [ 'submission_id' => $submission_id, 'meta_type' => $type, 'meta_key' => $key, 'meta_value' => $value, 'params' => json_encode($params), 'date_created' => \JFactory::getDate()->toSql() ]; // Insert the data try { \JFactory::getDbo()->insertObject(self::$table, $data); } catch (Exception $e) { } } /** * Retrieves the meta row. * * @param int $submission_id * @param string $type * @param string $key * * @return mixed */ public static function getMeta($submission_id, $type, $key = '') { if (!$submission_id || !$type) { return; } $db = \JFactory::getDbo(); $query = $db->getQuery(true); $query ->select('*') ->from($db->quoteName(self::$table)) ->where($db->quoteName('submission_id') . ' = ' . $db->quote($submission_id)) ->where($db->quoteName('meta_type') . ' = ' . $db->quote($type)); if (!empty($key)) { $query->where($db->quoteName('meta_key') . ' = ' . $db->quote($key)); } $db->setQuery($query); return $db->loadAssoc(); } /** * Retrieves meta value. * * @param int $submission_id * @param string $type * @param string $key * * @return string */ public static function getValue($submission_id, $type, $key = '') { if (!$data = self::getMeta($submission_id, $type, $key)) { return; } return $data['meta_value']; } /** * Deletes a submission meta * * @param int $submission_id * @param string $type * @param string $key * * @return void */ public static function delete($submission_id, $type, $key = '') { if (!$submission_id || !$type) { return; } $db = \JFactory::getDbo(); $query = $db->getQuery(true) ->delete($db->quoteName(self::$table)) ->where($db->quoteName('submission_id') . ' = ' . $db->quote($submission_id)) ->where($db->quoteName('meta_type') . ' = ' . $db->quote($type)); if (!empty($key)) { $query->where($db->quoteName('meta_key') . ' = ' . $db->quote($key)); } $db->setQuery($query); return $db->execute(); } /** * Deletes a list of submission meta by ID * * @param array $ids * * @return void */ public static function deleteAll($ids) { if (!is_array($ids)) { return; } $db = \JFactory::getDbo(); $query = $db->getQuery(true) ->delete($db->quoteName(self::$table)) ->where($db->quoteName('id') . ' IN (' . implode(', ', (array) $ids) . ')'); $db->setQuery($query); return $db->execute(); } }PKBA#]����$�$3components/com_convertforms/ConvertForms/Export.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2022 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; use Joomla\Registry\Registry; use ConvertForms\Helper; use NRFramework\File; defined('_JEXEC') or die('Restricted access'); /** * Export submissions to CSV and JSON */ class Export { /** * Export submissions to CSV or JSON file * * @param array $options The export options * * @return array */ public static function export($options) { // Increase memory size and execution time to prevent PHP errors on datasets > 20K set_time_limit(300); // 5 Minutes ini_set('memory_limit', '-1'); $options = new Registry($options); // Load submissions model \JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_convertforms/models'); $model = \JModelLegacy::getInstance('Conversions', 'ConvertFormsModel', ['ignore_request' => true]); // When we're exporting certain IDs, there's no need to check the state. if (strpos($options->get('filter_search', ''), 'id:') !== false || $options->get('filter_state') == '*') { $filter_state = 'skip'; } else { $filter_state = $options->get('filter_state'); } $model->setState('filter.state', $filter_state); $model->setState('filter.join_campaigns', 'skip'); $model->setState('filter.join_forms', 'skip'); $model->setState('list.limit', $options->get('limit', 0)); $model->setState('list.start', $options->get('offset', 0)); $model->setState('list.direction', 'asc'); $model->setState('filter.search', $options->get('filter_search')); $model->setState('filter.form_id', $options->get('filter_form_id')); $model->setState('filter.period', $options->get('filter_period', '')); $model->setState('filter.created_from', $options->get('filter_created_from', '')); $model->setState('filter.created_to', $options->get('filter_created_to', '')); // Proceed only if we have submissions if (!$submissions = $model->getItems()) { $error = \JText::sprintf('COM_CONVERTFORMS_NO_RESULTS_FOUND', strtolower(\JText::_('COM_CONVERTFORMS_SUBMISSIONS'))); throw new \Exception($error); } foreach ($submissions as $key => &$submission) { self::prepareSubmission($submission); } $export_type = $options->get('export_type', 'csv'); $pagination = $model->getPagination(); $firstRun = $pagination->pagesCurrent == 1; $append = !$firstRun || $options->get('export_append', false); // Check whether the path does exist. If not, attemp to create it. $export_path = $options->get('export_path', File::getTempFolder()); if (!File::createDirs($export_path, false)) { throw new \Exception('Export path does not exist'); } $filename = \JPath::clean($export_path . DIRECTORY_SEPARATOR) . $options->get('filename', 'convertforms_submissions.' . $export_type); switch ($export_type) { case 'json': self::toJSON($submissions, $filename, $append); break; default: $excel_security = (bool) Helper::getComponentParams()->get('excel_security', true); self::toCSV($submissions, $filename, $append, $excel_security); break; } return [ 'options' => $options, 'pagination' => $pagination ]; } /** * Get a key value array with submission's submitted data * * @param object $submission The submission object * * @return array */ private static function prepareSubmission(&$submission) { $result = [ 'id' => $submission->id, 'created' => $submission->created, 'state' => $submission->state ]; foreach ($submission->prepared_fields as $field_name => $field) { // Always return the raw value and let the export type decide how the value should be displayed. $result[$field_name] = $field->value_raw; } $submission = $result; } /** * Create a JSON file with given data * * @param array $data The data to populate the file * @param string $destination The path where the store the JSON file * @param bool $append If true, given data will be appended to the end of the file. * * @return void */ private static function toJSON($data, $destination, $append = false, $check_for_duplicates = true) { $content = \JFile::exists($destination) ? (array) json_decode(file_get_contents($destination), true) : []; $content = $append ? array_merge($content, $data) : $data; if ($content && $append && $check_for_duplicates) { $newArr = []; foreach ($content as $row) { $newArr[$row['id']] = $row; } $content = $newArr; } $content = json_encode(array_values($content), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); // Save the file \JFile::write($destination, $content); } /** * Create a CSV file with given data * * @param array $data The data to populate the file * @param string $destination The path where the store the CSV file * @param bool $append If true, given data will be appended to the end of the file. * @param boolean $excel_security If enabled, certain row values will be prefixed by a tab to avoid any CSV injection. * * @return void */ private static function toCSV($data, $destination, $append = false, $excel_security = true, $check_for_duplicates = true) { $resource = fopen($destination, $append ? 'a+' : 'w'); if (!$append) { // Support UTF-8 on Microsoft Excel fputs($resource, "\xEF\xBB\xBF"); // Add column names in the first line fputcsv($resource, array_keys($data[0])); } // Get CSV content $existingRows = []; if ($append && $check_for_duplicates) { while (($existingData = fgetcsv($resource)) !== false) { $existingRows[(int) $existingData[0]] = $existingData; } } foreach ($data as $row) { if (!empty($existingRows) && isset($row['id']) && array_key_exists($row['id'], $existingRows)) { continue; } // Prevent CSV Injection: https://vel.joomla.org/articles/2140-introducing-csv-injection if ($excel_security) { foreach ($row as &$value) { $value = is_array($value) ? implode(', ', $value) : $value; $firstChar = substr($value, 0, 1); // Prefixe values starting with a =, +, - or @ by a tab character if (in_array($firstChar, array('=', '+', '-', '@'))) { $value = ' ' . $value; } } } fputcsv($resource, $row); } fclose($resource); } /** * Redirects to the error layout and displays the given error message * * @param string $error_message * * @return void */ public static function error($error_message) { $app = \JFactory::getApplication(); $optionsQuery = http_build_query(array_filter([ 'option' => 'com_convertforms', 'view' => 'export', 'layout' => 'error', 'error' => $error_message, 'tmpl' => $app->input->get('tmpl') ])); $app->redirect('index.php?' . $optionsQuery); } /** * Verifies the export file does exist * * @param string $filename * * @return bool */ public static function exportFileExists($filename) { return \JFile::exists(File::getTempFolder() . $filename); } /** * Adds the Export popup to the page which can be triggered by toolbar buttons. * * @return void */ public static function renderModal() { \JHtml::script('com_convertforms/export.js', ['relative' => true, 'version' => 'auto']); \JFactory::getDocument()->addScriptDeclaration(' document.addEventListener("DOMContentLoaded", function() { new exportModal("'.\JFactory::getApplication()->input->get('view') . '"); }); '); $html = \JHtml::_('bootstrap.renderModal', 'cfExportSubmissions', [ 'backdrop' => 'static' ]); // This is the only way to add a custom CSS class to the popup container echo str_replace('modal hide', 'modal hide transparent', $html); } }PKBA#]�ELnkk6components/com_convertforms/ConvertForms/SmartTags.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms; use ConvertForms\Helper; use ConvertForms\Form; defined('_JEXEC') or die(); class SmartTags { public static function replace($string, $submission = null, $form_id = null) { // Add Submission Tags to collection $smartTags = new \NRFramework\SmartTags(); $extra_data = []; if (is_object($submission)) { // Get extra data from plugins that listen to the event \JFactory::getApplication()->triggerEvent('onConvertFormsGetSubmissionSmartTags', [$submission, &$extra_data]); } // Register CF Smart Tags $smartTags->register( '\ConvertForms\SmartTags', JPATH_SITE . '/administrator/components/com_convertforms/ConvertForms/SmartTags', [ 'submission' => $submission, 'extra_data' => $extra_data ] ); $result = $smartTags->replace($string); // Temporary fix for duplicate site URL. // Since v2.8.0 that we don't force absoluste URLs in the editors, we may don't need to fix duplicate site URL on the fly any longer. // We need to keep it though for a while to prevent backwards compatibility issues. $result = self::fixDuplicateSiteURL($result); return $result; } /** * In TinyMCE we are forcing absolute URLs (relative_urls=false). This means that the editors prefixes all 'src' and 'href' properties * with the site's base URL. If we try to use a File Upload Field Smart Tag in a link like in the example below: * * <a href="{field.myuploadfield}">Download File</a> * * The editor will transform the link into * * <a href="http://www.mysite.com/{field.myuploadfield}">Download File</a> * * Even though since v2.7.4 we store the relative path instead of the absolute URL in the database, this issue is not resolved as the relative path * is transformed into an absolute URL by the prepareValue() method before the value arrives in this method. * * @param string $string * * @return string */ private static function fixDuplicateSiteURL($subject) { if (is_string($subject) && strpos($subject, 'http') !== false) { $domain = \JFactory::getApplication()->input->server->get('HTTP_HOST', '', 'STRING'); /** * $domain returns www.site.com * The regex below will not be able to find the duplicate URL given the $subject: * https://site.com/https://www.site.com/path/to/file * Once we drop the "www." part from $domain, we will be able to successfully find and replace the duplicate URL. */ $domain = str_replace('www.', '', $domain); return preg_replace('#http(s)?:\/\/(.*?)' . $domain . '(.*?)\/http#', 'http', $subject); } if (is_array($subject)) { foreach ($subject as $key => &$item) { if (!is_string($item)) { continue; } $item = self::fixDuplicateSiteURL($item); } } return $subject; } } ?>PKBA#]� ʽ��Acomponents/com_convertforms/ConvertForms/SmartTags/Pagination.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; class Pagination extends SmartTag { /** * Returns the pagination links. * Used in Convert Forms Front End Submissions View. * * @return string */ public function getLinks() { if (!isset($this->data['front_end_submission']['pagination'])) { return ''; } return $this->data['front_end_submission']['pagination']->getPagesLinks(); } /** * Returns the pagination counter. * Used in Convert Forms Front End Submissions View. * * @return string */ public function getCounter() { if (!isset($this->data['front_end_submission']['pagination'])) { return ''; } return $this->data['front_end_submission']['pagination']->getPagesCounter(); } /** * Returns the pagination results. * Used in Convert Forms Front End Submissions View. * * @return string */ public function getResults() { if (!isset($this->data['front_end_submission']['pagination'])) { return ''; } return $this->data['front_end_submission']['pagination']->getResultsCounter(); } }PKBA#]v�����Hcomponents/com_convertforms/ConvertForms/SmartTags/All_fields_filled.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); /** * @deprecated Use {all_fields --excludeEmpty=true} instead. */ class All_fields_filled extends All_fields { /** * Get All Fields Filled value * * @return string */ public function getAll_fields_filled() { $this->parsedOptions->set('excludeempty', true); return $this->getAll_fields(); } }PKBA#]�g>>Bcomponents/com_convertforms/ConvertForms/SmartTags/Submissions.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; use ConvertForms\Helper; class Submissions extends SmartTag { /** * Returns the submsissions data. * Used in Convert Forms Front End Submissions View. * * @return string */ public function getSubmissions() { $data = isset($this->data['front_end_submission']) ? $this->data['front_end_submission'] : []; if (!$data) { return ''; } $submissions = isset($data['submissions']) ? $data['submissions'] : ''; if (!$submissions) { return ''; } $layout_row = isset($data['layout_row']) ? $data['layout_row'] : ''; if (!$layout_row) { return ''; } $html = ''; foreach ($submissions as $submission) { $html .= \ConvertForms\Submission::replaceSmartTags($submission, $layout_row); } return $html; } /** * Returns the submsissions count * * @return string */ public function getCount() { $submission = isset($this->data['submission']) ? $this->data['submission'] : null; if (!$submission) { return 0; } $form_id = isset($submission->form_id) ? $submission->form_id : null; if (!$form_id) { return 0; } return Helper::getFormLeadsCount($form_id); } }PKBA#]�TYN N Acomponents/com_convertforms/ConvertForms/SmartTags/Submission.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; class Submission extends SmartTag { /** * Returns the submsission ID * * @return string */ public function getID() { return isset($this->data['submission']->id) ? $this->data['submission']->id : ''; } /** * Returns the submsission User ID * * @return string */ public function getUser_ID() { return isset($this->data['submission']->user_id) ? $this->data['submission']->user_id : ''; } /** * Returns the submission created date * * @return string */ public function getCreated() { return isset($this->data['submission']->created) ? $this->data['submission']->created : ''; } /** * Returns the submission modified date * * @return string */ public function getModified() { return isset($this->data['submission']->modified) ? $this->data['submission']->modified : ''; } /** * Returns the submission created date * * @return string */ public function getDate() { return isset($this->data['submission']->created) ? $this->data['submission']->created : ''; } /** * Returns the submission campaign id * * @return string */ public function getCampaign_ID() { return isset($this->data['submission']->campaign_id) ? $this->data['submission']->campaign_id : ''; } /** * Returns the submission form id * * @return string */ public function getForm_ID() { return isset($this->data['submission']->form_id) ? $this->data['submission']->form_id : ''; } /** * Returns the submission visitor id * * @return string */ public function getVisitor_ID() { return isset($this->data['submission']->visitor_id) ? $this->data['submission']->visitor_id : ''; } /** * Returns the submission status * * @return string */ public function getStatus() { return isset($this->data['submission']->state) && $this->data['submission']->state === '1' ? \JText::_('COM_CONVERTFORMS_SUBMISSION_CONFIRMED') : \JText::_('COM_CONVERTFORMS_SUBMISSION_UNCONFIRMED'); } /** * Returns the submission PDF * * @return string */ public function getPDF() { if (!isset($this->data['extra_data']['pdf'])) { return ''; } return $this->data['extra_data']['pdf']; } }PKBA#]�� ���Acomponents/com_convertforms/ConvertForms/SmartTags/All_fields.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2021 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; /** * Syntax: {all_fields} * Hide labels: {all_fields --hideLabels=true} * Exclude empty values: {all_fields --excludeEmpty=true} * Exclude certain fields: {all_fields --excludeFields=text1,dropdown2} * Exclude certain field types: {all_fields --excludeTypes=text,hidden} */ class All_fields extends SmartTag { /** * Get All Fields value * * @return string */ public function getAll_fields() { if (!$fields = $this->filteredFields()) { return; } $all_fields = ''; $hideLabels = $this->parsedOptions->get('hidelabels'); foreach ($fields as $field) { if ($hideLabels) { $all_fields .= $field->value_html . '<br>'; continue; } $all_fields .= '<strong>' . $field->class->getLabel() . '</strong>: ' . $field->value_html . '<br>'; } return $all_fields; } /** * Filter submitted data with given filter options * * @return mixed Null when no submission is found, array otherwise */ private function filteredFields() { $submission = isset($this->data['submission']) ? $this->data['submission'] : ''; if (!$submission) { return ''; } $excludeEmpty = $this->parsedOptions->get('excludeempty', false); $excludeTypes = explode(',', $this->parsedOptions->get('excludetypes', '')); $excludeFields = explode(',', $this->parsedOptions->get('excludefields', '')); return array_filter($submission->prepared_fields, function($field) use ($excludeTypes, $excludeFields, $excludeEmpty) { if ($excludeEmpty && trim($field->value) == '') { return; } if ($excludeTypes && in_array($field->options->get('type'), $excludeTypes)) { return; } if ($excludeFields && in_array($field->options->get('name'), $excludeFields)) { return; } return true; }); } }PKBA#]c���� � <components/com_convertforms/ConvertForms/SmartTags/Field.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; class Field extends SmartTag { /** * Run only when we have a valid submissions object. * * @return boolean */ public function canRun() { return isset($this->data['submission']) ? parent::canRun() : false; } /** * Fetch field value * * @param string $key * * @return string */ public function fetchValue($key) { $submission = $this->data['submission']; // Separate key parts into an array as it's very likely to have a key in the format: field.label $keyParts = explode('.', $key); $fieldName = strtolower($keyParts[0]); $special_param = isset($keyParts[1]) ? $keyParts[1] : null; $fields = $submission->prepared_fields; // Check that the field name does exist in the submission data if (!array_key_exists($fieldName, $fields)) { return; } // Make sure $fieldName is strtolower-ed as prepared_fields is an assoc array with lower case keys. $field = $submission->prepared_fields[$fieldName]; // In case of a dropdown and radio fields, make also the label and the calc-value properties available. // This is rather useful when we want to display the dropdown's selected text rather than the dropdown's value. if (in_array($special_param, ['label', 'calcvalue', 'calc-value']) && in_array($field->options->get('type'), ['dropdown', 'radio'])) { foreach ($field->class->getOptions() as $choice) { if ($field->value !== $choice['value']) { continue; } // Special case: Keep old syntax: calcvalue $special_param = $special_param == 'calcvalue' ? 'calc-value' : $special_param; if (isset($choice[$special_param])) { return $choice[$special_param]; } } } // We need to return the value of the field switch ($special_param) { case 'raw': // If we do care about performance, better call a getValueRaw() method here. // The raw value as saved in the database. return $field->value_raw; break; case 'html': // The value as transformed to be shown in HTML. // If we do care about performance, better call a getValueHtml() method here. return $field->value_html; break; default: // If we do care about performance, better call a getValue() method here. // The value in plain text. Arrays will be shown comma separated. return $field->value; } } }PKBA#]r����<components/com_convertforms/ConvertForms/SmartTags/Total.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; class Total extends SmartTag { /** * Returns the total submissions. * Used in Convert Forms Front End Submissions View. * * @return string */ public function getTotal() { return isset($this->data['front_end_submission']['total']) ? $this->data['front_end_submission']['total'] : ''; } }PKBA#]H�X���;components/com_convertforms/ConvertForms/SmartTags/Link.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ namespace ConvertForms\SmartTags; defined('_JEXEC') or die('Restricted access'); use NRFramework\SmartTags\SmartTag; class Link extends SmartTag { /** * Returns the link to a single front-end submission. * * @return string */ public function getLink() { return isset($this->data['submission']->link) ? $this->data['submission']->link : ''; } }PKBA#] "82 2 .components/com_convertforms/script.install.phpnu�[���<?php /** * @package Convert Forms * @version 3.2.11 Pro * * @author Tassos Marinos <info@tassos.gr> * @link http://www.tassos.gr * @copyright Copyright © 2020 Tassos Marinos All Rights Reserved * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later */ defined('_JEXEC') or die; require_once __DIR__ . '/script.install.helper.php'; class Com_ConvertFormsInstallerScript extends Com_ConvertFormsInstallerScriptHelper { public $name = 'CONVERTFORMS'; public $alias = 'convertforms'; public $extension_type = 'component'; public function onAfterInstall() { $this->moveFrontEndImages(); if ($this->install_type == 'update') { require_once __DIR__ . '/autoload.php'; try { (new ConvertForms\Migrator($this->installedVersion))->start(); } catch (\Throwable $th) { } $this->dropIndex('convertforms_conversions', 'email_campaign_id'); // Remove convertforms field from the framework $this->deleteFiles([JPATH_SITE . '/plugins/system/nrframework/fields/convertforms.php']); // Drop auto-translation feature with language strings in field options in favor of the new {language.KEY} Smart Tag. if (version_compare($this->installedVersion, '2.8.0', '<=')) { JFactory::getApplication()->enqueueMessage(' <b>Backwards Compatibility Break:</b> Language strings can no longer be used directly in field options. If you\'re using language strings to produce multilingual forms in one of the following options, you should update your forms to be using the <b>{language.KEY}</b> Smart Tag instead:<br><br> <ul> <li>Field Value</li> <li>Field Label</li> <li>Field Placeholder</li> <li>Field Description</li> <li>Dropdown Choice Label</li> <li>Radio Button Choice Label</li> <li>Checkbox Choice Label</li> </ul>', 'warning'); } } } /** * Moves front-end based images from /media/ folder to /images/ * * @return void */ private function moveFrontEndImages() { $source = JPATH_SITE . '/media/com_convertforms/img/convertforms'; $destination = JPATH_SITE . '/images/convertforms'; if (!JFolder::exists($source)) { return; } if (!JFolder::copy($source, $destination, null, true)) { return; } JFolder::delete($source); } }PKBA#]�0�v v ,components/com_convertforms/convertforms.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <extension version="3.4" type="component" method="upgrade"> <name>COM_CONVERTFORMS</name> <description>COM_CONVERTFORMS_DESC</description> <version>3.2.11</version> <creationDate>September 2016</creationDate> <author>Tassos Marinos</author> <authorEmail>info@tassos.gr</authorEmail> <authorUrl>http://www.tassos.gr</authorUrl> <copyright>Copyright © 2020 Tassos Marinos All Rights Reserved</copyright> <license>http://www.gnu.org/licenses/gpl-3.0.html GNU/GPL</license> <scriptfile>script.install.php</scriptfile> <install><sql><file driver="mysql" charset="utf8">sql/convertforms.sql</file></sql></install> <uninstall><sql><file driver="mysql" charset="utf8">sql/uninstall.convertforms.sql</file></sql></uninstall> <update><schemas><schemapath type="mysql">sql/updates/mysql</schemapath></schemas></update> <updateservers> <server type="extension" priority="1" name="Convert Forms"> https://www.tassos.gr/updates/convert-forms-pro.xml </server> </updateservers> <files folder="site"> <filename>router.php</filename> <filename>controller.php</filename> <filename>convertforms.php</filename> <folder>controllers</folder> <folder>models</folder> <folder>views</folder> </files> <administration> <menu img="class:banners">COM_CONVERTFORMS</menu> <submenu> <menu link="option=com_convertforms&view=convertforms" view="convertforms" img="class:forms" alt="ConvertForms/Forms"> NR_DASHBOARD </menu> <menu link="option=com_convertforms&view=forms" view="forms" img="class:forms" alt="ConvertForms/Forms"> COM_CONVERTFORMS_FORMS </menu> <menu link="option=com_convertforms&view=campaigns" view="campaigns" img="class:campaigns" alt="ConvertForms/Campaigns"> COM_CONVERTFORMS_CAMPAIGNS </menu> <menu link="option=com_convertforms&view=conversions" view="conversions" img="class:conversions" alt="ConvertForms/Conversions"> COM_CONVERTFORMS_SUBMISSIONS </menu> <menu link="option=com_convertforms&view=addons" view="addons" img="class:addons" alt="ConvertForms/Addons"> COM_CONVERTFORMS_ADDONS </menu> </submenu> <files> <folder>ConvertForms</folder> <folder>controllers</folder> <folder>language</folder> <folder>layouts</folder> <folder>models</folder> <folder>sql</folder> <folder>tables</folder> <folder>views</folder> <filename>access.xml</filename> <filename>config.xml</filename> <filename>controller.php</filename> <filename>convertforms.php</filename> <filename>script.install.helper.php</filename> <filename>version.php</filename> <filename>autoload.php</filename> </files> </administration> <media folder="media" destination="com_convertforms"> <folder>css</folder> <folder>js</folder> <folder>img</folder> <folder>templates</folder> <folder>font</folder> </media> <!-- Watchful --> <variant>pro</variant> </extension>PKBA#]���� � +components/com_modules/tmpl/module/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; HTMLHelper::_('behavior.combobox'); $hasContent = isset($this->item->xml->customContent); $hasContentFieldName = 'content'; // For a later improvement if ($hasContent) { $hasContentFieldName = 'content'; } // Get Params Fieldsets $this->fieldsets = $this->form->getFieldsets('params'); $this->useCoreUI = true; Text::script('JYES'); Text::script('JNO'); Text::script('JALL'); Text::script('JTRASHED'); $this->document->addScriptOptions('module-edit', ['itemId' => $this->item->id, 'state' => (int) $this->item->id == 0 ? 'Add' : 'Edit']); /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('keepalive') ->useScript('form.validate') ->useScript('com_modules.admin-module-edit'); $input = Factory::getApplication()->getInput(); // In case of modal $isModal = $input->get('layout') === 'modal'; $layout = $isModal ? 'modal' : 'edit'; $tmpl = $isModal || $input->get('tmpl', '', 'cmd') === 'component' ? '&tmpl=component' : ''; ?> <form action="<?php echo Route::_('index.php?option=com_modules&layout=' . $layout . $tmpl . '&client_id=' . $this->form->getValue('client_id') . '&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="module-form" aria-label="<?php echo Text::_('COM_MODULES_FORM_TITLE_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="form-validate"> <?php echo LayoutHelper::render('joomla.edit.title_alias', $this); ?> <div class="main-card"> <?php echo HTMLHelper::_('uitab.startTabSet', 'myTab', ['active' => 'general', 'recall' => true, 'breakpoint' => 768]); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'general', Text::_('COM_MODULES_MODULE')); ?> <div class="row"> <div class="col-lg-9"> <?php if ($this->item->xml) : ?> <?php if ($this->item->xml->description) : ?> <h2> <?php if ($this->item->xml) { echo ($text = (string) $this->item->xml->name) ? Text::_($text) : $this->item->module; } else { echo Text::_('COM_MODULES_ERR_XML'); } ?> </h2> <div class="info-labels"> <span class="badge bg-secondary"> <?php echo $this->item->client_id == 0 ? Text::_('JSITE') : Text::_('JADMINISTRATOR'); ?> </span> </div> <div> <?php $this->fieldset = 'description'; $short_description = Text::_($this->item->xml->description); $long_description = LayoutHelper::render('joomla.edit.fieldset', $this); if (!$long_description) { $truncated = HTMLHelper::_('string.truncate', $short_description, 550, true, false); if (strlen($truncated) > 500) { $long_description = $short_description; $short_description = HTMLHelper::_('string.truncate', $truncated, 250); if ($short_description == $long_description) { $long_description = ''; } } } ?> <p><?php echo $short_description; ?></p> <?php if ($long_description) : ?> <p class="readmore"> <a href="#" onclick="document.getElementById('myTab').activateTab(document.getElementById('description'));"> <?php echo Text::_('JGLOBAL_SHOW_FULL_DESCRIPTION'); ?> </a> </p> <?php endif; ?> </div> <?php endif; ?> <?php else : ?> <div class="alert alert-danger"> <span class="icon-exclamation-triangle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('ERROR'); ?></span> <?php echo Text::_('COM_MODULES_ERR_XML'); ?> </div> <?php endif; ?> <?php if ($hasContent) { echo $this->form->getInput($hasContentFieldName); } $this->fieldset = 'basic'; $html = LayoutHelper::render('joomla.edit.fieldset', $this); echo $html ? '<hr>' . $html : ''; ?> </div> <div class="col-lg-3"> <?php // Set main fields. $this->fields = [ 'showtitle', 'position', 'published', 'publish_up', 'publish_down', 'access', 'ordering', 'language', 'note' ]; ?> <?php if ($this->item->client_id == 0) : ?> <?php echo LayoutHelper::render('joomla.edit.global', $this); ?> <?php else : ?> <?php echo LayoutHelper::render('joomla.edit.admin_modules', $this); ?> <?php endif; ?> </div> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php if (isset($long_description) && $long_description != '') : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'description', Text::_('JGLOBAL_FIELDSET_DESCRIPTION')); ?> <div class="card"> <div class="card-body"> <?php echo $long_description; ?> </div> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php if ($this->item->client_id == 0) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'assignment', Text::_('COM_MODULES_MENU_ASSIGNMENT')); ?> <fieldset id="fieldset-assignment" class="options-form"> <legend><?php echo Text::_('COM_MODULES_MENU_ASSIGNMENT'); ?></legend> <div> <?php echo $this->loadTemplate('assignment'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php $this->fieldsets = []; $this->ignore_fieldsets = ['basic', 'description']; echo LayoutHelper::render('joomla.edit.params', $this); ?> <?php if ($this->canDo->get('core.admin')) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'permissions', Text::_('COM_MODULES_FIELDSET_RULES')); ?> <fieldset id="fieldset-permissions" class="options-form"> <legend><?php echo Text::_('COM_MODULES_FIELDSET_RULES'); ?></legend> <div> <?php echo $this->form->getInput('rules'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php echo HTMLHelper::_('uitab.endTabSet'); ?> <input type="hidden" name="task" value=""> <input type="hidden" name="return" value="<?php echo $input->get('return', null, 'BASE64'); ?>"> <?php echo HTMLHelper::_('form.token'); ?> <?php echo $this->form->getInput('module'); ?> <?php echo $this->form->getInput('client_id'); ?> </div> </form> PKBA#]-�Y�{{,components/com_modules/tmpl/module/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = Factory::getApplication()->getDocument()->getWebAssetManager(); $wa->addInlineScript(' document.addEventListener("DOMContentLoaded", function() { const saveCloseButton = window.parent.document.getElementById("btnModalSaveAndClose"); if (saveCloseButton) { saveCloseButton.classList.remove("hidden"); } }); '); ?> <button id="applyBtn" type="button" class="hidden" onclick="Joomla.submitbutton('module.apply');"></button> <button id="saveBtn" type="button" class="hidden" onclick="Joomla.submitbutton('module.save');"></button> <button id="closeBtn" type="button" class="hidden" onclick="Joomla.submitbutton('module.cancel');"></button> <div class="container-popup"> <?php $this->setLayout('edit'); ?> <?php echo $this->loadTemplate(); ?> </div> PKBA#]�4iA�$�$6components/com_modules/tmpl/module/edit_assignment.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\Component\Menus\Administrator\Helper\MenusHelper; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; // Initialise related data. $menuTypes = MenusHelper::getMenuLinks(); $this->document->getWebAssetManager() ->useScript('joomla.treeselectmenu') ->useScript('com_modules.admin-module-edit-assignment'); ?> <div class="control-group"> <label id="jform_menus-lbl" class="control-label" for="jform_assignment"><?php echo Text::_('COM_MODULES_MODULE_ASSIGN'); ?></label> <div id="jform_menus" class="controls"> <select class="form-select" name="jform[assignment]" id="jform_assignment"> <?php echo HTMLHelper::_('select.options', ModulesHelper::getAssignmentOptions($this->item->client_id), 'value', 'text', $this->item->assignment, true); ?> </select> </div> </div> <div id="menuselect-group" class="control-group"> <label id="jform_menuselect-lbl" class="control-label" for="jform_menuselect"><?php echo Text::_('JGLOBAL_MENU_SELECTION'); ?></label> <div id="jform_menuselect" class="controls"> <?php if (!empty($menuTypes)) : ?> <div class="card-header"> <section class="d-flex align-items-center flex-wrap w-100" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL'); ?>"> <div class="d-flex align-items-center flex-fill mb-1" role="group" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL_ASSIGN'); ?>"><?php echo Text::_('COM_MODULES_GLOBAL_ASSIGN'); ?> <button id="treeCheckAll" class="btn btn-secondary btn-sm mx-1" type="button"> <?php echo Text::_('JALL'); ?> </button> <button id="treeUncheckAll" class="btn btn-secondary btn-sm mx-1" type="button"> <?php echo Text::_('JNONE'); ?> </button> </div> <div class="d-flex align-items-center mb-1 flex-fill" role="group" aria-label="<?php echo Text::_('COM_MODULES_GLOBAL_TREE_EXPAND'); ?>"><?php echo Text::_('COM_MODULES_GLOBAL_TREE_EXPAND'); ?> <button id="treeExpandAll" class="btn btn-secondary btn-sm mx-1" type="button"> <?php echo Text::_('JALL'); ?> </button> <button id="treeCollapseAll" class="btn btn-secondary btn-sm mx-1" type="button"> <?php echo Text::_('JNONE'); ?> </button> </div> <div role="search" class="flex-grow-1"> <label for="treeselectfilter" class="visually-hidden"><?php echo Text::_('COM_MODULES_SEARCH_MENUITEM'); ?></label> <input type="text" id="treeselectfilter" name="treeselectfilter" class="form-control search-query" autocomplete="off" placeholder="<?php echo Text::_('JSEARCH_FILTER'); ?>"> </div> </section> </div> <div class="card-body"> <ul class="treeselect"> <?php foreach ($menuTypes as &$type) : ?> <?php if (count($type->links)) : ?> <?php $prevlevel = 0; ?> <li> <div class="treeselect-item treeselect-header"> <label class="nav-header"><?php echo $type->title; ?></label></div> <?php foreach ($type->links as $i => $link) : ?> <?php if ($prevlevel < $link->level) { echo '<ul class="treeselect-sub">'; } elseif ($prevlevel > $link->level) { echo str_repeat('</li></ul>', $prevlevel - $link->level); } else { echo '</li>'; } $selected = 0; if ($this->item->assignment == 0) { $selected = 1; } elseif ($this->item->assignment < 0) { $selected = in_array(-$link->value, $this->item->assigned); } elseif ($this->item->assignment > 0) { $selected = in_array($link->value, $this->item->assigned); } ?> <li> <div class="treeselect-item"> <?php $uselessMenuItem = in_array($link->type, ['separator', 'heading', 'alias', 'url']); $id = 'jform_menuselect'; ?> <input type="checkbox" class="novalidate form-check-input" name="jform[assigned][]" id="<?php echo $id . $link->value; ?>" value="<?php echo (int) $link->value; ?>"<?php echo $selected ? ' checked="checked"' : ''; echo $uselessMenuItem ? ' disabled="disabled"' : ''; ?>> <label for="<?php echo $id . $link->value; ?>" class=""> <?php echo $link->text; ?> <?php if (Multilanguage::isEnabled() && $link->language != '' && $link->language != '*') : ?> <?php if ($link->language_image) : ?> <?php echo HTMLHelper::_('image', 'mod_languages/' . $link->language_image . '.gif', $link->language_title, ['title' => $link->language_title], true); ?> <?php else : ?> <?php echo '<span class="badge bg-secondary" title="' . $link->language_title . '">' . $link->language_sef . '</span>'; ?> <?php endif; ?> <?php endif; ?> <?php if ($link->published == 0) : ?> <?php echo ' <span class="badge bg-secondary">' . Text::_('JUNPUBLISHED') . '</span>'; ?> <?php endif; ?> <?php if ($uselessMenuItem) : ?> <?php echo ' <span class="badge bg-secondary">' . Text::_('COM_MODULES_MENU_ITEM_' . strtoupper($link->type)) . '</span>'; ?> <?php endif; ?> </label> </div> <?php if (!isset($type->links[$i + 1])) { echo str_repeat('</li></ul>', $link->level); } $prevlevel = $link->level; ?> <?php endforeach; ?> </li> <?php endif; ?> <?php endforeach; ?> </ul> <joomla-alert id="noresultsfound" type="warning" style="display:none"><?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?></joomla-alert> <div class="hidden" id="treeselectmenu"> <div class="nav-hover treeselect-menu"> <div class="dropdown"> <button type="button" data-bs-toggle="dropdown" class="dropdown-toggle btn btn-sm btn-light"> <span class="caret"></span> <span class="visually-hidden"><?php echo Text::sprintf('JGLOBAL_TOGGLE_DROPDOWN'); ?></span> </button> <div class="dropdown-menu"> <h1 class="dropdown-header"><?php echo Text::_('COM_MODULES_SUBITEMS'); ?></h1> <div class="dropdown-divider"></div> <a class="dropdown-item checkall" href="javascript://"><span class="icon-check-square" aria-hidden="true"></span> <?php echo Text::_('JSELECT'); ?></a> <a class="dropdown-item uncheckall" href="javascript://"><span class="icon-square" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_DESELECT'); ?></a> <div class="treeselect-menu-expand"> <div class="dropdown-divider"></div> <a class="dropdown-item expandall" href="javascript://"><span class="icon-plus" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_EXPAND'); ?></a> <a class="dropdown-item collapseall" href="javascript://"><span class="icon-minus" aria-hidden="true"></span> <?php echo Text::_('COM_MODULES_COLLAPSE'); ?></a> </div> </div> </div> </div> </div> </div> <?php endif; ?> </div> </div> PKBA#]^~��,components/com_modules/tmpl/select/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; $this->modalLink = '&tmpl=component&view=module&layout=modal'; ?> <div class="container-popup"> <?php $this->setLayout('default'); ?> <?php echo $this->loadTemplate(); ?> </div> PKBA#]��T��.components/com_modules/tmpl/select/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; $app = Factory::getApplication(); $function = $app->getInput()->getCmd('function'); /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_modules.admin-module-search'); if ($function) : $wa->useScript('com_modules.admin-select-modal'); endif; ?> <div class="d-none" id="comModulesSelectSearchContainer"> <div class="d-flex mt-2"> <div class="m-auto"> <label class="visually-hidden" for="comModulesSelectSearch"> <?php echo Text::_('COM_MODULES_TYPE_CHOOSE'); ?> </label> <div class="input-group mb-3 me-sm-2"> <input type="text" value="" class="form-control" id="comModulesSelectSearch" placeholder="<?php echo Text::_('JSEARCH_FILTER'); ?>" > <div class="input-group-text"> <span class="icon-search" aria-hidden="true"></span> </div> </div> </div> </div> </div> <div id="new-modules-list"> <div class="new-modules"> <div class="modules-alert alert alert-info d-none"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('COM_MODULES_MSG_MANAGE_NO_MODULES'); ?> </div> <h2 class="pb-3 ms-3" id="comModulesSelectTypeHeader"> <?php echo Text::_('COM_MODULES_TYPE_CHOOSE'); ?> </h2> <div class="main-card card-columns p-4" id="comModulesSelectResultsContainer"> <?php foreach ($this->items as &$item) : ?> <?php // Prepare variables for the link. ?> <?php $link = 'index.php?option=com_modules&task=module.add&client_id=' . $this->state->get('client_id', 0) . $this->modalLink . '&eid=' . $item->extension_id; ?> <?php $name = $this->escape($item->name); ?> <?php $desc = HTMLHelper::_('string.truncate', $this->escape(strip_tags($item->desc)), 200); ?> <a href="<?php echo Route::_($link); ?>" class="new-module mb-3 comModulesSelectCard" <?php echo !empty($function) ? 'data-function="' . $this->escape($function) . '"' : ''; ?> aria-label="<?php echo Text::sprintf('COM_MODULES_SELECT_MODULE', $name); ?>"> <div class="new-module-details"> <h3 class="new-module-title"><?php echo $name; ?></h3> <p class="card-body new-module-caption p-0"> <?php echo $desc; ?> </p> </div> <span class="new-module-link"> <span class="icon-plus" aria-hidden="true"></span> </span> </a> <?php endforeach; ?> </div> </div> </div> PKBA#]Y���++:components/com_modules/tmpl/modules/default_batch_body.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; $clientId = $this->state->get('client_id'); // Show only Module Positions of published Templates $published = 1; $positions = HTMLHelper::_('modules.positions', $clientId, $published); $positions['']['items'][] = ModulesHelper::createOption('nochange', Text::_('COM_MODULES_BATCH_POSITION_NOCHANGE')); $positions['']['items'][] = ModulesHelper::createOption('noposition', Text::_('COM_MODULES_BATCH_POSITION_NOPOSITION')); // Build field $attr = [ 'id' => 'batch-position-id', ]; Text::script('JGLOBAL_SELECT_NO_RESULTS_MATCH'); Text::script('JGLOBAL_SELECT_PRESS_TO_SELECT'); $this->document->getWebAssetManager() ->usePreset('choicesjs') ->useScript('webcomponent.field-fancy-select') ->useScript('joomla.batch-copymove'); ?> <div class="p-3"> <p><?php echo Text::_('COM_MODULES_BATCH_TIP'); ?></p> <div class="row"> <?php if ($clientId != 1) : ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.language', []); ?> </div> </div> <?php elseif ($clientId == 1 && ModuleHelper::isAdminMultilang()) : ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.adminlanguage', []); ?> </div> </div> <?php endif; ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.access', []); ?> </div> </div> </div> <div class="row"> <?php if ($published >= 0) : ?> <div class="col-md-6"> <div class="controls"> <label id="batch-choose-action-lbl" for="batch-choose-action"> <?php echo Text::_('COM_MODULES_BATCH_POSITION_LABEL'); ?> </label> <div id="batch-choose-action"> <joomla-field-fancy-select allow-custom search-placeholder="<?php echo $this->escape(Text::_('COM_MODULES_TYPE_OR_SELECT_POSITION')); ?>"> <?php echo HTMLHelper::_('select.groupedlist', $positions, 'batch[position_id]', $attr); ?> </joomla-field-fancy-select> <div id="batch-copy-move" class="control-group radio"> <?php echo HTMLHelper::_('modules.batchOptions'); ?> </div> </div> </div> <?php endif; ?> </div> </div> </div> PKBA#]�ת ff2components/com_modules/tmpl/modules/emptystate.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2021 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; $displayData = [ 'textPrefix' => 'COM_MODULES', 'formURL' => 'index.php?option=com_modules&view=select&client_id=' . $this->clientId, 'helpURL' => 'https://docs.joomla.org/Special:MyLanguage/Module', 'icon' => 'icon-cube module', // Although it is (almost) impossible to get to this page with no created Administrator Modules, we add this for completeness. 'title' => Text::_('COM_MODULES_EMPTYSTATE_TITLE_' . ($this->clientId ? 'ADMINISTRATOR' : 'SITE')), ]; if (Factory::getApplication()->getIdentity()->authorise('core.create', 'com_modules')) { $displayData['createURL'] = 'index.php?option=com_modules&view=select&client_id=' . $this->clientId; } echo LayoutHelper::render('joomla.content.emptystate', $displayData); PKBA#]eF�~~-components/com_modules/tmpl/modules/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; if (Factory::getApplication()->isClient('site')) { Session::checkToken('get') or die(Text::_('JINVALID_TOKEN')); } /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_modules.admin-modules-modal'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $editor = Factory::getApplication()->getInput()->get('editor', '', 'cmd'); $link = 'index.php?option=com_modules&view=modules&layout=modal&tmpl=component&' . Session::getFormToken() . '=1'; if (!empty($editor)) { $link .= '&editor=' . $editor; } ?> <div class="container-popup"> <form action="<?php echo Route::_($link); ?>" method="post" name="adminForm" id="adminForm"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if ($this->total > 0) : ?> <table class="table" id="moduleList"> <caption class="visually-hidden"> <?php echo Text::_('COM_MODULES_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.published', $listDirn, $listOrder); ?> </th> <th scope="col" class="title"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-15 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_POSITION', 'a.position', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_MODULE', 'name', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_PAGES', 'pages', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ACCESS', 'ag.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'l.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php $iconStates = [ -2 => 'icon-trash', 0 => 'icon-unpublish', 1 => 'icon-publish', 2 => 'icon-archive', ]; foreach ($this->items as $i => $item) : ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"> <span class="tbody-icon"> <span class="<?php echo $iconStates[$this->escape($item->published)]; ?>" aria-hidden="true"></span> </span> </td> <th scope="row" class="has-context"> <a class="js-module-insert btn btn-sm btn-success w-100" href="#" data-module="<?php echo $item->id; ?>" data-editor="<?php echo $this->escape($editor); ?>"> <?php echo $this->escape($item->title); ?> </a> </th> <td class="small d-none d-md-table-cell"> <?php if ($item->position) : ?> <a class="js-position-insert btn btn-sm btn-warning w-100" href="#" data-position="<?php echo $this->escape($item->position); ?>" data-editor="<?php echo $this->escape($editor); ?>"><?php echo $this->escape($item->position); ?></a> <?php else : ?> <span class="btn btn-sm btn-secondary w-100"><?php echo Text::_('JNONE'); ?></span> <?php endif; ?> </td> <td class="small d-none d-md-table-cell"> <?php echo $item->name; ?> </td> <td class="small d-none d-md-table-cell"> <?php echo $item->pages; ?> </td> <td class="small d-none d-md-table-cell"> <?php echo $this->escape($item->access_level); ?> </td> <td class="small d-none d-md-table-cell"> <?php echo LayoutHelper::render('joomla.content.language', $item); ?> </td> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <input type="hidden" name="editor" value="<?php echo $editor; ?>" /> <?php echo HTMLHelper::_('form.token'); ?> </form> </div> PKBA#]���<components/com_modules/tmpl/modules/default_batch_footer.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; ?> <button type="button" class="btn btn-secondary" onclick="document.getElementById('batch-position-id').value='';document.getElementById('batch-access').value='';document.getElementById('batch-language-id').value=''" data-bs-dismiss="modal"> <?php echo Text::_('JCANCEL'); ?> </button> <button type="submit" class="btn btn-success" onclick="Joomla.submitbutton('module.batch');return false;"> <?php echo Text::_('JGLOBAL_BATCH_PROCESS'); ?> </button> PKBA#]���s_1_1/components/com_modules/tmpl/modules/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $clientId = (int) $this->state->get('client_id', 0); $user = Factory::getUser(); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $saveOrder = ($listOrder == 'a.ordering'); if ($saveOrder && !empty($this->items)) { $saveOrderingUrl = 'index.php?option=com_modules&task=modules.saveOrderAjax&tmpl=component&' . Session::getFormToken() . '=1'; HTMLHelper::_('draggablelist.draggable'); } ?> <form action="<?php echo Route::_('index.php?option=com_modules&view=modules&client_id=' . $clientId); ?>" method="post" name="adminForm" id="adminForm"> <div id="j-main-container" class="j-main-container"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if ($this->total > 0) : ?> <table class="table" id="moduleList"> <caption class="visually-hidden"> <?php echo Text::_('COM_MODULES_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', '', 'a.ordering', $listDirn, $listOrder, null, 'asc', 'JGRID_HEADING_ORDERING', 'icon-sort'); ?> </th> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.published', $listDirn, $listOrder); ?> </th> <th scope="col" class="title"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_POSITION', 'a.position', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_MODULE', 'name', $listDirn, $listOrder); ?> </th> <?php if ($clientId === 0) : ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_MODULES_HEADING_PAGES', 'pages', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ACCESS', 'ag.title', $listDirn, $listOrder); ?> </th> <?php if (($clientId === 0) && (Multilanguage::isEnabled())) : ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'l.title', $listDirn, $listOrder); ?> </th> <?php elseif ($clientId === 1 && ModuleHelper::isAdminMultilang()) : ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'a.language', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-5 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody <?php if ($saveOrder) : ?> class="js-draggable" data-url="<?php echo $saveOrderingUrl; ?>" data-direction="<?php echo strtolower($listDirn); ?>" data-nested="false"<?php endif; ?>> <?php foreach ($this->items as $i => $item) : $ordering = ($listOrder == 'a.ordering'); $canCreate = $user->authorise('core.create', 'com_modules'); $canEdit = $user->authorise('core.edit', 'com_modules.module.' . $item->id); $canCheckin = $user->authorise('core.manage', 'com_checkin') || $item->checked_out == $user->get('id') || is_null($item->checked_out); $canChange = $user->authorise('core.edit.state', 'com_modules.module.' . $item->id) && $canCheckin; ?> <tr class="row<?php echo $i % 2; ?>" data-draggable-group="<?php echo $item->position ?: 'none'; ?>"> <td class="text-center"> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->title); ?> </td> <td class="text-center d-none d-md-table-cell"> <?php $iconClass = ''; if (!$canChange) { $iconClass = ' inactive'; } elseif (!$saveOrder) { $iconClass = ' inactive" title="' . Text::_('JORDERINGDISABLED'); } ?> <span class="sortable-handler<?php echo $iconClass; ?>"> <span class="icon-ellipsis-v"></span> </span> <?php if ($canChange && $saveOrder) : ?> <input type="text" name="order[]" size="5" value="<?php echo $item->ordering; ?>" class="width-20 text-area-order hidden"> <?php endif; ?> </td> <td class="text-center"> <?php // Check if extension is enabled ?> <?php if ($item->enabled > 0) : ?> <?php echo HTMLHelper::_('jgrid.published', $item->published, $i, 'modules.', $canChange, 'cb', $item->publish_up, $item->publish_down); ?> <?php else : ?> <?php // Extension is not enabled, show a message that indicates this. ?> <span class="tbody-icon" title="<?php echo Text::sprintf('COM_MODULES_MSG_MANAGE_EXTENSION_DISABLED', $this->escape($item->name)); ?>"> <span class="icon-minus-circle" aria-hidden="true"></span> </span> <?php endif; ?> </td> <th scope="row" class="has-context"> <div> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $i, $item->editor, $item->checked_out_time, 'modules.', $canCheckin); ?> <?php endif; ?> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_modules&task=module.edit&id=' . (int) $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($item->title); ?>"> <?php echo $this->escape($item->title); ?></a> <?php else : ?> <?php echo $this->escape($item->title); ?> <?php endif; ?> <?php if (!empty($item->note)) : ?> <div class="small"> <?php echo Text::sprintf('JGLOBAL_LIST_NOTE', $this->escape($item->note)); ?> </div> <?php endif; ?> </div> </th> <td class="d-none d-md-table-cell"> <?php if ($item->position) : ?> <span class="badge bg-info"> <?php echo $item->position; ?> </span> <?php else : ?> <span class="badge bg-secondary"> <?php echo Text::_('JNONE'); ?> </span> <?php endif; ?> </td> <td class="small d-none d-md-table-cell"> <?php echo $item->name; ?> </td> <?php if ($clientId === 0) : ?> <td class="small d-none d-md-table-cell"> <?php echo $item->pages; ?> </td> <?php endif; ?> <td class="small d-none d-md-table-cell"> <?php echo $this->escape($item->access_level); ?> </td> <?php if (($clientId === 0) && (Multilanguage::isEnabled())) : ?> <td class="small d-none d-md-table-cell"> <?php echo LayoutHelper::render('joomla.content.language', $item); ?> </td> <?php elseif ($clientId === 1 && ModuleHelper::isAdminMultilang()) : ?> <td class="small d-none d-md-table-cell"> <?php if ($item->language == '') :?> <?php echo Text::_('JUNDEFINED'); ?> <?php elseif ($item->language == '*') :?> <?php echo Text::alt('JALL', 'language'); ?> <?php else :?> <?php echo $this->escape($item->language); ?> <?php endif; ?> </td> <?php endif; ?> <td class="d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <?php // Load the batch processing form. ?> <?php if ( $user->authorise('core.create', 'com_modules') && $user->authorise('core.edit', 'com_modules') && $user->authorise('core.edit.state', 'com_modules') ) : ?> <?php echo HTMLHelper::_( 'bootstrap.renderModal', 'collapseModal', [ 'title' => Text::_('COM_MODULES_BATCH_OPTIONS'), 'footer' => $this->loadTemplate('batch_footer'), ], $this->loadTemplate('batch_body') ); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </form> PKBA#]�����/components/com_modules/tmpl/modules/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_MODULES_MODULES_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_MODULES_MODULES_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKBA#]��\==/components/com_modules/forms/filter_modules.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form addfieldprefix="Joomla\Component\Modules\Administrator\Field"> <field name="client_id" type="list" label="JSITEADMIN" filtermode="selector" class="js-select-reset-on-change" validate="options" > <option value="0">JSITE</option> <option value="1">JADMINISTRATOR</option> </field> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_MODULES_MODULES_FILTER_SEARCH_LABEL" description="COM_MODULES_MODULES_FILTER_SEARCH_DESC" hint="JSEARCH_FILTER" noresults="COM_MODULES_MSG_MANAGE_NO_MODULES" /> <field name="state" type="status" label="JSTATUS" optionsFilter="*,-2,0,1" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="position" type="ModulesPosition" label="COM_MODULES_FIELD_POSITION_LABEL" client="site" class="js-select-submit-on-change" > <option value="">COM_MODULES_OPTION_SELECT_POSITION</option> </field> <field name="module" type="ModulesModule" label="COM_MODULES_HEADING_MODULE" client="site" class="js-select-submit-on-change" > <option value="">COM_MODULES_OPTION_SELECT_MODULE</option> </field> <field name="menuitem" type="menuitem" label="JGLOBAL_MENU_SELECTION" disable="separator,alias,heading,url" class="js-select-submit-on-change" > <option value="">COM_MODULES_OPTION_SELECT_MENU_ITEM</option> <option value="-1">COM_MODULES_NONE</option> </field> <field name="access" type="accesslevel" label="JGRID_HEADING_ACCESS" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_ACCESS</option> </field> <field name="language" type="contentlanguage" label="JGRID_HEADING_LANGUAGE" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" statuses="*,0,1,-2" class="js-select-submit-on-change" default="a.position ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.published ASC">JSTATUS_ASC</option> <option value="a.published DESC">JSTATUS_DESC</option> <option value="a.title ASC">JGLOBAL_TITLE_ASC</option> <option value="a.title DESC">JGLOBAL_TITLE_DESC</option> <option value="a.position ASC">COM_MODULES_HEADING_POSITION_ASC</option> <option value="a.position DESC">COM_MODULES_HEADING_POSITION_DESC</option> <option value="name ASC">COM_MODULES_HEADING_MODULE_ASC</option> <option value="name DESC">COM_MODULES_HEADING_MODULE_DESC</option> <option value="pages ASC">COM_MODULES_HEADING_PAGES_ASC</option> <option value="pages DESC">COM_MODULES_HEADING_PAGES_DESC</option> <option value="ag.title ASC">JGRID_HEADING_ACCESS_ASC</option> <option value="ag.title DESC">JGRID_HEADING_ACCESS_DESC</option> <option value="l.title ASC" requires="multilanguage">JGRID_HEADING_LANGUAGE_ASC</option> <option value="l.title DESC" requires="multilanguage">JGRID_HEADING_LANGUAGE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKBA#]���x x 'components/com_modules/forms/module.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <config> <inlinehelp button="show"/> </config> <fieldset addfieldprefix="Joomla\Component\Modules\Administrator\Field"> <field name="id" type="number" label="JGLOBAL_FIELD_ID_LABEL" default="0" readonly="true" /> <field name="title" type="text" label="JGLOBAL_TITLE" maxlength="100" required="true" /> <field name="note" type="text" label="COM_MODULES_FIELD_NOTE_LABEL" maxlength="255" /> <field name="module" type="hidden" label="COM_MODULES_FIELD_MODULE_LABEL" readonly="readonly" /> <field name="showtitle" type="radio" label="COM_MODULES_FIELD_SHOWTITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="published" type="list" label="JSTATUS" class="form-select-color-state" default="1" validate="options" > <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="-2">JTRASHED</option> </field> <field name="publish_up" type="calendar" label="COM_MODULES_FIELD_PUBLISH_UP_LABEL" filter="user_utc" translateformat="true" showtime="true" /> <field name="publish_down" type="calendar" label="COM_MODULES_FIELD_PUBLISH_DOWN_LABEL" filter="user_utc" translateformat="true" showtime="true" /> <field name="client_id" type="hidden" label="COM_MODULES_FIELD_CLIENT_ID_LABEL" readonly="true" /> <field name="position" type="ModulesPositionedit" label="COM_MODULES_FIELD_POSITION_LABEL" default="" maxlength="50" client="site" /> <field name="access" type="accesslevel" label="JFIELD_ACCESS_LABEL" filter="UINT" validate="options" /> <field name="ordering" type="moduleorder" label="JFIELD_ORDERING_LABEL" linked="position" /> <field name="content" type="editor" label="COM_MODULES_FIELD_CONTENT_LABEL" buttons="true" filter="JComponentHelper::filterText" hide="readmore,pagebreak,module" /> <field name="language" type="contentlanguage" label="JFIELD_LANGUAGE_LABEL" > <option value="*">JALL</option> </field> <field name="assignment" type="hidden" /> <field name="assigned" type="hidden" /> <field name="asset_id" type="hidden" filter="unset" /> <field name="rules" type="rules" label="JFIELD_RULES_LABEL" translate_label="false" filter="rules" component="com_modules" section="module" validate="rules" /> </fieldset> </form> PKBA#]��it��4components/com_modules/forms/filter_modulesadmin.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fieldset addfieldprefix="Joomla\Component\Modules\Administrator\Field" /> <field name="client_id" type="list" label="JSITEADMIN" filtermode="selector" class="js-select-reset-on-change" validate="options" > <option value="0">JSITE</option> <option value="1">JADMINISTRATOR</option> </field> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_MODULES_MODULES_FILTER_SEARCH_LABEL" description="COM_MODULES_MODULES_FILTER_SEARCH_DESC" hint="JSEARCH_FILTER" noresults="COM_MODULES_MSG_MANAGE_NO_MODULES" /> <field name="state" type="status" label="JSTATUS" optionsFilter="*,-2,0,1" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="position" type="ModulesPosition" label="COM_MODULES_FIELD_POSITION_LABEL" client="administrator" class="js-select-submit-on-change" > <option value="">COM_MODULES_OPTION_SELECT_POSITION</option> </field> <field name="module" type="ModulesModule" label="COM_MODULES_HEADING_MODULE" client="administrator" class="js-select-submit-on-change" > <option value="">COM_MODULES_OPTION_SELECT_MODULE</option> </field> <field name="access" type="accesslevel" label="JGRID_HEADING_ACCESS" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_ACCESS</option> </field> <field name="language" type="language" label="JGRID_HEADING_LANGUAGE" client="administrator" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" statuses="*,0,1,-2" class="js-select-submit-on-change" default="a.position ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.published ASC">JSTATUS_ASC</option> <option value="a.published DESC">JSTATUS_DESC</option> <option value="a.title ASC">JGLOBAL_TITLE_ASC</option> <option value="a.title DESC">JGLOBAL_TITLE_DESC</option> <option value="a.position ASC">COM_MODULES_HEADING_POSITION_ASC</option> <option value="a.position DESC">COM_MODULES_HEADING_POSITION_DESC</option> <option value="name ASC">COM_MODULES_HEADING_MODULE_ASC</option> <option value="name DESC">COM_MODULES_HEADING_MODULE_DESC</option> <option value="ag.title ASC">JGRID_HEADING_ACCESS_ASC</option> <option value="ag.title DESC">JGRID_HEADING_ACCESS_DESC</option> <option value="a.language ASC" requires="adminlanguage">JGRID_HEADING_LANGUAGE_ASC</option> <option value="a.language DESC" requires="adminlanguage">JGRID_HEADING_LANGUAGE_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKBA#]$W��� � ,components/com_modules/forms/moduleadmin.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <config> <inlinehelp button="show"/> </config> <fieldset addfieldprefix="Joomla\Component\Modules\Administrator\Field"> <field name="id" type="number" label="JGLOBAL_FIELD_ID_LABEL" default="0" readonly="true" /> <field name="title" type="text" label="JGLOBAL_TITLE" maxlength="100" required="true" /> <field name="note" type="text" label="COM_MODULES_FIELD_NOTE_LABEL" maxlength="255" /> <field name="module" type="hidden" label="COM_MODULES_FIELD_MODULE_LABEL" readonly="readonly" /> <field name="showtitle" type="radio" label="COM_MODULES_FIELD_SHOWTITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="published" type="list" label="JSTATUS" class="form-select-color-state" default="1" validate="options" > <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="-2">JTRASHED</option> </field> <field name="publish_up" type="calendar" label="COM_MODULES_FIELD_PUBLISH_UP_LABEL" filter="user_utc" translateformat="true" showtime="true" /> <field name="publish_down" type="calendar" label="COM_MODULES_FIELD_PUBLISH_DOWN_LABEL" filter="user_utc" translateformat="true" showtime="true" /> <field name="client_id" type="hidden" label="COM_MODULES_FIELD_CLIENT_ID_LABEL" readonly="true" /> <field name="position" type="ModulesPositionedit" label="COM_MODULES_FIELD_POSITION_LABEL" default="" maxlength="50" client="administrator" /> <field name="access" type="accesslevel" label="JFIELD_ACCESS_LABEL" filter="UINT" validate="options" /> <field name="ordering" type="moduleorder" label="JFIELD_ORDERING_LABEL" linked="position" /> <field name="language" type="language" label="JFIELD_LANGUAGE_LABEL" default="*" client="administrator" > <option value="*">JALL</option> </field> <field name="content" type="editor" label="COM_MODULES_FIELD_CONTENT_LABEL" buttons="true" filter="JComponentHelper::filterText" hide="readmore,pagebreak,module,menu,fields,contact,article" /> <field name="assignment" type="hidden" /> <field name="assigned" type="hidden" /> <field name="asset_id" type="hidden" filter="unset" /> <field name="rules" type="rules" label="JFIELD_RULES_LABEL" translate_label="false" filter="rules" component="com_modules" section="module" validate="rules" /> </fieldset> </form> PKBA#]O�4JJ)components/com_modules/forms/advanced.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="params"> <fieldset name="advanced"> <field name="module_tag" type="moduletag" label="COM_MODULES_FIELD_MODULE_TAG_LABEL" default="div" validate="options" /> <field name="bootstrap_size" type="integer" label="COM_MODULES_FIELD_BOOTSTRAP_SIZE_LABEL" first="0" last="12" step="1" /> <field name="header_tag" type="headertag" label="COM_MODULES_FIELD_HEADER_TAG_LABEL" default="h3" validate="options" /> <field name="header_class" type="textarea" label="COM_MODULES_FIELD_HEADER_CLASS_LABEL" rows="3" validate="CssIdentifier" /> <field name="style" type="chromestyle" label="COM_MODULES_FIELD_MODULE_STYLE_LABEL" /> </fieldset> </fields> </form> PKBA#].k��{{7components/com_modules/layouts/toolbar/cancelselect.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; $text = Text::_('JTOOLBAR_CANCEL'); ?> <joomla-toolbar-button> <button onclick="location.href='index.php?option=com_modules&view=modules&client_id=<?php echo $displayData['client_id']; ?>'" class="btn btn-danger"> <span class="icon-times" aria-hidden="true"></span> <?php echo $text; ?> </button> </joomla-toolbar-button> PKBA#]D=+q q Hcomponents/com_modules/layouts/joomla/form/field/modulespositionedit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; extract($displayData); /** * Layout variables * ----------------- * @var string $autocomplete Autocomplete attribute for the field. * @var boolean $autofocus Is autofocus enabled? * @var string $class Classes for the input. * @var string $description Description of the field. * @var boolean $disabled Is this field disabled? * @var string $group Group the field belongs to. <fields> section in form XML. * @var boolean $hidden Is this field hidden in the form? * @var string $hint Placeholder for the field. * @var string $id DOM id of the field. * @var string $label Label of the field. * @var string $labelclass Classes to apply to the label. * @var boolean $multiple Does this field support multiple values? * @var string $name Name of the input field. * @var string $onchange Onchange attribute for the field. * @var string $onclick Onclick attribute for the field. * @var string $pattern Pattern (Reg Ex) of value of the form field. * @var boolean $readonly Is this field read only? * @var boolean $repeat Allows extensions to duplicate elements. * @var boolean $required Is this field required? * @var integer $size Size attribute of the input. * @var boolean $spellcheck Spellcheck state for the form field. * @var string $validate Validation rules to apply. * @var string $value Value attribute of the field. * @var array $checkedOptions Options that will be set as checked. * @var boolean $hasValue Has this field a value assigned? * @var array $options Options available for this field. * @var array $inputType Options available for this field. * @var string $accept File types that are accepted. * @var array $positions Array of the positions */ $attributes = [ 'class="' . $class . '"', ' allow-custom', ' search-placeholder="' . $this->escape(Text::_('COM_MODULES_TYPE_OR_SELECT_POSITION')) . '" ', ]; $selectAttr = [ $disabled ? 'disabled' : '', $readonly ? 'readonly' : '', strlen($hint) ? 'placeholder="' . $this->escape($hint) . '"' : '', $onchange ? ' onchange="' . $onchange . '"' : '', $autofocus ? ' autofocus' : '', ]; if ($required) { $selectAttr[] = ' required class="required"'; $attributes[] = ' required'; } Text::script('JGLOBAL_SELECT_NO_RESULTS_MATCH'); Text::script('JGLOBAL_SELECT_PRESS_TO_SELECT'); Factory::getDocument()->getWebAssetManager() ->usePreset('choicesjs') ->useScript('webcomponent.field-fancy-select'); ?> <joomla-field-fancy-select <?php echo implode(' ', $attributes); ?>><?php echo HTMLHelper::_('select.groupedlist', $positions, $name, [ 'id' => $id, 'list.select' => $value, 'list.attr' => implode(' ', $selectAttr), ]); ?></joomla-field-fancy-select> PKBA#]�p����"components/com_modules/modules.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="component" method="upgrade"> <name>com_modules</name> <author>Joomla! Project</author> <creationDate>2006-04</creationDate> <copyright>(C) 2006 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>COM_MODULES_XML_DESCRIPTION</description> <namespace path="src">Joomla\Component\Modules</namespace> <files folder="site"> <folder>forms</folder> <folder>src</folder> </files> <media destination="com_modules" folder="media"> <folder>js</folder> </media> <administration> <files folder="admin"> <filename>access.xml</filename> <filename>config.xml</filename> <filename>modules.xml</filename> <folder>forms</folder> <folder>helpers</folder> <folder>layouts</folder> <folder>services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="admin"> <language tag="en-GB">language/en-GB/com_modules.ini</language> <language tag="en-GB">language/en-GB/com_modules.sys.ini</language> </languages> </administration> </extension> PKBA#]���y��,components/com_modules/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface; use Joomla\CMS\Extension\ComponentInterface; use Joomla\CMS\Extension\Service\Provider\ComponentDispatcherFactory; use Joomla\CMS\Extension\Service\Provider\MVCFactory; use Joomla\CMS\HTML\Registry; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\Component\Modules\Administrator\Extension\ModulesComponent; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The module service provider. * * @since 4.0.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.0.0 */ public function register(Container $container) { $container->registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Modules')); $container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Modules')); $container->set( ComponentInterface::class, function (Container $container) { $component = new ModulesComponent($container->get(ComponentDispatcherFactoryInterface::class)); $component->setMVCFactory($container->get(MVCFactoryInterface::class)); $component->setRegistry($container->get(Registry::class)); return $component; } ); } }; PKBA#]y{���0components/com_modules/src/Model/ModuleModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Model; use Joomla\CMS\Application\ApplicationHelper; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\Form\Form; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Object\CMSObject; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Table\Table; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; use Joomla\Database\ParameterType; use Joomla\Registry\Registry; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Module model. * * @since 1.6 */ class ModuleModel extends AdminModel { /** * The type alias for this content type. * * @var string * @since 3.4 */ public $typeAlias = 'com_modules.module'; /** * @var string The prefix to use with controller messages. * @since 1.6 */ protected $text_prefix = 'COM_MODULES'; /** * @var string The help screen key for the module. * @since 1.6 */ protected $helpKey = ''; /** * @var string The help screen base URL for the module. * @since 1.6 */ protected $helpURL; /** * Batch copy/move command. If set to false, * the batch copy/move command is not supported * * @var string */ protected $batch_copymove = 'position_id'; /** * Allowed batch commands * * @var array */ protected $batch_commands = [ 'assetgroup_id' => 'batchAccess', 'language_id' => 'batchLanguage', ]; /** * Constructor. * * @param array $config An optional associative array of configuration settings. */ public function __construct($config = []) { $config = array_merge( [ 'event_after_delete' => 'onExtensionAfterDelete', 'event_after_save' => 'onExtensionAfterSave', 'event_before_delete' => 'onExtensionBeforeDelete', 'event_before_save' => 'onExtensionBeforeSave', 'events_map' => [ 'save' => 'extension', 'delete' => 'extension', ], ], $config ); parent::__construct($config); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @return void * * @since 1.6 */ protected function populateState() { $app = Factory::getApplication(); // Load the User state. $pk = $app->getInput()->getInt('id'); if (!$pk) { if ($extensionId = (int) $app->getUserState('com_modules.add.module.extension_id')) { $this->setState('extension.id', $extensionId); } } $this->setState('module.id', $pk); // Load the parameters. $params = ComponentHelper::getParams('com_modules'); $this->setState('params', $params); } /** * Batch copy modules to a new position or current. * * @param integer $value The new value matching a module position. * @param array $pks An array of row IDs. * @param array $contexts An array of item contexts. * * @return boolean True if successful, false otherwise and internal error is set. * * @since 2.5 */ protected function batchCopy($value, $pks, $contexts) { // Set the variables $user = $this->getCurrentUser(); $table = $this->getTable(); $newIds = []; foreach ($pks as $pk) { if ($user->authorise('core.create', 'com_modules')) { $table->reset(); $table->load($pk); // Set the new position if ($value == 'noposition') { $position = ''; } elseif ($value == 'nochange') { $position = $table->position; } else { $position = $value; } $table->position = $position; // Copy of the Asset ID $oldAssetId = $table->asset_id; // Alter the title if necessary $data = $this->generateNewTitle(0, $table->title, $table->position); $table->title = $data['0']; // Reset the ID because we are making a copy $table->id = 0; // Unpublish the new module $table->published = 0; if (!$table->store()) { $this->setError($table->getError()); return false; } // Get the new item ID $newId = $table->get('id'); // Add the new ID to the array $newIds[$pk] = $newId; // Now we need to handle the module assignments $db = $this->getDatabase(); $query = $db->getQuery(true) ->select($db->quoteName('menuid')) ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = :moduleid') ->bind(':moduleid', $pk, ParameterType::INTEGER); $db->setQuery($query); $menus = $db->loadColumn(); // Insert the new records into the table foreach ($menus as $i => $menu) { $query->clear() ->insert($db->quoteName('#__modules_menu')) ->columns($db->quoteName(['moduleid', 'menuid'])) ->values(implode(', ', [':newid' . $i, ':menu' . $i])) ->bind(':newid' . $i, $newId, ParameterType::INTEGER) ->bind(':menu' . $i, $menu, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); } // Copy rules $query->clear() ->update($db->quoteName('#__assets', 't')) ->join('INNER', $db->quoteName('#__assets', 's') . ' ON ' . $db->quoteName('s.id') . ' = ' . $oldAssetId) ->set($db->quoteName('t.rules') . ' = ' . $db->quoteName('s.rules')) ->where($db->quoteName('t.id') . ' = ' . $table->asset_id); $db->setQuery($query)->execute(); } else { $this->setError(Text::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_CREATE')); return false; } } // Clean the cache $this->cleanCache(); return $newIds; } /** * Batch move modules to a new position or current. * * @param integer $value The new value matching a module position. * @param array $pks An array of row IDs. * @param array $contexts An array of item contexts. * * @return boolean True if successful, false otherwise and internal error is set. * * @since 2.5 */ protected function batchMove($value, $pks, $contexts) { // Set the variables $user = $this->getCurrentUser(); $table = $this->getTable(); foreach ($pks as $pk) { if ($user->authorise('core.edit', 'com_modules')) { $table->reset(); $table->load($pk); // Set the new position if ($value == 'noposition') { $position = ''; } elseif ($value == 'nochange') { $position = $table->position; } else { $position = $value; } $table->position = $position; if (!$table->store()) { $this->setError($table->getError()); return false; } } else { $this->setError(Text::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; } } // Clean the cache $this->cleanCache(); return true; } /** * Method to test whether a record can have its state edited. * * @param object $record A record object. * * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. * * @since 3.2 */ protected function canEditState($record) { // Check for existing module. if (!empty($record->id)) { return $this->getCurrentUser()->authorise('core.edit.state', 'com_modules.module.' . (int) $record->id); } // Default to component settings if module not known. return parent::canEditState($record); } /** * Method to delete rows. * * @param array &$pks An array of item ids. * * @return boolean Returns true on success, false on failure. * * @since 1.6 * @throws \Exception */ public function delete(&$pks) { $app = Factory::getApplication(); $pks = (array) $pks; $user = $this->getCurrentUser(); $table = $this->getTable(); $context = $this->option . '.' . $this->name; // Include the plugins for the on delete events. PluginHelper::importPlugin($this->events_map['delete']); // Iterate the items to delete each one. foreach ($pks as $pk) { if ($table->load($pk)) { // Access checks. if (!$user->authorise('core.delete', 'com_modules.module.' . (int) $pk) || $table->published != -2) { Factory::getApplication()->enqueueMessage(Text::_('JERROR_CORE_DELETE_NOT_PERMITTED'), 'error'); return; } // Trigger the before delete event. $result = $app->triggerEvent($this->event_before_delete, [$context, $table]); if (in_array(false, $result, true) || !$table->delete($pk)) { throw new \Exception($table->getError()); } else { // Delete the menu assignments $pk = (int) $pk; $db = $this->getDatabase(); $query = $db->getQuery(true) ->delete($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = :moduleid') ->bind(':moduleid', $pk, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); // Trigger the after delete event. $app->triggerEvent($this->event_after_delete, [$context, $table]); } // Clear module cache parent::cleanCache($table->module); } else { throw new \Exception($table->getError()); } } // Clear modules cache $this->cleanCache(); return true; } /** * Method to duplicate modules. * * @param array &$pks An array of primary key IDs. * * @return boolean Boolean true on success * * @since 1.6 * @throws \Exception */ public function duplicate(&$pks) { $user = $this->getCurrentUser(); $db = $this->getDatabase(); // Access checks. if (!$user->authorise('core.create', 'com_modules')) { throw new \Exception(Text::_('JERROR_CORE_CREATE_NOT_PERMITTED')); } $table = $this->getTable(); foreach ($pks as $pk) { if ($table->load($pk, true)) { // Reset the id to create a new record. $table->id = 0; // Alter the title. $m = null; if (preg_match('#\((\d+)\)$#', $table->title, $m)) { $table->title = preg_replace('#\(\d+\)$#', '(' . ($m[1] + 1) . ')', $table->title); } $data = $this->generateNewTitle(0, $table->title, $table->position); $table->title = $data[0]; // Unpublish duplicate module $table->published = 0; if (!$table->check() || !$table->store()) { throw new \Exception($table->getError()); } $pk = (int) $pk; $query = $db->getQuery(true) ->select($db->quoteName('menuid')) ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = :moduleid') ->bind(':moduleid', $pk, ParameterType::INTEGER); $db->setQuery($query); $rows = $db->loadColumn(); foreach ($rows as $menuid) { $tuples[] = (int) $table->id . ',' . (int) $menuid; } } else { throw new \Exception($table->getError()); } } if (!empty($tuples)) { // Module-Menu Mapping: Do it in one query $query = $db->getQuery(true) ->insert($db->quoteName('#__modules_menu')) ->columns($db->quoteName(['moduleid', 'menuid'])) ->values($tuples); $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { Factory::getApplication()->enqueueMessage($e->getMessage(), 'error'); return false; } } // Clear modules cache $this->cleanCache(); return true; } /** * Method to change the title. * * @param integer $categoryId The id of the category. Not used here. * @param string $title The title. * @param string $position The position. * * @return array Contains the modified title. * * @since 2.5 */ protected function generateNewTitle($categoryId, $title, $position) { // Alter the title & alias $table = $this->getTable(); while ($table->load(['position' => $position, 'title' => $title])) { $title = StringHelper::increment($title); } return [$title]; } /** * Method to get the client object * * @return void * * @since 1.6 */ public function &getClient() { return $this->_client; } /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form|bool A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { // The folder and element vars are passed when saving the form. if (empty($data)) { $item = $this->getItem(); $clientId = $item->client_id; $module = $item->module; $id = $item->id; } else { $clientId = ArrayHelper::getValue($data, 'client_id'); $module = ArrayHelper::getValue($data, 'module'); $id = ArrayHelper::getValue($data, 'id'); } // Add the default fields directory $baseFolder = $clientId ? JPATH_ADMINISTRATOR : JPATH_SITE; Form::addFieldPath($baseFolder . '/modules/' . $module . '/field'); // These variables are used to add data from the plugin XML files. $this->setState('item.client_id', $clientId); $this->setState('item.module', $module); // Get the form. if ($clientId == 1) { $form = $this->loadForm('com_modules.module.admin', 'moduleadmin', ['control' => 'jform', 'load_data' => $loadData], true); // Display language field to filter admin custom menus per language if (!ModuleHelper::isAdminMultilang()) { $form->setFieldAttribute('language', 'type', 'hidden'); } } else { $form = $this->loadForm('com_modules.module', 'module', ['control' => 'jform', 'load_data' => $loadData], true); } if (empty($form)) { return false; } $user = $this->getCurrentUser(); /** * Check for existing module * Modify the form based on Edit State access controls. */ if ( $id != 0 && (!$user->authorise('core.edit.state', 'com_modules.module.' . (int) $id)) || ($id == 0 && !$user->authorise('core.edit.state', 'com_modules')) ) { // Disable fields for display. $form->setFieldAttribute('ordering', 'disabled', 'true'); $form->setFieldAttribute('published', 'disabled', 'true'); $form->setFieldAttribute('publish_up', 'disabled', 'true'); $form->setFieldAttribute('publish_down', 'disabled', 'true'); // Disable fields while saving. // The controller has already verified this is a record you can edit. $form->setFieldAttribute('ordering', 'filter', 'unset'); $form->setFieldAttribute('published', 'filter', 'unset'); $form->setFieldAttribute('publish_up', 'filter', 'unset'); $form->setFieldAttribute('publish_down', 'filter', 'unset'); } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 */ protected function loadFormData() { $app = Factory::getApplication(); $input = $app->getInput(); // Check the session for previously entered form data. $data = $app->getUserState('com_modules.edit.module.data', []); if (empty($data)) { $data = $this->getItem(); // Pre-select some filters (Status, Module Position, Language, Access Level) in edit form if those have been selected in Module Manager if (!$data->id) { $clientId = $input->getInt('client_id', 0); $filters = (array) $app->getUserState('com_modules.modules.' . $clientId . '.filter'); $data->set('published', $input->getInt('published', ((isset($filters['state']) && $filters['state'] !== '') ? $filters['state'] : null))); $data->set('position', $input->getInt('position', (!empty($filters['position']) ? $filters['position'] : null))); $data->set('language', $input->getString('language', (!empty($filters['language']) ? $filters['language'] : null))); $data->set('access', $input->getInt('access', (!empty($filters['access']) ? $filters['access'] : $app->get('access')))); } // Avoid to delete params of a second module opened in a new browser tab while new one is not saved yet. if (empty($data->params)) { // This allows us to inject parameter settings into a new module. $params = $app->getUserState('com_modules.add.module.params'); if (is_array($params)) { $data->set('params', $params); } } } $this->preprocessData('com_modules.module', $data); return $data; } /** * Method to get a single record. * * @param integer $pk The id of the primary key. * * @return mixed Object on success, false on failure. * * @since 1.6 */ public function getItem($pk = null) { $pk = (!empty($pk)) ? (int) $pk : (int) $this->getState('module.id'); $db = $this->getDatabase(); if (!isset($this->_cache[$pk])) { // Get a row instance. $table = $this->getTable(); // Attempt to load the row. $return = $table->load($pk); // Check for a table object error. if ($return === false && $error = $table->getError()) { $this->setError($error); return false; } // Check if we are creating a new extension. if (empty($pk)) { if ($extensionId = (int) $this->getState('extension.id')) { $query = $db->getQuery(true) ->select($db->quoteName(['element', 'client_id'])) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('extension_id') . ' = :extensionid') ->where($db->quoteName('type') . ' = ' . $db->quote('module')) ->bind(':extensionid', $extensionId, ParameterType::INTEGER); $db->setQuery($query); try { $extension = $db->loadObject(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } if (empty($extension)) { $this->setError('COM_MODULES_ERROR_CANNOT_FIND_MODULE'); return false; } // Extension found, prime some module values. $table->module = $extension->element; $table->client_id = $extension->client_id; } else { Factory::getApplication()->redirect(Route::_('index.php?option=com_modules&view=modules', false)); return false; } } // Convert to the \Joomla\CMS\Object\CMSObject before adding other data. $properties = $table->getProperties(1); $this->_cache[$pk] = ArrayHelper::toObject($properties, CMSObject::class); // Convert the params field to an array. $registry = new Registry($table->params); $this->_cache[$pk]->params = $registry->toArray(); // Determine the page assignment mode. $query = $db->getQuery(true) ->select($db->quoteName('menuid')) ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = :moduleid') ->bind(':moduleid', $pk, ParameterType::INTEGER); $db->setQuery($query); $assigned = $db->loadColumn(); if (empty($pk)) { // If this is a new module, assign to all pages. $assignment = 0; } elseif (empty($assigned)) { // For an existing module it is assigned to none. $assignment = '-'; } else { if ($assigned[0] > 0) { $assignment = 1; } elseif ($assigned[0] < 0) { $assignment = -1; } else { $assignment = 0; } } $this->_cache[$pk]->assigned = $assigned; $this->_cache[$pk]->assignment = $assignment; // Get the module XML. $client = ApplicationHelper::getClientInfo($table->client_id); $path = Path::clean($client->path . '/modules/' . $table->module . '/' . $table->module . '.xml'); if (file_exists($path)) { $this->_cache[$pk]->xml = simplexml_load_file($path); } else { $this->_cache[$pk]->xml = null; } } return $this->_cache[$pk]; } /** * Get the necessary data to load an item help screen. * * @return object An object with key, url, and local properties for loading the item help screen. * * @since 1.6 */ public function getHelp() { return (object) ['key' => $this->helpKey, 'url' => $this->helpURL]; } /** * Returns a reference to the a Table object, always creating it. * * @param string $type The table type to instantiate * @param string $prefix A prefix for the table class name. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A database object * * @since 1.6 */ public function getTable($type = 'Module', $prefix = 'JTable', $config = []) { return Table::getInstance($type, $prefix, $config); } /** * Prepare and sanitise the table prior to saving. * * @param Table $table The database object * * @return void * * @since 1.6 */ protected function prepareTable($table) { $table->title = htmlspecialchars_decode($table->title, ENT_QUOTES); $table->position = trim($table->position); } /** * Method to preprocess the form * * @param Form $form A form object. * @param mixed $data The data expected for the form. * @param string $group The name of the plugin group to import (defaults to "content"). * * @return void * * @since 1.6 * @throws \Exception if there is an error loading the form. */ protected function preprocessForm(Form $form, $data, $group = 'content') { $lang = Factory::getLanguage(); $clientId = $this->getState('item.client_id'); $module = $this->getState('item.module'); $client = ApplicationHelper::getClientInfo($clientId); $formFile = Path::clean($client->path . '/modules/' . $module . '/' . $module . '.xml'); // Load the core and/or local language file(s). $lang->load($module, $client->path) || $lang->load($module, $client->path . '/modules/' . $module); if (file_exists($formFile)) { // Get the module form. if (!$form->loadFile($formFile, false, '//config')) { throw new \Exception(Text::_('JERROR_LOADFILE_FAILED')); } // Attempt to load the xml file. if (!$xml = simplexml_load_file($formFile)) { throw new \Exception(Text::_('JERROR_LOADFILE_FAILED')); } // Get the help data from the XML file if present. $help = $xml->xpath('/extension/help'); if (!empty($help)) { $helpKey = trim((string) $help[0]['key']); $helpURL = trim((string) $help[0]['url']); $this->helpKey = $helpKey ?: $this->helpKey; $this->helpURL = $helpURL ?: $this->helpURL; } } // Load the default advanced params Form::addFormPath(JPATH_ADMINISTRATOR . '/components/com_modules/models/forms'); $form->loadFile('advanced', false); // Load chrome specific params for global files $chromePath = JPATH_SITE . '/layouts/chromes'; $chromeFormFiles = Folder::files($chromePath, '.*\.xml'); if ($chromeFormFiles) { Form::addFormPath($chromePath); foreach ($chromeFormFiles as $formFile) { $form->loadFile(basename($formFile, '.xml'), false); } } // Load chrome specific params for template files $templates = ModulesHelper::getTemplates($clientId); foreach ($templates as $template) { $chromePath = $client->path . '/templates/' . $template->element . '/html/layouts/chromes'; // Skip if there is no chrome folder in that template. if (!is_dir($chromePath)) { continue; } $chromeFormFiles = Folder::files($chromePath, '.*\.xml'); if ($chromeFormFiles) { Form::addFormPath($chromePath); foreach ($chromeFormFiles as $formFile) { $form->loadFile(basename($formFile, '.xml'), false); } } } // Trigger the default form events. parent::preprocessForm($form, $data, $group); } /** * Loads ContentHelper for filters before validating data. * * @param object $form The form to validate against. * @param array $data The data to validate. * @param string $group The name of the group(defaults to null). * * @return mixed Array of filtered data if valid, false otherwise. * * @since 1.1 */ public function validate($form, $data, $group = null) { if (!$this->getCurrentUser()->authorise('core.admin', 'com_modules')) { if (isset($data['rules'])) { unset($data['rules']); } } return parent::validate($form, $data, $group); } /** * Method to save the form data. * * @param array $data The form data. * * @return boolean True on success. * * @since 1.6 */ public function save($data) { $input = Factory::getApplication()->getInput(); $table = $this->getTable(); $pk = (!empty($data['id'])) ? $data['id'] : (int) $this->getState('module.id'); $isNew = true; $context = $this->option . '.' . $this->name; // Include the plugins for the save event. PluginHelper::importPlugin($this->events_map['save']); // Load the row if saving an existing record. if ($pk > 0) { $table->load($pk); $isNew = false; } // Alter the title and published state for Save as Copy if ($input->get('task') == 'save2copy') { $orig_table = clone $this->getTable(); $orig_table->load((int) $input->getInt('id')); $data['published'] = 0; if ($data['title'] == $orig_table->title) { $data['title'] = StringHelper::increment($data['title']); } } // Bind the data. if (!$table->bind($data)) { $this->setError($table->getError()); return false; } // Prepare the row for saving $this->prepareTable($table); // Check the data. if (!$table->check()) { $this->setError($table->getError()); return false; } // Trigger the before save event. $result = Factory::getApplication()->triggerEvent($this->event_before_save, [$context, &$table, $isNew]); if (in_array(false, $result, true)) { $this->setError($table->getError()); return false; } // Store the data. if (!$table->store()) { $this->setError($table->getError()); return false; } // Process the menu link mappings. $assignment = $data['assignment'] ?? 0; $table->id = (int) $table->id; // Delete old module to menu item associations $db = $this->getDatabase(); $query = $db->getQuery(true) ->delete($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = :moduleid') ->bind(':moduleid', $table->id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } // If the assignment is numeric, then something is selected (otherwise it's none). if (is_numeric($assignment)) { // Variable is numeric, but could be a string. $assignment = (int) $assignment; // Logic check: if no module excluded then convert to display on all. if ($assignment == -1 && empty($data['assigned'])) { $assignment = 0; } // Check needed to stop a module being assigned to `All` // and other menu items resulting in a module being displayed twice. if ($assignment === 0) { // Assign new module to `all` menu item associations. $query->clear() ->insert($db->quoteName('#__modules_menu')) ->columns($db->quoteName(['moduleid', 'menuid'])) ->values(implode(', ', [':moduleid', 0])) ->bind(':moduleid', $table->id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } } elseif (!empty($data['assigned'])) { // Get the sign of the number. $sign = $assignment < 0 ? -1 : 1; $query->clear() ->insert($db->quoteName('#__modules_menu')) ->columns($db->quoteName(['moduleid', 'menuid'])); foreach ($data['assigned'] as &$pk) { $query->values((int) $table->id . ',' . (int) $pk * $sign); } $db->setQuery($query); try { $db->execute(); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } } } // Trigger the after save event. Factory::getApplication()->triggerEvent($this->event_after_save, [$context, &$table, $isNew]); // Compute the extension id of this module in case the controller wants it. $query->clear() ->select($db->quoteName('extension_id')) ->from($db->quoteName('#__extensions', 'e')) ->join( 'LEFT', $db->quoteName('#__modules', 'm') . ' ON ' . $db->quoteName('e.client_id') . ' = ' . (int) $table->client_id . ' AND ' . $db->quoteName('e.element') . ' = ' . $db->quoteName('m.module') ) ->where($db->quoteName('m.id') . ' = :id') ->bind(':id', $table->id, ParameterType::INTEGER); $db->setQuery($query); try { $extensionId = $db->loadResult(); } catch (\RuntimeException $e) { Factory::getApplication()->enqueueMessage($e->getMessage(), 'error'); return false; } $this->setState('module.extension_id', $extensionId); $this->setState('module.id', $table->id); // Clear modules cache $this->cleanCache(); // Clean module cache parent::cleanCache($table->module); return true; } /** * A protected method to get a set of ordering conditions. * * @param object $table A record object. * * @return array An array of conditions to add to ordering queries. * * @since 1.6 */ protected function getReorderConditions($table) { $db = $this->getDatabase(); return [ $db->quoteName('client_id') . ' = ' . (int) $table->client_id, $db->quoteName('position') . ' = ' . $db->quote($table->position), ]; } /** * Custom clean cache method for different clients * * @param string $group The name of the plugin group to import (defaults to null). * @param integer $clientId No longer used, will be removed without replacement * @deprecated 4.3 will be removed in 6.0 * * @return void * * @since 1.6 */ protected function cleanCache($group = null, $clientId = 0) { parent::cleanCache('com_modules'); } } PKBA#]/�1�2 2 3components/com_modules/src/Model/PositionsModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Model; use Joomla\CMS\Application\ApplicationHelper; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\MVC\Model\ListModel; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules Component Positions Model * * @since 1.6 */ class PositionsModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @see \JController * @since 1.6 */ public function __construct($config = []) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'value', 'templates', ]; } parent::__construct($config); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'ordering', $direction = 'asc') { // Load the filter state. $search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search'); $this->setState('filter.search', $search); $state = $this->getUserStateFromRequest($this->context . '.filter.state', 'filter_state', '', 'string'); $this->setState('filter.state', $state); $template = $this->getUserStateFromRequest($this->context . '.filter.template', 'filter_template', '', 'string'); $this->setState('filter.template', $template); $type = $this->getUserStateFromRequest($this->context . '.filter.type', 'filter_type', '', 'string'); $this->setState('filter.type', $type); // Special case for the client id. $clientId = (int) $this->getUserStateFromRequest($this->context . '.client_id', 'client_id', 0, 'int'); $clientId = (!in_array((int) $clientId, [0, 1])) ? 0 : (int) $clientId; $this->setState('client_id', $clientId); // Load the parameters. $params = ComponentHelper::getParams('com_modules'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get an array of data items. * * @return mixed An array of data items on success, false on failure. * * @since 1.6 */ public function getItems() { if (!isset($this->items)) { $lang = Factory::getLanguage(); $search = $this->getState('filter.search'); $state = $this->getState('filter.state'); $clientId = $this->getState('client_id'); $filter_template = $this->getState('filter.template'); $type = $this->getState('filter.type'); $ordering = $this->getState('list.ordering'); $direction = $this->getState('list.direction'); $limitstart = $this->getState('list.start'); $limit = $this->getState('list.limit'); $client = ApplicationHelper::getClientInfo($clientId); if ($type != 'template') { $clientId = (int) $clientId; // Get the database object and a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true) ->select('DISTINCT ' . $db->quoteName('position', 'value')) ->from($db->quoteName('#__modules')) ->where($db->quoteName('client_id') . ' = :clientid') ->bind(':clientid', $clientId, ParameterType::INTEGER); if ($search) { $search = '%' . str_replace(' ', '%', trim($search), true) . '%'; $query->where($db->quoteName('position') . ' LIKE :position') ->bind(':position', $search); } $db->setQuery($query); try { $positions = $db->loadObjectList('value'); } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } foreach ($positions as $value => $position) { $positions[$value] = []; } } else { $positions = []; } // Load the positions from the installed templates. foreach (ModulesHelper::getTemplates($clientId) as $template) { $path = Path::clean($client->path . '/templates/' . $template->element . '/templateDetails.xml'); if (file_exists($path)) { $xml = simplexml_load_file($path); if (isset($xml->positions[0])) { $lang->load('tpl_' . $template->element . '.sys', $client->path) || $lang->load('tpl_' . $template->element . '.sys', $client->path . '/templates/' . $template->element); foreach ($xml->positions[0] as $position) { $value = (string) $position['value']; $label = (string) $position; if (!$value) { $value = $label; $label = preg_replace('/[^a-zA-Z0-9_\-]/', '_', 'TPL_' . $template->element . '_POSITION_' . $value); $altlabel = preg_replace('/[^a-zA-Z0-9_\-]/', '_', 'COM_MODULES_POSITION_' . $value); if (!$lang->hasKey($label) && $lang->hasKey($altlabel)) { $label = $altlabel; } } if ($type == 'user' || ($state != '' && $state != $template->enabled)) { unset($positions[$value]); } elseif (preg_match(chr(1) . $search . chr(1) . 'i', $value) && ($filter_template == '' || $filter_template == $template->element)) { if (!isset($positions[$value])) { $positions[$value] = []; } $positions[$value][$template->name] = $label; } } } } } $this->total = count($positions); if ($limitstart >= $this->total) { $limitstart = $limitstart < $limit ? 0 : $limitstart - $limit; $this->setState('list.start', $limitstart); } if ($ordering == 'value') { if ($direction == 'asc') { ksort($positions); } else { krsort($positions); } } else { if ($direction == 'asc') { asort($positions); } else { arsort($positions); } } $this->items = array_slice($positions, $limitstart, $limit ?: null); } return $this->items; } /** * Method to get the total number of items. * * @return integer The total number of items. * * @since 1.6 */ public function getTotal() { if (!isset($this->total)) { $this->getItems(); } return $this->total; } } PKBA#]k/��0components/com_modules/src/Model/SelectModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Model; use Joomla\CMS\Application\ApplicationHelper; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ListModel; use Joomla\Database\ParameterType; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Module model. * * @since 1.6 */ class SelectModel extends ListModel { /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = null, $direction = null) { $app = Factory::getApplication(); // Load the filter state. $clientId = $app->getUserStateFromRequest('com_modules.modules.client_id', 'client_id', 0); $this->setState('client_id', (int) $clientId); // Load the parameters. $params = ComponentHelper::getParams('com_modules'); $this->setState('params', $params); // Manually set limits to get all modules. $this->setState('list.limit', 0); $this->setState('list.start', 0); $this->setState('list.ordering', 'a.name'); $this->setState('list.direction', 'ASC'); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('client_id'); return parent::getStoreId($id); } /** * Build an SQL query to load the list data. * * @return \Joomla\Database\DatabaseQuery */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields from the table. $query->select( $this->getState( 'list.select', 'a.extension_id, a.name, a.element AS module' ) ); $query->from($db->quoteName('#__extensions', 'a')); // Filter by module $query->where($db->quoteName('a.type') . ' = ' . $db->quote('module')); // Filter by client. $clientId = (int) $this->getState('client_id'); $query->where($db->quoteName('a.client_id') . ' = :clientid') ->bind(':clientid', $clientId, ParameterType::INTEGER); // Filter by enabled $query->where($db->quoteName('a.enabled') . ' = 1'); // Add the list ordering clause. $query->order($db->escape($this->getState('list.ordering', 'a.ordering')) . ' ' . $db->escape($this->getState('list.direction', 'ASC'))); return $query; } /** * Method to get a list of items. * * @return mixed An array of objects on success, false on failure. */ public function getItems() { // Get the list of items from the database. $items = parent::getItems(); $client = ApplicationHelper::getClientInfo($this->getState('client_id', 0)); $lang = Factory::getLanguage(); // Loop through the results to add the XML metadata, // and load language support. foreach ($items as &$item) { $path = Path::clean($client->path . '/modules/' . $item->module . '/' . $item->module . '.xml'); if (file_exists($path)) { $item->xml = simplexml_load_file($path); } else { $item->xml = null; } // 1.5 Format; Core files or language packs then // 1.6 3PD Extension Support $lang->load($item->module . '.sys', $client->path) || $lang->load($item->module . '.sys', $client->path . '/modules/' . $item->module); $item->name = Text::_($item->name); if (isset($item->xml) && $text = trim($item->xml->description)) { $item->desc = Text::_($text); } else { $item->desc = Text::_('COM_MODULES_NODESCRIPTION'); } } $items = ArrayHelper::sortObjects($items, 'name', 1, true, true); // @todo: Use the cached XML from the extensions table? return $items; } } PKBA#]s>'��D�D1components/com_modules/src/Model/ModulesModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ListModel; use Joomla\Database\DatabaseQuery; use Joomla\Database\ParameterType; use Joomla\String\StringHelper; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules Component Module Model * * @since 1.5 */ class ModulesModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @see \JController * @since 1.6 */ public function __construct($config = []) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'title', 'a.title', 'checked_out', 'a.checked_out', 'checked_out_time', 'a.checked_out_time', 'published', 'a.published', 'state', 'access', 'a.access', 'ag.title', 'access_level', 'ordering', 'a.ordering', 'module', 'a.module', 'language', 'a.language', 'l.title', 'language_title', 'publish_up', 'a.publish_up', 'publish_down', 'a.publish_down', 'client_id', 'a.client_id', 'position', 'a.position', 'pages', 'name', 'e.name', 'menuitem', ]; } parent::__construct($config); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.position', $direction = 'asc') { $app = Factory::getApplication(); $layout = $app->getInput()->get('layout', '', 'cmd'); // Adjust the context to support modal layouts. if ($layout) { $this->context .= '.' . $layout; } // Make context client aware $this->context .= '.' . $app->getInput()->get->getInt('client_id', 0); // Load the filter state. $this->setState('filter.search', $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search', '', 'string')); $this->setState('filter.position', $this->getUserStateFromRequest($this->context . '.filter.position', 'filter_position', '', 'string')); $this->setState('filter.module', $this->getUserStateFromRequest($this->context . '.filter.module', 'filter_module', '', 'string')); $this->setState('filter.menuitem', $this->getUserStateFromRequest($this->context . '.filter.menuitem', 'filter_menuitem', '', 'cmd')); $this->setState('filter.access', $this->getUserStateFromRequest($this->context . '.filter.access', 'filter_access', '', 'cmd')); // If in modal layout on the frontend, state and language are always forced. if ($app->isClient('site') && $layout === 'modal') { $this->setState('filter.language', 'current'); $this->setState('filter.state', 1); } else { // If in backend (modal or not) we get the same fields from the user request. $this->setState('filter.language', $this->getUserStateFromRequest($this->context . '.filter.language', 'filter_language', '', 'string')); $this->setState('filter.state', $this->getUserStateFromRequest($this->context . '.filter.state', 'filter_state', '', 'string')); } // Special case for the client id. if ($app->isClient('site') || $layout === 'modal') { $this->setState('client_id', 0); $clientId = 0; } else { $clientId = (int) $this->getUserStateFromRequest($this->context . '.client_id', 'client_id', 0, 'int'); $clientId = (!in_array($clientId, [0, 1])) ? 0 : $clientId; $this->setState('client_id', $clientId); } // Use a different filter file when client is administrator if ($clientId == 1) { $this->filterFormName = 'filter_modulesadmin'; } // Load the parameters. $params = ComponentHelper::getParams('com_modules'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('client_id'); $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.state'); $id .= ':' . $this->getState('filter.position'); $id .= ':' . $this->getState('filter.module'); $id .= ':' . $this->getState('filter.menuitem'); $id .= ':' . $this->getState('filter.access'); $id .= ':' . $this->getState('filter.language'); return parent::getStoreId($id); } /** * Returns an object list * * @param DatabaseQuery $query The query * @param int $limitstart Offset * @param int $limit The number of records * * @return array */ protected function _getList($query, $limitstart = 0, $limit = 0) { $listOrder = $this->getState('list.ordering', 'a.position'); $listDirn = $this->getState('list.direction', 'asc'); $db = $this->getDatabase(); // If ordering by fields that need translate we need to sort the array of objects after translating them. if (in_array($listOrder, ['pages', 'name'])) { // Fetch the results. $db->setQuery($query); $result = $db->loadObjectList(); // Translate the results. $this->translate($result); // Sort the array of translated objects. $result = ArrayHelper::sortObjects($result, $listOrder, strtolower($listDirn) == 'desc' ? -1 : 1, true, true); // Process pagination. $total = count($result); $this->cache[$this->getStoreId('getTotal')] = $total; if ($total < $limitstart) { $limitstart = 0; $this->setState('list.start', 0); } return array_slice($result, $limitstart, $limit ?: null); } // If ordering by fields that doesn't need translate just order the query. if ($listOrder === 'a.ordering') { $query->order($db->quoteName('a.position') . ' ASC') ->order($db->quoteName($listOrder) . ' ' . $db->escape($listDirn)); } elseif ($listOrder === 'a.position') { $query->order($db->quoteName($listOrder) . ' ' . $db->escape($listDirn)) ->order($db->quoteName('a.ordering') . ' ASC'); } else { $query->order($db->quoteName($listOrder) . ' ' . $db->escape($listDirn)); } // Process pagination. $result = parent::_getList($query, $limitstart, $limit); // Translate the results. $this->translate($result); return $result; } /** * Translate a list of objects * * @param array &$items The array of objects * * @return void */ protected function translate(&$items) { $lang = Factory::getLanguage(); $clientPath = $this->getState('client_id') ? JPATH_ADMINISTRATOR : JPATH_SITE; foreach ($items as $item) { $extension = $item->module; $source = $clientPath . "/modules/$extension"; $lang->load("$extension.sys", $clientPath) || $lang->load("$extension.sys", $source); $item->name = Text::_($item->name); if (is_null($item->pages)) { $item->pages = Text::_('JNONE'); } elseif ($item->pages < 0) { $item->pages = Text::_('COM_MODULES_ASSIGNED_VARIES_EXCEPT'); } elseif ($item->pages > 0) { $item->pages = Text::_('COM_MODULES_ASSIGNED_VARIES_ONLY'); } else { $item->pages = Text::_('JALL'); } } } /** * Build an SQL query to load the list data. * * @return DatabaseQuery */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); // Select the required fields. $query->select( $this->getState( 'list.select', 'a.id, a.title, a.note, a.position, a.module, a.language,' . 'a.checked_out, a.checked_out_time, a.published AS published, e.enabled AS enabled, a.access, a.ordering, a.publish_up, a.publish_down' ) ); // From modules table. $query->from($db->quoteName('#__modules', 'a')); // Join over the language $query->select($db->quoteName('l.title', 'language_title')) ->select($db->quoteName('l.image', 'language_image')) ->join('LEFT', $db->quoteName('#__languages', 'l') . ' ON ' . $db->quoteName('l.lang_code') . ' = ' . $db->quoteName('a.language')); // Join over the users for the checked out user. $query->select($db->quoteName('uc.name', 'editor')) ->join('LEFT', $db->quoteName('#__users', 'uc') . ' ON ' . $db->quoteName('uc.id') . ' = ' . $db->quoteName('a.checked_out')); // Join over the asset groups. $query->select($db->quoteName('ag.title', 'access_level')) ->join('LEFT', $db->quoteName('#__viewlevels', 'ag') . ' ON ' . $db->quoteName('ag.id') . ' = ' . $db->quoteName('a.access')); // Join over the module menus $query->select('MIN(mm.menuid) AS pages') ->join('LEFT', $db->quoteName('#__modules_menu', 'mm') . ' ON ' . $db->quoteName('mm.moduleid') . ' = ' . $db->quoteName('a.id')); // Join over the extensions $query->select($db->quoteName('e.name', 'name')) ->join('LEFT', $db->quoteName('#__extensions', 'e') . ' ON ' . $db->quoteName('e.element') . ' = ' . $db->quoteName('a.module')); // Group (careful with PostgreSQL) $query->group( 'a.id, a.title, a.note, a.position, a.module, a.language, a.checked_out, ' . 'a.checked_out_time, a.published, a.access, a.ordering, l.title, l.image, uc.name, ag.title, e.name, ' . 'l.lang_code, uc.id, ag.id, mm.moduleid, e.element, a.publish_up, a.publish_down, e.enabled' ); // Filter by client. $clientId = (int) $this->getState('client_id'); $query->where($db->quoteName('a.client_id') . ' = :aclientid') ->where($db->quoteName('e.client_id') . ' = :eclientid') ->bind(':aclientid', $clientId, ParameterType::INTEGER) ->bind(':eclientid', $clientId, ParameterType::INTEGER); // Filter by current user access level. $user = $this->getCurrentUser(); // Get the current user for authorisation checks if ($user->authorise('core.admin') !== true) { $groups = $user->getAuthorisedViewLevels(); $query->whereIn($db->quoteName('a.access'), $groups); } // Filter by access level. if ($access = $this->getState('filter.access')) { $access = (int) $access; $query->where($db->quoteName('a.access') . ' = :access') ->bind(':access', $access, ParameterType::INTEGER); } // Filter by published state. $state = $this->getState('filter.state'); if (is_numeric($state)) { $state = (int) $state; $query->where($db->quoteName('a.published') . ' = :state') ->bind(':state', $state, ParameterType::INTEGER); } elseif ($state === '') { $query->whereIn($db->quoteName('a.published'), [0, 1]); } // Filter by position. if ($position = $this->getState('filter.position')) { $position = ($position === 'none') ? '' : $position; $query->where($db->quoteName('a.position') . ' = :position') ->bind(':position', $position); } // Filter by module. if ($module = $this->getState('filter.module')) { $query->where($db->quoteName('a.module') . ' = :module') ->bind(':module', $module); } // Filter by menuitem id (only for site client). if ((int) $clientId === 0 && $menuItemId = $this->getState('filter.menuitem')) { // If user selected the modules not assigned to any page (menu item). if ((int) $menuItemId === -1) { $query->having('MIN(' . $db->quoteName('mm.menuid') . ') IS NULL'); } else { // If user selected the modules assigned to some particular page (menu item). // Modules in "All" pages. $subQuery1 = $db->getQuery(true); $subQuery1->select('MIN(' . $db->quoteName('menuid') . ')') ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('moduleid') . ' = ' . $db->quoteName('a.id')); // Modules in "Selected" pages that have the chosen menu item id. $menuItemId = (int) $menuItemId; $minusMenuItemId = $menuItemId * -1; $subQuery2 = $db->getQuery(true); $subQuery2->select($db->quoteName('moduleid')) ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('menuid') . ' = :menuitemid2'); // Modules in "All except selected" pages that doesn't have the chosen menu item id. $subQuery3 = $db->getQuery(true); $subQuery3->select($db->quoteName('moduleid')) ->from($db->quoteName('#__modules_menu')) ->where($db->quoteName('menuid') . ' = :menuitemid3'); // Filter by modules assigned to the selected menu item. $query->where('( (' . $subQuery1 . ') = 0 OR ((' . $subQuery1 . ') > 0 AND ' . $db->quoteName('a.id') . ' IN (' . $subQuery2 . ')) OR ((' . $subQuery1 . ') < 0 AND ' . $db->quoteName('a.id') . ' NOT IN (' . $subQuery3 . ')) )'); $query->bind(':menuitemid2', $menuItemId, ParameterType::INTEGER); $query->bind(':menuitemid3', $minusMenuItemId, ParameterType::INTEGER); } } // Filter by search in title or note or id:. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $ids = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :id') ->bind(':id', $ids, ParameterType::INTEGER); } else { $search = '%' . StringHelper::strtolower($search) . '%'; $query->extendWhere( 'AND', [ 'LOWER(' . $db->quoteName('a.title') . ') LIKE :title', 'LOWER(' . $db->quoteName('a.note') . ') LIKE :note', ], 'OR' ) ->bind(':title', $search) ->bind(':note', $search); } } // Filter on the language. if ($language = $this->getState('filter.language')) { if ($language === 'current') { $language = [Factory::getLanguage()->getTag(), '*']; $query->whereIn($db->quoteName('a.language'), $language, ParameterType::STRING); } else { $query->where($db->quoteName('a.language') . ' = :language') ->bind(':language', $language); } } return $query; } /** * Manipulate the query to be used to evaluate if this is an Empty State to provide specific conditions for this extension. * * @return DatabaseQuery * * @since 4.0.0 */ protected function getEmptyStateQuery() { $query = parent::getEmptyStateQuery(); $clientId = (int) $this->getState('client_id'); $query->where($this->getDatabase()->quoteName('a.client_id') . ' = :client_id') ->bind(':client_id', $clientId, ParameterType::INTEGER); return $query; } } PKBA#]��y�M'M'3components/com_modules/src/Helper/ModulesHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\Database\ParameterType; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules component helper. * * @since 1.6 */ abstract class ModulesHelper { /** * Get a list of filter options for the state of a module. * * @return array An array of \JHtmlOption elements. */ public static function getStateOptions() { // Build the filter options. $options = []; $options[] = HTMLHelper::_('select.option', '1', Text::_('JPUBLISHED')); $options[] = HTMLHelper::_('select.option', '0', Text::_('JUNPUBLISHED')); $options[] = HTMLHelper::_('select.option', '-2', Text::_('JTRASHED')); $options[] = HTMLHelper::_('select.option', '*', Text::_('JALL')); return $options; } /** * Get a list of filter options for the application clients. * * @return array An array of \JHtmlOption elements. */ public static function getClientOptions() { // Build the filter options. $options = []; $options[] = HTMLHelper::_('select.option', '0', Text::_('JSITE')); $options[] = HTMLHelper::_('select.option', '1', Text::_('JADMINISTRATOR')); return $options; } /** * Get a list of modules positions * * @param integer $clientId Client ID * @param boolean $editPositions Allow to edit the positions * * @return array A list of positions */ public static function getPositions($clientId, $editPositions = false) { $db = Factory::getDbo(); $clientId = (int) $clientId; $query = $db->getQuery(true) ->select('DISTINCT ' . $db->quoteName('position')) ->from($db->quoteName('#__modules')) ->where($db->quoteName('client_id') . ' = :clientid') ->order($db->quoteName('position')) ->bind(':clientid', $clientId, ParameterType::INTEGER); $db->setQuery($query); try { $positions = $db->loadColumn(); $positions = is_array($positions) ? $positions : []; } catch (\RuntimeException $e) { Factory::getApplication()->enqueueMessage($e->getMessage(), 'error'); return; } // Build the list $options = []; foreach ($positions as $position) { if (!$position && !$editPositions) { $options[] = HTMLHelper::_('select.option', 'none', Text::_('COM_MODULES_NONE')); } elseif (!$position) { $options[] = HTMLHelper::_('select.option', '', Text::_('COM_MODULES_NONE')); } else { $options[] = HTMLHelper::_('select.option', $position, $position); } } return $options; } /** * Return a list of templates * * @param integer $clientId Client ID * @param string $state State * @param string $template Template name * * @return array List of templates */ public static function getTemplates($clientId = 0, $state = '', $template = '') { $db = Factory::getDbo(); $clientId = (int) $clientId; // Get the database object and a new query object. $query = $db->getQuery(true); // Build the query. $query->select($db->quoteName(['element', 'name', 'enabled'])) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('client_id') . ' = :clientid') ->where($db->quoteName('type') . ' = ' . $db->quote('template')); if ($state != '') { $query->where($db->quoteName('enabled') . ' = :state') ->bind(':state', $state); } if ($template != '') { $query->where($db->quoteName('element') . ' = :element') ->bind(':element', $template); } $query->bind(':clientid', $clientId, ParameterType::INTEGER); // Set the query and load the templates. $db->setQuery($query); $templates = $db->loadObjectList('element'); return $templates; } /** * Get a list of the unique modules installed in the client application. * * @param int $clientId The client id. * * @return array Array of unique modules */ public static function getModules($clientId) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('element AS value, name AS text') ->from('#__extensions as e') ->where('e.client_id = ' . (int) $clientId) ->where('type = ' . $db->quote('module')) ->join('LEFT', '#__modules as m ON m.module=e.element AND m.client_id=e.client_id') ->where('m.module IS NOT NULL') ->group('element,name'); $db->setQuery($query); $modules = $db->loadObjectList(); $lang = Factory::getLanguage(); foreach ($modules as $i => $module) { $extension = $module->value; $path = $clientId ? JPATH_ADMINISTRATOR : JPATH_SITE; $source = $path . "/modules/$extension"; $lang->load("$extension.sys", $path) || $lang->load("$extension.sys", $source); $modules[$i]->text = Text::_($module->text); } $modules = ArrayHelper::sortObjects($modules, 'text', 1, true, true); return $modules; } /** * Get a list of the assignment options for modules to menus. * * @param int $clientId The client id. * * @return array */ public static function getAssignmentOptions($clientId) { $options = []; $options[] = HTMLHelper::_('select.option', '0', 'COM_MODULES_OPTION_MENU_ALL'); $options[] = HTMLHelper::_('select.option', '-', 'COM_MODULES_OPTION_MENU_NONE'); if ($clientId == 0) { $options[] = HTMLHelper::_('select.option', '1', 'COM_MODULES_OPTION_MENU_INCLUDE'); $options[] = HTMLHelper::_('select.option', '-1', 'COM_MODULES_OPTION_MENU_EXCLUDE'); } return $options; } /** * Return a translated module position name * * @param integer $clientId Application client id 0: site | 1: admin * @param string $template Template name * @param string $position Position name * * @return string Return a translated position name * * @since 3.0 */ public static function getTranslatedModulePosition($clientId, $template, $position) { // Template translation $lang = Factory::getLanguage(); $path = $clientId ? JPATH_ADMINISTRATOR : JPATH_SITE; $loaded = $lang->getPaths('tpl_' . $template . '.sys'); // Only load the template's language file if it hasn't been already if (!$loaded) { $lang->load('tpl_' . $template . '.sys', $path, null, false, false) || $lang->load('tpl_' . $template . '.sys', $path . '/templates/' . $template, null, false, false) || $lang->load('tpl_' . $template . '.sys', $path, $lang->getDefault(), false, false) || $lang->load('tpl_' . $template . '.sys', $path . '/templates/' . $template, $lang->getDefault(), false, false); } $langKey = strtoupper('TPL_' . $template . '_POSITION_' . $position); $text = Text::_($langKey); // Avoid untranslated strings if (!self::isTranslatedText($langKey, $text)) { // Modules component translation $langKey = strtoupper('COM_MODULES_POSITION_' . $position); $text = Text::_($langKey); // Avoid untranslated strings if (!self::isTranslatedText($langKey, $text)) { // Try to humanize the position name $text = ucfirst(preg_replace('/^' . $template . '\-/', '', $position)); $text = ucwords(str_replace(['-', '_'], ' ', $text)); } } return $text; } /** * Check if the string was translated * * @param string $langKey Language file text key * @param string $text The "translated" text to be checked * * @return boolean Return true for translated text * * @since 3.0 */ public static function isTranslatedText($langKey, $text) { return $text !== $langKey; } /** * Create and return a new Option * * @param string $value The option value [optional] * @param string $text The option text [optional] * * @return object The option as an object (\stdClass instance) * * @since 3.0 */ public static function createOption($value = '', $text = '') { if (empty($text)) { $text = $value; } $option = new \stdClass(); $option->value = $value; $option->text = $text; return $option; } /** * Create and return a new Option Group * * @param string $label Value and label for group [optional] * @param array $options Array of options to insert into group [optional] * * @return array Return the new group as an array * * @since 3.0 */ public static function createOptionGroup($label = '', $options = []) { $group = []; $group['value'] = $label; $group['text'] = $label; $group['items'] = $options; return $group; } } PKBA#]�����7components/com_modules/src/Field/ModulesModuleField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Field; use Joomla\CMS\Form\Field\ListField; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules Module field. * * @since 3.4.2 */ class ModulesModuleField extends ListField { /** * The form field type. * * @var string * @since 3.4.2 */ protected $type = 'ModulesModule'; /** * Client name. * * @var string * @since 4.0.0 */ protected $client; /** * Method to get certain otherwise inaccessible properties from the form field object. * * @param string $name The property name for which to get the value. * * @return mixed The property value or null. * * @since 4.0.0 */ public function __get($name) { switch ($name) { case 'client': return $this->$name; } return parent::__get($name); } /** * Method to set certain otherwise inaccessible properties of the form field object. * * @param string $name The property name for which to set the value. * @param mixed $value The value of the property. * * @return void * * @since 4.0.0 */ public function __set($name, $value) { switch ($name) { case 'client': $this->$name = (string) $value; break; default: parent::__set($name, $value); } } /** * Method to attach a Form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @see FormField::setup() * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { $result = parent::setup($element, $value, $group); if ($result === true) { $this->client = $this->element['client'] ? (string) $this->element['client'] : 'site'; } return $result; } /** * Method to get the field options. * * @return array The field option objects. * * @since 3.4.2 */ public function getOptions() { $clientId = $this->client === 'administrator' ? 1 : 0; $options = ModulesHelper::getModules($clientId); return array_merge(parent::getOptions(), $options); } } PKBA#]��D��9components/com_modules/src/Field/ModulesPositionField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Field; use Joomla\CMS\Form\Field\ListField; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules Position field. * * @since 3.4.2 */ class ModulesPositionField extends ListField { /** * The form field type. * * @var string * @since 3.4.2 */ protected $type = 'ModulesPosition'; /** * Client name. * * @var string * @since 4.0.0 */ protected $client; /** * Method to get certain otherwise inaccessible properties from the form field object. * * @param string $name The property name for which to get the value. * * @return mixed The property value or null. * * @since 4.0.0 */ public function __get($name) { switch ($name) { case 'client': return $this->$name; } return parent::__get($name); } /** * Method to set certain otherwise inaccessible properties of the form field object. * * @param string $name The property name for which to set the value. * @param mixed $value The value of the property. * * @return void * * @since 4.0.0 */ public function __set($name, $value) { switch ($name) { case 'client': $this->$name = (string) $value; break; default: parent::__set($name, $value); } } /** * Method to attach a Form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @see FormField::setup() * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { $result = parent::setup($element, $value, $group); if ($result === true) { $this->client = $this->element['client'] ? (string) $this->element['client'] : 'site'; } return $result; } /** * Method to get the field options. * * @return array The field option objects. * * @since 3.4.2 */ public function getOptions() { $clientId = $this->client === 'administrator' ? 1 : 0; $options = ModulesHelper::getPositions($clientId); return array_merge(parent::getOptions(), $options); } } PKBA#]vF6��=components/com_modules/src/Field/ModulesPositioneditField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Field; use Joomla\CMS\Form\FormField; use Joomla\CMS\HTML\HTMLHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Edit Modules Position field. * * @since 4.0.0 */ class ModulesPositioneditField extends FormField { /** * The form field type. * * @var string * @since 4.0.0 */ protected $type = 'ModulesPositionedit'; /** * Name of the layout being used to render the field * * @var string * @since 4.0.0 */ protected $layout = 'joomla.form.field.modulespositionedit'; /** * Client name. * * @var string * @since 4.0.0 */ protected $client; /** * Method to get certain otherwise inaccessible properties from the form field object. * * @param string $name The property name for which to get the value. * * @return mixed The property value or null. * * @since 4.0.0 */ public function __get($name) { switch ($name) { case 'client': return $this->$name; } return parent::__get($name); } /** * Method to set certain otherwise inaccessible properties of the form field object. * * @param string $name The property name for which to set the value. * @param mixed $value The value of the property. * * @return void * * @since 4.0.0 */ public function __set($name, $value) { switch ($name) { case 'client': $this->$name = (string) $value; break; default: parent::__set($name, $value); } } /** * Method to attach a Form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @see FormField::setup() * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { $result = parent::setup($element, $value, $group); if ($result === true) { $this->client = $this->element['client'] ? (string) $this->element['client'] : 'site'; } return $result; } /** * Method to get the field input markup. * * @return string The field input markup. * * @since 4.0.0 */ protected function getInput() { $data = $this->getLayoutData(); $clientId = $this->client === 'administrator' ? 1 : 0; $positions = HTMLHelper::_('modules.positions', $clientId, 1, $this->value); $data['client'] = $clientId; $data['positions'] = $positions; $renderer = $this->getRenderer($this->layout); $renderer->setComponent('com_modules'); $renderer->setClient(1); return $renderer->render($data); } } PKBA#]�h|�x x 3components/com_modules/src/Service/HTML/Modules.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Service\HTML; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\Component\Modules\Administrator\Helper\ModulesHelper; use Joomla\Component\Templates\Administrator\Helper\TemplatesHelper; use Joomla\Database\ParameterType; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * HTMLHelper module helper class. * * @since 1.6 */ class Modules { /** * Builds an array of template options * * @param integer $clientId The client id. * @param string $state The state of the template. * * @return array */ public function templates($clientId = 0, $state = '') { $options = []; $templates = ModulesHelper::getTemplates($clientId, $state); foreach ($templates as $template) { $options[] = HTMLHelper::_('select.option', $template->element, $template->name); } return $options; } /** * Builds an array of template type options * * @return array */ public function types() { $options = []; $options[] = HTMLHelper::_('select.option', 'user', 'COM_MODULES_OPTION_POSITION_USER_DEFINED'); $options[] = HTMLHelper::_('select.option', 'template', 'COM_MODULES_OPTION_POSITION_TEMPLATE_DEFINED'); return $options; } /** * Builds an array of template state options * * @return array */ public function templateStates() { $options = []; $options[] = HTMLHelper::_('select.option', '1', 'JENABLED'); $options[] = HTMLHelper::_('select.option', '0', 'JDISABLED'); return $options; } /** * Returns a published state on a grid * * @param integer $value The state value. * @param integer $i The row index * @param boolean $enabled An optional setting for access control on the action. * @param string $checkbox An optional prefix for checkboxes. * * @return string The Html code * * @see HTMLHelperJGrid::state * @since 1.7.1 */ public function state($value, $i, $enabled = true, $checkbox = 'cb') { $states = [ 1 => [ 'unpublish', 'COM_MODULES_EXTENSION_PUBLISHED_ENABLED', 'COM_MODULES_HTML_UNPUBLISH_ENABLED', 'COM_MODULES_EXTENSION_PUBLISHED_ENABLED', true, 'publish', 'publish', ], 0 => [ 'publish', 'COM_MODULES_EXTENSION_UNPUBLISHED_ENABLED', 'COM_MODULES_HTML_PUBLISH_ENABLED', 'COM_MODULES_EXTENSION_UNPUBLISHED_ENABLED', true, 'unpublish', 'unpublish', ], -1 => [ 'unpublish', 'COM_MODULES_EXTENSION_PUBLISHED_DISABLED', 'COM_MODULES_HTML_UNPUBLISH_DISABLED', 'COM_MODULES_EXTENSION_PUBLISHED_DISABLED', true, 'warning', 'warning', ], -2 => [ 'publish', 'COM_MODULES_EXTENSION_UNPUBLISHED_DISABLED', 'COM_MODULES_HTML_PUBLISH_DISABLED', 'COM_MODULES_EXTENSION_UNPUBLISHED_DISABLED', true, 'unpublish', 'unpublish', ], ]; return HTMLHelper::_('jgrid.state', $states, $value, $i, 'modules.', $enabled, true, $checkbox); } /** * Display a batch widget for the module position selector. * * @param integer $clientId The client ID. * @param integer $state The state of the module (enabled, unenabled, trashed). * @param string $selectedPosition The currently selected position for the module. * * @return string The necessary positions for the widget. * * @since 2.5 */ public function positions($clientId, $state = 1, $selectedPosition = '') { $templates = array_keys(ModulesHelper::getTemplates($clientId, $state)); $templateGroups = []; // Add an empty value to be able to deselect a module position $option = ModulesHelper::createOption('', Text::_('COM_MODULES_NONE')); $templateGroups[''] = ModulesHelper::createOptionGroup('', [$option]); // Add positions from templates $isTemplatePosition = false; foreach ($templates as $template) { $options = []; $positions = TemplatesHelper::getPositions($clientId, $template); if (is_array($positions)) { foreach ($positions as $position) { $text = ModulesHelper::getTranslatedModulePosition($clientId, $template, $position) . ' [' . $position . ']'; $options[] = ModulesHelper::createOption($position, $text); if (!$isTemplatePosition && $selectedPosition === $position) { $isTemplatePosition = true; } } $options = ArrayHelper::sortObjects($options, 'text'); } $templateGroups[$template] = ModulesHelper::createOptionGroup(ucfirst($template), $options); } // Add custom position to options $customGroupText = Text::_('COM_MODULES_CUSTOM_POSITION'); $editPositions = true; $customPositions = ModulesHelper::getPositions($clientId, $editPositions); $app = Factory::getApplication(); $position = $app->getUserState('com_modules.modules.' . $clientId . '.filter.position'); if ($position) { $customPositions[] = HTMLHelper::_('select.option', $position); $customPositions = array_unique($customPositions, SORT_REGULAR); } $templateGroups[$customGroupText] = ModulesHelper::createOptionGroup($customGroupText, $customPositions); return $templateGroups; } /** * Get a select with the batch action options * * @return void */ public function batchOptions() { // Create the copy/move options. $options = [ HTMLHelper::_('select.option', 'c', Text::_('JLIB_HTML_BATCH_COPY')), HTMLHelper::_('select.option', 'm', Text::_('JLIB_HTML_BATCH_MOVE')), ]; echo HTMLHelper::_('select.radiolist', $options, 'batch[move_copy]', '', 'value', 'text', 'm'); } /** * Method to get the field options. * * @param integer $clientId The client ID * * @return array The field option objects. * * @since 2.5 * * @deprecated 4.3 will be removed in 6.0 * Will be removed with no replacement */ public function positionList($clientId = 0) { $clientId = (int) $clientId; $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('DISTINCT ' . $db->quoteName('position', 'value')) ->select($db->quoteName('position', 'text')) ->from($db->quoteName('#__modules')) ->where($db->quoteName('client_id') . ' = :clientid') ->order($db->quoteName('position')) ->bind(':clientid', $clientId, ParameterType::INTEGER); // Get the options. $db->setQuery($query); try { $options = $db->loadObjectList(); } catch (\RuntimeException $e) { Factory::getApplication()->enqueueMessage($e->getMessage(), 'error'); } // Pop the first item off the array if it's blank if (count($options)) { if (strlen($options[0]->text) < 1) { array_shift($options); } } return $options; } } PKBA#]���� � ;components/com_modules/src/Controller/DisplayController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules manager display controller. * * @since 1.6 */ class DisplayController extends BaseController { /** * The default view. * * @var string * @since 1.6 */ protected $default_view = 'modules'; /** * Method to display a view. * * @param boolean $cachable If true, the view output will be cached * @param array|boolean $urlparams An array of safe URL parameters and their variable types, for valid values see {@link \JFilterInput::clean()} * * @return static|boolean This object to support chaining or false on failure. * * @since 1.5 */ public function display($cachable = false, $urlparams = false) { $layout = $this->input->get('layout', 'edit'); $id = $this->input->getInt('id'); // Verify client $clientId = $this->input->post->getInt('client_id'); if (!is_null($clientId)) { $uri = Uri::getInstance(); if ((int) $uri->getVar('client_id') !== (int) $clientId) { $this->setRedirect(Route::_('index.php?option=com_modules&view=modules&client_id=' . $clientId, false)); return false; } } // Check for edit form. if ($layout == 'edit' && !$this->checkEditId('com_modules.edit.module', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_modules&view=modules&client_id=' . $this->input->getInt('client_id'), false)); return false; } // Check if we have a mod_menu module set to All languages or a mod_menu module for each admin language. $factory = $this->app->bootComponent('menus')->getMVCFactory(); if ($langMissing = $factory->createModel('Menus', 'Administrator')->getMissingModuleLanguages()) { $this->app->enqueueMessage(Text::sprintf('JMENU_MULTILANG_WARNING_MISSING_MODULES', implode(', ', $langMissing)), 'warning'); } return parent::display(); } } PKBA#]G�n,,;components/com_modules/src/Controller/ModulesController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\Response\JsonResponse; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules list controller class. * * @since 1.6 */ class ModulesController extends AdminController { /** * Method to clone an existing module. * * @return void * * @since 1.6 */ public function duplicate() { // Check for request forgeries $this->checkToken(); $pks = (array) $this->input->post->get('cid', [], 'int'); // Remove zero values resulting from input filter $pks = array_filter($pks); try { if (empty($pks)) { throw new \Exception(Text::_('COM_MODULES_ERROR_NO_MODULES_SELECTED')); } $model = $this->getModel(); $model->duplicate($pks); $this->setMessage(Text::plural('COM_MODULES_N_MODULES_DUPLICATED', count($pks))); } catch (\Exception $e) { $this->app->enqueueMessage($e->getMessage(), 'warning'); } $this->setRedirect('index.php?option=com_modules&view=modules' . $this->getRedirectToListAppend()); } /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return object The model. * * @since 1.6 */ public function getModel($name = 'Module', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Method to get the number of frontend modules * * @return void * * @since 4.0.0 */ public function getQuickiconContent() { $model = $this->getModel('Modules'); $model->setState('filter.state', 1); $model->setState('filter.client_id', 0); $amount = (int) $model->getTotal(); $result = []; $result['amount'] = $amount; $result['sronly'] = Text::plural('COM_MODULES_N_QUICKICON_SRONLY', $amount); $result['name'] = Text::plural('COM_MODULES_N_QUICKICON', $amount); echo new JsonResponse($result); } /** * Gets the URL arguments to append to a list redirect. * * @return string The arguments to append to the redirect URL. * * @since 4.0.0 */ protected function getRedirectToListAppend() { $append = parent::getRedirectToListAppend(); $append .= '&client_id=' . $this->input->getInt('client_id'); return $append; } } PKBA#]�'�ٵ)�):components/com_modules/src/Controller/ModuleController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Controller; use Joomla\CMS\Form\Form; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\CMS\Uri\Uri; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Module controller class. * * @since 1.6 */ class ModuleController extends FormController { /** * Override parent add method. * * @return \Exception|void True if the record can be added, a \Exception object if not. * * @since 1.6 */ public function add() { $app = $this->app; // Get the result of the parent method. If an error, just return it. $result = parent::add(); if ($result instanceof \Exception) { return $result; } // Look for the Extension ID. $extensionId = $this->input->get('eid', 0, 'int'); if (empty($extensionId)) { $redirectUrl = 'index.php?option=' . $this->option . '&view=' . $this->view_item . '&layout=edit'; $this->setRedirect(Route::_($redirectUrl, false)); $app->enqueueMessage(Text::_('COM_MODULES_ERROR_INVALID_EXTENSION'), 'warning'); } $app->setUserState('com_modules.add.module.extension_id', $extensionId); $app->setUserState('com_modules.add.module.params', null); // Parameters could be coming in for a new item, so let's set them. $params = $this->input->get('params', [], 'array'); $app->setUserState('com_modules.add.module.params', $params); } /** * Override parent cancel method to reset the add module state. * * @param string $key The name of the primary key of the URL variable. * * @return boolean True if access level checks pass, false otherwise. * * @since 1.6 */ public function cancel($key = null) { $result = parent::cancel(); $this->app->setUserState('com_modules.add.module.extension_id', null); $this->app->setUserState('com_modules.add.module.params', null); if ($return = $this->input->get('return', '', 'BASE64')) { $return = base64_decode($return); // Don't redirect to an external URL. if (!Uri::isInternal($return)) { $return = Uri::base(); } $this->app->redirect($return); } return $result; } /** * Override parent allowSave method. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 1.6 */ protected function allowSave($data, $key = 'id') { // Use custom position if selected if (isset($data['custom_position'])) { if (empty($data['position'])) { $data['position'] = $data['custom_position']; } unset($data['custom_position']); } return parent::allowSave($data, $key); } /** * Method override to check if you can edit an existing record. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 3.2 */ protected function allowEdit($data = [], $key = 'id') { // Initialise variables. $recordId = (int) isset($data[$key]) ? $data[$key] : 0; // Zero record (id:0), return component edit permission by calling parent controller method if (!$recordId) { return parent::allowEdit($data, $key); } // Check edit on the record asset (explicit or inherited) if ($this->app->getIdentity()->authorise('core.edit', 'com_modules.module.' . $recordId)) { return true; } return false; } /** * Method to run batch operations. * * @param string $model The model * * @return boolean True on success. * * @since 1.7 */ public function batch($model = null) { $this->checkToken(); // Set the model $model = $this->getModel('Module', 'Administrator', []); // Preset the redirect $redirectUrl = 'index.php?option=com_modules&view=modules' . $this->getRedirectToListAppend(); $this->setRedirect(Route::_($redirectUrl, false)); return parent::batch($model); } /** * Function that allows child controller access to model data after the data has been saved. * * @param BaseDatabaseModel $model The data model object. * @param array $validData The validated data. * * @return void * * @since 1.6 */ protected function postSaveHook(BaseDatabaseModel $model, $validData = []) { $task = $this->getTask(); switch ($task) { case 'save2new': $this->app->setUserState('com_modules.add.module.extension_id', $model->getState('module.extension_id')); break; default: $this->app->setUserState('com_modules.add.module.extension_id', null); break; } $this->app->setUserState('com_modules.add.module.params', null); } /** * Method to save a record. * * @param string $key The name of the primary key of the URL variable. * @param string $urlVar The name of the URL variable if different from the primary key * * @return boolean True if successful, false otherwise. */ public function save($key = null, $urlVar = null) { $this->checkToken(); if ($this->app->getDocument()->getType() == 'json') { $model = $this->getModel(); $data = $this->input->post->get('jform', [], 'array'); $item = $model->getItem($this->input->get('id')); $properties = $item->getProperties(); if (isset($data['params'])) { unset($properties['params']); } // Replace changed properties $data = array_replace_recursive($properties, $data); if (!empty($data['assigned'])) { $data['assigned'] = array_map('abs', $data['assigned']); } // Add new data to input before process by parent save() $this->input->post->set('jform', $data); // Add path of forms directory Form::addFormPath(JPATH_ADMINISTRATOR . '/components/com_modules/models/forms'); } return parent::save($key, $urlVar); } /** * Method to get the other modules in the same position * * @return string The data for the Ajax request. * * @since 3.6.3 */ public function orderPosition() { $app = $this->app; // Send json mime type. $app->mimeType = 'application/json'; $app->setHeader('Content-Type', $app->mimeType . '; charset=' . $app->charSet); $app->sendHeaders(); // Check if user token is valid. if (!Session::checkToken('get')) { $app->enqueueMessage(Text::_('JINVALID_TOKEN_NOTICE'), 'error'); echo new JsonResponse(); $app->close(); } $clientId = $this->input->getValue('client_id'); $position = $this->input->getValue('position'); $moduleId = $this->input->getValue('module_id'); // Access check. if ( !$this->app->getIdentity()->authorise('core.create', 'com_modules') && !$this->app->getIdentity()->authorise('core.edit.state', 'com_modules') && ($moduleId && !$this->app->getIdentity()->authorise('core.edit.state', 'com_modules.module.' . $moduleId)) ) { $app->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_ACCESS_FORBIDDEN'), 'error'); echo new JsonResponse(); $app->close(); } $model = $this->getModel('Modules', 'Administrator', ['ignore_request' => true]); $model->setState('client_id', $clientId); $model->setState('filter.position', $position); $model->setState('list.ordering', 'a.ordering'); try { $orders = $model->getItems(); } catch (\RuntimeException $e) { $app->enqueueMessage($e->getMessage(), 'error'); return ''; } $orders2 = []; $n = count($orders); if ($n > 0) { for ($i = 0; $i < $n; $i++) { if (!isset($orders2[$orders[$i]->position])) { $orders2[$orders[$i]->position] = 0; } $orders2[$orders[$i]->position]++; $ord = $orders2[$orders[$i]->position]; $title = Text::sprintf('COM_MODULES_OPTION_ORDER_POSITION', $ord, htmlspecialchars($orders[$i]->title, ENT_QUOTES, 'UTF-8')); $html[] = $orders[$i]->position . ',' . $ord . ',' . $title; } } else { $html[] = $position . ',' . 1 . ',' . Text::_('JNONE'); } echo new JsonResponse($html); $app->close(); } /** * Gets the URL arguments to append to an item redirect. * * @param integer $recordId The primary key id for the item. * @param string $urlVar The name of the URL variable for the id. * * @return string The arguments to append to the redirect URL. * * @since 4.0.0 */ protected function getRedirectToItemAppend($recordId = null, $urlVar = 'id') { $append = parent::getRedirectToItemAppend($recordId); $append .= '&client_id=' . $this->input->getInt('client_id'); return $append; } /** * Gets the URL arguments to append to a list redirect. * * @return string The arguments to append to the redirect URL. * * @since 4.0.0 */ protected function getRedirectToListAppend() { $append = parent::getRedirectToListAppend(); $append .= '&client_id=' . $this->input->getInt('client_id'); return $append; } } PKBA#]wƔ � 3components/com_modules/src/View/Select/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\View\Select; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\FileLayout; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * HTML View class for the Modules component * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * An array of items * * @var array */ protected $items; /** * A suffix for links for modal use * * @var string */ protected $modalLink; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->state = $this->get('State'); $this->items = $this->get('Items'); $this->modalLink = ''; // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $state = $this->get('State'); $clientId = (int) $state->get('client_id', 0); $toolbar = Toolbar::getInstance(); // Add page title ToolbarHelper::title(Text::_('COM_MODULES_MANAGER_MODULES_SITE'), 'cube module'); if ($clientId === 1) { ToolbarHelper::title(Text::_('COM_MODULES_MANAGER_MODULES_ADMIN'), 'cube module'); } // Instantiate a new FileLayout instance and render the layout $layout = new FileLayout('toolbar.cancelselect'); $toolbar->customButton('new') ->html($layout->render(['client_id' => $clientId])); } } PKBA#]��̖��4components/com_modules/src/View/Modules/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\View\Modules; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Helper\ModuleHelper; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Toolbar\Button\DropdownButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of modules. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var array */ protected $items; /** * The pagination object * * @var \Joomla\CMS\Pagination\Pagination */ protected $pagination; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form * * @since 4.0.0 */ public $filterForm; /** * The active search filters * * @var array * @since 4.0.0 */ public $activeFilters; /** * Is this view an Empty State * * @var boolean * @since 4.0.0 */ private $isEmptyState = false; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @since 1.6 */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->total = $this->get('Total'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->clientId = $this->state->get('client_id'); if (!count($this->items) && $this->isEmptyState = $this->get('IsEmptyState')) { $this->setLayout('emptystate'); } /** * The code below make sure the remembered position will be available from filter dropdown even if there are no * modules available for this position. This will make the UI less confusing for users in case there is only one * module in the selected position and user: * 1. Edit the module, change it to new position, save it and come back to Modules Management Screen * 2. Or move that module to new position using Batch action */ if (count($this->items) === 0 && $this->state->get('filter.position')) { $selectedPosition = $this->state->get('filter.position'); $positionField = $this->filterForm->getField('position', 'filter'); $positionExists = false; foreach ($positionField->getOptions() as $option) { if ($option->value === $selectedPosition) { $positionExists = true; break; } } if ($positionExists === false) { $positionField->addOption($selectedPosition, ['value' => $selectedPosition]); } } // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } // We do not need the Language filter when modules are not filtered if ($this->clientId == 1 && !ModuleHelper::isAdminMultilang()) { unset($this->activeFilters['language']); $this->filterForm->removeField('language', 'filter'); } // We don't need the toolbar in the modal window. if ($this->getLayout() !== 'modal') { $this->addToolbar(); // We do not need to filter by language when multilingual is disabled if (!Multilanguage::isEnabled()) { unset($this->activeFilters['language']); $this->filterForm->removeField('language', 'filter'); } } else { // If in modal layout. // Client id selector should not exist. $this->filterForm->removeField('client_id', ''); // If in the frontend state and language should not activate the search tools. if (Factory::getApplication()->isClient('site')) { unset($this->activeFilters['state']); unset($this->activeFilters['language']); } } parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $state = $this->get('State'); $canDo = ContentHelper::getActions('com_modules'); $user = $this->getCurrentUser(); // Get the toolbar object instance $toolbar = Toolbar::getInstance(); if ($state->get('client_id') == 1) { ToolbarHelper::title(Text::_('COM_MODULES_MANAGER_MODULES_ADMIN'), 'cube module'); } else { ToolbarHelper::title(Text::_('COM_MODULES_MANAGER_MODULES_SITE'), 'cube module'); } if ($canDo->get('core.create')) { $toolbar->standardButton('new', 'JTOOLBAR_NEW') ->onclick("location.href='index.php?option=com_modules&view=select&client_id=" . $this->state->get('client_id', 0) . "'"); } if (!$this->isEmptyState && ($canDo->get('core.edit.state') || $this->getCurrentUser()->authorise('core.admin'))) { /** @var DropdownButton $dropdown */ $dropdown = $toolbar->dropdownButton('status-group', 'JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('icon-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.edit.state')) { $childBar->publish('modules.publish')->listCheck(true); $childBar->unpublish('modules.unpublish')->listCheck(true); } if ($this->getCurrentUser()->authorise('core.admin')) { $childBar->checkin('modules.checkin')->listCheck(true); } if ($canDo->get('core.edit.state') && $this->state->get('filter.published') != -2) { $childBar->trash('modules.trash')->listCheck(true); } // Add a batch button if ( $user->authorise('core.create', 'com_modules') && $user->authorise('core.edit', 'com_modules') && $user->authorise('core.edit.state', 'com_modules') ) { $childBar->popupButton('batch', 'JTOOLBAR_BATCH') ->selector('collapseModal') ->listCheck(true); } if ($canDo->get('core.create')) { $childBar->standardButton('copy', 'JTOOLBAR_DUPLICATE', 'modules.duplicate') ->listCheck(true); } } if (!$this->isEmptyState && ($state->get('filter.state') == -2 && $canDo->get('core.delete'))) { $toolbar->delete('modules.delete', 'JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($canDo->get('core.admin')) { $toolbar->preferences('com_modules'); } $toolbar->help('Modules'); } } PKBA#]W�\yy3components/com_modules/src/View/Module/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\View\Module; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View to edit a module. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The Form object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The active item * * @var object */ protected $item; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * The actions the user is authorised to perform * * @var \Joomla\CMS\Object\CMSObject * * @since 4.0.0 */ protected $canDo; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->form = $this->get('Form'); $this->item = $this->get('Item'); $this->state = $this->get('State'); $this->canDo = ContentHelper::getActions('com_modules', 'module', $this->item->id); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); $user = $this->getCurrentUser(); $isNew = ($this->item->id == 0); $checkedOut = !(is_null($this->item->checked_out) || $this->item->checked_out == $user->get('id')); $canDo = $this->canDo; $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::sprintf('COM_MODULES_MANAGER_MODULE', Text::_($this->item->module)), 'cube module'); // For new records, check the create permission. if ($isNew && $canDo->get('core.create')) { $toolbar->apply('module.apply'); $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) { $childBar->save('module.save'); $childBar->save2new('module.save2new'); } ); $toolbar->cancel('module.cancel', 'JTOOLBAR_CANCEL'); } else { // Can't save the record if it's checked out. if (!$checkedOut && $canDo->get('core.edit')) { $toolbar->apply('module.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($checkedOut, $canDo) { // Can't save the record if it's checked out. Since it's an existing record, check the edit permission. if (!$checkedOut && $canDo->get('core.edit')) { $childBar->save('module.save'); // We can save this record, but check the create permission to see if we can return to make a new one. if ($canDo->get('core.create')) { $childBar->save2new('module.save2new'); } } // If checked out, we can still save if ($canDo->get('core.create')) { $childBar->save2copy('module.save2copy'); } } ); $toolbar->cancel('module.cancel'); } // Get the help information for the menu item. $lang = $this->getLanguage(); $help = $this->get('Help'); if ($lang->hasKey($help->url)) { $debug = $lang->setDebug(false); $url = Text::_($help->url); $lang->setDebug($debug); } else { $url = null; } $toolbar->inlinehelp(); $toolbar->help($help->key, false, $url); } } PKBA#]����hh9components/com_modules/src/Extension/ModulesComponent.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Modules\Administrator\Extension; use Joomla\CMS\Extension\BootableExtensionInterface; use Joomla\CMS\Extension\MVCComponent; use Joomla\CMS\HTML\HTMLRegistryAwareTrait; use Joomla\Component\Modules\Administrator\Service\HTML\Modules; use Psr\Container\ContainerInterface; // phpcs:disable PSR1.Files.SideEffects \defined('JPATH_PLATFORM') or die; // phpcs:enable PSR1.Files.SideEffects /** * Component class for com_modules * * @since 4.0.0 */ class ModulesComponent extends MVCComponent implements BootableExtensionInterface { use HTMLRegistryAwareTrait; /** * Booting the extension. This is the function to set up the environment of the extension like * registering new class loaders, etc. * * If required, some initial set up can be done from services of the container, eg. * registering HTML services. * * @param ContainerInterface $container The container * * @return void * * @since 4.0.0 */ public function boot(ContainerInterface $container) { $this->getRegistry()->register('modules', new Modules()); } } PKBA#]�'[���!components/com_modules/config.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <config> <help key="Modules:_Options"/> <inlinehelp button="show"/> <fieldset name="modules" label="COM_MODULES_GENERAL" description="COM_MODULES_GENERAL_FIELDSET_DESC" > <field name="redirect_edit" type="list" class="advancedSelect" default="site" label="COM_MODULES_REDIRECT_EDIT_LABEL" description="COM_MODULES_REDIRECT_EDIT_DESC" validate="options" > <option value="admin">JADMINISTRATOR</option> <option value="site">JSITE</option> </field> </fieldset> <fieldset name="admin_modules" label="COM_MODULES_ADMIN_LANG_FILTER_FIELDSET_LABEL" > <field name="adminlangfilter" type="radio" label="COM_MODULES_ADMIN_LANG_FILTER_LABEL" description="COM_MODULES_ADMIN_LANG_FILTER_DESC" layout="joomla.form.field.radio.switcher" default="0" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" description="JCONFIG_PERMISSIONS_DESC" > <field name="rules" type="rules" label="JCONFIG_PERMISSIONS_LABEL" filter="rules" validate="rules" component="com_modules" section="component" /> </fieldset> </config> PKBA#]OT�33!components/com_modules/access.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <access component="com_modules"> <section name="component"> <action name="core.admin" title="JACTION_ADMIN" /> <action name="core.manage" title="JACTION_MANAGE" /> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="module.edit.frontend" title="COM_MODULES_ACTION_EDITFRONTEND" /> </section> <section name="module"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="module.edit.frontend" title="COM_MODULES_ACTION_EDITFRONTEND" /> </section> </access>PKBA#]�@���*components/com_modules/helpers/modules.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_modules * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace */ // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Modules component helper. * * @since 1.6 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Modules\Administrator\Helper\ModulesHelper instead */ abstract class ModulesHelper extends \Joomla\Component\Modules\Administrator\Helper\ModulesHelper { } PKBA#]�� ��4components/com_contenthistory/tmpl/history/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; Session::checkToken('get') or die(Text::_('JINVALID_TOKEN')); $hash = $this->state->get('sha1_hash'); $formUrl = 'index.php?option=com_contenthistory&view=history&layout=modal&tmpl=component&item_id=' . $this->state->get('item_id') . '&' . Session::getFormToken() . '=1'; Text::script('COM_CONTENTHISTORY_BUTTON_SELECT_ONE_VERSION', true); Text::script('COM_CONTENTHISTORY_BUTTON_SELECT_TWO_VERSIONS', true); Text::script('JLIB_HTML_PLEASE_MAKE_A_SELECTION_FROM_THE_LIST'); $inlineJS = <<<JS document.querySelectorAll('.js-link-open-window').forEach((link) => link.addEventListener('click', (e) => { e.preventDefault(); window.open(link.dataset.url, 'win2', 'width=800,height=600,resizable=yes,scrollbars=yes') })); JS; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('multiselect') ->useScript('com_contenthistory.admin-history-modal') ->useScript('list-view') ->addInlineScript($inlineJS, [], ['type' => 'module']); ?> <div class="container-popup"> <div id="subhead" class="subhead noshadow mb-3"> <?php echo $this->toolbar->render(); ?> </div> <form action="<?php echo Route::_($formUrl); ?>" method="post" name="adminForm" id="adminForm"> <table class="table table-sm"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENTHISTORY_VERSION_CAPTION'); ?> </caption> <thead> <tr> <td class="w-1 text-center"> <input class="form-check-input" type="checkbox" name="checkall-toggle" value="" title="<?php echo Text::_('JGLOBAL_CHECK_ALL'); ?>" onclick="Joomla.checkAll(this)"> </td> <th scope="col" class="w-15"> <?php echo Text::_('JDATE'); ?> </th> <th scope="col" class="w-15 d-none d-md-table-cell"> <?php echo Text::_('COM_CONTENTHISTORY_VERSION_NOTE'); ?> </th> <th scope="col" class="w-10"> <?php echo Text::_('COM_CONTENTHISTORY_KEEP_VERSION'); ?> </th> <th scope="col" class="w-15 d-none d-md-table-cell"> <?php echo Text::_('JAUTHOR'); ?> </th> <th scope="col" class="w-10 text-end"> <?php echo Text::_('COM_CONTENTHISTORY_CHARACTER_COUNT'); ?> </th> </tr> </thead> <tbody> <?php $i = 0; ?> <?php foreach ($this->items as $item) : ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"> <?php echo HTMLHelper::_('grid.id', $i, $item->version_id, false, 'cid', 'cb', $item->save_date); ?> </td> <th scope="row"> <a href="#" class="js-link-open-window save-date" data-url="<?php echo Route::_('index.php?option=com_contenthistory&view=preview&layout=preview&tmpl=component&' . Session::getFormToken() . '=1&version_id=' . $item->version_id); ?>"> <?php echo HTMLHelper::_('date', $item->save_date, Text::_('DATE_FORMAT_LC6')); ?> </a> <?php if ($item->sha1_hash == $hash) : ?> <span class="icon-star" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('JCURRENT'); ?></span> <?php endif; ?> </th> <td class="d-none d-md-table-cell"> <?php echo htmlspecialchars($item->version_note); ?> </td> <td> <?php if ($item->keep_forever) : ?> <button type="button" class="js-grid-item-action btn btn-secondary btn-sm" data-item-id="cb<?php echo $i; ?>" data-item-task="history.keep"> <?php echo Text::_('JYES'); ?> <span class="icon-lock" aria-hidden="true"></span> </button> <?php else : ?> <button type="button" class="js-grid-item-action btn btn-secondary btn-sm" data-item-id="cb<?php echo $i; ?>" data-item-task="history.keep"> <?php echo Text::_('JNO'); ?> </button> <?php endif; ?> </td> <td class="d-none d-md-table-cell"> <?php echo empty($item->editor) ? $item->editor_user_id : htmlspecialchars($item->editor); ?> </td> <td class="text-end"> <?php echo number_format((int) $item->character_count, 0, Text::_('DECIMALS_SEPARATOR'), Text::_('THOUSANDS_SEPARATOR')); ?> </td> </tr> <?php $i++; ?> <?php endforeach; ?> </tbody> </table> <?php /* load the pagination. */ ?> <?php echo $this->pagination->getListFooter(); ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </form> </div> PKBA#]��<:i i 6components/com_contenthistory/tmpl/preview/preview.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Session\Session; Session::checkToken('get') or die(Text::_('JINVALID_TOKEN')); ?> <div role="main"> <h1> <?php echo Text::sprintf('COM_CONTENTHISTORY_PREVIEW_SUBTITLE_DATE', $this->item->save_date); ?> </h1> <?php if ($this->item->version_note) : ?> <h2> <?php echo Text::sprintf('COM_CONTENTHISTORY_PREVIEW_SUBTITLE', $this->item->version_note); ?> </h2> <?php endif; ?> <table class="table"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENTHISTORY_PREVIEW_CAPTION'); ?> </caption> <thead> <tr> <th class="w-25" scope="col"><?php echo Text::_('COM_CONTENTHISTORY_PREVIEW_FIELD'); ?></th> <th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_PREVIEW_VALUE'); ?></th> </tr> </thead> <tbody> <?php foreach ($this->item->data as $name => $value) : ?> <?php if (is_object($value->value)) : ?> <tr> <td colspan="2"> <?php echo $value->label; ?> </td> </tr> <?php foreach ($value->value as $subName => $subValue) : ?> <?php if ($subValue && isset($subValue->value)) : ?> <?php $subValue->value = (\is_object($subValue->value) || \is_array($subValue->value)) ? \json_encode($subValue->value, \JSON_UNESCAPED_UNICODE) : $subValue->value; ?> <tr> <th scope="row"><em> <?php echo $subValue->label; ?></em></th> <td><?php echo $subValue->value; ?></td> </tr> <?php endif; ?> <?php endforeach; ?> <?php else : ?> <tr> <th scope="row"><?php echo $value->label; ?></th> <td><?php echo $value->value; ?></td> </tr> <?php endif; ?> <?php endforeach; ?> </tbody> </table> </div> PKBA#]��g` 6components/com_contenthistory/tmpl/compare/compare.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; use Joomla\CMS\Session\Session; Session::checkToken('get') or die(Text::_('JINVALID_TOKEN')); $version2 = $this->items[0]; $version1 = $this->items[1]; $object1 = $version1->data; $object2 = $version2->data; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_contenthistory.admin-compare-compare'); ?> <div role="main"> <h1 class="mb-3"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_TITLE'); ?></h1> <table id="diff" class="table"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENTHISTORY_COMPARE_CAPTION'); ?> </caption> <thead> <tr> <th scope="col" class="w-25"><?php echo Text::_('COM_CONTENTHISTORY_PREVIEW_FIELD'); ?></th> <th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_OLD'); ?></th> <th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_NEW'); ?></th> <th scope="col"><?php echo Text::_('COM_CONTENTHISTORY_COMPARE_DIFF'); ?></th> </tr> </thead> <tbody> <?php foreach ($object1 as $name => $value) : ?> <?php if (isset($value->value) && isset($object2->$name->value) && $value->value != $object2->$name->value) : ?> <?php if (is_object($value->value)) : ?> <tr> <td colspan="4"> <strong><?php echo $value->label; ?></strong> </td> </tr> <?php foreach ($value->value as $subName => $subValue) : ?> <?php $newSubValue = $object2->$name->value->$subName->value ?? ''; ?> <?php if ($subValue->value || $newSubValue) : ?> <?php if ($subValue->value != $newSubValue) : ?> <tr> <th scope="row"><em> <?php echo $subValue->label; ?></em></th> <td class="original"><?php echo htmlspecialchars($subValue->value, ENT_COMPAT, 'UTF-8'); ?></td> <td class="changed" ><?php echo htmlspecialchars($newSubValue, ENT_COMPAT, 'UTF-8'); ?></td> <td class="diff"> </td> </tr> <?php endif; ?> <?php endif; ?> <?php endforeach; ?> <?php else : ?> <tr> <th scope="row"> <?php echo $value->label; ?> </th> <td class="original"><?php echo htmlspecialchars($value->value); ?></td> <?php $object2->$name->value = is_object($object2->$name->value) ? json_encode($object2->$name->value) : $object2->$name->value; ?> <td class="changed"><?php echo htmlspecialchars($object2->$name->value, ENT_COMPAT, 'UTF-8'); ?></td> <td class="diff"> </td> </tr> <?php endif; ?> <?php endif; ?> <?php endforeach; ?> </tbody> </table> </div> PKBA#]lM�[``3components/com_contenthistory/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface; use Joomla\CMS\Extension\ComponentInterface; use Joomla\CMS\Extension\MVCComponent; use Joomla\CMS\Extension\Service\Provider\ComponentDispatcherFactory; use Joomla\CMS\Extension\Service\Provider\MVCFactory; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The content history service provider. * * @since 4.0.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.0.0 */ public function register(Container $container) { $container->registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Contenthistory')); $container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Contenthistory')); $container->set( ComponentInterface::class, function (Container $container) { $component = new MVCComponent($container->get(ComponentDispatcherFactoryInterface::class)); $component->setMVCFactory($container->get(MVCFactoryInterface::class)); return $component; } ); } }; PKBA#]�L$"";components/com_contenthistory/src/View/History/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\View\History; use Joomla\CMS\Factory; use Joomla\CMS\Filter\InputFilter; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Pagination\Pagination; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarFactoryInterface; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of contenthistory. * * @since 3.2 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var array */ protected $items; /** * The model state * * @var Pagination */ protected $pagination; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * The toolbar for the history modal. Note this is rendered inside the modal rather than using the regular module * * @var Toolbar */ protected $toolbar; /** * Method to display the view. * * @param string $tpl A template file to load. [optional] * * @return void * * @since 3.2 */ public function display($tpl = null) { $this->state = $this->get('State'); $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->toolbar = $this->addToolbar(); parent::display($tpl); } /** * Add the page toolbar. * * @return Toolbar * * @since 4.0.0 */ protected function addToolbar(): Toolbar { /** @var Toolbar $toolbar */ $toolbar = Factory::getContainer()->get(ToolbarFactoryInterface::class)->createToolbar('toolbar'); // Cache a session token for reuse throughout. $token = Session::getFormToken(); // Clean up input to ensure a clean url. $filter = InputFilter::getInstance(); $aliasArray = explode('.', $this->state->item_id); if ($aliasArray[1] === 'category') { $option = 'com_categories'; $append = '&extension=' . $filter->clean($aliasArray[0], 'cmd'); } else { $option = $aliasArray[0]; $append = ''; } $task = $filter->clean($aliasArray[1], 'cmd') . '.loadhistory'; // Build the final urls. $loadUrl = Route::_('index.php?option=' . $filter->clean($option, 'cmd') . $append . '&task=' . $task . '&' . $token . '=1'); $previewUrl = Route::_('index.php?option=com_contenthistory&view=preview&layout=preview&tmpl=component&' . $token . '=1'); $compareUrl = Route::_('index.php?option=com_contenthistory&view=compare&layout=compare&tmpl=component&' . $token . '=1'); $toolbar->basicButton('load', 'COM_CONTENTHISTORY_BUTTON_LOAD') ->attributes(['data-url' => $loadUrl]) ->icon('icon-upload') ->buttonClass('btn btn-success') ->listCheck(true); $toolbar->basicButton('preview', 'COM_CONTENTHISTORY_BUTTON_PREVIEW') ->attributes(['data-url' => $previewUrl]) ->icon('icon-search') ->listCheck(true); $toolbar->basicButton('compare', 'COM_CONTENTHISTORY_BUTTON_COMPARE') ->attributes(['data-url' => $compareUrl]) ->icon('icon-search-plus') ->listCheck(true); $toolbar->basicButton('keep', 'COM_CONTENTHISTORY_BUTTON_KEEP', 'history.keep') ->buttonClass('btn btn-inverse') ->icon('icon-lock') ->listCheck(true); $toolbar->basicButton('delete', 'COM_CONTENTHISTORY_BUTTON_DELETE', 'history.delete') ->buttonClass('btn btn-danger') ->icon('icon-times') ->listCheck(true); return $toolbar; } } PKBA#]� �CC;components/com_contenthistory/src/View/Preview/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\View\Preview; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of contenthistory. * * @since 1.5 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var \stdClass|false */ protected $item; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * Method to display the view. * * @param string $tpl A template file to load. [optional] * * @return void * * @since 3.2 */ public function display($tpl = null) { $this->state = $this->get('State'); $this->item = $this->get('Item'); if (false === $this->item) { $this->getLanguage()->load('com_content', JPATH_SITE, null, true); throw new \Exception(Text::_('COM_CONTENT_ERROR_ARTICLE_NOT_FOUND'), 404); } // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } parent::display($tpl); } } PKBA#]<S�FF;components/com_contenthistory/src/View/Compare/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\View\Compare; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of contenthistory. * * @since 3.2 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var array */ protected $items; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * Method to display the view. * * @param string $tpl A template file to load. [optional] * * @return void * * @since 3.2 */ public function display($tpl = null) { $this->state = $this->get('State'); $this->items = $this->get('Items'); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } parent::display($tpl); } } PKBA#]���gg8components/com_contenthistory/src/Model/CompareModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Model; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Table\ContentHistory; use Joomla\CMS\Table\ContentType; use Joomla\CMS\Table\Table; use Joomla\Component\Contenthistory\Administrator\Helper\ContenthistoryHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of contenthistory records. * * @since 3.2 */ class CompareModel extends ListModel { /** * Method to get a version history row. * * @return array|boolean On success, array of populated tables. False on failure. * * @since 3.2 * * @throws NotAllowed Thrown if not authorised to edit an item */ public function getItems() { $input = Factory::getApplication()->getInput(); /** @var ContentHistory $table1 */ $table1 = $this->getTable('ContentHistory'); /** @var ContentHistory $table2 */ $table2 = $this->getTable('ContentHistory'); $id1 = $input->getInt('id1'); $id2 = $input->getInt('id2'); if (!$id1 || \is_array($id1) || !$id2 || \is_array($id2)) { $this->setError(Text::_('COM_CONTENTHISTORY_ERROR_INVALID_ID')); return false; } $result = []; if (!$table1->load($id1) || !$table2->load($id2)) { $this->setError(Text::_('COM_CONTENTHISTORY_ERROR_VERSION_NOT_FOUND')); // Assume a failure to load the content means broken data, abort mission return false; } // Get the first history record's content type record so we can check ACL /** @var ContentType $contentTypeTable */ $contentTypeTable = $this->getTable('ContentType'); $typeAlias = explode('.', $table1->item_id); array_pop($typeAlias); $typeAlias = implode('.', $typeAlias); if (!$contentTypeTable->load(['type_alias' => $typeAlias])) { $this->setError(Text::_('COM_CONTENTHISTORY_ERROR_FAILED_LOADING_CONTENT_TYPE')); // Assume a failure to load the content type means broken data, abort mission return false; } $user = $this->getCurrentUser(); // Access check if (!$user->authorise('core.edit', $table1->item_id) && !$this->canEdit($table1)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $nullDate = $this->getDatabase()->getNullDate(); foreach ([$table1, $table2] as $table) { $object = new \stdClass(); $object->data = ContenthistoryHelper::prepareData($table); $object->version_note = $table->version_note; // Let's use custom calendars when present $object->save_date = HTMLHelper::_('date', $table->save_date, Text::_('DATE_FORMAT_LC6')); $dateProperties = [ 'modified_time', 'created_time', 'modified', 'created', 'checked_out_time', 'publish_up', 'publish_down', ]; foreach ($dateProperties as $dateProperty) { if ( property_exists($object->data, $dateProperty) && $object->data->$dateProperty->value !== null && $object->data->$dateProperty->value !== $nullDate ) { $object->data->$dateProperty->value = HTMLHelper::_( 'date', $object->data->$dateProperty->value, Text::_('DATE_FORMAT_LC6') ); } } $result[] = $object; } return $result; } /** * Method to get a table object, load it if necessary. * * @param string $type The table name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A Table object * * @since 3.2 */ public function getTable($type = 'Contenthistory', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { return Table::getInstance($type, $prefix, $config); } /** * Method to test whether a record is editable * * @param ContentHistory $record A Table object. * * @return boolean True if allowed to edit the record. Defaults to the permission set in the component. * * @since 3.6 */ protected function canEdit($record) { $result = false; if (!empty($record->item_id)) { /** * Make sure user has edit privileges for this content item. Note that we use edit permissions * for the content item, not delete permissions for the content history row. */ $user = $this->getCurrentUser(); $result = $user->authorise('core.edit', $record->item_id); // Finally try session (this catches edit.own case too) if (!$result) { /** @var ContentType $contentTypeTable */ $contentTypeTable = $this->getTable('ContentType'); $typeAlias = explode('.', $record->item_id); $id = array_pop($typeAlias); $typeAlias = implode('.', $typeAlias); $contentTypeTable->load(['type_alias' => $typeAlias]); $typeEditables = (array) Factory::getApplication()->getUserState(str_replace('.', '.edit.', $contentTypeTable->type_alias) . '.id'); $result = in_array((int) $id, $typeEditables); } } return $result; } } PKBA#]lד6�1�18components/com_contenthistory/src/Model/HistoryModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Model; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Helper\CMSHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Log\Log; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Table\ContentHistory; use Joomla\CMS\Table\ContentType; use Joomla\CMS\Table\Table; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of contenthistory records. * * @since 3.2 */ class HistoryModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * @param MVCFactoryInterface $factory The factory. * * @see \Joomla\CMS\MVC\Model\BaseDatabaseModel * @since 3.2 */ public function __construct($config = [], MVCFactoryInterface $factory = null) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'version_id', 'h.version_id', 'version_note', 'h.version_note', 'save_date', 'h.save_date', 'editor_user_id', 'h.editor_user_id', ]; } parent::__construct($config, $factory); } /** * Method to test whether a record is editable * * @param ContentHistory $record A Table object. * * @return boolean True if allowed to edit the record. Defaults to the permission set in the component. * * @since 3.2 */ protected function canEdit($record) { if (empty($record->item_id)) { return false; } /** * Make sure user has edit privileges for this content item. Note that we use edit permissions * for the content item, not delete permissions for the content history row. */ $user = $this->getCurrentUser(); if ($user->authorise('core.edit', $record->item_id)) { return true; } // Finally try session (this catches edit.own case too) /** @var ContentType $contentTypeTable */ $contentTypeTable = $this->getTable('ContentType'); $typeAlias = explode('.', $record->item_id); $id = array_pop($typeAlias); $typeAlias = implode('.', $typeAlias); $contentTypeTable->load(['type_alias' => $typeAlias]); $typeEditables = (array) Factory::getApplication()->getUserState(str_replace('.', '.edit.', $contentTypeTable->type_alias) . '.id'); $result = in_array((int) $id, $typeEditables); return $result; } /** * Method to test whether a history record can be deleted. Note that we check whether we have edit permissions * for the content item row. * * @param ContentHistory $record A Table object. * * @return boolean True if allowed to delete the record. Defaults to the permission set in the component. * * @since 3.6 */ protected function canDelete($record) { return $this->canEdit($record); } /** * Method to delete one or more records from content history table. * * @param array $pks An array of record primary keys. * * @return boolean True if successful, false if an error occurs. * * @since 3.2 */ public function delete(&$pks) { $pks = (array) $pks; $table = $this->getTable(); // Iterate the items to delete each one. foreach ($pks as $i => $pk) { if ($table->load($pk)) { if ((int) $table->keep_forever === 1) { unset($pks[$i]); continue; } if ($this->canEdit($table)) { if (!$table->delete($pk)) { $this->setError($table->getError()); return false; } } else { // Prune items that you can't change. unset($pks[$i]); $error = $this->getError(); if ($error) { try { Log::add($error, Log::WARNING, 'jerror'); } catch (\RuntimeException $exception) { Factory::getApplication()->enqueueMessage($error, 'warning'); } return false; } else { try { Log::add(Text::_('JLIB_APPLICATION_ERROR_DELETE_NOT_PERMITTED'), Log::WARNING, 'jerror'); } catch (\RuntimeException $exception) { Factory::getApplication()->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_DELETE_NOT_PERMITTED'), 'warning'); } return false; } } } else { $this->setError($table->getError()); return false; } } // Clear the component's cache $this->cleanCache(); return true; } /** * Method to get an array of data items. * * @return mixed An array of data items on success, false on failure. * * @since 3.4.5 * * @throws NotAllowed Thrown if not authorised to edit an item */ public function getItems() { $items = parent::getItems(); $user = $this->getCurrentUser(); if ($items === false) { return false; } // This should be an array with at least one element if (!is_array($items) || !isset($items[0])) { return $items; } // Access check if (!$user->authorise('core.edit', $items[0]->item_id) && !$this->canEdit($items[0])) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } return $items; } /** * Method to get a table object, load it if necessary. * * @param string $type The table name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A Table object * * @since 3.2 */ public function getTable($type = 'ContentHistory', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { return Table::getInstance($type, $prefix, $config); } /** * Method to toggle on and off the keep forever value for one or more records from content history table. * * @param array $pks An array of record primary keys. * * @return boolean True if successful, false if an error occurs. * * @since 3.2 */ public function keep(&$pks) { $pks = (array) $pks; $table = $this->getTable(); // Iterate the items to delete each one. foreach ($pks as $i => $pk) { if ($table->load($pk)) { if ($this->canEdit($table)) { $table->keep_forever = $table->keep_forever ? 0 : 1; if (!$table->store()) { $this->setError($table->getError()); return false; } } else { // Prune items that you can't change. unset($pks[$i]); $error = $this->getError(); if ($error) { try { Log::add($error, Log::WARNING, 'jerror'); } catch (\RuntimeException $exception) { Factory::getApplication()->enqueueMessage($error, 'warning'); } return false; } else { try { Log::add(Text::_('COM_CONTENTHISTORY_ERROR_KEEP_NOT_PERMITTED'), Log::WARNING, 'jerror'); } catch (\RuntimeException $exception) { Factory::getApplication()->enqueueMessage(Text::_('COM_CONTENTHISTORY_ERROR_KEEP_NOT_PERMITTED'), 'warning'); } return false; } } } else { $this->setError($table->getError()); return false; } } // Clear the component's cache $this->cleanCache(); return true; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 3.2 */ protected function populateState($ordering = 'h.save_date', $direction = 'DESC') { $input = Factory::getApplication()->getInput(); $itemId = $input->get('item_id', '', 'string'); $this->setState('item_id', $itemId); $this->setState('sha1_hash', $this->getSha1Hash()); // Load the parameters. $params = ComponentHelper::getParams('com_contenthistory'); $this->setState('params', $params); // List state information. parent::populateState($ordering, $direction); } /** * Build an SQL query to load the list data. * * @return \Joomla\Database\DatabaseQuery * * @since 3.2 */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); $itemId = $this->getState('item_id'); // Select the required fields from the table. $query->select( $this->getState( 'list.select', [ $db->quoteName('h.version_id'), $db->quoteName('h.item_id'), $db->quoteName('h.version_note'), $db->quoteName('h.save_date'), $db->quoteName('h.editor_user_id'), $db->quoteName('h.character_count'), $db->quoteName('h.sha1_hash'), $db->quoteName('h.version_data'), $db->quoteName('h.keep_forever'), ] ) ) ->from($db->quoteName('#__history', 'h')) ->where($db->quoteName('h.item_id') . ' = :itemid') ->bind(':itemid', $itemId, ParameterType::STRING) // Join over the users for the editor ->select($db->quoteName('uc.name', 'editor')) ->join( 'LEFT', $db->quoteName('#__users', 'uc'), $db->quoteName('uc.id') . ' = ' . $db->quoteName('h.editor_user_id') ); // Add the list ordering clause. $orderCol = $this->state->get('list.ordering'); $orderDirn = $this->state->get('list.direction'); $query->order($db->quoteName($orderCol) . $orderDirn); return $query; } /** * Get the sha1 hash value for the current item being edited. * * @return string sha1 hash of row data * * @since 3.2 */ protected function getSha1Hash() { $result = false; $item_id = Factory::getApplication()->getInput()->getCmd('item_id', ''); $typeAlias = explode('.', $item_id); Table::addIncludePath(JPATH_ADMINISTRATOR . '/components/' . $typeAlias[0] . '/tables'); $typeTable = $this->getTable('ContentType'); $typeTable->load(['type_alias' => $typeAlias[0] . '.' . $typeAlias[1]]); $contentTable = $typeTable->getContentTable(); if ($contentTable && $contentTable->load($typeAlias[2])) { $helper = new CMSHelper(); $dataObject = $helper->getDataObject($contentTable); $result = $this->getTable('ContentHistory')->getSha1(json_encode($dataObject), $typeTable); } return $result; } } PKBA#]@/}888components/com_contenthistory/src/Model/PreviewModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Model; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ItemModel; use Joomla\CMS\Table\ContentHistory; use Joomla\CMS\Table\ContentType; use Joomla\CMS\Table\Table; use Joomla\Component\Contenthistory\Administrator\Helper\ContenthistoryHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of contenthistory records. * * @since 3.2 */ class PreviewModel extends ItemModel { /** * Method to get a version history row. * * @param integer $pk The id of the item * * @return \stdClass|boolean On success, standard object with row data. False on failure. * * @since 3.2 * * @throws NotAllowed Thrown if not authorised to edit an item */ public function getItem($pk = null) { /** @var ContentHistory $table */ $table = $this->getTable('ContentHistory'); $versionId = Factory::getApplication()->getInput()->getInt('version_id'); if (!$versionId || \is_array($versionId) || !$table->load($versionId)) { return false; } $user = $this->getCurrentUser(); // Access check if (!$user->authorise('core.edit', $table->item_id) && !$this->canEdit($table)) { throw new NotAllowed(Text::_('JERROR_ALERTNOAUTHOR'), 403); } $result = new \stdClass(); $result->version_note = $table->version_note; $result->data = ContenthistoryHelper::prepareData($table); // Let's use custom calendars when present $result->save_date = HTMLHelper::_('date', $table->save_date, Text::_('DATE_FORMAT_LC6')); $dateProperties = [ 'modified_time', 'created_time', 'modified', 'created', 'checked_out_time', 'publish_up', 'publish_down', ]; $nullDate = $this->getDatabase()->getNullDate(); foreach ($dateProperties as $dateProperty) { if ( property_exists($result->data, $dateProperty) && $result->data->$dateProperty->value !== null && $result->data->$dateProperty->value !== $nullDate ) { $result->data->$dateProperty->value = HTMLHelper::_( 'date', $result->data->$dateProperty->value, Text::_('DATE_FORMAT_LC6') ); } } return $result; } /** * Method to get a table object, load it if necessary. * * @param string $type The table name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return Table A Table object * * @since 3.2 */ public function getTable($type = 'ContentHistory', $prefix = 'Joomla\\CMS\\Table\\', $config = []) { return Table::getInstance($type, $prefix, $config); } /** * Method to test whether a record is editable * * @param ContentHistory $record A Table object. * * @return boolean True if allowed to edit the record. Defaults to the permission set in the component. * * @since 3.6 */ protected function canEdit($record) { $result = false; if (!empty($record->item_id)) { /** * Make sure user has edit privileges for this content item. Note that we use edit permissions * for the content item, not delete permissions for the content history row. */ $user = $this->getCurrentUser(); $result = $user->authorise('core.edit', $record->item_id); // Finally try session (this catches edit.own case too) if (!$result) { /** @var ContentType $contentTypeTable */ $contentTypeTable = $this->getTable('ContentType'); $typeAlias = explode('.', $record->item_id); $id = array_pop($typeAlias); $typeAlias = implode('.', $typeAlias); $typeEditables = (array) Factory::getApplication()->getUserState(str_replace('.', '.edit.', $contentTypeTable->type_alias) . '.id'); $result = in_array((int) $id, $typeEditables); } } return $result; } } PKBA#]�H�MMBcomponents/com_contenthistory/src/Controller/PreviewController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Controller; use Joomla\CMS\MVC\Controller\BaseController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Contenthistory list controller class. * * @since 3.2 */ class PreviewController extends BaseController { /** * Proxy for getModel. * * @param string $name The name of the model * @param string $prefix The prefix for the model * @param array $config An additional array of parameters * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel The model * * @since 3.2 */ public function getModel($name = 'Preview', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } } PKBA#]���??Bcomponents/com_contenthistory/src/Controller/DisplayController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Controller; use Joomla\CMS\MVC\Controller\BaseController; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Contenthistory Controller * * @since 3.2 */ class DisplayController extends BaseController { } PKBA#]���00Bcomponents/com_contenthistory/src/Controller/HistoryController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Contenthistory list controller class. * * @since 3.2 */ class HistoryController extends AdminController { /** * Proxy for getModel. * * @param string $name The name of the model * @param string $prefix The prefix for the model * @param array $config An additional array of parameters * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel The model * * @since 3.2 */ public function getModel($name = 'History', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Toggles the keep forever value for one or more history rows. If it was Yes, changes to No. If No, changes to Yes. * * @return void * * @since 3.2 */ public function keep() { $this->checkToken(); // Get items to toggle keep forever from the request. $cid = (array) $this->input->get('cid', [], 'int'); // Remove zero values resulting from input filter $cid = array_filter($cid); if (empty($cid)) { $this->app->enqueueMessage(Text::_('COM_CONTENTHISTORY_NO_ITEM_SELECTED'), 'warning'); } else { // Get the model. $model = $this->getModel(); // Toggle keep forever status of the selected items. if ($model->keep($cid)) { $this->setMessage(Text::plural('COM_CONTENTHISTORY_N_ITEMS_KEEP_TOGGLE', count($cid))); } else { $this->setMessage($model->getError(), 'error'); } } $this->setRedirect( Route::_( 'index.php?option=com_contenthistory&view=history&layout=modal&tmpl=component&item_id=' . $this->input->getCmd('item_id') . '&' . Session::getFormToken() . '=1', false ) ); } /** * Gets the URL arguments to append to a list redirect. * * @return string The arguments to append to the redirect URL. * * @since 4.0.0 */ protected function getRedirectToListAppend() { return '&layout=modal&tmpl=component&item_id=' . $this->input->get('item_id') . '&' . Session::getFormToken() . '=1'; } } PKBA#]�+T�3�3Acomponents/com_contenthistory/src/Helper/ContenthistoryHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\File; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\Language\Text; use Joomla\CMS\Table\ContentHistory; use Joomla\CMS\Table\ContentType; use Joomla\CMS\Table\Table; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Categories helper. * * @since 3.2 */ class ContenthistoryHelper { /** * Method to put all field names, including nested ones, in a single array for easy lookup. * * @param \stdClass $object Standard class object that may contain one level of nested objects. * * @return array Associative array of all field names, including ones in a nested object. * * @since 3.2 */ public static function createObjectArray($object) { $result = []; if ($object === null) { return $result; } foreach ($object as $name => $value) { $result[$name] = $value; if (is_object($value)) { foreach ($value as $subName => $subValue) { $result[$subName] = $subValue; } } } return $result; } /** * Method to decode JSON-encoded fields in a standard object. Used to unpack JSON strings in the content history data column. * * @param string $jsonString JSON String to convert to an object. * * @return \stdClass Object with any JSON-encoded fields unpacked. * * @since 3.2 */ public static function decodeFields($jsonString) { $object = json_decode($jsonString); if (is_object($object)) { foreach ($object as $name => $value) { if (!is_null($value) && $subObject = json_decode($value)) { $object->$name = $subObject; } } } return $object; } /** * Method to get field labels for the fields in the JSON-encoded object. * First we see if we can find translatable labels for the fields in the object. * We translate any we can find and return an array in the format object->name => label. * * @param \stdClass $object Standard class object in the format name->value. * @param ContentType $typesTable Table object with content history options. * * @return \stdClass Contains two associative arrays. * $formValues->labels in the format name => label (for example, 'id' => 'Article ID'). * $formValues->values in the format name => value (for example, 'state' => 'Published'. * This translates the text from the selected option in the form. * * @since 3.2 */ public static function getFormValues($object, ContentType $typesTable) { $labels = []; $values = []; $expandedObjectArray = static::createObjectArray($object); static::loadLanguageFiles($typesTable->type_alias); if ($formFile = static::getFormFile($typesTable)) { if ($xml = simplexml_load_file($formFile)) { // Now we need to get all of the labels from the form $fieldArray = $xml->xpath('//field'); $fieldArray = array_merge($fieldArray, $xml->xpath('//fields')); foreach ($fieldArray as $field) { if ($label = (string) $field->attributes()->label) { $labels[(string) $field->attributes()->name] = Text::_($label); } } // Get values for any list type fields $listFieldArray = $xml->xpath('//field[@type="list" or @type="radio"]'); foreach ($listFieldArray as $field) { $name = (string) $field->attributes()->name; if (isset($expandedObjectArray[$name])) { $optionFieldArray = $field->xpath('option[@value="' . $expandedObjectArray[$name] . '"]'); $valueText = null; if (is_array($optionFieldArray) && count($optionFieldArray)) { $valueText = trim((string) $optionFieldArray[0]); } $values[(string) $field->attributes()->name] = Text::_($valueText); } } } } $result = new \stdClass(); $result->labels = $labels; $result->values = $values; return $result; } /** * Method to get the XML form file for this component. Used to get translated field names for history preview. * * @param ContentType $typesTable Table object with content history options. * * @return mixed \JModel object if successful, false if no model found. * * @since 3.2 */ public static function getFormFile(ContentType $typesTable) { // First, see if we have a file name in the $typesTable $options = json_decode($typesTable->content_history_options); if (is_object($options) && isset($options->formFile) && is_file(JPATH_ROOT . '/' . $options->formFile)) { $result = JPATH_ROOT . '/' . $options->formFile; } else { $aliasArray = explode('.', $typesTable->type_alias); $component = ($aliasArray[1] == 'category') ? 'com_categories' : $aliasArray[0]; $path = Folder::makeSafe(JPATH_ADMINISTRATOR . '/components/' . $component . '/models/forms/'); array_shift($aliasArray); $file = File::makeSafe(implode('.', $aliasArray) . '.xml'); $result = is_file($path . $file) ? $path . $file : false; } return $result; } /** * Method to query the database using values from lookup objects. * * @param \stdClass $lookup The std object with the values needed to do the query. * @param mixed $value The value used to find the matching title or name. Typically the id. * * @return mixed Value from database (for example, name or title) on success, false on failure. * * @since 3.2 */ public static function getLookupValue($lookup, $value) { $result = false; if (isset($lookup->sourceColumn) && isset($lookup->targetTable) && isset($lookup->targetColumn) && isset($lookup->displayColumn)) { $db = Factory::getDbo(); $value = (int) $value; $query = $db->getQuery(true); $query->select($db->quoteName($lookup->displayColumn)) ->from($db->quoteName($lookup->targetTable)) ->where($db->quoteName($lookup->targetColumn) . ' = :value') ->bind(':value', $value, ParameterType::INTEGER); $db->setQuery($query); try { $result = $db->loadResult(); } catch (\Exception $e) { // Ignore any errors and just return false return false; } } return $result; } /** * Method to remove fields from the object based on values entered in the #__content_types table. * * @param \stdClass $object Object to be passed to view layout file. * @param ContentType $typeTable Table object with content history options. * * @return \stdClass object with hidden fields removed. * * @since 3.2 */ public static function hideFields($object, ContentType $typeTable) { if ($options = json_decode($typeTable->content_history_options)) { if (isset($options->hideFields) && is_array($options->hideFields)) { foreach ($options->hideFields as $field) { unset($object->$field); } } } return $object; } /** * Method to load the language files for the component whose history is being viewed. * * @param string $typeAlias The type alias, for example 'com_content.article'. * * @return void * * @since 3.2 */ public static function loadLanguageFiles($typeAlias) { $aliasArray = explode('.', $typeAlias); if (is_array($aliasArray) && count($aliasArray) == 2) { $component = ($aliasArray[1] == 'category') ? 'com_categories' : $aliasArray[0]; $lang = Factory::getLanguage(); /** * Loading language file from the administrator/language directory then * loading language file from the administrator/components/extension/language directory */ $lang->load($component, JPATH_ADMINISTRATOR) || $lang->load($component, Path::clean(JPATH_ADMINISTRATOR . '/components/' . $component)); // Force loading of backend global language file $lang->load('joomla', Path::clean(JPATH_ADMINISTRATOR)); } } /** * Method to create object to pass to the layout. Format is as follows: * field is std object with name, value. * * Value can be a std object with name, value pairs. * * @param \stdClass $object The std object from the JSON string. Can be nested 1 level deep. * @param \stdClass $formValues Standard class of label and value in an associative array. * * @return \stdClass Object with translated labels where available * * @since 3.2 */ public static function mergeLabels($object, $formValues) { $result = new \stdClass(); if ($object === null) { return $result; } $labelsArray = $formValues->labels; $valuesArray = $formValues->values; foreach ($object as $name => $value) { $result->$name = new \stdClass(); $result->$name->name = $name; $result->$name->value = $valuesArray[$name] ?? $value; $result->$name->label = $labelsArray[$name] ?? $name; if (is_object($value)) { $subObject = new \stdClass(); foreach ($value as $subName => $subValue) { $subObject->$subName = new \stdClass(); $subObject->$subName->name = $subName; $subObject->$subName->value = $valuesArray[$subName] ?? $subValue; $subObject->$subName->label = $labelsArray[$subName] ?? $subName; $result->$name->value = $subObject; } } } return $result; } /** * Method to prepare the object for the preview and compare views. * * @param ContentHistory $table Table object loaded with data. * * @return \stdClass Object ready for the views. * * @since 3.2 */ public static function prepareData(ContentHistory $table) { $object = static::decodeFields($table->version_data); $typesTable = Table::getInstance('ContentType', 'Joomla\\CMS\\Table\\'); $typeAlias = explode('.', $table->item_id); array_pop($typeAlias); $typesTable->load(['type_alias' => implode('.', $typeAlias)]); $formValues = static::getFormValues($object, $typesTable); $object = static::mergeLabels($object, $formValues); $object = static::hideFields($object, $typesTable); $object = static::processLookupFields($object, $typesTable); return $object; } /** * Method to process any lookup values found in the content_history_options column for this table. * This allows category title and user name to be displayed instead of the id column. * * @param \stdClass $object The std object from the JSON string. Can be nested 1 level deep. * @param ContentType $typesTable Table object loaded with data. * * @return \stdClass Object with lookup values inserted. * * @since 3.2 */ public static function processLookupFields($object, ContentType $typesTable) { if ($options = json_decode($typesTable->content_history_options)) { if (isset($options->displayLookup) && is_array($options->displayLookup)) { foreach ($options->displayLookup as $lookup) { $sourceColumn = $lookup->sourceColumn ?? false; $sourceValue = $object->$sourceColumn->value ?? false; if ($sourceColumn && $sourceValue && ($lookupValue = static::getLookupValue($lookup, $sourceValue))) { $object->$sourceColumn->value = $lookupValue; } } } } return $object; } } PKBA#]#�ynFF;components/com_contenthistory/src/Dispatcher/Dispatcher.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Contenthistory\Administrator\Dispatcher; use Joomla\CMS\Access\Exception\NotAllowed; use Joomla\CMS\Dispatcher\ComponentDispatcher; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * ComponentDispatcher class for com_associations * * @since 4.0.0 */ class Dispatcher extends ComponentDispatcher { /** * Method to check component access permission * * @since 4.0.0 * * @return void * * @throws \Exception|NotAllowed */ protected function checkAccess() { // Check the user has permission to access this component if in the backend if ($this->app->getIdentity()->guest) { throw new NotAllowed($this->app->getLanguage()->_('JERROR_ALERTNOAUTHOR'), 403); } } } PKBA#]r�V��8components/com_contenthistory/helpers/contenthistory.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_contenthistory * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace */ // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Categories helper. * * @since 3.2 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Contenthistory\Administrator\Helper\ContenthistoryHelper instead */ class ContenthistoryHelper extends \Joomla\Component\Contenthistory\Administrator\Helper\ContenthistoryHelper { } PKBA#]i4l�~~0components/com_contenthistory/contenthistory.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="component" method="upgrade"> <name>com_contenthistory</name> <author>Joomla! Project</author> <creationDate>2013-05</creationDate> <copyright>(C) 2013 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>COM_CONTENTHISTORY_XML_DESCRIPTION</description> <namespace path="src">Joomla\Component\Contenthistory</namespace> <files folder="site"> <folder>src</folder> </files> <media destination="com_contenthistory" folder="media"> <folder>js</folder> </media> <administration> <files folder="admin"> <filename>contenthistory.xml</filename> <folder>helpers</folder> <folder>services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="admin"> <language tag="en-GB">language/en-GB/com_contenthistory.ini</language> <language tag="en-GB">language/en-GB/com_contenthistory.sys.ini</language> </languages> </administration> </extension> PKBA#]dTp���=components/com_content/tmpl/featured/default_stage_footer.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_content.admin-articles-stage'); ?> <button class="btn btn-secondary" type="button" data-bs-dismiss="modal"> <?php echo Text::_('JCANCEL'); ?> </button> <button id="stage-submit-button-id" class="btn btn-success" type="button" data-submit-task=""> <?php echo Text::_('JGLOBAL_STAGE_PROCESS'); ?> </button> PKBA#]�Co�99;components/com_content/tmpl/featured/default_stage_body.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2019 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; ?> <div class="container"> <div class="row"> <div class="col-12"> <p><?php echo Text::_('COM_CONTENT_CHANGE_STAGE_AMBIGUOUS_TRANSITIONS'); ?></p> </div> <div class="col-12" id="stageModal-content"> </div> </div> </div> PKBA#]�F�qycyc0components/com_content/tmpl/featured/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Button\FeaturedButton; use Joomla\CMS\Button\PublishedButton; use Joomla\CMS\Button\TransitionButton; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\Component\Content\Administrator\Helper\ContentHelper; use Joomla\Utilities\ArrayHelper; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $app = Factory::getApplication(); $user = Factory::getUser(); $userId = $user->get('id'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $saveOrder = $listOrder == 'fp.ordering'; if (strpos($listOrder, 'publish_up') !== false) { $orderingColumn = 'publish_up'; } elseif (strpos($listOrder, 'publish_down') !== false) { $orderingColumn = 'publish_down'; } elseif (strpos($listOrder, 'modified') !== false) { $orderingColumn = 'modified'; } else { $orderingColumn = 'created'; } if ($saveOrder && !empty($this->items)) { $saveOrderingUrl = 'index.php?option=com_content&task=featured.saveOrderAjax&tmpl=component&' . Session::getFormToken() . '=1'; HTMLHelper::_('draggablelist.draggable'); } $workflow_enabled = ComponentHelper::getParams('com_content')->get('workflow_enabled'); $workflow_state = false; $workflow_featured = false; if ($workflow_enabled) : $wa->getRegistry()->addExtensionRegistryFile('com_workflow'); $wa->useScript('com_workflow.admin-items-workflow-buttons') ->useScript('com_content.articles-status'); $workflow_state = Factory::getApplication()->bootComponent('com_content')->isFunctionalityUsed('core.state', 'com_content.article'); $workflow_featured = Factory::getApplication()->bootComponent('com_content')->isFunctionalityUsed('core.featured', 'com_content.article'); endif; $assoc = Associations::isEnabled(); ?> <form action="<?php echo Route::_('index.php?option=com_content&view=featured'); ?>" method="post" name="adminForm" id="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php // Search tools bar echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table itemList" id="articleList"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENT_FEATURED_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', '', 'fp.ordering', $listDirn, $listOrder, null, 'asc', 'JGRID_HEADING_ORDERING', 'icon-sort'); ?> </th> <?php if ($workflow_enabled) : ?> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTAGE', 'ws.title', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo Text::_('JFEATURED'); ?> </th> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th scope="col" style="min-width:100px"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ACCESS', 'a.access', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JAUTHOR', 'a.created_by', $listDirn, $listOrder); ?> </th> <?php if ($assoc) : ?> <th scope="col" class="w-5 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_CONTENT_HEADING_ASSOCIATION', 'association', $listDirn, $listOrder); ?> </th> <?php endif; ?> <?php if (Multilanguage::isEnabled()) : ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'language', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-10 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_CONTENT_HEADING_DATE_' . strtoupper($orderingColumn), 'a.' . $orderingColumn, $listDirn, $listOrder); ?> </th> <?php if ($this->hits) : ?> <th scope="col" class="w-3 d-none d-lg-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_HITS', 'a.hits', $listDirn, $listOrder); ?> </th> <?php endif; ?> <?php if ($this->vote) : ?> <th scope="col" class="w-3 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_VOTES', 'rating_count', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-3 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_RATINGS', 'rating', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-3 d-none d-lg-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody<?php if ($saveOrder) : ?> class="js-draggable" data-url="<?php echo $saveOrderingUrl; ?>" data-direction="<?php echo strtolower($listDirn); ?>"<?php endif; ?>> <?php $count = count($this->items); ?> <?php foreach ($this->items as $i => $item) : $item->max_ordering = 0; $ordering = ($listOrder == 'fp.ordering'); $assetId = 'com_content.article.' . $item->id; $canCreate = $user->authorise('core.create', 'com_content.category.' . $item->catid); $canEdit = $user->authorise('core.edit', 'com_content.article.' . $item->id); $canCheckin = $user->authorise('core.manage', 'com_checkin') || $item->checked_out == $userId || is_null($item->checked_out); $canChange = $user->authorise('core.edit.state', 'com_content.article.' . $item->id) && $canCheckin; $canEditCat = $user->authorise('core.edit', 'com_content.category.' . $item->catid); $canEditOwnCat = $user->authorise('core.edit.own', 'com_content.category.' . $item->catid) && $item->category_uid == $userId; $canEditParCat = $user->authorise('core.edit', 'com_content.category.' . $item->parent_category_id); $canEditOwnParCat = $user->authorise('core.edit.own', 'com_content.category.' . $item->parent_category_id) && $item->parent_category_uid == $userId; $transitions = ContentHelper::filterTransitions($this->transitions, (int) $item->stage_id, (int) $item->workflow_id); $transition_ids = ArrayHelper::getColumn($transitions, 'value'); $transition_ids = ArrayHelper::toInteger($transition_ids); ?> <tr class="row<?php echo $i % 2; ?>" data-transitions="<?php echo implode(',', $transition_ids); ?>"> <td class="text-center"> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->title); ?> </td> <td class="text-center d-none d-md-table-cell"> <?php $iconClass = ''; if (!$canChange) { $iconClass = ' inactive'; } elseif (!$saveOrder) { $iconClass = ' inactive" title="' . Text::_('JORDERINGDISABLED'); } ?> <span class="sortable-handler<?php echo $iconClass ?>"> <span class="icon-ellipsis-v" aria-hidden="true"></span> </span> <?php if ($canChange && $saveOrder) : ?> <input type="text" name="order[]" size="5" value="<?php echo $item->ordering; ?>" class="width-20 text-area-order hidden"> <?php endif; ?> </td> <?php if ($workflow_enabled) : ?> <td class="article-stage text-center"> <?php $options = [ 'transitions' => $transitions, 'title' => Text::_($item->stage_title), 'tip_content' => Text::sprintf('JWORKFLOW', Text::_($item->workflow_title)), 'id' => 'workflow-' . $item->id, 'task' => 'articles.runTransition' ]; echo (new TransitionButton($options)) ->render(0, $i); ?> <div class="small"> <?php echo Text::_($item->stage_title); ?> </div> </td> <?php endif; ?> <td class="text-center d-none d-md-table-cell"> <?php $options = [ 'task_prefix' => 'articles.', 'disabled' => $workflow_featured || !$canChange, 'id' => 'featured-' . $item->id ]; echo (new FeaturedButton()) ->render((int) $item->featured, $i, $options, $item->featured_up, $item->featured_down); ?> </td> <td class="article-status text-center"> <?php $options = [ 'task_prefix' => 'articles.', 'disabled' => $workflow_state || !$canChange, 'id' => 'state-' . $item->id, 'category_published' => $item->category_published ]; echo (new PublishedButton())->render((int) $item->state, $i, $options, $item->publish_up, $item->publish_down); ?> </td> <th scope="row" class="has-context"> <div class="break-word"> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $i, $item->editor, $item->checked_out_time, 'articles.', $canCheckin); ?> <?php endif; ?> <?php if ($canEdit) : ?> <a href="<?php echo Route::_('index.php?option=com_content&task=article.edit&return=featured&id=' . $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($item->title); ?>"> <?php echo $this->escape($item->title); ?></a> <?php else : ?> <span title="<?php echo Text::sprintf('JFIELD_ALIAS_LABEL', $this->escape($item->alias)); ?>"><?php echo $this->escape($item->title); ?></span> <?php endif; ?> <div class="small break-word"> <?php if (empty($item->note)) : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS', $this->escape($item->alias)); ?> <?php else : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS_NOTE', $this->escape($item->alias), $this->escape($item->note)); ?> <?php endif; ?> </div> <div class="small"> <?php $ParentCatUrl = Route::_('index.php?option=com_categories&task=category.edit&id=' . $item->parent_category_id . '&extension=com_content'); $CurrentCatUrl = Route::_('index.php?option=com_categories&task=category.edit&id=' . $item->catid . '&extension=com_content'); $EditCatTxt = Text::_('COM_CONTENT_EDIT_CATEGORY'); echo Text::_('JCATEGORY') . ': '; if ($item->category_level != '1') : if ($item->parent_category_level != '1') : echo ' » '; endif; endif; if ($this->getLanguage()->isRtl()) { if ($canEditCat || $canEditOwnCat) : echo '<a href="' . $CurrentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->category_title); if ($canEditCat || $canEditOwnCat) : echo '</a>'; endif; if ($item->category_level != '1') : echo ' « '; if ($canEditParCat || $canEditOwnParCat) : echo '<a href="' . $ParentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->parent_category_title); if ($canEditParCat || $canEditOwnParCat) : echo '</a>'; endif; endif; } else { if ($item->category_level != '1') : if ($canEditParCat || $canEditOwnParCat) : echo '<a href="' . $ParentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->parent_category_title); if ($canEditParCat || $canEditOwnParCat) : echo '</a>'; endif; echo ' » '; endif; if ($canEditCat || $canEditOwnCat) : echo '<a href="' . $CurrentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->category_title); if ($canEditCat || $canEditOwnCat) : echo '</a>'; endif; } if ($item->category_published < '1') : echo $item->category_published == '0' ? ' (' . Text::_('JUNPUBLISHED') . ')' : ' (' . Text::_('JTRASHED') . ')'; endif; ?> </div> </div> </th> <td class="small d-none d-md-table-cell"> <?php echo $this->escape($item->access_level); ?> </td> <td class="small d-none d-md-table-cell"> <?php if ((int) $item->created_by != 0) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=user.edit&id=' . (int) $item->created_by); ?>"> <?php echo $this->escape($item->author_name); ?> </a> <?php else : ?> <?php echo Text::_('JNONE'); ?> <?php endif; ?> <?php if ($item->created_by_alias) : ?> <div class="smallsub"><?php echo Text::sprintf('JGLOBAL_LIST_ALIAS', $this->escape($item->created_by_alias)); ?></div> <?php endif; ?> </td> <?php if ($assoc) : ?> <td class="d-none d-md-table-cell"> <?php if ($item->association) : ?> <?php echo HTMLHelper::_('contentadministrator.association', $item->id); ?> <?php endif; ?> </td> <?php endif; ?> <?php if (Multilanguage::isEnabled()) : ?> <td class="small d-none d-md-table-cell"> <?php echo LayoutHelper::render('joomla.content.language', $item); ?> </td> <?php endif; ?> <td class="small d-none d-md-table-cell text-center"> <?php $date = $item->{$orderingColumn}; echo $date > 0 ? HTMLHelper::_('date', $date, Text::_('DATE_FORMAT_LC4')) : '-'; ?> </td> <?php if ($this->hits) : ?> <td class="d-none d-lg-table-cell text-center"> <span class="badge bg-info"> <?php echo (int) $item->hits; ?> </span> </td> <?php endif; ?> <?php if ($this->vote) : ?> <td class="d-none d-md-table-cell text-center"> <span class="badge bg-success"> <?php echo (int) $item->rating_count; ?> </span> </td> <td class="d-none d-md-table-cell text-center"> <span class="badge bg-warning text-dark"> <?php echo (int) $item->rating; ?> </span> </td> <?php endif; ?> <td class="d-none d-lg-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php echo HTMLHelper::_( 'bootstrap.renderModal', 'stageModal', [ 'title' => Text::_('JTOOLBAR_CHANGE_STATUS'), 'footer' => $this->loadTemplate('stage_footer'), ], $this->loadTemplate('stage_body') ); ?> <?php endif; ?> <?php if ($workflow_enabled) : ?> <input type="hidden" name="transition_id" value=""> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="featured" value="1"> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </form> PKBA#]��0���0components/com_content/tmpl/featured/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_CONTENT_FEATURED_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_CONTENT_FEATURED_VIEW_DEFAULT_DESC]]> </message> </layout> </metadata> PKBA#]om�ff3components/com_content/tmpl/featured/emptystate.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Layout\LayoutHelper; $displayData = [ 'textPrefix' => 'COM_CONTENT', 'formURL' => 'index.php?option=com_content&view=featured', 'helpURL' => 'https://docs.joomla.org/Special:MyLanguage/Adding_a_new_article', ]; $user = Factory::getApplication()->getIdentity(); if ($user->authorise('core.create', 'com_content') || count($user->getAuthorisedCategories('com_content', 'core.create')) > 0) { $displayData['createURL'] = 'index.php?option=com_content&task=article.add'; } echo LayoutHelper::render('joomla.content.emptystate', $displayData); PKBA#]��*[[1components/com_content/tmpl/article/pagebreak.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_content.admin-article-pagebreak'); $this->eName = Factory::getApplication()->getInput()->getCmd('e_name', ''); $this->eName = preg_replace('#[^A-Z0-9\-\_\[\]]#i', '', $this->eName); $this->document->setTitle(Text::_('COM_CONTENT_PAGEBREAK_DOC_TITLE')); ?> <div class="container-popup"> <form> <div class="control-group"> <div class="control-label"> <label for="title"><?php echo Text::_('COM_CONTENT_PAGEBREAK_TITLE'); ?></label> </div> <div class="controls"> <input class="form-control" type="text" id="title" name="title"> </div> </div> <div class="control-group"> <div class="control-label"> <label for="alias"><?php echo Text::_('COM_CONTENT_PAGEBREAK_TOC'); ?></label> </div> <div class="controls"> <input class="form-control" type="text" id="alt" name="alt"> </div> </div> <button onclick="insertPagebreak('<?php echo $this->eName; ?>');" class="btn btn-success"> <?php echo Text::_('COM_CONTENT_PAGEBREAK_INSERT_BUTTON'); ?> </button> </form> </div> PKBA#]u�vL"L",components/com_content/tmpl/article/edit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ /** @var \Joomla\Component\Content\Administrator\View\Article\HtmlView $this */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\Registry\Registry; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->getRegistry()->addExtensionRegistryFile('com_contenthistory'); $wa->useScript('keepalive') ->useScript('form.validate') ->useScript('com_contenthistory.admin-history-versions'); $this->configFieldsets = ['editorConfig']; $this->hiddenFieldsets = ['basic-limited']; $fieldsetsInImages = ['image-intro', 'image-full']; $fieldsetsInLinks = ['linka', 'linkb', 'linkc']; $this->ignore_fieldsets = array_merge(['jmetadata', 'item_associations'], $fieldsetsInImages, $fieldsetsInLinks); $this->useCoreUI = true; // Create shortcut to parameters. $params = clone $this->state->get('params'); $params->merge(new Registry($this->item->attribs)); $input = Factory::getApplication()->getInput(); $assoc = Associations::isEnabled(); $showArticleOptions = $params->get('show_article_options', 1); if (!$assoc || !$showArticleOptions) { $this->ignore_fieldsets[] = 'frontendassociations'; } if (!$showArticleOptions) { // Ignore fieldsets inside Options tab $this->ignore_fieldsets = array_merge($this->ignore_fieldsets, ['attribs', 'basic', 'category', 'author', 'date', 'other']); } // In case of modal $isModal = $input->get('layout') === 'modal'; $layout = $isModal ? 'modal' : 'edit'; $tmpl = $isModal || $input->get('tmpl', '', 'cmd') === 'component' ? '&tmpl=component' : ''; ?> <form action="<?php echo Route::_('index.php?option=com_content&layout=' . $layout . $tmpl . '&id=' . (int) $this->item->id); ?>" method="post" name="adminForm" id="item-form" aria-label="<?php echo Text::_('COM_CONTENT_FORM_TITLE_' . ((int) $this->item->id === 0 ? 'NEW' : 'EDIT'), true); ?>" class="form-validate"> <?php echo LayoutHelper::render('joomla.edit.title_alias', $this); ?> <div class="main-card"> <?php echo HTMLHelper::_('uitab.startTabSet', 'myTab', ['active' => 'general', 'recall' => true, 'breakpoint' => 768]); ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'general', Text::_('COM_CONTENT_ARTICLE_CONTENT')); ?> <div class="row"> <div class="col-lg-9"> <div> <fieldset class="adminform"> <?php echo $this->form->getLabel('articletext'); ?> <?php echo $this->form->getInput('articletext'); ?> </fieldset> </div> </div> <div class="col-lg-3"> <?php echo LayoutHelper::render('joomla.edit.global', $this); ?> </div> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php // Do not show the images and links options if the edit form is configured not to. ?> <?php if ($params->get('show_urls_images_backend') == 1) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'images', Text::_('COM_CONTENT_FIELDSET_URLS_AND_IMAGES')); ?> <div class="row"> <div class="col-12 col-lg-6"> <?php foreach ($fieldsetsInImages as $fieldset) : ?> <fieldset id="fieldset-<?php echo $fieldset; ?>" class="options-form"> <legend><?php echo Text::_($this->form->getFieldsets()[$fieldset]->label); ?></legend> <div> <?php echo $this->form->renderFieldset($fieldset); ?> </div> </fieldset> <?php endforeach; ?> </div> <div class="col-12 col-lg-6"> <?php foreach ($fieldsetsInLinks as $fieldset) : ?> <fieldset id="fieldset-<?php echo $fieldset; ?>" class="options-form"> <legend><?php echo Text::_($this->form->getFieldsets()[$fieldset]->label); ?></legend> <div> <?php echo $this->form->renderFieldset($fieldset); ?> </div> </fieldset> <?php endforeach; ?> </div> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php echo LayoutHelper::render('joomla.edit.params', $this); ?> <?php // Do not show the publishing options if the edit form is configured not to. ?> <?php if ($params->get('show_publishing_options', 1) == 1) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'publishing', Text::_('COM_CONTENT_FIELDSET_PUBLISHING')); ?> <div class="row"> <div class="col-12 col-lg-6"> <fieldset id="fieldset-publishingdata" class="options-form"> <legend><?php echo Text::_('JGLOBAL_FIELDSET_PUBLISHING'); ?></legend> <div> <?php echo LayoutHelper::render('joomla.edit.publishingdata', $this); ?> </div> </fieldset> </div> <div class="col-12 col-lg-6"> <fieldset id="fieldset-metadata" class="options-form"> <legend><?php echo Text::_('JGLOBAL_FIELDSET_METADATA_OPTIONS'); ?></legend> <div> <?php echo LayoutHelper::render('joomla.edit.metadata', $this); ?> </div> </fieldset> </div> </div> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php if (!$isModal && $assoc && $params->get('show_associations_edit', 1) == 1) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'associations', Text::_('JGLOBAL_FIELDSET_ASSOCIATIONS')); ?> <fieldset id="fieldset-associations" class="options-form"> <legend><?php echo Text::_('JGLOBAL_FIELDSET_ASSOCIATIONS'); ?></legend> <div> <?php echo LayoutHelper::render('joomla.edit.associations', $this); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php elseif ($isModal && $assoc) : ?> <div class="hidden"><?php echo LayoutHelper::render('joomla.edit.associations', $this); ?></div> <?php endif; ?> <?php if ($this->canDo->get('core.admin') && $params->get('show_configure_edit_options', 1) == 1) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'editor', Text::_('COM_CONTENT_SLIDER_EDITOR_CONFIG')); ?> <fieldset id="fieldset-editor" class="options-form"> <legend><?php echo Text::_('COM_CONTENT_SLIDER_EDITOR_CONFIG'); ?></legend> <div class="form-grid"> <?php echo $this->form->renderFieldset('editorConfig'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php if ($this->canDo->get('core.admin') && $params->get('show_permissions', 1) == 1) : ?> <?php echo HTMLHelper::_('uitab.addTab', 'myTab', 'permissions', Text::_('COM_CONTENT_FIELDSET_RULES')); ?> <fieldset id="fieldset-rules" class="options-form"> <legend><?php echo Text::_('COM_CONTENT_FIELDSET_RULES'); ?></legend> <div> <?php echo $this->form->getInput('rules'); ?> </div> </fieldset> <?php echo HTMLHelper::_('uitab.endTab'); ?> <?php endif; ?> <?php echo HTMLHelper::_('uitab.endTabSet'); ?> <?php // Creating 'id' hiddenField to cope with com_associations sidebyside loop ?> <?php if ($params->get('show_publishing_options', 1) == 0) : ?> <?php $hidden_fields = $this->form->getInput('id'); ?> <div class="hidden"><?php echo $hidden_fields; ?></div> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="return" value="<?php echo $input->getBase64('return'); ?>"> <input type="hidden" name="forcedLanguage" value="<?php echo $input->get('forcedLanguage', '', 'cmd'); ?>"> <?php echo HTMLHelper::_('form.token'); ?> </div> </form> PKBA#]���XX,components/com_content/tmpl/article/edit.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_CONTENT_ARTICLE_VIEW_EDIT_TITLE"> <message> <![CDATA[COM_CONTENT_ARTICLE_VIEW_EDIT_DESC]]> </message> </layout> <fieldset name="request"> <fields name="request"> <field name="id" type="hidden" default="0" /> </fields> </fieldset> </metadata> PKBA#]m�9��-components/com_content/tmpl/article/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2013 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; ?> <div class="container-popup"> <?php $this->setLayout('edit'); ?> <?php echo $this->loadTemplate(); ?> </div> PKBA#]t�����;components/com_content/tmpl/articles/default_batch_body.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Layout\LayoutHelper; $params = ComponentHelper::getParams('com_content'); $published = (int) $this->state->get('filter.published'); $user = Factory::getUser(); ?> <div class="p-3"> <div class="row"> <?php if (Multilanguage::isEnabled()) : ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.language', []); ?> </div> </div> <?php endif; ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.access', []); ?> </div> </div> </div> <div class="row"> <?php if ($published >= 0) : ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.item', ['extension' => 'com_content']); ?> </div> </div> <?php endif; ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.tag', []); ?> </div> </div> <?php if ($user->authorise('core.admin', 'com_content') && $params->get('workflow_enabled')) : ?> <div class="form-group col-md-6"> <div class="controls"> <?php echo LayoutHelper::render('joomla.html.batch.workflowstage', ['extension' => 'com_content']); ?> </div> </div> <?php endif; ?> </div> </div> PKBA#]�-����=components/com_content/tmpl/articles/default_batch_footer.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2015 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Language\Text; /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('com_content.admin-articles-batch'); ?> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal"> <?php echo Text::_('JCANCEL'); ?> </button> <button type="submit" id='batch-submit-button-id' class="btn btn-success" data-submit-task='article.batch'> <?php echo Text::_('JGLOBAL_BATCH_PROCESS'); ?> </button> PKBA#]�г ��0components/com_content/tmpl/articles/default.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <metadata> <layout title="COM_CONTENT_ARTICLES_VIEW_DEFAULT_TITLE"> <message> <![CDATA[COM_CONTENT_ARTICLES_VIEW_DEFAULT_DESC]]> </message> </layout> <!-- Add fields to the request variables for the layout. --> <fields name="request"> <fieldset name="request" addfieldprefix="Joomla\Component\Categories\Administrator\Field" > <field name="filter_category_id" type="modal_category" label="COM_MENUS_ADMIN_CATEGORY_LABEL" extension="com_content" select="true" new="true" edit="true" clear="true" filter="integer" /> <field name="filter_level" type="integer" label="COM_MENUS_ADMIN_LEVEL_LABEL" first="1" last="10" step="1" languages="*" filter="integer" > <option value="">JOPTION_SELECT_MAX_LEVELS</option> </field> <field name="filter_author_id" type="author" label="COM_MENUS_ADMIN_AUTHOR_LABEL" multiple="true" layout="joomla.form.field.list-fancy-select" class="multipleAuthors" filter="array" > <option value="0">JNONE</option> <option value="by_me">COM_CONTENT_FILTER_AUTHORS_BY_ME</option> </field> <field name="filter_tag" type="tag" label="COM_MENUS_ADMIN_TAGS_LABEL" multiple="true" filter="intarray" mode="nested" /> <field name="filter_access" type="accesslevel" label="COM_MENUS_ADMIN_ACCESS_LABEL" multiple="true" layout="joomla.form.field.list-fancy-select" filter="intarray" validate="options" /> <field name="filter_language" type="contentlanguage" label="COM_MENUS_ADMIN_LANGUAGE_LABEL" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> </fieldset> </fields> <fields name="params"> <fieldset name="basic"> <field name="menu-quicktask" type="radio" label="MOD_MENU_FIELD_SHOWNEW" layout="joomla.form.field.radio.switcher" > <option value="">JHIDE</option> <option value="index.php?option=com_content&task=article.add">JSHOW</option> </field> <field name="menu-quicktask-title" type="hidden" default="COM_CONTENT_MENUS_NEW_ARTICLE" /> </fieldset> </fields> </metadata> PKBA#]�Fi�f�f0components/com_content/tmpl/articles/default.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Button\FeaturedButton; use Joomla\CMS\Button\PublishedButton; use Joomla\CMS\Button\TransitionButton; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\Component\Content\Administrator\Helper\ContentHelper; use Joomla\Utilities\ArrayHelper; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('table.columns') ->useScript('multiselect'); $app = Factory::getApplication(); $user = Factory::getUser(); $userId = $user->get('id'); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $saveOrder = $listOrder == 'a.ordering'; if (strpos($listOrder, 'publish_up') !== false) { $orderingColumn = 'publish_up'; } elseif (strpos($listOrder, 'publish_down') !== false) { $orderingColumn = 'publish_down'; } elseif (strpos($listOrder, 'modified') !== false) { $orderingColumn = 'modified'; } else { $orderingColumn = 'created'; } if ($saveOrder && !empty($this->items)) { $saveOrderingUrl = 'index.php?option=com_content&task=articles.saveOrderAjax&tmpl=component&' . Session::getFormToken() . '=1'; HTMLHelper::_('draggablelist.draggable'); } $workflow_enabled = ComponentHelper::getParams('com_content')->get('workflow_enabled'); $workflow_state = false; $workflow_featured = false; if ($workflow_enabled) : $wa->getRegistry()->addExtensionRegistryFile('com_workflow'); $wa->useScript('com_workflow.admin-items-workflow-buttons') ->useScript('com_content.articles-status'); $workflow_state = Factory::getApplication()->bootComponent('com_content')->isFunctionalityUsed('core.state', 'com_content.article'); $workflow_featured = Factory::getApplication()->bootComponent('com_content')->isFunctionalityUsed('core.featured', 'com_content.article'); endif; $assoc = Associations::isEnabled(); ?> <form action="<?php echo Route::_('index.php?option=com_content&view=articles'); ?>" method="post" name="adminForm" id="adminForm"> <div class="row"> <div class="col-md-12"> <div id="j-main-container" class="j-main-container"> <?php // Search tools bar echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table itemList" id="articleList"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENT_ARTICLES_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <td class="w-1 text-center"> <?php echo HTMLHelper::_('grid.checkall'); ?> </td> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', '', 'a.ordering', $listDirn, $listOrder, null, 'asc', 'JGRID_HEADING_ORDERING', 'icon-sort'); ?> </th> <?php if ($workflow_enabled) : ?> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTAGE', 'ws.title', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-1 text-center d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JFEATURED', 'a.featured', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th scope="col" style="min-width:100px"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ACCESS', 'a.access', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JAUTHOR', 'a.created_by', $listDirn, $listOrder); ?> </th> <?php if ($assoc) : ?> <th scope="col" class="w-5 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_CONTENT_HEADING_ASSOCIATION', 'association', $listDirn, $listOrder); ?> </th> <?php endif; ?> <?php if (Multilanguage::isEnabled()) : ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'language', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-10 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'COM_CONTENT_HEADING_DATE_' . strtoupper($orderingColumn), 'a.' . $orderingColumn, $listDirn, $listOrder); ?> </th> <?php if ($this->hits) : ?> <th scope="col" class="w-3 d-none d-lg-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_HITS', 'a.hits', $listDirn, $listOrder); ?> </th> <?php endif; ?> <?php if ($this->vote) : ?> <th scope="col" class="w-3 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_VOTES', 'rating_count', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-3 d-none d-md-table-cell text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_RATINGS', 'rating', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-3 d-none d-lg-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody<?php if ($saveOrder) : ?> class="js-draggable" data-url="<?php echo $saveOrderingUrl; ?>" data-direction="<?php echo strtolower($listDirn); ?>" data-nested="true"<?php endif; ?>> <?php foreach ($this->items as $i => $item) : $item->max_ordering = 0; $canEdit = $user->authorise('core.edit', 'com_content.article.' . $item->id); $canCheckin = $user->authorise('core.manage', 'com_checkin') || $item->checked_out == $userId || is_null($item->checked_out); $canEditOwn = $user->authorise('core.edit.own', 'com_content.article.' . $item->id) && $item->created_by == $userId; $canChange = $user->authorise('core.edit.state', 'com_content.article.' . $item->id) && $canCheckin; $canExecuteTransition = $user->authorise('core.execute.transition', 'com_content.article.' . $item->id); $canEditCat = $user->authorise('core.edit', 'com_content.category.' . $item->catid); $canEditOwnCat = $user->authorise('core.edit.own', 'com_content.category.' . $item->catid) && $item->category_uid == $userId; $canEditParCat = $user->authorise('core.edit', 'com_content.category.' . $item->parent_category_id); $canEditOwnParCat = $user->authorise('core.edit.own', 'com_content.category.' . $item->parent_category_id) && $item->parent_category_uid == $userId; // Transition button options $options = [ 'title' => Text::_($item->stage_title), 'tip_content' => Text::sprintf('JWORKFLOW', Text::_($item->workflow_title)), 'id' => 'workflow-' . $item->id, 'task' => 'articles.runTransition', 'disabled' => !$canExecuteTransition, ]; if ($canExecuteTransition) { $transitions = ContentHelper::filterTransitions($this->transitions, (int) $item->stage_id, (int) $item->workflow_id); $transition_ids = ArrayHelper::getColumn($transitions, 'value'); $transition_ids = ArrayHelper::toInteger($transition_ids); $dataTransitionsAttribute = 'data-transitions="' . implode(',', $transition_ids) . '"'; $options = array_merge($options, ['transitions' => $transitions]); } ?> <tr class="row<?php echo $i % 2; ?>" data-draggable-group="<?php echo $item->catid; ?>" <?php echo $dataTransitionsAttribute ?? '' ?> > <td class="text-center"> <?php echo HTMLHelper::_('grid.id', $i, $item->id, false, 'cid', 'cb', $item->title); ?> </td> <td class="text-center d-none d-md-table-cell"> <?php $iconClass = ''; if (!$canChange) { $iconClass = ' inactive'; } elseif (!$saveOrder) { $iconClass = ' inactive" title="' . Text::_('JORDERINGDISABLED'); } ?> <span class="sortable-handler<?php echo $iconClass ?>"> <span class="icon-ellipsis-v" aria-hidden="true"></span> </span> <?php if ($canChange && $saveOrder) : ?> <input type="text" name="order[]" size="5" value="<?php echo $item->ordering; ?>" class="width-20 text-area-order hidden"> <?php endif; ?> </td> <?php if ($workflow_enabled) : ?> <td class="article-stage text-center"> <?php echo (new TransitionButton($options)) ->render(0, $i); ?> <div class="small"> <?php echo Text::_($item->stage_title); ?> </div> </td> <?php endif; ?> <td class="text-center d-none d-md-table-cell"> <?php $options = [ 'task_prefix' => 'articles.', 'disabled' => $workflow_featured || !$canChange, 'id' => 'featured-' . $item->id ]; echo (new FeaturedButton()) ->render((int) $item->featured, $i, $options, $item->featured_up, $item->featured_down); ?> </td> <td class="article-status text-center"> <?php $options = [ 'task_prefix' => 'articles.', 'disabled' => $workflow_state || !$canChange, 'id' => 'state-' . $item->id, 'category_published' => $item->category_published ]; echo (new PublishedButton())->render((int) $item->state, $i, $options, $item->publish_up, $item->publish_down); ?> </td> <th scope="row" class="has-context"> <div class="break-word"> <?php if ($item->checked_out) : ?> <?php echo HTMLHelper::_('jgrid.checkedout', $i, $item->editor, $item->checked_out_time, 'articles.', $canCheckin); ?> <?php endif; ?> <?php if ($canEdit || $canEditOwn) : ?> <a href="<?php echo Route::_('index.php?option=com_content&task=article.edit&id=' . $item->id); ?>" title="<?php echo Text::_('JACTION_EDIT'); ?> <?php echo $this->escape($item->title); ?>"> <?php echo $this->escape($item->title); ?></a> <?php else : ?> <span title="<?php echo Text::sprintf('JFIELD_ALIAS_LABEL', $this->escape($item->alias)); ?>"><?php echo $this->escape($item->title); ?></span> <?php endif; ?> <div class="small break-word"> <?php if (empty($item->note)) : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS', $this->escape($item->alias)); ?> <?php else : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS_NOTE', $this->escape($item->alias), $this->escape($item->note)); ?> <?php endif; ?> </div> <div class="small"> <?php $ParentCatUrl = Route::_('index.php?option=com_categories&task=category.edit&id=' . $item->parent_category_id . '&extension=com_content'); $CurrentCatUrl = Route::_('index.php?option=com_categories&task=category.edit&id=' . $item->catid . '&extension=com_content'); $EditCatTxt = Text::_('COM_CONTENT_EDIT_CATEGORY'); echo Text::_('JCATEGORY') . ': '; if ($item->category_level != '1') : if ($item->parent_category_level != '1') : echo ' » '; endif; endif; if ($this->getLanguage()->isRtl()) { if ($canEditCat || $canEditOwnCat) : echo '<a href="' . $CurrentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->category_title); if ($canEditCat || $canEditOwnCat) : echo '</a>'; endif; if ($item->category_level != '1') : echo ' « '; if ($canEditParCat || $canEditOwnParCat) : echo '<a href="' . $ParentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->parent_category_title); if ($canEditParCat || $canEditOwnParCat) : echo '</a>'; endif; endif; } else { if ($item->category_level != '1') : if ($canEditParCat || $canEditOwnParCat) : echo '<a href="' . $ParentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->parent_category_title); if ($canEditParCat || $canEditOwnParCat) : echo '</a>'; endif; echo ' » '; endif; if ($canEditCat || $canEditOwnCat) : echo '<a href="' . $CurrentCatUrl . '" title="' . $EditCatTxt . '">'; endif; echo $this->escape($item->category_title); if ($canEditCat || $canEditOwnCat) : echo '</a>'; endif; } if ($item->category_published < '1') : echo $item->category_published == '0' ? ' (' . Text::_('JUNPUBLISHED') . ')' : ' (' . Text::_('JTRASHED') . ')'; endif; ?> </div> </div> </th> <td class="small d-none d-md-table-cell"> <?php echo $this->escape($item->access_level); ?> </td> <td class="small d-none d-md-table-cell"> <?php if ((int) $item->created_by != 0) : ?> <a href="<?php echo Route::_('index.php?option=com_users&task=user.edit&id=' . (int) $item->created_by); ?>"> <?php echo $this->escape($item->author_name); ?> </a> <?php else : ?> <?php echo Text::_('JNONE'); ?> <?php endif; ?> <?php if ($item->created_by_alias) : ?> <div class="smallsub"><?php echo Text::sprintf('JGLOBAL_LIST_ALIAS', $this->escape($item->created_by_alias)); ?></div> <?php endif; ?> </td> <?php if ($assoc) : ?> <td class="d-none d-md-table-cell"> <?php if ($item->association) : ?> <?php echo HTMLHelper::_('contentadministrator.association', $item->id); ?> <?php endif; ?> </td> <?php endif; ?> <?php if (Multilanguage::isEnabled()) : ?> <td class="small d-none d-md-table-cell"> <?php echo LayoutHelper::render('joomla.content.language', $item); ?> </td> <?php endif; ?> <td class="small d-none d-md-table-cell text-center"> <?php $date = $item->{$orderingColumn}; echo $date > 0 ? HTMLHelper::_('date', $date, Text::_('DATE_FORMAT_LC4')) : '-'; ?> </td> <?php if ($this->hits) : ?> <td class="d-none d-lg-table-cell text-center"> <span class="badge bg-info"> <?php echo (int) $item->hits; ?> </span> </td> <?php endif; ?> <?php if ($this->vote) : ?> <td class="d-none d-md-table-cell text-center"> <span class="badge bg-success"> <?php echo (int) $item->rating_count; ?> </span> </td> <td class="d-none d-md-table-cell text-center"> <span class="badge bg-warning text-dark"> <?php echo (int) $item->rating; ?> </span> </td> <?php endif; ?> <td class="d-none d-lg-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php // Load the batch processing form. ?> <?php if ( $user->authorise('core.create', 'com_content') && $user->authorise('core.edit', 'com_content') && $user->authorise('core.edit.state', 'com_content') ) : ?> <?php echo HTMLHelper::_( 'bootstrap.renderModal', 'collapseModal', [ 'title' => Text::_('COM_CONTENT_BATCH_OPTIONS'), 'footer' => $this->loadTemplate('batch_footer'), ], $this->loadTemplate('batch_body') ); ?> <?php endif; ?> <?php endif; ?> <?php if ($workflow_enabled) : ?> <input type="hidden" name="transition_id" value=""> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <?php echo HTMLHelper::_('form.token'); ?> </div> </div> </div> </form> PKBA#]f��� � .components/com_content/tmpl/articles/modal.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Session\Session; use Joomla\Component\Content\Site\Helper\RouteHelper; $app = Factory::getApplication(); if ($app->isClient('site')) { Session::checkToken('get') or die(Text::_('JINVALID_TOKEN')); } /** @var Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = $this->document->getWebAssetManager(); $wa->useScript('core') ->useScript('multiselect') ->useScript('com_content.admin-articles-modal'); $function = $app->getInput()->getCmd('function', 'jSelectArticle'); $editor = $app->getInput()->getCmd('editor', ''); $listOrder = $this->escape($this->state->get('list.ordering')); $listDirn = $this->escape($this->state->get('list.direction')); $onclick = $this->escape($function); $multilang = Multilanguage::isEnabled(); if (!empty($editor)) { // This view is used also in com_menus. Load the xtd script only if the editor is set! $this->document->addScriptOptions('xtd-articles', ['editor' => $editor]); $onclick = "jSelectArticle"; } ?> <div class="container-popup"> <form action="<?php echo Route::_('index.php?option=com_content&view=articles&layout=modal&tmpl=component&function=' . $function . '&' . Session::getFormToken() . '=1&editor=' . $editor); ?>" method="post" name="adminForm" id="adminForm"> <?php echo LayoutHelper::render('joomla.searchtools.default', ['view' => $this]); ?> <?php if (empty($this->items)) : ?> <div class="alert alert-info"> <span class="icon-info-circle" aria-hidden="true"></span><span class="visually-hidden"><?php echo Text::_('INFO'); ?></span> <?php echo Text::_('JGLOBAL_NO_MATCHING_RESULTS'); ?> </div> <?php else : ?> <table class="table table-sm"> <caption class="visually-hidden"> <?php echo Text::_('COM_CONTENT_ARTICLES_TABLE_CAPTION'); ?>, <span id="orderedBy"><?php echo Text::_('JGLOBAL_SORTED_BY'); ?> </span>, <span id="filteredBy"><?php echo Text::_('JGLOBAL_FILTERED_BY'); ?></span> </caption> <thead> <tr> <th scope="col" class="w-1 text-center"> <?php echo HTMLHelper::_('searchtools.sort', 'JSTATUS', 'a.state', $listDirn, $listOrder); ?> </th> <th scope="col" class="title"> <?php echo HTMLHelper::_('searchtools.sort', 'JGLOBAL_TITLE', 'a.title', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ACCESS', 'a.access', $listDirn, $listOrder); ?> </th> <?php if ($multilang) : ?> <th scope="col" class="w-15"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_LANGUAGE', 'language', $listDirn, $listOrder); ?> </th> <?php endif; ?> <th scope="col" class="w-10 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JDATE', 'a.created', $listDirn, $listOrder); ?> </th> <th scope="col" class="w-1 d-none d-md-table-cell"> <?php echo HTMLHelper::_('searchtools.sort', 'JGRID_HEADING_ID', 'a.id', $listDirn, $listOrder); ?> </th> </tr> </thead> <tbody> <?php $iconStates = [ -2 => 'icon-trash', 0 => 'icon-unpublish', 1 => 'icon-publish', 2 => 'icon-archive', ]; ?> <?php foreach ($this->items as $i => $item) : ?> <?php if ($item->language && $multilang) { $tag = strlen($item->language); if ($tag == 5) { $lang = substr($item->language, 0, 2); } elseif ($tag == 6) { $lang = substr($item->language, 0, 3); } else { $lang = ''; } } elseif (!$multilang) { $lang = ''; } ?> <tr class="row<?php echo $i % 2; ?>"> <td class="text-center"> <span class="tbody-icon"> <span class="<?php echo $iconStates[$this->escape($item->state)]; ?>" aria-hidden="true"></span> </span> </td> <th scope="row"> <?php $attribs = 'data-function="' . $this->escape($onclick) . '"' . ' data-id="' . $item->id . '"' . ' data-title="' . $this->escape($item->title) . '"' . ' data-cat-id="' . $this->escape($item->catid) . '"' . ' data-uri="' . $this->escape(RouteHelper::getArticleRoute($item->id, $item->catid, $item->language)) . '"' . ' data-language="' . $this->escape($lang) . '"'; ?> <a class="select-link" href="javascript:void(0)" <?php echo $attribs; ?>> <?php echo $this->escape($item->title); ?> </a> <div class="small break-word"> <?php if (empty($item->note)) : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS', $this->escape($item->alias)); ?> <?php else : ?> <?php echo Text::sprintf('JGLOBAL_LIST_ALIAS_NOTE', $this->escape($item->alias), $this->escape($item->note)); ?> <?php endif; ?> </div> <div class="small"> <?php echo Text::_('JCATEGORY') . ': ' . $this->escape($item->category_title); ?> </div> </th> <td class="small d-none d-md-table-cell"> <?php echo $this->escape($item->access_level); ?> </td> <?php if ($multilang) : ?> <td class="small"> <?php echo LayoutHelper::render('joomla.content.language', $item); ?> </td> <?php endif; ?> <td class="small d-none d-md-table-cell"> <?php echo HTMLHelper::_('date', $item->created, Text::_('DATE_FORMAT_LC4')); ?> </td> <td class="small d-none d-md-table-cell"> <?php echo (int) $item->id; ?> </td> </tr> <?php endforeach; ?> </tbody> </table> <?php // load the pagination. ?> <?php echo $this->pagination->getListFooter(); ?> <?php endif; ?> <input type="hidden" name="task" value=""> <input type="hidden" name="boxchecked" value="0"> <input type="hidden" name="forcedLanguage" value="<?php echo $app->getInput()->get('forcedLanguage', '', 'CMD'); ?>"> <?php echo HTMLHelper::_('form.token'); ?> </form> </div> PKBA#]p��3components/com_content/tmpl/articles/emptystate.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2021 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Layout\LayoutHelper; $displayData = [ 'textPrefix' => 'COM_CONTENT', 'formURL' => 'index.php?option=com_content&view=articles', 'helpURL' => 'https://docs.joomla.org/Special:MyLanguage/Adding_a_new_article', 'icon' => 'icon-copy article', ]; $user = Factory::getApplication()->getIdentity(); if ($user->authorise('core.create', 'com_content') || count($user->getAuthorisedCategories('com_content', 'core.create')) > 0) { $displayData['createURL'] = 'index.php?option=com_content&task=article.add'; } echo LayoutHelper::render('joomla.content.emptystate', $displayData); PKBA#]ЊP�!components/com_content/access.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <access component="com_content"> <section name="component"> <action name="core.admin" title="JACTION_ADMIN" /> <action name="core.options" title="JACTION_OPTIONS" /> <action name="core.manage" title="JACTION_MANAGE" /> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> <action name="core.manage.workflow" title="JACTION_MANAGEWORKFLOW" /> <action name="core.execute.transition" title="JACTION_EXECUTETRANSITION" /> </section> <section name="category"> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> </section> <section name="article"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> </section> <section name="fieldgroup"> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> </section> <section name="field"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.value" title="JACTION_EDITVALUE" /> </section> <section name="workflow"> <action name="core.create" title="JACTION_CREATE" /> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.edit.own" title="JACTION_EDITOWN" /> <action name="core.execute.transition" title="JACTION_EXECUTETRANSITION" /> </section> <section name="transition"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> <action name="core.execute.transition" title="JACTION_EXECUTETRANSITION" /> </section> <section name="stage"> <action name="core.delete" title="JACTION_DELETE" /> <action name="core.edit" title="JACTION_EDIT" /> <action name="core.edit.state" title="JACTION_EDITSTATE" /> </section> </access> PKBA#]>�g|�g�g!components/com_content/config.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <config> <help key="Articles:_Options"/> <inlinehelp button="show"/> <fieldset name="articles" label="JGLOBAL_ARTICLES" description="COM_CONTENT_CONFIG_ARTICLE_SETTINGS_DESC" > <field name="article_layout" type="componentlayout" label="JGLOBAL_FIELD_LAYOUT_LABEL" class="form-select" menuitems="true" extension="com_content" view="article" /> <field name="show_title" type="radio" label="JGLOBAL_SHOW_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_titles" type="radio" label="JGLOBAL_LINKED_TITLES_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_title:1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_intro" type="radio" label="JGLOBAL_SHOW_INTRO_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="info_block_position" type="list" label="COM_CONTENT_FIELD_INFOBLOCK_POSITION_LABEL" default="0" validate="options" > <option value="0">COM_CONTENT_FIELD_OPTION_ABOVE</option> <option value="1">COM_CONTENT_FIELD_OPTION_BELOW</option> <option value="2">COM_CONTENT_FIELD_OPTION_SPLIT</option> </field> <field name="info_block_show_title" type="radio" label="COM_CONTENT_FIELD_INFOBLOCK_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_category" type="radio" label="JGLOBAL_SHOW_CATEGORY_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_category" type="radio" label="JGLOBAL_LINK_CATEGORY_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_category:1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_parent_category" type="radio" label="JGLOBAL_SHOW_PARENT_CATEGORY_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_parent_category" type="radio" label="JGLOBAL_LINK_PARENT_CATEGORY_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_parent_category:1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="spacer1" type="spacer" hr="true" /> <field name="show_associations" type="radio" label="JGLOBAL_SHOW_ASSOCIATIONS_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="flags" type="radio" label="JGLOBAL_SHOW_FLAG_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_associations:1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="spacer3" type="spacer" hr="true" /> <field name="show_author" type="radio" label="JGLOBAL_SHOW_AUTHOR_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_author" type="radio" label="JGLOBAL_LINK_AUTHOR_LABEL" layout="joomla.form.field.radio.switcher" default="0" showon="show_author:1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_create_date" type="radio" label="JGLOBAL_SHOW_CREATE_DATE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_modify_date" type="radio" label="JGLOBAL_SHOW_MODIFY_DATE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_publish_date" type="radio" label="JGLOBAL_SHOW_PUBLISH_DATE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_item_navigation" type="radio" label="JGLOBAL_SHOW_NAVIGATION_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_vote" type="voteradio" label="JGLOBAL_SHOW_VOTE_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_readmore" type="radio" label="JGLOBAL_SHOW_READMORE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_readmore_title" type="radio" label="JGLOBAL_SHOW_READMORE_TITLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_readmore:1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="readmore_limit" type="number" label="JGLOBAL_SHOW_READMORE_LIMIT_LABEL" filter="integer" validate="number" min="0" default="100" showon="show_readmore:1[AND]show_readmore_title:1" /> <field name="show_tags" type="radio" label="COM_CONTENT_FIELD_SHOW_TAGS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="spacer2" type="spacer" hr="true" /> <field name="record_hits" type="radio" label="JGLOBAL_RECORD_HITS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_hits" type="radio" label="JGLOBAL_SHOW_HITS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_noauth" type="radio" label="JGLOBAL_SHOW_UNAUTH_LINKS_LABEL" description="JGLOBAL_SHOW_UNAUTH_LINKS_DESC" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="urls_position" type="list" label="COM_CONTENT_FIELD_URLSPOSITION_LABEL" default="0" filter="integer" validate="options" > <option value="0">COM_CONTENT_FIELD_OPTION_ABOVE</option> <option value="1">COM_CONTENT_FIELD_OPTION_BELOW</option> <option value="-1">JHIDE</option> </field> </fieldset> <fieldset name="editinglayout" label="COM_CONTENT_EDITING_LAYOUT" description="COM_CONTENT_CONFIG_EDITOR_LAYOUT" > <field name="captcha" type="plugins" label="COM_CONTENT_FIELD_CAPTCHA_LABEL" folder="captcha" filter="cmd" useglobal="true" > <option value="0">JOPTION_DO_NOT_USE</option> </field> <field name="show_publishing_options" type="radio" label="COM_CONTENT_SHOW_PUBLISHING_OPTIONS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_article_options" type="radio" label="COM_CONTENT_SHOW_ARTICLE_OPTIONS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_configure_edit_options" type="radio" label="COM_CONTENT_SHOW_CONFIGURE_EDIT_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_permissions" type="radio" label="COM_CONTENT_SHOW_PERMISSIONS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_associations_edit" type="radio" label="COM_CONTENT_SHOW_ASSOCIATIONS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="save_history" type="radio" label="JGLOBAL_SAVE_HISTORY_OPTIONS_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="history_limit" type="number" label="JGLOBAL_HISTORY_LIMIT_OPTIONS_LABEL" filter="integer" validate="number" min="0" default="10" showon="save_history:1" /> <field name="show_urls_images_frontend" type="radio" label="COM_CONTENT_SHOW_IMAGES_URLS_FRONT_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_urls_images_backend" type="radio" label="COM_CONTENT_SHOW_IMAGES_URLS_BACK_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="spacer3" type="spacer" hr="true" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" /> <field name="targeta" type="list" label="COM_CONTENT_URL_FIELD_A_BROWSERNAV_LABEL" default="Parent" filter="int" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> <field name="targetb" type="list" label="COM_CONTENT_URL_FIELD_B_BROWSERNAV_LABEL" default="Parent" filter="int" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> <field name="targetc" type="list" label="COM_CONTENT_URL_FIELD_C_BROWSERNAV_LABEL" default="Parent" filter="int" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> <field name="spacer4" type="spacer" hr="true" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" /> <field name="float_intro" type="text" label="COM_CONTENT_IMAGE_INTRO_CLASS_LABEL" validate="CssIdentifier" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" /> <field name="float_fulltext" type="text" label="COM_CONTENT_IMAGE_FULLTEXT_CLASS_LABEL" validate="CssIdentifier" showon="show_urls_images_backend:1[OR]show_urls_images_frontend:1" /> </fieldset> <fieldset name="category" label="JCATEGORY" description="COM_CONTENT_CONFIG_CATEGORY_SETTINGS_DESC" > <field name="category_layout" type="componentlayout" label="JGLOBAL_FIELD_LAYOUT_LABEL" class="form-select" menuitems="true" extension="com_content" view="category" /> <field name="show_category_title" type="radio" label="JGLOBAL_SHOW_CATEGORY_TITLE" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_description" type="radio" label="JGLOBAL_SHOW_CATEGORY_DESCRIPTION_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_description_image" type="radio" label="JGLOBAL_SHOW_CATEGORY_IMAGE_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="maxLevel" type="list" label="JGLOBAL_MAXIMUM_CATEGORY_LEVELS_LABEL" default="-1" validate="options" > <option value="0">JNONE</option> <option value="-1">JALL</option> <option value="1">J1</option> <option value="2">J2</option> <option value="3">J3</option> <option value="4">J4</option> <option value="5">J5</option> </field> <field name="show_empty_categories" type="radio" label="JGLOBAL_SHOW_EMPTY_CATEGORIES_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_no_articles" type="radio" label="COM_CONTENT_NO_ARTICLES_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_category_heading_title_text" type="radio" label="JGLOBAL_SHOW_SUBCATEGORY_HEADING" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_subcat_desc" type="radio" label="JGLOBAL_SHOW_SUBCATEGORIES_DESCRIPTION_LABEL" default="1" layout="joomla.form.field.radio.switcher" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_cat_num_articles" type="radio" label="COM_CONTENT_NUMBER_CATEGORY_ITEMS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_cat_tags" type="radio" label="COM_CONTENT_FIELD_SHOW_CAT_TAGS_LABEL" default="1" layout="joomla.form.field.radio.switcher" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="categories" label="JCATEGORIES" description="COM_CONTENT_CONFIG_CATEGORIES_SETTINGS_DESC" > <field name="show_base_description" type="radio" label="JGLOBAL_FIELD_SHOW_BASE_DESCRIPTION_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="maxLevelcat" type="list" label="JGLOBAL_MAXIMUM_CATEGORY_LEVELS_LABEL" default="-1" validate="options" > <option value="0">JNONE</option> <option value="-1">JALL</option> <option value="1">J1</option> <option value="2">J2</option> <option value="3">J3</option> <option value="4">J4</option> <option value="5">J5</option> </field> <field name="show_empty_categories_cat" type="radio" label="JGLOBAL_SHOW_EMPTY_CATEGORIES_LABEL" layout="joomla.form.field.radio.switcher" default="0" showon="maxLevelcat:-1,1,2,3,4,5" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_subcat_desc_cat" type="radio" label="JGLOBAL_SHOW_SUBCATEGORIES_DESCRIPTION_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="maxLevelcat:-1,1,2,3,4,5" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_cat_num_articles_cat" type="radio" label="COM_CONTENT_NUMBER_CATEGORY_ITEMS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="blog_default_parameters" label="COM_CONTENT_CONFIG_BLOG_SETTINGS_LABEL" description="COM_CONTENT_CONFIG_BLOG_SETTINGS_DESC" > <field name="num_leading_articles" type="number" label="JGLOBAL_NUM_LEADING_ARTICLES_LABEL" filter="integer" validate="number" min="0" default="1" /> <field name="blog_class_leading" type="text" label="JGLOBAL_BLOG_CLASS_LEADING" validate="CssIdentifier" /> <field name="num_intro_articles" type="number" label="JGLOBAL_NUM_INTRO_ARTICLES_LABEL" filter="integer" validate="number" min="0" default="4" /> <field name="blog_class" type="text" label="JGLOBAL_BLOG_CLASS" description="JGLOBAL_BLOG_CLASS_NOTE_DESC" validate="CssIdentifier" /> <field name="num_columns" type="number" label="JGLOBAL_NUM_COLUMNS_LABEL" filter="integer" validate="number" min="0" default="1" /> <field name="multi_column_order" type="list" label="JGLOBAL_MULTI_COLUMN_ORDER_LABEL" default="0" validate="options" > <option value="0">JGLOBAL_BLOG_DOWN_OPTION</option> <option value="1">JGLOBAL_BLOG_ACROSS_OPTION</option> </field> <field name="num_links" type="number" label="JGLOBAL_NUM_LINKS_LABEL" filter="integer" validate="number" min="0" default="4" /> <field name="show_subcategory_content" type="list" label="JGLOBAL_SHOW_SUBCATEGORY_CONTENT_LABEL" default="0" validate="options" > <option value="0">JNONE</option> <option value="-1">JALL</option> <option value="1">J1</option> <option value="2">J2</option> <option value="3">J3</option> <option value="4">J4</option> <option value="5">J5</option> </field> <field name="link_intro_image" type="radio" label="JGLOBAL_LINKED_INTRO_IMAGE_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="list_default_parameters" label="JGLOBAL_LIST_LAYOUT_OPTIONS" description="COM_CONTENT_CONFIG_LIST_SETTINGS_DESC" addfieldprefix="Joomla\Component\Content\Administrator\Field" > <field name="show_pagination_limit" type="radio" label="JGLOBAL_DISPLAY_SELECT_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="filter_field" type="list" label="JGLOBAL_FILTER_FIELD_LABEL" default="hide" validate="options" > <option value="hide">JHIDE</option> <option value="title">JGLOBAL_TITLE</option> <option value="author">JAUTHOR</option> <option value="hits" requires="hits">JGLOBAL_HITS</option> <option value="tag">JTAG</option> <option value="month">JMONTH_PUBLISHED</option> </field> <field name="show_headings" type="radio" label="JGLOBAL_SHOW_HEADINGS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="list_show_date" type="list" label="JGLOBAL_SHOW_DATE_LABEL" default="0" validate="options" > <option value="0">JHIDE</option> <option value="created">JGLOBAL_CREATED</option> <option value="modified">JGLOBAL_MODIFIED</option> <option value="published">JPUBLISHED</option> </field> <field name="date_format" type="text" label="JGLOBAL_DATE_FORMAT_LABEL" showon="list_show_date:created,modified,published" /> <field name="list_show_hits" type="radio" label="JGLOBAL_LIST_HITS_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="list_show_author" type="radio" label="JGLOBAL_LIST_AUTHOR_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="display_num" type="list" label="JGLOBAL_NUMBER_ITEMS_LIST_LABEL" default="10" validate="options" > <option value="5">J5</option> <option value="10">J10</option> <option value="15">J15</option> <option value="20">J20</option> <option value="25">J25</option> <option value="30">J30</option> <option value="50">J50</option> <option value="100">J100</option> <option value="0">JALL</option> </field> <field name="list_show_votes" type="voteradio" label="JGLOBAL_LIST_VOTES_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="list_show_ratings" type="voteradio" label="JGLOBAL_LIST_RATINGS_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="shared" label="COM_CONTENT_SHARED_LABEL" description="COM_CONTENT_SHARED_DESC" > <field name="orderby_pri" type="list" label="JGLOBAL_CATEGORY_ORDER_LABEL" default="none" validate="options" > <option value="none">JGLOBAL_NO_ORDER</option> <option value="alpha">JGLOBAL_TITLE_ALPHABETICAL</option> <option value="ralpha">JGLOBAL_TITLE_REVERSE_ALPHABETICAL</option> <option value="order">JGLOBAL_CATEGORY_MANAGER_ORDER</option> </field> <field name="orderby_sec" type="list" label="JGLOBAL_ARTICLE_ORDER_LABEL" default="rdate" validate="options" > <option value="rdate">JGLOBAL_MOST_RECENT_FIRST</option> <option value="date">JGLOBAL_OLDEST_FIRST</option> <option value="alpha">JGLOBAL_TITLE_ALPHABETICAL</option> <option value="ralpha">JGLOBAL_TITLE_REVERSE_ALPHABETICAL</option> <option value="author">JGLOBAL_AUTHOR_ALPHABETICAL</option> <option value="rauthor">JGLOBAL_AUTHOR_REVERSE_ALPHABETICAL</option> <option value="hits" requires="hits">JGLOBAL_MOST_HITS</option> <option value="rhits" requires="hits">JGLOBAL_LEAST_HITS</option> <option value="order">JGLOBAL_ARTICLE_MANAGER_ORDER</option> <option value="rorder">JGLOBAL_ARTICLE_MANAGER_REVERSE_ORDER</option> <option value="vote" requires="vote">JGLOBAL_VOTES_DESC</option> <option value="rvote" requires="vote">JGLOBAL_VOTES_ASC</option> <option value="rank" requires="vote">JGLOBAL_RATINGS_DESC</option> <option value="rrank" requires="vote">JGLOBAL_RATINGS_ASC</option> </field> <field name="order_date" type="list" label="JGLOBAL_ORDERING_DATE_LABEL" default="published" validate="options" > <option value="created">JGLOBAL_CREATED</option> <option value="modified">JGLOBAL_MODIFIED</option> <option value="published">JPUBLISHED</option> </field> <field name="show_pagination" type="list" label="JGLOBAL_PAGINATION_LABEL" default="2" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> <option value="2">JGLOBAL_AUTO</option> </field> <field name="show_pagination_results" type="radio" label="JGLOBAL_PAGINATION_RESULTS_LABEL" layout="joomla.form.field.radio.switcher" default="1" showon="show_pagination:1,2" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_featured" type="list" label="JGLOBAL_SHOW_FEATURED_ARTICLES_LABEL" default="show" validate="options" > <option value="show">JSHOW</option> <option value="hide">JHIDE</option> <option value="only">JONLY</option> </field> </fieldset> <fieldset name="integration" label="JGLOBAL_INTEGRATION_LABEL" description="COM_CONTENT_CONFIG_INTEGRATION_SETTINGS_DESC" > <fieldset name="integration_newsfeed" label="JGLOBAL_FEED_TITLE" > <field name="show_feed_link" type="radio" label="JGLOBAL_SHOW_FEED_LINK_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="feed_summary" type="list" label="JGLOBAL_FEED_SUMMARY_LABEL" default="0" showon="show_feed_link:1" validate="options" > <option value="0">JGLOBAL_INTRO_TEXT</option> <option value="1">JGLOBAL_FULL_TEXT</option> </field> <field name="feed_show_readmore" type="radio" label="JGLOBAL_FEED_SHOW_READMORE_LABEL" description="JGLOBAL_FEED_SHOW_READMORE_DESC" layout="joomla.form.field.radio.switcher" default="0" showon="show_feed_link:1[AND]feed_summary:0" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="integration_sef" label="JGLOBAL_SEF_TITLE" > <field name="sef_ids" type="radio" layout="joomla.form.field.radio.switcher" default="0" label="JGLOBAL_SEF_NOIDS_LABEL" filter="integer" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="integration_customfields" label="JGLOBAL_FIELDS_TITLE" > <field name="custom_fields_enable" type="radio" label="JGLOBAL_CUSTOM_FIELDS_ENABLE_LABEL" layout="joomla.form.field.radio.switcher" default="1" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="integration_workflows" label="JWORKFLOW_TITLE" > <field name="workflow_enabled" type="radio" label="JWORKFLOW_ENABLED_LABEL" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> </fieldset> <fieldset name="permissions" label="JCONFIG_PERMISSIONS_LABEL" description="JCONFIG_PERMISSIONS_DESC" > <field name="rules" type="rules" label="JCONFIG_PERMISSIONS_LABEL" validate="rules" filter="rules" component="com_content" section="component" /> </fieldset> </config> PKBA#]���3��0components/com_content/forms/filter_articles.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_CONTENT_FILTER_SEARCH_LABEL" description="COM_CONTENT_FILTER_SEARCH_DESC" hint="JSEARCH_FILTER" /> <field name="featured" type="list" label="JFEATURED" class="js-select-submit-on-change" default="" validate="options" > <option value="">COM_CONTENT_SELECT_FEATURED</option> <option value="0">COM_CONTENT_FILTER_FEATURED_NO</option> <option value="1">COM_CONTENT_FILTER_FEATURED_YES</option> </field> <field name="stage" type="workflowstage" label="JOPTION_SELECT_STAGE" class="js-select-submit-on-change" activeonly="true" extension="com_content.article" > <option value="">JOPTION_SELECT_STAGE</option> </field> <field name="published" type="status" label="JOPTION_SELECT_PUBLISHED" class="js-select-submit-on-change" extension="com_content" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="category_id" type="category" label="JCATEGORY" multiple="true" extension="com_content" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_CATEGORY" class="js-select-submit-on-change" published="0,1,2" /> <field name="access" type="accesslevel" label="JGRID_HEADING_ACCESS" multiple="true" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_ACCESS" class="js-select-submit-on-change" /> <field name="author_id" type="author" label="JOPTION_SELECT_AUTHOR" multiple="true" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_AUTHOR" class="js-select-submit-on-change" > <option value="0">JNONE</option> <option value="by_me">COM_CONTENT_FILTER_AUTHORS_BY_ME</option> </field> <field name="language" type="contentlanguage" label="JGRID_HEADING_LANGUAGE" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> <field name="tag" type="tag" multiple="true" label="JTAG" hint="JOPTION_SELECT_TAG" mode="nested" custom="false" class="js-select-submit-on-change" /> <field name="level" type="integer" label="JGLOBAL_MAXLEVEL_LABEL" first="1" last="10" step="1" languages="*" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_MAX_LEVELS</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.id DESC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.featured ASC">JFEATURED_ASC</option> <option value="a.featured DESC">JFEATURED_DESC</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.title ASC">JGLOBAL_TITLE_ASC</option> <option value="a.title DESC">JGLOBAL_TITLE_DESC</option> <option value="category_title ASC">JCATEGORY_ASC</option> <option value="category_title DESC">JCATEGORY_DESC</option> <option value="a.access ASC">JGRID_HEADING_ACCESS_ASC</option> <option value="a.access DESC">JGRID_HEADING_ACCESS_DESC</option> <option value="a.created_by ASC">JAUTHOR_ASC</option> <option value="a.created_by DESC">JAUTHOR_DESC</option> <option value="association ASC" requires="associations">JASSOCIATIONS_ASC</option> <option value="association DESC" requires="associations">JASSOCIATIONS_DESC</option> <option value="language ASC" requires="multilanguage">JGRID_HEADING_LANGUAGE_ASC</option> <option value="language DESC" requires="multilanguage">JGRID_HEADING_LANGUAGE_DESC</option> <option value="a.created ASC">JDATE_ASC</option> <option value="a.created DESC">JDATE_DESC</option> <option value="a.modified ASC">COM_CONTENT_MODIFIED_ASC</option> <option value="a.modified DESC">COM_CONTENT_MODIFIED_DESC</option> <option value="a.publish_up ASC">COM_CONTENT_PUBLISH_UP_ASC</option> <option value="a.publish_up DESC">COM_CONTENT_PUBLISH_UP_DESC</option> <option value="a.publish_down ASC">COM_CONTENT_PUBLISH_DOWN_ASC</option> <option value="a.publish_down DESC">COM_CONTENT_PUBLISH_DOWN_DESC</option> <option value="a.hits ASC" requires="hits">JGLOBAL_HITS_ASC</option> <option value="a.hits DESC" requires="hits">JGLOBAL_HITS_DESC</option> <option value="rating_count ASC" requires="vote">JGLOBAL_VOTES_ASC</option> <option value="rating_count DESC" requires="vote">JGLOBAL_VOTES_DESC</option> <option value="rating ASC" requires="vote">JGLOBAL_RATINGS_ASC</option> <option value="rating DESC" requires="vote">JGLOBAL_RATINGS_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKBA#]����L�L(components/com_content/forms/article.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <config> <inlinehelp button="show"/> </config> <fieldset addfieldprefix="Joomla\Component\Content\Administrator\Field"> <field name="id" type="text" label="JGLOBAL_FIELD_ID_LABEL" class="readonly" default="0" readonly="true" /> <field name="asset_id" type="hidden" filter="unset" /> <field name="title" type="text" label="JGLOBAL_TITLE" required="true" maxlength="255" /> <field name="alias" type="text" label="JFIELD_ALIAS_LABEL" description="JFIELD_ALIAS_DESC" hint="JFIELD_ALIAS_PLACEHOLDER" /> <field name="note" type="text" label="COM_CONTENT_FIELD_NOTE_LABEL" maxlength="255" /> <field name="version_note" type="text" label="JGLOBAL_FIELD_VERSION_NOTE_LABEL" maxlength="255" /> <field name="articletext" type="editor" label="COM_CONTENT_FIELD_ARTICLETEXT_LABEL" filter="JComponentHelper::filterText" buttons="true" /> <field name="catid" type="categoryedit" label="JCATEGORY" addfieldprefix="Joomla\Component\Categories\Administrator\Field" required="true" default="" /> <field name="state" type="list" label="JSTATUS" class="form-select-color-state" default="1" validate="options" > <option value="1">JPUBLISHED</option> <option value="0">JUNPUBLISHED</option> <option value="2">JARCHIVED</option> <option value="-2">JTRASHED</option> </field> <field name="tags" type="tag" label="JTAG" multiple="true" /> <field name="created" type="calendar" label="COM_CONTENT_FIELD_CREATED_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="created_by" type="user" label="COM_CONTENT_FIELD_CREATED_BY_LABEL" validate="UserId" /> <field name="created_by_alias" type="text" label="COM_CONTENT_FIELD_CREATED_BY_ALIAS_LABEL" /> <field name="modified" type="calendar" label="JGLOBAL_FIELD_MODIFIED_LABEL" class="form-control" translateformat="true" showtime="true" readonly="true" filter="user_utc" /> <field name="modified_by" type="user" label="JGLOBAL_FIELD_MODIFIED_BY_LABEL" class="readonly" readonly="true" filter="unset" validate="UserId" /> <field name="checked_out" type="hidden" filter="unset" /> <field name="checked_out_time" type="hidden" filter="unset" /> <field name="publish_up" type="calendar" label="COM_CONTENT_FIELD_PUBLISH_UP_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="publish_down" type="calendar" label="COM_CONTENT_FIELD_PUBLISH_DOWN_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="featured_up" type="calendar" label="COM_CONTENT_FIELD_FEATURED_UP_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="featured_down" type="calendar" label="COM_CONTENT_FIELD_FEATURED_DOWN_LABEL" translateformat="true" showtime="true" filter="user_utc" /> <field name="version" type="text" label="COM_CONTENT_FIELD_VERSION_LABEL" class="readonly" readonly="true" filter="unset" /> <field name="ordering" type="text" label="JFIELD_ORDERING_LABEL" default="0" /> <field name="metakey" type="textarea" label="JFIELD_META_KEYWORDS_LABEL" rows="3" cols="30" /> <field name="metadesc" type="textarea" label="JFIELD_META_DESCRIPTION_LABEL" rows="3" cols="30" maxlength="160" charcounter="true" /> <field name="access" type="accesslevel" label="JFIELD_ACCESS_LABEL" filter="UINT" validate="options" /> <field name="hits" type="text" label="JGLOBAL_HITS" class="readonly" readonly="true" filter="unset" default="0" /> <field name="language" type="contentlanguage" label="JFIELD_LANGUAGE_LABEL" > <option value="*">JALL</option> </field> <field name="featured" type="radio" label="JFEATURED" layout="joomla.form.field.radio.switcher" default="0" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="rules" type="rules" label="JFIELD_RULES_LABEL" translate_label="false" filter="rules" component="com_content" section="article" validate="rules" /> </fieldset> <fields name="attribs" label="COM_CONTENT_ATTRIBS_FIELDSET_LABEL"> <fieldset name="attribs" label="COM_CONTENT_ATTRIBS_FIELDSET_LABEL"> <fieldset name="basic" label="JFIELD_ALT_LAYOUT_LABEL"> <field name="article_layout" type="componentlayout" label="JFIELD_ALT_LAYOUT_LABEL" class="form-select" useglobal="true" extension="com_content" view="article" /> <field name="show_title" type="list" label="JGLOBAL_SHOW_TITLE_LABEL" useglobal="true" validate="options" > <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field> <field name="link_titles" type="list" label="JGLOBAL_LINKED_TITLES_LABEL" useglobal="true" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_tags" type="list" label="COM_CONTENT_FIELD_SHOW_TAGS_LABEL" class="form-select-color" useglobal="true" validate="options" > <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field> <field name="show_intro" type="list" label="JGLOBAL_SHOW_INTRO_LABEL" class="form-select-color" useglobal="true" validate="options" > <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field> <field name="info_block_position" type="list" label="COM_CONTENT_FIELD_INFOBLOCK_POSITION_LABEL" useglobal="true" validate="options" > <option value="0">COM_CONTENT_FIELD_OPTION_ABOVE</option> <option value="1">COM_CONTENT_FIELD_OPTION_BELOW</option> <option value="2">COM_CONTENT_FIELD_OPTION_SPLIT</option> </field> <field name="info_block_show_title" type="list" label="COM_CONTENT_FIELD_INFOBLOCK_TITLE_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="category" label="JCATEGORY"> <field name="show_category" type="list" label="JGLOBAL_SHOW_CATEGORY_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_category" type="list" label="JGLOBAL_LINK_CATEGORY_LABEL" useglobal="true" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_parent_category" type="list" label="JGLOBAL_SHOW_PARENT_CATEGORY_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_parent_category" type="list" label="JGLOBAL_LINK_PARENT_CATEGORY_LABEL" useglobal="true" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="frontendassociations" label="JGLOBAL_FIELDSET_ASSOCIATIONS"> <field name="show_associations" type="assoc" label="JGLOBAL_SHOW_ASSOCIATIONS_LABEL" useglobal="true" > <option value="1">JSHOW</option> <option value="0">JHIDE</option> </field> <field name="flags" type="list" label="JGLOBAL_SHOW_FLAG_LABEL" useglobal="true" showon="show_associations:1" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="author" label="JGLOBAL_SHOW_AUTHOR_LABEL"> <field name="show_author" type="list" label="JGLOBAL_SHOW_AUTHOR_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="link_author" type="list" label="JGLOBAL_LINK_AUTHOR_LABEL" useglobal="true" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="date" label="JDATE"> <field name="show_create_date" type="list" label="JGLOBAL_SHOW_CREATE_DATE_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_modify_date" type="list" label="JGLOBAL_SHOW_MODIFY_DATE_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_publish_date" type="list" label="JGLOBAL_SHOW_PUBLISH_DATE_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> </fieldset> <fieldset name="other" label="COM_CONTENT_OTHER_OPTIONS"> <field name="show_item_navigation" type="list" label="JGLOBAL_SHOW_NAVIGATION_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_vote" type="votelist" label="JGLOBAL_SHOW_VOTE_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_hits" type="list" label="JGLOBAL_SHOW_HITS_LABEL" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_noauth" type="list" label="JGLOBAL_SHOW_UNAUTH_LINKS_LABEL" description="JGLOBAL_SHOW_UNAUTH_LINKS_DESC" useglobal="true" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="urls_position" type="list" label="COM_CONTENT_FIELD_URLSPOSITION_LABEL" useglobal="true" filter="integer" validate="options" > <option value="0">COM_CONTENT_FIELD_OPTION_ABOVE</option> <option value="1">COM_CONTENT_FIELD_OPTION_BELOW</option> <option value="-1">JHIDE</option> </field> <field name="alternative_readmore" type="text" label="JFIELD_READMORE_LABEL" description="JFIELD_READMORE_DESC" /> <field name="article_page_title" type="text" label="COM_CONTENT_FIELD_BROWSER_PAGE_TITLE_LABEL" /> </fieldset> </fieldset> <fieldset name="editorConfig" label="COM_CONTENT_EDITORCONFIG_FIELDSET_LABEL"> <field name="show_publishing_options" type="list" label="COM_CONTENT_SHOW_PUBLISHING_OPTIONS_LABEL" default="" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_article_options" type="list" label="COM_CONTENT_SHOW_ARTICLE_OPTIONS_LABEL" default="" useglobal="true" validate="options" > <option value="0">JHIDE</option> <option value="1">JSHOW</option> </field> <field name="show_urls_images_backend" type="list" label="COM_CONTENT_SHOW_IMAGES_URLS_BACK_LABEL" useglobal="true" default="" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> <field name="show_urls_images_frontend" type="list" label="COM_CONTENT_SHOW_IMAGES_URLS_FRONT_LABEL" useglobal="true" default="" validate="options" > <option value="0">JNO</option> <option value="1">JYES</option> </field> </fieldset> <fieldset name="basic-limited" label="COM_CONTENT_ATTRIBS_FIELDSET_LABEL"> <field name="show_title" type="hidden" label="JGLOBAL_SHOW_TITLE_LABEL" /> <field name="link_titles" type="hidden" label="JGLOBAL_LINKED_TITLES_LABEL" /> <field name="show_intro" type="hidden" label="JGLOBAL_SHOW_INTRO_LABEL" /> <field name="show_category" type="hidden" label="JGLOBAL_SHOW_CATEGORY_LABEL" /> <field name="link_category" type="hidden" label="JGLOBAL_LINK_CATEGORY_LABEL" /> <field name="show_parent_category" type="hidden" label="JGLOBAL_SHOW_PARENT_CATEGORY_LABEL" /> <field name="link_parent_category" type="hidden" label="JGLOBAL_LINK_PARENT_CATEGORY_LABEL" /> <field name="show_author" type="hidden" label="JGLOBAL_SHOW_AUTHOR_LABEL" /> <field name="link_author" type="hidden" label="JGLOBAL_LINK_AUTHOR_LABEL" /> <field name="show_create_date" type="hidden" label="JGLOBAL_SHOW_CREATE_DATE_LABEL" /> <field name="show_modify_date" type="hidden" label="JGLOBAL_SHOW_MODIFY_DATE_LABEL" /> <field name="show_publish_date" type="hidden" label="JGLOBAL_SHOW_PUBLISH_DATE_LABEL" /> <field name="show_item_navigation" type="hidden" label="JGLOBAL_SHOW_NAVIGATION_LABEL" /> <field name="show_vote" type="hidden" label="JGLOBAL_SHOW_VOTE_LABEL" /> <field name="show_hits" type="hidden" label="JGLOBAL_SHOW_HITS_LABEL" /> <field name="show_noauth" type="hidden" label="JGLOBAL_SHOW_UNAUTH_LINKS_LABEL" description="JGLOBAL_SHOW_UNAUTH_LINKS_DESC" /> <field name="alternative_readmore" type="hidden" label="JFIELD_READMORE_LABEL" description="JFIELD_READMORE_DESC" /> <field name="article_layout" type="hidden" label="JFIELD_ALT_LAYOUT_LABEL" useglobal="true" extension="com_content" view="article" /> </fieldset> </fields> <fields name="images" label="COM_CONTENT_FIELD_IMAGE_OPTIONS"> <fieldset name="image-intro" label="COM_CONTENT_FIELD_INTRO_LABEL"> <field name="image_intro" type="media" label="COM_CONTENT_FIELD_INTRO_LABEL" schemes="http,https,ftp,ftps,data,file" validate="url" relative="true" /> <field name="image_intro_alt" type="text" label="COM_CONTENT_FIELD_IMAGE_ALT_LABEL" /> <field name="image_intro_alt_empty" type="checkbox" label="COM_CONTENT_FIELD_IMAGE_ALT_EMPTY_LABEL" description="COM_CONTENT_FIELD_IMAGE_ALT_EMPTY_DESC" /> <field name="float_intro" type="text" label="COM_CONTENT_FIELD_IMAGE_CLASS_LABEL" description="COM_CONTENT_FIELD_IMAGE_CLASS_DESC" useglobal="true" validate="CssIdentifier" /> <field name="image_intro_caption" type="text" label="COM_CONTENT_FIELD_IMAGE_CAPTION_LABEL" /> </fieldset> <fieldset name="image-full" label="COM_CONTENT_FIELD_FULL_LABEL"> <field name="image_fulltext" type="media" schemes="http,https,ftp,ftps,data,file" validate="url" relative="true" label="COM_CONTENT_FIELD_FULL_LABEL" /> <field name="image_fulltext_alt" type="text" label="COM_CONTENT_FIELD_IMAGE_ALT_LABEL" /> <field name="image_fulltext_alt_empty" type="checkbox" label="COM_CONTENT_FIELD_IMAGE_ALT_EMPTY_LABEL" description="COM_CONTENT_FIELD_IMAGE_ALT_EMPTY_DESC" /> <field name="float_fulltext" type="text" label="COM_CONTENT_FIELD_IMAGE_CLASS_LABEL" description="COM_CONTENT_FIELD_IMAGE_CLASS_DESC" useglobal="true" validate="CssIdentifier" /> <field name="image_fulltext_caption" type="text" label="COM_CONTENT_FIELD_IMAGE_CAPTION_LABEL" /> </fieldset> </fields> <fields name="urls" label="COM_CONTENT_FIELD_URLS_OPTIONS"> <fieldset name="linka" label="COM_CONTENT_FIELD_URLA_LABEL"> <field name="urla" type="url" label="COM_CONTENT_FIELD_URLA_LABEL" validate="url" filter="url" relative="true" /> <field name="urlatext" type="text" label="COM_CONTENT_FIELD_URLA_LINK_TEXT_LABEL" /> <field name="targeta" type="list" label="COM_CONTENT_URL_FIELD_BROWSERNAV_LABEL" default="" filter="options" useglobal="true" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> </fieldset> <fieldset name="linkb" label="COM_CONTENT_FIELD_URLB_LABEL"> <field name="urlb" type="url" label="COM_CONTENT_FIELD_URLB_LABEL" validate="url" filter="url" relative="true" /> <field name="urlbtext" type="text" label="COM_CONTENT_FIELD_URLB_LINK_TEXT_LABEL" /> <field name="targetb" type="list" label="COM_CONTENT_URL_FIELD_BROWSERNAV_LABEL" default="" filter="options" useglobal="true" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> </fieldset> <fieldset name="linkc" label="COM_CONTENT_FIELD_URLC_LABEL"> <field name="urlc" type="url" label="COM_CONTENT_FIELD_URLC_LABEL" validate="url" filter="url" relative="true" /> <field name="urlctext" type="text" label="COM_CONTENT_FIELD_URLC_LINK_TEXT_LABEL" /> <field name="targetc" type="list" label="COM_CONTENT_URL_FIELD_BROWSERNAV_LABEL" default="" filter="options" useglobal="true" validate="options" > <option value="0">JBROWSERTARGET_PARENT</option> <option value="1">JBROWSERTARGET_NEW</option> <option value="2">JBROWSERTARGET_POPUP</option> <option value="3">JBROWSERTARGET_MODAL</option> </field> </fieldset> </fields> <fields name="metadata" label="JGLOBAL_FIELDSET_METADATA_OPTIONS"> <fieldset name="jmetadata" label="JGLOBAL_FIELDSET_METADATA_OPTIONS"> <field name="robots" type="list" label="JFIELD_METADATA_ROBOTS_LABEL" validate="options" > <option value="">JGLOBAL_USE_GLOBAL</option> <option value="index, follow" /> <option value="noindex, follow" /> <option value="index, nofollow" /> <option value="noindex, nofollow" /> </field> <field name="author" type="text" label="JAUTHOR" /> <field name="rights" type="textarea" label="JFIELD_META_RIGHTS_LABEL" filter="string" cols="30" rows="2" /> </fieldset> </fields> <!-- These fields are used to get labels for the Content History Preview and Compare Views --> <fields> <field name="introtext" label="COM_CONTENT_FIELD_INTROTEXT" filter="JComponentHelper::filterText" /> <field name="fulltext" label="COM_CONTENT_FIELD_FULLTEXT" filter="JComponentHelper::filterText" /> </fields> </form> PKBA#]�����)components/com_content/forms/category.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <help key="Articles:_Edit_Category" /> <listhelp key="Articles:_Categories" /> <fields name="params" addfieldprefix="Joomla\Component\Content\Administrator\Field"> <fieldset name="workflow" label="COM_CONTENT_WORKFLOW"> <field name="workflow_id" type="sql" label="COM_CONTENT_WORKFLOWS" class="form-select" sql_select="id, title" sql_from="#__workflows" sql_where="published = 1 AND extension = 'com_content.article'" sql_order="ordering" key_field="id" value_field="title" required="true" default="use_default" translate="true" /> </fieldset> </fields> </form> PKBA#]� j�MM0components/com_content/forms/filter_featured.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <form> <fields name="filter"> <field name="search" type="text" inputmode="search" label="COM_CONTENT_FILTER_SEARCH_LABEL" description="COM_CONTENT_FILTER_SEARCH_DESC" hint="JSEARCH_FILTER" /> <field name="stage" type="workflowstage" label="JOPTION_SELECT_STAGE" class="js-select-submit-on-change" activeonly="true" extension="com_content.article" > <option value="">JOPTION_SELECT_STAGE</option> </field> <field name="published" type="status" label="JOPTION_SELECT_PUBLISHED" class="js-select-submit-on-change" extension="com_content.article" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="category_id" type="category" label="JCATEGORY" multiple="true" extension="com_content" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_CATEGORY" class="js-select-submit-on-change" /> <field name="access" type="accesslevel" label="JGRID_HEADING_ACCESS" multiple="true" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_ACCESS" class="js-select-submit-on-change" /> <field name="author_id" type="author" label="JOPTION_SELECT_AUTHOR" multiple="true" layout="joomla.form.field.list-fancy-select" hint="JOPTION_SELECT_AUTHOR" class="js-select-submit-on-change" > <option value="0">JNONE</option> </field> <field name="language" type="contentlanguage" label="JGRID_HEADING_LANGUAGE" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> <field name="tag" type="tag" label="JTAG" multiple="true" mode="nested" custom="false" hint="JOPTION_SELECT_TAG" class="js-select-submit-on-change" /> <field name="level" type="integer" label="JGLOBAL_MAXLEVEL_LABEL" first="1" last="10" step="1" languages="*" class="js-select-submit-on-change" > <option value="">JOPTION_SELECT_MAX_LEVELS</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" class="js-select-submit-on-change" default="a.title ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="fp.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="fp.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.title ASC">JGLOBAL_TITLE_ASC</option> <option value="a.title DESC">JGLOBAL_TITLE_DESC</option> <option value="category_title ASC">JCATEGORY_ASC</option> <option value="category_title DESC">JCATEGORY_DESC</option> <option value="a.access ASC">JGRID_HEADING_ACCESS_ASC</option> <option value="a.access DESC">JGRID_HEADING_ACCESS_DESC</option> <option value="a.created_by ASC">JAUTHOR_ASC</option> <option value="a.created_by DESC">JAUTHOR_DESC</option> <option value="a.publish_up ASC">COM_CONTENT_PUBLISH_UP_ASC</option> <option value="a.publish_up DESC">COM_CONTENT_PUBLISH_UP_DESC</option> <option value="a.publish_down ASC">COM_CONTENT_PUBLISH_DOWN_ASC</option> <option value="a.publish_down DESC">COM_CONTENT_PUBLISH_DOWN_DESC</option> <option value="language ASC" requires="multilanguage">JGRID_HEADING_LANGUAGE_ASC</option> <option value="language DESC" requires="multilanguage">JGRID_HEADING_LANGUAGE_DESC</option> <option value="a.created ASC">JDATE_ASC</option> <option value="a.created DESC">JDATE_DESC</option> <option value="a.hits ASC" requires="hits">JGLOBAL_HITS_ASC</option> <option value="a.hits DESC" requires="hits">JGLOBAL_HITS_DESC</option> <option value="rating_count ASC" requires="vote">JGLOBAL_VOTES_ASC</option> <option value="rating_count DESC" requires="vote">JGLOBAL_VOTES_DESC</option> <option value="rating ASC" requires="vote">JGLOBAL_RATINGS_ASC</option> <option value="rating DESC" requires="vote">JGLOBAL_RATINGS_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" class="js-select-submit-on-change" /> </fields> </form> PKBA#]N���3components/com_content/src/Field/VoteradioField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Field; use Joomla\CMS\Form\Field\RadioField; use Joomla\CMS\Plugin\PluginHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Voteradio Field class. * * @since 3.8.0 */ class VoteradioField extends RadioField { /** * The form field type. * * @var string * @since 3.8.0 */ protected $type = 'Voteradio'; /** * Method to attach a form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { // Requires vote plugin enabled if (!PluginHelper::isEnabled('content', 'vote')) { return false; } return parent::setup($element, $value, $group); } } PKBA#]�fU�0�07components/com_content/src/Field/Modal/ArticleField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Field\Modal; use Joomla\CMS\Factory; use Joomla\CMS\Form\FormField; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Session\Session; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Supports a modal article picker. * * @since 1.6 */ class ArticleField extends FormField { /** * The form field type. * * @var string * @since 1.6 */ protected $type = 'Modal_Article'; /** * Method to get the field input markup. * * @return string The field input markup. * * @since 1.6 */ protected function getInput() { $allowNew = ((string) $this->element['new'] == 'true'); $allowEdit = ((string) $this->element['edit'] == 'true'); $allowClear = ((string) $this->element['clear'] != 'false'); $allowSelect = ((string) $this->element['select'] != 'false'); $allowPropagate = ((string) $this->element['propagate'] == 'true'); $languages = LanguageHelper::getContentLanguages([0, 1], false); // Load language Factory::getLanguage()->load('com_content', JPATH_ADMINISTRATOR); // The active article id field. $value = (int) $this->value ?: ''; // Create the modal id. $modalId = 'Article_' . $this->id; /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = Factory::getApplication()->getDocument()->getWebAssetManager(); // Add the modal field script to the document head. $wa->useScript('field.modal-fields'); // Script to proxy the select modal function to the modal-fields.js file. if ($allowSelect) { static $scriptSelect = null; if (is_null($scriptSelect)) { $scriptSelect = []; } if (!isset($scriptSelect[$this->id])) { $wa->addInlineScript( " window.jSelectArticle_" . $this->id . " = function (id, title, catid, object, url, language) { window.processModalSelect('Article', '" . $this->id . "', id, title, catid, object, url, language); }", [], ['type' => 'module'] ); Text::script('JGLOBAL_ASSOCIATIONS_PROPAGATE_FAILED'); $scriptSelect[$this->id] = true; } } // Setup variables for display. $linkArticles = 'index.php?option=com_content&view=articles&layout=modal&tmpl=component&' . Session::getFormToken() . '=1'; $linkArticle = 'index.php?option=com_content&view=article&layout=modal&tmpl=component&' . Session::getFormToken() . '=1'; if (isset($this->element['language'])) { $linkArticles .= '&forcedLanguage=' . $this->element['language']; $linkArticle .= '&forcedLanguage=' . $this->element['language']; $modalTitle = Text::_('COM_CONTENT_SELECT_AN_ARTICLE') . ' — ' . $this->element['label']; } else { $modalTitle = Text::_('COM_CONTENT_SELECT_AN_ARTICLE'); } $urlSelect = $linkArticles . '&function=jSelectArticle_' . $this->id; $urlEdit = $linkArticle . '&task=article.edit&id=\' + document.getElementById("' . $this->id . '_id").value + \''; $urlNew = $linkArticle . '&task=article.add'; if ($value) { $db = $this->getDatabase(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__content')) ->where($db->quoteName('id') . ' = :value') ->bind(':value', $value, ParameterType::INTEGER); $db->setQuery($query); try { $title = $db->loadResult(); } catch (\RuntimeException $e) { Factory::getApplication()->enqueueMessage($e->getMessage(), 'error'); } if (empty($title)) { $value = ''; } } $title = empty($title) ? Text::_('COM_CONTENT_SELECT_AN_ARTICLE') : htmlspecialchars($title, ENT_QUOTES, 'UTF-8'); // The current article display field. $html = ''; if ($allowSelect || $allowNew || $allowEdit || $allowClear) { $html .= '<span class="input-group">'; } $html .= '<input class="form-control" id="' . $this->id . '_name" type="text" value="' . $title . '" readonly size="35">'; // Select article button if ($allowSelect) { $html .= '<button' . ' class="btn btn-primary' . ($value ? ' hidden' : '') . '"' . ' id="' . $this->id . '_select"' . ' data-bs-toggle="modal"' . ' type="button"' . ' data-bs-target="#ModalSelect' . $modalId . '">' . '<span class="icon-file" aria-hidden="true"></span> ' . Text::_('JSELECT') . '</button>'; } // New article button if ($allowNew) { $html .= '<button' . ' class="btn btn-secondary' . ($value ? ' hidden' : '') . '"' . ' id="' . $this->id . '_new"' . ' data-bs-toggle="modal"' . ' type="button"' . ' data-bs-target="#ModalNew' . $modalId . '">' . '<span class="icon-plus" aria-hidden="true"></span> ' . Text::_('JACTION_CREATE') . '</button>'; } // Edit article button if ($allowEdit) { $html .= '<button' . ' class="btn btn-primary' . ($value ? '' : ' hidden') . '"' . ' id="' . $this->id . '_edit"' . ' data-bs-toggle="modal"' . ' type="button"' . ' data-bs-target="#ModalEdit' . $modalId . '">' . '<span class="icon-pen-square" aria-hidden="true"></span> ' . Text::_('JACTION_EDIT') . '</button>'; } // Clear article button if ($allowClear) { $html .= '<button' . ' class="btn btn-secondary' . ($value ? '' : ' hidden') . '"' . ' id="' . $this->id . '_clear"' . ' type="button"' . ' onclick="window.processModalParent(\'' . $this->id . '\'); return false;">' . '<span class="icon-times" aria-hidden="true"></span> ' . Text::_('JCLEAR') . '</button>'; } // Propagate article button if ($allowPropagate && count($languages) > 2) { // Strip off language tag at the end $tagLength = (int) strlen($this->element['language']); $callbackFunctionStem = substr("jSelectArticle_" . $this->id, 0, -$tagLength); $html .= '<button' . ' class="btn btn-primary' . ($value ? '' : ' hidden') . '"' . ' type="button"' . ' id="' . $this->id . '_propagate"' . ' title="' . Text::_('JGLOBAL_ASSOCIATIONS_PROPAGATE_TIP') . '"' . ' onclick="Joomla.propagateAssociation(\'' . $this->id . '\', \'' . $callbackFunctionStem . '\');">' . '<span class="icon-sync" aria-hidden="true"></span> ' . Text::_('JGLOBAL_ASSOCIATIONS_PROPAGATE_BUTTON') . '</button>'; } if ($allowSelect || $allowNew || $allowEdit || $allowClear) { $html .= '</span>'; } // Select article modal if ($allowSelect) { $html .= HTMLHelper::_( 'bootstrap.renderModal', 'ModalSelect' . $modalId, [ 'title' => $modalTitle, 'url' => $urlSelect, 'height' => '400px', 'width' => '800px', 'bodyHeight' => 70, 'modalWidth' => 80, 'footer' => '<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">' . Text::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button>', ] ); } // New article modal if ($allowNew) { $html .= HTMLHelper::_( 'bootstrap.renderModal', 'ModalNew' . $modalId, [ 'title' => Text::_('COM_CONTENT_NEW_ARTICLE'), 'backdrop' => 'static', 'keyboard' => false, 'closeButton' => false, 'url' => $urlNew, 'height' => '400px', 'width' => '800px', 'bodyHeight' => 70, 'modalWidth' => 80, 'footer' => '<button type="button" class="btn btn-secondary"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'add\', \'article\', \'cancel\', \'item-form\'); return false;">' . Text::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button>' . '<button type="button" class="btn btn-primary"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'add\', \'article\', \'save\', \'item-form\'); return false;">' . Text::_('JSAVE') . '</button>' . '<button type="button" class="btn btn-success"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'add\', \'article\', \'apply\', \'item-form\'); return false;">' . Text::_('JAPPLY') . '</button>', ] ); } // Edit article modal if ($allowEdit) { $html .= HTMLHelper::_( 'bootstrap.renderModal', 'ModalEdit' . $modalId, [ 'title' => Text::_('COM_CONTENT_EDIT_ARTICLE'), 'backdrop' => 'static', 'keyboard' => false, 'closeButton' => false, 'url' => $urlEdit, 'height' => '400px', 'width' => '800px', 'bodyHeight' => 70, 'modalWidth' => 80, 'footer' => '<button type="button" class="btn btn-secondary"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'edit\', \'article\', \'cancel\', \'item-form\'); return false;">' . Text::_('JLIB_HTML_BEHAVIOR_CLOSE') . '</button>' . '<button type="button" class="btn btn-primary"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'edit\', \'article\', \'save\', \'item-form\'); return false;">' . Text::_('JSAVE') . '</button>' . '<button type="button" class="btn btn-success"' . ' onclick="window.processModalEdit(this, \'' . $this->id . '\', \'edit\', \'article\', \'apply\', \'item-form\'); return false;">' . Text::_('JAPPLY') . '</button>', ] ); } // Note: class='required' for client side validation. $class = $this->required ? ' class="required modal-value"' : ''; $html .= '<input type="hidden" id="' . $this->id . '_id" ' . $class . ' data-required="' . (int) $this->required . '" name="' . $this->name . '" data-text="' . htmlspecialchars(Text::_('COM_CONTENT_SELECT_AN_ARTICLE'), ENT_COMPAT, 'UTF-8') . '" value="' . $value . '">'; return $html; } /** * Method to get the field label markup. * * @return string The field label markup. * * @since 3.4 */ protected function getLabel() { return str_replace($this->id, $this->id . '_name', parent::getLabel()); } } PKBA#]����2components/com_content/src/Field/VotelistField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2020 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Field; use Joomla\CMS\Form\Field\ListField; use Joomla\CMS\Plugin\PluginHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Votelist Field class. * * @since 4.0.0 */ class VotelistField extends ListField { /** * The form field type. * * @var string * @since 4.0.0 */ protected $type = 'Votelist'; /** * Method to attach a form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { // Requires vote plugin enabled if (!PluginHelper::isEnabled('content', 'vote')) { return false; } return parent::setup($element, $value, $group); } } PKBA#]"���/components/com_content/src/Field/AssocField.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Field; use Joomla\CMS\Form\Field\ListField; use Joomla\CMS\Language\Associations; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Assoc Field class. * Supports a generic list of options. * Displays only when Associations are enabled. * * @since 4.0.0 */ class AssocField extends ListField { /** * The form field type. * * @var string * @since 4.0.0 */ protected $type = 'Assoc'; /** * Method to attach a Form object to the field. * * @param \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @see AssocField::setup() * @since 4.0.0 */ public function setup(\SimpleXMLElement $element, $value, $group = null) { if (!Associations::isEnabled()) { return false; } return parent::setup($element, $value, $group); } } PKBA#]��ˀ��5components/com_content/src/View/Featured/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\View\Featured; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Toolbar\Button\DropdownButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\Component\Content\Administrator\Extension\ContentComponent; use Joomla\Component\Content\Administrator\Helper\ContentHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of featured articles. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var array */ protected $items; /** * The pagination object * * @var \Joomla\CMS\Pagination\Pagination */ protected $pagination; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form */ public $filterForm; /** * The active search filters * * @var array */ public $activeFilters; /** * All transition, which can be executed of one if the items * * @var array */ protected $transitions = []; /** * Is this view an Empty State * * @var boolean * @since 4.0.0 */ private $isEmptyState = false; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->vote = PluginHelper::isEnabled('content', 'vote'); $this->hits = ComponentHelper::getParams('com_content')->get('record_hits', 1); if (!\count($this->items) && $this->isEmptyState = $this->get('IsEmptyState')) { $this->setLayout('emptystate'); } if (ComponentHelper::getParams('com_content')->get('workflow_enabled')) { PluginHelper::importPlugin('workflow'); $this->transitions = $this->get('Transitions'); } // Check for errors. if (\count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } $this->addToolbar(); // We do not need to filter by language when multilingual is disabled if (!Multilanguage::isEnabled()) { unset($this->activeFilters['language']); $this->filterForm->removeField('language', 'filter'); } parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_content', 'category', $this->state->get('filter.category_id')); $user = Factory::getApplication()->getIdentity(); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_('COM_CONTENT_FEATURED_TITLE'), 'star featured'); if ($canDo->get('core.create') || \count($user->getAuthorisedCategories('com_content', 'core.create')) > 0) { $toolbar->addNew('article.add'); } if (!$this->isEmptyState && ($canDo->get('core.edit.state') || \count($this->transitions))) { /** @var DropdownButton $dropdown */ $dropdown = $toolbar->dropdownButton('status-group', 'JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('icon-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if (\count($this->transitions)) { $childBar->separatorButton('transition-headline', 'COM_CONTENT_RUN_TRANSITIONS') ->buttonClass('text-center py-2 h3'); $cmd = "Joomla.submitbutton('articles.runTransition');"; $messages = "{error: [Joomla.JText._('JLIB_HTML_PLEASE_MAKE_A_SELECTION_FROM_THE_LIST')]}"; $alert = 'Joomla.renderMessages(' . $messages . ')'; $cmd = 'if (document.adminForm.boxchecked.value == 0) { ' . $alert . ' } else { ' . $cmd . ' }'; foreach ($this->transitions as $transition) { $childBar->standardButton('transition', $transition['text']) ->buttonClass('transition-' . (int) $transition['value']) ->icon('icon-project-diagram') ->onclick('document.adminForm.transition_id.value=' . (int) $transition['value'] . ';' . $cmd); } $childBar->separatorButton('transition-separator'); } if ($canDo->get('core.edit.state')) { $childBar->publish('articles.publish')->listCheck(true); $childBar->unpublish('articles.unpublish')->listCheck(true); $childBar->standardButton('unfeatured', 'JUNFEATURE') ->task('articles.unfeatured') ->listCheck(true); $childBar->archive('articles.archive')->listCheck(true); $childBar->checkin('articles.checkin'); if (!$this->state->get('filter.published') == ContentComponent::CONDITION_TRASHED) { $childBar->trash('articles.trash')->listCheck(true); } } } if (!$this->isEmptyState && $this->state->get('filter.published') == ContentComponent::CONDITION_TRASHED && $canDo->get('core.delete')) { $toolbar->delete('articles.delete', 'JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($user->authorise('core.admin', 'com_content') || $user->authorise('core.options', 'com_content')) { $toolbar->preferences('com_content'); } $toolbar->help('Articles:_Featured'); } } PKBA#]��d� 4components/com_content/src/View/Article/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\View\Article; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Helper\ContentHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\Component\Content\Site\Helper\RouteHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View to edit an article. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * The \JForm object * * @var \Joomla\CMS\Form\Form */ protected $form; /** * The active item * * @var object */ protected $item; /** * The model state * * @var object */ protected $state; /** * The actions the user is authorised to perform * * @var \Joomla\CMS\Object\CMSObject */ protected $canDo; /** * Pagebreak TOC alias * * @var string */ protected $eName; /** * Execute and display a template script. * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void * * @since 1.6 * * @throws \Exception */ public function display($tpl = null) { if ($this->getLayout() == 'pagebreak') { parent::display($tpl); return; } $this->form = $this->get('Form'); $this->item = $this->get('Item'); $this->state = $this->get('State'); $this->canDo = ContentHelper::getActions('com_content', 'article', $this->item->id); // Check for errors. if (count($errors = $this->get('Errors'))) { throw new GenericDataException(implode("\n", $errors), 500); } // If we are forcing a language in modal (used for associations). if ($this->getLayout() === 'modal' && $forcedLanguage = Factory::getApplication()->getInput()->get('forcedLanguage', '', 'cmd')) { // Set the language field to the forcedLanguage and disable changing it. $this->form->setValue('language', null, $forcedLanguage); $this->form->setFieldAttribute('language', 'readonly', 'true'); // Only allow to select categories with All language or with the forced language. $this->form->setFieldAttribute('catid', 'language', '*,' . $forcedLanguage); // Only allow to select tags with All language or with the forced language. $this->form->setFieldAttribute('tags', 'language', '*,' . $forcedLanguage); } $this->addToolbar(); parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 * * @throws \Exception */ protected function addToolbar() { Factory::getApplication()->getInput()->set('hidemainmenu', true); $user = $this->getCurrentUser(); $userId = $user->id; $isNew = ($this->item->id == 0); $checkedOut = !(is_null($this->item->checked_out) || $this->item->checked_out == $userId); $toolbar = Toolbar::getInstance(); // Built the actions for new and existing records. $canDo = $this->canDo; ToolbarHelper::title( Text::_('COM_CONTENT_PAGE_' . ($checkedOut ? 'VIEW_ARTICLE' : ($isNew ? 'ADD_ARTICLE' : 'EDIT_ARTICLE'))), 'pencil-alt article-add' ); // For new records, check the create permission. if ($isNew && (count($user->getAuthorisedCategories('com_content', 'core.create')) > 0)) { $toolbar->apply('article.apply'); $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($user) { $childBar->save('article.save'); if ($user->authorise('core.create', 'com_menus.menu')) { $childBar->save('article.save2menu', 'JTOOLBAR_SAVE_TO_MENU'); } $childBar->save2new('article.save2new'); } ); $toolbar->cancel('article.cancel', 'JTOOLBAR_CANCEL'); } else { // Since it's an existing record, check the edit permission, or fall back to edit own if the owner. $itemEditable = $canDo->get('core.edit') || ($canDo->get('core.edit.own') && $this->item->created_by == $userId); if (!$checkedOut && $itemEditable) { $toolbar->apply('article.apply'); } $saveGroup = $toolbar->dropdownButton('save-group'); $saveGroup->configure( function (Toolbar $childBar) use ($checkedOut, $itemEditable, $canDo, $user) { // Can't save the record if it's checked out and editable if (!$checkedOut && $itemEditable) { $childBar->save('article.save'); // We can save this record, but check the create permission to see if we can return to make a new one. if ($canDo->get('core.create')) { $childBar->save2new('article.save2new'); } } // If checked out, we can still save2menu if ($user->authorise('core.create', 'com_menus.menu')) { $childBar->save('article.save2menu', 'JTOOLBAR_SAVE_TO_MENU'); } // If checked out, we can still save if ($canDo->get('core.create')) { $childBar->save2copy('article.save2copy'); } } ); $toolbar->cancel('article.cancel', 'JTOOLBAR_CLOSE'); if (!$isNew) { if (ComponentHelper::isEnabled('com_contenthistory') && $this->state->params->get('save_history', 0) && $itemEditable) { $toolbar->versions('com_content.article', $this->item->id); } $url = RouteHelper::getArticleRoute($this->item->id . ':' . $this->item->alias, $this->item->catid, $this->item->language); $toolbar->preview(Route::link('site', $url, true), 'JGLOBAL_PREVIEW') ->bodyHeight(80) ->modalWidth(90); if (PluginHelper::isEnabled('system', 'jooa11y')) { $toolbar->jooa11y(Route::link('site', $url . '&jooa11y=1', true), 'JGLOBAL_JOOA11Y') ->bodyHeight(80) ->modalWidth(90); } if (Associations::isEnabled() && ComponentHelper::isEnabled('com_associations')) { $toolbar->standardButton('associations', 'JTOOLBAR_ASSOCIATIONS', 'article.editAssociations') ->icon('icon-contract') ->listCheck(false); } } } $toolbar->divider(); $toolbar->inlinehelp(); $toolbar->help('Articles:_Edit'); } } PKBA#]�H� �"�"5components/com_content/src/View/Articles/HtmlView.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\View\Articles; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\View\GenericDataException; use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Toolbar\Button\DropdownButton; use Joomla\CMS\Toolbar\Toolbar; use Joomla\CMS\Toolbar\ToolbarHelper; use Joomla\Component\Content\Administrator\Extension\ContentComponent; use Joomla\Component\Content\Administrator\Helper\ContentHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * View class for a list of articles. * * @since 1.6 */ class HtmlView extends BaseHtmlView { /** * An array of items * * @var array */ protected $items; /** * The pagination object * * @var \Joomla\CMS\Pagination\Pagination */ protected $pagination; /** * The model state * * @var \Joomla\CMS\Object\CMSObject */ protected $state; /** * Form object for search filters * * @var \Joomla\CMS\Form\Form */ public $filterForm; /** * The active search filters * * @var array */ public $activeFilters; /** * All transition, which can be executed of one if the items * * @var array */ protected $transitions = []; /** * Is this view an Empty State * * @var boolean * @since 4.0.0 */ private $isEmptyState = false; /** * Is the vote plugin enabled on the site * * @var boolean * @since 4.4.0 */ protected $vote = false; /** * Are hits being recorded on the site? * * @var boolean * @since 4.4.0 */ protected $hits = false; /** * Display the view * * @param string $tpl The name of the template file to parse; automatically searches through the template paths. * * @return void */ public function display($tpl = null) { $this->items = $this->get('Items'); $this->pagination = $this->get('Pagination'); $this->state = $this->get('State'); $this->filterForm = $this->get('FilterForm'); $this->activeFilters = $this->get('ActiveFilters'); $this->vote = PluginHelper::isEnabled('content', 'vote'); $this->hits = ComponentHelper::getParams('com_content')->get('record_hits', 1) == 1; if (!\count($this->items) && $this->isEmptyState = $this->get('IsEmptyState')) { $this->setLayout('emptystate'); } if (ComponentHelper::getParams('com_content')->get('workflow_enabled')) { PluginHelper::importPlugin('workflow'); $this->transitions = $this->get('Transitions'); } // Check for errors. if (\count($errors = $this->get('Errors')) || $this->transitions === false) { throw new GenericDataException(implode("\n", $errors), 500); } // We don't need toolbar in the modal window. if ($this->getLayout() !== 'modal') { $this->addToolbar(); // We do not need to filter by language when multilingual is disabled if (!Multilanguage::isEnabled()) { unset($this->activeFilters['language']); $this->filterForm->removeField('language', 'filter'); } } else { // In article associations modal we need to remove language filter if forcing a language. // We also need to change the category filter to show show categories with All or the forced language. if ($forcedLanguage = Factory::getApplication()->getInput()->get('forcedLanguage', '', 'CMD')) { // If the language is forced we can't allow to select the language, so transform the language selector filter into a hidden field. $languageXml = new \SimpleXMLElement('<field name="language" type="hidden" default="' . $forcedLanguage . '" />'); $this->filterForm->setField($languageXml, 'filter', true); // Also, unset the active language filter so the search tools is not open by default with this filter. unset($this->activeFilters['language']); // One last changes needed is to change the category filter to just show categories with All language or with the forced language. $this->filterForm->setFieldAttribute('category_id', 'language', '*,' . $forcedLanguage, 'filter'); } } parent::display($tpl); } /** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function addToolbar() { $canDo = ContentHelper::getActions('com_content', 'category', $this->state->get('filter.category_id')); $user = $this->getCurrentUser(); $toolbar = Toolbar::getInstance(); ToolbarHelper::title(Text::_('COM_CONTENT_ARTICLES_TITLE'), 'copy article'); if ($canDo->get('core.create') || \count($user->getAuthorisedCategories('com_content', 'core.create')) > 0) { $toolbar->addNew('article.add'); } if (!$this->isEmptyState && ($canDo->get('core.edit.state') || \count($this->transitions))) { /** @var DropdownButton $dropdown */ $dropdown = $toolbar->dropdownButton('status-group') ->text('JTOOLBAR_CHANGE_STATUS') ->toggleSplit(false) ->icon('icon-ellipsis-h') ->buttonClass('btn btn-action') ->listCheck(true); $childBar = $dropdown->getChildToolbar(); if ($canDo->get('core.execute.transition') && \count($this->transitions)) { $childBar->separatorButton('transition-headline') ->text('COM_CONTENT_RUN_TRANSITIONS') ->buttonClass('text-center py-2 h3'); $cmd = "Joomla.submitbutton('articles.runTransition');"; $messages = "{error: [Joomla.JText._('JLIB_HTML_PLEASE_MAKE_A_SELECTION_FROM_THE_LIST')]}"; $alert = 'Joomla.renderMessages(' . $messages . ')'; $cmd = 'if (document.adminForm.boxchecked.value == 0) { ' . $alert . ' } else { ' . $cmd . ' }'; foreach ($this->transitions as $transition) { $childBar->standardButton('transition', $transition['text']) ->buttonClass('transition-' . (int) $transition['value']) ->icon('icon-project-diagram') ->onclick('document.adminForm.transition_id.value=' . (int) $transition['value'] . ';' . $cmd); } $childBar->separatorButton('transition-separator'); } if ($canDo->get('core.edit.state')) { $childBar->publish('articles.publish')->listCheck(true); $childBar->unpublish('articles.unpublish')->listCheck(true); $childBar->standardButton('featured', 'JFEATURE', 'articles.featured') ->listCheck(true); $childBar->standardButton('unfeatured', 'JUNFEATURE', 'articles.unfeatured') ->listCheck(true); $childBar->archive('articles.archive')->listCheck(true); $childBar->checkin('articles.checkin'); if ($this->state->get('filter.published') != ContentComponent::CONDITION_TRASHED) { $childBar->trash('articles.trash')->listCheck(true); } } // Add a batch button if ( $user->authorise('core.create', 'com_content') && $user->authorise('core.edit', 'com_content') ) { $childBar->popupButton('batch', 'JTOOLBAR_BATCH') ->selector('collapseModal') ->listCheck(true); } } if (!$this->isEmptyState && $this->state->get('filter.published') == ContentComponent::CONDITION_TRASHED && $canDo->get('core.delete')) { $toolbar->delete('articles.delete', 'JTOOLBAR_EMPTY_TRASH') ->message('JGLOBAL_CONFIRM_DELETE') ->listCheck(true); } if ($user->authorise('core.admin', 'com_content') || $user->authorise('core.options', 'com_content')) { $toolbar->preferences('com_content'); } $toolbar->help('Articles'); } } PKBA#]॑oww2components/com_content/src/Model/FeaturedModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Model; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of featured article records. * * @since 1.6 */ class FeaturedModel extends ArticlesModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @see \Joomla\CMS\MVC\Controller\BaseController * @since 1.6 */ public function __construct($config = []) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'title', 'a.title', 'alias', 'a.alias', 'checked_out', 'a.checked_out', 'checked_out_time', 'a.checked_out_time', 'catid', 'a.catid', 'category_title', 'state', 'a.state', 'access', 'a.access', 'access_level', 'created', 'a.created', 'created_by', 'a.created_by', 'created_by_alias', 'a.created_by_alias', 'ordering', 'a.ordering', 'featured_up', 'fp.featured_up', 'featured_down', 'fp.featured_down', 'language', 'a.language', 'hits', 'a.hits', 'publish_up', 'a.publish_up', 'publish_down', 'a.publish_down', 'fp.ordering', 'published', 'a.published', 'author_id', 'category_id', 'level', 'tag', 'rating_count', 'rating', 'ws.title', ]; } parent::__construct($config); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 3.5 */ protected function populateState($ordering = 'a.title', $direction = 'asc') { parent::populateState($ordering, $direction); // Filter by featured articles. $this->setState('filter.featured', 1); } /** * Build an SQL query to load the list data. * * @return \Joomla\Database\DatabaseQuery * * @since 4.0.0 */ protected function getListQuery() { $query = parent::getListQuery(); $query->select($this->getDatabase()->quoteName('fp.ordering')); return $query; } } PKBA#]1�vR6�6�1components/com_content/src/Model/ArticleModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Model; use Joomla\CMS\Date\Date; use Joomla\CMS\Event\AbstractEvent; use Joomla\CMS\Factory; use Joomla\CMS\Filter\InputFilter; use Joomla\CMS\Filter\OutputFilter; use Joomla\CMS\Form\Form; use Joomla\CMS\Form\FormFactoryInterface; use Joomla\CMS\Helper\TagsHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\MVC\Model\WorkflowBehaviorTrait; use Joomla\CMS\MVC\Model\WorkflowModelInterface; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\String\PunycodeHelper; use Joomla\CMS\Table\TableInterface; use Joomla\CMS\Tag\TaggableTableInterface; use Joomla\CMS\UCM\UCMType; use Joomla\CMS\Versioning\VersionableModelTrait; use Joomla\CMS\Workflow\Workflow; use Joomla\Component\Categories\Administrator\Helper\CategoriesHelper; use Joomla\Component\Fields\Administrator\Helper\FieldsHelper; use Joomla\Database\ParameterType; use Joomla\Registry\Registry; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Item Model for an Article. * * @since 1.6 */ class ArticleModel extends AdminModel implements WorkflowModelInterface { use WorkflowBehaviorTrait; use VersionableModelTrait; /** * The prefix to use with controller messages. * * @var string * @since 1.6 */ protected $text_prefix = 'COM_CONTENT'; /** * The type alias for this content type (for example, 'com_content.article'). * * @var string * @since 3.2 */ public $typeAlias = 'com_content.article'; /** * The context used for the associations table * * @var string * @since 3.4.4 */ protected $associationsContext = 'com_content.item'; /** * The event to trigger before changing featured status one or more items. * * @var string * @since 4.0.0 */ protected $event_before_change_featured = null; /** * The event to trigger after changing featured status one or more items. * * @var string * @since 4.0.0 */ protected $event_after_change_featured = null; /** * Constructor. * * @param array $config An array of configuration options (name, state, dbo, table_path, ignore_request). * @param MVCFactoryInterface $factory The factory. * @param FormFactoryInterface $formFactory The form factory. * * @since 1.6 * @throws \Exception */ public function __construct($config = [], MVCFactoryInterface $factory = null, FormFactoryInterface $formFactory = null) { $config['events_map'] = $config['events_map'] ?? []; $config['events_map'] = array_merge( ['featured' => 'content'], $config['events_map'] ); parent::__construct($config, $factory, $formFactory); // Set the featured status change events $this->event_before_change_featured = $config['event_before_change_featured'] ?? $this->event_before_change_featured; $this->event_before_change_featured = $this->event_before_change_featured ?? 'onContentBeforeChangeFeatured'; $this->event_after_change_featured = $config['event_after_change_featured'] ?? $this->event_after_change_featured; $this->event_after_change_featured = $this->event_after_change_featured ?? 'onContentAfterChangeFeatured'; $this->setUpWorkflow('com_content.article'); } /** * Function that can be overridden to do any data cleanup after batch copying data * * @param TableInterface $table The table object containing the newly created item * @param integer $newId The id of the new item * @param integer $oldId The original item id * * @return void * * @since 3.8.12 */ protected function cleanupPostBatchCopy(TableInterface $table, $newId, $oldId) { // Check if the article was featured and update the #__content_frontpage table if ($table->featured == 1) { $db = $this->getDatabase(); $query = $db->getQuery(true) ->select( [ $db->quoteName('featured_up'), $db->quoteName('featured_down'), ] ) ->from($db->quoteName('#__content_frontpage')) ->where($db->quoteName('content_id') . ' = :oldId') ->bind(':oldId', $oldId, ParameterType::INTEGER); $featured = $db->setQuery($query)->loadObject(); if ($featured) { $query = $db->getQuery(true) ->insert($db->quoteName('#__content_frontpage')) ->values(':newId, 0, :featuredUp, :featuredDown') ->bind(':newId', $newId, ParameterType::INTEGER) ->bind(':featuredUp', $featured->featured_up, $featured->featured_up ? ParameterType::STRING : ParameterType::NULL) ->bind(':featuredDown', $featured->featured_down, $featured->featured_down ? ParameterType::STRING : ParameterType::NULL); $db->setQuery($query); $db->execute(); } } $this->workflowCleanupBatchMove($oldId, $newId); $oldItem = $this->getTable(); $oldItem->load($oldId); $fields = FieldsHelper::getFields('com_content.article', $oldItem, true); $fieldsData = []; if (!empty($fields)) { $fieldsData['com_fields'] = []; foreach ($fields as $field) { $fieldsData['com_fields'][$field->name] = $field->rawvalue; } } Factory::getApplication()->triggerEvent('onContentAfterSave', ['com_content.article', &$this->table, false, $fieldsData]); } /** * Batch move categories to a new category. * * @param integer $value The new category ID. * @param array $pks An array of row IDs. * @param array $contexts An array of item contexts. * * @return boolean True on success. * * @since 3.8.6 */ protected function batchMove($value, $pks, $contexts) { if (empty($this->batchSet)) { // Set some needed variables. $this->user = $this->getCurrentUser(); $this->table = $this->getTable(); $this->tableClassName = get_class($this->table); $this->contentType = new UCMType(); $this->type = $this->contentType->getTypeByTable($this->tableClassName); } $categoryId = (int) $value; if (!$this->checkCategoryId($categoryId)) { return false; } PluginHelper::importPlugin('system'); // Parent exists so we proceed foreach ($pks as $pk) { if (!$this->user->authorise('core.edit', $contexts[$pk])) { $this->setError(Text::_('JLIB_APPLICATION_ERROR_BATCH_CANNOT_EDIT')); return false; } // Check that the row actually exists if (!$this->table->load($pk)) { if ($error = $this->table->getError()) { // Fatal error $this->setError($error); return false; } else { // Not fatal error $this->setError(Text::sprintf('JLIB_APPLICATION_ERROR_BATCH_MOVE_ROW_NOT_FOUND', $pk)); continue; } } $fields = FieldsHelper::getFields('com_content.article', $this->table, true); $fieldsData = []; if (!empty($fields)) { $fieldsData['com_fields'] = []; foreach ($fields as $field) { $fieldsData['com_fields'][$field->name] = $field->rawvalue; } } // Set the new category ID $this->table->catid = $categoryId; // We don't want to modify tags - so remove the associated tags helper if ($this->table instanceof TaggableTableInterface) { $this->table->clearTagsHelper(); } // Check the row. if (!$this->table->check()) { $this->setError($this->table->getError()); return false; } // Store the row. if (!$this->table->store()) { $this->setError($this->table->getError()); return false; } // Run event for moved article Factory::getApplication()->triggerEvent('onContentAfterSave', ['com_content.article', &$this->table, false, $fieldsData]); } // Clean the cache $this->cleanCache(); return true; } /** * Method to test whether a record can be deleted. * * @param object $record A record object. * * @return boolean True if allowed to delete the record. Defaults to the permission set in the component. * * @since 1.6 */ protected function canDelete($record) { if (empty($record->id) || ($record->state != -2)) { return false; } return $this->getCurrentUser()->authorise('core.delete', 'com_content.article.' . (int) $record->id); } /** * Method to test whether a record can have its state edited. * * @param object $record A record object. * * @return boolean True if allowed to change the state of the record. Defaults to the permission set in the component. * * @since 1.6 */ protected function canEditState($record) { $user = $this->getCurrentUser(); // Check for existing article. if (!empty($record->id)) { return $user->authorise('core.edit.state', 'com_content.article.' . (int) $record->id); } // New article, so check against the category. if (!empty($record->catid)) { return $user->authorise('core.edit.state', 'com_content.category.' . (int) $record->catid); } // Default to component settings if neither article nor category known. return parent::canEditState($record); } /** * Prepare and sanitise the table data prior to saving. * * @param \Joomla\CMS\Table\Table $table A Table object. * * @return void * * @since 1.6 */ protected function prepareTable($table) { // Set the publish date to now if ($table->state == Workflow::CONDITION_PUBLISHED && (int) $table->publish_up == 0) { $table->publish_up = Factory::getDate()->toSql(); } if ($table->state == Workflow::CONDITION_PUBLISHED && intval($table->publish_down) == 0) { $table->publish_down = null; } // Increment the content version number. $table->version++; // Reorder the articles within the category so the new article is first if (empty($table->id)) { $table->reorder('catid = ' . (int) $table->catid . ' AND state >= 0'); } } /** * Method to change the published state of one or more records. * * @param array &$pks A list of the primary keys to change. * @param integer $value The value of the published state. * * @return boolean True on success. * * @since 4.0.0 */ public function publish(&$pks, $value = 1) { $this->workflowBeforeStageChange(); return parent::publish($pks, $value); } /** * Method to get a single record. * * @param integer $pk The id of the primary key. * * @return mixed Object on success, false on failure. */ public function getItem($pk = null) { if ($item = parent::getItem($pk)) { // Convert the params field to an array. $registry = new Registry($item->attribs); $item->attribs = $registry->toArray(); // Convert the metadata field to an array. $registry = new Registry($item->metadata); $item->metadata = $registry->toArray(); // Convert the images field to an array. $registry = new Registry($item->images); $item->images = $registry->toArray(); // Convert the urls field to an array. $registry = new Registry($item->urls); $item->urls = $registry->toArray(); $item->articletext = ($item->fulltext !== null && trim($item->fulltext) != '') ? $item->introtext . '<hr id="system-readmore">' . $item->fulltext : $item->introtext; if (!empty($item->id)) { $item->tags = new TagsHelper(); $item->tags->getTagIds($item->id, 'com_content.article'); $item->featured_up = null; $item->featured_down = null; if ($item->featured) { // Get featured dates. $db = $this->getDatabase(); $query = $db->getQuery(true) ->select( [ $db->quoteName('featured_up'), $db->quoteName('featured_down'), ] ) ->from($db->quoteName('#__content_frontpage')) ->where($db->quoteName('content_id') . ' = :id') ->bind(':id', $item->id, ParameterType::INTEGER); $featured = $db->setQuery($query)->loadObject(); if ($featured) { $item->featured_up = $featured->featured_up; $item->featured_down = $featured->featured_down; } } } } // Load associated content items $assoc = Associations::isEnabled(); if ($assoc) { $item->associations = []; if ($item->id != null) { $associations = Associations::getAssociations('com_content', '#__content', 'com_content.item', $item->id); foreach ($associations as $tag => $association) { $item->associations[$tag] = $association->id; } } } return $item; } /** * Method to get the record form. * * @param array $data Data for the form. * @param boolean $loadData True if the form is to load its own data (default case), false if not. * * @return Form|boolean A Form object on success, false on failure * * @since 1.6 */ public function getForm($data = [], $loadData = true) { $app = Factory::getApplication(); // Get the form. $form = $this->loadForm('com_content.article', 'article', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } // Object uses for checking edit state permission of article $record = new \stdClass(); // Get ID of the article from input, for frontend, we use a_id while backend uses id $articleIdFromInput = $app->isClient('site') ? $app->getInput()->getInt('a_id', 0) : $app->getInput()->getInt('id', 0); // On edit article, we get ID of article from article.id state, but on save, we use data from input $id = (int) $this->getState('article.id', $articleIdFromInput); $record->id = $id; // For new articles we load the potential state + associations if ($id == 0 && $formField = $form->getField('catid')) { $assignedCatids = $data['catid'] ?? $form->getValue('catid'); $assignedCatids = is_array($assignedCatids) ? (int) reset($assignedCatids) : (int) $assignedCatids; // Try to get the category from the category field if (empty($assignedCatids)) { $assignedCatids = $formField->getAttribute('default', null); if (!$assignedCatids) { // Choose the first category available $catOptions = $formField->options; if ($catOptions && !empty($catOptions[0]->value)) { $assignedCatids = (int) $catOptions[0]->value; } } } // Activate the reload of the form when category is changed $form->setFieldAttribute('catid', 'refresh-enabled', true); $form->setFieldAttribute('catid', 'refresh-cat-id', $assignedCatids); $form->setFieldAttribute('catid', 'refresh-section', 'article'); // Store ID of the category uses for edit state permission check $record->catid = $assignedCatids; } else { // Get the category which the article is being added to if (!empty($data['catid'])) { $catId = (int) $data['catid']; } else { $catIds = $form->getValue('catid'); $catId = is_array($catIds) ? (int) reset($catIds) : (int) $catIds; if (!$catId) { $catId = (int) $form->getFieldAttribute('catid', 'default', 0); } } $record->catid = $catId; } // Modify the form based on Edit State access controls. if (!$this->canEditState($record)) { // Disable fields for display. $form->setFieldAttribute('featured', 'disabled', 'true'); $form->setFieldAttribute('featured_up', 'disabled', 'true'); $form->setFieldAttribute('featured_down', 'disabled', 'true'); $form->setFieldAttribute('ordering', 'disabled', 'true'); $form->setFieldAttribute('publish_up', 'disabled', 'true'); $form->setFieldAttribute('publish_down', 'disabled', 'true'); $form->setFieldAttribute('state', 'disabled', 'true'); // Disable fields while saving. // The controller has already verified this is an article you can edit. $form->setFieldAttribute('featured', 'filter', 'unset'); $form->setFieldAttribute('featured_up', 'filter', 'unset'); $form->setFieldAttribute('featured_down', 'filter', 'unset'); $form->setFieldAttribute('ordering', 'filter', 'unset'); $form->setFieldAttribute('publish_up', 'filter', 'unset'); $form->setFieldAttribute('publish_down', 'filter', 'unset'); $form->setFieldAttribute('state', 'filter', 'unset'); } // Don't allow to change the created_by user if not allowed to access com_users. if (!$this->getCurrentUser()->authorise('core.manage', 'com_users')) { $form->setFieldAttribute('created_by', 'filter', 'unset'); } return $form; } /** * Method to get the data that should be injected in the form. * * @return mixed The data for the form. * * @since 1.6 */ protected function loadFormData() { // Check the session for previously entered form data. $app = Factory::getApplication(); $data = $app->getUserState('com_content.edit.article.data', []); if (empty($data)) { $data = $this->getItem(); // Pre-select some filters (Status, Category, Language, Access) in edit form if those have been selected in Article Manager: Articles if ($this->getState('article.id') == 0) { $filters = (array) $app->getUserState('com_content.articles.filter'); $data->set( 'state', $app->getInput()->getInt( 'state', ((isset($filters['published']) && $filters['published'] !== '') ? $filters['published'] : null) ) ); $data->set('catid', $app->getInput()->getInt('catid', (!empty($filters['category_id']) ? $filters['category_id'] : null))); if ($app->isClient('administrator')) { $data->set('language', $app->getInput()->getString('language', (!empty($filters['language']) ? $filters['language'] : null))); } $data->set( 'access', $app->getInput()->getInt('access', (!empty($filters['access']) ? $filters['access'] : $app->get('access'))) ); } } // If there are params fieldsets in the form it will fail with a registry object if (isset($data->params) && $data->params instanceof Registry) { $data->params = $data->params->toArray(); } $this->preprocessData('com_content.article', $data); return $data; } /** * Method to validate the form data. * * @param Form $form The form to validate against. * @param array $data The data to validate. * @param string $group The name of the field group to validate. * * @return array|boolean Array of filtered data if valid, false otherwise. * * @see \Joomla\CMS\Form\FormRule * @see JFilterInput * @since 3.7.0 */ public function validate($form, $data, $group = null) { if (!$this->getCurrentUser()->authorise('core.admin', 'com_content')) { if (isset($data['rules'])) { unset($data['rules']); } } return parent::validate($form, $data, $group); } /** * Method to save the form data. * * @param array $data The form data. * * @return boolean True on success. * * @since 1.6 */ public function save($data) { $app = Factory::getApplication(); $input = $app->getInput(); $filter = InputFilter::getInstance(); if (isset($data['metadata']) && isset($data['metadata']['author'])) { $data['metadata']['author'] = $filter->clean($data['metadata']['author'], 'TRIM'); } if (isset($data['created_by_alias'])) { $data['created_by_alias'] = $filter->clean($data['created_by_alias'], 'TRIM'); } if (isset($data['images']) && is_array($data['images'])) { $registry = new Registry($data['images']); $data['images'] = (string) $registry; } $this->workflowBeforeSave(); // Create new category, if needed. $createCategory = true; if (is_null($data['catid'])) { // When there is no catid passed don't try to create one $createCategory = false; } // If category ID is provided, check if it's valid. if (is_numeric($data['catid']) && $data['catid']) { $createCategory = !CategoriesHelper::validateCategoryId($data['catid'], 'com_content'); } // Save New Category if ($createCategory && $this->canCreateCategory()) { $category = [ // Remove #new# prefix, if exists. 'title' => strpos($data['catid'], '#new#') === 0 ? substr($data['catid'], 5) : $data['catid'], 'parent_id' => 1, 'extension' => 'com_content', 'language' => $data['language'], 'published' => 1, ]; /** @var \Joomla\Component\Categories\Administrator\Model\CategoryModel $categoryModel */ $categoryModel = Factory::getApplication()->bootComponent('com_categories') ->getMVCFactory()->createModel('Category', 'Administrator', ['ignore_request' => true]); // Create new category. if (!$categoryModel->save($category)) { $this->setError($categoryModel->getError()); return false; } // Get the Category ID. $data['catid'] = $categoryModel->getState('category.id'); } if (isset($data['urls']) && is_array($data['urls'])) { $check = $input->post->get('jform', [], 'array'); foreach ($data['urls'] as $i => $url) { if ($url != false && ($i == 'urla' || $i == 'urlb' || $i == 'urlc')) { if (preg_match('~^#[a-zA-Z]{1}[a-zA-Z0-9-_:.]*$~', $check['urls'][$i]) == 1) { $data['urls'][$i] = $check['urls'][$i]; } else { $data['urls'][$i] = PunycodeHelper::urlToPunycode($url); } } } unset($check); $registry = new Registry($data['urls']); $data['urls'] = (string) $registry; } // Alter the title for save as copy if ($input->get('task') == 'save2copy') { $origTable = $this->getTable(); if ($app->isClient('site')) { $origTable->load($input->getInt('a_id')); if ($origTable->title === $data['title']) { /** * If title of article is not changed, set alias to original article alias so that Joomla! will generate * new Title and Alias for the copied article */ $data['alias'] = $origTable->alias; } else { $data['alias'] = ''; } } else { $origTable->load($input->getInt('id')); } if ($data['title'] == $origTable->title) { list($title, $alias) = $this->generateNewTitle($data['catid'], $data['alias'], $data['title']); $data['title'] = $title; $data['alias'] = $alias; } elseif ($data['alias'] == $origTable->alias) { $data['alias'] = ''; } } // Automatic handling of alias for empty fields if (in_array($input->get('task'), ['apply', 'save', 'save2new']) && (!isset($data['id']) || (int) $data['id'] == 0)) { if ($data['alias'] == null) { if ($app->get('unicodeslugs') == 1) { $data['alias'] = OutputFilter::stringUrlUnicodeSlug($data['title']); } else { $data['alias'] = OutputFilter::stringURLSafe($data['title']); } $table = $this->getTable(); if ($table->load(['alias' => $data['alias'], 'catid' => $data['catid']])) { $msg = Text::_('COM_CONTENT_SAVE_WARNING'); } list($title, $alias) = $this->generateNewTitle($data['catid'], $data['alias'], $data['title']); $data['alias'] = $alias; if (isset($msg)) { $app->enqueueMessage($msg, 'warning'); } } } if (parent::save($data)) { // Check if featured is set and if not managed by workflow if (isset($data['featured']) && !$this->bootComponent('com_content')->isFunctionalityUsed('core.featured', 'com_content.article')) { if ( !$this->featured( $this->getState($this->getName() . '.id'), $data['featured'], $data['featured_up'] ?? null, $data['featured_down'] ?? null ) ) { return false; } } $this->workflowAfterSave($data); return true; } return false; } /** * Method to toggle the featured setting of articles. * * @param array $pks The ids of the items to toggle. * @param integer $value The value to toggle to. * @param string|Date $featuredUp The date which item featured up. * @param string|Date $featuredDown The date which item featured down. * * @return boolean True on success. */ public function featured($pks, $value = 0, $featuredUp = null, $featuredDown = null) { // Sanitize the ids. $pks = (array) $pks; $pks = ArrayHelper::toInteger($pks); $value = (int) $value; $context = $this->option . '.' . $this->name; $this->workflowBeforeStageChange(); // Include the plugins for the change of state event. PluginHelper::importPlugin($this->events_map['featured']); // Convert empty strings to null for the query. if ($featuredUp === '') { $featuredUp = null; } if ($featuredDown === '') { $featuredDown = null; } if (empty($pks)) { $this->setError(Text::_('COM_CONTENT_NO_ITEM_SELECTED')); return false; } $table = $this->getTable('Featured', 'Administrator'); // Trigger the before change state event. $eventResult = Factory::getApplication()->getDispatcher()->dispatch( $this->event_before_change_featured, AbstractEvent::create( $this->event_before_change_featured, [ 'eventClass' => 'Joomla\Component\Content\Administrator\Event\Model\FeatureEvent', 'subject' => $this, 'extension' => $context, 'pks' => $pks, 'value' => $value, ] ) ); if ($eventResult->getArgument('abort', false)) { $this->setError(Text::_($eventResult->getArgument('abortReason'))); return false; } try { $db = $this->getDatabase(); $query = $db->getQuery(true) ->update($db->quoteName('#__content')) ->set($db->quoteName('featured') . ' = :featured') ->whereIn($db->quoteName('id'), $pks) ->bind(':featured', $value, ParameterType::INTEGER); $db->setQuery($query); $db->execute(); if ($value === 0) { // Adjust the mapping table. // Clear the existing features settings. $query = $db->getQuery(true) ->delete($db->quoteName('#__content_frontpage')) ->whereIn($db->quoteName('content_id'), $pks); $db->setQuery($query); $db->execute(); } else { // First, we find out which of our new featured articles are already featured. $query = $db->getQuery(true) ->select($db->quoteName('content_id')) ->from($db->quoteName('#__content_frontpage')) ->whereIn($db->quoteName('content_id'), $pks); $db->setQuery($query); $oldFeatured = $db->loadColumn(); // Update old featured articles if (count($oldFeatured)) { $query = $db->getQuery(true) ->update($db->quoteName('#__content_frontpage')) ->set( [ $db->quoteName('featured_up') . ' = :featuredUp', $db->quoteName('featured_down') . ' = :featuredDown', ] ) ->whereIn($db->quoteName('content_id'), $oldFeatured) ->bind(':featuredUp', $featuredUp, $featuredUp ? ParameterType::STRING : ParameterType::NULL) ->bind(':featuredDown', $featuredDown, $featuredDown ? ParameterType::STRING : ParameterType::NULL); $db->setQuery($query); $db->execute(); } // We diff the arrays to get a list of the articles that are newly featured $newFeatured = array_diff($pks, $oldFeatured); // Featuring. if ($newFeatured) { $query = $db->getQuery(true) ->insert($db->quoteName('#__content_frontpage')) ->columns( [ $db->quoteName('content_id'), $db->quoteName('ordering'), $db->quoteName('featured_up'), $db->quoteName('featured_down'), ] ); $dataTypes = [ ParameterType::INTEGER, ParameterType::INTEGER, $featuredUp ? ParameterType::STRING : ParameterType::NULL, $featuredDown ? ParameterType::STRING : ParameterType::NULL, ]; foreach ($newFeatured as $pk) { $query->values(implode(',', $query->bindArray([$pk, 0, $featuredUp, $featuredDown], $dataTypes))); } $db->setQuery($query); $db->execute(); } } } catch (\Exception $e) { $this->setError($e->getMessage()); return false; } $table->reorder(); // Trigger the change state event. Factory::getApplication()->getDispatcher()->dispatch( $this->event_after_change_featured, AbstractEvent::create( $this->event_after_change_featured, [ 'eventClass' => 'Joomla\Component\Content\Administrator\Event\Model\FeatureEvent', 'subject' => $this, 'extension' => $context, 'pks' => $pks, 'value' => $value, ] ) ); $this->cleanCache(); return true; } /** * A protected method to get a set of ordering conditions. * * @param object $table A record object. * * @return array An array of conditions to add to ordering queries. * * @since 1.6 */ protected function getReorderConditions($table) { return [ $this->getDatabase()->quoteName('catid') . ' = ' . (int) $table->catid, ]; } /** * Allows preprocessing of the Form object. * * @param Form $form The form object * @param array $data The data to be merged into the form object * @param string $group The plugin group to be executed * * @return void * * @since 3.0 */ protected function preprocessForm(Form $form, $data, $group = 'content') { if ($this->canCreateCategory()) { $form->setFieldAttribute('catid', 'allowAdd', 'true'); // Add a prefix for categories created on the fly. $form->setFieldAttribute('catid', 'customPrefix', '#new#'); } // Association content items if (Associations::isEnabled()) { $languages = LanguageHelper::getContentLanguages(false, false, null, 'ordering', 'asc'); if (count($languages) > 1) { $addform = new \SimpleXMLElement('<form />'); $fields = $addform->addChild('fields'); $fields->addAttribute('name', 'associations'); $fieldset = $fields->addChild('fieldset'); $fieldset->addAttribute('name', 'item_associations'); foreach ($languages as $language) { $field = $fieldset->addChild('field'); $field->addAttribute('name', $language->lang_code); $field->addAttribute('type', 'modal_article'); $field->addAttribute('language', $language->lang_code); $field->addAttribute('label', $language->title); $field->addAttribute('translate_label', 'false'); $field->addAttribute('select', 'true'); $field->addAttribute('new', 'true'); $field->addAttribute('edit', 'true'); $field->addAttribute('clear', 'true'); $field->addAttribute('propagate', 'true'); } $form->load($addform, false); } } $this->workflowPreprocessForm($form, $data); parent::preprocessForm($form, $data, $group); } /** * Custom clean the cache of com_content and content modules * * @param string $group The cache group * @param integer $clientId No longer used, will be removed without replacement * @deprecated 4.3 will be removed in 6.0 * * @return void * * @since 1.6 */ protected function cleanCache($group = null, $clientId = 0) { parent::cleanCache('com_content'); parent::cleanCache('mod_articles_archive'); parent::cleanCache('mod_articles_categories'); parent::cleanCache('mod_articles_category'); parent::cleanCache('mod_articles_latest'); parent::cleanCache('mod_articles_news'); parent::cleanCache('mod_articles_popular'); } /** * Void hit function for pagebreak when editing content from frontend * * @return void * * @since 3.6.0 */ public function hit() { } /** * Is the user allowed to create an on the fly category? * * @return boolean * * @since 3.6.1 */ private function canCreateCategory() { return $this->getCurrentUser()->authorise('core.create', 'com_content'); } /** * Delete #__content_frontpage items if the deleted articles was featured * * @param array $pks The primary key related to the contents that was deleted. * * @return boolean * * @since 3.7.0 */ public function delete(&$pks) { $return = parent::delete($pks); if ($return) { // Now check to see if this articles was featured if so delete it from the #__content_frontpage table $db = $this->getDatabase(); $query = $db->getQuery(true) ->delete($db->quoteName('#__content_frontpage')) ->whereIn($db->quoteName('content_id'), $pks); $db->setQuery($query); $db->execute(); $this->workflow->deleteAssociation($pks); } return $return; } } PKBA#]t�sVOO1components/com_content/src/Model/FeatureModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2010 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Model; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Feature model. * * @since 1.6 */ class FeatureModel extends ArticleModel { /** * Returns a Table object, always creating it. * * @param string $type The table type to instantiate * @param string $prefix A prefix for the table class name. Optional. * @param array $config Configuration array for model. Optional. * * @return \Joomla\CMS\Table\Table A database object * * @since 1.6 */ public function getTable($type = 'Featured', $prefix = 'Administrator', $config = []) { return parent::getTable($type, $prefix, $config); } /** * A protected method to get a set of ordering conditions. * * @param object $table A record object. * * @return array An array of conditions to add to ordering queries. * * @since 1.6 */ protected function getReorderConditions($table) { return []; } } PKBA#]����g�g2components/com_content/src/Model/ArticlesModel.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2008 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Model; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Table\Table; use Joomla\Component\Content\Administrator\Extension\ContentComponent; use Joomla\Database\ParameterType; use Joomla\Registry\Registry; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Methods supporting a list of article records. * * @since 1.6 */ class ArticlesModel extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @since 1.6 * @see \Joomla\CMS\MVC\Controller\BaseController */ public function __construct($config = []) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id', 'a.id', 'title', 'a.title', 'alias', 'a.alias', 'checked_out', 'a.checked_out', 'checked_out_time', 'a.checked_out_time', 'catid', 'a.catid', 'category_title', 'state', 'a.state', 'access', 'a.access', 'access_level', 'created', 'a.created', 'modified', 'a.modified', 'created_by', 'a.created_by', 'created_by_alias', 'a.created_by_alias', 'ordering', 'a.ordering', 'featured', 'a.featured', 'featured_up', 'fp.featured_up', 'featured_down', 'fp.featured_down', 'language', 'a.language', 'hits', 'a.hits', 'publish_up', 'a.publish_up', 'publish_down', 'a.publish_down', 'published', 'a.published', 'author_id', 'category_id', 'level', 'tag', 'rating_count', 'rating', 'stage', 'wa.stage_id', 'ws.title', ]; if (Associations::isEnabled()) { $config['filter_fields'][] = 'association'; } } parent::__construct($config); } /** * Get the filter form * * @param array $data data * @param boolean $loadData load current data * * @return \Joomla\CMS\Form\Form|null The Form object or null if the form can't be found * * @since 3.2 */ public function getFilterForm($data = [], $loadData = true) { $form = parent::getFilterForm($data, $loadData); $params = ComponentHelper::getParams('com_content'); if (!$params->get('workflow_enabled')) { $form->removeField('stage', 'filter'); } else { $ordering = $form->getField('fullordering', 'list'); $ordering->addOption('JSTAGE_ASC', ['value' => 'ws.title ASC']); $ordering->addOption('JSTAGE_DESC', ['value' => 'ws.title DESC']); } return $form; } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.6 */ protected function populateState($ordering = 'a.id', $direction = 'desc') { $app = Factory::getApplication(); $input = $app->getInput(); $forcedLanguage = $input->get('forcedLanguage', '', 'cmd'); // Adjust the context to support modal layouts. if ($layout = $input->get('layout')) { $this->context .= '.' . $layout; } // Adjust the context to support forced languages. if ($forcedLanguage) { $this->context .= '.' . $forcedLanguage; } $search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search'); $this->setState('filter.search', $search); $featured = $this->getUserStateFromRequest($this->context . '.filter.featured', 'filter_featured', ''); $this->setState('filter.featured', $featured); $published = $this->getUserStateFromRequest($this->context . '.filter.published', 'filter_published', ''); $this->setState('filter.published', $published); $level = $this->getUserStateFromRequest($this->context . '.filter.level', 'filter_level'); $this->setState('filter.level', $level); $language = $this->getUserStateFromRequest($this->context . '.filter.language', 'filter_language', ''); $this->setState('filter.language', $language); $formSubmitted = $input->post->get('form_submitted'); // Gets the value of a user state variable and sets it in the session $this->getUserStateFromRequest($this->context . '.filter.access', 'filter_access'); $this->getUserStateFromRequest($this->context . '.filter.author_id', 'filter_author_id'); $this->getUserStateFromRequest($this->context . '.filter.category_id', 'filter_category_id'); $this->getUserStateFromRequest($this->context . '.filter.tag', 'filter_tag', ''); if ($formSubmitted) { $access = $input->post->get('access'); $this->setState('filter.access', $access); $authorId = $input->post->get('author_id'); $this->setState('filter.author_id', $authorId); $categoryId = $input->post->get('category_id'); $this->setState('filter.category_id', $categoryId); $tag = $input->post->get('tag'); $this->setState('filter.tag', $tag); } // List state information. parent::populateState($ordering, $direction); // Force a language if (!empty($forcedLanguage)) { $this->setState('filter.language', $forcedLanguage); $this->setState('filter.forcedLanguage', $forcedLanguage); } } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string $id A prefix for the store id. * * @return string A store id. * * @since 1.6 */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); $id .= ':' . serialize($this->getState('filter.access')); $id .= ':' . $this->getState('filter.published'); $id .= ':' . serialize($this->getState('filter.category_id')); $id .= ':' . serialize($this->getState('filter.author_id')); $id .= ':' . $this->getState('filter.language'); $id .= ':' . serialize($this->getState('filter.tag')); return parent::getStoreId($id); } /** * Build an SQL query to load the list data. * * @return \Joomla\Database\DatabaseQuery * * @since 1.6 */ protected function getListQuery() { // Create a new query object. $db = $this->getDatabase(); $query = $db->getQuery(true); $user = $this->getCurrentUser(); $params = ComponentHelper::getParams('com_content'); // Select the required fields from the table. $query->select( $this->getState( 'list.select', [ $db->quoteName('a.id'), $db->quoteName('a.asset_id'), $db->quoteName('a.title'), $db->quoteName('a.alias'), $db->quoteName('a.checked_out'), $db->quoteName('a.checked_out_time'), $db->quoteName('a.catid'), $db->quoteName('a.state'), $db->quoteName('a.access'), $db->quoteName('a.created'), $db->quoteName('a.created_by'), $db->quoteName('a.created_by_alias'), $db->quoteName('a.modified'), $db->quoteName('a.ordering'), $db->quoteName('a.featured'), $db->quoteName('a.language'), $db->quoteName('a.hits'), $db->quoteName('a.publish_up'), $db->quoteName('a.publish_down'), $db->quoteName('a.introtext'), $db->quoteName('a.fulltext'), $db->quoteName('a.note'), $db->quoteName('a.images'), $db->quoteName('a.metakey'), $db->quoteName('a.metadesc'), $db->quoteName('a.metadata'), $db->quoteName('a.version'), ] ) ) ->select( [ $db->quoteName('fp.featured_up'), $db->quoteName('fp.featured_down'), $db->quoteName('l.title', 'language_title'), $db->quoteName('l.image', 'language_image'), $db->quoteName('uc.name', 'editor'), $db->quoteName('ag.title', 'access_level'), $db->quoteName('c.title', 'category_title'), $db->quoteName('c.created_user_id', 'category_uid'), $db->quoteName('c.level', 'category_level'), $db->quoteName('c.published', 'category_published'), $db->quoteName('parent.title', 'parent_category_title'), $db->quoteName('parent.id', 'parent_category_id'), $db->quoteName('parent.created_user_id', 'parent_category_uid'), $db->quoteName('parent.level', 'parent_category_level'), $db->quoteName('ua.name', 'author_name'), $db->quoteName('wa.stage_id', 'stage_id'), $db->quoteName('ws.title', 'stage_title'), $db->quoteName('ws.workflow_id', 'workflow_id'), $db->quoteName('w.title', 'workflow_title'), ] ) ->from($db->quoteName('#__content', 'a')) ->where($db->quoteName('wa.extension') . ' = ' . $db->quote('com_content.article')) ->join('LEFT', $db->quoteName('#__languages', 'l'), $db->quoteName('l.lang_code') . ' = ' . $db->quoteName('a.language')) ->join('LEFT', $db->quoteName('#__content_frontpage', 'fp'), $db->quoteName('fp.content_id') . ' = ' . $db->quoteName('a.id')) ->join('LEFT', $db->quoteName('#__users', 'uc'), $db->quoteName('uc.id') . ' = ' . $db->quoteName('a.checked_out')) ->join('LEFT', $db->quoteName('#__viewlevels', 'ag'), $db->quoteName('ag.id') . ' = ' . $db->quoteName('a.access')) ->join('LEFT', $db->quoteName('#__categories', 'c'), $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid')) ->join('LEFT', $db->quoteName('#__categories', 'parent'), $db->quoteName('parent.id') . ' = ' . $db->quoteName('c.parent_id')) ->join('LEFT', $db->quoteName('#__users', 'ua'), $db->quoteName('ua.id') . ' = ' . $db->quoteName('a.created_by')) ->join('INNER', $db->quoteName('#__workflow_associations', 'wa'), $db->quoteName('wa.item_id') . ' = ' . $db->quoteName('a.id')) ->join('INNER', $db->quoteName('#__workflow_stages', 'ws'), $db->quoteName('ws.id') . ' = ' . $db->quoteName('wa.stage_id')) ->join('INNER', $db->quoteName('#__workflows', 'w'), $db->quoteName('w.id') . ' = ' . $db->quoteName('ws.workflow_id')); if (PluginHelper::isEnabled('content', 'vote')) { $query->select( [ 'COALESCE(NULLIF(ROUND(' . $db->quoteName('v.rating_sum') . ' / ' . $db->quoteName('v.rating_count') . ', 0), 0), 0)' . ' AS ' . $db->quoteName('rating'), 'COALESCE(NULLIF(' . $db->quoteName('v.rating_count') . ', 0), 0) AS ' . $db->quoteName('rating_count'), ] ) ->join('LEFT', $db->quoteName('#__content_rating', 'v'), $db->quoteName('a.id') . ' = ' . $db->quoteName('v.content_id')); } // Join over the associations. if (Associations::isEnabled()) { $subQuery = $db->getQuery(true) ->select('COUNT(' . $db->quoteName('asso1.id') . ') > 1') ->from($db->quoteName('#__associations', 'asso1')) ->join('INNER', $db->quoteName('#__associations', 'asso2'), $db->quoteName('asso1.key') . ' = ' . $db->quoteName('asso2.key')) ->where( [ $db->quoteName('asso1.id') . ' = ' . $db->quoteName('a.id'), $db->quoteName('asso1.context') . ' = ' . $db->quote('com_content.item'), ] ); $query->select('(' . $subQuery . ') AS ' . $db->quoteName('association')); } // Filter by access level. $access = $this->getState('filter.access'); if (is_numeric($access)) { $access = (int) $access; $query->where($db->quoteName('a.access') . ' = :access') ->bind(':access', $access, ParameterType::INTEGER); } elseif (is_array($access)) { $access = ArrayHelper::toInteger($access); $query->whereIn($db->quoteName('a.access'), $access); } // Filter by featured. $featured = (string) $this->getState('filter.featured'); if (\in_array($featured, ['0','1'])) { $featured = (int) $featured; $query->where($db->quoteName('a.featured') . ' = :featured') ->bind(':featured', $featured, ParameterType::INTEGER); } // Filter by access level on categories. if (!$user->authorise('core.admin')) { $groups = $user->getAuthorisedViewLevels(); $query->whereIn($db->quoteName('a.access'), $groups); $query->whereIn($db->quoteName('c.access'), $groups); } // Filter by published state $workflowStage = (string) $this->getState('filter.stage'); if ($params->get('workflow_enabled') && is_numeric($workflowStage)) { $workflowStage = (int) $workflowStage; $query->where($db->quoteName('wa.stage_id') . ' = :stage') ->bind(':stage', $workflowStage, ParameterType::INTEGER); } $published = (string) $this->getState('filter.published'); if ($published !== '*') { if (is_numeric($published)) { $state = (int) $published; $query->where($db->quoteName('a.state') . ' = :state') ->bind(':state', $state, ParameterType::INTEGER); } elseif (!is_numeric($workflowStage)) { $query->whereIn( $db->quoteName('a.state'), [ ContentComponent::CONDITION_PUBLISHED, ContentComponent::CONDITION_UNPUBLISHED, ] ); } } // Filter by categories and by level $categoryId = $this->getState('filter.category_id', []); $level = (int) $this->getState('filter.level'); if (!is_array($categoryId)) { $categoryId = $categoryId ? [$categoryId] : []; } // Case: Using both categories filter and by level filter if (count($categoryId)) { $categoryId = ArrayHelper::toInteger($categoryId); $categoryTable = Table::getInstance('Category', 'JTable'); $subCatItemsWhere = []; foreach ($categoryId as $key => $filter_catid) { $categoryTable->load($filter_catid); // Because values to $query->bind() are passed by reference, using $query->bindArray() here instead to prevent overwriting. $valuesToBind = [$categoryTable->lft, $categoryTable->rgt]; if ($level) { $valuesToBind[] = $level + $categoryTable->level - 1; } // Bind values and get parameter names. $bounded = $query->bindArray($valuesToBind); $categoryWhere = $db->quoteName('c.lft') . ' >= ' . $bounded[0] . ' AND ' . $db->quoteName('c.rgt') . ' <= ' . $bounded[1]; if ($level) { $categoryWhere .= ' AND ' . $db->quoteName('c.level') . ' <= ' . $bounded[2]; } $subCatItemsWhere[] = '(' . $categoryWhere . ')'; } $query->where('(' . implode(' OR ', $subCatItemsWhere) . ')'); } elseif ($level = (int) $level) { // Case: Using only the by level filter $query->where($db->quoteName('c.level') . ' <= :level') ->bind(':level', $level, ParameterType::INTEGER); } // Filter by author $authorId = $this->getState('filter.author_id'); if (is_numeric($authorId)) { $authorId = (int) $authorId; $type = $this->getState('filter.author_id.include', true) ? ' = ' : ' <> '; $query->where($db->quoteName('a.created_by') . $type . ':authorId') ->bind(':authorId', $authorId, ParameterType::INTEGER); } elseif (is_array($authorId)) { // Check to see if by_me is in the array if (\in_array('by_me', $authorId)) { // Replace by_me with the current user id in the array $authorId['by_me'] = $user->id; } $authorId = ArrayHelper::toInteger($authorId); $query->whereIn($db->quoteName('a.created_by'), $authorId); } // Filter by search in title. $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $search = (int) substr($search, 3); $query->where($db->quoteName('a.id') . ' = :search') ->bind(':search', $search, ParameterType::INTEGER); } elseif (stripos($search, 'author:') === 0) { $search = '%' . substr($search, 7) . '%'; $query->where('(' . $db->quoteName('ua.name') . ' LIKE :search1 OR ' . $db->quoteName('ua.username') . ' LIKE :search2)') ->bind([':search1', ':search2'], $search); } elseif (stripos($search, 'content:') === 0) { $search = '%' . substr($search, 8) . '%'; $query->where('(' . $db->quoteName('a.introtext') . ' LIKE :search1 OR ' . $db->quoteName('a.fulltext') . ' LIKE :search2)') ->bind([':search1', ':search2'], $search); } else { $search = '%' . str_replace(' ', '%', trim($search)) . '%'; $query->where( '(' . $db->quoteName('a.title') . ' LIKE :search1 OR ' . $db->quoteName('a.alias') . ' LIKE :search2' . ' OR ' . $db->quoteName('a.note') . ' LIKE :search3)' ) ->bind([':search1', ':search2', ':search3'], $search); } } // Filter on the language. if ($language = $this->getState('filter.language')) { $query->where($db->quoteName('a.language') . ' = :language') ->bind(':language', $language); } // Filter by a single or group of tags. $tag = $this->getState('filter.tag'); // Run simplified query when filtering by one tag. if (\is_array($tag) && \count($tag) === 1) { $tag = $tag[0]; } if ($tag && \is_array($tag)) { $tag = ArrayHelper::toInteger($tag); $subQuery = $db->getQuery(true) ->select('DISTINCT ' . $db->quoteName('content_item_id')) ->from($db->quoteName('#__contentitem_tag_map')) ->where( [ $db->quoteName('tag_id') . ' IN (' . implode(',', $query->bindArray($tag)) . ')', $db->quoteName('type_alias') . ' = ' . $db->quote('com_content.article'), ] ); $query->join( 'INNER', '(' . $subQuery . ') AS ' . $db->quoteName('tagmap'), $db->quoteName('tagmap.content_item_id') . ' = ' . $db->quoteName('a.id') ); } elseif ($tag = (int) $tag) { $query->join( 'INNER', $db->quoteName('#__contentitem_tag_map', 'tagmap'), $db->quoteName('tagmap.content_item_id') . ' = ' . $db->quoteName('a.id') ) ->where( [ $db->quoteName('tagmap.tag_id') . ' = :tag', $db->quoteName('tagmap.type_alias') . ' = ' . $db->quote('com_content.article'), ] ) ->bind(':tag', $tag, ParameterType::INTEGER); } // Add the list ordering clause. $orderCol = $this->state->get('list.ordering', 'a.id'); $orderDirn = $this->state->get('list.direction', 'DESC'); if ($orderCol === 'a.ordering' || $orderCol === 'category_title') { $ordering = [ $db->quoteName('c.title') . ' ' . $db->escape($orderDirn), $db->quoteName('a.ordering') . ' ' . $db->escape($orderDirn), ]; } else { $ordering = $db->escape($orderCol) . ' ' . $db->escape($orderDirn); } $query->order($ordering); return $query; } /** * Method to get all transitions at once for all articles * * @return array|boolean * * @since 4.0.0 */ public function getTransitions() { // Get a storage key. $store = $this->getStoreId('getTransitions'); // Try to load the data from internal storage. if (isset($this->cache[$store])) { return $this->cache[$store]; } $db = $this->getDatabase(); $user = $this->getCurrentUser(); $items = $this->getItems(); if ($items === false) { return false; } $stage_ids = ArrayHelper::getColumn($items, 'stage_id'); $stage_ids = ArrayHelper::toInteger($stage_ids); $stage_ids = array_values(array_unique(array_filter($stage_ids))); $workflow_ids = ArrayHelper::getColumn($items, 'workflow_id'); $workflow_ids = ArrayHelper::toInteger($workflow_ids); $workflow_ids = array_values(array_unique(array_filter($workflow_ids))); $this->cache[$store] = []; try { if (count($stage_ids) || count($workflow_ids)) { Factory::getLanguage()->load('com_workflow', JPATH_ADMINISTRATOR); $query = $db->getQuery(true); $query ->select( [ $db->quoteName('t.id', 'value'), $db->quoteName('t.title', 'text'), $db->quoteName('t.from_stage_id'), $db->quoteName('t.to_stage_id'), $db->quoteName('s.id', 'stage_id'), $db->quoteName('s.title', 'stage_title'), $db->quoteName('t.workflow_id'), ] ) ->from($db->quoteName('#__workflow_transitions', 't')) ->innerJoin( $db->quoteName('#__workflow_stages', 's'), $db->quoteName('t.to_stage_id') . ' = ' . $db->quoteName('s.id') ) ->where( [ $db->quoteName('t.published') . ' = 1', $db->quoteName('s.published') . ' = 1', ] ) ->order($db->quoteName('t.ordering')); $where = []; if (count($stage_ids)) { $where[] = $db->quoteName('t.from_stage_id') . ' IN (' . implode(',', $query->bindArray($stage_ids)) . ')'; } if (count($workflow_ids)) { $where[] = '(' . $db->quoteName('t.from_stage_id') . ' = -1 AND ' . $db->quoteName('t.workflow_id') . ' IN (' . implode(',', $query->bindArray($workflow_ids)) . '))'; } $query->where('((' . implode(') OR (', $where) . '))'); $transitions = $db->setQuery($query)->loadAssocList(); foreach ($transitions as $key => $transition) { if (!$user->authorise('core.execute.transition', 'com_content.transition.' . (int) $transition['value'])) { unset($transitions[$key]); } $transitions[$key]['text'] = Text::_($transition['text']); } $this->cache[$store] = $transitions; } } catch (\RuntimeException $e) { $this->setError($e->getMessage()); return false; } return $this->cache[$store]; } /** * Method to get a list of articles. * Overridden to add item type alias. * * @return mixed An array of data items on success, false on failure. * * @since 4.0.0 */ public function getItems() { $items = parent::getItems(); foreach ($items as $item) { $item->typeAlias = 'com_content.article'; if (isset($item->metadata)) { $registry = new Registry($item->metadata); $item->metadata = $registry->toArray(); } } return $items; } } PKBA#]�L//@components/com_content/src/Service/HTML/AdministratorService.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2007 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Service\HTML; use Joomla\CMS\Factory; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\Database\ParameterType; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Content HTML helper * * @since 3.0 */ class AdministratorService { /** * Render the list of associated items * * @param integer $articleid The article item id * * @return string The language HTML * * @throws \Exception */ public function association($articleid) { // Defaults $html = ''; // Get the associations if ($associations = Associations::getAssociations('com_content', '#__content', 'com_content.item', $articleid)) { foreach ($associations as $tag => $associated) { $associations[$tag] = (int) $associated->id; } // Get the associated menu items $db = Factory::getDbo(); $query = $db->getQuery(true) ->select( [ 'c.*', $db->quoteName('l.sef', 'lang_sef'), $db->quoteName('l.lang_code'), $db->quoteName('cat.title', 'category_title'), $db->quoteName('l.image'), $db->quoteName('l.title', 'language_title'), ] ) ->from($db->quoteName('#__content', 'c')) ->join('LEFT', $db->quoteName('#__categories', 'cat'), $db->quoteName('cat.id') . ' = ' . $db->quoteName('c.catid')) ->join('LEFT', $db->quoteName('#__languages', 'l'), $db->quoteName('c.language') . ' = ' . $db->quoteName('l.lang_code')) ->whereIn($db->quoteName('c.id'), array_values($associations)) ->where($db->quoteName('c.id') . ' != :articleId') ->bind(':articleId', $articleid, ParameterType::INTEGER); $db->setQuery($query); try { $items = $db->loadObjectList('id'); } catch (\RuntimeException $e) { throw new \Exception($e->getMessage(), 500, $e); } if ($items) { $languages = LanguageHelper::getContentLanguages([0, 1]); $content_languages = array_column($languages, 'lang_code'); foreach ($items as &$item) { if (in_array($item->lang_code, $content_languages)) { $text = $item->lang_code; $url = Route::_('index.php?option=com_content&task=article.edit&id=' . (int) $item->id); $tooltip = '<strong>' . htmlspecialchars($item->language_title, ENT_QUOTES, 'UTF-8') . '</strong><br>' . htmlspecialchars($item->title, ENT_QUOTES, 'UTF-8') . '<br>' . Text::sprintf('JCATEGORY_SPRINTF', $item->category_title); $classes = 'badge bg-secondary'; $item->link = '<a href="' . $url . '" class="' . $classes . '">' . $text . '</a>' . '<div role="tooltip" id="tip-' . (int) $articleid . '-' . (int) $item->id . '">' . $tooltip . '</div>'; } else { // Display warning if Content Language is trashed or deleted Factory::getApplication()->enqueueMessage(Text::sprintf('JGLOBAL_ASSOCIATIONS_CONTENTLANGUAGE_WARNING', $item->lang_code), 'warning'); } } } $html = LayoutHelper::render('joomla.content.associations', $items); } return $html; } } PKBA#]�ߛ��0components/com_content/src/Service/HTML/Icon.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Service\HTML; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\LayoutHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Workflow\Workflow; use Joomla\Component\Content\Site\Helper\RouteHelper; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Content Component HTML Helper * * @since 4.0.0 */ class Icon { /** * Method to generate a link to the create item page for the given category * * @param object $category The category information * @param Registry $params The item parameters * @param array $attribs Optional attributes for the link * @param boolean $legacy True to use legacy images, false to use icomoon based graphic * * @return string The HTML markup for the create item link * * @since 4.0.0 */ public function create($category, $params, $attribs = [], $legacy = false) { $uri = Uri::getInstance(); $url = 'index.php?option=com_content&task=article.add&return=' . base64_encode($uri) . '&a_id=0&catid=' . $category->id; $text = ''; if ($params->get('show_icons')) { $text .= '<span class="icon-plus icon-fw" aria-hidden="true"></span>'; } $text .= Text::_('COM_CONTENT_NEW_ARTICLE'); // Add the button classes to the attribs array if (isset($attribs['class'])) { $attribs['class'] .= ' btn btn-primary'; } else { $attribs['class'] = 'btn btn-primary'; } $button = HTMLHelper::_('link', Route::_($url), $text, $attribs); return $button; } /** * Display an edit icon for the article. * * This icon will not display in a popup window, nor if the article is trashed. * Edit access checks must be performed in the calling code. * * @param object $article The article information * @param Registry $params The item parameters * @param array $attribs Optional attributes for the link * @param boolean $legacy True to use legacy images, false to use icomoon based graphic * * @return string The HTML for the article edit icon. * * @since 4.0.0 */ public function edit($article, $params, $attribs = [], $legacy = false) { $user = Factory::getUser(); $uri = Uri::getInstance(); // Ignore if in a popup window. if ($params && $params->get('popup')) { return ''; } // Ignore if the state is negative (trashed). if (!in_array($article->state, [Workflow::CONDITION_UNPUBLISHED, Workflow::CONDITION_PUBLISHED])) { return ''; } // Show checked_out icon if the article is checked out by a different user if ( property_exists($article, 'checked_out') && property_exists($article, 'checked_out_time') && !is_null($article->checked_out) && $article->checked_out != $user->get('id') ) { $checkoutUser = Factory::getUser($article->checked_out); $date = HTMLHelper::_('date', $article->checked_out_time); $tooltip = Text::sprintf('COM_CONTENT_CHECKED_OUT_BY', $checkoutUser->name) . ' <br> ' . $date; $text = LayoutHelper::render('joomla.content.icons.edit_lock', ['article' => $article, 'tooltip' => $tooltip, 'legacy' => $legacy]); $attribs['aria-describedby'] = 'editarticle-' . (int) $article->id; $output = HTMLHelper::_('link', '#', $text, $attribs); return $output; } $contentUrl = RouteHelper::getArticleRoute($article->slug, $article->catid, $article->language); $url = $contentUrl . '&task=article.edit&a_id=' . $article->id . '&return=' . base64_encode($uri); if ($article->state == Workflow::CONDITION_UNPUBLISHED) { $tooltip = Text::_('COM_CONTENT_EDIT_UNPUBLISHED_ARTICLE'); } else { $tooltip = Text::_('COM_CONTENT_EDIT_PUBLISHED_ARTICLE'); } $text = LayoutHelper::render('joomla.content.icons.edit', ['article' => $article, 'tooltip' => $tooltip, 'legacy' => $legacy]); $attribs['aria-describedby'] = 'editarticle-' . (int) $article->id; $output = HTMLHelper::_('link', Route::_($url), $text, $attribs); return $output; } /** * Method to generate a link to print an article * * @param Registry $params The item parameters * @param boolean $legacy True to use legacy images, false to use icomoon based graphic * * @return string The HTML markup for the popup link * * @since 4.0.0 */ public function print_screen($params, $legacy = false) { $text = LayoutHelper::render('joomla.content.icons.print_screen', ['params' => $params, 'legacy' => $legacy]); return '<button type="button" onclick="window.print();return false;">' . $text . '</button>'; } } PKBA#]p��((8components/com_content/src/Helper/AssociationsHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Helper; use Joomla\CMS\Association\AssociationExtensionHelper; use Joomla\CMS\Language\Associations; use Joomla\CMS\Table\Table; use Joomla\Component\Content\Site\Helper\AssociationHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Content associations helper. * * @since 3.7.0 */ class AssociationsHelper extends AssociationExtensionHelper { /** * The extension name * * @var array $extension * * @since 3.7.0 */ protected $extension = 'com_content'; /** * Array of item types * * @var array $itemTypes * * @since 3.7.0 */ protected $itemTypes = ['article', 'category']; /** * Has the extension association support * * @var boolean $associationsSupport * * @since 3.7.0 */ protected $associationsSupport = true; /** * Method to get the associations for a given item. * * @param integer $id Id of the item * @param string $view Name of the view * * @return array Array of associations for the item * * @since 4.0.0 */ public function getAssociationsForItem($id = 0, $view = null) { return AssociationHelper::getAssociations($id, $view); } /** * Get the associated items for an item * * @param string $typeName The item type * @param int $id The id of item for which we need the associated items * * @return array * * @since 3.7.0 */ public function getAssociations($typeName, $id) { $type = $this->getType($typeName); $context = $this->extension . '.item'; $catidField = 'catid'; if ($typeName === 'category') { $context = 'com_categories.item'; $catidField = ''; } // Get the associations. $associations = Associations::getAssociations( $this->extension, $type['tables']['a'], $context, $id, 'id', 'alias', $catidField ); return $associations; } /** * Get item information * * @param string $typeName The item type * @param int $id The id of item for which we need the associated items * * @return Table|null * * @since 3.7.0 */ public function getItem($typeName, $id) { if (empty($id)) { return null; } $table = null; switch ($typeName) { case 'article': $table = Table::getInstance('Content'); break; case 'category': $table = Table::getInstance('Category'); break; } if (is_null($table)) { return null; } $table->load($id); return $table; } /** * Get information about the type * * @param string $typeName The item type * * @return array Array of item types * * @since 3.7.0 */ public function getType($typeName = '') { $fields = $this->getFieldsTemplate(); $tables = []; $joins = []; $support = $this->getSupportTemplate(); $title = ''; if (in_array($typeName, $this->itemTypes)) { switch ($typeName) { case 'article': $support['state'] = true; $support['acl'] = true; $support['checkout'] = true; $support['category'] = true; $support['save2copy'] = true; $tables = [ 'a' => '#__content', ]; $title = 'article'; break; case 'category': $fields['created_user_id'] = 'a.created_user_id'; $fields['ordering'] = 'a.lft'; $fields['level'] = 'a.level'; $fields['catid'] = ''; $fields['state'] = 'a.published'; $support['state'] = true; $support['acl'] = true; $support['checkout'] = true; $support['level'] = true; $tables = [ 'a' => '#__categories', ]; $title = 'category'; break; } } return [ 'fields' => $fields, 'support' => $support, 'tables' => $tables, 'joins' => $joins, 'title' => $title, ]; } } PKBA#]��Q�ll3components/com_content/src/Helper/ContentHelper.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Helper; use Joomla\CMS\Factory; use Joomla\CMS\Form\Form; use Joomla\CMS\Language\Text; use Joomla\CMS\Table\Category; use Joomla\CMS\Workflow\WorkflowServiceInterface; use Joomla\Database\ParameterType; use Joomla\Registry\Registry; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Content component helper. * * @since 1.6 */ class ContentHelper extends \Joomla\CMS\Helper\ContentHelper { /** * Check if state can be deleted * * @param int $id Id of state to delete * * @return boolean * * @since 4.0.0 */ public static function canDeleteState(int $id): bool { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('id') ->from($db->quoteName('#__content')) ->where($db->quoteName('state') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); $states = $db->loadResult(); return empty($states); } /** * Method to filter transitions by given id of state * * @param array $transitions Array of transitions * @param int $pk Id of state * @param int $workflowId Id of the workflow * * @return array * * @since 4.0.0 */ public static function filterTransitions(array $transitions, int $pk, int $workflowId = 0): array { return array_values( array_filter( $transitions, function ($var) use ($pk, $workflowId) { return in_array($var['from_stage_id'], [-1, $pk]) && $workflowId == $var['workflow_id']; } ) ); } /** * Prepares a form * * @param Form $form The form to change * @param array|object $data The form data * * @return void */ public static function onPrepareForm(Form $form, $data) { if ($form->getName() != 'com_categories.categorycom_content') { return; } $db = Factory::getDbo(); $data = (array) $data; // Make workflows translatable Factory::getLanguage()->load('com_workflow', JPATH_ADMINISTRATOR); $form->setFieldAttribute('workflow_id', 'default', 'inherit'); $component = Factory::getApplication()->bootComponent('com_content'); if ( !$component instanceof WorkflowServiceInterface || !$component->isWorkflowActive('com_content.article') ) { $form->removeField('workflow_id', 'params'); return; } $query = $db->getQuery(true); $query->select($db->quoteName('title')) ->from($db->quoteName('#__workflows')) ->where( [ $db->quoteName('default') . ' = 1', $db->quoteName('published') . ' = 1', $db->quoteName('extension') . ' = ' . $db->quote('com_content.article'), ] ); $defaulttitle = $db->setQuery($query)->loadResult(); $option = Text::_('COM_WORKFLOW_INHERIT_WORKFLOW_NEW'); if (!empty($data['id'])) { $category = new Category($db); $categories = $category->getPath((int) $data['id']); // Remove the current category, because we search for inheritance from parent. array_pop($categories); $option = Text::sprintf('COM_WORKFLOW_INHERIT_WORKFLOW', Text::_($defaulttitle)); if (!empty($categories)) { $categories = array_reverse($categories); $query = $db->getQuery(true); $query->select($db->quoteName('title')) ->from($db->quoteName('#__workflows')) ->where( [ $db->quoteName('id') . ' = :workflowId', $db->quoteName('published') . ' = 1', $db->quoteName('extension') . ' = ' . $db->quote('com_content.article'), ] ) ->bind(':workflowId', $workflow_id, ParameterType::INTEGER); $db->setQuery($query); foreach ($categories as $cat) { $cat->params = new Registry($cat->params); $workflow_id = $cat->params->get('workflow_id'); if ($workflow_id == 'inherit') { continue; } elseif ($workflow_id == 'use_default') { break; } elseif ($workflow_id = (int) $workflow_id) { $title = $db->loadResult(); if (!is_null($title)) { $option = Text::sprintf('COM_WORKFLOW_INHERIT_WORKFLOW', Text::_($title)); break; } } } } } $field = $form->getField('workflow_id', 'params'); $field->addOption($option, ['value' => 'inherit']); $field->addOption(Text::sprintf('COM_WORKFLOW_USE_DEFAULT_WORKFLOW', Text::_($defaulttitle)), ['value' => 'use_default']); $field->addOption('- ' . Text::_('COM_CONTENT_WORKFLOWS') . ' -', ['disabled' => 'true']); } } PKBA#]� ��%�%9components/com_content/src/Extension/ContentComponent.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Extension; use Joomla\CMS\Association\AssociationServiceInterface; use Joomla\CMS\Association\AssociationServiceTrait; use Joomla\CMS\Categories\CategoryServiceInterface; use Joomla\CMS\Categories\CategoryServiceTrait; use Joomla\CMS\Component\Router\RouterServiceInterface; use Joomla\CMS\Component\Router\RouterServiceTrait; use Joomla\CMS\Extension\BootableExtensionInterface; use Joomla\CMS\Extension\MVCComponent; use Joomla\CMS\Factory; use Joomla\CMS\Fields\FieldsServiceInterface; use Joomla\CMS\Form\Form; use Joomla\CMS\Helper\ContentHelper as LibraryContentHelper; use Joomla\CMS\HTML\HTMLRegistryAwareTrait; use Joomla\CMS\Language\Text; use Joomla\CMS\Tag\TagServiceInterface; use Joomla\CMS\Tag\TagServiceTrait; use Joomla\CMS\Workflow\WorkflowServiceInterface; use Joomla\CMS\Workflow\WorkflowServiceTrait; use Joomla\Component\Content\Administrator\Helper\ContentHelper; use Joomla\Component\Content\Administrator\Service\HTML\AdministratorService; use Joomla\Component\Content\Administrator\Service\HTML\Icon; use Psr\Container\ContainerInterface; // phpcs:disable PSR1.Files.SideEffects \defined('JPATH_PLATFORM') or die; // phpcs:enable PSR1.Files.SideEffects /** * Component class for com_content * * @since 4.0.0 */ class ContentComponent extends MVCComponent implements BootableExtensionInterface, CategoryServiceInterface, FieldsServiceInterface, AssociationServiceInterface, WorkflowServiceInterface, RouterServiceInterface, TagServiceInterface { use AssociationServiceTrait; use RouterServiceTrait; use HTMLRegistryAwareTrait; use WorkflowServiceTrait; use CategoryServiceTrait, TagServiceTrait { CategoryServiceTrait::getTableNameForSection insteadof TagServiceTrait; CategoryServiceTrait::getStateColumnForSection insteadof TagServiceTrait; } /** @var array Supported functionality */ protected $supportedFunctionality = [ 'core.featured' => true, 'core.state' => true, ]; /** * The trashed condition * * @since 4.0.0 */ public const CONDITION_NAMES = [ self::CONDITION_PUBLISHED => 'JPUBLISHED', self::CONDITION_UNPUBLISHED => 'JUNPUBLISHED', self::CONDITION_ARCHIVED => 'JARCHIVED', self::CONDITION_TRASHED => 'JTRASHED', ]; /** * The archived condition * * @since 4.0.0 */ public const CONDITION_ARCHIVED = 2; /** * The published condition * * @since 4.0.0 */ public const CONDITION_PUBLISHED = 1; /** * The unpublished condition * * @since 4.0.0 */ public const CONDITION_UNPUBLISHED = 0; /** * The trashed condition * * @since 4.0.0 */ public const CONDITION_TRASHED = -2; /** * Booting the extension. This is the function to set up the environment of the extension like * registering new class loaders, etc. * * If required, some initial set up can be done from services of the container, eg. * registering HTML services. * * @param ContainerInterface $container The container * * @return void * * @since 4.0.0 */ public function boot(ContainerInterface $container) { $this->getRegistry()->register('contentadministrator', new AdministratorService()); $this->getRegistry()->register('contenticon', new Icon()); // The layout joomla.content.icons does need a general icon service $this->getRegistry()->register('icon', $this->getRegistry()->getService('contenticon')); } /** * Returns a valid section for the given section. If it is not valid then null * is returned. * * @param string $section The section to get the mapping for * @param object $item The item * * @return string|null The new section * * @since 4.0.0 */ public function validateSection($section, $item = null) { if (Factory::getApplication()->isClient('site')) { // On the front end we need to map some sections switch ($section) { // Editing an article case 'form': // Category list view case 'featured': case 'category': $section = 'article'; } } if ($section != 'article') { // We don't know other sections return null; } return $section; } /** * Returns valid contexts * * @return array * * @since 4.0.0 */ public function getContexts(): array { Factory::getLanguage()->load('com_content', JPATH_ADMINISTRATOR); $contexts = [ 'com_content.article' => Text::_('COM_CONTENT'), 'com_content.categories' => Text::_('JCATEGORY'), ]; return $contexts; } /** * Returns valid contexts * * @return array * * @since 4.0.0 */ public function getWorkflowContexts(): array { Factory::getLanguage()->load('com_content', JPATH_ADMINISTRATOR); $contexts = [ 'com_content.article' => Text::_('COM_CONTENT'), ]; return $contexts; } /** * Returns the workflow context based on the given category section * * @param string $section The section * * @return string|null * * @since 4.0.0 */ public function getCategoryWorkflowContext(?string $section = null): string { $context = $this->getWorkflowContexts(); return array_key_first($context); } /** * Returns the table for the count items functions for the given section. * * @param string $section The section * * @return string|null * * @since 4.0.0 */ protected function getTableNameForSection(string $section = null) { return '#__content'; } /** * Returns a table name for the state association * * @param string $section An optional section to separate different areas in the component * * @return string * * @since 4.0.0 */ public function getWorkflowTableBySection(?string $section = null): string { return '#__content'; } /** * Returns the model name, based on the context * * @param string $context The context of the workflow * * @return string */ public function getModelName($context): string { $parts = explode('.', $context); if (count($parts) < 2) { return ''; } array_shift($parts); $modelname = array_shift($parts); if ($modelname === 'article' && Factory::getApplication()->isClient('site')) { return 'Form'; } elseif ($modelname === 'featured' && Factory::getApplication()->isClient('administrator')) { return 'Article'; } return ucfirst($modelname); } /** * Method to filter transitions by given id of state. * * @param array $transitions The Transitions to filter * @param int $pk Id of the state * * @return array * * @since 4.0.0 */ public function filterTransitions(array $transitions, int $pk): array { return ContentHelper::filterTransitions($transitions, $pk); } /** * Adds Count Items for Category Manager. * * @param \stdClass[] $items The category objects * @param string $section The section * * @return void * * @since 4.0.0 */ public function countItems(array $items, string $section) { $config = (object) [ 'related_tbl' => 'content', 'state_col' => 'state', 'group_col' => 'catid', 'relation_type' => 'category_or_group', 'uses_workflows' => true, 'workflows_component' => 'com_content', ]; LibraryContentHelper::countRelations($items, $config); } /** * Adds Count Items for Tag Manager. * * @param \stdClass[] $items The content objects * @param string $extension The name of the active view. * * @return void * * @since 4.0.0 * @throws \Exception */ public function countTagItems(array $items, string $extension) { $parts = explode('.', $extension); $section = count($parts) > 1 ? $parts[1] : null; $config = (object) [ 'related_tbl' => ($section === 'category' ? 'categories' : 'content'), 'state_col' => ($section === 'category' ? 'published' : 'state'), 'group_col' => 'tag_id', 'extension' => $extension, 'relation_type' => 'tag_assigments', ]; LibraryContentHelper::countRelations($items, $config); } /** * Prepares the category form * * @param Form $form The form to prepare * @param array|object $data The form data * * @return void */ public function prepareForm(Form $form, $data) { ContentHelper::onPrepareForm($form, $data); } } PKBA#]�%O 7components/com_content/src/Event/Model/FeatureEvent.phpnu�[���<?php /** * Joomla! Content Management System * * @copyright (C) 2020 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Event\Model; use Joomla\CMS\Event\AbstractImmutableEvent; // phpcs:disable PSR1.Files.SideEffects \defined('JPATH_PLATFORM') or die; // phpcs:enable PSR1.Files.SideEffects /** * Event class for WebAsset events * * @since 4.0.0 */ class FeatureEvent extends AbstractImmutableEvent { /** * Constructor. * * @param string $name The event name. * @param array $arguments The event arguments. * * @throws \BadMethodCallException * * @since 4.0.0 */ public function __construct($name, array $arguments = []) { if (!isset($arguments['extension'])) { throw new \BadMethodCallException("Argument 'extension' of event $this->name is required but has not been provided"); } if (!isset($arguments['extension']) || !is_string($arguments['extension'])) { throw new \BadMethodCallException("Argument 'extension' of event $this->name is not of type 'string'"); } if (strpos($arguments['extension'], '.') === false) { throw new \BadMethodCallException("Argument 'extension' of event $this->name has wrong format. Valid format: 'component.section'"); } if (!\array_key_exists('extensionName', $arguments) || !\array_key_exists('section', $arguments)) { $parts = explode('.', $arguments['extension']); $arguments['extensionName'] = $arguments['extensionName'] ?? $parts[0]; $arguments['section'] = $arguments['section'] ?? $parts[1]; } if (!isset($arguments['pks']) || !is_array($arguments['pks'])) { throw new \BadMethodCallException("Argument 'pks' of event $this->name is not of type 'array'"); } if (!isset($arguments['value']) || !is_numeric($arguments['value'])) { throw new \BadMethodCallException("Argument 'value' of event $this->name is not of type 'numeric'"); } $arguments['value'] = (int) $arguments['value']; if ($arguments['value'] !== 0 && $arguments['value'] !== 1) { throw new \BadMethodCallException("Argument 'value' of event $this->name is not 0 or 1"); } parent::__construct($name, $arguments); } /** * Set abort and reason parameters. * * @param string $reason Abort reason * * @return void * * @since 4.0.0 */ public function setAbort(string $reason) { $this->arguments['abort'] = true; $this->arguments['abortReason'] = $reason; } } PKBA#]7�(�$$8components/com_content/src/Controller/AjaxController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Controller; use Joomla\CMS\Language\Associations; use Joomla\CMS\Language\LanguageHelper; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\Session\Session; use Joomla\CMS\Table\Table; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * The article controller for ajax requests * * @since 3.9.0 */ class AjaxController extends BaseController { /** * Method to fetch associations of an article * * The method assumes that the following http parameters are passed in an Ajax Get request: * token: the form token * assocId: the id of the article whose associations are to be returned * excludeLang: the association for this language is to be excluded * * @return null * * @since 3.9.0 */ public function fetchAssociations() { if (!Session::checkToken('get')) { echo new JsonResponse(null, Text::_('JINVALID_TOKEN'), true); } else { $assocId = $this->input->getInt('assocId', 0); if ($assocId == 0) { echo new JsonResponse(null, Text::sprintf('JLIB_FORM_VALIDATE_FIELD_INVALID', 'assocId'), true); return; } $excludeLang = $this->input->get('excludeLang', '', 'STRING'); $associations = Associations::getAssociations('com_content', '#__content', 'com_content.item', (int) $assocId); unset($associations[$excludeLang]); // Add the title to each of the associated records $contentTable = Table::getInstance('Content', 'JTable'); foreach ($associations as $lang => $association) { $contentTable->load($association->id); $associations[$lang]->title = $contentTable->title; } $countContentLanguages = count(LanguageHelper::getContentLanguages([0, 1], false)); if (count($associations) == 0) { $message = Text::_('JGLOBAL_ASSOCIATIONS_PROPAGATE_MESSAGE_NONE'); } elseif ($countContentLanguages > count($associations) + 2) { $tags = implode(', ', array_keys($associations)); $message = Text::sprintf('JGLOBAL_ASSOCIATIONS_PROPAGATE_MESSAGE_SOME', $tags); } else { $message = Text::_('JGLOBAL_ASSOCIATIONS_PROPAGATE_MESSAGE_ALL'); } echo new JsonResponse($associations, $message); } } } PKBA#]��t��;components/com_content/src/Controller/ArticleController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\Router\Route; use Joomla\CMS\Versioning\VersionableControllerTrait; use Joomla\Input\Input; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * The article controller * * @since 1.6 */ class ArticleController extends FormController { use VersionableControllerTrait; /** * Constructor. * * @param array $config An optional associative array of configuration settings. * Recognized key values include 'name', 'default_task', 'model_path', and * 'view_path' (this list is not meant to be comprehensive). * @param MVCFactoryInterface $factory The factory. * @param CMSApplication $app The Application for the dispatcher * @param Input $input Input * * @since 3.0 */ public function __construct($config = [], MVCFactoryInterface $factory = null, $app = null, $input = null) { parent::__construct($config, $factory, $app, $input); // An article edit form can come from the articles or featured view. // Adjust the redirect view on the value of 'return' in the request. if ($this->input->get('return') == 'featured') { $this->view_list = 'featured'; $this->view_item = 'article&return=featured'; } } /** * Function that allows child controller access to model data * after the data has been saved. * * @param BaseDatabaseModel $model The data model object. * @param array $validData The validated data. * * @return void * * @since 4.0.0 */ protected function postSaveHook(BaseDatabaseModel $model, $validData = []) { if ($this->getTask() === 'save2menu') { $editState = []; $id = $model->getState('article.id'); $link = 'index.php?option=com_content&view=article'; $type = 'component'; $editState['id'] = $id; $editState['link'] = $link; $editState['title'] = $model->getItem($id)->title; $editState['type'] = $type; $editState['request']['id'] = $id; $this->app->setUserState('com_menus.edit.item', [ 'data' => $editState, 'type' => $type, 'link' => $link, ]); $this->setRedirect(Route::_('index.php?option=com_menus&view=item&client_id=0&menutype=mainmenu&layout=edit', false)); } } /** * Method override to check if you can add a new record. * * @param array $data An array of input data. * * @return boolean * * @since 1.6 */ protected function allowAdd($data = []) { $categoryId = ArrayHelper::getValue($data, 'catid', $this->input->getInt('filter_category_id'), 'int'); if ($categoryId) { // If the category has been passed in the data or URL check it. return $this->app->getIdentity()->authorise('core.create', 'com_content.category.' . $categoryId); } // In the absence of better information, revert to the component permissions. return parent::allowAdd(); } /** * Method override to check if you can edit an existing record. * * @param array $data An array of input data. * @param string $key The name of the key for the primary key. * * @return boolean * * @since 1.6 */ protected function allowEdit($data = [], $key = 'id') { $recordId = (int) isset($data[$key]) ? $data[$key] : 0; $user = $this->app->getIdentity(); // Zero record (id:0), return component edit permission by calling parent controller method if (!$recordId) { return parent::allowEdit($data, $key); } // Check edit on the record asset (explicit or inherited) if ($user->authorise('core.edit', 'com_content.article.' . $recordId)) { return true; } // Check edit own on the record asset (explicit or inherited) if ($user->authorise('core.edit.own', 'com_content.article.' . $recordId)) { // Existing record already has an owner, get it $record = $this->getModel()->getItem($recordId); if (empty($record)) { return false; } // Grant if current user is owner of the record return $user->id == $record->created_by; } return false; } /** * Method to run batch operations. * * @param object $model The model. * * @return boolean True if successful, false otherwise and internal error is set. * * @since 1.6 */ public function batch($model = null) { $this->checkToken(); // Set the model /** @var \Joomla\Component\Content\Administrator\Model\ArticleModel $model */ $model = $this->getModel('Article', 'Administrator', []); // Preset the redirect $this->setRedirect(Route::_('index.php?option=com_content&view=articles' . $this->getRedirectToListAppend(), false)); return parent::batch($model); } } PKBA#]uwD]z z <components/com_content/src/Controller/FeaturedController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\Response\JsonResponse; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Featured content controller class. * * @since 1.6 */ class FeaturedController extends ArticlesController { /** * Removes an item. * * @return void * * @since 1.6 */ public function delete() { // Check for request forgeries $this->checkToken(); $user = $this->app->getIdentity(); $ids = (array) $this->input->get('cid', [], 'int'); // Access checks. foreach ($ids as $i => $id) { // Remove zero value resulting from input filter if ($id === 0) { unset($ids[$i]); continue; } if (!$user->authorise('core.delete', 'com_content.article.' . (int) $id)) { // Prune items that you can't delete. unset($ids[$i]); $this->app->enqueueMessage(Text::_('JERROR_CORE_DELETE_NOT_PERMITTED'), 'notice'); } } if (empty($ids)) { $this->app->enqueueMessage(Text::_('JERROR_NO_ITEMS_SELECTED'), 'error'); } else { /** @var \Joomla\Component\Content\Administrator\Model\FeatureModel $model */ $model = $this->getModel(); // Remove the items. if (!$model->featured($ids, 0)) { $this->app->enqueueMessage($model->getError(), 'error'); } } $this->setRedirect('index.php?option=com_content&view=featured'); } /** * Method to publish a list of articles. * * @return void * * @since 1.0 */ public function publish() { parent::publish(); $this->setRedirect('index.php?option=com_content&view=featured'); } /** * Method to get a model object, loading it if required. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config Configuration array for model. Optional. * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel The model. * * @since 1.6 */ public function getModel($name = 'Feature', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Method to get the number of published featured articles for quickicons * * @return void * * @since 4.3.0 */ public function getQuickiconContent() { $model = $this->getModel('articles'); $model->setState('filter.published', 1); $model->setState('filter.featured', 1); $amount = (int) $model->getTotal(); $result = []; $result['amount'] = $amount; $result['sronly'] = Text::plural('COM_CONTENT_FEATURED_N_QUICKICON_SRONLY', $amount); $result['name'] = Text::plural('COM_CONTENT_FEATURED_N_QUICKICON', $amount); echo new JsonResponse($result); } } PKBA#]4%˔�<components/com_content/src/Controller/ArticlesController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Controller; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\Router\Route; use Joomla\Input\Input; use Joomla\Utilities\ArrayHelper; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Articles list controller class. * * @since 1.6 */ class ArticlesController extends AdminController { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * Recognized key values include 'name', 'default_task', 'model_path', and * 'view_path' (this list is not meant to be comprehensive). * @param MVCFactoryInterface $factory The factory. * @param CMSApplication $app The Application for the dispatcher * @param Input $input Input * * @since 3.0 */ public function __construct($config = [], MVCFactoryInterface $factory = null, $app = null, $input = null) { parent::__construct($config, $factory, $app, $input); // Articles default form can come from the articles or featured view. // Adjust the redirect view on the value of 'view' in the request. if ($this->input->get('view') == 'featured') { $this->view_list = 'featured'; } $this->registerTask('unfeatured', 'featured'); } /** * Method to toggle the featured setting of a list of articles. * * @return void * * @since 1.6 */ public function featured() { // Check for request forgeries $this->checkToken(); $user = $this->app->getIdentity(); $ids = (array) $this->input->get('cid', [], 'int'); $values = ['featured' => 1, 'unfeatured' => 0]; $task = $this->getTask(); $value = ArrayHelper::getValue($values, $task, 0, 'int'); $redirectUrl = 'index.php?option=com_content&view=' . $this->view_list . $this->getRedirectToListAppend(); // Access checks. foreach ($ids as $i => $id) { // Remove zero value resulting from input filter if ($id === 0) { unset($ids[$i]); continue; } if (!$user->authorise('core.edit.state', 'com_content.article.' . (int) $id)) { // Prune items that you can't change. unset($ids[$i]); $this->app->enqueueMessage(Text::_('JLIB_APPLICATION_ERROR_EDITSTATE_NOT_PERMITTED'), 'notice'); } } if (empty($ids)) { $this->app->enqueueMessage(Text::_('JERROR_NO_ITEMS_SELECTED'), 'error'); $this->setRedirect(Route::_($redirectUrl, false)); return; } // Get the model. /** @var \Joomla\Component\Content\Administrator\Model\ArticleModel $model */ $model = $this->getModel(); // Publish the items. if (!$model->featured($ids, $value)) { $this->setRedirect(Route::_($redirectUrl, false), $model->getError(), 'error'); return; } if ($value == 1) { $message = Text::plural('COM_CONTENT_N_ITEMS_FEATURED', count($ids)); } else { $message = Text::plural('COM_CONTENT_N_ITEMS_UNFEATURED', count($ids)); } $this->setRedirect(Route::_($redirectUrl, false), $message); } /** * Proxy for getModel. * * @param string $name The model name. Optional. * @param string $prefix The class prefix. Optional. * @param array $config The array of possible config values. Optional. * * @return \Joomla\CMS\MVC\Model\BaseDatabaseModel * * @since 1.6 */ public function getModel($name = 'Article', $prefix = 'Administrator', $config = ['ignore_request' => true]) { return parent::getModel($name, $prefix, $config); } /** * Method to get the JSON-encoded amount of published articles * * @return void * * @since 4.0.0 */ public function getQuickiconContent() { $model = $this->getModel('articles'); $model->setState('filter.published', 1); $amount = (int) $model->getTotal(); $result = []; $result['amount'] = $amount; $result['sronly'] = Text::plural('COM_CONTENT_N_QUICKICON_SRONLY', $amount); $result['name'] = Text::plural('COM_CONTENT_N_QUICKICON', $amount); echo new JsonResponse($result); } } PKBA#]̓'���;components/com_content/src/Controller/DisplayController.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2006 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Controller; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Router\Route; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Component Controller * * @since 1.5 */ class DisplayController extends BaseController { /** * The default view. * * @var string * @since 1.6 */ protected $default_view = 'articles'; /** * Method to display a view. * * @param boolean $cachable If true, the view output will be cached * @param array $urlparams An array of safe URL parameters and their variable types, for valid values see {@link JFilterInput::clean()}. * * @return BaseController|boolean This object to support chaining. * * @since 1.5 */ public function display($cachable = false, $urlparams = []) { $view = $this->input->get('view', 'articles'); $layout = $this->input->get('layout', 'articles'); $id = $this->input->getInt('id'); // Check for edit form. if ($view == 'article' && $layout == 'edit' && !$this->checkEditId('com_content.edit.article', $id)) { // Somehow the person just went to the form - we don't allow that. if (!\count($this->app->getMessageQueue())) { $this->setMessage(Text::sprintf('JLIB_APPLICATION_ERROR_UNHELD_ID', $id), 'error'); } $this->setRedirect(Route::_('index.php?option=com_content&view=articles', false)); return false; } return parent::display(); } } PKBA#]MG���1components/com_content/src/Table/ArticleTable.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Table; // phpcs:disable PSR1.Files.SideEffects \defined('JPATH_PLATFORM') or die; // phpcs:enable PSR1.Files.SideEffects /** * Article table * * @since 1.5 */ class ArticleTable extends \Joomla\CMS\Table\Content { } PKBA#]<j��992components/com_content/src/Table/FeaturedTable.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\Component\Content\Administrator\Table; use Joomla\CMS\Table\Table; use Joomla\Database\DatabaseDriver; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Featured Table class. * * @since 1.6 */ class FeaturedTable extends Table { /** * Constructor * * @param DatabaseDriver $db Database connector object * * @since 1.6 */ public function __construct(DatabaseDriver $db) { parent::__construct('#__content_frontpage', 'content_id', $db); } } PKBA#]Q�4���*components/com_content/helpers/content.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2009 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt * @phpcs:disable PSR1.Classes.ClassDeclaration.MissingNamespace */ // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects /** * Content component helper. * * @since 1.6 * * @deprecated 4.3 will be removed in 6.0 * Use \Joomla\Component\Content\Administrator\Helper\ContentHelper instead */ class ContentHelper extends \Joomla\Component\Content\Administrator\Helper\ContentHelper { } PKBA#]�d��"components/com_content/content.xmlnu�[���<?xml version="1.0" encoding="UTF-8"?> <extension type="component" method="upgrade"> <name>com_content</name> <author>Joomla! Project</author> <creationDate>2006-04</creationDate> <copyright>(C) 2006 Open Source Matters, Inc.</copyright> <license>GNU General Public License version 2 or later; see LICENSE.txt</license> <authorEmail>admin@joomla.org</authorEmail> <authorUrl>www.joomla.org</authorUrl> <version>4.0.0</version> <description>COM_CONTENT_XML_DESCRIPTION</description> <namespace path="src">Joomla\Component\Content</namespace> <files folder="site"> <folder>forms</folder> <folder>helpers</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="site"> <language tag="en-GB">language/en-GB/com_content.ini</language> </languages> <media destination="com_content" folder="media"> <folder>js</folder> </media> <administration> <files folder="admin"> <filename>access.xml</filename> <filename>config.xml</filename> <filename>content.xml</filename> <folder>forms</folder> <folder>helpers</folder> <folder>services</folder> <folder>src</folder> <folder>tmpl</folder> </files> <languages folder="admin"> <language tag="en-GB">language/en-GB/com_content.ini</language> <language tag="en-GB">language/en-GB/com_content.sys.ini</language> </languages> </administration> <dashboards> <dashboard title="COM_CONTENT_DASHBOARD_TITLE" icon="icon-file-alt">content</dashboard> </dashboards> </extension> PKBA#]K�Sx x ,components/com_content/services/provider.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_content * * @copyright (C) 2018 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Association\AssociationExtensionInterface; use Joomla\CMS\Categories\CategoryFactoryInterface; use Joomla\CMS\Component\Router\RouterFactoryInterface; use Joomla\CMS\Dispatcher\ComponentDispatcherFactoryInterface; use Joomla\CMS\Extension\ComponentInterface; use Joomla\CMS\Extension\Service\Provider\CategoryFactory; use Joomla\CMS\Extension\Service\Provider\ComponentDispatcherFactory; use Joomla\CMS\Extension\Service\Provider\MVCFactory; use Joomla\CMS\Extension\Service\Provider\RouterFactory; use Joomla\CMS\HTML\Registry; use Joomla\CMS\MVC\Factory\MVCFactoryInterface; use Joomla\Component\Content\Administrator\Extension\ContentComponent; use Joomla\Component\Content\Administrator\Helper\AssociationsHelper; use Joomla\DI\Container; use Joomla\DI\ServiceProviderInterface; /** * The content service provider. * * @since 4.0.0 */ return new class () implements ServiceProviderInterface { /** * Registers the service provider with a DI container. * * @param Container $container The DI container. * * @return void * * @since 4.0.0 */ public function register(Container $container) { $container->set(AssociationExtensionInterface::class, new AssociationsHelper()); $container->registerServiceProvider(new CategoryFactory('\\Joomla\\Component\\Content')); $container->registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Content')); $container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Content')); $container->registerServiceProvider(new RouterFactory('\\Joomla\\Component\\Content')); $container->set( ComponentInterface::class, function (Container $container) { $component = new ContentComponent($container->get(ComponentDispatcherFactoryInterface::class)); $component->setRegistry($container->get(Registry::class)); $component->setMVCFactory($container->get(MVCFactoryInterface::class)); $component->setCategoryFactory($container->get(CategoryFactoryInterface::class)); $component->setAssociationExtension($container->get(AssociationExtensionInterface::class)); $component->setRouterFactory($container->get(RouterFactoryInterface::class)); return $component; } ); } }; PKBA#]^��/� � *components/com_content/presets/content.xmlnu�[���<?xml version="1.0"?> <menu xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:joomla.org" xsi:schemaLocation="urn:joomla.org menu.xsd" > <menuitem title="COM_CONTENT_MENUS" type="heading" icon="file-alt" class="class:file-alt" > <menuitem title="COM_CONTENT_MENUS_ARTICLE_MANAGER" type="component" element="com_content" link="index.php?option=com_content&view=articles" quicktask="index.php?option=com_content&task=article.add" quicktask-title="COM_CONTENT_MENUS_NEW_ARTICLE" /> <menuitem title="COM_CONTENT_MENUS_CATEGORY_MANAGER" type="component" element="com_categories" link="index.php?option=com_categories&view=categories&extension=com_content" quicktask="index.php?option=com_categories&extension=com_content&task=category.add" quicktask-title="COM_CONTENT_MENUS_NEW_CATEGORY" /> <menuitem title="COM_CONTENT_MENUS_FEATURED" type="component" element="com_content" link="index.php?option=com_content&view=featured" class="class:featured" /> </menuitem> <menuitem title="COM_CONTENT_MENUS_MANAGE" type="heading" icon="cog" class="class:file-alt" > <menuitem title="COM_CONTENT_MENUS_WORKFLOW" type="component" element="com_workflow" link="index.php?option=com_workflow&view=workflows&extension=com_content.article" /> <menuitem title="MOD_MENU_FIELDS" type="component" element="com_fields" link="index.php?option=com_fields&view=fields&context=com_content.article" /> <menuitem title="MOD_MENU_FIELDS_GROUP" type="component" element="com_fields" link="index.php?option=com_fields&view=groups&context=com_content.article" /> </menuitem> <menuitem title="COM_CONTENT_MENUS_MISC" type="heading" icon="cubes" class="class:file-alt" dashboard="content" > <menuitem title="MOD_MENU_MEDIA_MANAGER" type="component" element="com_media" link="index.php?option=com_media" class="class:image" /> <menuitem title="MOD_MENU_EXTENSIONS_MODULE_MANAGER_SITE" type="component" element="com_modules" link="index.php?option=com_modules&view=modules&client_id=0" quicktask="index.php?option=com_modules&view=select&client_id=0" quicktask-title="COM_CONTENT_MENUS_NEW_SITE_MODULE" /> <menuitem title="MOD_MENU_EXTENSIONS_MODULE_MANAGER_ADMINISTRATOR" type="component" element="com_modules" link="index.php?option=com_modules&view=modules&client_id=1" quicktask="index.php?option=com_modules&view=select&client_id=1" quicktask-title="COM_CONTENT_MENUS_NEW_ADMIN_MODULE" /> </menuitem> </menu> PKBA#]�1�}��4components/com_sppagebuilder/controllers/comment.phpnu�[��� <?php /** * @package Joomla.Administrator * @subpackage com_sppagebuilder * @author JoomShaper support@joomshaper.com * @copyright * @license GNU General Public License version 2 or later; see http://www.gnu.org/licenses/gpl-2.0.html */ // No Direct Access defined ('_JEXEC') or die('Restricted Access'); use Joomla\CMS\Factory; use Joomla\CMS\MVC\Controller\FormController; class SppagebuilderControllerComment extends FormController { public function __construct($config = array()) { parent::__construct($config); } protected function allowAdd($data = array()) { return parent::allowAdd($data); } protected function allowEdit($data = array(), $key = 'id') { $id = (int) isset($data[$key]) ? $data[$key] : 0; $user = Factory::getUser(); if (!$id) { return parent::allowEdit($data, $key); } if ($user->authorise('core.edit', 'com_sppagebuilder.comment.' . $id)) { return true; } if ($user->authorise('core.edit.own', 'com_sppagebuilder.comment.' . $id)) { $record = $this->getModel()->getItem($id); if (empty($record)) { return false; } return $user->id === $record->created_by; } return false; } } PKBA#]�����2components/com_sppagebuilder/controllers/about.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\BaseController; class SppagebuilderControllerAbout extends BaseController { } PKBA#]#A���6components/com_sppagebuilder/controllers/instagram.phpnu�[���<?php /** * @package Sppagebuilder.Administrator * * @copyright Copyright (C) 2005 - 2016 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; include __DIR__ . '/../assets/vendor/autoload.php'; use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Http\Http; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\MVC\Controller\BaseController; use Joomla\CMS\Version; /** * Installer controller for Joomla! installer class. * * @since 1.5 */ class SppagebuilderControllerInstagram extends BaseController { public function accessToken() { if (session_status() === PHP_SESSION_NONE) { session_set_cookie_params([ 'lifetime' => 0, 'path' => '/', 'secure' => true, 'httponly' => true, 'samesite' => 'Lax' ]); session_start(); } $app = Factory::getApplication(); $doc = Factory::getDocument(); $input = $app->input; $http = new Http; /** * Get APP ID and APP SECRET from the component param */ $params = ComponentHelper::getParams('com_sppagebuilder'); $igToken = json_decode($params->get('ig_token', '{}')); $appId = $igToken->appId; $appSecret = $igToken->appSecret; $redirectUrl = Uri::root() . 'administrator/index.php?option=com_sppagebuilder&task=instagram.accessToken'; /** * Instantiate the Facebook API with the help of appID and appSecret */ $facebook = new Facebook\Facebook( [ 'app_id' => $appId, 'app_secret' => $appSecret, 'default_graph_version' => 'v7.0', 'persistent_data_handler' => 'session', ] ); /** * Get Facebook SDK redirect helper and OAuth2 Client */ $helper = $facebook->getRedirectLoginHelper(); $helper->getPersistentDataHandler()->set('state', $_GET['state']); $oAuth2Client = $facebook->getOAuth2Client(); $token = ''; $igId = ''; /** * If code not provided to the url then redirect to the facebook * login page. */ if ($input->get('code', '') === '') { $permissions = [ 'public_profile', 'instagram_basic', 'pages_show_list', 'business_management', ]; $loginUrl = $helper->getLoginUrl($redirectUrl, $permissions); $app->redirect($loginUrl); } else { /** * Get the access token if it is provided by the facebook API. * If any problem happens getting the access token then catch * them with the catch block. */ try { $token = $helper->getAccessToken(); } catch (Facebook\Exceptions\FacebookResponseException $e) { echo 'Graph API returns an error ' . $e->getMessage(); $app->close(); } catch (Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK returns an error ' . $e->getMessage(); $app->close(); } /** * If the token is not a long lived token then get a long lived * token. A long lived token generally expires after 60 days. */ if (!$token->isLongLived()) { try { $token = $oAuth2Client->getLongLivedAccessToken($token); } catch (Facebook\Exceptions\FacebookSDKException $e) { echo 'Facebook SDK returns an error ' . $e->getMessage(); $app->close(); } } } /** * If the token generated then get the instagram user ID */ if (!empty($token)) { try { $response = $http->get("https://graph.facebook.com/v7.0/me/accounts?fields=connected_instagram_account&access_token=" . $token); $responseBody = json_decode($response->body); if ($response->code !== 200) { throw new Exception($responseBody->error->message); } if (!empty($responseBody->data)) { $connected = $responseBody->data; foreach ($connected as $account) { if (isset($account->connected_instagram_account)) { $igId = $account->connected_instagram_account->id; break; } } } } catch (Exception $e) { echo 'Facebook SDK returns an error ' . $e->getMessage(); $app->close(); } } $version = new Version(); $JoomlaVersion = (float) $version->getShortVersion(); $task = $JoomlaVersion < 4 ? 'config.save.component.apply' : 'component.apply'; /** * OnClick event while clicking on the Insert & Save button. */ $onClick = " window.opener.document.querySelector('.sppb-ig-token #access_token').value='" . $token . "'; window.opener.document.querySelector('.sppb-ig-token #access_token').dispatchEvent(new Event('change')); window.opener.document.querySelector('.sppb-ig-token #ig_id').value='" . $igId . "'; window.opener.document.querySelector('.sppb-ig-token #ig_id').dispatchEvent(new Event('change')); window.close(); "; echo '<div class="wrapper" style="width: 100%;text-align: center;margin-top: 100px;word-break: break-word;">' . '<div><strong>Access Token: </strong>' . $token . '</div>' . '<div style="margin-top: 30px;"><strong>Instagram Id: </strong>' . $igId . '</div>' . '<button type="button" onclick="' . $onClick . '" class="btn btn-primary" style="cursor: pointer; margin-top: 50px;display: inline-block;font-weight: 400;color: #212529;text-align: center;vertical-align: middle;-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;background-color: transparent;border: 1px solid transparent;padding: 0.375rem 0.75rem;font-size: 1rem;line-height: 1.5;border-radius: 0.25rem;transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;background-color: #00d1b2;border-color: transparent;color: #fff;">Insert</button>' . '</div>'; $app->close(); } } PKBA#]4\u+5+52components/com_sppagebuilder/controllers/media.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Language\Text; use Joomla\CMS\Filesystem\File; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\Layout\FileLayout; use Joomla\CMS\Helper\MediaHelper; use Joomla\CMS\Filter\OutputFilter; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\MVC\Controller\FormController; require_once JPATH_ROOT . '/administrator/components/com_sppagebuilder/helpers/image.php'; // meida_attr = [ // 'full' => ['height'=> '12', 'width'=>'12px'], // 'thumbnail' => ['height'=> '12', 'width'=>'12px'], // ] class SppagebuilderControllerMedia extends FormController { // Upload File public function upload_media() { $model = $this->getModel(); $user = Factory::getUser(); $input = Factory::getApplication()->input; if (isset($_FILES['file']) && $_FILES['file']) { $file = $_FILES['file']; $dir = $input->post->get('folder', '', 'PATH'); $report = array(); $authorised = $user->authorise('core.edit', 'com_sppagebuilder') || $user->authorise('core.edit.own', 'com_sppagebuilder'); if ($authorised !== true) { $report['status'] = false; $report['output'] = Text::_('JERROR_ALERTNOAUTHOR'); echo json_encode($report); die(); } if (count((array) $file)) { if ($file['error'] == UPLOAD_ERR_OK) { $error = false; $params = ComponentHelper::getParams('com_media'); $contentLength = (int) $_SERVER['CONTENT_LENGTH']; $mediaHelper = new MediaHelper; $postMaxSize = $mediaHelper->toBytes(ini_get('post_max_size')); $memoryLimit = $mediaHelper->toBytes(ini_get('memory_limit')); // Check for the total size of post back data. if (($postMaxSize > 0 && $contentLength > $postMaxSize) || ($memoryLimit != -1 && $contentLength > $memoryLimit)) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_MEDIA_TOTAL_SIZE_EXCEEDS'); $error = true; echo json_encode($report); die; } $uploadMaxSize = $params->get('upload_maxsize', 0) * 1024 * 1024; $uploadMaxFileSize = $mediaHelper->toBytes(ini_get('upload_max_filesize')); if (($file['error'] == 1) || ($uploadMaxSize > 0 && $file['size'] > $uploadMaxSize) || ($uploadMaxFileSize > 0 && $file['size'] > $uploadMaxFileSize)) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_MEDIA_LARGE'); $error = true; } // File formats $accepted_file_formats = array( 'image' => array('jpg', 'jpeg', 'png', 'gif', 'svg', 'webp'), 'video' => array('mp4', 'mov', 'wmv', 'avi', 'mpg', 'ogv', '3gp', '3g2'), 'audio' => array('mp3', 'm4a', 'ogg', 'wav'), 'attachment' => array('pdf', 'doc', 'docx', 'key', 'ppt', 'pptx', 'pps', 'ppsx', 'odt', 'xls', 'xlsx', 'zip'), ); // Upload if no error found if (!$error) { $date = Factory::getDate(); $file_ext = strtolower(File::getExt($file['name'])); if (self::in_array($file_ext, $accepted_file_formats)) { $media_type = self::array_search($file_ext, $accepted_file_formats); if ($media_type == 'image') { $mediaParams = ComponentHelper::getParams('com_media'); $folder_root = $mediaParams->get('file_path', 'images') . '/'; } elseif ($media_type == 'video') { $folder_root = 'media/videos/'; } elseif ($media_type == 'audio') { $folder_root = 'media/audios/'; } elseif ($media_type == 'attachment') { $folder_root = 'media/attachments/'; } $report['type'] = $media_type; $folder = $folder_root . HTMLHelper::_('date', $date, 'Y') . '/' . HTMLHelper::_('date', $date, 'm') . '/' . HTMLHelper::_('date', $date, 'd'); if ($dir != '') { $folder = ltrim($dir, '/'); } if (!Folder::exists(JPATH_ROOT . '/' . $folder)) { Folder::create(JPATH_ROOT . '/' . $folder, 0755); } if ($media_type == 'image') { if (!Folder::exists(JPATH_ROOT . '/' . $folder . '/_spmedia_thumbs')) { Folder::create(JPATH_ROOT . '/' . $folder . '/_spmedia_thumbs', 0755); } } $name = $file['name']; $path = $file['tmp_name']; // Do no override existing file $media_file = preg_replace('#\s+#', "-", File::makeSafe(basename(strtolower($name)))); $i = 0; do { $base_name = File::stripExt($media_file) . ($i ? "$i" : ""); // if ($media_type == 'image') { // list($imgWidth, $imgHeight) = getimagesize($path); // $base_name = $base_name . '__'.$imgWidth .'x'. $imgHeight; // } $ext = File::getExt($media_file); $media_name = $base_name . '.' . $ext; $i++; $dest = JPATH_ROOT . '/' . $folder . '/' . $media_name; $src = $folder . '/' . $media_name; } while (file_exists($dest)); // End Do not override if (File::upload($path, $dest, false, true)) { $media_attr = []; $thumb = ''; if ($media_type == 'image') { list($imgWidth, $imgHeight) = getimagesize($dest); if (strtolower($ext) == 'svg' || strtolower($ext) == 'webp') { $report['src'] = Uri::root(true) . '/' . $src; } else { $image = new SppagebuilderHelperImage($dest); $media_attr['full'] = ['height' => $image->height, 'width' => $image->width]; if (($image->width > 300) || ($image->height > 225)) { $thumbDestPath = dirname($dest) . '/_spmedia_thumbs'; $created = $image->createThumb(array('300', '300'), $thumbDestPath, $base_name, $ext); if ($created == false) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_FILE_NOT_SUPPORTED'); $error = true; echo json_encode($report); die; } $report['src'] = Uri::root(true) . '/' . $folder . '/_spmedia_thumbs/' . $base_name . '.' . $ext; $thumb = $folder . '/_spmedia_thumbs/' . $base_name . '.' . $ext; $humbdest = $thumbDestPath . '/' . $base_name . '.' . $ext; list($width, $height) = getimagesize($humbdest); $media_attr['thumbnail'] = ['height' => $height, 'width' => $width]; $report['thumb'] = $thumb; } else { $report['src'] = Uri::root(true) . '/' . $src; $report['thumb'] = $src; } // Create placeholder for lazy load $this->create_media_placeholder($dest, $base_name, $ext); } } $insertid = $model->insertMedia($base_name, $src, json_encode($media_attr), $thumb, $media_type); if ($insertid) { $total_row = $model->getNumRows(); $report['total_row'] = $total_row; } $report['media_attr'] = $media_attr; $report['status'] = true; $report['title'] = $base_name; $report['id'] = $insertid; $report['path'] = $src; $layout_path = JPATH_ROOT . '/administrator/components/com_sppagebuilder/layouts'; $format_layout = new FileLayout('media.format', $layout_path); $report['output'] = $format_layout->render(array( 'media' => $model->getMediaByID($insertid), 'innerHTML' => true )); } else { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_UPLOAD_FAILED'); } } else { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_FILE_NOT_SUPPORTED'); } } } } else { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_UPLOAD_FAILED'); } } else { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_UPLOAD_FAILED'); } echo json_encode($report); die(); } /** * @since 2020 * Create light weight image placeholder for lazy load feature */ private function create_media_placeholder($dest, $base_name, $ext) { $placeholder_folder_path = JPATH_ROOT . '/media/com_sppagebuilder/placeholder'; if (!Folder::exists($placeholder_folder_path)) { Folder::create($placeholder_folder_path, 0755); } $image = new SppagebuilderHelperImage($dest); list($srcWidth, $srcHeight) = $image->getDimension(); $width = 60; $height = $width / ($srcWidth / $srcHeight); $image->createThumb(array('60', $height), $placeholder_folder_path, $base_name, $ext, 20); } /** * @since 2020 * Delete placeholder image if exists */ private function delete_image_placeholder($file_path) { $filename = basename($file_path); $src = JPATH_ROOT . '/media/com_sppagebuilder/placeholder' . '/' . $filename; if (File::exists($src)) { File::delete($src); } } // Delete File public function delete_media() { $model = $this->getModel(); $user = Factory::getUser(); $input = Factory::getApplication()->input; $m_type = $input->post->get('m_type', null, 'STRING'); if ($m_type == 'path') { $report = array(); $report['status'] = true; $path = htmlspecialchars($input->post->get('path', null, 'STRING')); $src = JPATH_ROOT . '/' . $path; if (File::exists($src)) { if (!File::delete($src)) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_DELETE_FAILED'); echo json_encode($report); die; } } else { $report['status'] = true; $total_row = $model->getNumRows(); $report['total_row'] = $total_row; } echo json_encode($report); } else { $id = $input->post->get('id', null, 'INT'); if (!is_numeric($id)) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_DELETE_FAILED'); echo json_encode($report); die; } $media = $model->getMediaByID($id); $authorised = $user->authorise('core.edit', 'com_sppagebuilder') || ($user->authorise('core.edit.own', 'com_sppagebuilder') && ($media->created_by == $user->id)); if ($authorised !== true) { $report['status'] = false; $report['output'] = Text::_('JERROR_ALERTNOAUTHOR'); echo json_encode($report); die(); } $src = JPATH_ROOT . '/' . $media->path; $report = array(); $report['status'] = false; if (isset($media->thumb) && $media->thumb) { if (File::exists(JPATH_ROOT . '/' . $media->thumb)) { File::delete(JPATH_ROOT . '/' . $media->thumb); // Delete thumb } } if (File::exists($src)) { // Delete placeholder too $this->delete_image_placeholder($src); if (!File::delete($src)) { $report['status'] = false; $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_DELETE_FAILED'); echo json_encode($report); die; } } else { $report['status'] = true; } // Remove from database $media = $model->removeMediaByID($id); if ($media) { $total_row = $model->getNumRows(); $report['total_row'] = $total_row; } $report['status'] = true; echo json_encode($report); } die; } private static function in_array($needle, $haystack) { $it = new RecursiveIteratorIterator(new RecursiveArrayIterator($haystack)); foreach ($it as $element) { if ($element == $needle) { return true; } } return false; } private static function array_search($needle, $haystack) { foreach ($haystack as $key => $value) { $current_key = $key; if ($needle === $value or (is_array($value) && self::array_search($needle, $value) !== false)) { return $current_key; } } return false; } // Create folder public function create_folder() { $input = Factory::getApplication()->input; $folder = $input->post->get('folder', '', 'STRING'); $dirname = dirname($folder); $basename = OutputFilter::stringURLSafe(basename($folder)); $folder = $dirname . '/' . $basename; $report = array(); $report['status'] = false; $fullname = JPATH_ROOT . $folder; if (!Folder::exists(JPATH_ROOT . $folder)) { if (Folder::create(JPATH_ROOT . $folder, 0755)) { $report['status'] = true; $folder_info['name'] = basename($folder); $folder_info['relname'] = $folder; $folder_info['fullname'] = $fullname; $report['output'] = $folder_info; } else { $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_FOLDER_CREATION_FAILED'); } } else { $report['output'] = Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_FOLDER_EXISTS'); } echo json_encode($report); die; } } PKBA#]���772components/com_sppagebuilder/controllers/pages.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\MVC\Controller\AdminController; class SppagebuilderControllerPages extends AdminController { public function getModel($name = 'Page', $prefix = 'SppagebuilderModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } } PKBA#]-�P8P81components/com_sppagebuilder/controllers/page.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Router\Route; use Joomla\CMS\Language\Text; use Joomla\CMS\Filesystem\File; use Joomla\CMS\Session\Session; use Joomla\Utilities\ArrayHelper; use Joomla\CMS\MVC\Controller\FormController; use Joomla\CMS\Response\JsonResponse; JLoader::register('SppagebuilderHelperRoute', JPATH_ROOT . '/components/com_sppagebuilder/helpers/route.php'); class SppagebuilderControllerPage extends FormController { public function __construct($config = array()) { parent::__construct($config); $user = Factory::getUser(); $authorised = $user->authorise('core.admin', 'com_sppagebuilder') || $user->authorise('core.manage', 'com_sppagebuilder'); if (!$authorised) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_ADMIN_ACCESS_REQUIRED'); $this->sendResponse($response, 403); } if (!$user->id) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_LOGIN_SESSION_EXPIRED'); $this->sendResponse($response, 401); } if (!Session::checkToken()) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_SESSION_MISMATCHED'); $this->sendResponse($response, 403); } } /** * Get the page model * * @param string $name * @param string $prefix * @param array $config * @return SppagebuilderModelPage */ public function getModel($name = 'form', $prefix = '', $config = array('ignore_request' => true)) { $model = parent::getModel($name, $prefix, $config); return $model; } protected function allowAdd($data = array()) { $categoryId = ArrayHelper::getValue($data, 'catid', $this->input->getInt('filter_category_id'), 'int'); $allow = null; if ($categoryId) { // If the category has been passed in the data or URL check it. $allow = Factory::getUser()->authorise('core.create', 'com_sppagebuilder.category.' . $categoryId); } if ($allow === null) { // In the absense of better information, revert to the component permissions. return parent::allowAdd(); } return $allow; } protected function allowEdit($data = array(), $key = 'id') { $recordId = (int) isset($data[$key]) ? $data[$key] : 0; $user = Factory::getUser(); // Zero record (id:0), return component edit permission by calling parent controller method if (!$recordId) { return parent::allowEdit($data, $key); } // Check edit on the record asset (explicit or inherited) if ($user->authorise('core.edit', 'com_sppagebuilder.page.' . $recordId)) { return true; } // Check edit own on the record asset (explicit or inherited) if ($user->authorise('core.edit.own', 'com_sppagebuilder.page.' . $recordId)) { // Existing record already has an owner, get it $record = $this->getModel()->getItem($recordId); if (empty($record)) { return false; } // Grant if current user is owner of the record return $user->id == $record->created_by; } return false; } public function save($key = null, $urlVar = null) { $output = array(); // Check for request forgeries. $output['status'] = false; $output['message'] = Text::_('JINVALID_TOKEN'); Session::checkToken() or die(json_encode($output)); /** @var CMSApplication */ $app = Factory::getApplication(); $user = $app->getIdentity(); $model = $this->getModel(); $data = $this->input->post->get('jform', array(), 'array'); $task = $this->getTask(); $context = 'com_sppagebuilder.edit.page'; $recordId = isset($data['id']) ? $data['id'] : 0; $isNew = ($recordId == 0) ? true : false; $table = $model->getTable(); $table->bind($data); if (!$table->check()) { $output['status'] = false; $output['message'] = Text::_('JLIB_CMS_WARNING_PROVIDE_VALID_NAME'); echo json_encode($output); die(); } // Pass text if empty $data['text'] = isset($data['text']) ? $data['text'] : ''; //Authorized if (empty($recordId)) { $authorised = $user->authorise('core.create', 'com_sppagebuilder') || (count((array) $user->getAuthorisedCategories('com_sppagebuilder', 'core.create'))); } else { $authorised = $user->authorise('core.edit', 'com_sppagebuilder') || $user->authorise('core.edit', 'com_sppagebuilder.page.' . $recordId) || $user->authorise('core.edit', 'com_sppagebuilder.page.' . $recordId) || ($user->authorise('core.edit.own', 'com_sppagebuilder.page.' . $recordId) && $data['created_by'] == $user->id); } if ($authorised !== true) { $output['status'] = false; $output['message'] = Text::_('JERROR_ALERTNOAUTHOR'); echo json_encode($output); die(); } $output['status'] = true; $output['new'] = $isNew; // The save2copy task needs to be handled slightly differently. if ($task == 'save2copy') { // Check-in the original row. if ($model->checkin($data['id']) === false) { // Check-in failed, go back to the item and display a notice. $output['status'] = false; $output['message'] = Text::sprintf('JLIB_APPLICATION_ERROR_CHECKIN_FAILED', $model->getError()); echo json_encode($output); die(); } // Reset the ID and then treat the request as for Apply. $output['title'] = $model->pageGenerateNewTitle($data['title']); $data['id'] = 0; $task = 'apply'; } // Validate the posted data. // This post is made up of two forms, one for the item and one for params. $form = $model->getForm($data); if (!$form) { $output['status'] = false; $output['message'] = $model->getError(); $output['redirect'] = false; echo json_encode($output); die(); } $data = $model->validate($form, $data); // Check for validation errors. if ($data === false) { // Get the validation messages. $errors = $model->getErrors(); $output['status'] = false; $output['message'] = ''; // Push up to three validation messages out to the user. for ($i = 0, $n = count((array) $errors); $i < $n && $i < 3; $i++) { if ($errors[$i] instanceof Exception) { $output['message'] .= $errors[$i]->getMessage(); } else { $output['message'] .= $errors[$i]; } } // Save the data in the session. $app->setUserState('com_sppagebuilder.edit.page.data', $data); // Redirect back to the edit screen. $output['redirect'] = 'index.php?option=' . $this->option . '&view=' . $this->view_item . $this->getRedirectToItemAppend($recordId); echo json_encode($output); die(); } // Attempt to save the data. if (!$model->save($data)) { // Save the data in the session. $app->setUserState('com_sppagebuilder.edit.page.data', $data); // Redirect back to the edit screen. $output['status'] = false; $output['message'] = Text::sprintf('JLIB_APPLICATION_ERROR_SAVE_FAILED', $model->getError()); $output['redirect'] = 'index.php?option=' . $this->option . '&view=' . $this->view_item . $this->getRedirectToItemAppend($recordId); echo json_encode($output); die(); } // Save succeeded, check-in the row. if ($model->checkin($data['id']) === false) { // Check-in failed, go back to the row and display a notice. $output['status'] = false; $output['message'] = Text::sprintf('JLIB_APPLICATION_ERROR_CHECKIN_FAILED', $model->getError()); $output['redirect'] = 'index.php?option=' . $this->option . '&view=' . $this->view_item . $this->getRedirectToItemAppend($recordId); echo json_encode($output); die(); } $output['status'] = true; $output['message'] = Text::_('COM_SPPAGEBUILDER_PAGE_SAVE_SUCCESS'); // Redirect the user and adjust session state based on the chosen task. switch ($task) { case 'apply': // Set the row data in the session. $recordId = $model->getState($this->context . '.id'); $this->holdEditId($context, $recordId); $app->setUserState('com_sppagebuilder.edit.page.data', null); // Delete generated CSS file $css_folder_path = JPATH_ROOT . '/media/com_sppagebuilder/css'; $css_file_path = $css_folder_path . '/page-' . $recordId . '.css'; if (file_exists($css_file_path)) { File::delete($css_file_path); } // Redirect back to the edit screen. $output['redirect'] = 'index.php?option=' . $this->option . '&view=' . $this->view_item . $this->getRedirectToItemAppend($recordId); // Language $lang_code = (isset($data['language']) && $data['language'] && explode('-', $data['language'])[0]) ? explode('-', $data['language'])[0] : ''; $output['preview_url'] = SppagebuilderHelperRoute::getPageRoute($recordId, $lang_code); $output['frontend_editor_url'] = SppagebuilderHelperRoute::getFormRoute($recordId, $lang_code); $output['id'] = $recordId; break; default: // Clear the row id and data in the session. $this->releaseEditId($context, $recordId); $app->setUserState('com_sppagebuilder.edit.page.data', null); // Redirect to the list screen. $output['redirect'] = Route::_('index.php?option=' . $this->option . '&view=' . $this->view_list . $this->getRedirectToListAppend(), false); break; } if (isset($output['id']) && $output['id']) { $css_file_path = JPATH_ROOT . "/media/sppagebuilder/css/page-{$output['id']}.css"; if (file_exists($css_file_path)) { unlink($css_file_path); } } echo json_encode($output); die(); } public function getMySections() { /** @var SppagebuilderModelPage */ $model = $this->getModel(); die($model->getMySections()); } public function deleteSection() { /** @var SppagebuilderModelPage */ $model = $this->getModel(); $app = Factory::getApplication(); $input = $app->input; $id = $input->get('id', '', 'INT'); die($model->deleteSection($id)); } public function saveSection() { /** @var SppagebuilderModelPage */ $model = $this->getModel(); $app = Factory::getApplication(); $input = $app->input; $title = htmlspecialchars($input->get('title', '', 'STRING')); $section = $input->get('section', '', 'RAW'); if ($title && $section) { $section_id = $model->saveSection($title, $section); echo $section_id; die(); } else { die('Failed'); } } public function getMyAddons() { $model = $this->getModel(); die($model->getMyAddons()); } public function saveAddon() { $model = $this->getModel(); $app = Factory::getApplication(); $input = $app->input; $title = htmlspecialchars($input->get('title', '', 'STRING')); $addon = $input->get('addon', '', 'RAW'); if ($title && $addon) { $addon_id = $model->saveAddon($title, $addon); echo $addon_id; die(); } else { die('Failed'); } } public function deleteAddon() { $model = $this->getModel(); $app = Factory::getApplication(); $input = $app->input; $id = $input->get('id', '', 'INT'); die($model->deleteAddon($id)); } public function createNew() { $pageId = 0; $model = $this->getModel('Page'); $output = array(); $output['status'] = false; $app = Factory::getApplication(); $input = $app->input; $user = Factory::getUser(); $authorised = $user->authorise('core.create', 'com_sppagebuilder'); if (!$authorised) { $output['message'] = Text::_('JERROR_ALERTNOAUTHOR'); die(json_encode($output)); } $title = trim(htmlspecialchars($input->post->get('title', '', 'STRING'))); $extension = htmlspecialchars($input->post->get('extension', '', 'STRING')); $extension_view = htmlspecialchars($input->post->get('extension_view', '', 'STRING')); $view_id = $input->post->get('view_id', 0, 'INT'); $editor = $input->post->get('editor', '', 'STRING'); if ($view_id && $title) { $id = $model->createBrandNewPage($title, $extension, $extension_view, $view_id); $pageId = $id; $front_link = 'index.php?option=com_sppagebuilder&view=form&tmpl=component&layout=edit&extension=' . $extension . '&extension_view=' . $extension_view . '&id=' . $pageId; $backend_link = 'index.php?option=com_sppagebuilder&view=editor&tmpl=component&extension=' . $extension . '&extension_view=' . $extension_view . '#/editor/' . $pageId; $sefURI = ($editor === 'front') ? str_replace('/administrator', '', SppagebuilderHelperRoute::buildRoute($front_link)) : $backend_link; $output['status'] = true; $output['url'] = $sefURI; die(json_encode($output)); } die(json_encode($output)); } public function module_save() { $pageId = 0; $model = $this->getModel('Page'); $output = array(); $output['status'] = false; $app = Factory::getApplication(); $input = $app->getInput(); $user = Factory::getUser(); $authorised = $user->authorise('core.create', 'com_sppagebuilder'); if (!$authorised) { $output['message'] = Text::_('JERROR_ALERTNOAUTHOR'); die(json_encode($output)); } $id = (int) $input->post->get('id', '', 'INT'); $title = trim(htmlspecialchars($input->post->get('title', '', 'STRING'))); $content = $input->post->get('content', '[]', 'RAW'); if ($id && $title) { if ($view_id = $model->get_module_page_data($id)) { $model->update_module_data($view_id, $id, $title, $content); } else { $model->save_module_data($id, $title, $content); } $output['status'] = true; die(json_encode($output)); } $output['message'] = 'Error'; die(json_encode($output)); } /** * Redirect to the site dashboard with login data. * * @return void * @since 4.0.0 */ public function redirectSite() { $app = Factory::getApplication(); $input = $app->input; $user = Factory::getUser(); $landing = $input->get('landing', 'dashboard', 'string'); $hash = ['dashboard' => '', 'create' => 'create-page', 'settings' => 'settings']; /** If the user has the access to log in to the site. */ if (!$user->authorise('core.login.site')) { $app->enqueueMessage('Un-authorised to login to the site!'); exit; } $this->setRedirect(AuthHelper::generateLink($hash[$landing])); } private function sendResponse($response, int $statusCode = 200) { $this->app->setHeader('Content-Type', 'application/json'); $this->app->setHeader('status', $statusCode, true); $this->app->sendHeaders(); echo new JsonResponse($response); $this->app->close(); } } PKBA#]y�`ww8components/com_sppagebuilder/controllers/maintenance.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No Direct Access defined('_JEXEC') or die('Resticted Aceess'); use Joomla\CMS\Factory; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\MVC\Controller\AdminController; /** * maintenance list controller class. * * @since 1.0.0 */ class SppagebuilderControllerMaintenance extends AdminController { public function fix() { $app = Factory::getApplication('site'); $input = $app->input; $html = []; if (!class_exists('Maintenance')) { require_once JPATH_ADMINISTRATOR . '/components/com_sppagebuilder/helpers/maintenance.php'; } $maintenance = new Maintenance; $maintenance->fix(); $buffer = $maintenance->getBuffer('fixed'); $errors = $maintenance->getErrors(); $encounter = 1; $response = [ 'html' => implode("\n", $buffer), 'errors' => $errors, ]; $app->setHeader('status', 200, true); $app->sendHeaders(); echo new JsonResponse($response); $app->close(); } } PKBA#]XKѫRR6components/com_sppagebuilder/controllers/languages.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Installer\Installer; use Joomla\CMS\Installer\InstallerHelper; use Joomla\CMS\MVC\Controller\BaseController; class SppagebuilderControllerLanguages extends BaseController { public function install() { $report = array(); $user = Factory::getUser(); $input = Factory::getApplication()->input; $model = $this->getModel('languages'); // Return if not authorised if (!$user->authorise('core.admin', 'com_sppagebuilder')) { $report['message'] = Text::_('JERROR_ALERTNOAUTHOR'); $report['success'] = false; die(json_encode($report)); } $language_api = 'https://sppagebuilder.com/api/languages/languages.json'; if (ini_get('allow_url_fopen')) { $ch_output = file_get_contents($language_api); } elseif (extension_loaded('curl')) { $ch_output = self::getCurlData($language_api); } else { $report['message'] = Text::_('Please enable \'cURL\' or url_fopen in PHP or Contact with your Server or Hosting administrator.'); die(json_encode($report)); } $languages = json_decode($ch_output); $component = $input->get('language', 'english', 'STRING'); if (isset($languages->$component->downloads->source) && $languages->$component->downloads->source) { $url = $languages->$component->downloads->source; $language = $languages->$component; } else { $report['message'] = Text::_('Unable to find the download language package'); $report['success'] = false; die(json_encode($report)); } // $p_file = InstallerHelper::downloadPackage($url); if (!$p_file) { $report['message'] = Text::_('COM_INSTALLER_MSG_INSTALL_INVALID_URL'); $report['success'] = false; die(json_encode($report)); } $config = Factory::getConfig(); $tmp_dest = $config->get('tmp_path'); $package = InstallerHelper::unpack($tmp_dest . '/' . $p_file, true); $installer = Installer::getInstance(); // Was the package unpacked? if (!$package || !$package['type']) { if (in_array($installType, array('upload', 'url'))) { InstallerHelper::cleanupInstall($package['packagefile'], $package['extractdir']); } $report['message'] = Text::_('COM_INSTALLER_UNABLE_TO_FIND_INSTALL_PACKAGE'); $report['success'] = false; die(json_encode($report)); } // Install the package. if (!$installer->install($package['dir'])) { // There was an error installing the package. $report['message'] = Text::sprintf('COM_INSTALLER_INSTALL_ERROR', Text::_('COM_INSTALLER_TYPE_TYPE_' . strtoupper($package['type']))); $report['success'] = false; } else { // Package installed sucessfully. $report['message'] = Text::sprintf('COM_INSTALLER_INSTALL_SUCCESS', Text::_('COM_INSTALLER_TYPE_TYPE_' . strtoupper($package['type']))); $report['success'] = true; $report['version'] = $model->storeInstall($language); } // Cleanup the install files. if (!is_file($package['packagefile'])) { $package['packagefile'] = $tmp_dest . '/' . $package['packagefile']; } InstallerHelper::cleanupInstall($package['packagefile'], $package['extractdir']); die(json_encode($report)); } private static function getCurlData($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); curl_close($ch); return $data; } } PKBA#]�.:&||5components/com_sppagebuilder/controllers/comments.phpnu�[��� <?php /** * @package Joomla.Administrator * @subpackage com_sppagebuilder * @author JoomShaper support@joomshaper.com * @copyright * @license GNU General Public License version 2 or later; see http://www.gnu.org/licenses/gpl-2.0.html */ // No Direct Access defined ('_JEXEC') or die('Restricted Access'); use Joomla\CMS\MVC\Controller\AdminController; class SppagebuilderControllerComments extends AdminController { public function getModel($name = 'Comment', $prefix = 'SppagebuilderModel', $config = array('ignore_request' => true)) { $model = parent::getModel($name, $prefix, $config); return $model; } } PKBA#]�S�`MM9components/com_sppagebuilder/controllers/integrations.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\BaseController; class SppagebuilderControllerIntegrations extends BaseController { // Toggle integration public function toggle($type = '') { $report = array(); $user = Factory::getUser(); $input = Factory::getApplication()->input; $model = $this->getModel('integrations'); // Return if not authorised if (!$user->authorise('core.admin', 'com_sppagebuilder')) { $report['message'] = Text::_('JERROR_ALERTNOAUTHOR'); $report['success'] = false; die(json_encode($report)); } $group = $input->get('group', '', 'STRING'); $name = $input->get('name', '', 'STRING'); $result = $model->toggle($group, $name); $report['result'] = $result; $report['success'] = true; die(json_encode($report)); } } PKBA#]�9����3components/com_sppagebuilder/controllers/editor.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Controller\AdminController; use Joomla\CMS\Response\JsonResponse; use Joomla\CMS\Session\Session; $traits = [ 'CommonTrait.php', 'PageTrait.php', 'PageDuplicateTrait.php', 'IconsListTrait.php', 'ParentItemsTrait.php', 'IntegrationTrait.php', 'SavedAddonsTrait.php', 'SavedPresetsTrait.php', 'SavedAddonsOrderTrait.php', 'PageContentById.php', 'ProductPageContentById.php', 'PageTemplateTrait.php', 'PopupTemplateTrait.php', 'SavedSectionsTrait.php', 'SavedSectionsOrderTrait.php', 'MenuByPageIdTrait.php', 'LayoutImportTrait.php', 'AddonsTrait.php', 'AppConfig.php', 'SettingsTrait.php', 'Media.php', 'AiContentTrait.php', 'AiContentUploadTrait.php', 'MediaFolderTrait.php', 'IconsTrait.php', 'IconProvidersTrait.php', 'MenuListTrait.php', 'LanguageTrait.php', 'SectionLibraryTrait.php', 'AddToMenuTrait.php', 'PageOrderTrait.php', 'ImportTrait.php', 'BulkImportTrait.php', 'ExportTrait.php', 'BulkExportTrait.php', 'ApplicationSettingsTrait.php', 'GlobalColorsTrait.php', 'ImageShapesTrait.php', 'PurgeCssTrait.php', 'SaveIgTokenTrait.php', 'FontsTrait.php', 'UploadFontTrait.php', 'AllFontsTrait.php', 'PluginsTrait.php', 'PageVersionsTrait.php', 'ContentArticleSchemaFormTrait.php' ]; foreach ($traits as $trait) { $filePath = dirname(__FILE__) . '/../editor/traits/' . $trait; if (\file_exists($filePath)) { require_once $filePath; } } class SppagebuilderControllerEditor extends AdminController { use PageTrait; use PageDuplicateTrait; use IntegrationTrait; use ParentItemsTrait; use IconsListTrait; use PageContentById; use ProductPageContentById; use PageTemplateTrait; use PopupTemplateTrait; use SavedAddonsTrait; use SavedPresetsTrait; use SavedAddonsOrderTrait; use SavedSectionsTrait; use SavedSectionsOrderTrait; use MenuListTrait; use MenuByPageIdTrait; use LayoutImportTrait; use AddToMenuTrait; use LanguageTrait; use AddonsTrait; use AppConfig; use SettingsTrait; use Media; use AiContentTrait; use AiContentUploadTrait; use MediaFolderTrait; use IconsTrait; use IconProvidersTrait; use SectionLibraryTrait; use PageOrderTrait; use ImportTrait; use BulkImportTrait; use ExportTrait; use BulkExportTrait; use ApplicationSettingsTrait; use GlobalColorsTrait; use ImageShapesTrait; use PurgeCssTrait; use SaveIgTokenTrait; use FontsTrait; use UploadFontTrait; use AllFontsTrait; use PluginsTrait; use PageVersionsTrait; use ContentArticleSchemaFormTrait; protected $app = null; public function __construct($config = []) { parent::__construct($config); $this->app = Factory::getApplication(); $user = Factory::getUser(); $authorised = $user->authorise('core.admin', 'com_sppagebuilder') || $user->authorise('core.manage', 'com_sppagebuilder'); if (!$authorised) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_ADMIN_ACCESS_REQUIRED'); $this->sendResponse($response, 403); } if (!$user->id) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_LOGIN_SESSION_EXPIRED'); $this->sendResponse($response, 401); } if (!Session::checkToken()) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_SESSION_MISMATCHED'); $this->sendResponse($response, 403); } } public function getModel($name = 'Editor', $prefix = 'SppagebuilderModel', $config = array('ignore_request' => true)) { return parent::getModel($name, $prefix, $config); } /** * Send JSON Response to the client. * {"success":true,"message":"ok","messages":null,"data":[{"key":"value"}]} * * @param mixed $response The response array or data. * @param int $statusCode The status code of the HTTP response. * * @return void * @since 4.1.0 */ private function sendResponse($response, int $statusCode = 200) { $this->app->setHeader('Content-Type', 'application/json'); $this->app->setHeader('status', $statusCode, true); $this->app->sendHeaders(); echo new JsonResponse($response); $this->app->close(); } /** * Check given HTTP method is allowed or not * * @param array $notAllowedMethods * @param string $method * @return void */ private function checkNotAllowedMethods(array $notAllowedMethods, string $method) { if (in_array($method, $notAllowedMethods)) { $response['message'] = Text::_('COM_SPPAGEBUILDER_EDITOR_METHOD_NOT_ALLOWED'); $this->sendResponse($response, 405); } } /** * An abstraction of the $input->get() method. * Here we are just checking the null, true, false values those are coming as string. * If we found those values then return the respective values, * otherwise return the original filtered value. * * @param string $name The request field name. * @param mixed $default Any default value. * @param string $filter The filter similar to the ->get() method. * * @return mixed */ private function getInput(string $name, $default = null, string $filter = 'cmd') { $input = Factory::getApplication()->input; $value = $input->get($name); if (empty($value)) { return $input->get($name, $default, $filter); } if (is_array($value)) { return $input->get($name, $default, $filter); } switch (strtolower($value)) { case 'null': return null; case 'true': return 1; case 'false': return 0; } return $input->get($name, $default, $filter); } private function getInputMethod() { $input = Factory::getApplication()->input; $method = $input->getString('_method', 'GET'); return \strtoupper($method); } public function getFilesInput($name, $default = null, $filter = 'cmd') { $data = $_FILES; if (isset($data[$name])) { $results = $this->decodeData( [ $data[$name]['name'], $data[$name]['type'], $data[$name]['tmp_name'], $data[$name]['error'], $data[$name]['size'], ] ); return $results; } return $default; } /** * Method to decode a data array. * * @param array $data The data array to decode. * * @return array * * @since 1.0 */ protected function decodeData(array $data) { $result = []; if (\is_array($data[0])) { foreach ($data[0] as $k => $_) { $result[$k] = $this->decodeData([$data[0][$k], $data[1][$k], $data[2][$k], $data[3][$k], $data[4][$k]]); } return $result; } return ['name' => $data[0], 'type' => $data[1], 'tmp_name' => $data[2], 'error' => $data[3], 'size' => $data[4]]; } } PKBA#]^PƆ�8components/com_sppagebuilder/controllers/collections.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ use Joomla\CMS\MVC\Controller\AdminController; use JoomShaper\SPPageBuilder\DynamicContent\DynamicContent; //no direct access defined('_JEXEC') or die('Restricted access'); class SppagebuilderControllerCollections extends AdminController { private $dynamicContent = null; /** * The constructor method * * @since 5.5.0 */ public function __construct($config = []) { if (file_exists(JPATH_ROOT . '/administrator/components/com_sppagebuilder/vendor/autoload.php')) { require_once JPATH_ROOT . '/administrator/components/com_sppagebuilder/vendor/autoload.php'; } if (file_exists(JPATH_ROOT . '/administrator/components/com_sppagebuilder/dynamic-content/helper.php')) { require_once JPATH_ROOT . '/administrator/components/com_sppagebuilder/dynamic-content/helper.php'; } parent::__construct($config); $this->dispatchToDynamicContent(); } /** * Create dynamic content instance for executing the tasks. * * @since 5.5.0 */ public function dispatchToDynamicContent() { $this->dynamicContent = DynamicContent::create($this); } /** * Override the execute method to dispatch the task to the dynamic content. * * @since 5.5.0 */ public function execute($task) { return call_user_func_array([$this->dynamicContent, 'dispatch'], [$task, $this->input]); } } PKBA#]�� �+�+6components/com_sppagebuilder/dynamic-content/Model.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent; defined('_JEXEC') or die; use ArrayAccess; use ArrayIterator; use DateTime; use Exception; use IteratorAggregate; use Joomla\CMS\Application\ApplicationHelper; use Joomla\String\StringHelper; use JoomShaper\SPPageBuilder\DynamicContent\Contracts\ModelContract; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use Traversable; class Model implements ArrayAccess, IteratorAggregate, ModelContract { use Concerns\HasRelationships; use Concerns\HasAttributes; /** * The context for the model. * This is required for creating the asset_id. * * @var string * @since 5.5.0 */ protected $context = null; /** * The table name associated with the model. * * @var string */ protected $table; /** * The primary key of the table. * * @var string */ protected $primaryKey = 'id'; /** * The context of the model. * Or this is a name for the model. * This name will be used for renaming the table name. * * @var string * */ protected $name = null; /** * The attributes that should be cast to native types. * * @var array * @since 5.5.0 */ protected $casts = []; /** * The item of the model. * * @var object * @since 5.5.0 */ protected $item; /** * The ordering column of the model. * * @var string * @since 5.5.0 */ protected $orderingKey = null; /** * The query builder instance. * * @var QueryBuilder * @since 5.5.0 */ protected $queryBuilder; /** * The constructor. */ public function __construct($item = null) { $this->item = $item; $this->name = $this->name ?: strtolower(basename(str_replace('\\', '/', get_class($this)))); } /** * Get the model item * * @return object * @since 5.5.0 */ public function getItem() { return $this->item; } /** * Get the model name * * @return string * @since 5.5.0 */ public function getName(): string { return $this->name; } /** * Get the primary key * * @return string * @since 5.5.0 */ public function getPrimaryKey(): string { return $this->primaryKey; } /** * Get the foreign key. The foreign key is constructed by the model name and the primary key. * * @return string * @since 5.5.0 */ public function getForeignKey(): string { return $this->name . '_' . $this->getPrimaryKey(); } /** * Get the ordering column name of the model. * * @return string * @since 5.5.0 */ public function getOrderingKey() { return $this->orderingKey; } /** * Create a new instance of the model * * @param object $item The item * * @return self * @since 5.5.0 */ public function newInstance($item = null): self { return new static($this->formatData($item)); } /** * Set the item values * * @param object $item The item * * @return self * @since 5.5.0 */ public function setItem($item): self { $this->item = $this->formatData($item); return $this; } /** * Get the table name associated with the model. * * @return string */ public function getTable(): string { if (empty($this->table)) { throw new Exception('Table name is not set for the model.'); } return $this->table; } /** * Get the casts of the model. * * @return array * @since 5.5.0 */ public function getCasts(): array { return $this->casts; } /** * Create a unique slug * * @param string $title The title * @param string $alias The alias * * @return string * @since 5.5.0 */ public static function createUniqueSlug(string $title, ?string $alias = null) { if (empty($title)) { throw new Exception('Title is required to create a unique alias.'); } if (!empty($alias)) { return ApplicationHelper::stringURLSafe($alias); } $query = new QueryBuilder(new static); $alias = ApplicationHelper::stringURLSafe($title); while ($query->where('alias', $alias)->exists()) { $alias = StringHelper::increment($alias, 'dash'); $query->clearQuery(); } return $alias; } /** * Convert the model to an array * * @return array * @since 5.5.0 */ public function toArray(): array { $array = (array) $this->item; foreach ($array as $key => $value) { if ($value instanceof Model) { $array[$key] = $value->toArray(); } elseif (is_array($value)) { $array[$key] = array_map(function ($item) { return $item instanceof Model ? $item->toArray() : $item; }, $value); } } return $array; } /** * Convert the model to a JSON string * * @return string * @since 5.5.0 */ public function toJson(): string { return json_encode($this->toArray(), JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT); } /** * Get all the records from the table * * @param array $columns The columns * * @return array * @since 5.5.0 */ public static function all(array $columns = []) { return (new QueryBuilder(new static))->get($columns); } /** * Call the query builder methods * * @param string $name The method name * @param array $arguments The arguments * * @return QueryBuilder * @since 5.5.0 */ public function __call($name, $arguments) { return (new QueryBuilder(new static))->$name(...$arguments); } /** * Call the query builder static methods * * @param string $name The method name * @param array $arguments The arguments * * @return QueryBuilder * @since 5.5.0 */ public static function __callStatic($name, $arguments) { return (new static)->newQuery()->$name(...$arguments); } /** * Create a new query builder instance * * @return QueryBuilder * @since 5.5.0 */ public function newQuery() { $this->queryBuilder = new QueryBuilder(new static); return $this->queryBuilder; } public function hasAsset() { return !is_null($this->context); } /** * Get the query builder instance * * @return QueryBuilder * @since 5.5.0 */ public function getQuery() { return $this->queryBuilder; } /** * Pluck the key from the item * * @param string $key The key * * @return array * @since 5.5.0 */ public function pluck($key) { if (empty((array) $this->item)) { return []; } return Arr::make((array) $this->item)->pluck($key)->toArray(); } /** * Check if the model is empty or not. * * @return bool * @since 5.5.0 */ public function isEmpty(): bool { return empty($this->item) || empty((array) $this->item); } /** * Format the data to the model types. * * @param object $data * @return object * @since 5.4.0 */ protected function formatData($data) { if (empty($data)) { return $data; } $dataCopy = clone $data; $casts = $this->getCasts(); foreach ($casts as $key => $type) { if (!isset($dataCopy->$key)) { continue; } if (stripos($type, ':')) { [$type, $format] = explode(':', $type, 2); } if ($type === 'array') { $dataCopy->$key = Str::toArray($dataCopy->$key); } if ($type === 'datetime') { $dataCopy->$key = (new DateTime($dataCopy->$key))->format($format); } else { settype($dataCopy->$key, $type); } } return $dataCopy; } /** * Check if the offset exists * * @param mixed $offset The offset * * @return bool * @since 5.5.0 */ public function offsetExists(mixed $offset): bool { return isset($this->item->$offset); } /** * Get the offset value * * @param mixed $offset The offset * * @return mixed * @since 5.5.0 */ public function offsetGet(mixed $offset): mixed { return $this->item->$offset; } /** * Set the offset value * * @param mixed $offset The offset * @param mixed $value The value * * @return void * @since 5.5.0 */ public function offsetSet(mixed $offset, mixed $value): void { $this->item->$offset = $value; } /** * Unset the offset value * * @param mixed $offset The offset * * @return void * @since 5.5.0 */ public function offsetUnset(mixed $offset): void { unset($this->item->$offset); } /** * Get the iterator * * @return Traversable * @since 5.5.0 */ public function getIterator(): Traversable { return new ArrayIterator($this->item); } /** * Get the property value * * @param mixed $key The key * * @return mixed * @since 5.5.0 */ public function __get(mixed $key): mixed { return $this->getAttribute($key); } /** * Set the property value * * @param mixed $key The key * @param mixed $value The value * * @return void * @since 5.5.0 */ public function __set(mixed $key, mixed $value): void { $this->item->$key = $value; } /** * Check if the property is set * * @param mixed $key The key * * @return bool * @since 5.5.0 */ public function __isset(mixed $key): bool { return isset($this->item->$key); } /** * Serialize the model * * @return array * @since 5.5.0 */ public function __serialize(): array { return (array) $this->item; } /** * Unserialize the model * * @param array $data The data * * @return void * @since 5.5.0 */ public function __unserialize(array $data): void { $this->item = (object) $data; } } PKBA#]�I� � =components/com_sppagebuilder/dynamic-content/Http/Request.phpnu�[���<?php /* * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Http; defined('_JEXEC') or die; use Joomla\Input\Input; /** * The request class. * @property-read Input $get * @property-read Input $post * @property-read Input $request * @property-read Input $server * @property-read Input $env * @property-read Files $files * @property-read Cookie $cookie * @property-read Json $json * * @method integer getInt($name, $default = null) Get a signed integer. * @method integer getUint($name, $default = null) Get an unsigned integer. * @method float getFloat($name, $default = null) Get a floating-point number. * @method boolean getBool($name, $default = null) Get a boolean value. * @method string getWord($name, $default = null) Get a word. * @method string getAlnum($name, $default = null) Get an alphanumeric string. * @method string getCmd($name, $default = null) Get a CMD filtered string. * @method string getBase64($name, $default = null) Get a base64 encoded string. * @method string getString($name, $default = null) Get a string. * @method string getHtml($name, $default = null) Get a HTML string. * @method string getPath($name, $default = null) Get a file path. * @method string getUsername($name, $default = null) Get a username. * @method mixed getRaw($name, $default = null) Get an unfiltered value. * @method boolean exists($name) Check if a value exists. * @method void set($name, $value) Set a value. * @method array getArray($name = null, $default = null) Get an array. * @method void def($name = null, $default = null) Set a default value. * * @since 5.5.0 */ class Request extends Input { /** * Construct the Request object. * * @param array $data The data to initialize the request with. * @param array $options The options to initialize the request with. * @since 5.5.0 */ public function __construct(array $data = [], array $options = []) { parent::__construct($data, $options); } } PKBA#]��mË;�;>components/com_sppagebuilder/dynamic-content/Http/Response.phpnu�[���<?php /* * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Http; defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Response\JsonResponse; use JoomShaper\SPPageBuilder\DynamicContent\Model; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; class Response { /** * HTTP Status Codes * * @since 5.5.0 */ public const HTTP_CONTINUE = 100; public const HTTP_SWITCHING_PROTOCOLS = 101; public const HTTP_PROCESSING = 102; // RFC2518 public const HTTP_EARLY_HINTS = 103; // RFC8297 public const HTTP_OK = 200; public const HTTP_CREATED = 201; public const HTTP_ACCEPTED = 202; public const HTTP_NON_AUTHORITATIVE_INFORMATION = 203; public const HTTP_NO_CONTENT = 204; public const HTTP_RESET_CONTENT = 205; public const HTTP_PARTIAL_CONTENT = 206; public const HTTP_MULTI_STATUS = 207; // RFC4918 public const HTTP_ALREADY_REPORTED = 208; // RFC5842 public const HTTP_IM_USED = 226; // RFC3229 public const HTTP_MULTIPLE_CHOICES = 300; public const HTTP_MOVED_PERMANENTLY = 301; public const HTTP_FOUND = 302; public const HTTP_SEE_OTHER = 303; public const HTTP_NOT_MODIFIED = 304; public const HTTP_USE_PROXY = 305; public const HTTP_RESERVED = 306; public const HTTP_TEMPORARY_REDIRECT = 307; public const HTTP_PERMANENTLY_REDIRECT = 308; // RFC7238 public const HTTP_BAD_REQUEST = 400; public const HTTP_UNAUTHORIZED = 401; public const HTTP_PAYMENT_REQUIRED = 402; public const HTTP_FORBIDDEN = 403; public const HTTP_NOT_FOUND = 404; public const HTTP_METHOD_NOT_ALLOWED = 405; public const HTTP_NOT_ACCEPTABLE = 406; public const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; public const HTTP_REQUEST_TIMEOUT = 408; public const HTTP_CONFLICT = 409; public const HTTP_GONE = 410; public const HTTP_LENGTH_REQUIRED = 411; public const HTTP_PRECONDITION_FAILED = 412; public const HTTP_REQUEST_ENTITY_TOO_LARGE = 413; public const HTTP_REQUEST_URI_TOO_LONG = 414; public const HTTP_UNSUPPORTED_MEDIA_TYPE = 415; public const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; public const HTTP_EXPECTATION_FAILED = 417; public const HTTP_I_AM_A_TEAPOT = 418; // RFC2324 public const HTTP_MISDIRECTED_REQUEST = 421; // RFC7540 public const HTTP_UNPROCESSABLE_ENTITY = 422; // RFC4918 public const HTTP_LOCKED = 423; // RFC4918 public const HTTP_FAILED_DEPENDENCY = 424; // RFC4918 public const HTTP_TOO_EARLY = 425; // RFC-ietf-httpbis-replay-04 public const HTTP_UPGRADE_REQUIRED = 426; // RFC2817 public const HTTP_PRECONDITION_REQUIRED = 428; // RFC6585 public const HTTP_TOO_MANY_REQUESTS = 429; // RFC6585 public const HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE = 431; // RFC6585 public const HTTP_UNAVAILABLE_FOR_LEGAL_REASONS = 451; // RFC7725 public const HTTP_INTERNAL_SERVER_ERROR = 500; public const HTTP_NOT_IMPLEMENTED = 501; public const HTTP_BAD_GATEWAY = 502; public const HTTP_SERVICE_UNAVAILABLE = 503; public const HTTP_GATEWAY_TIMEOUT = 504; public const HTTP_VERSION_NOT_SUPPORTED = 505; public const HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL = 506; // RFC2295 public const HTTP_INSUFFICIENT_STORAGE = 507; // RFC4918 public const HTTP_LOOP_DETECTED = 508; // RFC5842 public const HTTP_NOT_EXTENDED = 510; // RFC2774 public const HTTP_NETWORK_AUTHENTICATION_REQUIRED = 511; // Connection Errors public const MYSQL_CANNOT_CONNECT = 2002; public const MYSQL_CANNOT_CONNECT_PORT = 2003; public const MYSQL_SERVER_GONE = 2006; public const MYSQL_PROTOCOL_MISMATCH = 2007; public const MYSQL_LOST_CONNECTION = 2013; // Syntax and Query Errors public const MYSQL_TABLE_ALREADY_EXISTS = 1050; public const MYSQL_UNKNOWN_TABLE = 1051; public const MYSQL_DUPLICATE_ENTRY = 1062; public const MYSQL_SYNTAX_ERROR = 1064; public const MYSQL_TABLE_DOES_NOT_EXIST = 1146; // Data Errors public const MYSQL_COLUMN_CANNOT_BE_NULL = 1048; public const MYSQL_NO_DEFAULT_VALUE = 1364; public const MYSQL_INCORRECT_STRING_VALUE = 1366; // Constraint Violations public const MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_ADD_UPDATE = 1216; public const MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_DELETE = 1217; public const MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_CHILD = 1452; // Authentication and Permission Errors public const MYSQL_ACCESS_DENIED_FOR_USER = 1045; public const MYSQL_ACCESS_DENIED_FOR_ROOT = 1698; // Server Errors public const MYSQL_CANNOT_CREATE_TABLE = 1005; public const MYSQL_CANNOT_CREATE_DATABASE = 1006; public const MYSQL_DATABASE_EXISTS = 1007; public const MYSQL_DATABASE_DOES_NOT_EXIST = 1008; // Other Errors public const MYSQL_DATA_TOO_LONG = 1406; public const MYSQL_UNKNOWN_DATABASE = 1049; public const MYSQL_UNKNOWN_COLUMN = 1054; public const MYSQL_DUPLICATE_COLUMN_NAME = 1060; public const MYSQL_CANNOT_DROP_COLUMN_KEY_NOT_EXIST = 1091; /** * @var mixed * @since 5.5.0 */ protected $content = null; /** * @var array * @since 5.5.0 */ protected $headers = []; /** * @var int * @since 5.5.0 */ protected $status = self::HTTP_OK; /** * Constructor * * @param array $headers * @since 5.5.0 */ private function __construct(array $headers = []) { $this->setHeaders($headers); } /** * Get all HTTP codes * * @return array * @since 5.5.0 */ public function httpCodes() { return [ self::HTTP_CONTINUE, self::HTTP_SWITCHING_PROTOCOLS, self::HTTP_PROCESSING, self::HTTP_EARLY_HINTS, self::HTTP_OK, self::HTTP_CREATED, self::HTTP_ACCEPTED, self::HTTP_NON_AUTHORITATIVE_INFORMATION, self::HTTP_NO_CONTENT, self::HTTP_RESET_CONTENT, self::HTTP_PARTIAL_CONTENT, self::HTTP_MULTI_STATUS, self::HTTP_ALREADY_REPORTED, self::HTTP_IM_USED, self::HTTP_MULTIPLE_CHOICES, self::HTTP_MOVED_PERMANENTLY, self::HTTP_FOUND, self::HTTP_SEE_OTHER, self::HTTP_NOT_MODIFIED, self::HTTP_USE_PROXY, self::HTTP_RESERVED, self::HTTP_TEMPORARY_REDIRECT, self::HTTP_PERMANENTLY_REDIRECT, self::HTTP_BAD_REQUEST, self::HTTP_UNAUTHORIZED, self::HTTP_PAYMENT_REQUIRED, self::HTTP_FORBIDDEN, self::HTTP_NOT_FOUND, self::HTTP_METHOD_NOT_ALLOWED, self::HTTP_NOT_ACCEPTABLE, self::HTTP_PROXY_AUTHENTICATION_REQUIRED, self::HTTP_REQUEST_TIMEOUT, self::HTTP_CONFLICT, self::HTTP_GONE, self::HTTP_LENGTH_REQUIRED, self::HTTP_PRECONDITION_FAILED, self::HTTP_REQUEST_ENTITY_TOO_LARGE, self::HTTP_REQUEST_URI_TOO_LONG, self::HTTP_UNSUPPORTED_MEDIA_TYPE, self::HTTP_REQUESTED_RANGE_NOT_SATISFIABLE, self::HTTP_EXPECTATION_FAILED, self::HTTP_I_AM_A_TEAPOT, self::HTTP_MISDIRECTED_REQUEST, self::HTTP_UNPROCESSABLE_ENTITY, self::HTTP_LOCKED, self::HTTP_FAILED_DEPENDENCY, self::HTTP_TOO_EARLY, self::HTTP_UPGRADE_REQUIRED, self::HTTP_PRECONDITION_REQUIRED, self::HTTP_TOO_MANY_REQUESTS, self::HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE, self::HTTP_UNAVAILABLE_FOR_LEGAL_REASONS, self::HTTP_INTERNAL_SERVER_ERROR, self::HTTP_NOT_IMPLEMENTED, self::HTTP_BAD_GATEWAY, self::HTTP_SERVICE_UNAVAILABLE, self::HTTP_GATEWAY_TIMEOUT, self::HTTP_VERSION_NOT_SUPPORTED, self::HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL, self::HTTP_INSUFFICIENT_STORAGE, self::HTTP_LOOP_DETECTED, self::HTTP_NOT_EXTENDED, self::HTTP_NETWORK_AUTHENTICATION_REQUIRED, ]; } public function mysqlCodes() { return [ self::MYSQL_CANNOT_CONNECT, self::MYSQL_CANNOT_CONNECT_PORT, self::MYSQL_SERVER_GONE, self::MYSQL_PROTOCOL_MISMATCH, self::MYSQL_LOST_CONNECTION, self::MYSQL_TABLE_ALREADY_EXISTS, self::MYSQL_UNKNOWN_TABLE, self::MYSQL_DUPLICATE_ENTRY, self::MYSQL_SYNTAX_ERROR, self::MYSQL_TABLE_DOES_NOT_EXIST, self::MYSQL_COLUMN_CANNOT_BE_NULL, self::MYSQL_NO_DEFAULT_VALUE, self::MYSQL_INCORRECT_STRING_VALUE, self::MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_ADD_UPDATE, self::MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_DELETE, self::MYSQL_FOREIGN_KEY_CONSTRAINT_FAILS_CHILD, self::MYSQL_ACCESS_DENIED_FOR_USER, self::MYSQL_ACCESS_DENIED_FOR_ROOT, self::MYSQL_CANNOT_CREATE_TABLE, self::MYSQL_CANNOT_CREATE_DATABASE, self::MYSQL_DATABASE_EXISTS, self::MYSQL_DATABASE_DOES_NOT_EXIST, self::MYSQL_DATA_TOO_LONG, self::MYSQL_UNKNOWN_DATABASE, self::MYSQL_UNKNOWN_COLUMN, self::MYSQL_DUPLICATE_COLUMN_NAME, self::MYSQL_CANNOT_DROP_COLUMN_KEY_NOT_EXIST, ]; } /** * Create a new response instance * * @return self * @since 5.5.0 */ public static function create() { return new static; } /** * Set the headers * * @param array $headers * * @return self * @since 5.5.0 */ public function withHeaders(array $headers = []) { $this->setHeaders($headers); return $this; } /** * Set the header * * @param string $key * @param string $value * * @return self * @since 5.5.0 */ public function setHeader($key, $value) { $this->headers[$key] = $value; return $this; } /** * Get the header * * @param string $key * * @return string|null * @since 5.5.0 */ public function getHeader($key) { return $this->headers[$key] ?? null; } /** * Set the headers * * @param array $headers * * @return self * @since 5.5.0 */ public function setHeaders(array $headers = []) { $this->headers = $headers; return $this; } /** * Get the headers * * @return array * @since 5.5.0 */ public function getHeaders() { return $this->headers; } /** * Set the content * * @param mixed $content * * @return self * @since 5.5.0 */ public function setContent($content) { $this->content = $content; return $this; } /** * Get the content * * @return mixed * @since 5.5.0 */ public function getContent() { return $this->content; } /** * Set the status code * * @param int $status * * @return self * @since 5.5.0 */ public function setStatus($status) { $this->status = $status; return $this; } /** * Check if the code is a database error * * @param int $code * @return bool * @since 5.5.0 */ protected function isDatabaseError(int $code) { return in_array($code, $this->mysqlCodes()); } /** * Check if the code is a HTTP error * * @param int $code * @return bool * @since 5.5.0 */ protected function isHttpError(int $code) { return in_array($code, $this->httpCodes()); } /** * Get the database error status * * @param int $code * @return int * @since 5.5.0 */ protected function parseStatusCode(int $code) { // Common MySQL error codes and their HTTP equivalents if ($code >= 1040 && $code <= 1053) { // Connection/server issues return self::HTTP_SERVICE_UNAVAILABLE; } if ($code >= 1060 && $code <= 1099) { // Column/table definition issues return self::HTTP_UNPROCESSABLE_ENTITY; } if ($code >= 1100 && $code <= 1199) { // General database errors return self::HTTP_INTERNAL_SERVER_ERROR; } if ($this->isDatabaseError($code) || !$this->isHttpError($code)) { return self::HTTP_INTERNAL_SERVER_ERROR; } // Default to internal server error for unknown codes return $code; } /** * Get the status code * * @since 5.5.0 */ public function getStatus() { return $this->status; } /** * Send the JSON response * * @since 5.5.0 */ public function json($data, $status = self::HTTP_OK) { $this->setHeader('Content-Type', 'application/json') ->setContent($data) ->setStatus($status); return $this->send(); } /** * Send the response * * @since 5.5.0 */ protected function send() { /** @var CMSApplication $app */ $app = Factory::getApplication(); $app->setHeader('Content-Type', $this->getHeader('Content-Type')); $app->setHeader('status', $this->parseStatusCode($this->getStatus()), true); $app->sendHeaders(); $data = $this->getContent(); if ($this->isDatabaseError($this->getStatus())) { $data = ['message' => 'Something went wrong. Please try again later.']; } if (is_array($data)) { $data = array_map(function ($item) { return $item instanceof Model ? $item->toArray() : $item; }, $data); } elseif ($data instanceof Model) { $data = $data->toArray(); } elseif ($data instanceof Arr) { $data = $data->toArray(); } echo new JsonResponse($data); $app->close(); } } PKBA#]��?����Pcomponents/com_sppagebuilder/dynamic-content/Services/CollectionItemsService.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL */ namespace JoomShaper\SPPageBuilder\DynamicContent\Services; use Exception; use Joomla\CMS\Factory; use Throwable; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Language\Associations; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Constants\DateRange; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Status; use JoomShaper\SPPageBuilder\DynamicContent\Exceptions\ValidatorException; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Model; use JoomShaper\SPPageBuilder\DynamicContent\Models\Access; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Models\Language; use JoomShaper\SPPageBuilder\DynamicContent\Models\User; use JoomShaper\SPPageBuilder\DynamicContent\QueryBuilder; use JoomShaper\SPPageBuilder\DynamicContent\Site\CollectionHelper; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Date; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use ReflectionClass; defined('_JEXEC') or die; class CollectionItemsService { use Validator; /** * The common properties for all the collection items. * * @var array * @since 5.5.0 */ public const COMMON_PROPERTIES = ['published', 'access', 'language', 'created', 'created_by']; /** * The common properties for the collection item form. * * @var array * @since 5.5.0 */ public const COMMON_PROPERTIES_FOR_FORM = [ 'published' => [ 'name' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_STATUS', 'description' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_STATUS_DESCRIPTION', 'placeholder' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_STATUS_PLACEHOLDER', 'type' => 'status', 'key' => 'published', 'required' => false, 'options' => 'getStatusOptions', 'default_value' => 1, ], 'access' => [ 'name' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ACCESS', 'description' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ACCESS_DESCRIPTION', 'placeholder' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ACCESS_PLACEHOLDER', 'type' => 'access', 'key' => 'access', 'required' => false, 'options' => 'getAccessOptions', 'default_value' => 1, ], 'language' => [ 'name' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_LANGUAGE', 'description' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_LANGUAGE_DESCRIPTION', 'placeholder' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_LANGUAGE_PLACEHOLDER', 'type' => 'language', 'key' => 'language', 'required' => false, 'options' => 'getLanguageOptions', 'default_value' => '*', ], 'created_by' => [ 'name' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_CREATED_BY', 'description' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_CREATED_BY_DESCRIPTION', 'placeholder' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_CREATED_BY_PLACEHOLDER', 'type' => 'created_by', 'key' => 'created_by', 'required' => false, 'options' => 'getCreatedByOptions', 'default_value' => null, ], 'association' => [ 'name' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ASSOCIATION', 'description' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ASSOCIATION_DESCRIPTION', 'placeholder' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ASSOCIATION_PLACEHOLDER', 'type' => 'association', 'key' => 'association', 'required' => false, 'options' => 'getAssociationOptions', 'default_value' => null, ] ]; /** * The common property names. * * @var array * @since 5.5.0 */ public const COMMON_PROPERTY_NAMES = [ 'published' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_STATUS', 'access' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ACCESS', 'language' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_LANGUAGE', 'created' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_CREATED', 'created_by' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_CREATED_BY', 'association' => 'COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ASSOCIATION', ]; /** * The valid batch update keys that are allowed to be updated. * * @var array * @since 5.5.0 */ public const BATCH_UPDATE_KEYS = ['published', 'access', 'language', 'delete']; /** * Cache for primary field IDs by reference field ID. * * @var array * @since 6.2.0 */ protected $primaryFieldCache = []; /** * Cache for reference values by serialized parameters. * * @var array * @since 6.2.0 */ protected $referenceValuesCache = []; /** * The field key prefix. This prefix will be used for collection item object properties. * * @var string * @since 5.5.0 */ public const FIELD_KEY_PREFIX = 'field_'; /** * The primary field type from the fields table. * Currently we are using the title field as the primary field. * * @var string * @since 5.5.0 */ public const PRIMARY_FIELD_TYPE = FieldTypes::TITLE; /** * The available status filters. * * @var array * @since 5.5.0 */ public const AVAILABLE_STATUS_FILTERS = ['1', '0', '-2', '*']; /** * The available date filters. * * @var array * @since 5.5.0 */ public const AVAILABLE_DATE_FILTERS = [ DateRange::LAST_24_HOURS, DateRange::LAST_7_DAYS, DateRange::LAST_30_DAYS, '*', ]; /** * Clear all caches to ensure fresh data. * * @return void * @since 6.2.0 */ public function clearCaches() { $this->primaryFieldCache = []; $this->referenceValuesCache = []; } /** * Pre-load primary field IDs for all reference fields to optimize batch processing. * This method analyzes all items and pre-fetches primary field IDs for reference fields. * * @param array $items The collection items. * * @return void * @since 6.2.0 */ protected function preloadPrimaryFieldIds(array $items) { $referenceFieldIds = []; foreach ($items as $item) { if (empty($item->values)) { continue; } foreach ($item->values as $value) { if ($value->field_type === FieldTypes::REFERENCE) { $referenceFieldIds[] = $value->field_id; } } } $referenceFieldIds = array_unique($referenceFieldIds); if (!empty($referenceFieldIds)) { $referenceFields = CollectionField::whereIn('id', $referenceFieldIds) ->whereNotNull('reference_collection_id') ->get(['id', 'reference_collection_id']); $collectionIds = []; $fieldMap = []; foreach ($referenceFields as $field) { $collectionIds[] = $field->reference_collection_id; $fieldMap[$field->reference_collection_id][] = $field->id; } if (!empty($collectionIds)) { $titleFields = CollectionField::whereIn('collection_id', array_unique($collectionIds)) ->where('type', static::PRIMARY_FIELD_TYPE) ->get(['id', 'collection_id']); foreach ($titleFields as $titleField) { if (!isset($fieldMap[$titleField->collection_id])) { continue; } foreach ($fieldMap[$titleField->collection_id] as $referenceFieldId) { $this->primaryFieldCache[$referenceFieldId] = $titleField->id; } } } } } /** * Create the collection item record * * @param array $data The data * * @return int * @since 5.5.0 */ public function createItem(array $data) { $this->validateItemData($data); if ($this->hasErrors()) { throw new ValidatorException($this->getErrors(), Response::HTTP_BAD_REQUEST); } $associationValue = $data['association']; unset($data['association']); $values = Str::toArray($data['values']); $values = Arr::make($values); $values = $this->sanitizeValues($values); unset($data['values']); QueryBuilder::beginTransaction(); try { $data = array_merge($data, [ 'created' => Date::sqlSafeDate(), 'modified' => Date::sqlSafeDate(), ]); $itemId = CollectionItem::create($data); $values = $this->populateValuesWithAlias($values, $data['collection_id'], $itemId); $this->createItemValues($values, $itemId); if (isset($associationValue) && !empty($associationValue)) { $this->handleAssociations($itemId, $associationValue, $data); } QueryBuilder::commit(); return $itemId; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } /** * Update the collection item record * * @param array $payload The payload * * @return int * @since 5.5.0 */ public function updateItem(array $payload) { $this->validateItemData($payload); if ($this->hasErrors()) { return response()->json($this->getErrors(), Response::HTTP_BAD_REQUEST); } $associationValue = $payload['association'] ?? null; unset($payload['association']); $values = Str::toArray($payload['values']); $values = Arr::make($values); $values = $this->sanitizeValues($values); unset($payload['values']); $values = $this->populateValuesWithAlias($values, $payload['collection_id'], $payload['item_id']); QueryBuilder::beginTransaction(); try { $itemId = (int) $payload['item_id']; unset($payload['item_id']); CollectionItem::where('id', $itemId)->update($payload); $this->deleteItemValues($itemId); $this->createItemValues($values, $itemId); if (isset($associationValue) && !empty($associationValue)) { $this->handleAssociations($itemId, $associationValue, $payload); } QueryBuilder::commit(); return $itemId; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } /** * Get a single item by ID. * * @param int $itemId The item ID. * * @return array * @since 5.5.0 */ public function fetchSingleItem(int $itemId) { $item = CollectionItem::find($itemId); if (empty($item)) { return null; } $dynamicValues = $this->prepareCollectionItemValues($item->values); $commonValues = Arr::make(static::COMMON_PROPERTIES) ->reduce(function ($carry, $property) use ($item) { $carry[$property] = $item[$property] ?? null; return $carry; }, [])->toArray(); $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('`key`') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $itemId); $db->setQuery($query); $associationKey = $db->loadResult(); $queryAgain = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($associationKey)) ->where('id != ' . (int) $itemId); $db->setQuery($queryAgain); $associationValue = $db->loadColumn() ?? []; $associationValues = []; foreach ($associationValue as $itemId) { $item = CollectionItem::where('id', $itemId)->first(); if ($item) { $language = $item->language; $languageTitle = Language::where('lang_code', $language)->first()->title ?? $language; $associationValues[$languageTitle][] = $itemId; } } $commonValues['association'] = $associationValues; $data = array_merge(['id' => $item->id], $dynamicValues, $commonValues); return $this->populateFieldsWithData( $this->prepareDataForCollectionItemForm($item->collection_id), $data ); } /** * Get a single collection item by its ID. * * @param int $itemId The item ID. * @return array|null The collection item data or null if not found. * * @since 5.5.0 */ public function getCollectionItem($itemId) { $item = CollectionItem::where('id', $itemId) ->leftJoin(Language::class, 'language.lang_code', 'collection_item.language') ->leftJoin(Access::class, 'access.id', 'collection_item.access') ->leftJoin(User::class, 'user.id', 'collection_item.created_by') ->with(['values' => function ($query) { return $query->leftJoin(CollectionField::class, 'collection_field.id', 'collection_item_value.field_id') ->rawQuery(function ($query) { return $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type', 'field_options' => 'collection_field.options', ] ); }); }]) ->rawQuery(function ($query) { return $query->select([ 'language_title' => 'language.title', 'access_title' => 'access.title', 'user' => 'user.name', ]); })->first(); if ($item->isEmpty()) { return null; } return $this->processSingleCollectionItem($item); } /** * Prepare the form data for the collection item form. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function prepareFormData(int $collectionId) { $considerDefaultAsValue = true; return $this->populateFieldsWithData( $this->prepareDataForCollectionItemForm($collectionId), [], $considerDefaultAsValue ); } /** * Fetch all items by the collection ID. * * @param array $payload The payload. * * @return array * @since 5.5.0 */ public function fetchAll(array $payload) { $this->validate($payload, [ 'collection_id' => 'required|integer', 'current_page' => 'required|integer', 'per_page' => 'required|integer', 'status' => 'string|in:' . implode(',', static::AVAILABLE_STATUS_FILTERS), 'created' => 'string|in:' . implode(',', static::AVAILABLE_DATE_FILTERS), 'modified' => 'string|in:' . implode(',', static::AVAILABLE_DATE_FILTERS), ]); $collectionId = $payload['collection_id']; $currentPage = $payload['current_page']; $perPage = $payload['per_page']; $status = $payload['status']; $created = $payload['created']; $modified = $payload['modified']; $search = $payload['search']; $search = trim($search); $search = addcslashes($search, '%_\\'); if ($this->hasErrors()) { throw new ValidatorException($this->getErrors(), Response::HTTP_BAD_REQUEST); } $searchedItemIds = []; // Search by the keyword in the collection item values. if (!empty($search)) { $matchingItemIds = CollectionItemValue::where('value', 'LIKE', '%' . $search . '%')->get(['item_id']); foreach ($matchingItemIds as $itemId) { $searchedItemIds[$itemId->item_id] = true; } $searchedItemIds = array_keys($searchedItemIds); } $searchedItemIds = !empty($search) && empty($searchedItemIds) ? [-1] : $searchedItemIds; $items = CollectionItem::where('collection_id', $collectionId) ->leftJoin(Language::class, 'language.lang_code', 'collection_item.language') ->leftJoin(Access::class, 'access.id', 'collection_item.access') ->leftJoin(User::class, 'user.id', 'collection_item.created_by') ->with(['values' => function ($query) { return $query->leftJoin(CollectionField::class, 'collection_field.id', 'collection_item_value.field_id') ->rawQuery(function ($query) { return $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type', 'field_options' => 'collection_field.options', ] ); }); }]) ->rawQuery(function ($query) { return $query->select([ 'language_title' => 'language.title', 'access_title' => 'access.title', 'user' => 'user.name', ]); }); if (!empty($searchedItemIds)) { $items = $items->whereIn('id', $searchedItemIds); } $status = $status === Status::ALL ? [Status::PUBLISHED, Status::UNPUBLISHED] : [$status]; $items = $items->whereIn('published', $status); if ($created !== '*') { [$previous, $today] = Date::generateRange($created); $items = $items->where('created', 'BETWEEN', [$previous->toSql(), $today->toSql()]); } if ($modified !== '*') { [$previous, $today] = Date::generateRange($modified); $items = $items->where('modified', 'BETWEEN', [$previous->toSql(), $today->toSql()]); } $items = $items->orderBy('ordering', 'ASC')->paginate($perPage, $currentPage); $isTrashItem = CollectionItem::where('collection_id', $collectionId) ->where('published', Status::TRASHED) ->exists(); $isUnpublishItem = CollectionItem::where('collection_id', $collectionId) ->where('published', Status::UNPUBLISHED) ->exists(); $response = [ 'results' => [], 'totalItems' => $items['total'], 'totalPages' => $items['total_pages'], 'perPage' => $items['per_page'], 'currentPage' => $items['current_page'], 'isTrashItem' => $isTrashItem, 'isUnpublishItem' => $isUnpublishItem, ]; foreach ($items['data'] as $item) { $response['results'][] = $this->processSingleCollectionItem($item); } return $response; } /** * Fetch items by collection ID. * * @param int $collectionId The collection ID. * @return array The fetched items. * * @since 5.5.0 */ public function fetchItemsByCollectionId(int $collectionId) { $items = CollectionItem::where('collection_id', $collectionId) ->leftJoin(Language::class, 'language.lang_code', 'collection_item.language') ->leftJoin(Access::class, 'access.id', 'collection_item.access') ->leftJoin(User::class, 'user.id', 'collection_item.created_by') ->with(['values' => function ($query) { return $query->leftJoin(CollectionField::class, 'collection_field.id', 'collection_item_value.field_id') ->rawQuery(function ($query) { return $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type', 'field_options' => 'collection_field.options', ] ); }); }]) ->rawQuery(function ($query) { return $query->select([ 'language_title' => 'language.title', 'access_title' => 'access.title', 'user' => 'user.name', ]); })->get(); $this->preloadPrimaryFieldIds($items); $items = Arr::make($items)->map(function ($item) { return $this->processSingleCollectionItem($item); })->toArray(); return $items; } /** * Sanitize the values. * * @param Arr $values The values. * * @return Arr * @since 5.5.0 */ protected function sanitizeValues(Arr $values) { return $values->map(function ($item) { if (Str::isHtmlString($item['value'])) { $item['value'] = Str::sanitizeHtmlString($item['value']); return $item; } if ($item['field_type'] === FieldTypes::GALLERY) { $item['value'] = json_encode($item['value']); return $item; } return $item; }); } /** * Process a single collection item. * * @param CollectionItem $item The item. * * @return array * @since 5.5.0 */ protected function processSingleCollectionItem(CollectionItem $item) { $item['language'] = $item['language'] === '*' ? Text::_('COM_SPPAGEBUILDER_ALL') : $item['language_title']; $item['access'] = $item['access_title']; $item['created_by'] = $item['user']; unset($item['language_title'], $item['access_title'], $item['user']); $collectionItemValues = $this->makeCollectionItem($item); return $collectionItemValues; } /** * Fetch the collection schema. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function fetchCollectionSchema(int $collectionId) { return $this->makeCollectionSchema($collectionId); } /** * Duplicate an existing item along with the values. * * @param int $itemId The item ID. * * @return int * @since 5.5.0 */ public function duplicateItem(int $itemId) { $item = CollectionItem::where('id', $itemId)->with('values')->first(); if (empty($item)) { throw new Exception('Item not found', Response::HTTP_NOT_FOUND); } $newItemData = [ 'collection_id' => $item->collection_id, 'published' => 0, 'access' => $item->access, 'language' => $item->language, 'created' => Date::sqlSafeDate(), 'created_by' => $item->created_by, ]; QueryBuilder::beginTransaction(); try { $newItemId = CollectionItem::create($newItemData); [$titleFieldId, $aliasFieldId] = $this->getBasicFieldIDs($item->collection_id); if (!empty($item->values)) { $values = $item->values; $values = Arr::make($values); $title = $values->find(function ($value) use ($titleFieldId) { return $value->field_id === $titleFieldId; })->value ?? null; $alias = $values->find(function ($value) use ($aliasFieldId) { return $value->field_id === $aliasFieldId; })->value ?? null; if (!empty($title)) { $alias = $this->createUniqueAlias($aliasFieldId, $title, $alias, $newItemId); } $newValues = $values->map(function ($value) use ($newItemId, $titleFieldId, $aliasFieldId, $alias, $title) { $itemValue = $value['value']; if ($value['field_id'] === $titleFieldId) { $itemValue = $title; } if ($value['field_id'] === $aliasFieldId) { $itemValue = $alias; } return [ 'item_id' => $newItemId, 'field_id' => $value['field_id'], 'value' => $itemValue, 'reference_item_id' => $value['reference_item_id'] ?? null, ]; }); CollectionItemValue::createMany($newValues->toArray()); } QueryBuilder::commit(); return $newItemId; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } /** * Delete the items by the item IDs. * * @param array $itemIds The item IDs. * * @return void * @throws Throwable * @since 5.5.0 */ public function deleteItems(array $itemIds) { try { return CollectionItem::whereIn('id', $itemIds)->delete(); } catch (Throwable $error) { throw $error; } } /** * Update the items by the item IDs. * * @param array $itemIds The item IDs. * @param string $key The key to update. * @param mixed $value The value to update. * * @return void * @since 5.5.0 */ public function updateItems(array $itemIds, string $key, $value) { try { CollectionItem::whereIn('id', $itemIds)->update([$key => $value]); } catch (Exception $error) { return response()->json($error->getMessage(), Response::HTTP_INTERNAL_SERVER_ERROR); } } /** * Fetch the collection items as options. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function fetchCollectionItemsAsOptions(int $collectionId) { try { $primaryField = CollectionField::where('collection_id', $collectionId) ->where('type', static::PRIMARY_FIELD_TYPE) ->first(['id']); $primaryFieldId = $primaryField->id ?? 0; $items = CollectionItem::where('collection_id', $collectionId) ->with(['values' => function ($query) use ($primaryFieldId) { return $query->where('field_id', $primaryFieldId); }])->get(); if (empty($items)) { return []; } $items = Arr::make($items)->map(function ($item) { return [ 'value' => $item->id, 'label' => !empty($item->values) ? $item->values[0]->value : null, ]; })->filter(function ($item) { return !empty($item['label']); })->toArray(); return $items; } catch (Throwable $error) { throw $error; } } /** * Create the field key with prefix and the field id. * * @param int $fieldId The field ID. * * @return string * @since 5.5.0 */ public static function createFieldKey(int $fieldId) { return static::FIELD_KEY_PREFIX . $fieldId; } /** * Validate item data * * @param array $data The item data to validate. * * @return void * @since 5.5.0 */ protected function validateItemData(array $data) { $data['values'] = Str::toArray($data['values']); $this->validate($data, [ 'collection_id' => 'required|integer', 'published' => 'required|integer', 'access' => 'required|integer', 'language' => 'required|string', 'created_by' => 'required|integer', 'values' => 'required|array', ]); $values = Arr::make($data['values']); unset($data['values']); foreach ($values as $value) { $this->validate($value, [ 'field_id' => 'required|integer', 'field_type' => 'required|string', ]); } } /** * Check if the field type is a reference field. * * @param string $fieldType The field type to check. * * @return bool * @since 5.5.0 */ protected function isReferenceField(string $fieldType) { return in_array($fieldType, [FieldTypes::REFERENCE, FieldTypes::MULTI_REFERENCE], true); } /** * Create item values. * * @param Arr $values The values to create. * @param int $itemId The item ID. * * @return void * @since 5.5.0 */ protected function createItemValues(Arr $values, int $itemId) { $values = $values->map(function($value) use ($itemId) { return [ 'item_id' => (int) $itemId, 'field_id' => (int) $value['field_id'], 'field_type' => $value['field_type'], 'value' => $value['value'] ?? null, 'reference_item_id' => null, ]; })->reduce( function ($result, $item) { if ($this->isReferenceField($item['field_type'])) { $item['value'] = Str::toArray($item['value']); if (!is_array($item['value'])) { $item['value'] = [$item['value']]; } $referenceItemIds = array_map('intval', $item['value']); foreach ($referenceItemIds as $referenceItemId) { $item['value'] = null; $item['reference_item_id'] = $referenceItemId; unset($item['field_type']); $result[] = $item; } unset($item['field_type']); } else { if ($item['field_type'] === FieldTypes::LOCATION && is_array($item['value'])) { $item['value'] = json_encode($item['value']); } unset($item['field_type']); $result[] = $item; } return $result; }, [] ); try { return CollectionItemValue::createMany($values->toArray()); } catch (Throwable $error) { throw $error; } } /** * Delete item values. * * @param int $itemId The item ID. * * @return void * @since 5.5.0 */ protected function deleteItemValues(int $itemId) { try { return CollectionItemValue::where('item_id', $itemId)->delete(); } catch (Throwable $error) { throw $error; } } /** * Prepare the item values for the reference fields. * * @param Model $values The values to prepare. * @param array $fieldsMap The fields map. * * @return array * @since 5.5.0 */ protected function prepareCollectionItemValues($values) { $referenceIds = []; $result = []; foreach ($values as $value) { $fieldKey = static::createFieldKey($value->field_id); $itemId = $value->item_id; $fieldId = $value->field_id; $referenceItemId = $value->reference_item_id; $key = $itemId . '_' . $fieldId; if (!isset($referenceIds[$key]) && !empty($referenceItemId)) { $referenceIds[$key] = [ 'type' => FieldTypes::REFERENCE, 'field_id' => $fieldId, 'value' => [], ]; } if (!empty($referenceItemId)) { $referenceIds[$key]['value'][] = $referenceItemId; $result[$fieldKey] = $referenceIds[$key]; continue; } $result[$fieldKey] = $value->value ?? null; } return $result; } /** * Populate the fields with data. * * @param array $fields The fields. * @param array $data The data. * @param bool $isDefaultAsValue The flag to consider the default value as value. * * @return array * @since 5.5.0 */ protected function populateFieldsWithData($fields, $data, bool $isDefaultAsValue = false) { foreach ($fields as &$field) { $defaultValue = $field->default_value ?? null; $field->value = $isDefaultAsValue ? $defaultValue : ($data[$field->key] ?? null); if (in_array($field->type, [FieldTypes::REFERENCE, FieldTypes::MULTI_REFERENCE], true)) { $field->value = $isDefaultAsValue ? $defaultValue : ($field->value['value'] ?? []); [$referenceItems] = wrapErrorSafe(function () use ($field) { return $this->fetchCollectionItemsAsOptions($field->reference_collection_id); }); $field->reference_items = !empty($referenceItems) ? $referenceItems : []; } if ($field->type === FieldTypes::GALLERY) { $field->value = $isDefaultAsValue ? $defaultValue : Str::toArray( $field->value); } } unset($field); return $fields; } /** * Get the status options. * * @return array * @since 5.5.0 */ protected function getStatusOptions() { return [ [ 'label' => Text::_('COM_SPPAGEBUILDER_EDITOR_STATUS_PUBLISHED'), 'value' => 1, ], [ 'label' => Text::_('COM_SPPAGEBUILDER_EDITOR_STATUS_UNPUBLISHED'), 'value' => 0, ], [ 'label' => Text::_('COM_SPPAGEBUILDER_EDITOR_STATUS_TRASHED'), 'value' => -2, ], ]; } /** * Get the access options. * * @return array * @since 5.5.0 */ protected function getAccessOptions() { return Arr::make(Access::orderBy('ordering', 'ASC')->get(['id', 'title']))->map(function ($item) { return [ 'label' => $item->title, 'value' => $item->id, ]; })->toArray(); } /** * Get the language options. * * @return array * @since 5.5.0 */ protected function getLanguageOptions() { $languages = Arr::make(Language::where('published', 1)->orderBy('ordering', 'ASC')->get(['lang_code', 'title']))->map(function ($item) { return [ 'label' => $item->title, 'value' => $item->lang_code, ]; }); $languages->prepend([ 'label' => Text::_('COM_SPPAGEBUILDER_ALL'), 'value' => '*', ]); return $languages->toArray(); } /** * Get the created by options. * * @return array * @since 5.5.0 */ protected function getCreatedByOptions() { return Arr::make(User::orderBy('name', 'ASC')->get(['id', 'name']))->map(function ($item) { return [ 'label' => $item->name, 'value' => $item->id, ]; })->toArray(); } /** * Get the association options. * * Auto-detects current item and collection from request context. * * @return array * @since 6.1.0 */ protected function getAssociationOptions() { $currentItemId = Factory::getApplication()->input->getInt('item_id'); if (empty($currentItemId)) { return []; } $collectionId = CollectionItem::where('id', $currentItemId)->first(['collection_id'])->collection_id ?? null; $currentItem = null; if ($currentItemId) { $currentItem = CollectionItem::find($currentItemId); } if ($currentItem && $currentItem->language === '*') { return []; } $query = CollectionItem::orderBy('language', 'ASC')->orderBy('id', 'DESC'); if ($collectionId) { $query->where('collection_id', $collectionId); } $query->where('language', '!=', '*'); if ($currentItemId) { $query->where('id', '!=', $currentItemId); $query->where('language', '!=', $currentItem->language); } $query->where('published', 1); $items = $query->get(['id', 'collection_id', 'language', 'published']); $options = []; $currentLanguage = $currentItem ? $currentItem->language : null; foreach ($items as $item) { $titleField = CollectionField::where('collection_id', $item->collection_id) ->where('type', 'title') ->first(); if ($titleField) { $valueRecord = CollectionItemValue::where('item_id', $item->id) ->where('field_id', $titleField->id) ->first(); $displayTitle = $valueRecord ? $valueRecord->value : 'Item #' . $item->id; } else { $displayTitle = 'Item #' . $item->id; } $languageInfo = $this->getLanguageInfo($item->language); $languageDisplayTitle = $languageInfo['displayTitle'] ?? $languageInfo['title']; if (!isset($options[$languageDisplayTitle])) { $options[$languageDisplayTitle] = []; } $options[$languageDisplayTitle][] = [ 'label' => $displayTitle, 'value' => $item->id, 'language' => $item->language, 'flag' => $languageInfo['flag'], 'languageTitle' => $languageInfo['title'], 'isCurrentLanguage' => $currentLanguage === $item->language ]; } return $options; } /** * Get language information including title and flag. * * @param string $languageCode The language code * * @return array */ protected function getLanguageInfo($languageCode) { static $languages = null; if ($languages === null) { $languages = \Joomla\CMS\Language\LanguageHelper::getLanguages(); } if (isset($languages) && count($languages) > 0) { $lang = Arr::make($languages)->find(function ($item) use ($languageCode) { return $item->lang_code === $languageCode; }) ?? null; if ($lang) { return [ 'code' => $lang->lang_code, 'title' => $lang->title_native, 'displayTitle' => $lang->title, 'flag' => $lang->image ]; } } return [ 'code' => $languageCode, 'title' => ucfirst($languageCode), 'displayTitle' => ucfirst($languageCode), 'flag' => '' ]; } /** * Prepare the common fields for the collection item form. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ protected function prepareCommonFieldsForCollectionItemForm(int $collectionId) { $reflection = new ReflectionClass($this); return Arr::make(array_keys(static::COMMON_PROPERTIES_FOR_FORM))->map(function ($property) use ($collectionId, $reflection) { $field = static::COMMON_PROPERTIES_FOR_FORM[$property]; $field['id'] = Str::uuid(); $field['collection_id'] = $collectionId; $field['name'] = Text::_($field['name']); $field['description'] = Text::_($field['description']); $field['placeholder'] = Text::_($field['placeholder']); $options = []; if (isset($field['options']) && $reflection->hasMethod($field['options'])) { $options = $this->{$field['options']}(); } $field['options'] = $options; return (object) $field; })->toArray(); } /** * Prepare the data for the collection item form. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ protected function prepareDataForCollectionItemForm(int $collectionId) { $fields = CollectionField::where('collection_id', $collectionId) ->orderBy('ordering', 'ASC') ->get(CollectionField::COMMON_COLUMNS); foreach ($fields as &$field) { $field->options = Str::toArray($field->options); $field->key = static::createFieldKey($field->id); if ($field->type === FieldTypes::MULTI_REFERENCE) { $field->default_value = Str::toArray($field->default_value); } if ($field->type === FieldTypes::GALLERY) { $field->default_value = Str::toArray($field->default_value); } } unset($field); $dynamicFields = $fields ?? []; $commonFields = $this->prepareCommonFieldsForCollectionItemForm($collectionId); return array_merge($dynamicFields, $commonFields); } /** * Make the collection schema for a specific collection. * * @param int $collectionId The collection ID. * * @return array * @throws Throwable * @since 5.5.0 */ protected function makeCollectionSchema(int $collectionId) { try { $fields = CollectionField::where('collection_id', $collectionId) ->whereNot('type', FieldTypes::RICH_TEXT) ->orderBy('ordering', 'ASC')->get(); } catch (Throwable $error) { throw $error; } $schema = []; $idProperty = [ 'key' => 'id', 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ITEM_ID'), 'type' => 'common', ]; $schema[] = $idProperty; foreach ($fields as $field) { $schema[] = [ 'key' => static::createFieldKey($field->id), 'name' => $field->name, 'type' => $field->type, ]; } foreach (static::COMMON_PROPERTIES as $property) { $schema[] = [ 'key' => $property, 'name' => Text::_(static::COMMON_PROPERTY_NAMES[$property]), 'type' => 'common', ]; } return $schema; } /** * Get the title field's ID. * * @param int $fieldId The field ID. * * @return int * @since 5.5.0 */ protected function getPrimaryFieldForReferenceCollection(int $fieldId) { if (isset($this->primaryFieldCache[$fieldId])) { return $this->primaryFieldCache[$fieldId]; } $field = CollectionField::find($fieldId); $referenceCollectionId = intval($field->reference_collection_id ?? 0); if (empty($field) || empty($referenceCollectionId)) { $this->primaryFieldCache[$fieldId] = 0; return 0; } $titleField = CollectionField::where('collection_id', $referenceCollectionId) ->where('type', static::PRIMARY_FIELD_TYPE) ->first(['id']); $primaryFieldId = $titleField->id ?? 0; $this->primaryFieldCache[$fieldId] = $primaryFieldId; return $primaryFieldId; } /** * Get the reference values. * * @param array $itemIds The item IDs. * @param int $primaryFieldId The primary field ID. * * @return string * @since 5.5.0 */ protected function getReferenceValues(array $itemIds, int $primaryFieldId) { sort($itemIds); $cacheKey = implode(',', $itemIds) . '_' . $primaryFieldId; if (isset($this->referenceValuesCache[$cacheKey])) { return $this->referenceValuesCache[$cacheKey]; } $values = CollectionItemValue::whereIn('item_id', $itemIds) ->where('field_id', $primaryFieldId) ->get(['value']); $valuesArray = []; foreach ($values as $value) { $valuesArray[] = $value->value; } $this->referenceValuesCache[$cacheKey] = $valuesArray; return $valuesArray; } /** * Make the collection item for the collection items response. * * @param CollectionItem $item The item object. * * @return array * @since 5.5.0 */ protected function makeCollectionItem(CollectionItem $item) { $itemId = $item->id; $values = $item->values; foreach ($values as $value) { $value->field_options = Str::toArray($value->field_options); if ($value->field_type === FieldTypes::OPTION) { $value->value = Arr::make($value->field_options)->find(function ($option) use ($value) { return $option['value'] === $value->value; })['label'] ?? null; } if ($value->field_type === FieldTypes::IMAGE) { $imageValue = $value->value; if (is_string($imageValue) && strpos(trim($imageValue), '{') === 0) { $decodedData = json_decode($imageValue, true); if (is_array($decodedData) && isset($decodedData['src'])) { $imageValue = $decodedData['src']; } } $value->value = CollectionHelper::getImageUrl($imageValue); } } $collectionItemIdValue = ['id' => $itemId]; $collectionItemCommonValues = Arr::make(static::COMMON_PROPERTIES)->reduce( function ($carry, $property) use ($item) { $carry[$property] = isset($item[$property]) ? $item[$property] : null; return $carry; }, [] )->toArray(); if (empty($values)) { return array_merge($collectionItemIdValue, $collectionItemCommonValues); } $result = []; $collectionItemDynamicValues = $this->prepareCollectionItemValues($values); $result = array_merge($collectionItemIdValue, $collectionItemDynamicValues, $collectionItemCommonValues); foreach ($result as $index => $item) { if (is_array($item) && !empty($item['type']) && $item['type'] === FieldTypes::REFERENCE && is_array($item['value'])) { $primaryFieldId = $this->getPrimaryFieldForReferenceCollection($item['field_id']); $result[$index] = $this->getReferenceValues($item['value'], $primaryFieldId); } } return $result; } /** * Get the basic field IDs from the collection_fields table for a specific collection. * * @param int $collectionId The collection ID. * * @return array<int, int> The [titleFieldId, aliasFieldId] * @since 5.5.0 */ protected function getBasicFieldIDs(int $collectionId) { $basicFields = CollectionField::where('collection_id', $collectionId) ->whereIn('type', [FieldTypes::TITLE, FieldTypes::ALIAS]) ->get(['id', 'type']); $basicFields = Arr::make($basicFields); $titleFieldId = $basicFields->find(function ($item) { return $item->type === FieldTypes::TITLE; })->id ?? 0; $aliasFieldId = $basicFields->find(function ($item) { return $item->type === FieldTypes::ALIAS; })->id ?? 0; return [$titleFieldId, $aliasFieldId]; } /** * Check if an alias exists in a Joomla table. * * @param string $table The table name. * @param string $alias The alias to check. * * @return bool * @since 6.1.3 */ protected function aliasExistsInTable(string $table, string $alias) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from($db->quoteName($table)) ->where('alias = ' . $db->quote($alias)); $db->setQuery($query); return (int) $db->loadResult() > 0; } /** * Create a unique alias. * * @param int $aliasId The alias ID. * @param string $title The title. * @param string $alias The alias. * * @return string * @since 5.5.0 */ protected function createUniqueAlias(int $aliasId, string $title, ?string $alias = null, ?int $itemId = null) { if (!empty($alias)) { $alias = Str::safeUrl($alias); } else { $alias = Str::safeUrl($title); } $joomlaTables = ['#__content', '#__tags', '#__menu']; foreach ($joomlaTables as $table) { if ($this->aliasExistsInTable($table, $alias)) { $alias = Str::increment($alias, 'dash'); } } if (!CollectionItemValue::where('field_id', $aliasId)->where('value', $alias)->where('item_id', '!=', $itemId)->first()->isEmpty()) { $alias = Str::increment($alias, 'dash'); } if (str_replace('-', '', $alias) === '') { $alias = Date::format('now', 'Y-m-d-H-i-s'); } return $alias; } /** * Populate the values with an alias. * * @param Arr $values The values. * @param int $collectionId The collection ID. * @param int $itemId The item ID. * * @return Arr * @since 5.5.0 */ protected function populateValuesWithAlias(Arr $values, int $collectionId, ?int $itemId = null) { [$titleFieldId, $aliasFieldId] = $this->getBasicFieldIDs($collectionId); $title = $values->find(function ($value) use ($titleFieldId) { return $value['field_id'] === $titleFieldId; }); $alias = $values->find(function ($value) use ($aliasFieldId) { return $value['field_id'] === $aliasFieldId; }); $title = $title['value'] ?? null; $alias = $alias['value'] ?? null; if (!empty($title)) { $alias = $this->createUniqueAlias($aliasFieldId, $title, $alias, $itemId); } return $values->map(function ($value) use ($aliasFieldId, $alias) { $value['value'] = $value['field_id'] === $aliasFieldId ? $alias : $value['value']; return $value; }); } /** * Handle associations for collection items * * @param int $itemId The item ID * @param int $associatedItemId The associated item ID * @param array $data The item data * * @return void * @since 6.1.0 */ protected function handleAssociations($itemId, $associations, $data) { try { $currentItem = CollectionItem::where('id', $itemId)->first(); if (!$currentItem) { return; } $currentLanguage = $currentItem->language; if ($currentLanguage === '*') { $this->removeAllAssociationsForItem($itemId); return; } $associations = Str::toArray($associations); $allAssociatedItemIds = []; if (is_array($associations)) { foreach ($associations as $language => $itemIds) { if (is_array($itemIds)) { $allAssociatedItemIds = array_merge($allAssociatedItemIds, $itemIds); } } } $this->removeAssociationsForLanguages($itemId, array_keys($associations)); foreach ($allAssociatedItemIds as $associatedId) { $associatedItem = CollectionItem::where('id', $associatedId)->first(); if ($associatedItem && $associatedItem->language === $currentLanguage) { $this->removeAssociationBetweenItems($itemId, $associatedId); } } $filteredAssociatedItemIds = []; foreach ($allAssociatedItemIds as $associatedId) { $associatedItem = CollectionItem::where('id', $associatedId)->first(); if ($associatedItem && $associatedItem->language !== $currentLanguage) { $filteredAssociatedItemIds[] = $associatedId; } } $allItemIds = array_merge([$itemId], $filteredAssociatedItemIds); $allItemIds = array_unique(array_filter($allItemIds)); if (count($allItemIds) <= 1) { return; } $minId = min($allItemIds); $maxId = max($allItemIds); $associationKey = 'sppb_assoc_' . $minId . '_' . $maxId; $existingKey = $this->getAssociationKeyFromItem($itemId); if ($existingKey) { $this->removeAssociation($existingKey); } foreach ($allItemIds as $id) { $this->storeAssociation($id, $associationKey); } } catch (Exception $e) { error_log('Association error: ' . $e->getMessage()); } } /** * Remove association from Joomla's association table * * @param int $itemId The item ID * @param string $associationKey The association key * * @return void * @since 6.1.0 */ protected function removeAssociation($associationKey) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($associationKey)); $db->setQuery($query); $db->execute(); } /** * Get association key from an existing item * * @param int $itemId The item ID * * @return string|null * @since 6.1.0 */ protected function getAssociationKeyFromItem($itemId) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('`key`') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $itemId); $db->setQuery($query); return $db->loadResult(); } /** * Create a new association key * * @param int $itemId1 The first item ID * @param int $itemId2 The second item ID * * @return string * @since 6.1.0 */ protected function createAssociationKey($itemId1, $itemId2) { return 'sppb_assoc_' . min($itemId1, $itemId2) . '_' . max($itemId1, $itemId2); } /** * Store association in Joomla's association table * * @param int $itemId The item ID * @param string $associationKey The association key * * @return void * @since 6.1.0 */ protected function storeAssociation($itemId, $associationKey) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $itemId); $db->setQuery($query); $existing = $db->loadResult(); if ($existing) { $query = $db->getQuery(true) ->update('#__associations') ->set('`key` = ' . $db->quote($associationKey)) ->where('id = ' . (int) $itemId) ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')); } else { $query = $db->getQuery(true) ->insert('#__associations') ->set('id = ' . (int) $itemId) ->set('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->set('`key` = ' . $db->quote($associationKey)); } $db->setQuery($query); $db->execute(); } /** * Remove all associations for a specific item * * @param int $itemId The item ID * * @return void * @since 6.1.0 */ protected function removeAllAssociationsForItem($itemId) { $db = Factory::getDbo(); $associationKey = $this->getAssociationKeyFromItem($itemId); if ($associationKey) { $query = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($associationKey)); $db->setQuery($query); $associatedItemIds = $db->loadColumn() ?? []; $remainingCount = count($associatedItemIds) - 1; $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $itemId); $db->setQuery($query); $db->execute(); if ($remainingCount <= 1) { foreach ($associatedItemIds as $id) { if ($id != $itemId) { $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $id); $db->setQuery($query); $db->execute(); break; } } } } } /** * Remove associations for specific languages * * @param int $itemId The item ID * @param array $languages Array of language display titles * * @return void * @since 6.1.0 */ protected function removeAssociationsForLanguages($itemId, $languages) { $db = Factory::getDbo(); $associationKey = $this->getAssociationKeyFromItem($itemId); if (!$associationKey) { return; } $query = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($associationKey)); $db->setQuery($query); $associatedItemIds = $db->loadColumn() ?? []; $languageMap = []; foreach (Language::where('published', 1)->get(['lang_code', 'title']) as $lang) { $languageMap[$lang->title] = $lang->lang_code; } $itemsToRemove = []; foreach ($associatedItemIds as $associatedId) { if ($associatedId == $itemId) { continue; } $associatedItem = CollectionItem::where('id', $associatedId)->first(); if ($associatedItem) { $langTitle = Language::where('lang_code', $associatedItem->language)->first(); if ($langTitle && in_array($langTitle->title, $languages)) { $itemsToRemove[] = $associatedId; } } } foreach ($itemsToRemove as $id) { $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $id); $db->setQuery($query); $db->execute(); } $remainingQuery = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($associationKey)); $db->setQuery($remainingQuery); $remainingItems = $db->loadColumn() ?? []; if (count($remainingItems) <= 1) { foreach ($remainingItems as $id) { $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $id); $db->setQuery($query); $db->execute(); } } } /** * Remove association between two specific items * * @param int $itemId1 The first item ID * @param int $itemId2 The second item ID * * @return void * @since 6.1.0 */ protected function removeAssociationBetweenItems($itemId1, $itemId2) { $db = Factory::getDbo(); $key1 = $this->getAssociationKeyFromItem($itemId1); $key2 = $this->getAssociationKeyFromItem($itemId2); if ($key1 && $key1 === $key2) { $query = $db->getQuery(true) ->select('id') ->from('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('`key` = ' . $db->quote($key1)); $db->setQuery($query); $associatedItemIds = $db->loadColumn() ?? []; $remainingCount = count($associatedItemIds) - 1; $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $itemId2); $db->setQuery($query); $db->execute(); if ($remainingCount <= 1) { foreach ($associatedItemIds as $id) { if ($id != $itemId2) { $query = $db->getQuery(true) ->delete('#__associations') ->where('context = ' . $db->quote('com_sppagebuilder.collection_item')) ->where('id = ' . (int) $id); $db->setQuery($query); $db->execute(); break; } } } } } public static function fetchItemIdsByCollectionId($collectionId) { $items = CollectionItem::where('collection_id', $collectionId)->get(['id']); return Arr::make($items)->pluck('id')->toArray(); } } PKBA#]���]R<R<Ocomponents/com_sppagebuilder/dynamic-content/Services/CollectionDataService.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Services; use Joomla\CMS\Factory; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Conditions; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Model; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Site\CollectionHelper; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use Throwable; /** * Collection Data Service * This class is responsible for fetching and preparing collection items for displaying in the frontend. * * @since 5.5.0 */ class CollectionDataService { /** * Cache for option field data by field ID. * * @var array * @since 6.2.0 */ protected $optionFieldCache = []; /** * Fetch collection items for the given collection id. * * @param int $collectionId * @return array * @throws Throwable * * @since 5.5.0 */ public function fetchCollectionItems(int $collectionId, string $direction = 'ASC', ?int $sortingColumn = null) { try { $items = $this->getCollectionItemsByCollectionId($collectionId, $direction, $sortingColumn); $items = Arr::make($items); return $this->prepareCollectionItems($items); } catch (Throwable $error) { throw $error; } } /** * Fetch collection item by its id. * * @param int $itemId * @return array|null * * @since 5.5.0 */ public function fetchCollectionItemById(int $itemId) { $item = CollectionItem::where('id', $itemId) ->with([ 'values' => function ($query) { $query = $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type' ]); return $query->leftJoin( CollectionField::class, 'collection_item_value.field_id', 'collection_field.id' ); } ])->first(); if ($item->isEmpty()) { return null; } $this->preloadOptionFieldData([$item]); return $this->prepareCollectionIndividualItem($item); } /** * Fetch collection items by their IDs. * * @param array $itemIds The IDs of the items to fetch. * @param string $direction The direction of the order. * @return array The fetched items. * * @since 5.5.0 */ public function fetchCollectionItemsByItemIds(array $itemIds, string $direction = 'ASC') { $items = CollectionItem::whereIn('id', $itemIds) ->where('published', 1) ->orderBy('ordering', $direction) ->with([ 'values' => function ($query) { $query = $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type' ]); return $query->leftJoin( CollectionField::class, 'collection_item_value.field_id', 'collection_field.id' ); } ])->get(); if (empty($items)) { return []; } $items = Arr::make($items); return $this->prepareCollectionItems($items); } /** * Get collection reference items on demand. * * @param array $item The item to get reference items for. * @param object $filters The filters to apply. * @param string $direction The direction of the order. * @return array The fetched items. * * @since 5.5.0 */ public function getCollectionReferenceItemsOnDemand($item, $filters, string $direction = 'ASC') { if (empty($item) || empty($filters) || empty($filters->conditions)) { return []; } $parentItemId = $item['id']; $conditions = $filters->conditions; $conditions = Arr::make($conditions); $itemIds = $conditions->map(function ( $condition) use ($parentItemId) { $fieldId = $condition->variable; return $this->getReferenceItemIds($parentItemId, $fieldId); })->toArray(); $itemIds = $filters->match === Conditions::MATCH_ALL ? array_intersect(...$itemIds) : array_unique(array_merge(...$itemIds)); if (empty($itemIds)) { return []; } return $this->fetchCollectionItemsByItemIds($itemIds, $direction); } /** * Get the reference item IDs. * * @param int $itemId The item ID. * @param int $fieldId The field ID. * @return array The reference item IDs. * * @since 5.5.0 */ protected function getReferenceItemIds($itemId, $fieldId) { $itemIds = CollectionItemValue::where('field_id', $fieldId) ->where('item_id', $itemId) ->get(['reference_item_id']); if (empty($itemIds)) { return []; } return Arr::make($itemIds)->pluck('reference_item_id')->toArray(); } /** * Prepare item values by handling reference values. * This method visits each value and checks if it has a reference item id. * If it does, it sets the is_reference flag to true and assigns the reference item id to the value. * * @param Arr $values * @return Arr * * @since 5.5.0 */ protected function checkReferenceValues(Arr $values) { return $values->map(function ($value) { $value['is_reference'] = $value['field_type'] === FieldTypes::REFERENCE; $value['is_multi_reference'] = $value['field_type'] === FieldTypes::MULTI_REFERENCE; if (!empty($value['reference_item_id'])) { $value['value'] = [$value['reference_item_id']]; } return $value; }); } /** * Structure collection item values. * This method visits each value and checks if it has a reference item id. * If it does, it sets the is_reference flag to true and assigns the reference item id to the value. * * @param Arr $values * @return Arr * * @since 5.5.0 */ protected function structureCollectionItem(Arr $values) { return $values->reduce(function ($carry, $value) { $key = CollectionItemsService::FIELD_KEY_PREFIX . $value['field_id']; if (!in_array($value['field_type'], [FieldTypes::REFERENCE, FieldTypes::MULTI_REFERENCE])) { $carry[$key] = $value['value']; } return $carry; }, []); } /** * Prepare collection items for displaying in the frontend. * * @param Arr $items * @return array * * @since 5.5.0 */ protected function prepareCollectionItems(Arr $items) { $this->preloadOptionFieldData($items->toArray()); return $items->map(function ($item) { $item = $this->prepareCollectionIndividualItem($item); $item['url'] = CollectionHelper::createRouteUrl($item); return $item; })->toArray(); } /** * Get the collection option fields data. * * @param int $fieldId The field ID. * @return array The collection option fields data. * * @since 5.5.0 */ protected function getCollectionOptionFieldsData(int $fieldId) { if (isset($this->optionFieldCache[$fieldId])) { return $this->optionFieldCache[$fieldId]; } $field = CollectionField::where('id', $fieldId)->where('type', FieldTypes::OPTION)->first(['options']); if ($field->isEmpty()) { $this->optionFieldCache[$fieldId] = []; return []; } if (empty($field->options)) { $this->optionFieldCache[$fieldId] = []; return []; } $options = Str::toArray($field->options); if (empty($options)) { $this->optionFieldCache[$fieldId] = []; return []; } $optionData = Arr::make($options)->reduce(function ($carry, $option) { $carry[$option['value']] = $option['label']; return $carry; }, [])->toArray(); $this->optionFieldCache[$fieldId] = $optionData; return $optionData; } /** * Pre-load option field data for all option fields to optimize batch processing. * This method analyzes all items and pre-fetches option data for all option fields. * * @param array $items The collection items. * * @return void * @since 6.2.0 */ protected function preloadOptionFieldData(array $items) { $optionFieldIds = []; foreach ($items as $item) { if (!empty($item->values)) { foreach ($item->values as $value) { if ($value->field_type === FieldTypes::OPTION) { $optionFieldIds[] = $value->field_id; } } } } $optionFieldIds = array_unique($optionFieldIds); if (!empty($optionFieldIds)) { $optionFields = CollectionField::whereIn('id', $optionFieldIds) ->where('type', FieldTypes::OPTION) ->get(['id', 'options']); foreach ($optionFields as $field) { if (!empty($field->options)) { $options = Str::toArray($field->options); if (!empty($options)) { $optionData = Arr::make($options)->reduce(function ($carry, $option) { $carry[$option['value']] = $option['label']; return $carry; }, [])->toArray(); $this->optionFieldCache[$field->id] = $optionData; } else { $this->optionFieldCache[$field->id] = []; } } else { $this->optionFieldCache[$field->id] = []; } } } } /** * Clear the option field cache. * * @return void * @since 6.2.0 */ public function clearOptionFieldCache() { $this->optionFieldCache = []; } /** * Prepare a single collection item for displaying in the frontend. * * @param mixed $item * @return array * * @since 5.5.0 */ protected function prepareCollectionIndividualItem($item) { if ($item instanceof Model) { $item = $item->toArray(); } $values = Arr::make($item['values']); $item['option_store'] ??= []; $item['reference_store'] ??= []; $item['multi_reference_store'] ??= []; foreach ($values as $value) { if ($value['field_type'] === FieldTypes::OPTION) { $item['option_store'] = array_merge($item['option_store'], $this->getCollectionOptionFieldsData($value['field_id'])); } elseif($value['field_type'] === FieldTypes::REFERENCE){ $item['reference_store'] = array_merge($item['reference_store'], ['field_' . $value['field_id'] => $value['reference_item_id']]); } elseif($value['field_type'] === FieldTypes::MULTI_REFERENCE){ $fieldKey = 'field_' . $value['field_id']; $item['multi_reference_store'][$fieldKey] ??= []; $item['multi_reference_store'][$fieldKey][] = $value['reference_item_id']; } } $values = $this->structureCollectionItem($this->checkReferenceValues($values))->toArray(); unset($item['values']); return array_merge($item, $values); } /** * Get collection items by collection id. * * @param int $collectionId * @return array * * @since 5.5.0 */ protected function getCollectionItemsByCollectionId(int $collectionId, string $direction = 'ASC', ?int $sortingColumn = null) { $user = Factory::getUser(); $userAccessLevels = $user->getAuthorisedViewLevels(); $langTag = Factory::getLanguage()->getTag(); $direction = strtoupper($direction) === 'DESC' ? 'DESC' : 'ASC'; $sortingColumnType = null; if($sortingColumn){ $sortingColumnField = CollectionField::where('id', $sortingColumn)->first(['type']); $sortingColumnType = $sortingColumnField->isEmpty() ? null : $sortingColumnField->type; } $query = CollectionItem::where('collection_id', $collectionId) ->where('published', 1) ->whereIn('language', [$langTag, '*']) ->whereIn('access', $userAccessLevels); if (!empty($sortingColumn)) { $query = $query->join( CollectionItemValue::class, 'collection_item.id', 'collection_item_value.item_id' ) ->where('collection_item_value.field_id', $sortingColumn); if ($sortingColumnType === FieldTypes::NUMBER) { $query = $query->rawQuery(function ($query) use ($direction) { $query->getQuery()->order('CAST(collection_item_value.value AS DECIMAL(20,10)) ' . $direction); return $query; }); } else { $query = $query->orderBy('collection_item_value.value', $direction); } } else { $query = $query->orderBy('ordering', $direction); } $items = $query->with([ 'values' => function ($query) { $query = $query->select([ 'field_name' => 'collection_field.name', 'field_type' => 'collection_field.type' ]); return $query->leftJoin( CollectionField::class, 'collection_item_value.field_id', 'collection_field.id' ); } ])->get(); return $items; } public static function getItemTitleById(int $itemId, int $collectionId) { $titleFieldId = CollectionField::where('collection_id', $collectionId) ->where('type', FieldTypes::TITLE) ->first(['id']); if($titleFieldId){ $itemTitle = CollectionItemValue::where('item_id', $itemId) ->where('field_id', $titleFieldId->id) ->first(['value']); if($itemTitle){ return $itemTitle->value; } } return ''; } } PKBA#]0>�>jBjBLcomponents/com_sppagebuilder/dynamic-content/Services/CollectionsService.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Services; defined('_JEXEC') or die; use Exception; use Joomla\CMS\Factory; use Joomla\String\StringHelper; use Joomla\CMS\Language\Text; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Operators; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Status; use JoomShaper\SPPageBuilder\DynamicContent\Exceptions\ValidatorException; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionImports; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; use JoomShaper\SPPageBuilder\DynamicContent\QueryBuilder; use JoomShaper\SPPageBuilder\DynamicContent\Site\CollectionHelper; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Date; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use SppagebuilderHelperArticles; use Throwable; class CollectionsService { use Validator; /** * Available number formats * * @var array * @since 5.5.0 */ public const NUMBER_FORMATS = ['any', 'integer', 'decimal']; /** * Create the collection record * * @param array $data The data * * @return int * @since 5.5.0 */ public function createRecord(array $data) { $canCreateCollection = $this->canCreateCollection(); if(!$canCreateCollection) { throw new Exception('Unauthorized', Response::HTTP_UNAUTHORIZED); } $this->validateCollectionData($data); if ($this->hasErrors()) { throw new ValidatorException($this->getErrors()); } $fields = Str::toArray($data['fields']); unset($data['fields']); $fields = Arr::make($fields); QueryBuilder::beginTransaction(); $data['title'] = $this->createUniqueTitle($data['title']); $data['alias'] = $this->createUniqueAlias($data['title'], $data['alias']); try { $collectionId = Collection::create([ 'title' => $data['title'], 'alias' => $data['alias'], 'published' => 1, 'access' => 1, 'language' => '*', 'created' => Date::sqlSafeDate(), 'modified' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id ]); if (!$collectionId) { throw new Exception('Failed to create collection', Response::HTTP_INTERNAL_SERVER_ERROR); } $this->createCollectionFieldsSchema($fields, $collectionId); QueryBuilder::commit(); return $collectionId; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } /** * Update the collection record * * @param array $data The data * * @return bool * @since 5.5.0 */ public function updateRecord(array $data) { $canEditCollection = $this->canEditCollection($data['id']); if(!$canEditCollection) { throw new Exception('Unauthorized', Response::HTTP_UNAUTHORIZED); } $this->validateCollectionData($data); if ($this->hasErrors()) { throw new ValidatorException($this->getErrors(), Response::HTTP_BAD_REQUEST); } $fields = Str::toArray($data['fields']); unset($data['fields']); $fields = Arr::make($fields); $collectionId = $data['id']; QueryBuilder::beginTransaction(); $collection = Collection::where('id', $collectionId)->first(); if ($collection->isEmpty()) { throw new Exception('Collection not found', Response::HTTP_NOT_FOUND); } // If no alias is provided, that means we are planning to create a alias from the title // If the alias is already exists, then we will use the existing alias // If the alias is not exists, then we will create a new one if ($collection->alias !== $data['alias']) { if (empty($data['alias'])) { $data['alias'] = $collection->alias ?: $this->createUniqueAlias($data['title'], $data['alias']); } } // If there is no collection alias, and we are not passing any alias // Then we will create a new alias from the title if (empty($data['alias']) && empty($collection->alias)) { $data['alias'] = $this->createUniqueAlias($data['title'], $data['alias']); } try { $data = [ 'id' => $collectionId, 'title' => $data['title'], 'alias' => $data['alias'], 'published' => $data['published'] ?? 1, 'access' => $data['access'] ?? 1, 'language' => $data['language'] ?? '*', 'modified' => Date::sqlSafeDate(), 'modified_by' => getCurrentLoggedInUser()->id, ]; Collection::where('id', $collectionId)->update($data); $this->syncCollectionFields($collectionId, $fields); QueryBuilder::commit(); return true; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } public function fetchAllCollectionFields() { try { $fields = CollectionField::where('reference_collection_id', Operators::IS_NOT_NULL) ->orderBy('ordering', 'ASC') ->get(['collection_id', 'reference_collection_id']); } catch (Throwable $error) { throw $error; } return $fields; } /** * Fetch all the collections * * @return array * @since 5.5.0 */ public function fetchAll($inludeArticleSources = false) { $primaryFieldValues = $this->getPrimaryFieldsItemValues(); try { $collections = Collection::where('published', 1) ->orderBy('ordering', 'ASC') ->get(['id', 'title', 'alias']); } catch (Throwable $error) { throw $error; } if ($inludeArticleSources) { $collections = $this->injectArticleSource($collections); $collections = $this->injectTagsSource($collections); } if (empty($collections)) { return []; } foreach ($collections as $collection) { $collection->items = $primaryFieldValues[$collection->id] ?? []; $collection->total_items = CollectionItem::where('collection_id', $collection->id)->where('published', Status::PUBLISHED)->count(); $collectionEditPermission = $this->canEditCollection($collection->id); $collectionDeletePermission = $this->canDeleteCollection($collection->id); $collection->permissions = [ 'edit' => $collectionEditPermission, 'delete' => $collectionDeletePermission, ]; } return $collections; } private function canCreateCollection() { return Factory::getUser()->authorise('core.create.collection', 'com_sppagebuilder'); } private function canEditCollection($id) { return Factory::getUser()->authorise('core.edit', 'com_sppagebuilder.collection.' . $id); } private function canDeleteCollection($id) { return Factory::getUser()->authorise('core.delete', 'com_sppagebuilder.collection.' . $id); } /** * Inject source into collections list * * @param array $collections The collections array * * @return array The collections array with source injected * @since 6.0.0 */ protected function injectArticleSource($collections) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $articlesCount = \SppagebuilderHelperArticles::getArticlesCount(); $articles = \SppagebuilderHelperArticles::getArticles($articlesCount); $articleSource = new \stdClass; $articleSource->id = CollectionIds::ARTICLES_COLLECTION_ID; $articleSource->title = Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'); $articleSource->alias = 'articles'; if (empty($articles)) { $articleSource->total_items = 0; $articleSource->items = []; array_unshift($collections, $articleSource); return $collections; } $articles = array_map(function ($article) { $article->collection_id = CollectionIds::ARTICLES_COLLECTION_ID; return (array) $article; }, $articles); $articleSource->total_items = $articlesCount; $articleSource->items = array_map(function($article) { return [ 'value' => $article['id'], 'label' => $article['title'] ]; }, array_slice($articles, 0, 10)); array_unshift($collections, $articleSource); return $collections; } /** * Inject source into collections list * * @param array $collections The collections array * * @return array The collections array with source injected * @since 6.0.0 */ protected function injectTagsSource($collections) { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('id, title, alias') ->from('#__tags') ->where('published = 1') ->order('title ASC'); $db->setQuery($query); $tags = $db->loadObjectList(); $tagsSource = new \stdClass; $tagsSource->id = CollectionIds::TAGS_COLLECTION_ID; $tagsSource->title = Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS'); $tagsSource->alias = 'tags'; if (empty($tags)) { return $collections; } $tags = array_map(function ($tag) { $tag->collection_id = CollectionIds::TAGS_COLLECTION_ID; return (array) $tag; }, $tags); $tagsSource->total_items = count($tags); $tagsSource->items = array_map(function($tag) { return [ 'value' => $tag['id'], 'label' => $tag['title'] ]; }, array_slice($tags, 0, 10)); array_unshift($collections, $tagsSource); return $collections; } /** * Get the collection schema. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function fetchCollectionSchema(int $collectionId) { $fields = CollectionField::where('collection_id', $collectionId) ->orderBy('ordering', 'ASC') ->get(CollectionField::COMMON_COLUMNS); if (empty($fields)) { return []; } $fields = Arr::make($fields)->map(function ($field) { $field->options = Str::toArray($field->options); $field->file_extensions = Str::toArray($field->file_extensions); $field->default_value = Str::process($field->default_value); return $field; })->toArray(); return $fields; } /** * Fetch total fields for a collection including reference collections. * * @param int $collectionId * @param array $visited Prevents infinite loops in case of circular references * @return array * @since 6.2.0 */ public function fetchTotalFieldsByCollection(int $collectionId, array &$visited = []) { if (in_array($collectionId, $visited)) { return []; } $visited[] = $collectionId; $db = Factory::getDbo(); $query = $db->getQuery(true) ->select(['id', 'collection_id', 'name', 'type', 'reference_collection_id']) ->from('#__sppagebuilder_collection_fields') ->where('collection_id = ' . (int) $collectionId) ->order('ordering ASC'); $db->setQuery($query); $fields = $db->loadObjectList(); $fields = Arr::make($fields)->map(function ($field) { return [ 'id' => $field->id, 'name' => $field->name, 'type' => $field->type, 'collection_id' => $field->collection_id, 'reference_collection_id' => $field->reference_collection_id, ]; })->toArray(); $orderedFields = []; foreach ($fields as $field) { $orderedFields[] = $field; if (empty($field['reference_collection_id'])){ continue; } $referencedFields = $this->fetchTotalFieldsByCollection((int)$field['reference_collection_id'], $visited); foreach ($referencedFields as $refField) { $orderedFields[] = $refField; } } return $orderedFields; } /** * Fetch the collection by ID. * * @param int $collectionId The collection ID. * * @return Collection * @since 5.7.0 */ public function fetchCollection(int $collectionId) { $collection = Collection::where('id', $collectionId)->first(['title', 'alias']); if ($collection->isEmpty()) { throw new Exception('Collection not found', Response::HTTP_NOT_FOUND); } return $collection; } /** * Duplicate an existing collection along with the fields and items. * * @param int $collectionId The collection ID. * * @return int * @since 5.5.0 */ public function duplicateCollection(int $collectionId) { $canCreateCollection = $this->canCreateCollection(); if(!$canCreateCollection) { throw new Exception('Unauthorized', Response::HTTP_UNAUTHORIZED); } $collection = Collection::where('id', $collectionId)->with(['fields', 'items'])->first(); if ($collection->isEmpty()) { throw new Exception('Collection not found', Response::HTTP_NOT_FOUND); } QueryBuilder::beginTransaction(); $newTitle = $this->createUniqueTitle($collection->title); $newAlias = $this->createUniqueAlias($newTitle, $collection->alias); $newCollectionData = [ 'title' => $newTitle, 'alias' => $newAlias, 'published' => 1, 'access' => $collection->access ?? 1, 'language' => $collection->language ?? '*', 'created' => Date::sqlSafeDate(), 'modified' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; try { $newCollectionId = Collection::create($newCollectionData); $fieldsMap = $this->duplicateCollectionFields($collection->fields, $newCollectionId); $itemsMap = $this->duplicateCollectionItems($collection->items, $newCollectionId); $this->duplicateCollectionItemValues($itemsMap, $fieldsMap); QueryBuilder::commit(); return $newCollectionId; } catch (Throwable $error) { QueryBuilder::rollback(); throw $error; } } /** * Fetch the collection field structure. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function fetchCollectionAttributes(int $collectionId, array $allowedTypes = [], int $level = 1, ?string $parentPath = null) { $attributes = []; $fields = Collection::where('id', $collectionId) ->with(['fields' => function ($query) { return $query->orderBy('ordering', 'ASC'); }]) ->first(); if (empty($fields)) { return []; } $attributes = [ 'id' => 0, 'name' => $fields->title, 'type' => FieldTypes::REFERENCE, 'fields' => [], 'level' => $level, 'selector' => null ]; foreach ($fields->fields as $field) { if (!in_array($field->type, $allowedTypes)) { continue; } $path = $parentPath ? $parentPath . '.' . $field->id : (string) $field->id; $structuredField = [ 'id' => $field->id, 'name' => $field->name, 'fullname' => $fields->title . ' > ' . $field->name, 'type' => $field->type, 'fields' => [], 'level' => $level + 1, 'path' => $path ]; if (in_array($field->type, [FieldTypes::REFERENCE, FieldTypes::MULTI_REFERENCE], true) && !CollectionHelper::hasCircularReference($field->id)) { $structuredField['fields'] = !empty($field->reference_collection_id) ? $this->fetchCollectionAttributes( $field->reference_collection_id, $allowedTypes, $level + 1, $path )['fields'] : []; // If no allowed types are provided, then we don't need to show the reference fields if (empty($structuredField['fields'])) { continue; } } $attributes['fields'][] = $structuredField; } if (in_array('created', $allowedTypes)) { $createdFieldPath = $parentPath ? $parentPath . '.created' : 'created'; $attributes['fields'][] = [ 'id' => Str::uuid(), 'name' => 'Creation Date', 'fullname' => $fields->title . ' > Creation Date', 'type' => 'date-time', 'fields' => [], 'level' => $level + 1, 'path' => $createdFieldPath ]; } return $attributes; } /** * Fetch the collection fields. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ public function fetchCollectionFields(int $collectionId) { $collection = Collection::where('id', $collectionId) ->with(['fields' => function ($query) { return $query->orderBy('ordering', 'ASC'); }]) ->first(); if (empty($collection)) { return []; } $fields = Arr::make($collection->fields ?? []); $fields = $fields->map(function ($field) { return [ 'id' => $field->id, 'name' => $field->name, 'type' => $field->type, 'path' => $field->id, 'reference_items' => $this->getReferenceItems($field->reference_collection_id), 'reference_collection_name' => $this->getReferenceCollectionName($field->reference_collection_id), 'option_field_values' => $field->type === FieldTypes::OPTION ? $this->getOptionItems($field->id) : [], ]; }); $fields->prepend([ 'id' => 0, 'name' => $collection->title, 'type' => 'self', 'path' => 0, 'reference_items' => $this->getReferenceItems($collectionId), 'reference_collection_name' => [[ 'id' => $collectionId, 'title' => $collection->title, ]], 'option_field_values' => [] ]); return $fields->toArray(); } /** * Fetch article fields * * @return array * @since 6.0.0 */ public function fetchArticleFields() { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $articles = \SppagebuilderHelperArticles::getArticles(100); $articleItems = array_map(function ($article) { return [ 'id' => $article->id, 'title' => $article->title ]; }, $articles); $fields = [ [ 'id' => -3, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'type' => 'text', 'path' => "title", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -4, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_INTRO_TEXT'), 'type' => 'rich-text', 'path' => "introtext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -5, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FULL_TEXT'), 'type' => 'rich-text', 'path' => "fulltext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -6, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FEATURED_IMAGE'), 'type' => 'image', 'path' => "featured_image", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -11, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO'), 'type' => 'image', 'path' => "image_intro", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -12, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO_CAPTION'), 'type' => 'text', 'path' => "image_intro_caption", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -13, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT'), 'type' => 'image', 'path' => "image_fulltext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -14, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT_CAPTION'), 'type' => 'text', 'path' => "image_fulltext_caption", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -15, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ARTICLE_LINK'), 'type' => 'link', 'path' => "link", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -16, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CREATED_DATE'), 'type' => 'date-time', 'path' => 'created', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -17, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR'), 'type' => 'text', 'path' => 'username', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -20, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR_IMAGE'), 'type' => 'image', 'path' => 'profile_image', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -18, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CATEGORY'), 'type' => 'text', 'path' => 'category', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -19, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_HITS'), 'type' => 'number', 'path' => 'hits', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -21, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'type' => 'text', 'path' => "layout", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], ]; foreach (\SppagebuilderHelperArticles::getPublishedArticleCustomFieldRows() as $customFieldRow) { $dynamicItemType = \SppagebuilderHelperArticles::mapComContentCustomFieldTypeToDynamic($customFieldRow->type ?? ''); if ($dynamicItemType === null) { continue; } $fields[] = [ 'id' => (int) $customFieldRow->id, 'name' => $customFieldRow->title, 'type' => $dynamicItemType, 'path' => $customFieldRow->name, 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ]; } $fields = Arr::make($fields); $fields->prepend([ 'id' => 0, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'), 'type' => 'self', 'path' => 0, 'reference_items' => $articleItems, 'reference_collection_name' => [ [ 'id' => CollectionIds::ARTICLES_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'), ] ], 'option_field_values' => [] ]); return $fields->toArray(); } public function fetchArticleFieldsForSeo() { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $articles = \SppagebuilderHelperArticles::getArticles(100); $articleItems = array_map(function ($article) { return [ 'id' => $article->id, 'title' => $article->title ]; }, $articles); $fields = [ [ 'id' => -3, 'name' => "Title", 'type' => 'text', 'path' => "title", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -4, 'name' => "Intro Text", 'type' => 'rich-text', 'path' => "introtext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -5, 'name' => "Full Text", 'type' => 'rich-text', 'path' => "fulltext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -6, 'name' => "Featured Image", 'type' => 'image', 'path' => "featured_image", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -11, 'name' => "Intro Image", 'type' => 'image', 'path' => "image_intro", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -12, 'name' => "Intro Image Caption", 'type' => 'text', 'path' => "image_intro_caption", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -13, 'name' => "Full Image", 'type' => 'image', 'path' => "image_fulltext", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -14, 'name' => "Full Image Caption", 'type' => 'text', 'path' => "image_fulltext_caption", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -15, 'name' => "Article Link", 'type' => 'link', 'path' => "link", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -16, 'name' => "Created Date", 'type' => 'date-time', 'path' => 'created', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -17, 'name' => "Author", 'type' => 'text', 'path' => 'username', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -18, 'name' => "Category", 'type' => 'text', 'path' => 'category', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -19, 'name' => "Hits", 'type' => 'number', 'path' => 'hits', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -21, 'name' => "SPPB Layout", 'type' => 'text', 'path' => "layout", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], ]; foreach (\SppagebuilderHelperArticles::getPublishedArticleCustomFieldRows() as $customFieldRow) { $dynamicItemType = \SppagebuilderHelperArticles::mapComContentCustomFieldTypeToDynamic($customFieldRow->type ?? ''); if ($dynamicItemType === null) { continue; } $fields[] = [ 'id' => (int) $customFieldRow->id, 'name' => $customFieldRow->title, 'type' => $dynamicItemType, 'path' => $customFieldRow->name, 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ]; } $fields = Arr::make($fields); $fields->prepend([ 'id' => 0, 'name' => "Articles", 'type' => 'self', 'path' => 0, 'reference_items' => $articleItems, 'reference_collection_name' => [ [ 'id' => CollectionIds::ARTICLES_COLLECTION_ID, 'title' => "Articles", ] ], 'option_field_values' => [] ]); return $fields->toArray(); } /** * Fetch article collection attributes * * @param array $allowedTypes The allowed field types * @return array The article collection attributes * @since 6.0.0 */ public function fetchArticleAttributes($allowedTypes = []) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $fields = [ [ 'id' => -3, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'type' => 'text', 'level' => 2, 'path' => "title", 'fields' => [] ], [ 'id' => -4, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_INTRO_TEXT'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_INTRO_TEXT'), 'type' => 'rich-text', 'level' => 2, 'path' => "introtext", 'fields' => [] ], [ 'id' => -5, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FULL_TEXT'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FULL_TEXT'), 'type' => 'rich-text', 'level' => 2, 'path' => "fulltext", 'fields' => [] ], [ 'id' => -6, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FEATURED_IMAGE'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_FEATURED_IMAGE'), 'type' => 'image', 'level' => 2, 'path' => "featured_image", 'fields' => [] ], [ 'id' => -11, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO'), 'type' => 'image', 'level' => 2, 'path' => "image_intro", 'fields' => [] ], [ 'id' => -12, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO_CAPTION'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_INTRO_CAPTION'), 'type' => 'text', 'level' => 2, 'path' => "image_intro_caption", 'fields' => [] ], [ 'id' => -13, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT'), 'type' => 'image', 'level' => 2, 'path' => "image_fulltext", 'fields' => [] ], [ 'id' => -14, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT_CAPTION'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_IMAGE_FULLTEXT_CAPTION'), 'type' => 'text', 'level' => 2, 'path' => "image_fulltext_caption", 'fields' => [] ], [ 'id' => -15, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ARTICLE_LINK'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ARTICLE_LINK'), 'type' => 'link', 'level' => 2, 'path' => "link", 'fields' => [] ], [ 'id' => -16, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CREATED_DATE'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CREATED_DATE'), 'type' => 'date-time', 'level' => 2, 'path' => "created", 'fields' => [] ], [ 'id' => -17, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR'), 'type' => 'text', 'level' => 2, 'path' => "username", 'fields' => [] ], [ 'id' => -20, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR_IMAGE'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_AUTHOR_IMAGE'), 'type' => 'image', 'level' => 2, 'path' => "profile_image", 'fields' => [] ], [ 'id' => -18, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CATEGORY'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_CATEGORY'), 'type' => 'text', 'level' => 2, 'path' => "category", 'fields' => [] ], [ 'id' => -19, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_HITS'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_HITS'), 'type' => 'number', 'level' => 2, 'path' => "hits", 'fields' => [] ], [ 'id' => -21, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'type' => 'text', 'level' => 2, 'path' => "layout", 'fields' => [] ], ]; $articlesGroupTitle = Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'); foreach (\SppagebuilderHelperArticles::getPublishedArticleCustomFieldRows() as $customFieldRow) { $dynamicItemType = \SppagebuilderHelperArticles::mapComContentCustomFieldTypeToDynamic($customFieldRow->type ?? ''); if ($dynamicItemType === null) { continue; } $fields[] = [ 'id' => (int) $customFieldRow->id, 'name' => $customFieldRow->title, 'fullname' => $articlesGroupTitle . ' > ' . $customFieldRow->title, 'type' => $dynamicItemType, 'level' => 2, 'path' => $customFieldRow->name, 'fields' => [] ]; } // Filter fields based on allowed types $fields = array_filter($fields, function ($field) use ($allowedTypes) { return empty($allowedTypes) || in_array($field['type'], $allowedTypes); }); return [ 'id' => 0, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'), 'type' => 'reference', 'level' => 1, 'fields' => array_values($fields), 'selector' => null ]; } /** * Fetch tags fields * * @return array * @since 6.0.0 */ public function fetchTagsFields() { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('id, title, alias') ->from('#__tags') ->where('published = 1') ->order('title ASC'); $db->setQuery($query, 0, 100); $tags = $db->loadObjectList(); $tagItems = array_map(function ($tag) { return [ 'id' => $tag->id, 'title' => $tag->title ]; }, $tags); $fields = [ [ 'id' => -13, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'type' => 'text', 'path' => "title", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -14, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ALIAS'), 'type' => 'text', 'path' => "alias", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -15, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_DESCRIPTION'), 'type' => 'rich-text', 'path' => "description", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -16, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_PUBLISHED'), 'type' => 'number', 'path' => "published", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -17, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_HITS'), 'type' => 'number', 'path' => 'hits', 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], [ 'id' => -21, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'type' => 'text', 'path' => "layout", 'reference_items' => [], 'reference_collection_name' => [], 'option_field_values' => [] ], ]; $fields = Arr::make($fields); $fields->prepend([ 'id' => 0, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS'), 'type' => 'self', 'path' => 0, 'reference_items' => $tagItems, 'reference_collection_name' => [ [ 'id' => CollectionIds::TAGS_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS'), ] ], 'option_field_values' => [] ]); return $fields->toArray(); } /** * Fetch tags collection attributes * * @param array $allowedTypes The allowed field types * @return array The tags collection attributes * @since 6.0.0 */ public function fetchTagsAttributes($allowedTypes = []) { // Get real tags from database to determine available fields $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__tags') ->where('published = 1') ->order('title ASC'); $db->setQuery($query, 0, 1); $sampleTag = $db->loadObject(); $fields = []; if ($sampleTag) { $availableFields = [ 'title' => ['id' => -13, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'type' => 'text'], 'alias' => ['id' => -14, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ALIAS'), 'type' => 'text'] ]; foreach ($availableFields as $fieldKey => $fieldData) { if (property_exists($sampleTag, $fieldKey)) { $fields[] = [ 'id' => $fieldData['id'], 'name' => $fieldData['name'], 'fullname' => 'Tags > ' . $fieldData['name'], 'type' => $fieldData['type'], 'level' => 2, 'path' => $fieldKey, 'fields' => [] ]; } } } if (empty($fields)) { $fields = [ [ 'id' => -13, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_TITLE'), 'type' => 'text', 'level' => 2, 'path' => "title", 'fields' => [] ], [ 'id' => -14, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ALIAS'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_ALIAS'), 'type' => 'text', 'level' => 2, 'path' => "alias", 'fields' => [] ], [ 'id' => -15, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_DESCRIPTION'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_DESCRIPTION'), 'type' => 'rich-text', 'level' => 2, 'path' => "description", 'fields' => [] ], [ 'id' => -21, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'fullname' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS') . ' > ' . Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_FIELD_LAYOUT'), 'type' => 'text', 'level' => 2, 'path' => "layout", 'fields' => [] ], ]; } $fields = array_filter($fields, function ($field) use ($allowedTypes) { return empty($allowedTypes) || in_array($field['type'], $allowedTypes); }); return [ 'id' => 0, 'name' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_TAGS'), 'type' => 'reference', 'level' => 1, 'fields' => array_values($fields), 'selector' => null ]; } /** * Fetch article items for admin interface * * @param array $payload The payload for filtering and pagination * @return array Paginated article results * @since 6.0.0 */ public function fetchArticleItems(array $payload) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $currentPage = $payload['current_page'] ?? 1; $perPage = $payload['per_page'] ?? 20; $search = $payload['search'] ?? ''; $status = $payload['status'] ?? '*'; $articlesCount = \SppagebuilderHelperArticles::getArticlesCount(); $articles = \SppagebuilderHelperArticles::getArticles($articlesCount); if (!empty($search)) { $articles = array_filter($articles, function($article) use ($search) { return stripos($article->title, $search) !== false || stripos($article->introtext, $search) !== false; }); } if ($status !== '*') { $articles = array_filter($articles, function($article) use ($status) { return $article->published == $status; }); } $totalItems = $articlesCount; $totalPages = ceil($totalItems / $perPage); $offset = ($currentPage - 1) * $perPage; $paginatedArticles = array_slice($articles, $offset, $perPage); $results = array_map(function($article) { return [ 'id' => $article->id, 'title' => $article->title, 'published' => $article->published, 'created' => $article->created, 'created_by' => $article->created_by, 'username' => $article->username ?? '', 'category' => $article->category ?? '', 'hits' => $article->hits, 'language' => $article->language, 'access' => $article->access, 'collection_id' => CollectionIds::ARTICLES_COLLECTION_ID ]; }, $paginatedArticles); return [ 'results' => $results, 'totalItems' => $totalItems, 'totalPages' => $totalPages, 'perPage' => $perPage, 'currentPage' => $currentPage, ]; } /** * Fetch tags items for admin interface * * @param array $payload The payload for filtering and pagination * @return array Paginated tags results * @since 6.0.0 */ public function fetchTagsItems(array $payload) { $currentPage = $payload['current_page'] ?? 1; $perPage = $payload['per_page'] ?? 20; $search = $payload['search'] ?? ''; $status = $payload['status'] ?? '*'; $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__tags') ->where('published = 1') ->order('title ASC'); $db->setQuery($query); $tags = $db->loadObjectList(); if (!empty($search)) { $tags = array_filter($tags, function($tag) use ($search) { return stripos($tag->title, $search) !== false || stripos($tag->description, $search) !== false; }); } if ($status !== '*') { $tags = array_filter($tags, function($tag) use ($status) { return $tag->published == $status; }); } $totalItems = count($tags); $totalPages = ceil($totalItems / $perPage); $offset = ($currentPage - 1) * $perPage; $paginatedTags = array_slice($tags, $offset, $perPage); $results = array_map(function($tag) { return [ 'id' => $tag->id, 'title' => $tag->title, 'published' => $tag->published, 'created' => $tag->created_time, 'created_by' => $tag->created_user_id, 'alias' => $tag->alias, 'description' => $tag->description, 'hits' => $tag->hits, 'language' => $tag->language, 'access' => $tag->access, 'collection_id' => CollectionIds::TAGS_COLLECTION_ID ]; }, $paginatedTags); return [ 'results' => $results, 'totalItems' => $totalItems, 'totalPages' => $totalPages, 'perPage' => $perPage, 'currentPage' => $currentPage, ]; } /** * Check before deleting the collection. * * @param int $collectionId The collection ID. * @return bool True if the collection can be deleted, false otherwise. * * @since 5.5.0 */ public function checkBeforeDeleting(int $collectionId) { if ($this->isCollectionHasItems($collectionId)) { throw new Exception('Collection has items', Response::HTTP_BAD_REQUEST); } if ($this->isCollectionUsedInPage($collectionId)) { throw new Exception('Collection is used in page', Response::HTTP_BAD_REQUEST); } return true; } /** * Check if the collection has items. * * @param int $collectionId The collection ID. * @return bool True if the collection has items, false otherwise. * * @since 5.5.0 */ public function isCollectionHasItems(int $collectionId) { $items = CollectionItem::where('collection_id', $collectionId)->count(); return $items > 0; } /** * Check if the collection is used in a page. * * @param int $collectionId The collection ID. * @return bool True if the collection is used in a page, false otherwise. * * @since 5.5.0 */ public function isCollectionUsedInPage(int $collectionId) { $pages = Page::where('extension', 'com_sppagebuilder') ->whereIn( 'extension_view', [Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL] ) ->where('view_id', $collectionId) ->count(); return $pages > 0; } /** * Check if the collection is reference to other collection. * * @param int $collectionId The collection ID. * @return bool True if the collection is reference to other collection, false otherwise. * * @since 5.5.0 */ public function isCollectionReferenceToOtherCollection(int $collectionId) { $fields = CollectionField::where('reference_collection_id', $collectionId)->count(); return $fields > 0; } /** * Get the option type field values. * * @param int $fieldId The field ID. * * @return array * @since 5.5.0 */ protected function getOptionItems($fieldId) { $options = CollectionField::where('id', $fieldId)->first(['options']); if ($options->isEmpty()) { return []; } $options = Str::toArray($options->options); return $options; } /** * Get the reference collection name. * * @param int $collectionId The collection ID. * * @return string * @since 5.5.0 */ protected function getReferenceCollectionName($collectionId) { if (empty($collectionId)) { return null; } $collection = Collection::where('id', $collectionId)->first(); $title = $collection->title ?? null; if (empty($title)) { return []; } return [[ 'id' => $collectionId, 'title' => $title, ]]; } /** * Get the reference items. * * @param int $collectionId The collection ID. * * @return array * @since 5.5.0 */ protected function getReferenceItems($collectionId) { if (empty($collectionId)) { return []; } $service = new CollectionItemsService(); $items = $service->fetchItemsByCollectionId($collectionId); $primaryFieldId = $this->getPrimaryFieldForReferenceCollection($collectionId); if (empty($items) || empty($primaryFieldId)) { return []; } $primaryField = CollectionItemsService::createFieldKey($primaryFieldId); $items = Arr::make($items); $items = $items->map(function ($item) use ($primaryField) { return [ 'id' => $item['id'], 'title' => $item[$primaryField], ]; })->toArray(); return $items; } /** * Get the primary field for the reference collection. * * @param int $collectionId The collection ID. * * @return int|null The primary field ID or null if not found. * @since 5.5.0 */ protected function getPrimaryFieldForReferenceCollection(int $collectionId) { $field = CollectionField::where('collection_id', $collectionId) ->where('type', CollectionItemsService::PRIMARY_FIELD_TYPE) ->first(); return $field->id ?? null; } /** * Get the item values for the primary fields * * @return array * @since 5.5.0 */ protected function getPrimaryFieldsItemValues() { try { $fields = CollectionField::where('type', CollectionItemsService::PRIMARY_FIELD_TYPE) ->leftJoin(CollectionItemValue::class, 'collection_item_value.field_id', 'collection_field.id') ->leftJoin(CollectionItem::class, 'collection_item_value.item_id', 'collection_item.id') ->orderBy( 'collection_item.ordering', 'ASC') ->where('collection_item.published', Status::PUBLISHED) ->get(['collection_field.id', 'collection_field.collection_id', 'collection_item_value.value', 'collection_item_value.item_id']); $primaryFieldsMap = []; foreach ($fields as $field) { if (empty($field->item_id) || empty($field->value)) { continue; } $collectionId = $field->collection_id; $primaryFieldsMap[$collectionId][] = [ 'value' => $field->item_id, 'label' => $field->value, ]; } return $primaryFieldsMap; } catch (Throwable $error) { throw $error; } } /** * Validate the collection data * * @param array $data The data * * @return void * @since 5.5.0 */ protected function validateCollectionData(array $data) { $data['fields'] = Str::toArray($data['fields']); $this->validate($data, [ 'title' => 'required|string|min:3|max:255', 'fields' => 'required|array', ]); $fields = Arr::make($data['fields']); unset($data['fields']); foreach ($fields as $field) { $this->validate($field, [ 'name' => 'required|string|min:3|max:255', 'type' => 'required|string|in:' . (new FieldTypes)->toString(), 'required' => 'in:0,1', 'description' => 'string', 'max_length' => 'integer', 'min_length' => 'integer', 'placeholder' => 'string', 'allow_negative' => 'integer|in:0,1', 'number_unit' => 'string', 'number_step' => 'number', 'number_format' => 'string|in:' . implode(',', static::NUMBER_FORMATS), 'options' => 'array', 'markers' => 'array', 'file_extensions'=> 'array', 'is_single_location' => 'integer|in:0,1', ]); } } /** * Create the collection fields schema * * @param Arr $fields The fields * @param int $collectionId The collection ID * * @return array * @since 5.5.0 */ protected function createCollectionFieldsSchema(Arr $fields, int $collectionId) { $fieldsArray = $fields->map(function($field) use ($collectionId) { return $this->prepareFieldRecord($field, $collectionId); })->toArray(); try { $response = CollectionField::createMany($fieldsArray); } catch (Throwable $error) { throw $error; } return $response; } /** * Delete the collection fields for the given collection ID * * @param int $collectionId The collection ID * * @return bool * @since 5.5.0 */ protected function deleteCollectionFieldsFor(int $collectionId) { try { CollectionField::where('collection_id', $collectionId)->delete(); } catch (Throwable $error) { throw $error; } return true; } /** * Make prepared the field table's records to store. * * @param array $field The field * @param int $collectionId The collection ID * * @return array * @since 5.5.0 */ protected function prepareFieldRecord(array $field, ?int $collectionId = null) { $options = !empty($field['options']) ? $field['options'] : null; $options = is_array($options) ? json_encode($options) : $options; $defaultValue = !empty($field['default_value']) ? $field['default_value'] : null; $defaultValue = is_array($defaultValue) ? json_encode($defaultValue) : $defaultValue; $fileExtensions = !empty($field['file_extensions']) ? $field['file_extensions'] : null; $fileExtensions = is_array($fileExtensions) ? json_encode($fileExtensions) : $fileExtensions; $fieldId = $field['id'] ?? null; $isNew = empty($fieldId); $processedData = [ 'id' => $fieldId, 'collection_id' => (int) $collectionId, 'name' => $field['name'], 'type' => $field['type'], 'description' => !empty($field['description']) ? $field['description'] : null, 'options' => $options, 'max_length' => !empty($field['max_length']) ? $field['max_length'] : null, 'min_length' => !empty($field['min_length']) ? $field['min_length'] : null, 'default_value' => $defaultValue, 'placeholder' => !empty($field['placeholder']) ? $field['placeholder'] : null, 'required' => !empty($field['required']) ? intval($field['required']) : 0, 'reference_collection_id' => !empty($field['reference_collection_id']) ? $field['reference_collection_id'] : null, 'is_textarea' => !empty($field['is_textarea']) ? intval($field['is_textarea']) : 0, 'is_single_location' => !empty($field['is_single_location']) ? intval($field['is_single_location']) : 0, 'show_time' => !empty($field['show_time']) ? intval($field['show_time']) : 0, 'file_extensions' => $fileExtensions, 'number_format' => !empty($field['number_format']) ? $field['number_format'] : null, 'allow_negative' => !empty($field['allow_negative']) ? intval($field['allow_negative']) : 0, 'number_unit' => !empty($field['number_unit']) ? $field['number_unit'] : null, 'number_step' => !empty($field['number_step']) ? $field['number_step'] : null, ]; if ($isNew) { $processedData['created'] = Date::sqlSafeDate(); $processedData['modified'] = Date::sqlSafeDate(); $processedData['created_by'] = getCurrentLoggedInUser()->id; } else { $processedData['modified'] = Date::sqlSafeDate(); $processedData['modified_by'] = getCurrentLoggedInUser()->id; } return $processedData; } /** * Sync the collection fields. * This method will make sure the functionalities like- * - Delete the fields that are not in the request * - Create the new fields * - Update the existing fields * * @param int $collectionId The collection ID * @param Arr $fields The fields * * @return void * @since 5.5.0 */ protected function syncCollectionFields(int $collectionId, Arr $fields) { $fieldsWithId = $fields->filter(function ($item) { return !empty($item['id']); }); $fieldsToUpdate = $fieldsWithId->pluck('id')->toArray(); $savedFields = CollectionField::where('collection_id', $collectionId)->get(['id']); $existingFields = Arr::make($savedFields)->pluck('id')->toArray(); $fieldsToDelete = Arr::make($existingFields)->diff($fieldsToUpdate)->toArray(); $fieldsToCreate = $fields->filter(function ($item) { return empty($item['id']); })->map(function ($field) use ($collectionId) { $field['id'] = null; return $this->prepareFieldRecord($field, $collectionId); })->toArray(); try { if (!empty($fieldsToDelete)) { CollectionField::whereIn('id', $fieldsToDelete)->delete(); } if (!empty($fieldsToCreate)) { CollectionField::createMany($fieldsToCreate); } if (!empty($fieldsToUpdate)) { foreach ($fieldsWithId as $field) { if (in_array($field['id'], $fieldsToUpdate)) { CollectionField::where('id', $field['id']) ->update($this->prepareFieldRecord($field, $collectionId)); } } } } catch (Throwable $error) { throw $error; } } /** * Clone the collection fields * * @param array $fields The fields * @param int $newCollectionId The new collection ID * @param array $collectionsIdMap The fields map * * @return array * @since 5.7.0 */ public function cloneCollectionFields($fields, int $newCollectionId, array $collectionsIdMap) { if (empty($fields) || !is_array($fields)) { return []; } $fields = Arr::make($fields); $newFieldsData = $fields->map(function ($field) use ($newCollectionId, $collectionsIdMap) { $reference_collection_id = $collectionsIdMap[$field["reference_collection_id"]] ?? null; return [ 'id' => $field["id"], 'collection_id' => $newCollectionId, 'name' => $field["name"], 'type' => $field["type"], 'description' => !empty($field["description"]) ? $field["description"] : null, 'options' => !empty($field["options"]) ? $field["options"] : null, 'max_length' => !empty($field["max_length"]) ? $field["max_length"] : null, 'min_length' => !empty($field["min_length"]) ? $field["min_length"] : null, 'default_value' => !empty($field["default_value"]) ? $field["default_value"] : null, 'placeholder' => !empty($field["placeholder"]) ? $field["placeholder"] : null, 'required' => !empty($field["required"]) ? intval($field["required"]) : 0, 'reference_collection_id'=> !empty($field["reference_collection_id"]) ? $reference_collection_id : null, 'is_textarea' => !empty($field["is_textarea"]) ? intval($field["is_textarea"]) : 0, 'show_time' => !empty($field["show_time"]) ? intval($field["show_time"]) : 0, 'is_single_location' => !empty($field["is_single_location"]) ? intval($field["is_single_location"]) : 0, 'file_extensions' => !empty($field["file_extensions"]) ? $field["file_extensions"] : null, 'number_format' => !empty($field["number_format"]) ? $field["number_format"] : null, 'allow_negative' => !empty($field["allow_negative"]) ? intval($field["allow_negative"]) : 0, 'number_unit' => !empty($field["number_unit"]) ? $field["number_unit"] : null, 'number_step' => !empty($field["number_step"]) ? $field["number_step"] : null, 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; }); $oldNewFieldsMap = []; try { foreach ($newFieldsData as $field) { $oldFieldId = $field['id']; unset($field['id']); $newFieldId = CollectionField::create($field); $oldNewFieldsMap[$oldFieldId] = $newFieldId; } return $oldNewFieldsMap; } catch (Throwable $error) { throw $error; } } /** * Duplicate the collection fields * * @param array $fields The fields * @param int $newCollectionId The new collection ID * * @return array * @since 5.5.0 */ protected function duplicateCollectionFields($fields, int $newCollectionId) { if (empty($fields) || !is_array($fields)) { return []; } $fields = Arr::make($fields); $newFieldsData = $fields->map(function ($field) use ($newCollectionId) { return [ 'id' => $field->id, 'collection_id' => $newCollectionId, 'name' => $field->name, 'type' => $field->type, 'description' => !empty($field->description) ? $field->description : null, 'options' => !empty($field->options) ? $field->options : null, 'max_length' => !empty($field->max_length) ? $field->max_length : null, 'min_length' => !empty($field->min_length) ? $field->min_length : null, 'default_value' => !empty($field->default_value) ? $field->default_value : null, 'placeholder' => !empty($field->placeholder) ? $field->placeholder : null, 'required' => !empty($field->required) ? intval($field->required) : 0, 'reference_collection_id'=> !empty($field->reference_collection_id) ? $field->reference_collection_id : null, 'is_textarea' => !empty($field->is_textarea) ? intval($field->is_textarea) : 0, 'show_time' => !empty($field->show_time) ? intval($field->show_time) : 0, 'is_single_location' => !empty($field->is_single_location) ? intval($field->is_single_location) : 0, 'file_extensions' => !empty($field->file_extensions) ? $field->file_extensions : null, 'number_format' => !empty($field->number_format) ? $field->number_format : null, 'allow_negative' => !empty($field->allow_negative) ? intval($field->allow_negative) : 0, 'number_unit' => !empty($field->number_unit) ? $field->number_unit : null, 'number_step' => !empty($field->number_step) ? $field->number_step : null, 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; }); $oldNewFieldsMap = []; try { foreach ($newFieldsData as $field) { $oldFieldId = $field['id']; unset($field['id']); $newFieldId = CollectionField::create($field); $oldNewFieldsMap[$oldFieldId] = $newFieldId; } return $oldNewFieldsMap; } catch (Throwable $error) { throw $error; } } /** * Create a unique alias * * @param string $title The title * @param string $alias The alias * * @return string * @since 5.7.0 */ public function createUniqueAliasForExport(string $title, string $alias) { return $this->createUniqueAlias($title, $alias); } /** * Create a unique title * * @param string $title The title * * @return string * @since 5.5.0 */ protected function createUniqueAlias(string $title, string $alias) { if (empty($alias)) { $alias = Str::safeUrl($title); } while (Collection::where('alias', $alias)->exists()) { $alias = StringHelper::increment($alias); } return $alias; } /** * Create a unique title for export * * @param string $title The title * * @return string * @since 5.7.0 */ public function createUniqueTitleForExport(string $title) { return $this->createUniqueTitle($title); } /** * Create a unique title * * @param string $title The title * * @return string * @since 5.5.0 */ protected function createUniqueTitle(string $title) { while (Collection::where('title', $title)->exists()) { $title = StringHelper::increment($title); } return $title; } /** * Clone the collection items * * @param array $items The items * @param int $newCollectionId The new collection ID * * @return array * @since 5.7.0 */ public function cloneCollectionItems($items, int $newCollectionId) { if (empty($items) || !is_array($items)) { return []; } $items = Arr::make($items)->map(function ($item) use ($newCollectionId) { return [ 'id' => $item["id"], 'collection_id' => $newCollectionId, 'published' => 1, 'access' => 1, 'language' => '*', 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; }); $oldNewItemsMap = []; try { foreach ($items as $item) { $oldItemId = $item['id']; unset($item['id']); $newItemId = CollectionItem::create($item); $oldNewItemsMap[$oldItemId] = $newItemId; } return $oldNewItemsMap; } catch (Throwable $error) { throw $error; } } /** * Duplicate the collection items * * @param array $items The items * @param int $newCollectionId The new collection ID * * @return array * @since 5.5.0 */ protected function duplicateCollectionItems($items, int $newCollectionId) { if (empty($items) || !is_array($items)) { return []; } $items = Arr::make($items)->map(function ($item) use ($newCollectionId) { return [ 'id' => $item->id, 'collection_id' => $newCollectionId, 'published' => $item->published ?? 1, 'access' => $item->access ?? 1, 'language' => $item->language ?? '*', 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; }); $oldNewItemsMap = []; try { foreach ($items as $item) { $oldItemId = $item['id']; unset($item['id']); $newItemId = CollectionItem::create($item); $oldNewItemsMap[$oldItemId] = $newItemId; } return $oldNewItemsMap; } catch (Throwable $error) { throw $error; } } /** * Clone the collection item values * * @param array $itemsMap The items map * @param array $fieldsMap The fields map * @param array $itemValuesMap The item values map * * @return void * @since 5.7.0 */ public function cloneCollectionItemValues($itemsMap, $fieldsMap, $itemValuesMap) { try { foreach ($itemsMap as $oldItemId => $newItemId) { if (empty($itemValuesMap[$oldItemId])) { continue; } $itemValues = $itemValuesMap[$oldItemId]; if (empty($itemValues)) { continue; } $itemValues = Arr::make($itemValues)->map(function ($itemValue) use ($newItemId, $fieldsMap, $itemsMap) { $oldFieldId = $itemValue['field_id']; $newFieldId = $fieldsMap[$oldFieldId]; $reference_item_id = $itemsMap[$itemValue['reference_item_id']] ?? null; return [ 'item_id' => $newItemId, 'field_id' => $newFieldId, 'value' => $itemValue['value'], 'reference_item_id' => $reference_item_id, ]; }); CollectionItemValue::createMany($itemValues->toArray()); } return true; } catch (Throwable $error) { throw $error; } } /** * Duplicate the collection item values * * @param array $itemsMap The items map * @param array $fieldsMap The fields map * * @return bool * @since 5.5.0 */ protected function duplicateCollectionItemValues(array $itemsMap, array $fieldsMap) { try { foreach ($itemsMap as $oldItemId => $newItemId) { $itemValues = CollectionItemValue::where('item_id', $oldItemId)->get(); if (empty($itemValues)) { continue; } $itemValues = Arr::make($itemValues)->map(function ($itemValue) use ($newItemId, $fieldsMap) { $oldFieldId = $itemValue->field_id; $newFieldId = $fieldsMap[$oldFieldId]; return [ 'item_id' => $newItemId, 'field_id' => $newFieldId, 'value' => $itemValue->value, 'reference_item_id' => $itemValue->reference_item_id ?? null, ]; }); CollectionItemValue::createMany($itemValues->toArray()); } return true; } catch (Throwable $error) { throw $error; } } /** * Create import ID mapping * * @param array $data The collection IDs map * * @return void * @since 5.7.0 */ public function createImportedIdsMap(array $data) { try { $data = json_encode($data); CollectionImports::where('published', 1)->delete(); CollectionImports::create([ 'data' => $data, 'published' => 1, 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]); } catch (Throwable $error) { throw $error; } } /** * Fetches a list of imported IDs mapping * * * @return mixed Collection of mapped ids from published imports * @since 5.7.0 */ public function fetchImportedIdsMap() { try { $fields = CollectionImports::where('published', 1) ->first(); } catch (Throwable $error) { throw $error; } return $fields; } } PKBA#]٪q��Gcomponents/com_sppagebuilder/dynamic-content/Services/FilterService.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Services; use Joomla\CMS\Factory; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Status; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; /** * Collection Filter Service * This class is responsible for filtering and processing collection items for displaying in the frontend. * * @since 5.5.8 */ class FilterService { /** * Fetch field values from all items in a collection by field ID. * * @param int $fieldId The field ID. * * @since 5.5.8 */ public function fetchFieldValuesById(int $fieldId) { $langTag = Factory::getLanguage()->getTag(); $values = CollectionItemValue::where('field_id', $fieldId) ->leftJoin(CollectionItem::class, 'collection_item_value.item_id', 'collection_item.id') ->whereIn('collection_item.language', [$langTag, '*']) ->where('collection_item.published', Status::PUBLISHED) ->get(['value']); return Arr::make($values)->map(function ($item) { return $item->toArray()['value']; })->toArray('value'); } /** * Get the collection option fields data. * * @param int $fieldId The field ID. * @return array The collection option fields data. * * @since 5.5.0 */ public function getCollectionOptionFieldsData(int $fieldId) { $field = CollectionField::where('id', $fieldId)->where('type', FieldTypes::OPTION)->first(['options']); if ($field->isEmpty()) { return []; } if (empty($field->options)) { return []; } $options = Str::toArray($field->options); if (empty($options)) { return []; } return Arr::make($options)->reduce(function ($carry, $option) { $carry[$option['value']] = $option['label']; return $carry; }, [])->toArray(); return $options ?? []; } public function getCollectionItemsFromReferenceField($fieldId, $collectionId) { $db = \Joomla\CMS\Factory::getDbo(); $langTag = Factory::getLanguage()->getTag(); $query = $db->getQuery(true) ->select(['id', 'collection_id']) ->from($db->quoteName('#__sppagebuilder_collection_fields')) ->where('id = ' . (int)$fieldId); $db->setQuery($query); $field = $db->loadObject(); if (!$field) { return []; } $query = $db->getQuery(true) ->select(['id', 'reference_collection_id']) ->from($db->quoteName('#__sppagebuilder_collection_fields')) ->where('collection_id = ' . (int)$collectionId) ->whereIn($db->quoteName('type'), ['reference', 'multi-reference']) ->where('reference_collection_id = ' . (int)$field->collection_id); $db->setQuery($query); $referenceFields = $db->loadObjectList(); if (empty($referenceFields)) { return []; } $query = $db->getQuery(true) ->select([ 'a.item_id AS main_item_id', 'a.reference_item_id', 'b.value' ]) ->from($db->quoteName('#__sppagebuilder_collection_item_values', 'a')) ->join('INNER', $db->quoteName('#__sppagebuilder_collection_item_values', 'b') . ' ON a.reference_item_id = b.item_id') ->join('INNER', $db->quoteName('#__sppagebuilder_collection_items', 'c') . ' ON a.item_id = c.id') ->whereIn('a.field_id', array_column($referenceFields, 'id')) ->where('b.field_id = ' . (int)$fieldId) ->where('a.reference_item_id IS NOT NULL') ->where('a.reference_item_id != 0') ->where('c.collection_id = ' . (int)$collectionId) ->whereIn('c.language', [$langTag, '*']) ->where('c.published = 1'); $db->setQuery($query); $results = $db->loadAssocList(); if (empty($results)) { return []; } $valueCountMap = []; foreach ($results as $result) { $value = $result['value']; if (!isset($valueCountMap[$value])) { $valueCountMap[$value] = []; } $valueCountMap[$value][$result['main_item_id']] = true; } $counts = []; foreach ($valueCountMap as $value => $items) { $counts[$value] = count($items); } return $counts; } public function isReferenceField($fieldId, $collectionId) { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select(['id', 'collection_id']) ->from($db->quoteName('#__sppagebuilder_collection_fields')) ->where('id = ' . (int)$fieldId); $db->setQuery($query); $field = $db->loadObject(); if (!$field) { return false; } $query = $db->getQuery(true) ->select('COUNT(*)') ->from($db->quoteName('#__sppagebuilder_collection_fields')) ->where('collection_id = ' . (int)$collectionId) ->whereIn($db->quoteName('type'), ['reference', 'multi-reference']) ->where('reference_collection_id = ' . (int)$field->collection_id); $db->setQuery($query); $count = $db->loadResult(); return $count > 0; } }PKBA#]��jOjORcomponents/com_sppagebuilder/dynamic-content/Controllers/CollectionsController.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Controllers; defined('_JEXEC') or die; use Exception; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Controller; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; class CollectionsController extends Controller { use Validator; /** * The collection service instance. * * @var CollectionsService * @since 5.5.0 */ protected $service; /** * The collection presets path. * * @var string * @since 5.5.0 */ protected const COLLECTION_PRESETS_PATH = JPATH_ROOT . '/administrator/components/com_sppagebuilder/assets/data/collection-presets.json'; /** * Constructor method to initialize the collection service * * @since 5.5.0 */ public function __construct(?CollectionsService $service = null) { $this->service = $service; $model = new Collection(); parent::__construct($model); } /** * Retrieve all collections. * * @return void * @since 5.5.0 */ public function list(Request $request) { try { $includeArticleSources = $request->getInt('include_article_sources', 0); return response()->json($this->service->fetchAll($includeArticleSources)); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } /** * Create a new collection. * * @param Input $input * @return void * @since 5.5.0 */ public function create(Request $request) { $data = [ 'title' => $request->getString('title', ''), 'alias' => $request->getString('alias', ''), 'fields' => $request->getRaw('fields'), 'published' => $request->getInt('published', 1), 'access' => $request->getInt('access', 1), 'language' => $request->getString('language', '*'), ]; withException($this->service, function ($service) use ($data) { $collectionId = $service->createRecord($data); return response()->json($collectionId, Response::HTTP_CREATED); }); } public function form(Request $request) { $presetName = $request->getString('preset_name'); $presetPath = self::COLLECTION_PRESETS_PATH; $presetData = json_decode(file_get_contents($presetPath), true); $preset = $presetData[$presetName]; return response()->json($preset); } /** * Update a collection by ID. * * @param Input $input * @return void * @since 5.5.0 */ public function update(Request $request) { $data = [ 'id' => $request->getInt('id'), 'title' => $request->getString('title', ''), 'alias' => $request->getString('alias', ''), 'fields' => $request->getRaw('fields'), 'published' => $request->getInt('published', 1), 'access' => $request->getInt('access', 1), 'language' => $request->getString('language', '*'), ]; withException($this->service, function ($service) use ($data) { $service->updateRecord($data); return response()->json(true, Response::HTTP_OK); }); } /** * Rename a collection by ID. * * @param Input $input * @return void * @since 5.5.0 */ public function rename(Request $request) { $data = [ 'title' => $request->getString('title'), 'collection_id' => $request->getInt('id'), ]; $canEditCollection = Factory::getUser()->authorise('core.edit', 'com_sppagebuilder.collection.' . $data['collection_id']); if(!$canEditCollection) { return response()->json(['message' => Text::_('JERROR_ALERTNOAUTHOR')], Response::HTTP_UNAUTHORIZED); } $this->validate($data, [ 'title' => 'required|string|min:3|max:255', 'collection_id' => 'required|integer', ]); if ($this->hasErrors()) { return response()->json($this->getErrors(), Response::HTTP_BAD_REQUEST); } try { $collectionId = $data['collection_id']; $updatingData = [ 'title' => $data['title'] ]; Collection::where('id', $collectionId)->update($updatingData); return response()->json(true); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } /** * Delete a collection by ID. * * @param Input $input * @return void * @since 5.5.0 */ public function delete(Request $request) { $collectionId = $request->getInt('id'); $force = $request->getInt('force', 0); $canDeleteCollection = Factory::getUser()->authorise('core.delete', 'com_sppagebuilder.collection.' . $collectionId); if(!$canDeleteCollection) { return response()->json(['message' => Text::_('JERROR_ALERTNOAUTHOR')], Response::HTTP_UNAUTHORIZED); } if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } try { if ($force) { Collection::where('id', $collectionId)->delete(); return response()->json(true); } if ($this->service->isCollectionUsedInPage($collectionId)) { return response()->json([ 'stop_reason' => 'collection_used_in_page', 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_DELETE_TITLE'), 'message' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_USED_IN_PAGE_MESSAGE'), ]); } if ($this->service->isCollectionReferenceToOtherCollection($collectionId)) { return response()->json([ 'stop_reason' => 'collection_reference_to_other_collection', 'title' => 'Delete Collection', 'message' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_REFERENCED_BY_OTHER_COLLECTION_MESSAGE'), ]); } if ($this->service->isCollectionHasItems($collectionId)) { return response()->json([ 'stop_reason' => 'collection_has_items', 'title' => 'Delete Collection', 'message' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_HAS_ITEMS_MESSAGE') ]); } return response()->json([ 'stop_reason' => 'empty_collection', 'title' => 'Delete Collection', 'message' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_EMPTY_COLLECTION_DELETE_MESSAGE') ]); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } /** * Duplicate a collection by ID. * * @param Input $input * @return void * @since 5.5.0 */ public function duplicate(Request $request) { $collectionId = $request->getInt('id'); if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } withException($this->service, function ($service) use ($collectionId) { $newCollectionId = $service->duplicateCollection($collectionId); return response()->json($newCollectionId, Response::HTTP_CREATED); }); } /** * Get the collection schema. * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function schema(Request $request) { $collectionId = $request->getInt('id'); if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } return response()->json( $this->service->fetchCollectionSchema($collectionId), Response::HTTP_OK ); } /** * Get the collection attributes. * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function attributes(Request $request) { $id = $request->getInt('collection_id'); $allowedTypes = $request->getCmd('allowed_types'); $allowedTypes = !empty($allowedTypes) ? $allowedTypes : []; if (empty($allowedTypes)) { $allowedTypes = FieldTypes::all(); } if (!in_array(FieldTypes::REFERENCE, $allowedTypes)) { $allowedTypes[] = FieldTypes::REFERENCE; } if (!$id) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } if ($id === CollectionIds::ARTICLES_COLLECTION_ID) { return response()->json($this->service->fetchArticleAttributes($allowedTypes)); } if ($id === CollectionIds::TAGS_COLLECTION_ID) { return response()->json($this->service->fetchTagsAttributes($allowedTypes)); } return response()->json($this->service->fetchCollectionAttributes($id, $allowedTypes)); } /** * Get the collection fields. * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function collectionFields(Request $request) { $id = $request->getInt('collection_id', null); if (!$id) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } if ($id === CollectionIds::ARTICLES_COLLECTION_ID) { return response()->json($this->service->fetchArticleFields()); } if ($id === CollectionIds::TAGS_COLLECTION_ID) { return response()->json($this->service->fetchTagsFields()); } $fields = $this->service->fetchCollectionFields($id); return response()->json($fields); } /** * Get the reference collection fields. * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function referenceCollectionFields(Request $request) { $ownCollectionId = $request->getInt('own_collection_id'); $parentCollectionId = $request->getInt('parent_collection_id'); $fields = CollectionField::where('collection_id', $parentCollectionId) ->where('reference_collection_id', $ownCollectionId) ->where('type', FieldTypes::MULTI_REFERENCE) ->get(['id', 'name', 'type']); return response()->json($fields); } public function totalFieldsByCollection(Request $request) { $collectionId = $request->getInt('collection_id'); if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } return response()->json( $this->service->fetchTotalFieldsByCollection($collectionId), Response::HTTP_OK ); } /** * Get the created dynamic content pages. * * @return array * @since 5.5.0 */ protected static function getCreatedDynamicContentPages() { $pages = Page::where('extension', 'com_sppagebuilder') ->whereLike('extension_view', 'dynamic_content%') ->get(['extension_view', 'view_id']); $pages = Arr::make($pages)->map(function ($item) { return $item->toArray(); })->reduce(function ($carry, $item) { $carry[$item['view_id']] ??= []; $carry[$item['view_id']][] = $item; return $carry; }, []); return $pages->toArray(); } /** * Create collection object for dynamic content pages * * @param array $pages Existing pages array for checking page availability * @return object The collection object * @since 6.0.0 */ protected function createArticlesCollection(array $pages) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } try { $articles = \SppagebuilderHelperArticles::getArticles(1); $articlesCount = \SppagebuilderHelperArticles::getArticlesCount(); $hasArticles = !empty($articles); } catch (\Exception $e) { $hasArticles = false; } $articlePages = $pages[CollectionIds::ARTICLES_COLLECTION_ID] ?? []; $articlePages = Arr::make($articlePages); $indexPage = $articlePages->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX; }); $detailPage = $articlePages->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL; }); $articlesCollection = (object)[ 'id' => CollectionIds::ARTICLES_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_ARTICLES_SOURCE'), 'alias' => 'articles', 'disabled' => ($articlePages->count() === 2), 'total_items' => $hasArticles ? $articlesCount : 0, 'pages' => [ [ 'id' => (string)CollectionIds::ARTICLES_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_INDEX_PAGE'), 'disabled' => !empty($indexPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, 'collection_id' => CollectionIds::ARTICLES_COLLECTION_ID, ], [ 'id' => (string)CollectionIds::ARTICLES_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_DETAIL_PAGE'), 'disabled' => !empty($detailPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL, 'collection_id' => CollectionIds::ARTICLES_COLLECTION_ID, ], ] ]; return $articlesCollection; } /** * Create collection object for dynamic content pages * * @param array $pages Existing pages array for checking page availability * @return object The collection object * @since 6.0.0 */ protected function createTagsCollection(array $pages) { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from('#__tags') ->where('published = 1'); $db->setQuery($query); $tagCount = $db->loadResult(); $hasTags = $tagCount > 0; $tagPages = $pages[CollectionIds::TAGS_COLLECTION_ID] ?? []; $tagPages = Arr::make($tagPages); $indexPage = $tagPages->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX; }); $detailPage = $tagPages->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL; }); $tagsCollection = (object)[ 'id' => CollectionIds::TAGS_COLLECTION_ID, 'title' => 'Tags', 'alias' => 'tags', 'disabled' => !$hasTags || ($tagPages->count() === 2), 'total_items' => $hasTags ? $tagCount : 0, 'pages' => [ [ 'id' => (string)CollectionIds::TAGS_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_INDEX_PAGE'), 'disabled' => !$hasTags || !empty($indexPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, 'collection_id' => CollectionIds::TAGS_COLLECTION_ID, ], [ 'id' => (string)CollectionIds::TAGS_COLLECTION_ID, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_DETAIL_PAGE'), 'disabled' => !$hasTags || !empty($detailPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL, 'collection_id' => CollectionIds::TAGS_COLLECTION_ID, ], ] ]; return $tagsCollection; } /** * Get the dynamic content pages. * * @return JsonResponse * @since 5.5.0 */ public function dynamicContentPages() { $collections = Collection::where('published', 1)->get(['id', 'title', 'alias']); $pages = static::getCreatedDynamicContentPages(); $articlesCollection = $this->createArticlesCollection($pages); $tagsCollection = $this->createTagsCollection($pages); $collections = Arr::make($collections)->map(function ($item) use($pages) { $collectionPage = $pages[$item->id] ?? []; $collectionPage = Arr::make($collectionPage); $indexPage = $collectionPage->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX; }); $detailPage = $collectionPage->find(function($item) { return $item['extension_view'] === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL; }); $item->disabled = $collectionPage->count() === 2; $item->title = $item->title; $item->pages = [ [ 'id' => $item->id, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_INDEX_PAGE'), 'disabled' => !empty($indexPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, 'collection_id' => $item->id, ], [ 'id' => $item->id, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_DETAIL_PAGE'), 'disabled' => !empty($detailPage), 'page_type' => Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL, 'collection_id' => $item->id, ], ]; return $item; }); if (!$tagsCollection->disabled || $tagsCollection->total_items > 0) { $collections->prepend($tagsCollection); } if (!$articlesCollection->disabled || $articlesCollection->total_items > 0) { $collections->prepend($articlesCollection); } return response()->json($collections->toArray()); } } PKBA#]�L00Vcomponents/com_sppagebuilder/dynamic-content/Controllers/CollectionItemsController.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Controllers; defined('_JEXEC') or die; use Exception; use Joomla\CMS\Language\Text; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Controller; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Date; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; class CollectionItemsController extends Controller { use Validator; /** * The collection item service instance. * * @var CollectionItemService * @since 5.5.0 */ protected $service; public function __construct(?CollectionItemsService $service = null) { $this->service = $service; $model = new CollectionItem(); parent::__construct($model); } /** * Create a new item with values. * * @param Input $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function create(Request $request) { $payload = [ 'collection_id' => $request->getInt('collection_id'), 'values' => $request->post->getRaw('values'), // The value should be get from the $_POST otherwise it removes the html tags 'published' => $request->getInt('published', 1), 'access' => $request->getInt('access', 1), 'language' => $request->getString('language', '*'), 'created_by' => $request->getInt('created_by', null), 'association' => $request->getRaw('association'), ]; if (empty($payload['created_by'])) { $payload['created_by'] = getCurrentLoggedInUser()->id; } withException($this->service, function ($service) use ($payload) { $itemId = $service->createItem($payload); return response()->json($itemId, Response::HTTP_CREATED); }); } /** * Update an existing item with values. * * @param Input $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function update(Request $request) { $payload = [ 'collection_id' => $request->getInt('collection_id'), 'item_id' => $request->getInt('item_id'), 'values' => $request->post->getRaw('values'), // The value should be get from the $_POST otherwise it removes the html tags 'published' => $request->getInt('published', 1), 'access' => $request->getInt('access', 1), 'language' => $request->getString('language', '*'), 'created_by' => $request->getInt('created_by', getCurrentLoggedInUser()->id), 'modified' => Date::sqlSafeDate(), 'modified_by' => getCurrentLoggedInUser()->id, 'association' => $request->getRaw('association'), ]; withException($this->service, function ($service) use ($payload) { $itemId = $service->updateItem($payload); return response()->json($itemId, Response::HTTP_OK); }); } /** * Delete an existing item. * * @param Input $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function delete(Request $request) { $itemId = $request->getInt('id'); if (!$itemId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } try { CollectionItem::where('id', $itemId)->delete(); return response()->json(null, Response::HTTP_NO_CONTENT); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } /** * Get a single item by ID. * * @param Input $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function single(Request $request) { $itemId = $request->getInt('item_id'); if (!$itemId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } return response()->json( $this->service->fetchSingleItem($itemId), Response::HTTP_OK ); } /** * Prepare the form data for the collection item form. * This method will be used for the collection item form for the first time. * * @param Input $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function form(Request $request) { $collectionId = $request->getInt('collection_id'); $mode = $request->getString('mode'); $itemId = $request->getInt('item_id'); $this->validate(['collection_id' => $collectionId, 'mode' => $mode], [ 'collection_id' => 'integer', 'mode' => 'required|in:create,edit', 'item_id' => 'integer', ]); if ($this->hasErrors()) { return response()->json($this->getErrors(), Response::HTTP_BAD_REQUEST); } $data = $mode === 'create' ? $this->service->prepareFormData($collectionId) : $this->service->fetchSingleItem($itemId); return response()->json($data, Response::HTTP_OK); } /** * Get items by collection ID. * * @param int $collectionId The collection ID. * * @return JsonResponse * @since 5.5.0 */ public function list(Request $request) { $payload = [ 'collection_id' => $request->getInt('collection_id'), 'current_page' => $request->getInt('current_page', 1), 'per_page' => $request->getInt('per_page', 20), 'search' => $request->getString('search', ''), 'status' => $request->getString('status', '*'), 'created' => $request->getString('created', '*'), 'modified' => $request->getString('modified', '*'), ]; if ($payload['collection_id'] === CollectionIds::ARTICLES_COLLECTION_ID) { $collectionsService = new \JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService(); return response()->json( $collectionsService->fetchArticleItems($payload), Response::HTTP_OK ); } if ($payload['collection_id'] === CollectionIds::TAGS_COLLECTION_ID) { $collectionsService = new \JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService(); return response()->json( $collectionsService->fetchTagsItems($payload), Response::HTTP_OK ); } withException($this->service, function ($service) use ($payload) { return response()->json( $service->fetchAll($payload), Response::HTTP_OK ); }); } /** * Batch update the items. * * @param Request $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function batchUpdate(Request $request) { $itemIds = $request->getRaw('item_ids'); $key = $request->getString('key'); $value = $request->getCmd('value'); $itemIds = Str::toArray($itemIds); $data = [ 'item_ids' => $itemIds, 'key' => $key, 'value' => $value, ]; $this->validate($data, [ 'item_ids' => 'required|array', 'key' => 'required|in:' . implode(',', CollectionItemsService::BATCH_UPDATE_KEYS), ]); if ($this->hasErrors()) { return response()->json($this->getErrors(), Response::HTTP_BAD_REQUEST); } if ($key === 'delete') { try { $this->service->deleteItems($itemIds); return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_DELETED_SUCCESSFULLY')], Response::HTTP_OK); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } withException($this->service, function ($service) use ($itemIds, $key, $value) { $service->updateItems($itemIds, $key, $value); return response()->json($itemIds, Response::HTTP_OK); }); } /** * Get the collection schema. * * @param Request $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function schema(Request $request) { $collectionId = $request->getInt('collection_id'); if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID) { $schema = [ ['key' => 'title', 'name' => 'Title', 'type' => 'text'], ['key' => 'published', 'name' => 'Status', 'type' => 'switch'], ['key' => 'created', 'name' => 'Created', 'type' => 'date-time'], ['key' => 'username', 'name' => 'Author', 'type' => 'text'], ['key' => 'category', 'name' => 'Category', 'type' => 'text'], ['key' => 'hits', 'name' => 'Hits', 'type' => 'number'], ]; return response()->json($schema, Response::HTTP_OK); } if ($collectionId === CollectionIds::TAGS_COLLECTION_ID) { $schema = [ ['key' => 'title', 'name' => 'Title', 'type' => 'text'], ['key' => 'alias', 'name' => 'Alias', 'type' => 'text'], ]; return response()->json($schema, Response::HTTP_OK); } withException($this->service, function ($service) use ($collectionId) { $schema = $service->fetchCollectionSchema($collectionId); return response()->json( $schema, Response::HTTP_OK ); }); } /** * Duplicate an existing item. * * @param Request $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function duplicate(Request $request) { $itemId = $request->getInt('id'); if (!$itemId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } withException($this->service, function ($service) use ($itemId) { $newItemId = $service->duplicateItem($itemId); return response()->json($newItemId, Response::HTTP_OK); }); } /** * Get the collection items as options. * * @param Request $request The input object. * * @return JsonResponse * @since 5.5.0 */ public function itemsAsOptions(Request $request) { $collectionId = $request->getInt('collection_id'); if (!$collectionId) { return response()->json(['message' => Text::_('COM_SPPAGEBUILDER_COLLECTION_ITEMS_COLLECTION_ID_REQUIRED')], Response::HTTP_BAD_REQUEST); } withException($this->service, function ($service) use ($collectionId) { $items = $service->fetchCollectionItemsAsOptions($collectionId); return response()->json($items, Response::HTTP_OK); }); } } PKBA#]���Wcomponents/com_sppagebuilder/dynamic-content/Controllers/CollectionFieldsController.phpnu�[���<?php namespace JoomShaper\SPPageBuilder\DynamicContent\Controllers; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Controller; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; class CollectionFieldsController extends Controller { use Validator; public function __construct() { $model = new CollectionField(); parent::__construct($model); } /** * Reorder the fields * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function reorder(Request $request) { return parent::reorder($request); } } PKBA#]D��>>]components/com_sppagebuilder/dynamic-content/Controllers/CollectionImportExportController.phpnu�[���<?php /* * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Controllers; defined('_JEXEC') or die; use Exception; use Joomla\CMS\Language\Text; use Joomla\Component\Finder\Administrator\Indexer\Query; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Controller; use JoomShaper\SPPageBuilder\DynamicContent\Exceptions\ValidatorException; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\QueryBuilder; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Date; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use function PHPSTORM_META\map; class CollectionImportExportController extends Controller { use Validator; /** * Perform a depth-first search to find the topological order of collections. * * @param string $collectionId The collection ID to start the search from. * @param array $adjacencyList The adjacency list representing the graph. * @param array $visited An array to keep track of visited nodes. * @param array $stack The stack to store the topological order. */ protected function dfs($collectionId, array &$adjacencyList, array &$visited, array &$stack) { $visited[$collectionId] = true; if (isset($adjacencyList[$collectionId])) { foreach ($adjacencyList[$collectionId] as $neighbor) { if (!isset($visited[$neighbor])) { $this->dfs($neighbor, $adjacencyList, $visited, $stack); } } } $stack[] = $collectionId; } /** * Perform a topological sort on the collection IDs based on their dependencies. * * @param array $collectionIds The collection IDs to be sorted. * @param array $dependencies The dependencies between collections. * * @return array The sorted collection IDs. */ protected function topologicalSort(array $collectionIds, array $dependencies): array { $adjacencyList = []; $visited = []; $stack = []; foreach($dependencies as $dependency) { $from = $dependency[0]; $to = $dependency[1]; if (!isset($adjacencyList[$from])) { $adjacencyList[$from] = []; } if (!isset($adjacencyList[$to])) { $adjacencyList[$to] = []; } $adjacencyList[$from][] = $to; } foreach ($collectionIds as $collectionId) { if(!isset($visited[$collectionId])) { $this->dfs($collectionId, $adjacencyList, $visited, $stack); } } return $stack; } /** * Export the dynamic content. * * @return void * @since 5.7.0 */ public function exportDynamicContent() { $collectionsService = new CollectionsService(); $dependentCollections = $collectionsService->fetchAllCollectionFields(); $dependentCollections = Arr::make($dependentCollections)->map(function($field) { return [ $field->collection_id, $field->reference_collection_id ]; })->filter(function($item) { return $item[0] !== $item[1]; })->toArray(); $collections = $collectionsService->fetchAll(); $collectionIds = Arr::make($collections)->map(function($collection) { return $collection['id']; })->toArray(); $collectionIds = $this->topologicalSort($collectionIds, $dependentCollections); $exportData = []; foreach($collectionIds as $collectionId) { if (empty($collectionId)) { return response()->json(['message' => 'No collection ID provided'], Response::HTTP_BAD_REQUEST); } $collectionItemsService = new CollectionItemsService(); $collection = Collection::where('id', $collectionId)->with(['fields', 'items'])->first(); if (empty($collection)) { return response()->json(['message' => 'Collection not found'], Response::HTTP_NOT_FOUND); } $fields = Arr::make($collection->fields)->map(function($field) { return [ 'id' => $field->id, 'collection_id' => $field->collection_id, 'name' => $field->name, 'type' => $field->type, 'description' => !empty($field->description) ? $field->description : null, 'options' => !empty($field->options) ? $field->options : null, 'max_length' => !empty($field->max_length) ? $field->max_length : null, 'min_length' => !empty($field->min_length) ? $field->min_length : null, 'default_value' => !empty($field->default_value) ? $field->default_value : null, 'placeholder' => !empty($field->placeholder) ? $field->placeholder : null, 'required' => !empty($field->required) ? intval($field->required) : 0, 'reference_collection_id'=> !empty($field->reference_collection_id) ? $field->reference_collection_id : null, 'is_textarea' => !empty($field->is_textarea) ? intval($field->is_textarea) : 0, 'show_time' => !empty($field->show_time) ? intval($field->show_time) : 0, 'file_extensions' => !empty($field->file_extensions) ? $field->file_extensions : null, 'number_format' => !empty($field->number_format) ? $field->number_format : null, 'allow_negative' => !empty($field->allow_negative) ? intval($field->allow_negative) : 0, 'number_unit' => !empty($field->number_unit) ? $field->number_unit : null, 'number_step' => !empty($field->number_step) ? $field->number_step : null, 'created' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id, ]; })->toArray(); $items = $collectionItemsService->fetchItemsByCollectionId($collectionId); $items = Arr::make($items)->map(function($item) { return [ 'id' => $item["id"], 'published' => intval($item["published"]), 'access' => intval($item["access"]), 'language' => $item["language"], 'created' => Date::sqlSafeDate(), 'created_by' => $item["created_by"], ]; })->toArray(); if(!empty($items)) { foreach ($items as &$item) { $itemValues = CollectionItemValue::where('item_id', $item['id'])->get(); $item['itemValues'] = Arr::make($itemValues)->map(function($item) { return [ 'item_id' => $item['item_id'], 'field_id' => $item['field_id'], 'value' => $item['value'], 'reference_item_id' => $item['reference_item_id'] ?? null, ]; })->toArray(); } unset($item); } $exportData[] = [ 'id' => $collection->id, 'title' => $collection->title, 'alias' => $collection->alias, 'fields' => $fields, 'items' => $items, ]; } return $exportData; } /** * Export the collection items. * * @return JsonResponse * @since 5.5.0 */ public function export() { $exportData = $this->exportDynamicContent(); return response()->json($exportData, Response::HTTP_OK); } /** * Check self export import * * @param mixed $data * @param mixed $existingCollections * * @return Boolean * @since 5.7.0 */ private function checkSelfExportImport($data, $existingCollections) { $existingCollectionData = []; $importedCollectionData = []; foreach($existingCollections as $existingCollection) { $existingCollection = Collection::where('id', $existingCollection['id'])->with(['fields'])->first(); $existingCollectionData[$existingCollection['id']] = Arr::make($existingCollection['fields'])->map(function($item) { return $item['id']; })->toArray(); } foreach($data as $importedData) { $importedCollectionData[$importedData['id']] = Arr::make($importedData['fields'])->map(function($item) { return $item['id']; })->toArray(); } foreach($importedCollectionData as $importedCollectionId => $importedFieldIds) { if(isset($existingCollectionData[$importedCollectionId]) && !empty($existingCollectionData[$importedCollectionId])) { $existingFieldIds = $existingCollectionData[$importedCollectionId]; $copyExistingFieldIds = $existingFieldIds; $copyImportedFieldsIds = $importedFieldIds; sort($copyExistingFieldIds); sort($copyImportedFieldsIds); if($copyExistingFieldIds != $copyImportedFieldsIds) { return false; } } else { return false; } } return true; } /** * Import the dynamic content. * * @param array $data The data to be imported. * * @return array * @throws ValidatorException * @since 5.7.0 */ public function importDynamicContent(array $data) { $collectionsService = new CollectionsService(); $existingCollections = $collectionsService->fetchAll(); $existingCollectionIds = Arr::make($existingCollections)->map(function($existingCollection) { return $existingCollection['id']; })->toArray(); $isSelfExportImport = $this->checkSelfExportImport($data, $existingCollections); if(empty($data) || $isSelfExportImport) { return []; } $globalFieldsMap = []; $globalItemsMap = []; $globalCollectionsIdMap = []; $collectionsService = new CollectionsService(); $collectionIdMaps = $collectionsService->fetchImportedIdsMap(); $dbCollectionIdMap = []; $dbFieldIdMap = []; $alreadyImported = true; if(isset($collectionIdMaps->data)) { $dbData = Str::toArray($collectionIdMaps->data); if(isset($dbData['globalCollectionsIdMap'])) { $dbCollectionIdMap = $dbData['globalCollectionsIdMap']; } if(isset($dbData['globalFieldsMap'])) { $dbFieldIdMap = $dbData['globalFieldsMap']; } } foreach($data as $importStructure) { if(isset($dbCollectionIdMap[$importStructure['id']])) { $newCollectionId = $dbCollectionIdMap[$importStructure['id']]; if(!in_array($newCollectionId, $existingCollectionIds)) { $alreadyImported = false; } } else { $alreadyImported = false; } } if($alreadyImported) { return [ 'globalFieldsMap' => $dbFieldIdMap, 'globalCollectionsIdMap' => $dbCollectionIdMap, ]; } foreach ($data as $importStructure) { $importStructure = Str::toArray($importStructure); $oldCollectionId = $importStructure['id']; $items = $importStructure['items']; $collectionTitle = $collectionsService->createUniqueTitleForExport($importStructure['title']); $collectionAlias = $collectionsService->createUniqueAliasForExport($collectionTitle, $importStructure['alias']); $collectionData = [ 'title' => $collectionTitle, 'alias' => $collectionAlias, 'published' => 1, 'access' => 1, 'language' => '*', 'created' => Date::sqlSafeDate(), 'modified' => Date::sqlSafeDate(), 'created_by' => getCurrentLoggedInUser()->id ]; $collectionId = Collection::create($collectionData); if (!$collectionId) { throw new Exception(Text::_('COM_SPPAGEBUILDER_COLLECTION_IMPORT_EXPORT_FAILED_TO_CREATE_COLLECTION')); } $globalCollectionsIdMap[$oldCollectionId] = $collectionId; $fieldsMap = $collectionsService->cloneCollectionFields($importStructure['fields'], $collectionId, $globalCollectionsIdMap); foreach ($fieldsMap as $key => $value) { $globalFieldsMap[$key] = $value; } $itemsMap = $collectionsService->cloneCollectionItems($items, $collectionId); foreach ($itemsMap as $key => $value) { $globalItemsMap[$key] = $value; } $itemValuesMap = []; foreach ($items as $item) { $itemValuesMap[$item['id']] = $item['itemValues'] ?? []; } $collectionsService->cloneCollectionItemValues($globalItemsMap, $globalFieldsMap, $itemValuesMap); } $collectionsService->createImportedIdsMap([ 'globalFieldsMap' => $globalFieldsMap, 'globalCollectionsIdMap' => $globalCollectionsIdMap, ]); return [ 'globalFieldsMap' => $globalFieldsMap, 'globalCollectionsIdMap' => $globalCollectionsIdMap, ]; } /** * Import the collection items. * * @param Request $request The request object. * * @return JsonResponse * @since 5.5.0 */ public function import(Request $request) { $data = $request->getRaw('data'); if (empty($data)) { return response()->json(['message' => 'No data provided'], Response::HTTP_BAD_REQUEST); } $data = Str::toArray($data); QueryBuilder::beginTransaction(); try { $this->importDynamicContent($data); QueryBuilder::commit(); return response()->json(true, Response::HTTP_OK); } catch (Exception $error) { QueryBuilder::rollback(); if ($error instanceof ValidatorException) { return response()->json($error->getData(), $error->getCode()); } return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } }PKBA#]+ �jTjTJcomponents/com_sppagebuilder/dynamic-content/Site/PageSchemaOrgBuilder.phpnu�[���<?php /** * @package SP Page Builder * @subpackage com_sppagebuilder * * Mirrors Joomla plg_system_schemaorg: stored payload, cleanupSchema, image URLs, * @graph Organization + WebSite + WebPage (with @id links), item isPartOf WebPage, * and Article-like defaults from the page when schema fields are blank. */ namespace JoomShaper\SPPageBuilder\DynamicContent\Site; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Document\Document; use Joomla\CMS\Factory; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\User\UserFactoryInterface; use Joomla\CMS\Uri\Uri; defined('_JEXEC') or die; /** * @since 5.x */ final class PageSchemaOrgBuilder { /** * @param object $pageData SP Page Builder page row (id required for @id). * @param array<string,mixed> $schema Decoded attribs.schema (schemaType + type key). * @param Document $document Joomla document (WebPage name/description like core). * @param CMSApplication $app * * @return array<string,mixed>|null */ public static function build(object $pageData, array $schema, Document $document, CMSApplication $app): ?array { $schemaType = isset($schema['schemaType']) ? trim((string) $schema['schemaType']) : 'None'; if ($schemaType === '' || strcasecmp($schemaType, 'none') === 0) { return null; } if (!isset($schema[$schemaType]) || !\is_array($schema[$schemaType])) { return null; } $itemSchema = json_decode(json_encode($schema[$schemaType]), true); if (!\is_array($itemSchema)) { return null; } if (!isset($itemSchema['@type']) || self::isEmptySchemaValue($itemSchema['@type'])) { $itemSchema['@type'] = $schemaType; } self::applyCreativeWorkDefaults($itemSchema, $schemaType, $pageData, $document, $app); $domain = Uri::root(); $ids = self::schemaBaseIds($domain); $isArticleLike = \in_array(strtolower($schemaType), ['article', 'blogposting'], true); $context = 'com_sppagebuilder.page'; $articleGraphId = $domain . '#/schema/' . str_replace('.', '/', $context) . '/' . (int) ($pageData->id ?? 0); self::ensureArticleSchemaOrgQuality($itemSchema, $schemaType, $app); // Same as Schemaorg plugin: relative top-level image → root + cleanImageUrl. if (!empty($itemSchema['image']) && \is_string($itemSchema['image'])) { $url = $itemSchema['image']; if (preg_match('#^(https?:)?//#i', $url) !== 1) { $itemSchema['image'] = self::rootImageUrl($url); } } if (!empty($itemSchema['thumbnailUrl']) && \is_string($itemSchema['thumbnailUrl'])) { $url = $itemSchema['thumbnailUrl']; if (preg_match('#^(https?:)?//#i', $url) !== 1) { $itemSchema['thumbnailUrl'] = self::rootImageUrl($url); } } if ($isArticleLike) { self::syncArticlePrimaryImageUrls($itemSchema); } $itemSchema['@id'] = $articleGraphId; $itemSchema['isPartOf'] = ['@id' => $ids['webPage']]; $itemSchema = self::cleanupSchema($itemSchema); if ($itemSchema === []) { return null; } $siteName = trim((string) $app->get('sitename', '')); $organizationSchema = [ '@type' => 'Organization', '@id' => $ids['organization'], 'url' => $domain, ]; if ($siteName !== '') { $organizationSchema['name'] = $siteName; } $websiteSchema = [ '@type' => 'WebSite', '@id' => $ids['website'], 'url' => $domain, 'publisher' => ['@id' => $ids['organization']], ]; if ($siteName !== '') { $websiteSchema['name'] = $siteName; } $langTag = trim((string) ($pageData->language ?? '')); if ($langTag === '' || $langTag === '*') { $langTag = $app->getLanguage()->getTag(); } $webPageSchema = [ '@type' => 'WebPage', '@id' => $ids['webPage'], 'url' => htmlspecialchars(Uri::getInstance()->toString(), ENT_COMPAT, 'UTF-8'), 'name' => $document->getTitle(), 'isPartOf' => ['@id' => $ids['website']], 'about' => ['@id' => $ids['organization']], 'inLanguage' => $langTag, ]; if ($isArticleLike) { $webPageSchema['mainEntity'] = ['@id' => $articleGraphId]; } $metaDesc = trim(strip_tags((string) $document->getDescription())); if ($metaDesc !== '') { $webPageSchema['description'] = $document->getDescription(); } $itemClean = self::stripEmptyJsonLdDeep($itemSchema); $orgClean = self::stripEmptyJsonLdDeep($organizationSchema); $siteClean = self::stripEmptyJsonLdDeep($websiteSchema); $webClean = self::stripEmptyJsonLdDeep($webPageSchema); if ($isArticleLike && $webClean !== null && \is_array($webClean)) { $schemaTitle = null; if (isset($itemClean['headline']) && \is_string($itemClean['headline']) && trim($itemClean['headline']) !== '') { $schemaTitle = $itemClean['headline']; } elseif (isset($itemClean['name']) && \is_string($itemClean['name']) && trim($itemClean['name']) !== '') { $schemaTitle = $itemClean['name']; } if ($schemaTitle !== null) { $webClean['name'] = $schemaTitle; } } if ( $itemClean === null || $itemClean === [] || !isset($itemClean['@type']) || \count($itemClean) <= 1 ) { return null; } $graph = [$itemClean]; if ($webClean !== null && $webClean !== [] && isset($webClean['@type'])) { \array_unshift($graph, $webClean); } if ($siteClean !== null && $siteClean !== [] && isset($siteClean['@type'])) { \array_unshift($graph, $siteClean); } if ($orgClean !== null && $orgClean !== [] && isset($orgClean['@type'])) { \array_unshift($graph, $orgClean); } return [ '@context' => 'https://schema.org', '@graph' => $graph, ]; } /** * @return array{organization: string, website: string, webPage: string} */ private static function schemaBaseIds(string $domain): array { return [ 'organization' => $domain . '#/schema/Organization/base', 'website' => $domain . '#/schema/WebSite/base', 'webPage' => $domain . '#/schema/WebPage/base', ]; } private static function isEmptySchemaValue($value): bool { if ($value === null || $value === []) { return true; } if (\is_string($value)) { return trim($value) === ''; } if (\is_array($value)) { foreach ($value as $v) { if (!self::isEmptySchemaValue($v)) { return false; } } return true; } return false; } /** * Schema tab did not save an author value (missing / null / empty array only — any other payload is treated as intentional). * * @param array<string,mixed> $item */ private static function schemaTabAuthorIsUnset(array $item): bool { if (!\array_key_exists('author', $item)) { return true; } $a = $item['author']; return $a === null || $a === []; } /** * When schema form fields are blank, fill from the SP Page Builder page (same idea as com_content article JSON-LD). * * @param array<string,mixed> $item */ private static function applyCreativeWorkDefaults( array &$item, string $schemaType, object $pageData, Document $document, CMSApplication $app ): void { $typeNorm = strtolower($schemaType); $isArticleLike = \in_array($typeNorm, ['article', 'blogposting'], true); $pageTitle = trim((string) ($pageData->title ?? '')); if ($pageTitle === '') { $pageTitle = trim(strip_tags((string) $document->getTitle())); } if ($isArticleLike) { if (self::isEmptySchemaValue($item['description'] ?? null)) { $desc = trim(strip_tags((string) $document->getDescription())); if ($desc !== '') { $item['description'] = $document->getDescription(); } } $langTag = trim((string) ($pageData->language ?? '')); if ($langTag === '' || $langTag === '*') { $langTag = $app->getLanguage()->getTag(); } if (self::isEmptySchemaValue($item['inLanguage'] ?? null)) { $item['inLanguage'] = $langTag; } if (self::schemaTabAuthorIsUnset($item)) { $authorName = trim((string) ($pageData->author_name ?? '')); if ($authorName === '' && !empty($pageData->created_by)) { $authorName = self::loadUserDisplayName((int) $pageData->created_by); } if ($authorName !== '') { $item['author'] = [ '@type' => 'Person', 'name' => $authorName, ]; } } $thumbEmpty = self::isEmptySchemaValue($item['thumbnailUrl'] ?? null); $imageEmpty = self::isEmptySchemaValue($item['image'] ?? null); if ($thumbEmpty && $imageEmpty) { $og = self::extractPageOgImagePath($pageData); if ($og !== null && $og !== '') { $item['thumbnailUrl'] = $og; } } if (!empty($pageData->catid) && self::isEmptySchemaValue($item['articleSection'] ?? null)) { $section = self::loadSppbCategoryTitle((int) $pageData->catid); if ($section !== '') { $item['articleSection'] = $section; } } $created = trim((string) ($pageData->created_on ?? '')); if ($created !== '') { if (self::isEmptySchemaValue($item['dateCreated'] ?? null)) { $item['dateCreated'] = $created; } if (self::isEmptySchemaValue($item['datePublished'] ?? null)) { $item['datePublished'] = $created; } } $modified = trim((string) ($pageData->modified_on ?? $pageData->modified ?? '')); if ($modified !== '' && self::isEmptySchemaValue($item['dateModified'] ?? null)) { $item['dateModified'] = $modified; } $hits = (int) ($pageData->hits ?? 0); if ($hits > 0 && self::isEmptySchemaValue($item['interactionStatistic'] ?? null)) { $item['interactionStatistic'] = [ '@type' => 'InteractionCounter', 'interactionType' => 'https://schema.org/ReadAction', 'userInteractionCount' => $hits, ]; } self::finalizeArticleHeadlineAndName($item, $pageData, $document, $app); } elseif ($pageTitle !== '' && self::isEmptySchemaValue($item['name'] ?? null)) { $item['name'] = $pageTitle; } } private static function loadUserDisplayName(int $userId): string { if ($userId <= 0) { return ''; } try { $container = Factory::getContainer(); if ($container->has(UserFactoryInterface::class)) { $user = $container->get(UserFactoryInterface::class)->loadUserById($userId); return trim((string) ($user->name ?? '')); } } catch (\Throwable $e) { } try { $user = Factory::getUser($userId); return trim((string) ($user->name ?? '')); } catch (\Throwable $e) { return ''; } } /** * @return string|null Relative or absolute image path as stored on the page */ private static function extractPageOgImagePath(object $pageData): ?string { $og = $pageData->og_image ?? null; if ($og === null || $og === '') { return null; } if (\is_string($og) && strpos(trim($og), '{') === 0) { $decoded = json_decode($og); if (\is_object($decoded) && !empty($decoded->src)) { $og = (string) $decoded->src; } else { return null; } } if (\is_object($og) && isset($og->src)) { $og = (string) $og->src; } if (!\is_string($og)) { return null; } $og = trim($og); return $og === '' ? null : $og; } private static function loadSppbCategoryTitle(int $catId): string { if ($catId <= 0) { return ''; } try { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__categories')) ->where($db->quoteName('id') . ' = ' . (int)$catId) ->where($db->quoteName('extension') . ' = ' . $db->quote('com_sppagebuilder')) ->where($db->quoteName('published') . ' = 1'); $db->setQuery($query); return trim((string) $db->loadResult()); } catch (\Throwable $e) { return ''; } } /** * Article / BlogPosting: page Schema tab values win when set; only empty fields get fallbacks. */ private static function finalizeArticleHeadlineAndName( array &$item, object $pageData, Document $document, CMSApplication $app ): void { $formH = trim((string) ($item['headline'] ?? '')); $formN = trim((string) ($item['name'] ?? '')); if ($formH !== '' && $formN !== '') { return; } if ($formH !== '') { $item['name'] = $formH; return; } if ($formN !== '') { $item['headline'] = $formN; return; } $canonical = self::canonicalArticleHeadingFromPage($pageData, $document, $app); if ($canonical !== '') { $item['headline'] = $canonical; $item['name'] = $canonical; } } /** * Best-effort primary heading: longer of (page record title, document title with sitename stripped). */ private static function canonicalArticleHeadingFromPage(object $pageData, Document $document, CMSApplication $app): string { $fromRecord = trim((string) ($pageData->title ?? '')); $rawDoc = trim(html_entity_decode(strip_tags((string) $document->getTitle()), ENT_QUOTES | ENT_HTML5, 'UTF-8')); $fromDoc = self::stripSitenameFromDocumentTitle($rawDoc, $app); if ($fromRecord === '') { return $fromDoc; } if ($fromDoc === '') { return $fromRecord; } return self::stringCharLength($fromRecord) >= self::stringCharLength($fromDoc) ? $fromRecord : $fromDoc; } private static function stripSitenameFromDocumentTitle(string $docTitle, CMSApplication $app): string { if ($docTitle === '') { return ''; } $site = trim((string) $app->get('sitename', '')); if ($site === '') { return $docTitle; } $suffix = ' | ' . $site; $len = self::stringCharLength($suffix); if ($len > 0 && self::stringEndsWithInsensitive($docTitle, $suffix)) { return trim(self::stringSubstring($docTitle, 0, self::stringCharLength($docTitle) - $len)); } $prefix = $site . ' | '; if (self::stringStartsWithInsensitive($docTitle, $prefix)) { return trim(self::stringSubstringFrom($docTitle, self::stringCharLength($prefix))); } return $docTitle; } private static function stringCharLength(string $s): int { if (\function_exists('mb_strlen')) { return (int) mb_strlen($s, 'UTF-8'); } return \strlen($s); } private static function stringSubstring(string $s, int $start, ?int $length): string { if (\function_exists('mb_substr')) { if ($length === null) { return mb_substr($s, $start); } return mb_substr($s, $start, $length); } return $length === null ? substr($s, $start) : substr($s, $start, $length); } private static function stringSubstringFrom(string $s, int $start): string { if (\function_exists('mb_substr')) { return mb_substr($s, $start); } return substr($s, $start); } private static function stringEndsWithInsensitive(string $haystack, string $suffix): bool { $h = self::stringCharLength($haystack); $s = self::stringCharLength($suffix); if ($s === 0 || $s > $h) { return false; } return strcasecmp(self::stringSubstring($haystack, $h - $s, $s), $suffix) === 0; } private static function stringStartsWithInsensitive(string $haystack, string $prefix): bool { $p = self::stringCharLength($prefix); if ($p === 0) { return true; } return strcasecmp(self::stringSubstring($haystack, 0, $p), $prefix) === 0; } /** * ISO 8601 datetimes, CreativeWork.url, publisher + mainEntityOfPage (Schema.org / Google Article guidance). * * @param array<string,mixed> $item */ private static function ensureArticleSchemaOrgQuality(array &$item, string $schemaType, CMSApplication $app): void { if (!\in_array(strtolower($schemaType), ['article', 'blogposting'], true)) { return; } self::normalizeArticleDateTimeFields($item, $app); $item['url'] = htmlspecialchars(Uri::getInstance()->toString(), ENT_COMPAT, 'UTF-8'); $ids = self::schemaBaseIds(Uri::root()); $item['mainEntityOfPage'] = ['@id' => $ids['webPage']]; $item['publisher'] = ['@id' => $ids['organization']]; if (self::schemaTabAuthorIsUnset($item)) { $item['author'] = ['@id' => $ids['organization']]; } } /** * @param array<string,mixed> $item */ private static function normalizeArticleDateTimeFields(array &$item, CMSApplication $app): void { foreach (['dateCreated', 'datePublished', 'dateModified', 'uploadDate'] as $key) { if (!isset($item[$key]) || !\is_string($item[$key])) { continue; } $formatted = self::toSchemaOrgDateTime($item[$key], $app); if ($formatted !== null) { $item[$key] = $formatted; } } } private static function toSchemaOrgDateTime(string $raw, CMSApplication $app): ?string { $raw = trim($raw); if ($raw === '') { return null; } try { $date = Factory::getDate($raw, $app->get('offset')); return $date->format(\DateTime::ATOM); } catch (\Throwable $e) { return null; } } /** * Google recommends image on Article; mirror thumbnailUrl ↔ image when one side is missing. * * @param array<string,mixed> $item */ private static function syncArticlePrimaryImageUrls(array &$item): void { $img = $item['image'] ?? null; $thumb = $item['thumbnailUrl'] ?? null; if (\is_string($img) && trim($img) !== '' && (!\is_string($thumb) || trim($thumb) === '')) { $item['thumbnailUrl'] = $img; } elseif (\is_string($thumb) && trim($thumb) !== '' && (!\is_string($img) || trim($img) === '')) { $item['image'] = $thumb; } } /** * Port of Joomla\Plugin\System\Schemaorg\Extension\Schemaorg::cleanupSchema. * * @param array<string,mixed> $schema * * @return array<string,mixed> */ private static function cleanupSchema(array $schema): array { $result = []; foreach ($schema as $key => $value) { if (\is_array($value)) { if (!empty($value['@type'])) { if ($value['@type'] === 'ImageObject') { if (!empty($value['url'])) { $value['url'] = self::prepareImage($value['url']); } if (empty($value['url'])) { $value = []; } } elseif ($value['@type'] === 'Date') { if (!empty($value['value'])) { $value['value'] = self::prepareDate($value['value']); } if (empty($value['value'])) { $value = []; } } // Go into the array (all @type nodes, same as Joomla Schemaorg::cleanupSchema). $value = self::cleanupSchema($value); if (empty($value) || \count($value) <= 1) { $value = null; } } elseif ($key === 'genericField') { foreach ($value as $field) { if (!\is_array($field)) { continue; } $title = trim((string) ($field['genericTitle'] ?? '')); if ($title === '') { continue; } $gv = $field['genericValue'] ?? null; if ($gv === null || $gv === '') { continue; } if (\is_string($gv) && trim($gv) === '') { continue; } $result[$title] = $gv; } continue; } else { $value = self::cleanupSchema($value); if ($value === []) { $value = null; } } } if ($value === null || $value === '' || (\is_string($value) && trim($value) === '')) { continue; } if (empty($value) && $value !== 0 && $value !== false) { continue; } $result[$key] = $value; } return $result; } /** * Remove empty strings, empty lists, nulls; drop nodes that only contain @type (same hygiene as core JSON-LD output). * * @param mixed $value * * @return mixed|null */ private static function stripEmptyJsonLdDeep($value) { if (\is_string($value)) { return trim($value) === '' ? null : $value; } if ($value === null) { return null; } if (!\is_array($value)) { return $value; } if ($value === []) { return null; } if (self::isListArray($value)) { $out = []; foreach ($value as $item) { $item = self::stripEmptyJsonLdDeep($item); if ($item === null || $item === [] || $item === '') { continue; } $out[] = $item; } return $out === [] ? null : $out; } $out = []; foreach ($value as $k => $v) { $v = self::stripEmptyJsonLdDeep($v); if ($v === null || $v === '' || $v === []) { continue; } if (\is_array($v) && isset($v['@type']) && \count($v) <= 1) { continue; } $out[$k] = $v; } return $out === [] ? null : $out; } /** * @param array<mixed> $array */ private static function isListArray(array $array): bool { if ($array === []) { return true; } return \array_keys($array) === \range(0, \count($array) - 1); } /** * @param mixed $image * * @return mixed */ private static function prepareImage($image) { if (\is_array($image)) { if (\count($image) === 1 && isset($image['@id'])) { return $image; } $newImages = []; foreach ($image as $img) { $newImages[] = self::prepareImage($img); } return $newImages; } if (!\is_string($image) || $image === '') { return null; } try { $img = HTMLHelper::_('cleanImageUrl', $image); return $img->url ?? null; } catch (\Throwable $e) { return $image; } } /** * @param mixed $date * * @return mixed */ private static function prepareDate($date) { if (\is_array($date)) { if (\count($date) === 1 && isset($date['@id'])) { return $date; } $newDates = []; foreach ($date as $d) { $newDates[] = self::prepareDate($d); } return $newDates; } if (!\is_string($date) || $date === '') { return null; } try { return Factory::getDate($date)->setTime(0, 0)->format(\DateTime::ATOM); } catch (\Throwable $e) { return $date; } } private static function rootImageUrl(string $url): string { try { $img = HTMLHelper::_('cleanImageUrl', $url); return Uri::root() . ($img->url ?? ltrim($url, '/')); } catch (\Throwable $e) { return rtrim(Uri::root(), '/') . '/' . ltrim($url, '/'); } } } PKBA#]b����Dcomponents/com_sppagebuilder/dynamic-content/Site/CollectionData.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Site; use DateTime; use DateTimeZone; use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Conditions; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionDataService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use Throwable; class CollectionData { /** * The collection items. * * @var array * * @since 5.5.0 */ protected $items; /** * The limit of the collection items. * * @var int * * @since 5.5.0 */ protected $limit = 20; /** * The page of the collection items. * * @var int * * @since 5.5.0 */ protected $page = 1; /** * Id of the field to sort the collection items by. * * @var int|null * * @since 6.2.3 */ protected $sortingColumn = null; /** * The direction of the collection items. * * @var string * * @since 5.5.0 */ protected $direction = 'ASC'; /** * The current item ID. * * @var int|null * * @since 5.5.0 */ protected $currentItemId = null; /** * The total items. * * @var int * * @since 5.5.0 */ protected $totalItems = 0; /** * The primary key of the collection items. * * @var string * * @since 5.5.0 */ protected const PRIMARY_KEY = 'id'; /** * The source collection ID. * * @var int|null * * @since 6.0.0 */ protected $sourceCollectionId = null; /** * The parent item for reference filtering. * * @var array|null * * @since 6.0.0 */ protected $parentItem = null; /** * The filters to apply. * * @var object|null * * @since 6.0.0 */ protected $filters = null; /** * Class Constructor. * * @since 5.5.0 */ public function __construct() { $this->currentItemId = CollectionHelper::getCollectionItemIdFromUrl(); } /** * Set the current item ID. * This item id is use for the reference filters. * * @param int $itemId The item ID to set. * @return self * * @since 5.5.0 */ public function setCurrentItemId($itemId) { $this->currentItemId = $itemId; return $this; } /** * Set the parent item. * * @param array $parentItem The parent item to set. * @return self * * @since 6.0.0 */ public function setParentItem($parentItem) { $this->parentItem = $parentItem; return $this; } /** * Set data from outside. * * @param array $data The data to set. * @return self * * @since 5.5.0 */ public function setData($data) { $this->items = $data; return $this; } /** * Partition the filters by reference filters. * * @param object $filters The filters to partition. * @return array * * @since 5.5.0 */ public static function partitionByReferenceFilters($filters) { if (empty($filters) || empty($filters->conditions)) { return [null, null, false]; } $hasReferenceFilters = false; $conditions = Arr::make($filters->conditions); $referenceConditions = $conditions->filter(function ($condition) { return $condition->condition === Conditions::IS_INCLUDE_PARENT && !empty($condition->variable); })->toArray(); $regularConditions = $conditions->filter(function ($condition) { return $condition->condition !== Conditions::IS_INCLUDE_PARENT; })->toArray(); $referenceFilters = (object) [ 'match' => $filters->match, 'conditions' => $referenceConditions, ]; $regularFilters = (object) [ 'match' => $filters->match, 'conditions' => $regularConditions, ]; $hasReferenceFilters = !empty($referenceConditions); return [$referenceFilters, $regularFilters, $hasReferenceFilters]; } /** * Apply reference filters for all conditions. * * @param object $filters The filters to apply. * @param array $parentItem The parent item to apply the filters to. * @return array * * @since 5.5.0 */ public static function applyReferenceFiltersForMatchingAllConditions($filters, $parentItem) { if (empty($filters) || empty($filters->conditions) || empty($parentItem)) { return []; } $conditions = Arr::make($filters->conditions); $variables = $conditions->pluck('variable')->map(function($variable) { return CollectionItemsService::createFieldKey($variable); }); $referenceValues = $variables->reduce(function ($carry, $variable) use ($parentItem) { $carry[$variable] = $parentItem[$variable] ?? []; return $carry; }, []); $length = $referenceValues->count(); $counter = $referenceValues->reduce(function ($carry, $value) { foreach ($value as $item) { $carry[$item['id']] ??= 0; $carry[$item['id']]++; } return $carry; }, []); $referenceValues = $referenceValues->reduce(function ($carry, $value) { return array_merge($carry, $value); }, [])->filter(function ($value) use ($counter, $length) { return $counter[$value['id']] === $length; })->reduce(function ($carry, $value) { $carry[$value['id']] = $value; return $carry; }, [])->toArray(); return array_values($referenceValues); } /** * Apply reference filters for any conditions. * * @param object $filters The filters to apply. * @param array $parentItem The parent item to apply the filters to. * @return array * * @since 5.5.0 */ public static function applyReferenceFiltersForMatchingAnyConditions($filters, $parentItem) { if (empty($filters) || empty($filters->conditions) || empty($parentItem)) { return []; } $conditions = Arr::make($filters->conditions); $variables = $conditions->pluck('variable')->map(function($variable) { return CollectionItemsService::createFieldKey($variable); }); $referenceValues = $variables->reduce(function ($carry, $variable) use ($parentItem) { $carry[$variable] = $parentItem[$variable] ?? []; return $carry; }, []); $counter = $referenceValues->reduce(function ($carry, $value) { foreach ($value as $item) { $carry[$item['id']] ??= 0; $carry[$item['id']]++; } return $carry; }, []); $referenceValues = $referenceValues->reduce(function ($carry, $value) { return array_merge($carry, $value); }, [])->filter(function ($value) use ($counter) { return $counter[$value['id']] > 0; })->reduce(function ($carry, $value) { $carry[$value['id']] = $value; return $carry; }, [])->toArray(); return array_values($referenceValues); } /** * Set the limit. * * @param int $limit The limit to set. * @return self * * @since 5.5.0 */ public function setLimit($limit) { $this->limit = intval($limit ?: -1); return $this; } /** * Set the page. * * @param int $page The page to set. * @return self * * @since 5.5.0 */ public function setPage($page) { $this->page = (int) $page; return $this; } /** * Set the sorting column. * * @param int|null $sortingColumn The sorting column to set. * @return self * * @since 6.2.3 */ public function setSortingColumn($sortingColumn) { $this->sortingColumn = $sortingColumn; return $this; } /** * Set the direction. * * @param string $direction The direction to set. * @return self * * @since 5.5.0 */ public function setDirection($direction) { $this->direction = $direction; return $this; } /** * Set the total items count. * * @param int $count The total items count. * @return self * * @since 6.3.0 */ public function setTotalItems($count) { $this->totalItems = $count; return $this; } /** * Check a linear condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function checkLinearCondition($item, $condition, $allPaths = []) { $key = $condition->field->path ?? ''; $key = !empty($key) ? CollectionItemsService::createFieldKey($key) : $key; $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $isCaseSensitive = $condition->is_case_sensitive ?? 0; $value = $item[$key] ?? null; $fieldType = $condition->field->type ?? ''; $dateOffset = (isset($condition->date_offset) && $condition->date_offset) ? (int)$condition->date_offset : 0; $includeTime = (isset($condition->include_time) && $condition->include_time) ? $condition->include_time : 0; if (!isset($value)) { return $checker === Conditions::IS_NOT_SET; } if (is_array($value)) { foreach ($value as $singleValue) { $testValue = $singleValue; $testConditionValue = $conditionValue; if (!$isCaseSensitive) { $testValue = !empty($testValue) ? mb_strtolower($testValue, 'UTF-8') : $testValue; $testConditionValue = !empty($testConditionValue) ? mb_strtolower($testConditionValue, 'UTF-8') : $testConditionValue; } $matches = $this->checkSingleValue($testValue, $testConditionValue, $checker, $key, $item, $fieldType, $dateOffset, $includeTime); if ($matches) { return true; } } return false; } if (!$isCaseSensitive && !is_object($conditionValue)) { $value = !empty($value) ? mb_strtolower($value, 'UTF-8') : $value; $conditionValue = !empty($conditionValue) ? mb_strtolower($conditionValue, 'UTF-8') : $conditionValue; } return $this->checkSingleValue($value, $conditionValue, $checker, $key, $item, $fieldType, $dateOffset, $includeTime); } /** * Check a single value against a condition. * * @param mixed $value The value to check. * @param mixed $conditionValue The condition value to check against. * @param string $checker The condition checker. * @param string $key The field key. * @param array $item The item being checked. * @return bool * * @since 6.0.0 */ protected function checkSingleValue($value, $conditionValue, $checker, $key, $item, $fieldType = '', $dateOffset = 0, $includeTime = 0) { switch ($checker) { case Conditions::IS_SET: return isset($item[$key]); case Conditions::IS_NOT_SET: return !isset($item[$key]); case Conditions::IS_YES: return (int) $value === 1; case Conditions::IS_NO: return (int) $value === 0; case Conditions::EQUALS: if($conditionValue === 'current-date' && ($fieldType === FieldTypes::DATETIME)) { [$visitorNow, $valueDate] = $this->getComparableDates($value); if ($dateOffset !== 0) { return $this->isDateWithinOffset($valueDate, $visitorNow, $dateOffset); } if ($includeTime) { return $visitorNow === $valueDate; } return $visitorNow->format('Y-m-d') === $valueDate->format('Y-m-d'); } return $value === $conditionValue; case Conditions::NOT_EQUALS: if($conditionValue === 'current-date' && ($fieldType === FieldTypes::DATETIME)) { [$visitorNow, $valueDate] = $this->getComparableDates($value); if ($dateOffset !== 0) { return !$this->isDateWithinOffset($valueDate, $visitorNow, $dateOffset); } if ($includeTime) { return $visitorNow !== $valueDate; } return $visitorNow->format('Y-m-d') !== $valueDate->format('Y-m-d'); } return $value !== $conditionValue; case Conditions::CONTAINS: return strpos($value, $conditionValue) !== false; case Conditions::NOT_CONTAINS: return strpos($value, $conditionValue) === false; case Conditions::STARTS_WITH: return strpos($value, $conditionValue) === 0; case Conditions::NOT_STARTS_WITH: return strpos($value, $conditionValue) !== 0; case Conditions::ENDS_WITH: return substr($value, -strlen($conditionValue)) === $conditionValue; case Conditions::NOT_ENDS_WITH: return substr($value, -strlen($conditionValue)) !== $conditionValue; case Conditions::IS_GREATER_THAN: return $value > $conditionValue; case Conditions::IS_LESS_THAN: return $value < $conditionValue; case Conditions::IS_GREATER_THAN_OR_EQUAL_TO: return $value >= $conditionValue; case Conditions::IS_LESS_THAN_OR_EQUAL_TO: return $value <= $conditionValue; case Conditions::IS_BEFORE: if($conditionValue === 'current-date' && $fieldType === FieldTypes::DATETIME) { [$visitorNow, $valueDate] = $this->getComparableDates($value); if ($dateOffset !== 0) { $compareDate = clone $visitorNow; $compareDate->modify(($dateOffset > 0 ? '+' : '') . $dateOffset . ' days'); if ($includeTime) { return $valueDate < $compareDate; } return $valueDate->format('Y-m-d') < $compareDate->format('Y-m-d'); } return $valueDate < $visitorNow; } return strtotime($value) < strtotime($conditionValue); case Conditions::IS_BEFORE_OR_EQUAL: return strtotime($value) <= strtotime($conditionValue); case Conditions::IS_AFTER: if($conditionValue === 'current-date' && $fieldType === FieldTypes::DATETIME) { [$visitorNow, $valueDate] = $this->getComparableDates($value); if ($dateOffset !== 0) { $compareDate = clone $visitorNow; $compareDate->modify(($dateOffset > 0 ? '+' : '') . $dateOffset . ' days'); if ($includeTime) { return $valueDate > $compareDate; } return $valueDate->format('Y-m-d') > $compareDate->format('Y-m-d'); } return $valueDate > $visitorNow; } return strtotime($value) > strtotime($conditionValue); case Conditions::IS_AFTER_OR_EQUAL: return strtotime($value) >= strtotime($conditionValue); case Conditions::IS_BETWEEN_DATE: if(!isset($conditionValue->from) || !isset($conditionValue->to)) { return false; } $valueDate = date('Y-m-d', strtotime($value)); $fromDate = date('Y-m-d', strtotime($conditionValue->from)); $toDate = date('Y-m-d', strtotime($conditionValue->to)); return strtotime($valueDate) >= strtotime($fromDate) && strtotime($valueDate) <= strtotime($toDate); case Conditions::IS_NOT_BETWEEN_DATE: return strtotime($value) < strtotime($conditionValue[0]) || strtotime($value) > strtotime($conditionValue[1]); default: return true; } } /** * Get comparable dates for date-time field type. * * @param string $value The date value to compare. * @return array An array containing visitor's current date and the value date in visitor's timezone. * * @since 6.2.3 */ protected function getComparableDates($value){ $app = Factory::getApplication(); $visitorTimeZone = $app->input->cookie->get( 'sppb_user_timezone', 'UTC', 'STRING' ); if(!$visitorTimeZone){ $visitorTimeZone = 'UTC'; } $serverTZ = new DateTimeZone(Factory::getConfig()->get('offset', 'UTC')); $visitorTZ = new DateTimeZone($visitorTimeZone); $visitorNow = new DateTime('now', $visitorTZ); $valueDate = new DateTime($value, $serverTZ); $valueDate->setTimezone($visitorTZ); return [$visitorNow, $valueDate]; } /** * Check if a value date is within the current date plus offset range. * * @param DateTime $valueDate The value date in visitor timezone. * @param DateTime $visitorNow The current date in visitor timezone. * @param int $dateOffset The date offset in days. * @return bool * * @since 6.5.0 */ protected function isDateWithinOffset(DateTime $valueDate, DateTime $visitorNow, int $dateOffset) { $startDate = clone $visitorNow; $endDate = clone $visitorNow; if ($dateOffset !== 0) { $endDate->modify(($dateOffset > 0 ? '+' : '') . $dateOffset . ' days'); } if ($endDate < $startDate) { $temp = $startDate; $startDate = $endDate; $endDate = $temp; } $startDate->setTime(0, 0, 0); $endDate->setTime(23, 59, 59); return $valueDate >= $startDate && $valueDate <= $endDate; } /** * Check a non-linear condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function checkNonLinearCondition($item, $condition) { $fieldType = $condition->field->type ?? ''; if (empty($fieldType) || !in_array($fieldType, ['self', 'reference', 'multi-reference'])) { return false; } if ($fieldType === 'self') { return $this->checkForSelfReference($item, $condition); } if ($fieldType === 'multi-reference') { return $this->checkForMultiReference($item, $condition); } return $this->checkForSingleReference($item, $condition); } /** * Check for multi-reference condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function checkForMultiReference($item, $condition) { $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $referenceItemIds = $this->getReferenceItemIdList($item['id'], $condition->field->id); if (empty($referenceItemIds)) { return false; } switch ($checker) { case Conditions::IS_INCLUDE: return count(array_intersect($conditionValue, $referenceItemIds)) > 0; case Conditions::IS_NOT_INCLUDE: return count(array_intersect($conditionValue, $referenceItemIds)) === 0; case Conditions::EQUALS_IN_REFERENCE: return in_array($conditionValue, $referenceItemIds); case Conditions::NOT_EQUALS_IN_REFERENCE: return !in_array($conditionValue, $referenceItemIds); case Conditions::IS_ASSOCIATED_WITH: return in_array($this->currentItemId, $referenceItemIds); } } /** * Get the reference item ID. * * @param int $itemId The item ID. * @param int $fieldId The field ID. * @return int|null * * @since 5.5.0 */ protected function getReferenceItemId($itemId, $fieldId) { $value = CollectionItemValue::where('item_id', $itemId) ->where('field_id', $fieldId) ->first(['reference_item_id']); if ($value->isEmpty()) { return null; } return $value->reference_item_id ?? null; } /** * Get the reference item ID list. * * @param int $itemId The item ID. * @param int $fieldId The field ID. * @return array * * @since 5.5.0 */ protected function getReferenceItemIdList($itemId, $fieldId) { $values = CollectionItemValue::where('item_id', $itemId) ->where('field_id', $fieldId) ->get(['reference_item_id']); if (empty($values)) { return []; } return Arr::make($values)->pluck('reference_item_id')->toArray(); } /** * Check for single-reference condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function checkForSingleReference($item, $condition) { $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $referenceItemId = $this->getReferenceItemId($item['id'], $condition->field->id); if (empty($referenceItemId)) { return false; } switch ($checker) { case Conditions::IS_INCLUDE: return in_array($referenceItemId, $conditionValue); case Conditions::IS_NOT_INCLUDE: return !in_array($referenceItemId, $conditionValue); case Conditions::EQUALS_IN_REFERENCE: return (int) $referenceItemId === (int) $conditionValue; case Conditions::NOT_EQUALS_IN_REFERENCE: return (int) $referenceItemId !== (int) $conditionValue; case Conditions::IS_ASSOCIATED_WITH: return (int) $referenceItemId === (int) $this->currentItemId; } } /** * Check for self-reference condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function checkForSelfReference($item, $condition) { $key = static::PRIMARY_KEY; $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $value = $item[$key] ?? null; if ($checker === Conditions::RELATED) { return $this->checkRelatedCondition($item, $condition, $this->parentItem); } if (empty($value) || !is_array($conditionValue)) { return false; } switch ($checker) { case Conditions::IS_INCLUDE: return in_array($value, $conditionValue); case Conditions::IS_NOT_INCLUDE: return !in_array($value, $conditionValue); } } /** * Check related condition for details pages. * This condition filters items based on matching field values with the current details page item. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 6.0.0 */ protected function checkRelatedCondition($item, $condition, $parentItem = null) { $associatedFieldPath = $condition->variable ?? ''; if (empty($associatedFieldPath)) { return false; } if ($item['collection_id'] !== CollectionIds::ARTICLES_COLLECTION_ID) { $currentItem = $this->getCurrentDetailsPageItem(); if (empty($currentItem) || $item['id'] === $currentItem['id']) { return false; } if(isset($condition->reference_type) && $condition->reference_type === FieldTypes::REFERENCE){ $referenceField = CollectionItemValue::where('field_id', $associatedFieldPath) ->where('item_id', $currentItem['id']) ->first(['reference_item_id']); $currentItemValue = empty($referenceField) ? null : ($referenceField->reference_item_id ?? null); if (empty($currentItemValue)) { return false; } $referenceFieldValue = $item['reference_store']['field_' . $associatedFieldPath] ?? null; if (empty($referenceFieldValue)) { return false; } return $currentItemValue == $referenceFieldValue; } if(isset($condition->reference_type) && $condition->reference_type === FieldTypes::MULTI_REFERENCE){ $match = isset($condition->match_multi_reference) ? $condition->match_multi_reference : 'all'; $rereferenceFields = CollectionItemValue::where('field_id', $associatedFieldPath) ->where('item_id', $currentItem['id']) ->get(['reference_item_id']); $currentItemValues = empty($rereferenceFields) ? [] : Arr::make($rereferenceFields)->pluck('reference_item_id')->toArray(); if (empty($currentItemValues)) { return false; } $referenceFieldValues = $item['multi_reference_store']['field_' . $associatedFieldPath] ?? null; if (empty($referenceFieldValues)) { return false; } $currentItemValues = array_values(array_unique($currentItemValues)); $referenceFieldValues = is_array($referenceFieldValues) ? $referenceFieldValues : [$referenceFieldValues]; $referenceFieldValues = array_values(array_unique($referenceFieldValues)); $matchedValues = array_intersect($currentItemValues, $referenceFieldValues); if ($match === 'all') { return count($matchedValues) === count($currentItemValues) && count($matchedValues) === count($referenceFieldValues); } return !empty($matchedValues); } $currentItemValue = $this->getFieldValueFromItem($currentItem, $associatedFieldPath); if ($currentItemValue === null) { return false; } $itemValue = $this->getFieldValueFromItem($item, $associatedFieldPath); if ($itemValue === null) { return false; } return $currentItemValue == $itemValue; } elseif ($item['collection_id'] === CollectionIds::ARTICLES_COLLECTION_ID) { $currentItem = $this->getArticlesDetailsPageItem($parentItem); if (empty($currentItem) || $item['id'] === $currentItem['id']) { return false; } $articleFields = (new CollectionsService)->fetchArticleFields(); $articleField = array_values(array_filter($articleFields, function ($field) use ($associatedFieldPath) { return $field['id'] == $associatedFieldPath; })); $associatedFieldPath = !empty($articleField[0]['path']) ? $articleField[0]['path'] : null; if (empty($associatedFieldPath)) { return false; } $currentItemValue = $this->getArticleFieldValueFromItem($currentItem, $associatedFieldPath); if (empty($currentItemValue)) { return false; } $itemValue = $this->getArticleFieldValueFromItem($item, $associatedFieldPath); if (empty($itemValue)) { return false; } return $currentItemValue == $itemValue; } } /** * Get the article field value from item. * * @param array $item The item to get value from. * @param string $fieldPath The field path. * @return mixed The field value or null if not found. */ protected function getArticleFieldValueFromItem($item, $fieldPath) { if (empty($fieldPath) || empty($item)) { return null; } if (empty($item[$fieldPath])) { return null; } return $item[$fieldPath]; } /** * Get the articles details page item. * * @param int $itemId The item ID. * @return array|null The articles details page item or null if not available. * * @since 6.0.0 */ protected function getArticlesDetailsPageItem($parentItem = null) { $currentItemId = $this->currentItemId ?? null; if (empty($currentItemId) && !empty($parentItem)) { $currentItemId = $parentItem['id']; } if (empty($currentItemId)) { return null; } if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } $articlesCount = \SppagebuilderHelperArticles::getArticlesCount(); $articles = \SppagebuilderHelperArticles::getArticles($articlesCount); $articles = array_values(array_filter($articles, function ($article) use ($currentItemId) { return $article->id == $currentItemId; })); $articles = !empty($articles[0]) ? $articles[0] : null; $articles = (array) $articles; return $articles; } /** * Get the current details page item. * * @return array|null The current details page item or null if not available. * * @since 6.0.0 */ protected function getCurrentDetailsPageItem() { if (empty($this->currentItemId) && empty($this->parentItem)) { return null; } if (empty($this->currentItemId) && !empty($this->parentItem)) { return $this->parentItem; } try { $service = new \JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionDataService(); return $service->fetchCollectionItemById($this->currentItemId); } catch (\Exception $e) { return null; } } /** * Get field value from an item by field path. * * @param array $item The item to get value from. * @param string $fieldPath The field path. * @return mixed The field value or null if not found. * * @since 6.0.0 */ protected function getFieldValueFromItem($item, $fieldPath) { $fieldPath = CollectionItemsService::createFieldKey($fieldPath); if (empty($fieldPath) || empty($item)) { return null; } if (isset($item[$fieldPath])) { return $item[$fieldPath]; } $pathParts = explode('.', $fieldPath); $value = $item; foreach ($pathParts as $part) { if (is_array($value) && isset($value[$part])) { $value = $value[$part]; } else { return null; } } return $value; } /** * Check a condition. * * @param array $item The item to check. * @param object $condition The condition to check. * @return bool * * @since 5.5.0 */ protected function check($item, $condition, $allPaths) { $checker = $condition->condition ?? ''; if (in_array($checker, Conditions::getLinearConditions())) { return $this->checkLinearCondition($item, $condition, $allPaths); } return $this->checkNonLinearCondition($item, $condition); } /** * Check if the item matches all conditions. * * @param array $item The item to check. * @param array $conditions The conditions to check. * @return bool * * @since 5.5.0 */ protected function isMatchForAllConditions($item, $conditions, $allPaths = []) { $shouldPick = true; foreach ($conditions as $condition) { $shouldPick = $shouldPick && static::check($item, $condition, $allPaths); } return $shouldPick; } /** * Check if the item matches any conditions. * * @param array $item The item to check. * @param array $conditions The conditions to check. * @return bool * * @since 5.5.0 */ protected function isMatchForAnyConditions($item, $conditions, $allPaths = []) { $shouldPick = false; foreach ($conditions as $condition) { $shouldPick = $shouldPick || static::check($item, $condition, $allPaths); } return $shouldPick; } /** * Load data by source. * * @param int $collectionId The collection ID to load data from. * @return self * * @since 5.5.0 */ public function loadDataBySource($collectionId) { try { $items = (new CollectionDataService)->fetchCollectionItems($collectionId, $this->direction, $this->sortingColumn); } catch (Throwable $error) { $items = []; } $this->items = $items; // Set the item count before slicing by limit. $this->totalItems = count($items); return $this; } /** * Apply filters to the data. * * @param object $filters The filters to apply. * @return self * * @since 5.5.0 */ public function applyFilters($filters, $allPaths = []) { $items = $this->items; if (empty($filters)) { return $this; } $match = $filters->match ?? Conditions::MATCH_ALL; $conditions = $filters->conditions ?? []; if (empty($conditions)) { return $this; } $items = Arr::make($items)->filter(function ($item) use ($conditions, $match, $allPaths) { return $match === Conditions::MATCH_ALL ? $this->isMatchForAllConditions($item, $conditions, $allPaths) : $this->isMatchForAnyConditions($item, $conditions, $allPaths); })->toArray(); $this->items = $items; // Set the item count before slicing by limit. $this->totalItems = count($items); return $this; } public function applyUserFilters($allPaths = [], $currentLink = '', $resume = true) { if (empty($resume)) { return $this; } $items = $this->items; $query = !empty($currentLink) ? $currentLink : Uri::getInstance()->getQuery(); parse_str($query, $query); $queryArray = array_filter($query, function ($key) { return strpos($key, 'dc_filter_') === 0; }, ARRAY_FILTER_USE_KEY); $match = Conditions::MATCH_ANY; $conditions = []; foreach ($queryArray as $key => $value) { $fieldPath = str_replace('dc_filter_', '', $key); $values = array_map('trim', explode(',', $value)); foreach ($values as $val) { if ($val === '') continue; if (strpos($val, 'l-r') !== false) { $range = array_map('trim', explode('l-r', $val)); if (count($range) === 2 && is_numeric($range[0]) && is_numeric($range[1])) { $min = $range[0]; $max = $range[1]; $match = Conditions::MATCH_ALL; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_GREATER_THAN_OR_EQUAL_TO, 'value' => $min, 'is_case_sensitive' => 1, ]; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_LESS_THAN_OR_EQUAL_TO, 'value' => $max, 'is_case_sensitive' => 1, ]; continue; } } if (strpos($val, 'l-to-r') !== false) { $range = array_map('trim', explode('l-to-r', $val)); $datePattern = '/^\d{4}-\d{2}-\d{2}$/'; if (count($range) === 2 && preg_match($datePattern, $range[0]) && preg_match($datePattern, $range[1])) { $min = $range[0]; $max = $range[1]; $match = Conditions::MATCH_ALL; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_AFTER_OR_EQUAL, 'value' => $min, 'is_case_sensitive' => 1, ]; $endDate = $max; $max = $endDate . ' 23:59:59'; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_BEFORE_OR_EQUAL, 'value' => $max, 'is_case_sensitive' => 1, ]; continue; } } if (strpos($val, 'dateval-') !== false) { $dateVal = array_map('trim', explode('dateval-', $val)); $datePattern = '/^\d{4}-\d{2}-\d{2}$/'; if (!empty($dateVal) && count($dateVal) === 2 && empty($dateVal[0]) && !empty($dateVal[1]) && preg_match($datePattern, $dateVal[1])) { $dateVal = $dateVal[1]; if (preg_match($datePattern, $dateVal)) { $min = $dateVal . ' 00:00:00'; $max = $dateVal . ' 23:59:59'; $match = Conditions::MATCH_ALL; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_AFTER_OR_EQUAL, 'value' => $min, 'is_case_sensitive' => 1, ]; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::IS_BEFORE_OR_EQUAL, 'value' => $max, 'is_case_sensitive' => 1, ]; continue; } } } $match = Conditions::MATCH_ANY; $conditions[] = (object)[ 'field' => (object)[ 'path' => $fieldPath, ], 'condition' => Conditions::EQUALS, 'value' => $val, 'is_case_sensitive' => 1, ]; } if (empty($conditions)) { continue; } $db = Factory::getDbo(); $query = $db->getQuery(true) ->select([ 'a.item_id AS original_item_id', 'a.reference_item_id', 'b.field_id', 'b.value' ]) ->from($db->quoteName('#__sppagebuilder_collection_item_values', 'a')) ->join('INNER', $db->quoteName('#__sppagebuilder_collection_item_values', 'b') . ' ON a.reference_item_id = b.item_id') ->where('a.reference_item_id IS NOT NULL') ->where('a.reference_item_id != 0'); $db->setQuery($query); $results = $db->loadAssocList(); $referenceMap = []; foreach ($results as $result) { $itemId = $result['original_item_id']; $refId = $result['reference_item_id']; $fieldId = $result['field_id']; $value = $result['value']; if (!isset($referenceMap[$itemId]['references'][$refId])) { $referenceMap[$itemId]['references'][$refId] = []; } $referenceMap[$itemId]['references'][$refId][$fieldId] = $value; } $itemToReferenceFieldsMap = []; foreach (array_keys($referenceMap) as $itemId) { $visited = []; $itemToReferenceFieldsMap[$itemId] = $this->accumulateReferenceFields($itemId, $referenceMap, $visited); } $items = Arr::make($items)->filter(function ($item) use ($conditions, $match, $allPaths, $itemToReferenceFieldsMap) { if($item['id'] && isset($itemToReferenceFieldsMap[$item['id']])){ foreach ($itemToReferenceFieldsMap[$item['id']] as $fieldId => $value) { $fieldKey = CollectionItemsService::createFieldKey($fieldId); if (!isset($item[$fieldKey])) { $item[$fieldKey] = $value; } } } return $match === Conditions::MATCH_ALL ? $this->isMatchForAllConditions($item, $conditions, $allPaths) : $this->isMatchForAnyConditions($item, $conditions, $allPaths); })->toArray(); $conditions = []; } $this->items = $items; $this->totalItems = count($items); return $this; } private function accumulateReferenceFields($itemId, &$referenceMap, &$visited = []) { if (isset($visited[$itemId])) { return []; } $visited[$itemId] = true; $allFields = []; if (isset($referenceMap[$itemId]['references'])) { foreach ($referenceMap[$itemId]['references'] as $refId => $fields) { foreach ($fields as $fieldId => $value) { if (isset($allFields[$fieldId])) { if (!is_array($allFields[$fieldId])) { $allFields[$fieldId] = [$allFields[$fieldId]]; } $allFields[$fieldId][] = $value; } else { $allFields[$fieldId] = $value; } } $nestedFields = $this->accumulateReferenceFields($refId, $referenceMap, $visited); foreach ($nestedFields as $fieldId => $value) { if (isset($allFields[$fieldId])) { if (!is_array($allFields[$fieldId])) { $allFields[$fieldId] = [$allFields[$fieldId]]; } if (is_array($value)) { $allFields[$fieldId] = array_merge($allFields[$fieldId], $value); } else { $allFields[$fieldId][] = $value; } } else { $allFields[$fieldId] = $value; } } } } return $allFields; } public function applyUserSearchFilters($collectionId, $path, $allPaths = [], $currentLink = '', $resume = true) { if (empty($resume)) { return $this; } $items = $this->items; $query = !empty($currentLink) ? $currentLink : Uri::getInstance()->getQuery(); parse_str($query, $query); $queryArray = array_filter($query, function ($key) { return strpos($key, 'dc_query_') === 0; }, ARRAY_FILTER_USE_KEY); $queryArray = array_filter($queryArray, function ($value, $key) use ($collectionId) { return str_replace('dc_query_', '', $key) == $collectionId; }, ARRAY_FILTER_USE_BOTH); $matchedValue = null; foreach ($queryArray as $key => $value) { if (str_replace('dc_query_', '', $key) == $collectionId) { $matchedValue = (object) [ $key => $value, ]; break; } } if (empty($matchedValue)) { return $this; } $queryArray = $matchedValue; $cId = str_replace('dc_query_', '', array_keys(get_object_vars($queryArray))[0]); $searchValue = array_values(get_object_vars($queryArray))[0]; $match = Conditions::MATCH_ANY; $conditions = []; $collectionSchema = (new CollectionsService)->fetchCollectionSchema($cId ?? -1); $collectionFields = array_map(function ($field) { return $field->getItem()->id; }, $collectionSchema); $appliedFields = array_values(array_intersect($collectionFields, $path)); foreach ($appliedFields as $key => $value) { $conditions[] = (object)[ 'field' => (object)[ 'path' => $value, ], 'condition' => Conditions::CONTAINS, 'value' => $searchValue, ]; } if (empty($conditions)) { return $this; } $items = Arr::make($items)->filter(function ($item) use ($conditions, $match, $allPaths) { return $match === Conditions::MATCH_ALL ? $this->isMatchForAllConditions($item, $conditions, $allPaths) : $this->isMatchForAnyConditions($item, $conditions, $allPaths); })->toArray(); $this->items = $items; $this->totalItems = count($items); return $this; } /** * Apply filtering for articles or tags sources * * @param int $source The source type (-2 for articles, -3 for tags) * @param array|null $parentItem The parent item for context filtering * @param object|null $filters The filter settings to apply * @return self * * @since 6.0.0 */ public function applyArticleOrTagsFilter($source, $parentItem = null, $filters = null) { $this->sourceCollectionId = $source; $this->parentItem = $parentItem; $this->filters = $filters; if (empty($this->items) || empty($filters)) { return $this; } $match = $filters->match ?? Conditions::MATCH_ALL; $conditions = $filters->conditions ?? []; if (empty($conditions)) { return $this; } $this->items = Arr::make($this->items)->filter(function ($item) use ($conditions, $match, $parentItem) { return $match === Conditions::MATCH_ALL ? $this->isMatchForAllConditionsArticlesTags($item, $conditions, $parentItem) : $this->isMatchForAnyConditionsArticlesTags($item, $conditions, $parentItem); })->toArray(); $this->totalItems = count($this->items); return $this; } /** * Check if an item matches all conditions * * @param array $item The item to check * @param array $conditions The conditions to check * @param array $parentItem The parent item for reference context * @return bool Whether all conditions are met * * @since 6.0.0 */ protected function isMatchForAllConditionsArticlesTags($item, $conditions, $parentItem = null) { $shouldPick = true; foreach ($conditions as $condition) { $shouldPick = $shouldPick && $this->checkArticleTagCondition($item, $condition, $parentItem); } return $shouldPick; } /** * Check if an item matches any conditions * * @param array $item The item to check * @param array $conditions The conditions to check * @param array $parentItem The parent item for reference context * @return bool Whether any condition is met * * @since 6.0.0 */ protected function isMatchForAnyConditionsArticlesTags($item, $conditions, $parentItem = null) { $shouldPick = false; foreach ($conditions as $condition) { $shouldPick = $shouldPick || $this->checkArticleTagCondition($item, $condition, $parentItem); } return $shouldPick; } /** * Check a condition for items * * @param array $item The item to check * @param object $condition The condition to check * @param array $parentItem The parent item for reference context * @return bool Whether the condition is met * * @since 6.0.0 */ protected function checkArticleTagCondition($item, $condition, $parentItem = null) { $checker = $condition->condition ?? ''; if (in_array($checker, Conditions::getLinearConditions())) { return $this->checkLinearConditionArticlesTags($item, $condition); } return $this->checkNonLinearConditionArticlesTags($item, $condition, $parentItem); } /** * Check a linear condition for items * * @param array $item The item to check * @param object $condition The condition to check * @return bool Whether the condition is met * * @since 6.0.0 */ protected function checkLinearConditionArticlesTags($item, $condition) { $key = $condition->field->path ?? ''; $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $isCaseSensitive = $condition->is_case_sensitive ?? 0; $value = $this->getArticleTagFieldValue($item, $key); if (!isset($value)) { if (in_array($checker, [Conditions::IS_SET, Conditions::IS_NOT_SET])) { return $checker === Conditions::IS_NOT_SET; } return false; } if (!$isCaseSensitive && is_string($value) && is_string($conditionValue)) { $value = mb_strtolower($value, 'UTF-8'); $conditionValue = mb_strtolower($conditionValue, 'UTF-8'); } switch ($checker) { case Conditions::IS_SET: return isset($value); case Conditions::IS_NOT_SET: return !isset($value); case Conditions::IS_YES: return (int) $value === 1; case Conditions::IS_NO: return (int) $value === 0; case Conditions::EQUALS: return $value == $conditionValue; case Conditions::NOT_EQUALS: return $value != $conditionValue; case Conditions::CONTAINS: return is_string($value) && is_string($conditionValue) && strpos($value, $conditionValue) !== false; case Conditions::NOT_CONTAINS: return is_string($value) && is_string($conditionValue) && strpos($value, $conditionValue) === false; case Conditions::STARTS_WITH: return is_string($value) && is_string($conditionValue) && strpos($value, $conditionValue) === 0; case Conditions::NOT_STARTS_WITH: return is_string($value) && is_string($conditionValue) && strpos($value, $conditionValue) !== 0; case Conditions::ENDS_WITH: return is_string($value) && is_string($conditionValue) && substr($value, -strlen($conditionValue)) === $conditionValue; case Conditions::NOT_ENDS_WITH: return is_string($value) && is_string($conditionValue) && substr($value, -strlen($conditionValue)) !== $conditionValue; case Conditions::IS_GREATER_THAN: return is_numeric($value) && is_numeric($conditionValue) && $value > $conditionValue; case Conditions::IS_LESS_THAN: return is_numeric($value) && is_numeric($conditionValue) && $value < $conditionValue; case Conditions::IS_GREATER_THAN_OR_EQUAL_TO: return is_numeric($value) && is_numeric($conditionValue) && $value >= $conditionValue; case Conditions::IS_LESS_THAN_OR_EQUAL_TO: return is_numeric($value) && is_numeric($conditionValue) && $value <= $conditionValue; case Conditions::IS_BEFORE: return strtotime($value) < strtotime($conditionValue); case Conditions::IS_BEFORE_OR_EQUAL: return strtotime($value) <= strtotime($conditionValue); case Conditions::IS_AFTER: return strtotime($value) > strtotime($conditionValue); case Conditions::IS_AFTER_OR_EQUAL: return strtotime($value) >= strtotime($conditionValue); default: return false; } } /** * Check a non-linear condition for items * * @param array $item The item to check * @param object $condition The condition to check * @param array $parentItem The parent item for reference context * @return bool Whether the condition is met * * @since 6.0.0 */ protected function checkNonLinearConditionArticlesTags($item, $condition, $parentItem = null) { $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; $fieldType = $condition->field->type ?? ''; switch ($checker) { case Conditions::IS_INCLUDE: if ($fieldType === 'self') { return is_array($conditionValue) && in_array($item['id'], $conditionValue); } return $this->checkArticleTagReferenceCondition($item, $condition, $parentItem); case Conditions::IS_NOT_INCLUDE: if ($fieldType === 'self') { return !is_array($conditionValue) || !in_array($item['id'], $conditionValue); } return !$this->checkArticleTagReferenceCondition($item, $condition, $parentItem); case Conditions::IS_INCLUDE_PARENT: return $this->checkParentChildRelationship($item, $parentItem); case Conditions::EQUALS_IN_REFERENCE: case Conditions::NOT_EQUALS_IN_REFERENCE: return $this->checkArticleTagReferenceCondition($item, $condition, $parentItem); case Conditions::IS_ASSOCIATED_WITH: return $this->checkArticleTagAssociation($item, $condition, $parentItem); case Conditions::RELATED: return $this->checkArticleTagRelatedCondition($item, $condition, $parentItem); default: return false; } } /** * Check related condition for items * * @param array $item The item to check * @param object $condition The condition to check * @return bool Whether the condition is met */ protected function checkArticleTagRelatedCondition($item, $condition, $parentItem = null) { return $this->checkRelatedCondition($item, $condition, $parentItem); } /** * Get field value from item * * @param array $item The item to get value from * @param string $fieldPath The field path * @return mixed The field value * * @since 6.0.0 */ protected function getArticleTagFieldValue($item, $fieldPath) { if (empty($fieldPath)) { return null; } if (isset($item[$fieldPath])) { return $item[$fieldPath]; } $pathParts = explode('.', $fieldPath); $value = $item; foreach ($pathParts as $part) { if (is_array($value) && isset($value[$part])) { $value = $value[$part]; } else { return null; } } return $value; } /** * Check reference condition for items * * @param array $item The item to check * @param object $condition The condition to check * @param array $parentItem The parent item for reference context * @return bool Whether the condition is met * * @since 6.0.0 */ protected function checkArticleTagReferenceCondition($item, $condition, $parentItem = null) { $conditionValue = $condition->value ?? ''; $checker = $condition->condition ?? ''; if ($this->sourceCollectionId === CollectionIds::ARTICLES_COLLECTION_ID && !empty($parentItem) && $parentItem['collection_id'] === CollectionIds::TAGS_COLLECTION_ID) { $articleId = $parentItem['id']; return $this->isTagAssociatedWithArticle($item['id'], $articleId); } if ($this->sourceCollectionId === CollectionIds::TAGS_COLLECTION_ID && !empty($parentItem) && $parentItem['collection_id'] === CollectionIds::ARTICLES_COLLECTION_ID) { $tagId = $parentItem['id']; return $this->isArticleAssociatedWithTag($item['id'], $tagId); } return false; } /** * Check association condition for items * * @param array $item The item to check * @param object $condition The condition to check * @param array $parentItem The parent item for reference context * @return bool Whether the association exists * * @since 6.0.0 */ protected function checkArticleTagAssociation($item, $condition, $parentItem = null) { if (empty($parentItem)) { return false; } $currentItemId = $this->currentItemId; if (empty($currentItemId)) { return false; } if ($this->sourceCollectionId === CollectionIds::TAGS_COLLECTION_ID) { return $this->isArticleAssociatedWithTag($currentItemId, $item['id']); } if ($this->sourceCollectionId === CollectionIds::ARTICLES_COLLECTION_ID) { return $this->isTagAssociatedWithArticle($item['id'], $currentItemId); } return false; } /** * Check parent-child relationship between items * * @param array $item The child item to check * @param array|null $parentItem The parent item for reference * @return bool Whether the relationship exists * * @since 6.0.0 */ protected function checkParentChildRelationship($item, $parentItem) { if (empty($parentItem) || empty($item)) { return false; } $childCollectionId = $item['collection_id'] ?? null; $parentCollectionId = $parentItem['collection_id'] ?? null; if ($childCollectionId === CollectionIds::TAGS_COLLECTION_ID && $parentCollectionId === CollectionIds::ARTICLES_COLLECTION_ID) { return $this->isTagAssociatedWithArticle($item['id'], $parentItem['id']); } if ($childCollectionId === CollectionIds::ARTICLES_COLLECTION_ID && $parentCollectionId === CollectionIds::TAGS_COLLECTION_ID) { return $this->isArticleAssociatedWithTag($item['id'], $parentItem['id']); } return false; } /** * Check if multiple reference condition exists * * @param array $conditions The conditions to check * @param array $parentItem The parent item * @return bool Whether the condition exists * * @since 6.0.0 */ protected function checkArticleMultiReferenceCondition($conditions, $parentItem) { foreach ($conditions as $condition) { $conditionType = $condition->condition ?? ''; $conditionFieldType = $condition->field->type ?? ''; if ($conditionType === Conditions::IS_INCLUDE_PARENT && $conditionFieldType === 'self') { return true; } } return false; } /** * Filter items by parent item * * @param array $tags The items to filter * @param array $parentArticle The parent item * @return array Filtered items * * @since 6.0.0 */ protected function filterTagsByParentArticle($tags, $parentArticle) { if (empty($tags) || empty($parentArticle) || !isset($parentArticle['id'])) { return $tags; } $articleId = $parentArticle['id']; $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('tag_id') ->from('#__contentitem_tag_map') ->where('content_item_id = ' . (int) $articleId) ->where('type_alias = ' . $db->quote('com_content.article')); $db->setQuery($query); try { $articleTagIds = $db->loadColumn(); if (empty($articleTagIds)) { return []; } return array_filter($tags, function($tag) use ($articleTagIds) { return in_array($tag['id'], $articleTagIds); }); } catch (\Exception $e) { return $tags; } } /** * Check if item is associated with another item * * @param int $tagId The item ID * @param int $articleId The other item ID * @return bool Whether association exists * * @since 6.0.0 */ protected function isTagAssociatedWithArticle($tagId, $articleId) { if (empty($tagId) || empty($articleId)) { return false; } $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from('#__contentitem_tag_map') ->where('content_item_id = ' . (int) $articleId) ->where('tag_id = ' . (int) $tagId) ->where('type_alias = ' . $db->quote('com_content.article')); $db->setQuery($query); try { $count = $db->loadResult(); return $count > 0; } catch (\Exception $e) { return false; } } /** * Check if item is associated with another item * * @param int $articleId The item ID * @param int $tagId The other item ID * @return bool Whether association exists * * @since 6.0.0 */ protected function isArticleAssociatedWithTag($articleId, $tagId) { if (empty($articleId) || empty($tagId)) { return false; } $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from('#__contentitem_tag_map') ->where('content_item_id = ' . (int) $articleId) ->where('tag_id = ' . (int) $tagId) ->where('type_alias = ' . $db->quote('com_content.article')); $db->setQuery($query); try { $count = $db->loadResult(); return $count > 0; } catch (\Exception $e) { return false; } } /** * Load data by source for special collections * * @param int $collectionId The collection ID * @return self * * @since 6.0.0 */ public function loadDataBySourceForArticlesTags($collectionId) { try { if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID) { $items = $this->fetchArticleItems($this->limit, $this->direction, -1); } elseif ($collectionId === CollectionIds::TAGS_COLLECTION_ID) { $items = $this->fetchTagItems($this->limit, $this->direction); } else { $items = []; } } catch (Throwable $error) { $items = []; } $this->items = $items; $this->totalItems = count($items); return $this; } /** * Fetch items from source * * @param int $limit The limit * @param string $direction The direction * @return array The items * * @since 6.0.0 */ protected function fetchArticleItems($limit, $direction, $page = 1) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } try { $ordering = strtoupper($direction) === 'DESC' ? 'latest' : 'oldest'; $articles = \SppagebuilderHelperArticles::getArticles(\SppagebuilderHelperArticles::getArticlesCount(), $ordering, '', true, '', [], 1, $page); return array_map(function ($article) { $article->collection_id = CollectionIds::ARTICLES_COLLECTION_ID; $article->introtext = $article->introtext ?? ''; $article->fulltext = $article->fulltext ?? ''; $article->featured_image = $article->featured_image ?? ''; $article->image_thumbnail = $article->image_thumbnail ?? $article->featured_image ?? ''; $article->username = $article->username ?? ''; $article->category = $article->category ?? ''; return (array) $article; }, $articles); } catch (\Exception $e) { return []; } } /** * Fetch items from source * * @param int $limit The limit * @param string $direction The direction * @return array The items * * @since 6.0.0 */ protected function fetchTagItems($limit, $direction) { try { // Allow-list the ORDER BY direction to avoid SQL injection. $safeDirection = strtoupper((string) $direction) === 'DESC' ? 'DESC' : 'ASC'; $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__tags') ->where('published = 1') ->order('title ' . $safeDirection); $db->setQuery($query, 0, $limit); $tags = $db->loadObjectList(); return array_map(function ($tag) { $tag->collection_id = CollectionIds::TAGS_COLLECTION_ID; $tag->title = $tag->title ?? ''; $tag->alias = $tag->alias ?? ''; $tag->description = $tag->description ?? ''; return (array) $tag; }, $tags); } catch (\Exception $e) { \Joomla\CMS\Factory::getApplication()->enqueueMessage('Error fetching tags for dynamic content: ' . $e->getMessage(), 'error'); return []; } } /** * Get the data. * * @return array * * @since 5.5.0 */ public function getData() { return $this->applyPagination($this->items); } /** * Apply pagination to the items. * * @param array $items The items to apply pagination to. * @return array * * @since 5.5.0 */ public function applyPagination($items) { $limit = $this->limit; if ($limit < 0) { return $items; } $page = $this->page; $offset = $limit * ($page - 1); return array_slice($items, $offset, $limit); } /** * Get the total items. * * @return int * * @since 5.5.0 */ public function getItemCount() { return $this->totalItems; } /** * Get the total pages. * * @return int * * @since 5.5.0 */ public function getTotalPages() { return ceil($this->totalItems / $this->limit); } } PKBA#]<���D�D�Hcomponents/com_sppagebuilder/dynamic-content/Site/CollectionRenderer.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Site; use AddonParser; use FieldsHelper; use JLoader; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Layout\FileLayout; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Version; use Joomla\CMS\Filesystem\File; use Joomla\CMS\Component\ComponentHelper; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionDataService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService; class CollectionRenderer { /** * Store the collection data. * * @var CollectionData * @since 5.5.0 */ protected $data; /** * Store the layouts. * * @var object * @since 5.5.0 */ protected $layouts = []; /** * Store the page name. * * @var string * @since 5.5.0 */ protected $pageName = 'none'; /** * Store the addon object. * * @var object * @since 5.5.0 */ protected $addon; /** * Store the filters. * * @var array * @since 5.5.0 */ protected $filters = []; /** * Store the CSS content. * * @var array * @since 5.5.0 */ protected static $cssContent = []; /** * Initialize the CollectionRenderer. * * @param object $addon The addon object. * @since 5.5.0 */ public function __construct($addon) { $this->addon = $addon; $layoutPath = JPATH_ROOT . '/components/com_sppagebuilder/layouts'; $this->layouts = (object) [ 'row_start' => new FileLayout('row.start', $layoutPath), 'row_end' => new FileLayout('row.end', $layoutPath), 'row_css' => new FileLayout('row.css', $layoutPath), 'column_start' => new FileLayout('column.start', $layoutPath), 'column_end' => new FileLayout('column.end', $layoutPath), 'column_css' => new FileLayout('column.css', $layoutPath), 'addon_start' => new FileLayout('addon.start', $layoutPath), 'addon_end' => new FileLayout('addon.end', $layoutPath), 'addon_css' => new FileLayout('addon.css', $layoutPath), ]; $this->pageName = 'none'; } /** * Normalized collection limit from addon settings. * * @param object $settings Addon settings * @return int */ protected function getCollectionLimit($settings) { $limit = (int) ($settings->limit ?? 20); return $limit > 0 ? $limit : 20; } /** * Set the data object * * @param CollectionData $data The data object * * @since 5.5.0 */ public function setData($data) { $this->data = $data; } /** * Get the data object * * @return CollectionData * * @since 5.5.0 */ public function getData() { return $this->data; } /** * Get the data array * * @return array The data array * * @since 5.5.0 */ public function getDataArray() { return $this->data->getData(); } public function collectPaths($nodes) { $paths = []; foreach ($nodes as $node) { $rawPath = $node->settings->attribute->path ?? null; if (!empty($rawPath)) { $paths[] = $rawPath; } if (!empty($node->child_nodes)) { $childPaths = $this->collectPaths($node->child_nodes); $paths = array_merge($paths, $childPaths); } } return $paths; } /** * Fetch items with proper data structure * * @param int $limit The maximum number of items to fetch * @param string $direction The ordering direction (ASC/DESC) * @param int $offset The offset for pagination * @return array Array of items * * @since 6.0.0 */ public function fetchArticleItems($limit, $direction, $offset = 0) { try { $app = Factory::getApplication(); $input = $app->input; $option = $input->get('option', 'com_content', 'string'); $view = $input->get('view', '', 'string'); $catId = ''; $state = 1; $featured = null; if ($option === 'com_content' && ($view === 'category' || $view === 'featured' || $view === 'archive')) { $catId = $input->get('id', '', 'string'); } if ($view === 'featured') { $featured = 1; } else if ($view === 'archive') { $state = 2; } $db = Factory::getDbo(); $authorised = \Joomla\CMS\Access\Access::getAuthorisedViewLevels(Factory::getUser()->get('id')); $nullDate = $db->quote($db->getNullDate()); $nowDate = $db->quote(Factory::getDate()->toSql()); $baseUrl = rtrim(Uri::root(), '/'); $query = $db->getQuery(true); $query->select([ 'a.id', 'a.title', 'a.alias', 'a.introtext', 'a.fulltext', 'a.catid', 'a.created', 'a.created_by', 'a.publish_up', 'a.images', 'a.attribs', 'a.language', 'a.featured', 'a.hits', 'b.title as category', 'b.alias as category_alias', 'u.name as username', 'u.email as created_by_email', 'CASE WHEN p.profile_value IS NOT NULL THEN CONCAT(' . $db->quote($baseUrl) . ', JSON_UNQUOTE(p.profile_value)) ELSE NULL END as profile_image' ]) ->from($db->quoteName('#__content', 'a')) ->join('LEFT', $db->quoteName('#__categories', 'b') . ' ON a.catid = b.id') ->join('LEFT', $db->quoteName('#__users', 'u') . ' ON u.id = a.created_by') ->join('LEFT', $db->quoteName('#__user_profiles', 'p') . ' ON p.user_id = a.created_by AND p.profile_key = ' . $db->quote('profileimage.profile_image')) ->where('a.state = ' . $db->quote($state)) ->where('a.access IN (' . implode(',', $authorised) . ')') ->where('b.extension = ' . $db->quote('com_content')) ->group('a.id'); if (!empty($catId)) { $query->where('a.catid = ' . $db->quote($catId)); } if ($featured !== null) { $query->where('a.featured = ' . $db->quote($featured)); } $version = new Version(); $JoomlaVersion = $version->getShortVersion(); if ((float) $JoomlaVersion < 4) { $query->where('(a.publish_up = ' . $nullDate . ' OR a.publish_up <= ' . $nowDate . ')'); $query->where('(a.publish_down = ' . $nullDate . ' OR a.publish_down >= ' . $nowDate . ')'); } else { $nowDate = Factory::getDate()->toSql(); $query->extendWhere( 'AND', [ $db->quoteName('a.publish_up') . ' IS NULL OR ' . $db->quoteName('a.publish_up') . '=' . $nullDate, $db->quoteName('a.publish_up') . ' <= :publishUp', ], 'OR' )->extendWhere( 'AND', [ $db->quoteName('a.publish_down') . ' IS NULL OR ' . $db->quoteName('a.publish_down') . '=' . $nullDate, $db->quoteName('a.publish_down') . ' >= :publishDown', ], 'OR' )->bind([':publishUp', ':publishDown'], $nowDate); } if ($app->isClient('site') && $app->getLanguageFilter()) { $query->where('a.language IN (' . $db->quote(Factory::getLanguage()->getTag()) . ',' . $db->quote('*') . ')'); } if ($direction === 'desc') { $query->order('a.publish_up DESC'); } else { $query->order('a.publish_up ASC'); } $query->setLimit($limit, $offset); $db->setQuery($query); $articles = $db->loadObjectList(); if ((float) $JoomlaVersion >= 4) { JLoader::registerAlias('FieldsHelper', 'Joomla\Component\Fields\Administrator\Helper\FieldsHelper'); } else { JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php'); } return array_map(function ($article) use ($JoomlaVersion, $db) { $article->introtext = $article->introtext ?? ''; $article->fulltext = $article->fulltext ?? ''; $article->hits = $article->hits ?? 0; $custom_fields = FieldsHelper::getFields('com_content.article', $article); if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } \SppagebuilderHelperArticles::applyComContentCustomFieldValuesToItem($article, $custom_fields); $article->collection_id = CollectionIds::ARTICLES_COLLECTION_ID; $article->slug = $article->id . ':' . $article->alias; $article->catslug = $article->catid . ':' . $article->category_alias; if (version_compare($JoomlaVersion, '4.0.0', '>=')) { $article->link = \Joomla\CMS\Router\Route::_(\Joomla\Component\Content\Site\Helper\RouteHelper::getArticleRoute($article->slug, $article->catid, $article->language)); } else { if (!class_exists('ContentHelperRoute')) { require_once JPATH_SITE . '/components/com_content/helpers/route.php'; } $article->link = \Joomla\CMS\Router\Route::_(\ContentHelperRoute::getArticleRoute($article->slug, $article->catid, $article->language)); } $article->introtext = $this->replaceFieldShortcodes($article->introtext, $custom_fields); $article->fulltext = $this->replaceFieldShortcodes($article->fulltext, $custom_fields); $attribs = json_decode($article->attribs ?? '{}'); $feature_img = ''; if (isset($attribs->helix_ultimate_image) && $attribs->helix_ultimate_image) { $feature_img = $attribs->helix_ultimate_image; } elseif (isset($attribs->spfeatured_image) && $attribs->spfeatured_image) { $feature_img = $attribs->spfeatured_image; } if (!empty($feature_img)) { $article->featured_image = $feature_img; $img_baseurl = basename($feature_img); $small = JPATH_ROOT . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_small.' . File::getExt($img_baseurl); if (file_exists($small)) { $article->image_small = Uri::root(true) . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_small.' . File::getExt($img_baseurl); } $thumbnail = JPATH_ROOT . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_thumbnail.' . File::getExt($img_baseurl); if (file_exists($thumbnail)) { $article->image_thumbnail = Uri::root(true) . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_thumbnail.' . File::getExt($img_baseurl); } else { $article->image_thumbnail = Uri::root(true) . '/' . $article->featured_image; } $medium = JPATH_ROOT . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_medium.' . File::getExt($img_baseurl); if (file_exists($medium)) { $article->image_medium = Uri::root(true) . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_medium.' . File::getExt($img_baseurl); } $large = JPATH_ROOT . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_large.' . File::getExt($img_baseurl); if (file_exists($large)) { $article->image_large = Uri::root(true) . '/' . dirname($feature_img) . '/' . File::stripExt($img_baseurl) . '_large.' . File::getExt($img_baseurl); } } else { $article->featured_image = ''; $article->image_thumbnail = ''; $images = json_decode($article->images ?? '{}'); if (isset($images->image_intro) && $images->image_intro) { if (strpos($images->image_intro, 'http://') !== false || strpos($images->image_intro, 'https://') !== false) { $article->image_thumbnail = $images->image_intro; } else { $article->image_thumbnail = Uri::root(true) . '/' . $images->image_intro; } } elseif (isset($images->image_fulltext) && $images->image_fulltext) { if (strpos($images->image_fulltext, 'http://') !== false || strpos($images->image_fulltext, 'https://') !== false) { $article->image_thumbnail = $images->image_fulltext; } else { $article->image_thumbnail = Uri::root(true) . '/' . $images->image_fulltext; } } else { $article->image_thumbnail = false; } } $keysToAdd = [ 'image_small', 'image_medium', 'image_large', 'image_intro', 'image_intro_alt', 'float_intro', 'image_intro_caption', 'image_fulltext', 'image_fulltext_alt', 'float_fulltext', 'image_fulltext_caption' ]; foreach ($keysToAdd as $key) { if (!isset($article->$key)) { $article->$key = ''; } } if (isset($article->images)) { $images = json_decode($article->images); if (isset($images)) { foreach ($images as $key => $value) { $article->$key = $value; } } } $article->profile_image = $article->profile_image ?? ''; if (empty($article->profile_image)) { $enableGravatar = ComponentHelper::getParams('com_sppagebuilder')->get('enable_gravatar', 1); if ($enableGravatar && !empty($article->created_by_email)) { $hash = md5(strtolower(trim($article->created_by_email))); $gravatarUrl = "https://www.gravatar.com/avatar/{$hash}?s=45&d=404"; $article->profile_image = $gravatarUrl; } } $layoutQuery = $db->getQuery(true); $layoutQuery->select($db->quoteName(['content', 'text', 'css'])); $layoutQuery->from($db->quoteName('#__sppagebuilder')); $layoutQuery->where($db->quoteName('extension') . ' = ' . $db->quote('com_content')); $layoutQuery->where($db->quoteName('extension_view') . ' = ' . $db->quote('article')); $layoutQuery->where($db->quoteName('view_id') . ' = ' . (int) $article->id); $layoutQuery->where($db->quoteName('active') . ' = 1'); $db->setQuery($layoutQuery); $layoutData = $db->loadObject(); $article->layout = !empty($layoutData) ? $layoutData : null; return (array) $article; }, $articles); } catch (\Exception $e) { Factory::getApplication()->enqueueMessage('Error fetching items for dynamic content: ' . $e->getMessage(), 'error'); return []; } } /** * Get total count of articles matching filters * * @return int Total count of articles * * @since 6.3.0 */ protected function getArticlesCount() { try { $app = Factory::getApplication(); $input = $app->input; $option = $input->get('option', 'com_content', 'string'); $view = $input->get('view', '', 'string'); $catId = ''; $state = 1; $featured = null; if ($option === 'com_content' && ($view === 'category' || $view === 'featured' || $view === 'archive')) { $catId = $input->get('id', '', 'string'); } if ($view === 'featured') { $featured = 1; } else if ($view === 'archive') { $state = 2; } $db = Factory::getDbo(); $authorised = \Joomla\CMS\Access\Access::getAuthorisedViewLevels(Factory::getUser()->get('id')); $nullDate = $db->quote($db->getNullDate()); $nowDate = $db->quote(Factory::getDate()->toSql()); $query = $db->getQuery(true); $query->select('COUNT(DISTINCT a.id)') ->from($db->quoteName('#__content', 'a')) ->join('LEFT', $db->quoteName('#__categories', 'b') . ' ON a.catid = b.id') ->where('a.state = ' . $db->quote($state)) ->where('a.access IN (' . implode(',', $authorised) . ')') ->where('b.extension = ' . $db->quote('com_content')); if (!empty($catId)) { $query->where('a.catid = ' . $db->quote($catId)); } if ($featured !== null) { $query->where('a.featured = ' . $db->quote($featured)); } $version = new Version(); $JoomlaVersion = $version->getShortVersion(); if ((float) $JoomlaVersion < 4) { $query->where('(a.publish_up = ' . $nullDate . ' OR a.publish_up <= ' . $nowDate . ')'); $query->where('(a.publish_down = ' . $nullDate . ' OR a.publish_down >= ' . $nowDate . ')'); } else { $nowDate = Factory::getDate()->toSql(); $query->extendWhere( 'AND', [ $db->quoteName('a.publish_up') . ' IS NULL OR ' . $db->quoteName('a.publish_up') . '=' . $nullDate, $db->quoteName('a.publish_up') . ' <= :publishUp', ], 'OR' )->extendWhere( 'AND', [ $db->quoteName('a.publish_down') . ' IS NULL OR ' . $db->quoteName('a.publish_down') . '=' . $nullDate, $db->quoteName('a.publish_down') . ' >= :publishDown', ], 'OR' )->bind([':publishUp', ':publishDown'], $nowDate); } if ($app->isClient('site') && $app->getLanguageFilter()) { $query->where('a.language IN (' . $db->quote(Factory::getLanguage()->getTag()) . ',' . $db->quote('*') . ')'); } $db->setQuery($query); return (int) $db->loadResult(); } catch (\Exception $e) { Factory::getApplication()->enqueueMessage('Error getting articles count: ' . $e->getMessage(), 'error'); return 0; } } private function replaceFieldShortcodes($text, $custom_fields) { $fieldMap = []; foreach ($custom_fields as $field) { if (isset($field->id)) { $fieldMap[$field->id] = (isset($field->value) && $field->value) ? $field->value : ''; } } return preg_replace_callback('/\{field\s+(\d+)\}/', function($matches) use ($fieldMap) { $fieldId = $matches[1]; $value = $fieldMap[$fieldId] ?? ''; return isset($fieldMap[$fieldId]) ? $fieldMap[$fieldId] : ''; }, $text); } /** * Fetch items with proper data structure * * @param int $limit The maximum number of items to fetch * @param string $direction The ordering direction (ASC/DESC) * @return array Array of items * * @since 6.0.0 */ protected function fetchTagItems($limit, $direction) { try { $direction = strtoupper((string) $direction) === 'DESC' ? 'DESC' : 'ASC'; $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__tags') ->where('published = 1') ->order('title ' . $direction); $db->setQuery($query, 0, $limit); $tags = $db->loadObjectList(); return array_map(function ($tag) { $tag->collection_id = CollectionIds::TAGS_COLLECTION_ID; $tag->title = $tag->title ?? ''; $tag->alias = $tag->alias ?? ''; $tag->description = $tag->description ?? ''; return (array) $tag; }, $tags); } catch (\Exception $e) { Factory::getApplication()->enqueueMessage('Error fetching items for dynamic content: ' . $e->getMessage(), 'error'); return []; } } /** * Fetch data based on source * * @param int $source The source type * @param int $limit The maximum number of items to fetch * @param string $direction The ordering direction (ASC/DESC) * @param int $offset The offset for pagination * @return array Array of items * * @since 6.0.0 */ protected function fetchArticlesOrTagsData($source, $limit, $direction, $offset = 0) { if ($source === CollectionIds::TAGS_COLLECTION_ID) { return $this->fetchTagItems($limit, $direction); } return $this->fetchArticleItems($limit, $direction, $offset); } /** * Render the collection addon * * @param array $data The data to be rendered * @param object $addon The addon object containing settings and filters * @param object $layouts The layouts object containing the layout files * @param string $pageName The name of the page * @return string The rendered content * * @since 5.5.0 */ public function renderCollectionAddon($data, $addon) { $childNodes = isset($addon->child_nodes) ? $addon->child_nodes : []; $id = 'sppb-dynamic-content-' . $addon->id; $noRecordsMessage = $addon->settings->no_records_message ?? Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_NO_RECORDS'); $noRecordsDescription = $addon->settings->no_records_description ?? null; $class = $addon->settings->class ?? ''; if (empty($data)) { $output = '<div class="sppb-dynamic-content-collection '. $class . '" id="' . $id . '">'; $output .= '<div class="sppb-dynamic-content-no-records">'; $output .= '<h4>' . $noRecordsMessage . '</h4>'; if ($noRecordsDescription) { $output .= '<p>' . $noRecordsDescription . '</p>'; } $output .= '</div>'; $output .= '</div>'; return $output; } $output = '<div class="sppb-dynamic-content-collection '. $class .'" id="' . $id . '">'; foreach ($data as $index => $item) { $output .= $this->renderCollectionItem($childNodes, $item, $index); } $output .= '</div>'; return $output; } /** * Render the individual collection item * * @param array $childNodes The child nodes of the collection item * @param array $item The item to be rendered * @param int $index The index of the item * @return string The rendered collection item * * @since 5.5.0 */ public function renderCollectionItem($childNodes, $item, $index) { $output = '<div class="sppb-dynamic-content-collection__item">'; foreach ($childNodes as $childNode) { if (empty((int) $childNode->visibility)) { continue; } if (!AddonParser::checkAddonACL($childNode)) { continue; } if ($childNode->name === 'dynamic_content_collection') { $newData = $this->getChildCollectionData($childNode, $item); $output .= $this->renderChildCollectionAddon($newData, $childNode, $this->layouts); } elseif ($childNode->name === 'div') { // Convey the dynamic item to the child node $childNode->settings->dynamic_item = $item; $output .= AddonParser::getDivHTMLViewForDynamicContent( $childNode, $this->layouts, $this->pageName, function($collectionAddon) use ($item) { $newData = $this->getChildCollectionData($collectionAddon, $item); return $this->renderChildCollectionAddon($newData, $collectionAddon, $this->layouts); }, $index ); } else { // Convey the dynamic item to the child node $childNode->settings->dynamic_item = $item; $output .= $this->renderChildNodeAddon($childNode, $this->layouts, $this->pageName, $index); } } $link = $this->addon->settings->link ?? null; $linkUrl = CollectionHelper::createDynamicContentLink($link, $item); $hasLink = !empty($linkUrl); if ($hasLink) { $app = Factory::getApplication(); $option = $app->input->get('option', '', 'string'); $view = $app->input->get('view', '', 'string'); if ($option === 'com_content' && ($view === 'category' || $view === 'archive' || $view === 'featured' || $view === 'article') && !empty($item['link'])) { $linkUrl = $item['link']; } $output .= '<a href="' . $linkUrl . '" class="sppb-dynamic-content-collection__item-link" data-instant data-preload-collection data-preload-url="' . $linkUrl . '"></a>'; } $output .= '</div>'; return $output; } /** * Get the data for the child collection (a collection addon inside a collection addon) * * This method handles two scenarios: * 1. With reference filters: Filters data based on the parent item using either "match all" * or "match any" conditions. The filtered data is then further processed with regular filters. * If a negative limit is provided, it slices the reference filtered data. * * 2. Without reference filters: Loads data directly from the source with the specified limit, * then applies regular filters only. * * @param object $addon The addon object containing settings and filters * @param array $item The parent collection item used for reference filtering * @return array The filtered collection data * * @since 5.5.0 */ public function getChildCollectionData($addon, $item) { $limit = $this->getCollectionLimit($addon->settings); $direction = $addon->settings->direction ?? 'ASC'; [$referenceFilters, $regularFilters, $hasReferenceFilters] = CollectionData::partitionByReferenceFilters($addon->settings->filters); $collectionId = $addon->settings->source ?? null; $source = $addon->settings->source ?? -1; if ($source === CollectionIds::ARTICLES_COLLECTION_ID || $source === CollectionIds::TAGS_COLLECTION_ID) { $articlesCount = $this->getArticlesCount(); $items = $this->fetchArticlesOrTagsData($source, $articlesCount, $direction); $filteredData = (new CollectionData()) ->setData($items) ->setLimit($limit) ->setDirection($direction) ->applyArticleOrTagsFilter($source, $item, $addon->settings->filters) ->getData(); return $filteredData; } $collectionFields = (new CollectionsService)->fetchCollectionFields($collectionId ?? -1); $allPaths = array_map(function ($item) { return CollectionItemsService::createFieldKey($item['path']); }, array_filter($collectionFields, function ($item) { return $item['type'] !== 'self'; })); $path = $this->collectPaths($this->addon->child_nodes); if ($hasReferenceFilters) { $items = (new CollectionDataService)->getCollectionReferenceItemsOnDemand($item, $referenceFilters, $direction); // Apply the regular filters to the reference filtered data $newData = (new CollectionData()) ->setData($items) ->setLimit($limit) ->setDirection($direction) ->applyFilters($regularFilters, $allPaths) ->applyUserFilters($allPaths) ->applyUserSearchFilters($collectionId, $path, $allPaths) ->getData(); } else { $parentItem = CollectionHelper::getDetailPageData(); $newData = (new CollectionData()) ->setLimit($limit) ->setDirection($direction) ->setCurrentItemId($item['id']) ->loadDataBySource($addon->settings->source) ->setParentItem($parentItem ?? null) ->applyFilters($addon->settings->filters, $allPaths) ->applyUserFilters($allPaths) ->applyUserSearchFilters($collectionId, $path, $allPaths) ->getData(); } return $newData; } /** * Render the content of the collection addon that placed inside a collection addon * * @param array $data The data to be rendered * @param object $addon The addon object containing settings and filters * @param object $layouts The layouts object containing the layout files * @param string $pageName The name of the page * * @return string The rendered content * * @since 5.5.0 */ public function renderChildCollectionAddon($data, $addon, $layouts) { $output = $layouts->addon_start->render(array('addon' => $addon)); $output .= $this->renderCollectionAddon($data, $addon); $output .= $layouts->addon_end->render(array('addon' => $addon)); $css = CollectionHelper::generateDynamicContentCSS($addon, $layouts); foreach ($css as $key => $value) { static::$cssContent[$key] = $value; } return $output; } /** * Render the regular child addons. This addons will skip the child collection addons and div addons. * * @param object $addon The addon object containing settings and filters * @param object $layouts The layouts object containing the layout files * @param string $pageName The name of the page * @param int $index The index of the item * * @return string The rendered content * * @since 5.5.0 */ public function renderChildNodeAddon($addon, $layouts, $pageName, $index) { return AddonParser::getAddonHTMLView($addon, $layouts, $pageName, false, [], $index, false); } /** * Render the collection addon. * * @return string The rendered content * * @since 5.5.0 */ public function render() { $settings = $this->addon->settings; $collectionId = $settings->source ?? null; $filters = $settings->filters ?? null; $limit = $this->getCollectionLimit($settings); $direction = $settings->direction ?? 'ASC'; $sortingColumn = (isset($settings->sorting_field_id) && $settings->sorting_field_id) ? $settings->sorting_field_id : null; $sortingColumn = $sortingColumn === 'default' ? null : $sortingColumn; $class = $settings->class ?? ''; $collectionFields = (new CollectionsService)->fetchCollectionFields($collectionId ?? -1); $allPaths = array_map(function ($item) { return CollectionItemsService::createFieldKey($item['path']); }, array_filter($collectionFields, function ($item) { return $item['type'] !== 'self'; })); $path = $this->collectPaths($this->addon->child_nodes); [$referenceFilters, $regularFilters, $hasReferenceFilters] = CollectionData::partitionByReferenceFilters($settings->filters); // If the addon has reference filter that means it is a detail page // So we need to get the data for the detail page if ($hasReferenceFilters) { $parentItem = CollectionHelper::getDetailPageData(); $items = (new CollectionDataService)->getCollectionReferenceItemsOnDemand($parentItem, $referenceFilters, $direction); $data = (new CollectionData()) ->setData($items) ->setLimit($limit) ->setSortingColumn($sortingColumn) ->setDirection($direction) ->applyFilters($regularFilters, $allPaths) ->applyUserFilters($allPaths) ->applyUserSearchFilters($collectionId, $path, $allPaths); } else { $parentItem = CollectionHelper::getDetailPageData(); $data = (new CollectionData()) ->setLimit($limit) ->setSortingColumn($sortingColumn) ->setDirection($direction) ->loadDataBySource($collectionId) ->setParentItem($parentItem ?? null) ->applyFilters($filters, $allPaths) ->applyUserFilters($allPaths) ->applyUserSearchFilters($collectionId, $path, $allPaths); } if (empty($data)) { $id = 'sppb-dynamic-content-' . $this->addon->id; $noRecordsMessage = $settings->no_records_message ?? Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_NO_RECORDS'); $noRecordsDescription = $settings->no_records_description ?? null; $output = '<div class="sppb-dynamic-content-collection ' . $class . '" id="' . $id . '">'; $output .= '<div class="sppb-dynamic-content-no-records">'; $output .= '<h4>' . $noRecordsMessage . '</h4>'; if ($noRecordsDescription) { $output .= '<p>' . $noRecordsDescription . '</p>'; } $output .= '</div>'; $output .= '</div>'; return $output; } $this->setData($data); return $this->renderCollectionAddon($this->getDataArray(), $this->addon); } /** * Render items for the collection addon. * * @return string The rendered content * * @since 6.0.0 */ public function renderArticles() { $settings = $this->addon->settings; $limit = $this->getCollectionLimit($settings); $direction = $settings->direction ?? 'asc'; $source = $settings->source ?? CollectionIds::ARTICLES_COLLECTION_ID; $filters = $settings->filters ?? null; $hasFilters = !empty($filters) && !empty($filters->conditions); $parentItem = null; if ($source === CollectionIds::ARTICLES_COLLECTION_ID) { if ($hasFilters) { $totalCount = $this->getArticlesCount(); $allItems = $this->fetchArticlesOrTagsData($source, $totalCount, $direction, 0); $parentItem = CollectionHelper::getDetailPageDataFromArticles(); $data = (new CollectionData()) ->setData($allItems) ->applyArticleOrTagsFilter($source, $parentItem, $filters) ->setLimit($limit) ->setDirection($direction); $items = $data->getData(); $totalCount = $data->getItemCount(); } else { $totalCount = $this->getArticlesCount(); $items = $this->fetchArticlesOrTagsData($source, $limit, $direction, 0); } } else if ($source === CollectionIds::TAGS_COLLECTION_ID) { $items = $this->fetchArticlesOrTagsData($source, $limit, $direction); $parentItem = CollectionHelper::getDetailPageDataFromArticles(); $data = (new CollectionData()) ->setData($items) ->applyArticleOrTagsFilter($source, $parentItem, $filters) ->setLimit($limit) ->setDirection($direction); $items = $data->getData(); $totalCount = $data->getItemCount(); } if (empty($items)) { return $this->renderNoRecordsMessage(); } $data = (new CollectionData()) ->setData($items) ->setLimit($limit) ->setDirection($direction) ->setTotalItems($totalCount); $this->setData($data); return $this->renderCollectionAddon($this->getDataArray(), $this->addon); } /** * Render no records message. * * @return string * * @since 6.3.0 */ protected function renderNoRecordsMessage() { $settings = $this->addon->settings; $class = $settings->class ?? ''; $id = 'sppb-dynamic-content-' . $this->addon->id; $message = $settings->no_records_message ?? Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_NO_RECORDS'); $description = $settings->no_records_description ?? null; $output = '<div class="sppb-dynamic-content-collection ' . $class . '" id="' . $id . '">'; $output .= '<div class="sppb-dynamic-content-no-records">'; $output .= '<h4>' . $message . '</h4>'; if ($description) { $output .= '<p>' . $description . '</p>'; } $output .= '</div></div>'; return $output; } /** * Render the pagination. * * @return string The rendered content * * @since 6.3.0 */ public function renderPagination() { return $this->renderPaginationInternal(false); } /** * Render pagination for articles and tags. * * @return string The rendered content * * @since 6.3.0 */ public function renderArticlesPagination() { $source = $this->addon->settings->source ?? CollectionIds::ARTICLES_COLLECTION_ID; $isArticlesOrTags = ($source === CollectionIds::ARTICLES_COLLECTION_ID || $source === CollectionIds::TAGS_COLLECTION_ID); return $this->renderPaginationInternal($isArticlesOrTags); } /** * Render pagination HTML. * * @param bool $useArticlesParent Whether to use articles parent item * @return string The rendered content * * @since 6.3.0 */ protected function renderPaginationInternal($useArticlesParent = false) { if (empty($this->data) || !($this->addon->settings->pagination ?? false)) { return ''; } $totalPages = $this->data->getTotalPages(); if ($totalPages <= 1) { return ''; } $settings = $this->addon->settings; $parentItem = $useArticlesParent ? CollectionHelper::getDetailPageDataFromArticles() : CollectionHelper::getDetailPageData(); $buttonText = $settings->pagination_load_more_button_text ?? Text::_('COM_SPPAGEBUILDER_ADDON_DYNAMIC_CONTENT_COLLECTION_PAGINATION_TYPE_LOAD_MORE'); $buttonType = $settings->pagination_load_more_button_type ?? 'default'; $paginationType = $settings->pagination_type ?? 'load-more'; $parentItemJson = htmlspecialchars(json_encode($parentItem), ENT_QUOTES, 'UTF-8'); $output = '<div class="sppb-dynamic-content-collection__pagination" data-parent-item="' . $parentItemJson . '">'; $output .= '<input type="hidden" name="sppb-dc-pagination-type" value="' . $paginationType . '">'; if ($paginationType === 'infinite-scroll') { $output .= '<div class="sppb-dynamic-content-collection__pagination-sentinel" data-total-pages="' . $totalPages . '">Loading...</div>'; } elseif ($paginationType === 'numbered') { // 0 = show every page button (full range). Set only when the option is saved. $visiblePages = 0; if ( isset($settings->pagination_numbered_visible_pages) && $settings->pagination_numbered_visible_pages !== '' && $settings->pagination_numbered_visible_pages !== null ) { $visiblePages = (int) $settings->pagination_numbered_visible_pages; } $showArrows = !empty($settings->pagination_numbered_show_arrows) ? '1' : '0'; $showFirstLast = !empty($settings->pagination_numbered_show_first_last) ? '1' : '0'; $showDots = !empty($settings->pagination_numbered_show_dots) ? '1' : '0'; $paginationAria = htmlspecialchars( Text::_('COM_SPPAGEBUILDER_ADDON_DYNAMIC_CONTENT_COLLECTION_PAGINATION_TYPE_NUMBERED'), ENT_QUOTES, 'UTF-8' ); $buttonTypeEsc = htmlspecialchars((string) $buttonType, ENT_QUOTES, 'UTF-8'); $output .= '<nav class="sppb-dynamic-content-pagination-numbers"'; $output .= ' data-sppb-numbered-pagination'; $output .= ' data-total-pages="' . (int) $totalPages . '"'; $output .= ' data-current-page="1"'; $output .= ' data-visible-pages="' . (int) $visiblePages . '"'; $output .= ' data-show-arrows="' . $showArrows . '"'; $output .= ' data-show-first-last="' . $showFirstLast . '"'; $output .= ' data-show-dots="' . $showDots . '"'; $output .= ' data-button-type="' . $buttonTypeEsc . '"'; $output .= ' aria-label="' . $paginationAria . '">'; $output .= '</nav>'; } else { $output .= '<button type="button" data-text="' . $buttonText . '" data-parent-item="' . $parentItemJson . '" data-sppb-load-more-button data-total-pages="' . $totalPages . '" class="sppb-btn btn-sm sppb-btn-' . $buttonType . '">' . $buttonText . '</button>'; } $output .= '<input type="hidden" name="sppb-dynamic-addon-id" value="' . $this->addon->id . '">'; $app = Factory::getApplication(); $app->getDocument()->addScriptOptions('sppb-dc-addon-' . $this->addon->id, $this->addon); $app->getDocument()->addScriptOptions('sppb-root', Uri::root()); $output .= '</div>'; return $output; } /** * Generate the CSS content. * * @return string The generated CSS content * * @since 5.5.0 */ public function generateCSS() { if (!empty(static::$cssContent)) { return '<style type="text/css">' . implode(" ", array_values(static::$cssContent)) . '</style>'; } } } PKBA#]'��_�_Ecomponents/com_sppagebuilder/dynamic-content/Site/PageSeoSettings.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Site; use ApplicationHelper; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Pathway\Pathway; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\Registry\Registry; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionDataService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use stdClass; class PageSeoSettings { /** * The Joomla Document object * * @var Document * @since 5.5.0 */ protected $document; /** * The Joomla Application object * * @var CMSApplication * @since 5.5.0 */ protected $app; /** * The active menu item * * @var Menu * @since 5.5.0 */ protected $menu; /** * The component configuration * * @var Registry * @since 5.5.0 */ protected $config; /** * The Joomla Global Configuration * * @var Registry * @since 5.5.0 */ protected $globalConfig; /** * Page Builder Page attributes * * @var Registry * @since 5.5.0 */ protected $attributes; /** * The page data where the seo settings are applied * * @var object * @since 5.5.0 */ protected $pageData; /** * The collection data associated with the detail page * * @var object * @since 5.5.0 */ protected $collectionData; /** * The constructor * * @param object $pageData The page data where the seo settings are applied * * @since 5.5.0 */ private function __construct($pageData) { $this->pageData = $pageData; $this->app = Factory::getApplication(); $this->globalConfig = ApplicationHelper::getAppConfig(); $this->document = $this->app->getDocument(); $this->getCollectionItemData(); $this->getActiveMenu(); $this->getConfig(); $this->preparePageAttributes(); } /** * Make the class instance statically * * @param object $pageData * @return self * @since 5.5.0 */ public static function make($pageData) { return new self($pageData); } /** * Run the seo settings * * @return self * @since 5.5.0 */ public function run() { $this->preparePageTitle(); $this->prepareArticleMetaTags(); $this->prepareOgMetaTags(); $this->prepareTwitterMetaTags(); $this->preparePageMetaTags(); $this->prepareSchemaOrgJsonLd(); $this->preparePathway(); } /** * Get the collection item data * * @return self * @since 5.5.0 */ protected function getCollectionItemData() { $itemId = CollectionHelper::getCollectionItemIdFromUrl(); if (empty($itemId)) { return null; } $input = Factory::getApplication()->input; $collectionType = $input->get('collection_type'); if ($collectionType === 'articles') { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } try { $articlesCount = \SppagebuilderHelperArticles::getArticlesCount(); $articles = \SppagebuilderHelperArticles::getArticles($articlesCount); foreach ($articles as $article) { if ($article->id == $itemId) { $data = CollectionHelper::getDetailPageDataFromArticles(); $collectionId = $data['collection_id'] ?? null; $fieldKeys = $this->getFieldKeys($collectionId); foreach ($data as $key => $value) { if (array_key_exists($key, $fieldKeys)) { $data[$fieldKeys[$key]] = $value; unset($data[$key]); } } $this->collectionData = $data; return $this; } } } catch (\Exception $e) { } } else if ($collectionType === 'tags') { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('COUNT(*)') ->from('#__tags') ->where('id = ' . (int) $itemId) ->where('published = 1'); $db->setQuery($query); $tagCount = $db->loadResult(); if ($tagCount > 0) { $data = CollectionHelper::getDetailPageDataFromTags(); $collectionId = $data['collection_id'] ?? null; $fieldKeys = $this->getFieldKeys($collectionId); foreach ($data as $key => $value) { if (array_key_exists($key, $fieldKeys)) { $data[$fieldKeys[$key]] = $value; unset($data[$key]); } } $this->collectionData = $data; return $this; } } else { $data = (new CollectionDataService())->fetchCollectionItemById($itemId); $collectionId = $data['collection_id'] ?? null; $fieldKeys = $this->getFieldKeys($collectionId); foreach ($data as $key => $value) { if (array_key_exists($key, $fieldKeys)) { if (is_string($value) && strpos($value, '{') === 0 && strpos($value, '}') === strlen($value) - 1 && strpos($value, 'src') !== false) { $value = json_decode($value); $value = $value->src; } $data[$fieldKeys[$key]] = $value; unset($data[$key]); } } $this->collectionData = $data; } return $this; } /** * Get the field keys * * @param int $collectionId * @return array * @since 5.5.0 */ protected function getFieldKeys($collectionId) { if (empty($collectionId)) { return []; } if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID) { // Articles source - return predefined field keys return [ 'title' => '{{title}}', 'alias' => '{{alias}}', 'introtext' => '{{intro text}}', 'fulltext' => '{{full text}}', 'featured_image' => '{{featured image}}', 'image_intro' => '{{intro image}}', 'image_fulltext' => '{{full image}}', 'image_intro_caption' => '{{intro image caption}}', 'image_fulltext' => '{{full image caption}}', 'link' => '{{article link}}', 'username' => '{{author}}', 'category' => '{{category}}', 'created date' => '{{created date}}', 'modified' => '{{modified}}', 'hits' => '{{hits}}', 'published' => '{{published}}' ]; } if ($collectionId === CollectionIds::TAGS_COLLECTION_ID) { // Tags source - return predefined field keys return [ 'title' => '{{title}}', 'alias' => '{{alias}}', 'description' => '{{description}}', 'created' => '{{created}}', 'modified' => '{{modified}}', 'published' => '{{published}}' ]; } $fields = CollectionField::where('collection_id', $collectionId) ->whereIn('type', [ FieldTypes::TITLE, FieldTypes::TEXT, FieldTypes::ALIAS, FieldTypes::IMAGE, FieldTypes::OPTION, FieldTypes::RICH_TEXT, ])->get(); if (empty($fields)) { return []; } $fields = Arr::make($fields); return $fields->reduce(function ($carry, $field) { $name = '{{' . strtolower($field->name) . '}}'; $key = CollectionItemsService::createFieldKey($field->id); $carry[$key] = $name; return $carry; }, [])->toArray(); } /** * Parse the variable * * @param string $value * @return string * @since 5.5.0 */ protected function parseVariable($value, $isStripTags = false) { if (empty($value) || empty($this->collectionData)) { return $value; } $value = strtolower($value); $pattern = '/{{([^}]+)}}/'; preg_match_all($pattern, $value, $matches); if (empty($matches[0])) { return $value; } foreach ($matches[0] as $match) { $replacement = $this->collectionData[$match] ?? null; if (is_null($replacement)) { return ""; } if ($isStripTags) { $replacement = strip_tags($replacement); } $value = str_replace($match, $replacement, $value); } return $value; } /** * Get the active menu * * @return self * @since 5.5.0 */ protected function getActiveMenu() { $menu = $this->app->getMenu(); $this->menu = $menu->getActive(); return $this; } /** * Get the config * * @return self * @since 5.5.0 */ protected function getConfig() { $this->config = ComponentHelper::getParams('com_sppagebuilder'); return $this; } /** * Prepare the page attributes * * @return self * @since 5.5.0 */ protected function preparePageAttributes() { $attributes = $this->pageData->attribs ?? new stdClass(); $attributes = is_string($attributes) ? json_decode($attributes) : $attributes; if(is_array($attributes)) { $attributes = (object) $attributes; } $ogTitle = $this->pageData->og_title ?? ''; $ogImage = $this->pageData->og_image ?? ''; $ogDescription = $this->pageData->og_description ?? ''; $ogAlt = ''; $metaDescription = $attributes->meta_description ?? ''; if (!empty($ogImage) && is_string($ogImage)) { if (preg_match("@^{@", $ogImage)) { $ogImage = json_decode($ogImage); } if(!empty($ogImage->alt)){ $ogAlt = $ogImage->alt; } if (!empty($ogImage->src)) { $ogImage = $ogImage->src; } } if (is_object($ogImage)) { if(isset($ogImage->src)) { $ogImage = $ogImage->src; } else { $ogImage = ''; } } $attributes->og_title = $this->parseVariable($ogTitle); $attributes->og_image = $this->parseVariable($ogImage) ?? ''; $attributes->og_alt = $this->parseVariable($ogAlt); $attributes->meta_description = $this->parseVariable($metaDescription, true) ?? ''; if (!empty($attributes->og_image) && stripos($attributes->og_image, 'http') !== 0) { $attributes->og_image = Uri::root() . $attributes->og_image; } $attributes->og_description = $this->parseVariable($ogDescription, true); $this->attributes = new Registry($attributes); return $this; } /** * Get the page title * * @return string * @since 5.5.0 */ protected function getPageTitle() { $menuParams = $this->getMenuParams(); $pageTitle = $menuParams->get('page_title', ''); if (empty($pageTitle)) { $pageTitle = $this->menu->title ?? ''; } if (!empty($this->collectionData)) { $titleValue = $this->getTitleFieldValue(); if (!empty($titleValue)) { $pageTitle = $titleValue; } } $globalTitle = (int) $this->globalConfig->get('sitename_pagetitles'); if ($globalTitle === 2) { $pageTitle = Text::sprintf('JPAGETITLE', $pageTitle, $this->app->get('sitename')); } elseif ($globalTitle === 1) { $pageTitle = Text::sprintf('JPAGETITLE', $this->app->get('sitename'), $pageTitle); } return $pageTitle; } /** * Get the value of the title field by type * * @return string|null * @since 6.2.0 */ protected function getTitleFieldValue() { if (empty($this->collectionData)) { return null; } $collectionId = $this->collectionData['collection_id'] ?? null; if (empty($collectionId)) { return null; } if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID || $collectionId === CollectionIds::TAGS_COLLECTION_ID) { return $this->collectionData['{{title}}'] ?? null; } $titleField = CollectionField::where('collection_id', $collectionId) ->where('type', FieldTypes::TITLE) ->first(); if (empty($titleField)) { return null; } $titleFieldKey = '{{' . strtolower($titleField->name) . '}}'; return $this->collectionData[$titleFieldKey] ?? null; } /** * Prepare the page title * * @return self * @since 5.5.0 */ protected function preparePageTitle() { $this->document->setTitle($this->getPageTitle()); return $this; } /** * Prepare the article meta tags * * @return self * @since 5.5.0 */ protected function prepareArticleMetaTags() { $params = ComponentHelper::getParams('com_sppagebuilder'); $isOgDisabled = $params->get('disable_og', false); $author = $this->attributes->get('author', ''); $author = $author ? $this->parseVariable($author) : $this->pageData->author_name ?? ''; $this->document->addCustomTag('<meta property="article:author" content="' . $author . '"/>'); $publishedTime = $this->pageData->created_on ?? ''; $this->document->addCustomTag('<meta property="article:published_time" content="' . $publishedTime . '"/>'); $modifiedTime = $this->pageData->modified ?? ''; $this->document->addCustomTag('<meta property="article:modified_time" content="' . $modifiedTime . '"/>'); $language = $this->pageData->language ?? $this->app->getLanguage()->getTag(); $language = $language === '*' ? $this->app->getLanguage()->getTag() : $language; $language = str_replace('-', '_', $language); if(!$isOgDisabled){ $this->document->addCustomTag('<meta property="og:locale" content="' . $language . '" />'); } return $this; } /** * Prepare the og meta tags * * @return self * @since 5.5.0 */ protected function prepareOgMetaTags() { $params = ComponentHelper::getParams('com_sppagebuilder'); $isOgDisabled = $params->get('disable_og', false); if ($isOgDisabled) { return; } $ogTitle = $this->attributes->get('og_title', ''); $ogTitle = $ogTitle ?? $this->pageData->og_title ?? ''; if (!empty($ogTitle)) { $this->document->addCustomTag('<meta property="og:title" content="' . $ogTitle . '" />'); } else { $this->document->addCustomTag('<meta property="og:title" content="' . $this->getPageTitle() . '" />'); } $ogType = $this->attributes->get('og_type', 'website'); $this->document->addCustomTag('<meta property="og:type" content="' . $ogType . '" />'); $this->document->addCustomTag('<meta property="og:url" content="' . Uri::getInstance()->toString() . '" />'); $facebookAppId = $this->config->get('fb_app_id', ''); if (!empty($facebookAppId)) { $this->document->addCustomTag('<meta property="fb:app_id" content="' . $facebookAppId . '" />'); } $siteName = $this->globalConfig->get('sitename', ''); if (!empty($siteName)) { $this->document->addCustomTag('<meta property="og:site_name" content="' . $siteName . '" />'); } $ogImage = $this->attributes->get('og_image', null); $ogAlt = $this->attributes->get('og_alt', null); if (!empty($ogImage)) { $this->document->addCustomTag('<meta property="og:image" content="' . $ogImage . '" />'); $this->document->addCustomTag('<meta property="og:image:width" content="1200" />'); $this->document->addCustomTag('<meta property="og:image:height" content="630" />'); $this->document->addCustomTag('<meta property="og:image:alt" content="' . $ogAlt . '" />'); } $ogDescription = $this->attributes->get('og_description', null); if (!empty($ogDescription)) { $this->document->addCustomTag('<meta property="og:description" content="' . $ogDescription . '" />'); } return $this; } /** * Prepare the twitter meta tags * * @return self * @since 5.5.0 */ protected function prepareTwitterMetaTags() { $params = ComponentHelper::getParams('com_sppagebuilder'); $isTwitterDisabled = $params->get('disable_tc', false); if ($isTwitterDisabled) { return; } $siteName = $this->globalConfig->get('sitename', ''); $ogTitle = $this->attributes->get('og_title', ''); $ogDescription = $this->attributes->get('og_description', ''); $ogImage = $this->attributes->get('og_image', ''); $title = !empty($ogTitle) ? $ogTitle : $this->getPageTitle(); $this->document->addCustomTag('<meta name="twitter:card" content="summary" />'); if (!empty($title)) { $this->document->addCustomTag('<meta name="twitter:title" content="' . $title . '" />'); } if (!empty($siteName)) { $this->document->addCustomTag('<meta name="twitter:site" content="@' . htmlspecialchars($siteName ?? '') . '" />'); } if (!empty($ogDescription)) { $this->document->addCustomTag('<meta name="twitter:description" content="' . strip_tags($ogDescription) . '" />'); } if (!empty($ogImage)) { $this->document->addCustomTag('<meta name="twitter:image" content="' . $ogImage . '" />'); } return $this; } /** * Get the active menu params managing Joomla versions. * * @return Registry * @since 5.5.1 */ protected function getMenuParams() { if (empty($this->menu)) { return new Registry(); } if (JVERSION < 4) { $menuParams = new Registry(); if (!empty($this->menu)) { $menuParams->loadString($this->menu->params); } } else { $menuParams = $this->menu->getParams(); } return $menuParams; } /** * Prepare the page meta tags * * @return self * @since 5.5.0 */ /** * Output Schema.org JSON-LD from page attribs.schema (Joomla schemaorg plugin shape). * * @return self * @since 5.x */ protected function prepareSchemaOrgJsonLd() { if (($this->pageData->extension_view ?? '') === 'popup') { return $this; } $raw = $this->attributes->get('schema'); if ($raw === null || $raw === '' || $raw === []) { return $this; } if (\is_object($raw)) { $raw = json_decode(json_encode($raw), true); } if (!\is_array($raw)) { return $this; } $raw = $this->parseSchemaVariableRecursive($raw); $thisDoc = Factory::getDocument(); $thisApp = Factory::getApplication(); $graph = PageSchemaOrgBuilder::build($this->pageData, $raw, $thisDoc, $thisApp); if ($graph === null || empty($graph['@graph']) || !\is_array($graph['@graph'])) { return $this; } $flags = \JSON_UNESCAPED_UNICODE | \JSON_UNESCAPED_SLASHES | \JSON_HEX_TAG | \JSON_PRETTY_PRINT; $json = json_encode($graph, $flags); if ($json === false) { return $this; } $this->document->addCustomTag( '<script type="application/ld+json">' . "\n" . $json . "\n" . '</script>' ); return $this; } /** * Replace {{collection field}} tokens in schema strings (detail / dynamic pages). * * @param mixed $data * * @return mixed */ protected function parseSchemaVariableRecursive($data) { if (\is_string($data)) { return $this->replaceCollectionPlaceholders($data); } if (!\is_array($data)) { return $data; } $out = []; foreach ($data as $k => $v) { $out[$k] = $this->parseSchemaVariableRecursive($v); } return $out; } protected function replaceCollectionPlaceholders(string $value): string { if ($value === '' || empty($this->collectionData)) { return $value; } if (!preg_match_all('/\{\{[^}]+\}\}/', $value, $matches)) { return $value; } foreach ($matches[0] as $match) { $replacement = $this->collectionData[$match] ?? $this->collectionData[strtolower($match)] ?? null; if ($replacement !== null && !\is_scalar($replacement)) { $replacement = ''; } if ($replacement !== null && (string) $replacement !== '') { $value = str_replace($match, (string) $replacement, $value); } } return $value; } protected function preparePageMetaTags() { $metaDescription = $this->attributes->get('meta_description', ''); $metaKeywords = $this->attributes->get('meta_keywords', ''); $globalConfigRobot = Factory::getApplication()->get('robots', 'index, follow'); $robots = $this->attributes->get('robots', $globalConfigRobot); $menuParams = $this->getMenuParams(); if (!empty($this->menu)) { $metaDescription = $menuParams->get('menu-meta_description', $metaDescription); $metaKeywords = $menuParams->get('menu-meta_keywords', $metaKeywords); $robots = $menuParams->get('robots', $robots); } if (!empty($metaDescription)) { $this->document->setDescription($metaDescription); } if (!empty($metaKeywords)) { $this->document->setMetadata('keywords', $metaKeywords); } if (!empty($robots)) { $this->document->setMetadata('robots', $robots); } return $this; } /** * Prepare the pathway for dynamic content detail pages * * @return self * @since 6.2.3 */ protected function preparePathway() { if (empty($this->collectionData)) { return $this; } $pathway = $this->app->getPathway(); if (empty($pathway)) { return $this; } $titleValue = $this->getTitleFieldValue(); if (empty($titleValue)) { return $this; } $currentUri = Uri::getInstance(); $currentPath = $currentUri->getPath(); $query = $currentUri->getQuery(); if (!empty($query)) { $currentPath .= '?' . $query; } $pathway->addItem($titleValue, $currentPath); return $this; } } PKBA#]�L�4ԤԤFcomponents/com_sppagebuilder/dynamic-content/Site/CollectionHelper.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Site; use AddonParser; use ApplicationHelper; use DateTime; use FieldsHelper; use JLoader; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Router\Route; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Version; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItem; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionItemValue; use JoomShaper\SPPageBuilder\DynamicContent\Models\Menu; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionDataService; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionItemsService; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Date; use SppagebuilderHelperArticles; class CollectionHelper { /** * Cache for detail page IDs indexed by collection ID * * @var array * * @since 6.0.0 */ protected static $detailPageIdCache = []; /** * Cache for menu item IDs indexed by collection ID * * @var array * * @since 6.0.0 */ protected static $menuItemIdCache = []; /** * List of fields that are not prefixed with the collection title. * * @var array * * @since 5.5.0 */ public const NON_PREFIXED_FIELDS = [ 'created', 'modified', 'language', 'created_by', 'modified_by', 'published' ]; /** * Get the selector from the CSS. * * @param string $css The CSS content. * @return string|null The selector or null if not found. * * @since 5.5.0 */ protected static function getSelector($css) { $pattern = "/^(.*?)\{/"; preg_match($pattern, $css, $matches); return $matches[1] ?? null; } /** * Generate the CSS for the collection addon. * * @param object $addon The addon object. * @param object $layouts The layouts object. * @return array The generated CSS. * * @since 5.5.0 */ public static function generateDynamicContentCSS($addon, $layouts) { if (empty($addon->name)) { return ''; } $addonPath = AddonParser::getAddonPath($addon->name); $output = ''; if (file_exists($addonPath . '/site.php')) { require_once $addonPath . '/site.php'; $addonClassName = ApplicationHelper::generateSiteClassName($addon->name); $addonInstance = new $addonClassName($addon); $addonCss = $layouts->addon_css->render(array('addon' => $addon)); if (method_exists($addonClassName, 'css')) { $css = $addonInstance->css(); $addonSelector = static::getSelector($addonCss); $instanceSelector = static::getSelector($css); if (empty($addonSelector) || empty($instanceSelector)) { return []; } return [ $addonSelector => $addonCss, $instanceSelector => $css ]; } } return $output; } /** * Get the detail page ID for the dynamic content collection. * * @param int $collectionId The collection ID. * @return int|null The detail page ID or null if not found. * * @since 5.5.0 */ protected static function getDetailPageId($collectionId) { if (empty($collectionId)) { return null; } if (array_key_exists($collectionId, static::$detailPageIdCache)) { return static::$detailPageIdCache[$collectionId]; } $page = Page::where('extension', 'com_sppagebuilder') ->where('extension_view', 'dynamic_content:detail') ->where('view_id', $collectionId) ->first(['id']); $pageId = $page->id ?? null; static::$detailPageIdCache[$collectionId] = $pageId; return $pageId; } /** * Create the route url for the dynamic content detail page. * * @param object $item The item to create the route url for. * @return string|null The route url or null if not found. * * @since 5.5.0 */ public static function createRouteUrl($item) { $collectionId = $item['collection_id']; $itemId = $item['id']; $pageId = static::getDetailPageId($collectionId); if (empty($collectionId) || empty($itemId) || empty($pageId)) { return null; } if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID) { $menuItemId = static::getArticlesMenuItemId(); $routeUrl = 'index.php?option=com_sppagebuilder&view=dynamic&collection_item_id=' . $itemId; $routeUrl .= '&collection_type=articles'; } else if ($collectionId === CollectionIds::TAGS_COLLECTION_ID) { $menuItemId = static::getTagsMenuItemId(); $routeUrl = 'index.php?option=com_sppagebuilder&view=dynamic&collection_item_id=' . $itemId; $routeUrl .= '&collection_type=tags'; } else { $menuItemId = static::getCurrentMenuItemId($collectionId); $routeUrl = 'index.php?option=com_sppagebuilder&view=dynamic&collection_item_id=' . $itemId; $routeUrl .= '&collection_type=normal-source'; } if (!empty($menuItemId)) { $routeUrl .= '&Itemid=' . $menuItemId; } return Route::_($routeUrl, false); } /** * Get the dynamic content data from the item. * * @param object $attribute The attribute to get the data from. * @param array $item The item to get the data from. * @return array|null The dynamic content data or null if not found. * * @since 5.5.0 */ public static function getDynamicContentData($attribute, $item) { if (empty($attribute) || empty($item)) { return null; } $path = $attribute->path ?? ''; $segments = explode('.', $path); if (empty($segments) || !is_array($segments)) { $segments = []; } $value = $item; foreach ($segments as $segment) { $key = in_array($segment, static::NON_PREFIXED_FIELDS) ? $segment : CollectionItemsService::createFieldKey((int) $segment); if (is_array($value)) { if (!array_key_exists($key, $value)) { $value = static::getReferenceValueByPath($value['id'], $segment); } else { $value = $value[$key] ?? null; } } $value = is_object($value) ? (array) $value : $value; } if (is_array($value)) { if (array_key_exists('value', $value)) { $value = $value['value']; } } if (is_array($value) || is_object($value)) { return $value; } // Pick the value from the option store for the option type field. $optionStore = $item['option_store'] ?? []; if (isset($optionStore[$value])) { return $optionStore[$value]; } return $value; } /** * When creating links for nested dynamic content fields, we need to get the parent object * that contains the actual link target, rather than the final field value. * * For example, if we have a blog post with an author reference field: * { * "id": 1, * "field_1": "My Blog Post", // title field * "field_2": { // author reference field * "id": 123, * "field_3": "John Smith", // author name field * "field_4": "john@example.com" // author email field * } * } * * And we want to link to the author's email (field_2.field_4), we need to return * the entire author object (field_2) as we need the author id to create the link to navigate there. * * This method extracts the parent object by traversing the attribute path * and stopping at the second-to-last segment. * * @param array $item The item to prepare. * @param object $attribute The attribute to prepare the item for. * @return array|null The prepared item or null if the item is empty. * * @since 5.5.0 */ public static function prepareItemForLink($item, $attribute) { if (empty($item) || empty($attribute)) { return null; } $path = $attribute->path ?? ''; $segments = explode('.', $path); if (empty($segments) || !is_array($segments)) { $segments = []; } // For single segment paths (direct fields), return the item itself if (count($segments) === 1) { return $item; } if (isset($item['collection_id']) && ($item['collection_id'] === CollectionIds::ARTICLES_COLLECTION_ID || $item['collection_id'] === CollectionIds::TAGS_COLLECTION_ID)) { return $item; } $value = $item; $length = count($segments); $segmentsUntilLast = array_slice($segments, 0, $length - 1); foreach ($segmentsUntilLast as $segment) { $key = in_array($segment, static::NON_PREFIXED_FIELDS) ? $segment : CollectionItemsService::createFieldKey((int) $segment); if (is_array($value)) { if (!array_key_exists($key, $value)) { $value = static::getReferenceValueByPath($value['id'], $segment); if (!empty($value['reference_item_id'])) { $value = (new CollectionItemsService)->getCollectionItem($value['reference_item_id']); } } else { $value = $value[$key] ?? null; } } $value = is_object($value) ? (array) $value : $value; } return $value; } /** * Get the collection item ID from the URL. * * @return int|null The collection item ID or null if not found. * * @since 5.5.0 */ public static function getCollectionItemIdFromUrl() { $input = Factory::getApplication()->input; $itemIds = $input->get('collection_item_id', [], 'ARRAY'); if (empty($itemIds)) { return null; } return (int) $itemIds[count($itemIds) - 1]; } public static function getDetailPageDataFromArticles() { $itemId = static::getCollectionItemIdFromUrl(); if (empty($itemId)) { return null; } try { $db = Factory::getDbo(); $authorised = \Joomla\CMS\Access\Access::getAuthorisedViewLevels(Factory::getUser()->get('id')); $baseUrl = rtrim(Uri::root(), '/'); $query = $db->getQuery(true); $query->select([ 'a.id', 'a.title', 'a.alias', 'a.introtext', 'a.fulltext', 'a.catid', 'a.created', 'a.created_by', 'a.publish_up', 'a.images', 'a.attribs', 'a.language', 'a.featured', 'a.hits', 'b.title as category', 'b.alias as category_alias', 'u.name as username', 'u.email as created_by_email', 'CASE WHEN p.profile_value IS NOT NULL THEN CONCAT(' . $db->quote($baseUrl) . ', JSON_UNQUOTE(p.profile_value)) ELSE NULL END as profile_image' ]) ->from($db->quoteName('#__content', 'a')) ->join('LEFT', $db->quoteName('#__categories', 'b') . ' ON a.catid = b.id') ->join('LEFT', $db->quoteName('#__users', 'u') . ' ON u.id = a.created_by') ->join('LEFT', $db->quoteName('#__user_profiles', 'p') . ' ON p.user_id = a.created_by AND p.profile_key = ' . $db->quote('profileimage.profile_image')) ->where('a.id = ' . $db->quote($itemId)) ->where('a.access IN (' . implode(',', $authorised) . ')'); $db->setQuery($query); $article = $db->loadObject(); if (!$article) { return null; } $version = new Version(); $JoomlaVersion = $version->getShortVersion(); if ((float) $JoomlaVersion >= 4) { JLoader::registerAlias('FieldsHelper', 'Joomla\Component\Fields\Administrator\Helper\FieldsHelper'); } else { JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php'); } $custom_fields = FieldsHelper::getFields('com_content.article', $article); $article->introtext = $article->introtext ?? ''; $article->fulltext = $article->fulltext ?? ''; $article->hits = $article->hits ?? 0; if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } \SppagebuilderHelperArticles::applyComContentCustomFieldValuesToItem($article, $custom_fields); $articleData = (array) $article; $articleData['collection_id'] = CollectionIds::ARTICLES_COLLECTION_ID; $articleData['slug'] = $article->id . ':' . $article->alias; $articleData['catslug'] = $article->catid . ':' . $article->category_alias; if (version_compare($JoomlaVersion, '4.0.0', '>=')) { $articleData['link'] = \Joomla\CMS\Router\Route::_(\Joomla\Component\Content\Site\Helper\RouteHelper::getArticleRoute($articleData['slug'], $article->catid, $article->language)); } else { if (!class_exists('ContentHelperRoute')) { require_once JPATH_SITE . '/components/com_content/helpers/route.php'; } $articleData['link'] = \Joomla\CMS\Router\Route::_(\ContentHelperRoute::getArticleRoute($articleData['slug'], $article->catid, $article->language)); } $articleData['introtext'] = self::replaceFieldShortcodes($article->introtext, $custom_fields); $articleData['fulltext'] = self::replaceFieldShortcodes($article->fulltext, $custom_fields); $attribs = json_decode($article->attribs ?? '{}'); $feature_img = ''; if (isset($attribs->helix_ultimate_image) && $attribs->helix_ultimate_image) { $feature_img = $attribs->helix_ultimate_image; } elseif (isset($attribs->spfeatured_image) && $attribs->spfeatured_image) { $feature_img = $attribs->spfeatured_image; } if (!empty($feature_img)) { $articleData['featured_image'] = $feature_img; $img_baseurl = basename($feature_img); $small = JPATH_ROOT . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_small.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); if (file_exists($small)) { $articleData['image_small'] = Uri::root(true) . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_small.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); } $thumbnail = JPATH_ROOT . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_thumbnail.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); if (file_exists($thumbnail)) { $articleData['image_thumbnail'] = Uri::root(true) . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_thumbnail.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); } else { $articleData['image_thumbnail'] = Uri::root(true) . '/' . $articleData['featured_image']; } $medium = JPATH_ROOT . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_medium.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); if (file_exists($medium)) { $articleData['image_medium'] = Uri::root(true) . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_medium.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); } $large = JPATH_ROOT . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_large.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); if (file_exists($large)) { $articleData['image_large'] = Uri::root(true) . '/' . dirname($feature_img) . '/' . \Joomla\CMS\Filesystem\File::stripExt($img_baseurl) . '_large.' . \Joomla\CMS\Filesystem\File::getExt($img_baseurl); } } else { $articleData['featured_image'] = ''; $articleData['image_thumbnail'] = ''; $images = json_decode($article->images ?? '{}'); if (isset($images->image_intro) && $images->image_intro) { if (strpos($images->image_intro, 'http://') !== false || strpos($images->image_intro, 'https://') !== false) { $articleData['image_thumbnail'] = $images->image_intro; } else { $articleData['image_thumbnail'] = Uri::root(true) . '/' . $images->image_intro; } } elseif (isset($images->image_fulltext) && $images->image_fulltext) { if (strpos($images->image_fulltext, 'http://') !== false || strpos($images->image_fulltext, 'https://') !== false) { $articleData['image_thumbnail'] = $images->image_fulltext; } else { $articleData['image_thumbnail'] = Uri::root(true) . '/' . $images->image_fulltext; } } else { $articleData['image_thumbnail'] = false; } } $keysToAdd = [ 'image_small', 'image_medium', 'image_large', 'image_intro', 'image_intro_alt', 'float_intro', 'image_intro_caption', 'image_fulltext', 'image_fulltext_alt', 'float_fulltext', 'image_fulltext_caption' ]; foreach ($keysToAdd as $key) { if (!isset($articleData[$key])) { $articleData[$key] = ''; } } if (isset($article->images)) { $images = json_decode($article->images); if (isset($images)) { foreach ($images as $key => $value) { $articleData[$key] = $value; } } } $articleData['profile_image'] = $article->profile_image ?? ''; if (empty($articleData['profile_image'])) { $enableGravatar = \Joomla\CMS\Component\ComponentHelper::getParams('com_sppagebuilder')->get('enable_gravatar', 1); if ($enableGravatar && !empty($article->created_by_email)) { $hash = md5(strtolower(trim($article->created_by_email))); $gravatarUrl = "https://www.gravatar.com/avatar/{$hash}?s=45&d=404"; $articleData['profile_image'] = $gravatarUrl; } } $layoutQuery = $db->getQuery(true); $layoutQuery->select($db->quoteName(['content', 'text', 'css'])); $layoutQuery->from($db->quoteName('#__sppagebuilder')); $layoutQuery->where($db->quoteName('extension') . ' = ' . $db->quote('com_content')); $layoutQuery->where($db->quoteName('extension_view') . ' = ' . $db->quote('article')); $layoutQuery->where($db->quoteName('view_id') . ' = ' . (int) $article->id); $layoutQuery->where($db->quoteName('active') . ' = 1'); $db->setQuery($layoutQuery); $layoutData = $db->loadObject(); $articleData['layout'] = !empty($layoutData) ? $layoutData : null; $articleData['username'] = $article->username ?? ''; $articleData['category'] = $article->category ?? ''; return $articleData; } catch (\Exception $e) { Factory::getApplication()->enqueueMessage('Error fetching article detail: ' . $e->getMessage(), 'error'); return null; } } private static function replaceFieldShortcodes($text, $custom_fields) { $fieldMap = []; foreach ($custom_fields as $field) { if (isset($field->id)) { $fieldMap[$field->id] = (isset($field->value) && $field->value) ? $field->value : ''; } } return preg_replace_callback('/\{field\s+(\d+)\}/', function($matches) use ($fieldMap) { $fieldId = $matches[1]; $value = $fieldMap[$fieldId] ?? ''; return isset($fieldMap[$fieldId]) ? $fieldMap[$fieldId] : ''; }, $text); } /** * Get the detail page data * * @return array|null The data or null if not found * @since 6.0.0 */ public static function getDetailPageDataFromTags() { $itemId = static::getCollectionItemIdFromUrl(); $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('*') ->from('#__tags') ->where('id = ' . (int) $itemId) ->where('published = 1'); $db->setQuery($query); $tag = $db->loadObject(); if ($tag) { $tagData = (array) $tag; $tagData['collection_id'] = CollectionIds::TAGS_COLLECTION_ID; $tagData['title'] = $tagData['title'] ?? ''; $tagData['alias'] = $tagData['alias'] ?? ''; $tagData['description'] = $tagData['description'] ?? ''; return $tagData; } return null; } /** * Get the dynamic content item data from the database. * * @return array|null The dynamic content item data or null if not found. * * @since 5.5.0 */ public static function getDetailPageData() { $itemId = static::getCollectionItemIdFromUrl(); if (empty($itemId)) { return null; } $service = new CollectionDataService(); $item = $service->fetchCollectionItemById($itemId); return $item ?? null; } public static function getJoomlaSingleArticleRoute($item) { if (empty($item)) { return null; } return !empty($item['link']) ? $item['link'] : null; } /** * Create a dynamic content link. * * @param object $link The link object. * @param array $item The item to create the link for. * @return string|null The link or null if not found. * * @since 5.5.0 */ public static function createDynamicContentLink($link, $item) { if (empty($link) || empty($item)) { return null; } $linkType = $link->type ?? null; if (empty($linkType)) { return null; } switch ($linkType) { case 'page': $pageId = $link->page ?? null; if ($pageId === CollectionIds::ARTICLES_COLLECTION_ID) { return static::getJoomlaSingleArticleRoute($item); } $page = !empty($pageId) ? Page::where('id', $pageId)->first(['extension_view', 'view_id', 'id']) : null; if (empty($page) || $page->isEmpty()) { return null; } if ($page->extension_view === 'dynamic_content:detail') { $routeUrl = 'index.php?option=com_sppagebuilder&view=dynamic'; if ($page->view_id === CollectionIds::ARTICLES_COLLECTION_ID) { $routeUrl = static::getJoomlaSingleArticleRoute($item); return Route::_($routeUrl, false); } else if ($page->view_id === CollectionIds::TAGS_COLLECTION_ID) { $menuItemId = static::getTagsMenuItemId(); if (!empty($menuItemId)) { $routeUrl .= '&Itemid=' . $menuItemId; } return Route::_(static::buildRouteWithTagItemId($routeUrl, $item['id']), false); } else { $menuItemId = static::getCurrentMenuItemId($page->view_id); if (!empty($menuItemId)) { $routeUrl .= '&Itemid=' . $menuItemId; } return Route::_(static::buildRouteWithCollectionItemId($routeUrl, $item['id']), false); } } $routeUrl = 'index.php?option=com_sppagebuilder&view=page&id=' . $page->id; return Route::_($routeUrl, false); case 'url': return $link->url ?? null; case 'menu': return Route::_($link->menu, false); case 'popup': // Implement popup link later default: return null; } } /** * Generate the link attributes. * * @param array $linkOptions The link options. * @return array The link attributes. * * @since 5.5.0 */ public static function generateLinkAttributes($linkOptions) { $url = $linkOptions['url'] ?? null; $target = $linkOptions['target'] ?? null; $nofollow = $linkOptions['nofollow'] ?? null; $noreferrer = $linkOptions['noreferrer'] ?? null; $noopener = $linkOptions['noopener'] ?? null; $attributes = [ 'href' => '', 'target' => '', 'rel' => '', 'has_link' => false, ]; if (!empty($url)) { $attributes['href'] = $url; $attributes['has_link'] = true; } if (!empty($target)) { $attributes['target'] = $target; } $rel = []; if (!empty($nofollow)) { $rel[] = 'nofollow'; } if (!empty($noreferrer)) { $rel[] = 'noreferrer'; } if (!empty($noopener)) { $rel[] = 'noopener'; } if (!empty($rel)) { $attributes['rel'] = implode(' ', $rel); } return $attributes; } private static function phpToIcu(string $php): string { $map = [ 'd' => 'dd', 'j' => 'd', 'D' => 'EEE', 'l' => 'EEEE', 'm' => 'MM', 'n' => 'M', 'M' => 'MMM', 'F' => 'MMMM', 'y' => 'yy', 'Y' => 'yyyy', 'H' => 'HH', 'G' => 'H', 'h' => 'hh', 'g' => 'h', 'i' => 'mm', 's' => 'ss', 'A' => 'a', 'a' => 'a', ]; return preg_replace_callback('/[djDlmnMFyYHGhgisAa]/', function($m) use ($map) { return $map[$m[0]] ?? $m[0]; }, $php); } /** * Format the date. * * @param string $date The date to format. * @param object $attribute The attribute to format the date for. * @return string|null The formatted date or null if not found. * * @since 5.5.0 */ public static function formatDate($date, $attribute) { $format = $attribute->date_format ?? 'd M, Y H:i A'; if (empty($date) || empty($format)) { return $date; } if ($format === 'n-time-ago') { $date = Date::create($date); $now = Date::create('now'); $interval = $now->diff($date); $minutes = $interval->days * 24 * 60 + $interval->h * 60 + $interval->i; if ($minutes === 0) { return Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_JUST_NOW'); } elseif ($minutes < 60) { return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_MINUTES_AGO', $minutes); } elseif ($minutes < 1440) { $hours = floor($minutes / 60); return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_HOURS_AGO', $hours); } elseif ($minutes < 10080) { $days = floor($minutes / 1440); return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_DAYS_AGO', $days); } elseif ($minutes < 43200) { $weeks = floor($minutes / 10080); return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_WEEKS_AGO', $weeks); } elseif ($minutes < 525600) { $months = floor($minutes / 43200); return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_MONTHS_AGO', $months); } else { $years = floor($minutes / 525600); return Text::plural('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_YEARS_AGO', $years); } } $format = $format === 'custom' ? $attribute->date_format_custom : $format; $lang = Factory::getLanguage()->getTag(); $lang = str_replace('-', '_', $lang); $lang .= '@numbers=native'; $dateObj = new DateTime($date); if(!class_exists('IntlDateFormatter')) { return $dateObj->format($format); } $format = self::phpToIcu($format); $formatter = new \IntlDateFormatter( $lang, \IntlDateFormatter::NONE, \IntlDateFormatter::NONE, $dateObj->getTimezone()->getName(), \IntlDateFormatter::GREGORIAN, $format ); return $formatter->format($dateObj); } /** * Check if the field has a circular reference. * Circular reference means that the field is referencing itself. * * @param int $fieldId The field ID. * @return bool True if the field has a circular reference, false otherwise. * * @since 5.5.0 */ public static function hasCircularReference($fieldId) { $field = CollectionField::where('id', $fieldId)->first(['collection_id', 'reference_collection_id']); if ($field->isEmpty()) { return false; } return $field->collection_id === $field->reference_collection_id; } /** * Get the first collection item ID. * * @param integer $collectionId The collection ID. * @return int|null The first collection item ID or null if not found. * * @since 5.5.0 */ public static function getFirstCollectionItemId(int $collectionId) { if ($collectionId === CollectionIds::ARTICLES_COLLECTION_ID) { if (!\class_exists('SppagebuilderHelperArticles')) { require_once JPATH_ROOT . '/components/com_sppagebuilder/helpers/articles.php'; } try { $articles = \SppagebuilderHelperArticles::getArticles(1, 'oldest'); if (!empty($articles) && isset($articles[0])) { return $articles[0]->id; } } catch (\Exception $e) { return null; } return null; } if ($collectionId === CollectionIds::TAGS_COLLECTION_ID) { try { $db = \Joomla\CMS\Factory::getDbo(); $query = $db->getQuery(true) ->select('id') ->from('#__tags') ->where('published = 1') ->order('id ASC'); $db->setQuery($query, 0, 1); $tagId = $db->loadResult(); if ($tagId) { return (int) $tagId; } } catch (\Exception $e) { return null; } return null; } // Handle regular collections $item = CollectionItem::where('collection_id', $collectionId) ->orderBy('id', 'ASC') ->first(['id']); if ($item->isEmpty()) { return null; } return $item->id; } /** * Prepare the image url for displaying. * * @param string $src The image source. * @return string|null The image URL or null if not found. * * @since 5.5.0 */ public static function getImageUrl($src) { if (empty($src)) { return null; } if (strpos($src, 'http') === 0) { return $src; } return Uri::root(true) . '/' . $src; } /** * Get the value by the path. * * @param int $itemId The item ID. * @param int $fieldId The field ID. * @return array|null The value or null if not found. * * @since 5.5.0 */ protected static function getReferenceValueByPath($itemId, $fieldId) { $item = CollectionItemValue::where('item_id', $itemId) ->where('field_id', $fieldId) ->first(['value', 'reference_item_id']); if ($item->isEmpty()) { return null; } $item->id = $item->reference_item_id ?? null; return $item->toArray(); } /** * Build the route with the item ID. * * @param string $url The URL to build the route for. * @param int $itemId The item ID to build the route for. * @return string|null The built route or null if not found. * * @since 6.0.0 */ protected static function buildRouteWithArticleItemId($url, $articleId) { $currentRoute = Uri::getInstance($url); $currentRoute->setVar('collection_item_id', [$articleId]); $currentRoute->setVar('collection_type', 'articles'); return $currentRoute->toString(); } /** * Build the route with the tag item ID. * * @param string $url The URL to build the route for. * @param int $tagId The tag ID to build the route for. * @return string|null The built route or null if not found. * * @since 6.0.0 */ public static function buildRouteWithTagItemId($url, $tagId) { $currentRoute = Uri::getInstance($url); $currentRoute->setVar('collection_item_id', [$tagId]); $currentRoute->setVar('collection_type', 'tags'); return $currentRoute->toString(); } /** * Build the route with the collection item ID. * * @param string $url The URL to build the route for. * @param int $itemId The item ID to build the route for. * @return string|null The built route or null if not found. * * @since 5.5.0 */ public static function buildRouteWithCollectionItemId($url, $itemId) { $currentRoute = Uri::getInstance($url); $app = Factory::getApplication(); $input = $app->input; $itemIds = $input->get('collection_item_id', [], 'ARRAY'); $collectionIdOfItemToPush = static::getCollectionIdOfCollectionItem($itemId); $collectionType = 'normal-source'; if (empty($itemIds)) { $itemIds = []; $itemIds[] = $itemId; $currentRoute->setVar('collection_item_id', $itemIds); $currentRoute->setVar('collection_type', $collectionType); return $currentRoute->toString(); } $lastItemId = $itemIds[count($itemIds) - 1]; $itemIdToPush = $itemId; $collectionIdOfLastItem = static::getCollectionIdOfCollectionItem($lastItemId); if ($collectionIdOfLastItem !== $collectionIdOfItemToPush) { $itemIds[] = $itemIdToPush; } else { $itemIds[count($itemIds) - 1] = $itemIdToPush; } $currentRoute->setVar('collection_item_id', $itemIds); $currentRoute->setVar('collection_type', $collectionType); return $currentRoute->toString(); } /** * Get the collection ID of the collection item. * * @param int $itemId The item ID. * @return int|null The collection ID or null if not found. * * @since 5.5.0 */ protected static function getCollectionIdOfCollectionItem($itemId) { $item = CollectionItem::where('id', $itemId)->first(['collection_id']); if (!$item->isEmpty()) { return $item->collection_id; } return null; } /** * Get the menu item ID. * * @return int|null The menu item ID or null if not found. * * @since 6.0.0 */ protected static function getArticlesMenuItemId() { $pageId = Page::where(['extension_view' => 'dynamic_content:index', 'view_id' => CollectionIds::ARTICLES_COLLECTION_ID])->first(['id']); $pageId = !empty($pageId->id) ? $pageId->id : null; if (empty($pageId)) { return null; } $menuItems = Menu::whereLike('link', '%option=com_sppagebuilder&view=page&id=' . $pageId . '%') ->where('client_id', 0) ->where('published', 1) ->get(['link', 'id']); if (empty($menuItems)) { return null; } $app = Factory::getApplication(); $menu = $app->getMenu(); $activeMenuItem = $menu->getActive(); $activeMenuItemId = $activeMenuItem->id ?? null; $menuItems = Arr::make($menuItems); $menuItem = $menuItems->find(function ($item) use ($activeMenuItemId) { $query = Uri::getInstance($item->link); if ($query->getVar('view') !== 'page') { return false; } $pageId = intval($query->getVar('id') ?? 0); $pageCollectionId = static::getCollectionIdFromPageId($pageId); return ($pageCollectionId === CollectionIds::ARTICLES_COLLECTION_ID) && ($item->id === $activeMenuItemId) ? $item->id : null; }); return !empty($menuItem->id) ? $menuItem->id : null; } /** * Get the menu item ID. * * @return int|null The menu item ID or null if not found. * * @since 6.0.0 */ public static function getTagsMenuItemId() { $menuItems = Menu::whereLike('link', '%option=com_sppagebuilder%') ->where('client_id', 0) ->where('published', 1) ->get(['link', 'id']); if (empty($menuItems)) { return null; } $menuItems = Arr::make($menuItems); $menuItem = $menuItems->find(function ($item) { $query = Uri::getInstance($item->link); if ($query->getVar('view') !== 'page') { return false; } $pageId = intval($query->getVar('id') ?? 0); $pageCollectionId = static::getCollectionIdFromPageId($pageId); return $pageCollectionId === CollectionIds::TAGS_COLLECTION_ID; }); if (empty($menuItem)) { /** @var CMSApplication */ $app = Factory::getApplication(); $input = $app->input; $itemId = $input->getInt('Itemid', 0); return $itemId ?: null; } return $menuItem->id; } /** * Get the current item ID from the URL. * * @param int $collectionId The collection ID. * @return int|null The current item ID or null if not found. * * @since 5.5.0 */ public static function getCurrentMenuItemId($collectionId) { if (array_key_exists($collectionId, static::$menuItemIdCache)) { return static::$menuItemIdCache[$collectionId]; } $menuItems = Menu::whereLike('link', '%option=com_sppagebuilder%') ->where('client_id', 0) ->where('published', 1) ->get(['link', 'id']); if (empty($menuItems)) { static::$menuItemIdCache[$collectionId] = null; return null; } $menuItems = Arr::make($menuItems); $menuItem = $menuItems->find(function ($item) use ($collectionId) { $query = Uri::getInstance($item->link); if ($query->getVar('view') !== 'page') { return false; } $pageId = intval($query->getVar('id') ?? 0); $pageCollectionId = static::getCollectionIdFromPageId($pageId); if (empty($pageCollectionId)) { return false; } return $pageCollectionId === (int) $collectionId; }); if (empty($menuItem)) { /** @var CMSApplication */ $app = Factory::getApplication(); $input = $app->input; $itemId = $input->getInt('Itemid', 0); $result = $itemId ?: null; static::$menuItemIdCache[$collectionId] = $result; return $result; } static::$menuItemIdCache[$collectionId] = $menuItem->id; return $menuItem->id; } /** * Get the collection ID from the page ID. * * @param int $pageId The page ID. * @return int|null The collection ID or null if not found. * * @since 5.5.0 */ protected static function getCollectionIdFromPageId($pageId) { $page = Page::where('id', $pageId)->first(['extension_view', 'view_id', 'id']); if ($page->isEmpty()) { return null; } return $page->view_id ?? null; } } PKBA#]JߢI3 3 7components/com_sppagebuilder/dynamic-content/helper.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use JoomShaper\SPPageBuilder\DynamicContent\Exceptions\ValidatorException; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; /** * Create a new response instance * * @return Response * @since 5.5.0 */ if (!function_exists('response')) { function response() { return Response::create()->withHeaders([ 'Accept' => 'text/html, application/json, */*', 'Connection' => 'keep-alive' ]); } } /** * Execute a callback with an exception handler * * @param mixed $value * @param Closure $callback * * @return mixed * @since 5.5.0 */ if (!function_exists('withException')) { function withException($value, Closure $callback) { try { $callback($value); } catch (Exception $error) { if ($error instanceof ValidatorException) { return response()->json($error->getData(), $error->getCode()); } return response()->json(['message' => $error->getMessage()], $error->getCode()); } return $value; } } /** * Execute a callback and return the value * * @param mixed $value * @param Closure $callback * * @return mixed * @since 5.5.0 */ if (!function_exists('tap')) { function tap($value, Closure $callback) { $callback($value); return $value; } } /** * Get the current logged in user * * @return User * @since 5.5.0 */ if (!function_exists('getCurrentLoggedInUser')) { function getCurrentLoggedInUser() { if (JVERSION >= 4) { return Factory::getApplication()->getIdentity(); } return Factory::getUser(); } } /** * Execute a callback and return the data and error * * @param Closure $callback * * @return array * @since 5.5.0 */ if (!function_exists('wrapErrorSafe')) { function wrapErrorSafe(Closure $callback) { $data = null; $error = null; try { $data = $callback(); } catch (Throwable $error) { $error = $error; } return [$data, $error]; } }PKBA#]��33;components/com_sppagebuilder/dynamic-content/Controller.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent; use Exception; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\Validator; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; defined('_JEXEC') or die; class Controller { use Validator; /** * The model instance. * * @var Model|null * @since 5.5.0 */ protected $model = null; /** * The constructor. * * @param Model|null $model * @since 5.5.0 */ public function __construct(?Model $model = null) { $this->model = $model; } /** * Get the model instance. * * @return Model|null * @since 5.5.0 */ public function getModel() { return $this->model; } /** * Reorder collections. * * @param Input $input * @return void * @since 5.5.0 */ public function reorder(Request $request) { $model = $this->getModel(); if (!$model) { return response()->json(['message' => 'Model not found for reordering.'], Response::HTTP_BAD_REQUEST); } $pks = $request->getRaw('pks'); $data = [ 'pks' => $pks, ]; $this->validate($data, [ 'pks' => 'required|string', ]); if ($this->hasErrors()) { return response()->json($this->getErrors(), Response::HTTP_BAD_REQUEST); } $pks = Str::toArray($pks); try { $orderingKey = $model->getOrderingKey(); $primaryKey = $model->getPrimaryKey(); $model->whereIn($primaryKey, $pks) ->update(function ($queryBuilder) use ($pks, $orderingKey, $primaryKey) { $db = $queryBuilder->getDatabase(); $orderingQueryString = $queryBuilder->quoteNameWithPrefix($orderingKey) . ' = CASE ' . $queryBuilder->quoteNameWithPrefix($primaryKey); foreach ($pks as $index => $pk) { $orderingValue = $index + 1; $orderingQueryString .= ' WHEN ' . $db->quote($pk) . ' THEN ' . $db->quote($orderingValue) . ' '; } $orderingQueryString .= ' END'; return $orderingQueryString; }); return response()->json(true); } catch (Exception $error) { return response()->json(['message' => $error->getMessage()], Response::HTTP_INTERNAL_SERVER_ERROR); } } } PKBA#]���=�~�~=components/com_sppagebuilder/dynamic-content/QueryBuilder.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent; defined('_JEXEC') or die; use Closure; use RuntimeException; use Throwable; use Joomla\CMS\Factory; use Joomla\Database\DatabaseDriver; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\HasEagerLoading; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Operators; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Expression; class QueryBuilder { use HasEagerLoading; /** * The database driver instance. * * @var DatabaseDriver * @since 5.5.0 */ private $db; /** * The database query instance. * * @var DatabaseQuery * @since 5.5.0 */ private $query; /** * The limit of the query. * * @var int * @since 5.5.0 */ private $limit = 0; /** * The offset of the query. * * @var int * @since 5.5.0 */ private $offset = 0; /** * The columns of the query. * * @var array * @since 5.5.0 */ private $columns = []; /** * The model instance. * * @var Model * @since 5.5.0 */ protected $model; /** * The data of the query. * * @var array * @since 5.5.0 */ protected $data; /** * The static database driver instance. * * @var DatabaseDriver * @since 5.5.0 */ protected static $staticDb = null; /** * The operators that do not require a value. * * @var array * @since 5.5.0 */ protected const NO_VALUE_OPERATORS = [Operators::IS_NULL, Operators::IS_NOT_NULL]; /** * The operators that require a value. * * @var array * @since 5.5.0 */ protected const IN_OPERATORS = [Operators::IN, Operators::NOT_IN]; /** * The constructor of the class. * * @param Model $model * @since 5.5.0 */ public function __construct(Model $model) { $this->db = Factory::getDbo(); $this->query = $this->db->getQuery(true); $this->model = $model; $this->columns = []; } public function setModel(Model $model) { $this->model = $model; return $this; } /** * Get the database query instance. * * @return DatabaseQuery * @since 5.5.0 */ public function getQuery() { return $this->query; } /** * Get the database driver instance. * * @return DatabaseDriver * @since 5.5.0 */ public function getDatabase() { return $this->db; } /** * Get the static database driver instance. * * @return DatabaseDriver * @since 5.5.0 */ protected static function getStaticDb() { if (is_null(self::$staticDb)) { self::$staticDb = Factory::getDbo(); } return self::$staticDb; } /** * Clear the query. * * @param string $clause The clause * @since 5.5.0 */ public function clearQuery($clause = null) { if (is_null($clause)) { $this->query->clear(); } elseif (is_array($clause)) { foreach ($clause as $item) { $this->query->clear($item); } } else { $this->query->clear($clause); } return $this; } /** * Get the prefix of the query. * * @return string * @since 5.5.0 */ public function getPrefix() { return $this->model->getName(); } /** * Quote the column name with the prefix. * * @param string $column * @param string $as * * @return string * @since 5.5.0 */ public function quoteNameWithPrefix($column, $as = null) { $hasPrefix = strpos($column, '.') !== false; if ($hasPrefix) { return $this->db->quoteName($column, $as); } $prefix = $this->getPrefix(); $column = $prefix . '.' . $column; return $this->db->quoteName($column, $as); } /** * Quote the column name. * * @param string $column * @param string $as * @return string * @since 5.5.0 */ public function quoteName($column, $as = null) { return $this->db->quoteName($column, $as); } /** * Quote the value. * * @param string $value * @return string * @since 5.5.0 */ public function quote($value) { return $this->db->quote($value); } /** * Set the limit of the query for getting a limited number of records. * * @param int $limit * * @return self * @since 5.5.0 */ public function take(int $limit) { $this->limit = $limit; return $this; } /** * Set the offset of the query for skipping a number of records. * * @param int $offset * * @return self * @since 5.5.0 */ public function skip(int $offset = 0) { $this->offset = $offset; return $this; } /** * Set the columns of the query. * * @param array $columns * * @return self * @since 5.5.0 */ public function setColumns(array $columns = []) { $this->columns = $columns; return $this; } /** * Get the columns of the query. * * @return array * @since 5.5.0 */ public function getColumns() { return $this->columns; } /** * Eager load the relations of the query. * * @param string|array $relations * * @return self * @since 5.5.0 */ public function with($relations) { return $this->setEagerRelations($relations); } /** * Performing the AND where conditions. * * @param array $conditions * * @return self * @since 5.5.0 */ public function where($column, $operator = Operators::EQUAL, $value = null) { $this->query->where($this->buildWhere($column, $operator, $value)); return $this; } /** * Performing the NOT where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereNot($column, $value) { return $this->where($column, Operators::NOT_EQUAL, $value); } /** * Performing the greater than where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereGreaterThan($column, $value) { return $this->where($column, Operators::GREATER_THAN, $value); } /** * Performing the less than where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereLessThan($column, $value) { return $this->where($column, Operators::LESS_THAN, $value); } /** * Performing the greater than or equal where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereGreaterThanOrEqual($column, $value) { return $this->where($column, Operators::GREATER_THAN_OR_EQUAL, $value); } /** * Performing the less than or equal where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereLessThanOrEqual($column, $value) { return $this->where($column, Operators::LESS_THAN_OR_EQUAL, $value); } /** * Performing the IN where conditions. * * @param string $column * @param array $values * * @return self * @since 5.5.0 */ public function whereIn($column, array $values) { return $this->where($column, Operators::IN, $values); } /** * Performing the NOT IN where conditions. * * @param string $column * @param array $values * * @return self * @since 5.5.0 */ public function whereNotIn($column, array $values) { return $this->where($column, Operators::NOT_IN, $values); } /** * Performing the IS NULL where conditions. * * @param string $column * * @return self * @since 5.5.0 */ public function whereNull($column) { return $this->where($column, Operators::IS_NULL); } /** * Performing the IS NOT NULL where conditions. * * @param string $column * * @return self * @since 5.5.0 */ public function whereNotNull($column) { return $this->where($column, Operators::IS_NOT_NULL); } /** * Performing the BETWEEN where conditions. * * @param string $column * @param array $values * * @return self * @since 5.5.0 */ public function whereBetween($column, array $values) { return $this->where($column, Operators::BETWEEN, $values); } /** * Performing the LIKE where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereLike($column, $value) { return $this->where($column, Operators::LIKE, $value); } /** * Performing the NOT LIKE where conditions. * * @param string $column * @param mixed $value * * @return self * @since 5.5.0 */ public function whereNotLike($column, $value) { return $this->where($column, Operators::NOT_LIKE, $value); } /** * Performing the EXISTS where conditions. * * @param Closure $callback * * @return self * @since 5.5.0 */ public function whereExists(Closure $callback) { $db = $this->getDatabase(); $query = $callback($db); $this->query->where('EXISTS (' . $query->__toString() . ')'); return $this; } /** * Performing the raw where conditions. * * @param Closure $callback * * @return self * @since 5.5.0 */ public function whereRaw(Closure $callback) { $db = $this->getDatabase(); $queryString = $callback($db); $this->query->where($queryString); return $this; } /** * Performing the OR where conditions. * * @param array $conditions * * @return self * @since 5.5.0 */ public function orWhere($column, $operator = Operators::EQUAL, $value = null) { $this->query->orWhere($this->buildWhere($column, $operator, $value)); return $this; } /** * Performing the raw where conditions. * * @param Closure $callback * * @return self * @since 5.5.0 */ public function rawQuery(Closure $callback) { return tap($this, $callback); } /** * Set the columns of the query. * * @param array $columns * * @return self * @since 5.5.0 */ public function select($columns) { if (!is_array($columns)) { $columns = [$columns]; } $columns = array_map(function ($column, $key) { if (is_numeric($key)) { return $this->quoteNameWithPrefix($column); } return $this->quoteNameWithPrefix($column, $key); }, $columns, array_keys($columns)); $this->query->select($columns); return $this; } /** * Find the record by the primary key value. * * @param mixed $primaryKeyValue * * @return Model * @since 5.5.0 */ public function find($primaryKeyValue) { return $this->where($this->model->getPrimaryKey(), $primaryKeyValue)->first(); } /** * Set the order of the query. * * @param string $column * @param string $direction * * @return self * @since 5.5.0 */ public function orderBy($column, $direction = 'ASC') { // Direction is interpolated raw — allow only ASC/DESC, never client text. $direction = strtoupper($direction) === 'DESC' ? 'DESC' : 'ASC'; $this->query->order($this->db->escape($this->quoteNameWithPrefix($column)) . ' ' . $direction); return $this; } /** * Join the related model to the query. * * @param string $related * @param string $foreignKey * @param string $localKey * @param string $type * * @return self * @since 5.5.0 */ public function join($related, $foreignKey = null, $localKey = null, $type = 'INNER') { $relatedModel = new $related(); $relatedQueryProvider = new static($relatedModel); $foreignKey = $foreignKey ?? $this->model->getName() . '_' . $relatedModel->getPrimaryKey(); $localKey = $localKey ?? $relatedModel->getPrimaryKey(); $this->query->join( $type, $this->db->quoteName($relatedModel->getTable(), $relatedModel->getName()) . ' ON (' . $relatedQueryProvider->quoteNameWithPrefix($foreignKey) . ' = ' . $this->quoteNameWithPrefix($localKey) . ')' ); return $this; } /** * Join the related model to the query as a left join. * * @param string $related * @param string $foreignKey * @param string $localKey * * @return self * @since 5.5.0 */ public function leftJoin($related, $foreignKey = null, $localKey = null) { return $this->join($related, $foreignKey, $localKey, 'LEFT'); } /** * Join the related model to the query as a right join. * * @param string $related * @param string $foreignKey * @param string $localKey * * @return self * @since 5.5.0 */ public function rightJoin($related, $foreignKey = null, $localKey = null) { return $this->join($related, $foreignKey, $localKey, 'RIGHT'); } /** * Join the related model to the query as a full join. * * @param string $related * @param string $foreignKey * @param string $localKey * * @return self * @since 5.5.0 */ public function fullJoin($related, $foreignKey = null, $localKey = null) { return $this->join($related, $foreignKey, $localKey, 'FULL'); } /** * Join the related model to the query as an inner join. * * @param string $related * @param string $foreignKey * @param string $localKey * * @return self * @since 5.5.0 */ public function innerJoin($related, $foreignKey = null, $localKey = null) { return $this->join($related, $foreignKey, $localKey, 'INNER'); } /** * Get the data records from the database. * * @param array $columns * @return array * @since 5.5.0 */ public function get(array $columns = []) { $this->setColumns($columns); $this->prepareQuery(); $results = $this->db->loadObjectList(); if (empty($results)) { return []; } $models = array_map([$this->model, 'newInstance'], $results); if ($this->hasEagerRelations()) { return $this->eagerLoadRelations($models); } return $models; } /** * Get the first record from the database. * * @param array $columns * * @return Model * @since 5.5.0 */ public function first(array $columns = []) { $this->setColumns($columns); $this->prepareQuery(); $data = $this->db->loadObject(); $this->model->setItem($data); // No need to load relations eagerly if the model is empty if ($this->model->isEmpty()) { return $this->model; } if ($this->hasEagerRelations()) { $this->eagerLoadRelations([$this->model]); } return $this->model; } /** * Check if the record exists. * * @return bool * @since 5.5.0 */ public function exists() { return $this->count() > 0; } /** * Get the total number of records from the database. * * @return int * @since 5.5.0 */ public function count() { $this->clearQuery([ 'select', 'from', 'limit', 'offset', ]); $primaryKey = $this->model->getPrimaryKey(); $this->buildSelect("COUNT({$primaryKey}) as total"); $this->buildFrom($this->model->getTable()); try { $this->db->setQuery($this->query); $this->db->execute(); } catch (Throwable $error) { return 0; } return $this->db->loadResult(); } /** * Get the total number of records from the database for pagination. * * @return int * @since 5.5.0 */ public function runPaginationCountQuery() { $new = $this->newInstance(); $new->query = $this->cloneWithout(['select', 'from', 'limit', 'offset', 'join']); $primaryKey = $new->model->getPrimaryKey(); $new->buildSelect("COUNT({$primaryKey}) as total"); $new->buildFrom($new->model->getTable()); try { $new->db->setQuery($new->query); $new->db->execute(); } catch (Throwable $error) { return 0; } return $new->db->loadResult(); } /** * Get the paginated data from the database. * * @param int $perPage * @param int $currentPage * @param array $columns * * @return array * @since 5.5.0 */ public function paginate($perPage = 10, $currentPage = 1, array $columns = []) { $this->take($perPage); $this->skip(($currentPage - 1) * $perPage); $results = $this->get($columns); $count = $this->runPaginationCountQuery(); return [ 'data' => $results, 'total' => $count, 'per_page' => $perPage, 'current_page' => $currentPage, 'last_page' => ceil($count / $perPage), 'total_pages' => ceil($count / $perPage), ]; } /** * Create a new record in the database. * * @param array $data * * @return int * @since 5.5.0 */ public function create(array $data) { // If the model has an ordering key, set the ordering value to the latest ordering value + 1 if (!empty($this->model->getOrderingKey())) { $data[$this->model->getOrderingKey()] = $this->getLatestOrderingValue() + 1; } $this->query->insert($this->db->quoteName($this->model->getTable())) ->columns($this->getRecordColumns($data)) ->values($this->prepareInsertionValue($data)); try { $this->db->setQuery($this->query); $this->db->execute(); $insertId = $this->db->insertId(); if ($this->model->hasAsset()) { $this->model->newQuery() ->find($insertId) ->manageAsset(); } return $insertId; } catch (Throwable $error) { throw $error; } } /** * Create multiple records in the database. * * @param array $data * * @return int * @since 5.5.0 */ public function createMany(array $data) { if (!empty($orderingKey = $this->model->getOrderingKey())) { $lastOrderingValue = $this->getLatestOrderingValue(); foreach ($data as &$item) { $item[$orderingKey] = ++$lastOrderingValue; } unset($item); } $this->query ->insert($this->db->quoteName($this->model->getTable())) ->columns($this->db->quoteName($this->getRecordColumns($data))); $values = Arr::make($data)->map(function($record) { return $this->prepareInsertionValue($record); }); $this->query->values($values->toArray()); try { $this->db->setQuery($this->query); $this->db->execute(); } catch (Throwable $error) { throw $error; } return $this->db->getAffectedRows(); } /** * Update a record in the database. * * @param array|callable $data * * @return bool * @since 5.5.0 */ public function update($data) { if (is_callable($data)) { $fields = $data($this); } else { $fields = $this->prepareUpdateValues($data); } $this->query->update( $this->db->quoteName( $this->model->getTable(), $this->model->getName() ) )->set($fields); try { $this->db->setQuery($this->query); return $this->db->execute(); } catch (Throwable $error) { throw $error; } } /** * Delete a record from the database. * * @return bool * @since 5.5.0 */ public function delete() { $this->query->delete( $this->quoteName( $this->model->getTable(), $this->hasJoinClause() ? $this->model->getName() : null ) ); if (!$this->hasJoinClause()) { $this->removeAliasFromWhereClauses(); } try { $this->db->setQuery($this->query); return $this->db->execute(); } catch (Throwable $error) { throw $error; } return false; } /** * Begin the transaction. * * @return void * @since 5.5.0 */ public static function beginTransaction() { $db = static::getStaticDb(); $db->transactionStart(); } /** * Commit the transaction. * * @return void * @since 5.5.0 */ public static function commit() { $db = static::getStaticDb(); $db->transactionCommit(); } /** * Rollback the transaction. * * @return void * @since 5.5.0 */ public static function rollback() { $db = static::getStaticDb(); $db->transactionRollback(); } /** * Execute a callback within a transaction. * * @param callable $callback * * @return void * @since 5.5.0 */ public static function transaction(callable $callback) { static::beginTransaction(); try { $callback(); } catch (Throwable $error) { static::rollback(); throw $error; } static::commit(); } /** * Create a raw expression. * * @param mixed $value * * @return Expression * @since 5.5.0 */ public static function raw($value) { return new Expression($value); } /** * Check if the query has a join clause. * * @return bool * @since 5.5.1 */ protected function hasJoinClause() { return !empty($this->query->join) && count($this->query->join->getElements()) > 0; } /** * Remove the alias from the where clauses. * * @return self * @since 5.5.1 */ protected function removeAliasFromWhereClauses() { $whereElements = $this->query->where->getElements(); $whereElements = Arr::make($whereElements); $whereElementsWithoutAlias = $whereElements->map(function($element) { $dotIndex = strpos($element, '.'); if ($dotIndex !== false) { return substr($element, $dotIndex + 1); } return $element; }); $this->query->clear('where'); foreach ($whereElementsWithoutAlias as $whereClause) { $this->query->where($whereClause); } return $this; } /** * Set the table of the query. * * @param string $table * @since 5.5.0 */ protected function buildFrom(string $table) { $this->query->from( $this->db->quoteName($table, $this->model->getName()) ); return $this; } /** * Rearrange the select clause. * Make sure the '*' is always the first element. * * @return self * @since 5.5.0 */ protected function rearrangeSelectClause() { $select = $this->query->select->getElements(); $elements = Arr::make($select); $starIndex = $elements->findIndex(function ($element) { return strpos($element, '*') !== false; }); if ($starIndex > -1) { $starElement = $elements[$starIndex]; unset($elements[$starIndex]); $elements->prepend($starElement); } $this->clearQuery('select'); $this->query->select($elements->toArray()); return $this; } /** * Build the select query. * * @param array $columns * @since 5.5.0 */ protected function buildSelect($columns) { if (empty($columns)) { $this->query->select($this->model->getName() . '.*'); return $this->rearrangeSelectClause(); } if (!is_array($columns)) { $columns = [$columns]; } $this->query->select($columns); return $this->rearrangeSelectClause(); } /** * Build the where query using Joomla quoteName and quote methods. * * @param array $conditions * @since 5.5.0 */ protected function buildWhere($column, $operator = Operators::EQUAL, $value = null, $boolean = 'AND') { // Handle array format: ['name' => 'value', 'age' => 20] if (is_array($column) && !isset($column[0])) { $conditions = []; foreach ($column as $key => $item) { $conditions[] = $this->quoteNameWithPrefix($key) . ' ' . Operators::EQUAL . ' ' . $this->serialize($item); } return implode(" $boolean ", $conditions); } // Handle operators that do not require a value, e.g. IS NULL, IS NOT NULL if (in_array(strtoupper($operator), static::NO_VALUE_OPERATORS, true)) { return $this->quoteNameWithPrefix($column) . ' ' . $operator; } // Handle format: where('name', 'value') if (is_null($value)) { $value = $operator; $operator = Operators::EQUAL; } // Handle IN or NOT IN conditions if (in_array(strtoupper($operator), static::IN_OPERATORS, true)) { if (!is_array($value) || empty($value)) { throw new RuntimeException(sprintf('The %s operator requires a non-empty array.', strtoupper($operator))); } $quotedValues = array_map([$this, 'serialize'], $value); $value = '(' . implode(',', $quotedValues) . ')'; return $this->quoteNameWithPrefix($column) . " {$operator} " . $value; } if (strtoupper($operator) === Operators::BETWEEN) { if (!is_array($value) || count($value) !== 2) { throw new RuntimeException('The BETWEEN operator requires an array with two values.'); } $operator = Operators::BETWEEN; return $this->quoteNameWithPrefix($column) . " {$operator} " . $this->serialize($value[0]) . ' AND ' . $this->serialize($value[1]); } // Handle where('name', 'like', '%value%') // The operator is interpolated raw, so it must be a known SQL operator — never client text. if (!in_array(strtoupper($operator), Operators::all(), true)) { throw new RuntimeException(sprintf('Unsupported operator: %s', $operator)); } return $this->quoteNameWithPrefix($column) . ' ' . $operator . ' ' . $this->serialize($value); } /** * Prepare the query for getting data from database. * * @return self * @since 5.5.0 */ protected function prepareQuery() { $this->buildSelect($this->getColumns()); $this->buildFrom($this->model->getTable()); $this->query->setLimit($this->limit, $this->offset); $this->db->setQuery($this->query); return $this; } /** * Get the record columns. * * @param array $data The data * * @return array * @since 5.5.0 */ protected function getRecordColumns(array $data) { return !Arr::isAssociative($data) && !empty($data) ? array_keys($data[0]) : array_keys($data); } /** * Serialize the value. * * @param mixed $value The value * * @return mixed * @since 5.5.0 */ protected function serialize($value) { if (is_null($value)) { return 'NULL'; } if (is_array($value)) { return $this->db->quote(json_encode($value)); } if (is_integer($value) || is_float($value)) { return $value; } if (is_numeric($value)) { $isFloat = strpos(strval($value), '.') !== false; return $isFloat ? $value : intval($value); } if (is_bool($value)) { return (int) $value; } return $this->db->quote($value); } /** * Serialize the values. * * @param array $data The data * * @return Arr * @since 5.5.0 */ protected function serializeValues(array $data) { return Arr::make($data)->map(function($item) { return $this->serialize($item); }); } /** * Prepare the insertion value. * * @param array $data The data * * @return string * @since 5.5.0 */ protected function prepareInsertionValue(array $data) { return $this->serializeValues($data)->join(','); } /** * Prepare the update values. * * @param array $data The data * * @return array * @since 5.5.0 */ protected function prepareUpdateValues(array $data) { $data = Arr::make($data); return $data->map(function($item, $key) { $value = $item instanceof Expression ? (string) $item : $this->serialize($item); return $this->quoteNameWithPrefix($key) . ' = ' . $value; })->toArray(); } /** * Get the latest ordering value. * * @return int * @since 5.5.0 */ protected function getLatestOrderingValue() { $instance = $this->model->newInstance(); $orderingKey = $this->model->getOrderingKey(); return $instance->orderBy($orderingKey, 'DESC')->first([$orderingKey])->$orderingKey ?? 0; } /** * Create a new instance of the class. * * @return static * @since 5.5.0 */ protected function newInstance() { return new static($this->model); } /** * Clone the query without the specified clauses. * * @param array $without * @return DatabaseQuery * @since 5.5.0 */ protected function cloneWithout(array $without) { $query = clone $this->getQuery(); foreach ($without as $clause) { $query->clear($clause); } return $query; } /** * Convert the query to a string. * * @return string * * @return mixed * @since 5.5.0 */ public function __toString() { return $this->query->dump(); } /** * Get the query string. * * @return string * @since 5.5.0 */ public function queryString() { return (string) $this->query; } }PKBA#]���]]<components/com_sppagebuilder/dynamic-content/Models/Menu.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Menu extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__menu'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'menu'; }PKBA#]������Bcomponents/com_sppagebuilder/dynamic-content/Models/Collection.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\HasAssets; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Collection extends Model { use HasAssets; /** * The context for the collection item. * This is required for creating the asset_id. * * @var string * @since 5.5.0 */ protected $context = 'com_sppagebuilder.collection'; /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__sppagebuilder_collections'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'collection'; /** * The key used for ordering the collection. * If the table has ordering column, this property should be set to the column name. * * @var string * @since 5.5.0 */ protected $orderingKey = 'ordering'; /** * The casts for the model properties. * The output data will be casted to the types specified in the array. * * @var array * @since 5.5.0 */ protected $casts = [ 'id' => 'integer', 'title' => 'string', 'created' => 'datetime:M d, Y', 'modified' => 'datetime:M d, Y', ]; /** * Get the fields associated with the collection * * @return HasMany * @since 5.5.0 */ public function fields() { return $this->hasMany(CollectionField::class, 'collection_id', 'id'); } /** * Get the items associated with the collection. * * @return HasMany * @since 5.5.0 */ public function items() { return $this->hasMany(CollectionItem::class, 'collection_id', 'id'); } } PKBA#]Ԝ+p}}=components/com_sppagebuilder/dynamic-content/Models/Asset.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Asset extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__assets'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'asset'; /** * The attributes that should be cast. * * @var array * @since 5.5.0 */ protected $casts = [ 'id' => 'integer', 'parent_id' => 'integer', 'lft' => 'integer', 'rgt' => 'integer', 'level' => 'integer', ]; }PKBA#]��o�qq@components/com_sppagebuilder/dynamic-content/Models/Language.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Language extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__languages'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'lang_code'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'language'; }PKBA#]���gg>components/com_sppagebuilder/dynamic-content/Models/Access.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Access extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__viewlevels'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'access'; }PKBA#].�3LLKcomponents/com_sppagebuilder/dynamic-content/Models/CollectionItemValue.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; use JoomShaper\SPPageBuilder\DynamicContent\Model; class CollectionItemValue extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__sppagebuilder_collection_item_values'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'collection_item_value'; /** * The casts for the model properties. * * @var array * @since 5.5.0 */ protected $casts = [ 'item_id' => 'integer', 'field_id' => 'integer', 'value' => 'string', 'created' => 'datetime:M d, Y', 'modified' => 'datetime:M d, Y', ]; /** * Get the field associated with the collection item value. * * @return BelongsTo * @since 5.5.0 */ public function field() { return $this->belongsTo(CollectionField::class, 'field_id', 'id'); } /** * Get the reference item associated with the collection item value. * * @return BelongsTo * @since 5.5.0 */ public function references() { return $this->belongsTo(CollectionItem::class, 'reference_item_id', 'id'); } } PKBA#]7RH~, , Fcomponents/com_sppagebuilder/dynamic-content/Models/CollectionItem.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; use JoomShaper\SPPageBuilder\DynamicContent\Concerns\HasAssets; use JoomShaper\SPPageBuilder\DynamicContent\Model; class CollectionItem extends Model { use HasAssets; /** * The context for the collection item. * This is required for creating the asset_id. * * @var string * @since 5.5.0 */ protected $context = 'com_sppagebuilder.collection_item'; /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__sppagebuilder_collection_items'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'collection_item'; /** * The key used for ordering the collection items. * * @var string * @since 5.5.0 */ protected $orderingKey = 'ordering'; /** * The casts for the model properties. * * @var array * @since 5.5.0 */ protected $casts = [ 'id' => 'integer', 'collection_id' => 'integer', 'modified' => 'datetime:M d, Y', ]; /** * Get the values associated with the collection item. * * @return HasMany * @since 5.5.0 */ public function values() { return $this->hasMany(CollectionItemValue::class, 'item_id', 'id'); } /** * Get the field associated with the collection item. * * @return BelongsTo * @since 5.5.0 */ public function field() { return $this->belongsTo(CollectionField::class, 'field_id', 'id'); } /** * Get the collection associated with the collection item. * * @return BelongsTo * @since 5.5.0 */ public function collection() { return $this->belongsTo(Collection::class, 'collection_id', 'id'); } }PKBA#]0R��Icomponents/com_sppagebuilder/dynamic-content/Models/CollectionImports.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class CollectionImports extends Model { /** * The table name associated with the model. * * @var string * @since 5.7.0 */ protected $table = '#__sppagebuilder_collection_imports'; /** * The primary key for the model. * * @var string * @since 5.7.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.7.0 */ protected $name = 'collection_imports'; }PKBA#]��0<components/com_sppagebuilder/dynamic-content/Models/User.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class User extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__users'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'user'; /** * The attributes that should be cast. * * @var array * @since 5.5.0 */ protected $casts = [ 'id' => 'integer', ]; } PKBA#]�����Gcomponents/com_sppagebuilder/dynamic-content/Models/CollectionField.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; use JoomShaper\SPPageBuilder\DynamicContent\Model; class CollectionField extends Model { /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__sppagebuilder_collection_fields'; /** * The name of the model. * * @var string * @since 5.5.0 */ protected $name = 'collection_field'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The key used for ordering the collection. * * @var string * @since 5.5.0 */ protected $orderingKey = 'ordering'; /** * The casts for the model properties. * * @var array * @since 5.5.0 */ protected $casts = [ 'id' => 'integer', 'name' => 'string', 'type' => 'string', 'file_extensions' => 'array', 'collection_id' => 'integer', 'created' => 'datetime:M d, Y', 'modified' => 'datetime:M d, Y', 'is_single_location' => 'integer', ]; /** * The common columns for the model. * * @var array * @since 5.5.0 */ public const COMMON_COLUMNS = [ 'id', 'collection_id', 'name', 'type', 'description', 'options', 'max_length', 'min_length', 'default_value', 'placeholder', 'required', 'reference_collection_id', 'is_textarea', 'is_single_location', 'show_time', 'file_extensions', 'number_format', 'allow_negative', 'number_unit', 'number_step', ]; /** * Get the value of the field. * * @return HasOne * @since 5.5.0 */ public function value() { return $this->hasOne(CollectionItemValue::class, 'field_id', 'id'); } } PKBA#]�20<components/com_sppagebuilder/dynamic-content/Models/Page.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Models; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class Page extends Model { /** * The regular page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_REGULAR = 'page'; /** * The dynamic content index page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_DYNAMIC_CONTENT_INDEX = 'dynamic_content:index'; /** * The dynamic content detail page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_DYNAMIC_CONTENT_DETAIL = 'dynamic_content:detail'; /** * The popup page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_POPUP = 'popup'; /** * The module page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_MODULE = 'module'; /** * The article page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_ARTICLE = 'article'; /** * The easy store storefront page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_EASYSTORE_STOREFRONT = 'storefront'; /** * The easy store single page type. * @var string * @since 5.5.0 */ public const PAGE_TYPE_EASYSTORE_SINGLE = 'single'; /** * The table name associated with the model. * * @var string * @since 5.5.0 */ protected $table = '#__sppagebuilder'; /** * The primary key for the model. * * @var string * @since 5.5.0 */ protected $primaryKey = 'id'; /** * The name of the model. This name is important and used for renaming the table in the sql queries. * * @var string * @since 5.5.0 */ protected $name = 'page'; }PKBA#]8�I``Hcomponents/com_sppagebuilder/dynamic-content/Contracts/ModelContract.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Contracts; defined('_JEXEC') or die; interface ModelContract { /** * Convert the model to an array * * @return array * @since 5.5.0 */ public function toArray(): array; /** * Convert the model to a JSON string * * @return string * @since 5.5.0 */ public function toJson(): string; /** * Get the casts * * @return array * @since 5.5.0 */ public function getCasts(): array; /** * Get the table name * * @return string * @since 5.5.0 */ public function getTable(): string; /** * Create a new instance of the model * * @param mixed $item The item * * @return self * @since 5.5.0 */ public function newInstance($item = null): self; /** * Set the item * * @param mixed $item The item * * @return self * @since 5.5.0 */ public function setItem($item): self; /** * Get the item * * @return mixed * @since 5.5.0 */ public function getItem(); /** * Get the name * * @return string * @since 5.5.0 */ public function getName(): string; /** * Get the primary key * * @return string * @since 5.5.0 */ public function getPrimaryKey(): string; } PKBA#]@�|!%%Bcomponents/com_sppagebuilder/dynamic-content/Relations/HasMany.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Relations; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class HasMany extends Relations { /** @inheritDoc */ public function __construct(Model $parent, Model $related, string $foreignKey, string $ownerKey) { parent::__construct($parent, $related, $foreignKey, $ownerKey); } /** @inheritDoc */ public function getResults() { $ownerKey = $this->getOwnerKey(); return $this->getQuery()->where($this->foreignKey, $this->parent->{$ownerKey})->get(); } } PKBA#]�����Dcomponents/com_sppagebuilder/dynamic-content/Relations/Relations.phpnu�[���<?php namespace JoomShaper\SPPageBuilder\DynamicContent\Relations; use JoomShaper\SPPageBuilder\DynamicContent\Model; abstract class Relations { /** * The parent model. * * @var Model * @since 5.5.0 */ protected Model $parent; /** * The related model. * * @var Model * @since 5.5.0 */ protected Model $related; /** * The foreign key. * * @var string * @since 5.5.0 */ protected string $foreignKey; /** * The local key. * * @var string * @since 5.5.0 */ protected string $ownerKey; /** * The constructor. * * @param Model $parent The parent model. * @param Model $related The related model. * @param string $foreignKey The foreign key. * @param string $ownerKey The owner key. * * @since 5.5.0 */ public function __construct(Model $parent, Model $related, string $foreignKey, string $ownerKey) { $this->parent = $parent; $this->related = $related; $this->foreignKey = $foreignKey; $this->ownerKey = $ownerKey; } /** * Get the foreign key. * * @return string * @since 5.5.0 */ public function getForeignKey() { return $this->foreignKey; } /** * Get the local key. * * @return string * @since 5.5.0 */ public function getOwnerKey() { return $this->ownerKey; } /** * Get the value of the parent model by the owner key. * * @return mixed * @since 5.5.0 */ public function getOwnerForeignKeyValue() { return $this->parent->{$this->getOwnerKey()}; } /** * Get the parent model. * * @return Model * @since 5.5.0 */ public function getParentModel() { return $this->parent; } /** * Get the related model. * * @return Model * @since 5.5.0 */ public function getRelatedModel() { return $this->related; } /** * Check if the relation is a single relation. * * @return bool * @since 5.5.0 */ public function isSingleRelation() { if ($this instanceof HasOne || $this instanceof BelongsTo) { return true; } return false; } /** * Check if the relation is an inverse relation. * * @return bool * @since 5.5.0 */ public function isInverseRelation() { return $this instanceof BelongsTo; } /** * Get the query builder instance for the related model. * * @return Model * @since 5.5.0 */ public function getQuery() { return $this->related; } /** * Call the query builder methods for the related model. * * @param string $name The method name. * @param array $arguments The arguments. * * @return mixed * @since 5.5.0 */ public function __call($method, $arguments) { return $this->getQuery()->$method(...$arguments); } /** * Get the results from the relation. * * @return Model * @since 5.5.0 */ abstract public function getResults(); } PKBA#]�0��RRDcomponents/com_sppagebuilder/dynamic-content/Relations/BelongsTo.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Relations; use JoomShaper\SPPageBuilder\DynamicContent\Model; defined('_JEXEC') or die; class BelongsTo extends Relations { /** @inheritDoc */ public function __construct(Model $parent, Model $related, string $foreignKey, string $ownerKey) { parent::__construct($parent, $related, $foreignKey, $ownerKey); } /** @inheritDoc */ public function getResults() { $ownerKey = $this->getOwnerKey(); $foreignKey = $this->getForeignKey(); return $this->getQuery()->where($ownerKey, $this->parent->{$foreignKey})->first(); } } PKBA#]��K'&&Acomponents/com_sppagebuilder/dynamic-content/Relations/HasOne.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Relations; defined('_JEXEC') or die; use JoomShaper\SPPageBuilder\DynamicContent\Model; class HasOne extends Relations { /** @inheritDoc */ public function __construct(Model $parent, Model $related, string $foreignKey, string $ownerKey) { parent::__construct($parent, $related, $foreignKey, $ownerKey); } /** @inheritDoc */ public function getResults() { $ownerKey = $this->getOwnerKey(); return $this->getQuery()->where($this->foreignKey, $this->parent->{$ownerKey})->first(); } } PKBA#]��˅�Ccomponents/com_sppagebuilder/dynamic-content/Concerns/HasAssets.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Concerns; use Joomla\CMS\Factory; use Joomla\CMS\Table\Asset; use Joomla\Database\DatabaseInterface; use JoomShaper\SPPageBuilder\DynamicContent\Models\Asset as AssetModel; use JoomShaper\SPPageBuilder\DynamicContent\QueryBuilder; use Throwable; trait HasAssets { /** * Get the context. * * @return string * @since 5.5.0 */ public function getContext() { return $this->context; } /** * Set the context. * The context is required to creating the asset_id into the table. * The system will check if the context is set or not. If the context is not set, the system will not create the asset_id. * Otherwise, it skips the asset_id creation. * * @param string $context * @since 5.5.0 */ public function setContext($context) { $this->context = $context; } /** * Check if the model has asset. * * @return bool * @since 5.5.0 */ public function hasAsset() { return !is_null($this->context); } /** * Manage the asset. * * @return boolean * @since 5.5.0 */ public function manageAsset() { $parent = $this->getAssetParent(); $parentId = is_null($parent) ? 0 : $parent->id; $primaryKey = $this->getPrimaryKey(); $name = $this->getAssetName(); $title = $this->getAssetTitle(); $record = [ 'parent_id' => null, 'name' => $name, 'title' => $title, 'rules' => '{}', 'lft' => null, 'rgt' => null, 'level' => null, ]; try { if ($parentId >= 0) { if ($parentId === 0) { $node = AssetModel::where('parent_id', 0) ->orderBy('lft', 'DESC') ->first([$primaryKey, 'parent_id', 'lft', 'rgt', 'level']); } else { $node = $this->getNode($parentId); } if (is_null($node)) { return false; } $treeData = $this->getTreeRepositionData($node, 2, 'last-child'); if (empty($treeData)) { return false; } [$column, $operator, $value] = $treeData->left_where; AssetModel::where($column, $operator, $value)->update(['lft' => QueryBuilder::raw('lft + 2')]); [$column, $operator, $value] = $treeData->right_where; AssetModel::where($column, $operator, $value)->update(['rgt' => QueryBuilder::raw('rgt + 2')]); $record['parent_id'] = $treeData->new_parent_id; $record['lft'] = $treeData->new_lft; $record['rgt'] = $treeData->new_rgt; $record['level'] = $treeData->new_level; } $assetId = AssetModel::create($record); $this->newQuery()->where($primaryKey, $this->$primaryKey)->update(['asset_id' => $assetId]); } catch (Throwable $error) { return false; } return true; } /** * Delete the asset. * * @return void * @since 5.5.0 */ public function deleteAsset() { $asset = $this->getAssetInstance(); $assetName = $this->getAssetName(); $asset->loadByName($assetName); $asset->delete(); } /** * Get the Joomla Asset Table instance. * * @return Asset * @since 5.5.0 */ protected function getAssetInstance() { /** @var CMSApplication */ $app = Factory::getApplication(); $db = Factory::getContainer()->get(DatabaseInterface::class); $dispatcher = $app->getDispatcher(); return new Asset($db, $dispatcher); } /** * Get the asset name. * * @return string * @since 5.5.0 */ protected function getAssetName() { $key = $this->getPrimaryKey(); return $this->context . '.' . $this->$key; } /** * Get the asset title. * * @return string * @since 5.5.0 */ protected function getAssetTitle() { return $this->getAssetName(); } /** * Get the asset parent. * * @return Asset|null * @since 5.5.0 */ protected function getAssetParent() { $parts = explode('.', $this->getAssetName()); $component = $parts[0]; $parent = AssetModel::where('name', $component)->first(); return $parent->isEmpty() ? null : $parent; } /** * Get the node. * * @param int $id * @param string|null $key * @return object * @since 5.5.0 */ protected function getNode($id, $key = null) { $whereKey = null; $primaryKey = $this->getPrimaryKey(); switch ($key) { case 'parent': $whereKey = 'parent_id'; break; case 'left': $whereKey = 'lft'; break; case 'right': $whereKey = 'rgt'; break; default: $whereKey = $primaryKey; break; } $node = AssetModel::where($whereKey, $id)->first([$primaryKey, 'parent_id', 'lft', 'rgt', 'level']); $node->total_children = ($node->rgt - $node->lft - 1) / 2; $node->width = $node->rgt - $node->lft + 1; return $node; } /** * Get the tree reposition data. * * @param object $node * @param int $width * @param string $position * @return object * @since 5.5.0 */ protected function getTreeRepositionData($node, $width, $position = 'before') { $data = []; $key = $this->getPrimaryKey(); switch ($position) { case 'first-child': $data['left_where'] = ['lft', '>', $node->lft]; $data['right_where'] = ['rgt', '>=', $node->lft]; $data['new_lft'] = $node->lft + 1; $data['new_rgt'] = $node->lft + $width; $data['new_parent_id'] = $node->$key; $data['new_level'] = $node->level + 1; break; case 'last-child': $data['left_where'] = ['lft', '>', $node->rgt]; $data['right_where'] = ['rgt', '>=', $node->rgt]; $data['new_lft'] = $node->rgt; $data['new_rgt'] = $node->rgt + $width - 1; $data['new_parent_id'] = $node->$key; $data['new_level'] = $node->level + 1; break; case 'before': $data['left_where'] = ['lft', '>=', $node->lft]; $data['right_where'] = ['rgt', '>=', $node->lft]; $data['new_lft'] = $node->lft; $data['new_rgt'] = $node->lft + $width - 1; $data['new_parent_id'] = $node->$key; $data['new_level'] = $node->level; break; default: case 'after': $data['left_where'] = ['lft', '>', $node->rgt]; $data['right_where'] = ['rgt', '>', $node->rgt]; $data['new_lft'] = $node->rgt + 1; $data['new_rgt'] = $node->rgt + $width; $data['new_parent_id'] = $node->$key; $data['new_level'] = $node->level; break; } return (object) $data; } } PKBA#]bխy{*{*Ccomponents/com_sppagebuilder/dynamic-content/Concerns/Validator.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Concerns; defined('_JEXEC') or die; use Closure; use Exception; use JoomShaper\SPPageBuilder\DynamicContent\Constants\Validator as ValidatorConstants; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; trait Validator { /** * The errors array * * @var array * * @since 5.5.0 */ public $errors = []; /** * Validate the data * * @param array $data The data to validate * @param array $rules The rules to validate the data * * @return bool * * @since 5.5.0 */ public function validate(array $data, array $rules) { // Check the rules is an associative array or not if (!Arr::isAssociative($rules)) { throw new Exception('The rules must be an associative array'); } Arr::make($rules)->foreach(function ($rule, $key) use ($data) { $value = $data[$key] ?? null; // Check for closure rule if ($rule instanceof Closure) { $response = $rule($value, $key); if (!$response) { $this->errors[$key] = sprintf('The %s field is invalid', $key); return false; } return true; } $ruleSet = explode('|', $rule); $ruleSet = Arr::make($ruleSet); $checkingRules = $ruleSet->map(function ($rule) { $rule = explode(':', $rule, 2); return $rule[0]; })->toArray(); $ruleSet->every(function ($rule) use ($value, $key, $checkingRules) { $rule = explode(':', $rule, 2); $ruleName = $rule[0]; $ruleValue = isset($rule[1]) ? $rule[1] : null; // If the required rule is not in the checking rules and the value is falsy, then skip the validation if (!in_array('required', $checkingRules) && !$this->validateRequired($value)) { return true; } $method = ValidatorConstants::RULE_MAP[$ruleName]; return $this->$method($value, $key, $ruleValue); }); }); if (!empty($this->errors)) { return false; } return true; } /** * Validate the required value * * @param mixed $value The value to validate * * @return bool * * @since 5.5.0 */ protected function validateRequired($value) { if (is_null($value)) { return false; } elseif (!isset($value)) { return false; } elseif (is_string($value) && trim($value) === '') { return false; } elseif (is_countable($value) && count($value) < 1) { return false; } return true; } /** * Check the required rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * @since 5.5.0 */ protected function checkRequired($value, string $key) { if (!$this->validateRequired($value)) { $this->errors[$key] = sprintf('The %s field is required', $key); return false; } return true; } /** * Check the string rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * @since 5.5.0 */ protected function checkString($value, string $key) { if (!is_string($value)) { $this->errors[$key] = sprintf('The %s field must be a string', $key); return false; } return true; } /** * Check the array rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkArray($value, string $key) { if (!is_array($value)) { $this->errors[$key] = sprintf('The %s field must be an array', $key); return false; } return true; } /** * Check the object rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkObject($value, string $key) { if (!is_object($value)) { $this->errors[$key] = sprintf('The %s field must be an object', $key); return false; } return true; } /** * Check the boolean rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkBoolean($value, string $key) { if (!is_bool($value)) { $this->errors[$key] = sprintf('The %s field must be a boolean', $key); return false; } return true; } /** * Check the integer rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkInteger($value, string $key) { $value = filter_var($value, FILTER_VALIDATE_INT); if (filter_var($value, FILTER_VALIDATE_INT) === false) { $this->errors[$key] = sprintf('The %s field must be an integer', $key); return false; } return true; } /** * Check the number rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkNumber($value, string $key) { if (!is_numeric($value)) { $this->errors[$key] = sprintf('The %s field must be a number', $key); return false; } return true; } /** * Check the float rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkFloat($value, string $key) { if (!filter_var($value, FILTER_VALIDATE_FLOAT) === false) { $this->errors[$key] = sprintf('The %s field must be a float', $key); return false; } return true; } /** * Check the email rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkEmail($value, string $key) { if (!filter_var($value, FILTER_VALIDATE_EMAIL)) { $this->errors[$key] = sprintf('The %s field must be a valid email address', $key); return false; } return true; } /** * Check the url rule * * @param mixed $value The value to validate * @param string $key The key to validate * * @return bool * * @since 5.5.0 */ protected function checkUrl($value, string $key) { if (!filter_var($value, FILTER_VALIDATE_URL)) { $this->errors[$key] = sprintf('The %s field must be a valid URL', $key); return false; } return true; } /** * Check the min rule * * @param mixed $value The value to validate * @param string $key The key to validate * @param int $min The minimum value * * @return bool * * @since 5.5.0 */ protected function checkMin($value, string $key, int $min) { if (strlen($value) < $min) { $this->errors[$key] = sprintf('The %s field must be at least %s characters long', $key, $min); return false; } return true; } /** * Check the max rule * * @param mixed $value The value to validate * @param string $key The key to validate * @param int $max The maximum value * * @return bool * * @since 5.5.0 */ protected function checkMax($value, string $key, int $max) { if (strlen($value) > $max) { $this->errors[$key] = sprintf('The %s field must be at most %s characters long', $key, $max); return false; } return true; } /** * Check the in rule * * @param mixed $value The value to validate * @param string $key The key to validate * @param string $in The allowed values * * @return bool * * @since 5.5.0 */ protected function checkIn($value, string $key, string $in) { $in = explode(',', $in); if (!in_array($value, $in)) { $this->errors[$key] = sprintf('The %s field must be one of the following values: %s', $key, implode(', ', $in)); return false; } return true; } /** * Check the not in rule * * @param mixed $value The value to validate * @param string $key The key to validate * @param string $notIn The disallowed values * * @return bool * * @since 5.5.0 */ protected function checkNotIn($value, string $key, string $notIn) { $notIn = explode(',', $notIn); if (in_array($value, $notIn)) { $this->errors[$key] = sprintf('The %s field must not be one of the following values: %s', $key, implode(', ', $notIn)); return false; } return true; } /** * Check the regex rule * * @param mixed $value The value to validate * @param string $key The key to validate * @param string $regex The regex pattern * * @return bool * * @since 5.5.0 */ protected function checkRegex($value, string $key, string $regex) { if (!preg_match($regex, $value)) { $this->errors[$key] = sprintf('The %s field must match the following regex: %s', $key, $regex); return false; } return true; } /** * Check if the validator has errors * * @return bool * * @since 5.5.0 */ public function hasErrors() { return !empty($this->errors); } /** * Get the errors * * @return array * * @since 5.5.0 */ public function getErrors() { return $this->errors; } } PKBA#]��]]Icomponents/com_sppagebuilder/dynamic-content/Concerns/HasEagerLoading.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Concerns; use Closure; use JoomShaper\SPPageBuilder\DynamicContent\Model; use JoomShaper\SPPageBuilder\DynamicContent\QueryBuilder; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; defined('_JEXEC') or die; trait HasEagerLoading { /** * The eager relations of the query. * * @var array * @since 5.5.0 */ protected $eagerRelations; /** * The cached primary key values. * If the eager loading is used multiple times, it will cache the primary key values to avoid multiple queries. * * @var array * @since 5.5.0 */ protected $cachedOwnerKeyValues = []; /** * Check if the query has eager relations. * * @return bool * @since 5.5.0 */ protected function hasEagerRelations() { return !empty($this->eagerRelations); } /** * Get the eager relations of the query. * * @return array * @since 5.5.0 */ protected function getEagerRelations() { return $this->eagerRelations; } /** * Set the eager relations of the query. * * @param array $relations * @since 5.5.0 */ protected function setEagerRelations($relations) { if (!is_array($relations)) { $relations = [$relations => null]; } $relations = Arr::make($relations)->map( function ($relation, $key) { if (is_numeric($key)) { return [$relation => null]; } else { return [$key => $relation]; } } )->reduce(function ($carry, $item) { return array_merge($carry, $item); }, []); foreach ($relations as $name => $callback) { $this->eagerRelations[$name] = $callback; } return $this; } /** * Eager load the relations of the models. * * @param array<Model> $models * @return array<Model> * @since 5.5.0 */ protected function eagerLoadRelations(array $models) { $relations = $this->getEagerRelations(); foreach ($relations as $relation => $callback) { $this->eagerLoadRelation($models, $relation, $callback); } return $models; } /** * Eager load the relation of the models. * * @param array<Model> $models The parent models to eager load the relation. * @param string $relation The eager relation name defined in the model. * @param Closure|null $callback The callback function to get the related model. * * @return void * @since 5.5.0 */ protected function eagerLoadRelation(array $models, $relation, $callback) { $relationInstance = $this->model->getRelationResolver($this->model, $relation); $foreignKey = $relationInstance->getForeignKey(); $ownerKey = $relationInstance->getOwnerKey(); $relatedModel = $relationInstance->getRelatedModel(); if ($relationInstance->isInverseRelation()) { [$ownerKey, $foreignKey] = [$foreignKey, $ownerKey]; } if (empty($models)) { return; } if (empty($this->cachedOwnerKeyValues)) { foreach ($models as $model) { $this->cachedOwnerKeyValues[] = $model->{$ownerKey}; } } if (empty($this->cachedOwnerKeyValues)) { return; } if ($callback instanceof Closure) { $relatedModel = $callback($relatedModel); } if ($relationInstance->isSingleRelation()) { $ownerForeignKeyValue = $relationInstance->getOwnerForeignKeyValue(); $relationData = $relatedModel->whereIn($foreignKey, $ownerForeignKeyValue)->first(); foreach ($models as $model) { $model->setAttribute($relation, $relationData); } } else { $relationData = $relatedModel->whereIn($foreignKey, $this->cachedOwnerKeyValues)->get(); $groupedData = $this->groupByProperty($relationData, $foreignKey); foreach ($models as $model) { $ownerKeyValue = $model->{$ownerKey}; $data = $groupedData[$ownerKeyValue] ?? []; $model->setAttribute($relation, $data); } } } /** * Group the data by the property. * * @param array<Model> $data The data to group. * @param string $property The property to group the data by. * * @return array<int, Model> * @since 5.5.0 */ protected function groupByProperty(array $data, string $property) { $result = []; foreach ($data as $item) { if (!isset($result[$item->{$property}])) { $result[$item->{$property}] = []; } $result[$item->{$property}][] = $item; } return $result; } } PKBA#]Kj}��Gcomponents/com_sppagebuilder/dynamic-content/Concerns/HasAttributes.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Concerns; trait HasAttributes { /** * Check if the attribute exists. * * @param mixed $key The key * * @return bool * @since 5.5.0 */ public function hasAttribute($key) { if (empty($this->item)) { return false; } return property_exists($this->item, $key); } /** * Set the attribute value * * @param mixed $key The key * @param mixed $value The value * * @return self * @since 5.5.0 */ public function setAttribute($key, $value): self { $this->item->$key = $value; return $this; } /** * Get the attribute value * * @param mixed $key The key * * @return mixed * @since 5.5.0 */ public function getAttribute(mixed $key): mixed { if (!$key) { return null; } if ($this->hasAttribute($key)) { return $this->item->$key; } if ($this->isRelation($key)) { return $this->getRelationResolver($this, $key)->getResults(); } throw new \Exception(sprintf('Attribute [%s] does not exist on this model: %s', $key, basename(get_class($this)))); } } PKBA#]AF����Jcomponents/com_sppagebuilder/dynamic-content/Concerns/HasRelationships.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Concerns; use JoomShaper\SPPageBuilder\DynamicContent\Relations\BelongsTo; use JoomShaper\SPPageBuilder\DynamicContent\Relations\HasMany; use JoomShaper\SPPageBuilder\DynamicContent\Relations\HasOne; use JoomShaper\SPPageBuilder\DynamicContent\Relations\Relations; defined('_JEXEC') or die; trait HasRelationships { /** * The relation resolvers cache. * * @var array<string, array<string, Relations>> * @since 5.5.0 */ protected static $relationResolversCache = []; /** * Undocumented function * * @param Model $model * @param string $key * @return Relations|null */ public function getRelationResolver($model, $key) { $className = get_class($model); if ($resolver = static::$relationResolversCache[$className][$key] ?? null) { return $resolver; } $response = method_exists($model, $key) ? $model::$key() : null; if (is_null($response)) { return null; } static::$relationResolversCache[$className][$key] = $response; return static::$relationResolversCache[$className][$key]; } /** * Check if the relation exists. * * @param string $key The key * * @return bool * @since 5.5.0 */ public function isRelation($key) { return method_exists($this, $key) && $this->getRelationResolver($this, $key) instanceof Relations; } /** * Has one relationship * * @param string $related The related model * @param string $foreignKey The foreign key * @param string $localKey The local key * * @return HasOne * @since 5.5.0 */ public function hasOne($related, $foreignKey = null, $localKey = null) { $foreignKey = $foreignKey ?: $this->getForeignKey(); $localKey = $localKey ?: $this->getPrimaryKey(); return new HasOne( $this, $this->newRelatedInstance($related), $foreignKey, $localKey ); } /** * Has many relationship * * @param string $related The related model * @param string $foreignKey The foreign key * @param string $localKey The local key * * @return HasMany * @since 5.5.0 */ public function hasMany($related, $foreignKey = null, $localKey = null) { $foreignKey = $foreignKey ?: $this->getForeignKey(); $localKey = $localKey ?: $this->getPrimaryKey(); return new HasMany( $this, $this->newRelatedInstance($related), $foreignKey, $localKey ); } /** * Belongs to relationship * * @param string $related The related model * @param string $foreignKey The foreign key * @param string $localKey The local key * * @return BelongsTo * @since 5.5.0 */ public function belongsTo($related, $foreignKey = null, $ownerKey = null) { $foreignKey = $foreignKey ?: $this->getForeignKey(); $ownerKey = $ownerKey ?: $this->getPrimaryKey(); return new BelongsTo( $this, $this->newRelatedInstance($related), $foreignKey, $ownerKey ); } /** * Create a new related instance * * @param string $class The class name * * @return self * @since 5.5.0 */ protected function newRelatedInstance($class) { return new $class(); } } PKBA#]��/Ncomponents/com_sppagebuilder/dynamic-content/Exceptions/ValidatorException.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Exceptions; use Exception; class ValidatorException extends Exception { /** * The validation errors. * * @var array * @since 5.5.0 */ protected $data; /** * Constructor. * * @param array $data The validation errors. * @param string $message The error message. * @param int $code The error code. * @param Exception $previous The previous exception. * * @since 5.5.0 */ public function __construct(array $data, $message = 'Validation failed', $code = 400, Exception $previous = null) { $this->data = $data; parent::__construct($message, $code, $previous); } /** * Get the validation errors. * * @return array * @since 5.5.0 */ public function getData() { return $this->data; } /** * Convert the exception to a string. * * @return string * @since 5.5.0 */ public function __toString() { return json_encode($this->getData()); } } PKBA#]Aؖ��?components/com_sppagebuilder/dynamic-content/DynamicContent.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent; defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Session\Session; use Joomla\CMS\Version; use Joomla\Input\Input; use JoomShaper\SPPageBuilder\DynamicContent\Http\Request; use JoomShaper\SPPageBuilder\DynamicContent\Http\Response; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; class DynamicContent { /** * The instance of the dynamic content * * @var self * @since 5.5.0 */ private static $instance = null; /** * The controller instance * * @var Controller * @since 5.5.0 */ private $controller = null; /** * The controller namespace * * @var string * @since 5.5.0 */ protected const CONTROLLER_NAMESPACE = "JoomShaper\\SPPageBuilder\\DynamicContent\\Controllers\\"; /** * The service namespace * * @var string * @since 5.5.0 */ protected const SERVICE_NAMESPACE = "JoomShaper\\SPPageBuilder\\DynamicContent\\Services\\"; /** * Constructor method * * @param Controller $controller The controller * * @since 5.5.0 */ private function __construct($controller) { $this->controller = $controller; } /** * Create a new instance of the dynamic content * * @param Controller $controller The controller * * @return self * @since 5.5.0 */ public static function create($controller) { if (self::$instance === null) { self::$instance = new static($controller); } return self::$instance; } /** * Dispatch the request * * @param string $task The task * @param Input $input The input * * @return Response * @since 5.5.0 */ public function dispatch(string $task, Input $input) { $joomlaVersion = defined('JVERSION') ? JVERSION : (new Version())->getShortVersion(); $isJoomla6OrHigher = version_compare($joomlaVersion, '6.0', '>='); if ($isJoomla6OrHigher) { $context = $input->getString('_context', ''); $requestData = array_merge( $input->get->getArray(), $input->post->getArray() ); } else { $context = $input->getString('_context', ''); $requestData = $input->getArray(); } /** @var Request $request */ $request = new Request($requestData); if (empty($context)) { return response()->json(['message' => 'Context is required. Please provide a valid context for the request using the `_context` parameter.'], Response::HTTP_BAD_REQUEST); } if (empty($task)) { return response()->json(['message' => 'Task is required'], Response::HTTP_BAD_REQUEST); } if (!Session::checkToken()) { return response()->json(['message' => 'Invalid token provided'], Response::HTTP_UNAUTHORIZED); } $task = $this->createRequestMethod($task); $controllerClass = $this->createControllerClassName($context); if (!class_exists($controllerClass)) { return response()->json(['message' => sprintf('Controller class `%s` not found', $controllerClass)], Response::HTTP_NOT_FOUND); } $serviceClass = $this->createServiceClassName($context); $service = null; if (class_exists($serviceClass)) { $service = new $serviceClass(); } $controller = new $controllerClass($service, $this->controller); if (!method_exists($controller, $task)) { return response()->json(['message' => 'Invalid endpoint provided'], Response::HTTP_NOT_FOUND); } return $controller->$task($request); } /** * Create a request method from the request parameter named task. * * @param string $task The task * * @return string * @since 5.5.0 */ protected function createRequestMethod(string $task) { $task = preg_replace('/[^a-zA-Z0-9-]/', '', $task); $parts = explode('-', $task); return Arr::make($parts)->map(function ($part, $index) { $part = strtolower($part); if ($index === 0) { return $part; } return ucfirst($part); })->join(''); } /** * Create a controller class name from the context * * @param string $context The context * * @return string * @since 5.5.0 */ protected function createControllerClassName(string $context) { $context = preg_replace('/[^a-zA-Z0-9-]/', '', $context); $parts = explode('-', $context); $baseName = Arr::make($parts)->map(function ($part) { $part = strtolower($part); return ucfirst($part); })->join(''); return static::CONTROLLER_NAMESPACE . $baseName . 'Controller'; } /** * Create a service class name from the context * * @param string $context The context * * @return string * @since 5.5.0 */ protected function createServiceClassName(string $context) { $context = preg_replace('/[^a-zA-Z0-9-]/', '', $context); $parts = explode('-', $context); $baseName = Arr::make($parts)->map(function ($part) { $part = strtolower($part); return ucfirst($part); })->join(''); return static::SERVICE_NAMESPACE . $baseName . 'Service'; } } PKBA#]�zhSІІIcomponents/com_sppagebuilder/dynamic-content/Constants/ArticleLayouts.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; /** * Collection ID constants for special system collections * * @since 6.0.0 */ class ArticleLayouts { const DEFAULT_LAYOUT_ARTICLE_INDEX = '[{"id":"641783be-87ab-48bd-bf40-d84c73888d55","visibility":true,"collapse":false,"settings":{"admin_label":"","fit_columns":{"xl":true,"sm":false},"background_type":"none","background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"background_image":{"src":""},"background_parallax":"0","background_repeat":"no-repeat","background_size":"cover","background_size_custom":{"unit":"px"},"background_attachment":"fixed","background_position":"0 0","background_position_custom_x":{"unit":"px"},"background_position_custom_y":{"unit":"px"},"external_background_video":0,"background_video_ogv":{"src":""},"video_loop":1,"padding":{"xl":"75px 0px 75px 0px","lg":"","md":"","sm":"","xs":""},"margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"overlay_type":"overlay_none","gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"pattern_overlay":"","overlay_pattern_color":"","blend_mode":"normal","columns_align_center":0,"columns_content_alignment":"center","stretch_section":0,"fullscreen":0,"no_gutter":0,"row_width":{"unit":"px"},"row_max_width":{"unit":"px"},"row_min_width":{"unit":"px"},"row_border":0,"row_border_style":"solid","show_top_shape":"","shape_name":"clouds-flat","shape_color":"#e5e5e5","shape_width":{"md":100,"sm":100,"xs":100},"shape_height":"","shape_flip":false,"shape_invert":false,"shape_to_front":false,"show_bottom_shape":"","bottom_shape_name":"clouds-opacity","bottom_shape_color":"#e5e5e5","bottom_shape_width":{"xl":100},"bottom_shape_height":"","bottom_shape_flip":false,"bottom_shape_invert":false,"bottom_shape_to_front":false,"acl":"","row_boxshadow":"0 0 0 0 #FFFFFF","row_custom_css":"","heading_selector":"h3","title_fontsize":"","title_fontweight":"","title_position":"center","hidden_xl":"","hidden_lg":"","hidden_md":"","hidden_sm":"","hidden_xs":"","enable_animation":"1","animationduration":"300","animationdelay":"0"},"layout":"12","columns":[{"id":"2806f07e-cd59-474c-95eb-f38716e40fdd","class_name":"row-column","visibility":true,"settings":{"background_type":"none","background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"background_image":{"src":""},"background_repeat":"no-repeat","background_size":"cover","background_size_custom":{"unit":"px"},"background_attachment":"scroll","background_position":"0 0","background_position_custom_x":{"unit":"px"},"background_position_custom_y":{"unit":"px"},"overlay_type":"overlay_color","gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"pattern_overlay":{"src":""},"overlay_pattern_color":"","blend_mode":"normal","use_border":0,"border_width":"","boxshadow":"0 0 0 0 #FFFFFF","items_align_center":0,"items_content_alignment":"center","column_custom_css":"","tablet_order_landscape":"","tablet_order":"","mobile_order_landscape":"","mobile_order":"","hidden_xl":"","hidden_lg":"","hidden_md":"","hidden_sm":"","hidden_xs":"","enable_animation":"1","animationduration":"300","animationdelay":"0","width":{"xl":"100%","lg":"100%","md":"100%","sm":"100%","xs":"100%"}},"addons":[{"id":"a2ebb474-7a18-42e0-a659-798ea30f57aa","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["3448d774-0707-47a5-a64d-a84b2e21b89a"]},{"id":"3448d774-0707-47a5-a64d-a84b2e21b89a","type":"content","name":"heading","visibility":true,"title":"Heading","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M18.631 30v-1.648h.517c.445 0 .86-.032 1.248-.094.39-.065.727-.197 1.012-.394.286-.196.516-.482.688-.851.172-.37.257-.862.257-1.477v-9.19H9.65v9.19c0 .614.085 1.105.256 1.477.172.369.401.655.688.851.286.199.625.328 1.02.394.395.063.807.095 1.24.095h.517V30H2v-1.647h.497c.444 0 .86-.032 1.249-.095a2.524 2.524 0 001.021-.394c.292-.198.52-.482.688-.85.165-.37.246-.864.246-1.478V6.31c0-.574-.086-1.036-.257-1.388a2.007 2.007 0 00-.698-.814 2.506 2.506 0 00-1.022-.374 8.227 8.227 0 00-1.228-.086H2V2h11.37v1.647h-.517a7.68 7.68 0 00-1.24.096 2.456 2.456 0 00-1.02.393c-.286.197-.515.481-.688.852-.171.37-.256.862-.256 1.475v7.927H22.35V6.463c0-.614-.085-1.105-.256-1.476-.171-.37-.401-.655-.688-.851a2.452 2.452 0 00-1.012-.393 7.601 7.601 0 00-1.249-.096h-.516V2H30v1.647h-.496c-.445 0-.86.031-1.249.096a2.529 2.529 0 00-1.021.393c-.292.197-.52.481-.687.851-.167.37-.248.862-.248 1.476v19.265c0 .575.087 1.037.257 1.388.171.352.405.617.697.794.291.18.63.297 1.02.356.39.058.799.086 1.23.086H30V30H18.631z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"title":"Blog Posts","heading_selector":"h1","title_text_shadow":"0 0 0 transparent","alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"title_icon_position":"before","title_margin":{"xl":"0px 0px 90px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":88},"heading_typography":{"font":"Arial","uppercase":true,"italic":false,"underline":false,"weight":"700","size":{"xl":{"value":"90","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"-4","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"title_color":{"type":"solid","color":"#474652","color2":"","pos":0,"pos2":100,"deg":0,"radialPos":"center center"}},"parent":"a2ebb474-7a18-42e0-a659-798ea30f57aa"},{"id":"127467ce-57ea-4b87-8c40-bb00568b6550","type":"dynamic-content","name":"dynamic_content_collection","visibility":true,"title":"Collection","icon":"<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.467 6.91c0-.083.059-.309.523-.638.445-.315 1.136-.63 2.056-.906 1.831-.549 4.404-.9 7.278-.9 2.874 0 5.447.351 7.278.9.92.276 1.612.59 2.056.906.464.329.524.555.524.639 0 .083-.06.31-.524.638-.444.316-1.136.63-2.056.906-1.83.55-4.404.9-7.278.9-2.874 0-5.447-.35-7.278-.9-.92-.276-1.611-.59-2.056-.906-.464-.329-.523-.555-.523-.638ZM16.324 3c-2.975 0-5.697.36-7.7.962-.996.298-1.856.669-2.483 1.114C5.533 5.506 5 6.116 5 6.91c0 .033 0 .066.003.099A.74.74 0 0 0 5 7.074h.008H5v16.567c0 .816.477 1.488 1.1 2 .628.516 1.492.948 2.495 1.296 2.012.7 4.745 1.12 7.73 1.12 2.983 0 5.716-.42 7.729-1.12 1.003-.349 1.867-.78 2.494-1.296.623-.512 1.1-1.184 1.1-2V7.075h-.007v-.001h.007a.73.73 0 0 0-.003-.065c.002-.032.003-.065.003-.098 0-.795-.533-1.404-1.141-1.835-.627-.445-1.487-.816-2.483-1.114C22.022 3.36 19.299 3 16.324 3Zm9.858 5.957c-.586.352-1.324.653-2.158.903-2.002.6-4.725.961-7.7.961-2.975 0-5.697-.36-7.7-.961-.833-.25-1.571-.55-2.157-.903v6.771c0 .084.062.31.523.636.445.316 1.136.63 2.056.906 1.831.55 4.404.9 7.278.9 2.874 0 5.447-.35 7.278-.9.92-.276 1.612-.59 2.056-.906.464-.329.524-.555.524-.638V8.957ZM6.467 23.641v-5.868c.586.352 1.324.652 2.158.902 2.002.6 4.724.961 7.7.961 2.974 0 5.697-.36 7.699-.961.834-.25 1.572-.55 2.158-.902v5.868c0 .2-.116.497-.565.867-.444.365-1.131.726-2.045 1.044-1.82.633-4.383 1.037-7.248 1.037s-5.427-.404-7.248-1.037c-.914-.318-1.6-.68-2.045-1.044-.449-.37-.564-.666-.564-.867Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId {\n max-width: 1168px;\n margin: 0 auto;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"direction":"asc","filters":"","limit":"10","pagination":1,"pagination_type":"load-more","pagination_load_more_button_text":"Load More","pagination_buttons_position":"start","pagination_load_more_button_type":"primary","display":"grid","grid_columns":{"xl":"2","sm":"1"},"flex_direction":"column","flex_wrap":"wrap","vertical_alignment":"start","horizontal_alignment":"start","column_gap":{"xl":"24"},"row_gap":{"xl":"70"},"item_options":"normal","source":-2,"no_records_message":"","no_records_description":"","item_width":{"xl":""},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":13},"pagination_margin":{"xl":"35px 0px 0px 0px"}},"child_nodes":[{"id":"87f78113-a91d-4387-b82a-f26d4b8479d5","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"block","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"child_nodes":[{"id":"dbbc4788-adba-4db1-b1e6-3646820e429e","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":{"xl":"0px 0px 18px 0px"},"global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"8","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"sppb-readmore-wrapper","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"block","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible","global_background_color":""},"child_nodes":[{"id":"8f0be00f-5921-4ff3-a866-0df12748f6b8","type":"dynamic-content","name":"dynamic_content_image","visibility":true,"title":"Dynamic Media","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 8.792C3 6.698 4.712 5 6.824 5h15.295c2.112 0 3.824 1.698 3.824 3.792v6.066a.758.758 0 0 1-.472.7.77.77 0 0 1-.833-.163l-3.23-3.202a.769.769 0 0 0-1.189.134l-5.446 8.64c-.854 1.356-2.814 1.439-3.781.16l-1.885-2.492a.768.768 0 0 0-1.268.064l-3.301 5.455a2.287 2.287 0 0 0 2.286 2.08h7.648c.422 0 .764.339.764.758a.762.762 0 0 1-.764.758H6.824C4.712 27.75 3 26.052 3 23.958V8.792ZM4.53 21.22l1.997-3.302c.839-1.385 2.826-1.487 3.803-.195l1.886 2.493a.768.768 0 0 0 1.26-.053l5.446-8.64a2.306 2.306 0 0 1 3.568-.404l1.924 1.908V8.792a2.285 2.285 0 0 0-2.295-2.275H6.824A2.285 2.285 0 0 0 4.53 8.792V21.22ZM9.118 9.55c-.845 0-1.53.679-1.53 1.517 0 .837.686 1.516 1.53 1.516.845 0 1.53-.679 1.53-1.516 0-.838-.685-1.517-1.53-1.517ZM6.06 11.067c0-1.676 1.37-3.034 3.06-3.034 1.689 0 3.058 1.358 3.058 3.034 0 1.675-1.37 3.033-3.059 3.033-1.69 0-3.059-1.358-3.059-3.033Zm18.579 5.59a.77.77 0 0 1 1.081 0l2.715 2.692.001.002.018.017c.095.093.214.209.303.323.108.14.244.363.244.667 0 .304-.136.527-.244.667-.09.114-.208.23-.303.322l-.018.018-.001.002-2.715 2.69a.77.77 0 0 1-1.081 0 .754.754 0 0 1 0-1.072l1.885-1.869h-5.942c-1.197 0-2.285 1.078-2.285 2.559 0 1.48 1.088 2.558 2.285 2.558h3.05c.422 0 .765.34.765.759a.762.762 0 0 1-.765.758h-3.05c-2.172 0-3.815-1.892-3.815-4.075 0-2.184 1.643-4.076 3.815-4.076h5.942l-1.885-1.869a.754.754 0 0 1 0-1.072Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"sppb-readmore-img","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"global_addon_position_top":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"item_alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"enable_slider":0,"enable_arrows":0,"slider_style":"thumb","image_per_slide":1,"gallery_width":{"xl":200},"gallery_height":{"xl":200},"gallery_item_gap":{"xl":0},"gallery_border_radius":0,"gallery_heading_selector":"h3","mp4_enable":0,"show_control":1,"video_loop":0,"video_mute":1,"autoplay_video":0,"download_video":1,"show_rel_video":0,"no_cookie":0,"youtube_shorts":0,"vimeo_show_author":0,"vimeo_mute_video":1,"vimeo_show_author_profile":0,"vimeo_show_video_title":0,"image_fit":"cover","is_effects_enabled":0,"attribute":{"id":-6,"name":"Featured Image","fullname":"Articles > Featured Image","type":"image","level":2,"path":"featured_image"},"height":{"xl":"462"},"margin":{"xl":"0px 0px 0px 0px"},"radius":{"xl":"8"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":148},"global_addon_z_index":""}}]}]},{"id":"48ff5f38-7246-4c38-b045-f6426d3fb1f5","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"flex-start","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"8px","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"child_nodes":[{"id":"6a3a4c70-6296-4a5c-8514-09018cfb50d6","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-18,"name":"Category","fullname":"Articles > Category","type":"text","level":2,"path":"category"},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":138}}},{"id":"53d27dc2-7827-48c2-9e7d-999dba356ed8","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"7px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-16,"name":"Created Date","fullname":"Articles > Created Date","type":"date-time","level":2,"path":"created","date_format":"d M, Y"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":298},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"icon":"fas fa-circle","icon_color":"#474652"}}]},{"id":"d9ed670f-ddd1-43be-bd5e-9072b37858b9","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"h5","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"15px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-3,"name":"Title","fullname":"Articles > Title","type":"text","level":2,"path":"title"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":138},"typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"700","size":{"xl":{"value":"24","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"color":"#474652"}},{"id":"65c0f743-fd83-4765-a093-f8f77721ab91","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"8px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-4,"name":"Intro Text","fullname":"Articles > Intro Text","type":"rich-text","level":2,"path":"introtext"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":298},"color":"#474652","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"","size":{"xl":{"value":"16","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}}},{"id":"12bfb2d4-ef4a-4671-adf4-d3ad02de40c4","type":"general","name":"button","visibility":true,"title":"Button","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 8a4 4 0 014-4h24a4 4 0 014 4v9a4 4 0 01-4 4h-.5a1 1 0 110-2h.5a2 2 0 002-2V8a2 2 0 00-2-2H4a2 2 0 00-2 2v9a2 2 0 002 2h9a1 1 0 110 2H4a4 4 0 01-4-4V8z\" fill=\"currentColor\"\/><path opacity=\".5\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M16.004 12.669l1.526 9.46c.05.408.508.611.864.408l2.645-1.882 3.612 5.137c.508.661 2.034-.407 1.577-1.068l-3.612-5.188 2.696-1.832c.305-.254.305-.762-.05-.966l-8.393-4.68a.604.604 0 00-.865.611z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":{"xl":" "},"global_margin":{"xl":"18px 0px 0px 0px"},"global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId a {\n padding-left: 0px;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"text":"Read More","aria_label":"","type":"custom","appearance":"","shape":"rounded","button_padding":{"xl":"4px 12px 4px 12px"},"alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"icon_position":"right","icon_margin":{"xl":"1px 0px 1px 2px","lg":"","md":"","sm":"","xs":""},"button_style_state":"hover","color":"#656470","color_hover":"#FFFFFF","background_color":"#F5F5F5","background_color_hover":"#6C63FF","background_gradient":{"color":"#3366FF","color2":"#0037DD","deg":"45","type":"linear"},"background_gradient_hover":{"color":"#0037DD","color2":"#3366FF","deg":"45","type":"linear"},"button_link_style_state":"normal","link_button_color":"#3366FF","link_button_border_width":"1","link_border_color":"#3366FF","link_button_hover_color":"#0037DD","link_button_border_hover_color":"#0037DD","url":{"type":"page","url":"","menu":"","page":-2,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":140},"typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"700","size":{"xl":{"value":"16","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"22","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"size":"custom","icon":"fas fa-chevron-right"},"parent":false}],"parent":"a8b4c45b-0ca5-48a0-a08e-8c5f2cce77a5"},{"id":"a8b4c45b-0ca5-48a0-a08e-8c5f2cce77a5","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"block","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["127467ce-57ea-4b87-8c40-bb00568b6550"]}]}],"parent":false}]'; const DEFAULT_LAYOUT_ARTICLE_DETAILS = '[{"id":"9041b86a-fd75-4b0a-8ac0-861a319e6655","visibility":true,"collapse":false,"settings":{"admin_label":"","fit_columns":{"xl":true,"sm":false},"background_type":"none","background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"background_image":{"src":""},"background_parallax":"0","background_repeat":"no-repeat","background_size":"cover","background_size_custom":{"unit":"px"},"background_attachment":"fixed","background_position":"0 0","background_position_custom_x":{"unit":"px"},"background_position_custom_y":{"unit":"px"},"external_background_video":0,"background_video_ogv":{"src":""},"video_loop":1,"padding":{"xl":"75px 0px 75px 0px","lg":"","md":"","sm":"","xs":""},"margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"overlay_type":"overlay_none","gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"pattern_overlay":"","overlay_pattern_color":"","blend_mode":"normal","columns_align_center":0,"columns_content_alignment":"center","stretch_section":0,"fullscreen":0,"no_gutter":0,"row_width":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"row_max_width":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"row_min_width":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"row_border":0,"row_border_style":"solid","show_top_shape":"","shape_name":"clouds-flat","shape_color":"#e5e5e5","shape_width":{"md":100,"sm":100,"xs":100},"shape_height":"","shape_flip":false,"shape_invert":false,"shape_to_front":false,"show_bottom_shape":"","bottom_shape_name":"clouds-opacity","bottom_shape_color":"#e5e5e5","bottom_shape_width":{"xl":100},"bottom_shape_height":"","bottom_shape_flip":false,"bottom_shape_invert":false,"bottom_shape_to_front":false,"acl":"","row_boxshadow":"0 0 0 0 #FFFFFF","row_custom_css":"","heading_selector":"h3","title_fontsize":"","title_fontweight":"","title_position":"center","hidden_xl":"","hidden_lg":"","hidden_md":"","hidden_sm":"","hidden_xs":"","enable_animation":"1","animationduration":"300","animationdelay":"0","columns_gap":{"xl":"","lg":"","md":"","sm":"","xs":"","unit":"px"},"id":"","class":"","container_width":"","title":"","subtitle":""},"layout":"12","columns":[{"id":"7640e52f-78ce-4923-a808-5490f22313a6","class_name":"row-column","visibility":true,"settings":{"background_type":"none","background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"background_image":{"src":""},"background_repeat":"no-repeat","background_size":"cover","background_size_custom":{"unit":"px"},"background_attachment":"scroll","background_position":"0 0","background_position_custom_x":{"unit":"px"},"background_position_custom_y":{"unit":"px"},"overlay_type":"overlay_color","gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"pattern_overlay":{"src":""},"overlay_pattern_color":"","blend_mode":"normal","use_border":0,"border_width":"","boxshadow":"0 0 0 0 #FFFFFF","items_align_center":0,"items_content_alignment":"center","column_custom_css":"","tablet_order_landscape":"","tablet_order":"","mobile_order_landscape":"","mobile_order":"","hidden_xl":"","hidden_lg":"","hidden_md":"","hidden_sm":"","hidden_xs":"","enable_animation":"1","animationduration":"300","animationdelay":"0","width":{"xl":"100%","lg":"100%","md":"100%","sm":"100%","xs":"100%"}},"addons":[{"id":"371e8628-add3-46f0-8688-e8786186d103","type":"dynamic-content","name":"dynamic_content_image","visibility":true,"title":"Dynamic Media","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 8.792C3 6.698 4.712 5 6.824 5h15.295c2.112 0 3.824 1.698 3.824 3.792v6.066a.758.758 0 0 1-.472.7.77.77 0 0 1-.833-.163l-3.23-3.202a.769.769 0 0 0-1.189.134l-5.446 8.64c-.854 1.356-2.814 1.439-3.781.16l-1.885-2.492a.768.768 0 0 0-1.268.064l-3.301 5.455a2.287 2.287 0 0 0 2.286 2.08h7.648c.422 0 .764.339.764.758a.762.762 0 0 1-.764.758H6.824C4.712 27.75 3 26.052 3 23.958V8.792ZM4.53 21.22l1.997-3.302c.839-1.385 2.826-1.487 3.803-.195l1.886 2.493a.768.768 0 0 0 1.26-.053l5.446-8.64a2.306 2.306 0 0 1 3.568-.404l1.924 1.908V8.792a2.285 2.285 0 0 0-2.295-2.275H6.824A2.285 2.285 0 0 0 4.53 8.792V21.22ZM9.118 9.55c-.845 0-1.53.679-1.53 1.517 0 .837.686 1.516 1.53 1.516.845 0 1.53-.679 1.53-1.516 0-.838-.685-1.517-1.53-1.517ZM6.06 11.067c0-1.676 1.37-3.034 3.06-3.034 1.689 0 3.058 1.358 3.058 3.034 0 1.675-1.37 3.033-3.059 3.033-1.69 0-3.059-1.358-3.059-3.033Zm18.579 5.59a.77.77 0 0 1 1.081 0l2.715 2.692.001.002.018.017c.095.093.214.209.303.323.108.14.244.363.244.667 0 .304-.136.527-.244.667-.09.114-.208.23-.303.322l-.018.018-.001.002-2.715 2.69a.77.77 0 0 1-1.081 0 .754.754 0 0 1 0-1.072l1.885-1.869h-5.942c-1.197 0-2.285 1.078-2.285 2.559 0 1.48 1.088 2.558 2.285 2.558h3.05c.422 0 .765.34.765.759a.762.762 0 0 1-.765.758h-3.05c-2.172 0-3.815-1.892-3.815-4.075 0-2.184 1.643-4.076 3.815-4.076h5.942l-1.885-1.869a.754.754 0 0 1 0-1.072Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"item_alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"enable_slider":0,"enable_arrows":0,"slider_style":"thumb","image_per_slide":1,"gallery_width":{"xl":200},"gallery_height":{"xl":200},"gallery_item_gap":{"xl":0},"gallery_border_radius":0,"gallery_heading_selector":"h3","mp4_enable":0,"show_control":1,"video_loop":0,"video_mute":1,"autoplay_video":0,"download_video":1,"show_rel_video":0,"no_cookie":0,"youtube_shorts":0,"vimeo_show_author":0,"vimeo_mute_video":1,"vimeo_show_author_profile":0,"vimeo_show_video_title":0,"image_fit":"cover","is_effects_enabled":0,"attribute":{"id":-6,"name":"Featured Image","fullname":"Articles > Featured Image","type":"image","level":2,"path":"featured_image"},"margin":{"xl":"0px 0px 64px 0px"},"radius":{"xl":"8"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":123}}},{"id":"e837d53e-31df-47f3-a93b-59a32ac5b462","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId .sppb-dynamic-content-text__icon.fas.fa-circle {\n margin-top: 1.5px;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"7px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-16,"name":"Created Date","fullname":"Articles > Created Date","type":"date-time","level":2,"path":"created","date_format":"d M, Y"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":51},"color":"#868686","icon":"fas fa-circle","icon_color":"#474652","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}},"parent":"48dcb032-84cd-48ee-bced-f6fcc3621d9f"},{"id":"b85517df-7a1f-4e58-98a8-a01c48d89882","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["655912d4-fe7c-474e-bbfd-0a3d7446b15b","f5e1f838-e703-43ca-b6c3-98af4c3e7a4a"],"parent":"48dcb032-84cd-48ee-bced-f6fcc3621d9f"},{"id":"655912d4-fe7c-474e-bbfd-0a3d7446b15b","type":"content","name":"heading","visibility":true,"title":"Heading","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M18.631 30v-1.648h.517c.445 0 .86-.032 1.248-.094.39-.065.727-.197 1.012-.394.286-.196.516-.482.688-.851.172-.37.257-.862.257-1.477v-9.19H9.65v9.19c0 .614.085 1.105.256 1.477.172.369.401.655.688.851.286.199.625.328 1.02.394.395.063.807.095 1.24.095h.517V30H2v-1.647h.497c.444 0 .86-.032 1.249-.095a2.524 2.524 0 001.021-.394c.292-.198.52-.482.688-.85.165-.37.246-.864.246-1.478V6.31c0-.574-.086-1.036-.257-1.388a2.007 2.007 0 00-.698-.814 2.506 2.506 0 00-1.022-.374 8.227 8.227 0 00-1.228-.086H2V2h11.37v1.647h-.517a7.68 7.68 0 00-1.24.096 2.456 2.456 0 00-1.02.393c-.286.197-.515.481-.688.852-.171.37-.256.862-.256 1.475v7.927H22.35V6.463c0-.614-.085-1.105-.256-1.476-.171-.37-.401-.655-.688-.851a2.452 2.452 0 00-1.012-.393 7.601 7.601 0 00-1.249-.096h-.516V2H30v1.647h-.496c-.445 0-.86.031-1.249.096a2.529 2.529 0 00-1.021.393c-.292.197-.52.481-.687.851-.167.37-.248.862-.248 1.476v19.265c0 .575.087 1.037.257 1.388.171.352.405.617.697.794.291.18.63.297 1.02.356.39.058.799.086 1.23.086H30V30H18.631z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId span.fas.fa-circle.sppb-addon-title-icon:before {\n font-size: 7px;\n vertical-align: middle;\n margin-right: 4px;\n}\n\n#addonId {\n transform: translateY(-1.1px);\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"title":"By","heading_selector":"p","title_text_shadow":"0 0 0 transparent","alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"title_icon_position":"before","title_margin":{"xl":"0px 2px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":104},"title_color":{"type":"solid","color":"#868686","color2":"","pos":0,"pos2":100,"deg":0,"radialPos":"center center"},"title_icon":"fas fa-circle","title_icon_color":"#474652","heading_typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}},"parent":"b85517df-7a1f-4e58-98a8-a01c48d89882"},{"id":"f5e1f838-e703-43ca-b6c3-98af4c3e7a4a","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-17,"name":"Author","fullname":"Articles > Author","type":"text","level":2,"path":"username"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":104},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}},"parent":"b85517df-7a1f-4e58-98a8-a01c48d89882"},{"id":"696d01bb-0806-4258-9504-c49f11f9925d","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-18,"name":"Category","fullname":"Articles > Category","type":"text","level":2,"path":"category"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":104},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}},"parent":"48dcb032-84cd-48ee-bced-f6fcc3621d9f"},{"id":"48dcb032-84cd-48ee-bced-f6fcc3621d9f","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"8px","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["696d01bb-0806-4258-9504-c49f11f9925d","e837d53e-31df-47f3-a93b-59a32ac5b462","b85517df-7a1f-4e58-98a8-a01c48d89882"]},{"id":"d914fcb8-8509-4fd3-9506-afdb7e7ec43d","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":{"xl":"0px 118px 0px 118px","sm":"0px 0px 0px 0px"},"global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonWrapper {\n width: 100%;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":0,"hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"column","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible","width":{"xl":""}},"children":["1fd9d68f-e1e8-4b42-b707-a83f871d569b","e1fb2073-3516-4b6a-a59d-3f6fe3dfbf1e","09899845-14da-42b5-89cd-a39d6cb44b64","384a1d35-6c14-4533-b149-00237874a769"],"parent":"e3078979-ae34-4796-a03c-2c9e9b4ac664"},{"id":"e3078979-ae34-4796-a03c-2c9e9b4ac664","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["d914fcb8-8509-4fd3-9506-afdb7e7ec43d"]},{"id":"c463b502-c22c-4ca2-8931-2234a88e3605","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"block","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["0c8a7c9d-1cda-4249-bb2c-ca0f4789d2d9","538013a1-5930-4c30-9c51-5b425563bb8d"]},{"id":"0c8a7c9d-1cda-4249-bb2c-ca0f4789d2d9","type":"content","name":"heading","visibility":true,"title":"Heading","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M18.631 30v-1.648h.517c.445 0 .86-.032 1.248-.094.39-.065.727-.197 1.012-.394.286-.196.516-.482.688-.851.172-.37.257-.862.257-1.477v-9.19H9.65v9.19c0 .614.085 1.105.256 1.477.172.369.401.655.688.851.286.199.625.328 1.02.394.395.063.807.095 1.24.095h.517V30H2v-1.647h.497c.444 0 .86-.032 1.249-.095a2.524 2.524 0 001.021-.394c.292-.198.52-.482.688-.85.165-.37.246-.864.246-1.478V6.31c0-.574-.086-1.036-.257-1.388a2.007 2.007 0 00-.698-.814 2.506 2.506 0 00-1.022-.374 8.227 8.227 0 00-1.228-.086H2V2h11.37v1.647h-.517a7.68 7.68 0 00-1.24.096 2.456 2.456 0 00-1.02.393c-.286.197-.515.481-.688.852-.171.37-.256.862-.256 1.475v7.927H22.35V6.463c0-.614-.085-1.105-.256-1.476-.171-.37-.401-.655-.688-.851a2.452 2.452 0 00-1.012-.393 7.601 7.601 0 00-1.249-.096h-.516V2H30v1.647h-.496c-.445 0-.86.031-1.249.096a2.529 2.529 0 00-1.021.393c-.292.197-.52.481-.687.851-.167.37-.248.862-.248 1.476v19.265c0 .575.087 1.037.257 1.388.171.352.405.617.697.794.291.18.63.297 1.02.356.39.058.799.086 1.23.086H30V30H18.631z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"title":"YOU MAY ALSO LIKE","heading_selector":"h3","title_text_shadow":"0 0 0 transparent","alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"title_icon_position":"before","title_margin":{"xl":"161px 0px 60px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":117},"heading_typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"","size":{"xl":{"value":"48","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"title_color":{"type":"solid","color":"#474652","color2":"","pos":0,"pos2":100,"deg":0,"radialPos":"center center"}},"parent":"c463b502-c22c-4ca2-8931-2234a88e3605"},{"id":"538013a1-5930-4c30-9c51-5b425563bb8d","type":"dynamic-content","name":"dynamic_content_collection","visibility":true,"title":"Collection","icon":"<svg width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.467 6.91c0-.083.059-.309.523-.638.445-.315 1.136-.63 2.056-.906 1.831-.549 4.404-.9 7.278-.9 2.874 0 5.447.351 7.278.9.92.276 1.612.59 2.056.906.464.329.524.555.524.639 0 .083-.06.31-.524.638-.444.316-1.136.63-2.056.906-1.83.55-4.404.9-7.278.9-2.874 0-5.447-.35-7.278-.9-.92-.276-1.611-.59-2.056-.906-.464-.329-.523-.555-.523-.638ZM16.324 3c-2.975 0-5.697.36-7.7.962-.996.298-1.856.669-2.483 1.114C5.533 5.506 5 6.116 5 6.91c0 .033 0 .066.003.099A.74.74 0 0 0 5 7.074h.008H5v16.567c0 .816.477 1.488 1.1 2 .628.516 1.492.948 2.495 1.296 2.012.7 4.745 1.12 7.73 1.12 2.983 0 5.716-.42 7.729-1.12 1.003-.349 1.867-.78 2.494-1.296.623-.512 1.1-1.184 1.1-2V7.075h-.007v-.001h.007a.73.73 0 0 0-.003-.065c.002-.032.003-.065.003-.098 0-.795-.533-1.404-1.141-1.835-.627-.445-1.487-.816-2.483-1.114C22.022 3.36 19.299 3 16.324 3Zm9.858 5.957c-.586.352-1.324.653-2.158.903-2.002.6-4.725.961-7.7.961-2.975 0-5.697-.36-7.7-.961-.833-.25-1.571-.55-2.157-.903v6.771c0 .084.062.31.523.636.445.316 1.136.63 2.056.906 1.831.55 4.404.9 7.278.9 2.874 0 5.447-.35 7.278-.9.92-.276 1.612-.59 2.056-.906.464-.329.524-.555.524-.638V8.957ZM6.467 23.641v-5.868c.586.352 1.324.652 2.158.902 2.002.6 4.724.961 7.7.961 2.974 0 5.697-.36 7.699-.961.834-.25 1.572-.55 2.158-.902v5.868c0 .2-.116.497-.565.867-.444.365-1.131.726-2.045 1.044-1.82.633-4.383 1.037-7.248 1.037s-5.427-.404-7.248-1.037c-.914-.318-1.6-.68-2.045-1.044-.449-.37-.564-.666-.564-.867Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"direction":"asc","filters":"","limit":"2","pagination":0,"pagination_type":"load-more","pagination_load_more_button_text":"Load More","pagination_buttons_position":"start","pagination_load_more_button_type":"primary","display":"grid","grid_columns":{"xl":"2","sm":"1"},"flex_direction":"column","flex_wrap":"wrap","vertical_alignment":"start","horizontal_alignment":"start","column_gap":{"xl":"32"},"row_gap":{"xl":"32"},"item_options":"normal","source":-2,"no_records_message":"","no_records_description":"","item_width":{"xl":""},"link":{"type":"page","url":"","menu":"","page":-2,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":14}},"child_nodes":[{"id":"373a725c-86d5-4a50-8d0e-198439658573","type":"dynamic-content","name":"dynamic_content_image","visibility":true,"title":"Dynamic Media","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M3 8.792C3 6.698 4.712 5 6.824 5h15.295c2.112 0 3.824 1.698 3.824 3.792v6.066a.758.758 0 0 1-.472.7.77.77 0 0 1-.833-.163l-3.23-3.202a.769.769 0 0 0-1.189.134l-5.446 8.64c-.854 1.356-2.814 1.439-3.781.16l-1.885-2.492a.768.768 0 0 0-1.268.064l-3.301 5.455a2.287 2.287 0 0 0 2.286 2.08h7.648c.422 0 .764.339.764.758a.762.762 0 0 1-.764.758H6.824C4.712 27.75 3 26.052 3 23.958V8.792ZM4.53 21.22l1.997-3.302c.839-1.385 2.826-1.487 3.803-.195l1.886 2.493a.768.768 0 0 0 1.26-.053l5.446-8.64a2.306 2.306 0 0 1 3.568-.404l1.924 1.908V8.792a2.285 2.285 0 0 0-2.295-2.275H6.824A2.285 2.285 0 0 0 4.53 8.792V21.22ZM9.118 9.55c-.845 0-1.53.679-1.53 1.517 0 .837.686 1.516 1.53 1.516.845 0 1.53-.679 1.53-1.516 0-.838-.685-1.517-1.53-1.517ZM6.06 11.067c0-1.676 1.37-3.034 3.06-3.034 1.689 0 3.058 1.358 3.058 3.034 0 1.675-1.37 3.033-3.059 3.033-1.69 0-3.059-1.358-3.059-3.033Zm18.579 5.59a.77.77 0 0 1 1.081 0l2.715 2.692.001.002.018.017c.095.093.214.209.303.323.108.14.244.363.244.667 0 .304-.136.527-.244.667-.09.114-.208.23-.303.322l-.018.018-.001.002-2.715 2.69a.77.77 0 0 1-1.081 0 .754.754 0 0 1 0-1.072l1.885-1.869h-5.942c-1.197 0-2.285 1.078-2.285 2.559 0 1.48 1.088 2.558 2.285 2.558h3.05c.422 0 .765.34.765.759a.762.762 0 0 1-.765.758h-3.05c-2.172 0-3.815-1.892-3.815-4.075 0-2.184 1.643-4.076 3.815-4.076h5.942l-1.885-1.869a.754.754 0 0 1 0-1.072Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"item_alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"enable_slider":0,"enable_arrows":0,"slider_style":"thumb","image_per_slide":1,"gallery_width":{"xl":200},"gallery_height":{"xl":200},"gallery_item_gap":{"xl":0},"gallery_border_radius":0,"gallery_heading_selector":"h3","mp4_enable":0,"show_control":1,"video_loop":0,"video_mute":1,"autoplay_video":0,"download_video":1,"show_rel_video":0,"no_cookie":0,"youtube_shorts":0,"vimeo_show_author":0,"vimeo_mute_video":1,"vimeo_show_author_profile":0,"vimeo_show_video_title":0,"image_fit":"cover","is_effects_enabled":0,"attribute":{"id":-6,"name":"Featured Image","fullname":"Articles > Featured Image","type":"image","level":2,"path":"featured_image"},"height":{"xl":"462"},"margin":{"xl":"0px 0px 18px 0px"},"radius":{"xl":"8"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":123}}},{"id":"7475324c-19ea-43ff-8a2e-155d5040b634","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"flex-start","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"8px","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"child_nodes":[{"id":"dab5f065-8473-40c4-9084-d12b05c43956","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-18,"name":"Category","fullname":"Articles > Category","type":"text","level":2,"path":"category"},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":89}}},{"id":"2367ee88-c45b-40f5-9dc3-2ef2dc67749c","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"7px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-16,"name":"Created Date","fullname":"Articles > Created Date","type":"date-time","level":2,"path":"created","date_format":"d M, Y"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":48},"color":"#868686","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"14","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"icon":"fas fa-circle","icon_color":"#474652"}}]},{"id":"5cc6e20a-88d4-4492-b51a-7ed6a151cd7e","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"h5","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"10px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-3,"name":"Title","fullname":"Articles > Title","type":"text","level":2,"path":"title"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":48},"typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"700","size":{"xl":{"value":"24","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"color":"#474652"}}],"parent":"c463b502-c22c-4ca2-8931-2234a88e3605"},{"id":"e1fb2073-3516-4b6a-a59d-3f6fe3dfbf1e","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"p","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-4,"name":"Intro Text","fullname":"Articles > Intro Text","type":"rich-text","level":2,"path":"introtext"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":74},"color":"#474652","typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"20","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"30","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"alignment":{"xl":"center"}},"parent":"d914fcb8-8509-4fd3-9506-afdb7e7ec43d"},{"id":"09899845-14da-42b5-89cd-a39d6cb44b64","type":"structure","name":"div","visibility":true,"title":"Div","icon":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 32 32\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M0 5.1h2.9V2.9h2.2V0H0v5.1z\" fill=\"currentColor\"><\/path><path d=\"M19.7 0h-7.3v2.9h7.3V0z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M26.9 0v2.9h2.2v2.2H32V0h-5.1z\" fill=\"currentColor\"><\/path><path d=\"M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z\" fill=\"currentColor\"><\/path><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z\" fill=\"currentColor\"><\/path><path d=\"M19.7 29.1h-7.3V32h7.3v-2.9z\" fill=\"currentColor\"><\/path><\/svg>","settings":{"global_padding":"","global_margin":{"xl":"64px 0px 0px 0px"},"global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"display":"flex","flex_direction":{"xl":"row","lg":"","md":"","sm":"","xs":""},"reverse_direction":{"xl":0,"lg":0,"md":0,"sm":0,"xs":0},"justify_content":{"xl":"center","lg":"","md":"","sm":"","xs":""},"align_items":{"xl":"center","lg":"","md":"","sm":"","xs":""},"flex_wrap":{"xl":"nowrap","lg":"","md":"","sm":"","xs":""},"flex_gap":{"xl":"24px","lg":"","md":"","sm":"","xs":""},"overflow":"visible"},"children":["575850de-765a-4e92-95ff-ec52ed89fdc1","6f2bee4d-60f6-489b-9b8a-933c511ba99f"],"parent":"d914fcb8-8509-4fd3-9506-afdb7e7ec43d"},{"id":"384a1d35-6c14-4533-b149-00237874a769","type":"content","name":"comment","visibility":true,"title":"Comment","icon":"<svg width=\"24\" height=\"25\" viewBox=\"0 0 24 25\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\t\t\t\t\t\t<path d=\"M7.9668 13.823H12.9974M7.9668 9.63086H10.4821\" stroke=\"#6F7CA3\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n\t\t\t\t\t\t<path d=\"M12.1691 5.02051H3.93555C3.38326 5.02051 2.93555 5.46822 2.93555 6.02051V17.4002C2.93555 17.9525 3.38326 18.4002 3.93555 18.4002H6.29105V21.7797C6.29105 21.7867 6.29922 21.7906 6.30471 21.7862L10.4929 18.4002H18.703C19.2553 18.4002 19.703 17.9525 19.703 17.4002V12.5694\" stroke=\"#6F7CA3\" stroke-width=\"1.3\" stroke-linecap=\"round\"\/>\n\t\t\t\t\t\t<ellipse cx=\"17.3784\" cy=\"7.39731\" rx=\"3.68696\" ry=\"3.68686\" fill=\"#6F7CA3\"\/>\n\t\t\t\t\t\t<path d=\"M15.875 7.39743H18.8838M17.3794 5.89307V8.90179\" stroke=\"white\" stroke-width=\"0.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n\t\t\t\t\t\t<\/svg>\n\t\t\t\t\t\t","settings":{"global_padding":"","global_margin":{"xl":"120px 0px 0px 0px"},"global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonWrapper {\n width: 100%;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"title_text":"Comments","title_color":"#000000","title_alignment":{"xl":"flex-start","lg":"","md":"","sm":"","xs":""},"comment_count":"1","comment_count_color":"#7A7C85","comment_count_position":"right","enable_label":"1","label_text":"Leave a comment","label_color":"#000000","label_alignment":{"xl":"flex-start","lg":"","md":"","sm":"","xs":""},"comment_field_placeholder":"Share your thoughts...","comment_field_height":88,"comment_field_padding":"16px 16px 16px 16px","comment_field_placeholder_color":"#646E8F","comment_field_typing_color":"#000000","comment_field_background_color":"#FFFFFF","comment_field_background_hover_color":"#FFFFFF","comment_field_placeholder_hover_color":"#7A7C85","comment_field_border_width":"1px 1px 1px 1px","comment_field_border_color":"#D3D7EB","comment_field_border_focus_color":"#3366FF","post_button_text":"Leave a comment","post_button_aria_label":"","enable_anonymous_comment":1,"post_button_type":"default","post_button_appearance":"","post_button_shape":"rounded","post_button_padding":"","post_button_alignment":{"xl":"flex-end","lg":"","md":"","sm":"","xs":""},"post_button_icon_position":"left","post_button_icon_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"post_button_style_state":"normal","post_button_color":"#FFFFFF","post_button_color_hover":"#FFFFFF","post_button_background_color":"#3366FF","post_button_background_color_hover":"#0037DD","post_button_background_gradient":{"color":"#3366FF","color2":"#0037DD","deg":"45","type":"linear"},"post_button_background_gradient_hover":{"color":"#0037DD","color2":"#3366FF","deg":"45","type":"linear"},"post_button_link_style_state":"normal","post_button_link_color":"#3366FF","post_button_link_border_width":1,"post_button_link_border_color":"#3366FF","post_button_link_hover_color":"#0037DD","post_button_link_border_hover_color":"#0037DD","edit_comment_button_item":[{"title":"Cancel"},{"title":"Update"}],"edit_comment_button_gap":10,"edit_comment_button_alignment":{"xl":"flex-end","lg":"","md":"","sm":"","xs":""},"commentator_name_color":"#000000","commentator_avatar_color":"#4285F4","enable_time":1,"time_color":"#7A7C85","show_edited_time":1,"edited_time_color":"#7A7C85","posted_comment_color":"#484F66","ellipsis_button_style":"custom","ellipsis_appearance":"flat","ellipsis_shape":"rounded","ellipsis_size":"","ellipsis_position":"right","ellipsis_style_state":"normal","ellipsis_icon_color":"#6F7CA3","ellipsis_action_button_item":[{"title":"Edit"},{"title":"Delete"}],"enable_likes":"1","likes_color":"#7A7C85","likes_hover_color":"#343D57","likes_focused_color":"#EE563D","likes_icon":"","likes_icon_position":"left","enable_reply":"1","reply_color":"#7A7C85","reply_hover_color":"#343D57","reply_icon":"","reply_icon_position":"left"},"parent":"d914fcb8-8509-4fd3-9506-afdb7e7ec43d"},{"id":"6f2bee4d-60f6-489b-9b8a-933c511ba99f","type":"content","name":"social_share","visibility":true,"title":"Social Share","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M24.5 2a3.5 3.5 0 100 7 3.5 3.5 0 000-7zM19 5.5a5.5 5.5 0 1111 0 5.5 5.5 0 01-11 0zM6.5 12.5a3.5 3.5 0 100 7 3.5 3.5 0 000-7zM1 16a5.5 5.5 0 1111 0 5.5 5.5 0 01-11 0zM24.5 23a3.5 3.5 0 100 7 3.5 3.5 0 000-7zM19 26.5a5.5 5.5 0 1111 0 5.5 5.5 0 01-11 0z\" fill=\"currentColor\"\/><path opacity=\".5\" fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M9.521 17.762a1 1 0 011.367-.361l10.246 5.97a1 1 0 01-1.007 1.728l-10.245-5.97a1 1 0 01-.361-1.367zM21.479 7.261a1 1 0 01-.36 1.368l-10.23 5.97a1 1 0 01-1.008-1.728l10.23-5.97a1 1 0 011.368.36z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":{"xl":"0px 0px 0px 0px"},"global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId .sppb-social-share-style-custom ul li a i {\n font-size: 12px;\n\n}\n\n.sppb-social-share-style-custom ul li a {\n padding: 3.5px 2px 3.5px 2px;\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"show_socials":["facebook","twitter","linkedin"],"show_social_names":0,"social_style":"custom","social_border_radius":"2","icon_align":{"xl":"left","lg":"","md":"","sm":"","xs":""},"color_tab":"hover","icon_color":"#6C63FF","background_color":"#FFFFFF","social_border_width":"1","icon_hover_color":"#FFFFFF","background_hover_color":"#6C63FF","heading_selector":"h3","title":"","title_margin_top":{"xl":""},"social_border_color":"#6C63FF"},"parent":"09899845-14da-42b5-89cd-a39d6cb44b64"},{"id":"575850de-765a-4e92-95ff-ec52ed89fdc1","type":"content","name":"heading","visibility":true,"title":"Heading","icon":"<svg viewBox=\"0 0 32 32\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M18.631 30v-1.648h.517c.445 0 .86-.032 1.248-.094.39-.065.727-.197 1.012-.394.286-.196.516-.482.688-.851.172-.37.257-.862.257-1.477v-9.19H9.65v9.19c0 .614.085 1.105.256 1.477.172.369.401.655.688.851.286.199.625.328 1.02.394.395.063.807.095 1.24.095h.517V30H2v-1.647h.497c.444 0 .86-.032 1.249-.095a2.524 2.524 0 001.021-.394c.292-.198.52-.482.688-.85.165-.37.246-.864.246-1.478V6.31c0-.574-.086-1.036-.257-1.388a2.007 2.007 0 00-.698-.814 2.506 2.506 0 00-1.022-.374 8.227 8.227 0 00-1.228-.086H2V2h11.37v1.647h-.517a7.68 7.68 0 00-1.24.096 2.456 2.456 0 00-1.02.393c-.286.197-.515.481-.688.852-.171.37-.256.862-.256 1.475v7.927H22.35V6.463c0-.614-.085-1.105-.256-1.476-.171-.37-.401-.655-.688-.851a2.452 2.452 0 00-1.012-.393 7.601 7.601 0 00-1.249-.096h-.516V2H30v1.647h-.496c-.445 0-.86.031-1.249.096a2.529 2.529 0 00-1.021.393c-.292.197-.52.481-.687.851-.167.37-.248.862-.248 1.476v19.265c0 .575.087 1.037.257 1.388.171.352.405.617.697.794.291.18.63.297 1.02.356.39.058.799.086 1.23.086H30V30H18.631z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":"","global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"title":"Share with your friends","heading_selector":"p","title_text_shadow":"0 0 0 transparent","alignment":{"xl":"left","lg":"","md":"","sm":"","xs":""},"title_icon_position":"before","title_margin":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 0px 0px 0px","lg":"","md":"","sm":"","xs":""},"title_link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":129},"title_color":{"type":"solid","color":"#868686","color2":"","pos":0,"pos2":100,"deg":0,"radialPos":"center center"},"heading_typography":{"font":"Arial","uppercase":false,"italic":false,"underline":false,"weight":"","size":{"xl":{"value":"16","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""}},"parent":"09899845-14da-42b5-89cd-a39d6cb44b64"},{"id":"1fd9d68f-e1e8-4b42-b707-a83f871d569b","type":"dynamic-content","name":"dynamic_content_text","visibility":true,"title":"Dynamic Text","icon":"<svg viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M6.611 4.444a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334ZM3 6.611a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0ZM25.389 23.222a2.167 2.167 0 1 0 0 4.334 2.167 2.167 0 0 0 0-4.334Zm-3.611 2.167a3.611 3.611 0 1 1 7.222 0 3.611 3.611 0 0 1-7.222 0Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M8.778 6.611c0-.399.323-.722.722-.722h14.444c1.197 0 2.167.97 2.167 2.167v10.833a.722.722 0 1 1-1.444 0V8.056a.722.722 0 0 0-.723-.723H9.5a.722.722 0 0 1-.722-.722ZM23.222 25.389a.722.722 0 0 1-.722.722H8.056a2.167 2.167 0 0 1-2.167-2.167V13.111a.722.722 0 1 1 1.444 0v10.833c0 .4.324.723.723.723H22.5c.399 0 .722.323.722.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.99 16.212a.722.722 0 0 1 1.02 0l2.379 2.378 2.378-2.378a.722.722 0 0 1 1.021 1.02l-2.684 2.686a1.011 1.011 0 0 1-1.43 0l-2.685-2.685a.722.722 0 0 1 0-1.021ZM10.01 15.789a.722.722 0 0 1-1.02 0L6.61 13.41 4.233 15.79a.722.722 0 0 1-1.021-1.022l2.684-2.684a1.011 1.011 0 0 1 1.43 0l2.685 2.684a.722.722 0 0 1 0 1.022ZM16 11.667c.399 0 .722.323.722.722v8.667a.722.722 0 0 1-1.444 0v-8.667c0-.399.323-.722.722-.722Z\" fill=\"#6F7CA3\"\/><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.056 11.667a.722.722 0 0 1-.723.722h-8.666a.722.722 0 1 1 0-1.445h8.666c.4 0 .723.324.723.723Z\" fill=\"currentColor\"\/><\/svg>","settings":{"global_padding":"","global_margin":"","global_background_type":"none","global_background_gradient":{"color":"#00c6fb","color2":"#005bea","deg":"45","type":"linear"},"global_background_image":{"src":""},"global_background_repeat":"no-repeat","global_background_size":"cover","global_background_attachment":"inherit","global_background_position":"50% 50%","global_use_overlay":0,"global_overlay_type":"overlay_none","global_gradient_overlay":{"color":"rgba(127, 0, 255, 0.8)","color2":"rgba(225, 0, 255, 0.7)","deg":"45","type":"linear"},"global_pattern_overlay":{"src":""},"global_overlay_pattern_color":"","blend_mode":"normal","global_user_border":0,"global_border_width":{"xl":"","lg":"","md":"","sm":"","xs":""},"transform":{"move":{"x":{"value":"","unit":"px"},"y":{"value":"","unit":"px"}},"rotate":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"},"z":{"value":"","unit":"deg"}},"scale":{"x":"","y":""},"skew":{"x":{"value":"","unit":"deg"},"y":{"value":"","unit":"deg"}},"transform_origin":{"top":{"value":"50","unit":"%"},"left":{"value":"50","unit":"%"}}},"global_use_animation":0,"global_animationduration":"300","global_animationdelay":"0","global_border_radius":{"xl":"","lg":"","md":"","sm":"","xs":""},"global_boxshadow":"0 0 0 0 #FFFFFF","class":"","global_custom_css":"#addonId {\n text-align: center\n}","global_custom_position":0,"global_seclect_position":"relative","global_addon_position_left":{"unit":"px"},"global_addon_position_top":{"unit":"px"},"use_global_width":"0","hidden_xl":"0","hidden_lg":"0","hidden_md":"0","hidden_sm":"0","hidden_xs":"0","acl":"","admin_label":"","while_scroll_view":[{"enable_while_scroll_view":0,"scrolling_options":"fullpage","on_scroll_actions":[{"id":"b3fdc1c1e6bfde5942ea","index":0,"keyframe":0,"name":"move","property":{"x":"0","y":"-100","z":"0"},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"},{"id":"936e0225e6dc8edfba7d","index":1,"keyframe":100,"name":"move","property":{"x":0,"y":0,"z":0},"range":{"max":500,"min":-500,"stop":1},"single":true,"title":"Move"}],"transition_origin_x":"center","transition_origin_y":"center","enable_tablet":0,"enable_mobile":0}],"mouse_movement":[{"enable_tilt_effect":0,"mouse_tilt_direction":"direct","mouse_tilt_speed":"1","mouse_tilt_max":"15","enable_tablet":0,"enable_mobile":0}],"default_text":"","selector":"h1","title_text_shadow":"0 0 0 transparent","icon_position":"left","icon_gap":"8px","icon_size":"16px","title_margin":{"xl":"32px 0px 48px 0px","lg":"","md":"","sm":"","xs":""},"title_padding":{"xl":"0px 35px 0px 35px","lg":"","md":"","sm":"","xs":""},"attribute":{"id":-3,"name":"Title","fullname":"Articles > Title","type":"text","level":2,"path":"title"},"link":{"type":"url","url":"","menu":"","page":0,"popup":0,"action":"","is_no_repeat":0,"new_tab":false,"nofollow":false,"noreferrer":false,"noopener":false,"close_popup":89},"typography":{"font":"Arial","uppercase":true,"italic":false,"underline":false,"weight":"400","size":{"xl":{"value":"50","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"line_height":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"letter_spacing":{"xl":{"value":"","unit":"px"},"lg":{"value":"","unit":"px"},"md":{"value":"","unit":"px"},"sm":{"value":"","unit":"px"},"xs":{"value":"","unit":"px"}},"type":"google","preset":""},"color":"#474652"},"parent":"d914fcb8-8509-4fd3-9506-afdb7e7ec43d"}]}],"parent":false}]'; }PKBA#]�Ι�XXHcomponents/com_sppagebuilder/dynamic-content/Constants/CollectionIds.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; /** * Collection ID constants for special system collections * * @since 6.0.0 */ class CollectionIds { /** * Special ID for articles collection */ const ARTICLES_COLLECTION_ID = -2; /** * Special ID for tags collection */ const TAGS_COLLECTION_ID = -3; } PKBA#]E��Dcomponents/com_sppagebuilder/dynamic-content/Constants/DateRange.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; final class DateRange { /** * The last 24 hours date range. * * @var string * @since 5.5.0 */ public const LAST_24_HOURS = '24h'; /** * The last 7 days date range. * * @var string * @since 5.5.0 */ public const LAST_7_DAYS = '7d'; /** * The last 30 days date range. * * @var string * @since 5.5.0 */ public const LAST_30_DAYS = '30d'; /** * Get all the date ranges. * * @return array * @since 5.5.0 */ public static function all() { return [ self::LAST_24_HOURS, self::LAST_7_DAYS, self::LAST_30_DAYS, ]; } } PKBA#]�N��Ecomponents/com_sppagebuilder/dynamic-content/Constants/Conditions.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; /** * The valid collection field types. * @since 5.5.0 */ final class Conditions { public const IS_SET = 'is-set'; public const IS_NOT_SET = 'is-not-set'; public const IS_YES = 'is-yes'; public const IS_NO = 'is-no'; public const EQUALS = 'equals'; public const EQUALS_IN_REFERENCE = 'equals-in-reference'; public const NOT_EQUALS_IN_REFERENCE = 'not-equals-in-reference'; public const CONTAINS = 'contains'; public const NOT_EQUALS = 'not-equals'; public const NOT_CONTAINS = 'not-contains'; public const STARTS_WITH = 'starts-with'; public const NOT_STARTS_WITH = 'not-starts-with'; public const ENDS_WITH = 'ends-with'; public const NOT_ENDS_WITH = 'not-ends-with'; public const IS_GREATER_THAN = 'is-greater-than'; public const IS_LESS_THAN = 'is-less-than'; public const IS_GREATER_THAN_OR_EQUAL_TO = 'is-greater-than-or-equal-to'; public const IS_LESS_THAN_OR_EQUAL_TO = 'is-less-than-or-equal-to'; public const IS_INCLUDE = 'is-include'; public const IS_NOT_INCLUDE = 'is-not-include'; public const IS_INCLUDE_PARENT = 'is-include-parent'; public const IS_BEFORE = 'is-before'; public const IS_BEFORE_OR_EQUAL = 'is-before-or-equal'; public const IS_AFTER = 'is-after'; public const IS_AFTER_OR_EQUAL = 'is-after-or-equal'; public const IS_BETWEEN_DATE = 'is-between-date'; public const IS_NOT_BETWEEN_DATE = 'is-not-between-date'; public const IS_ASSOCIATED_WITH = 'is-associated-with'; public const RELATED = 'related'; public const MATCH_ALL = 'all'; public const MATCH_ANY = 'any'; /** * Get all conditions. * * @return array * @since 5.5.0 */ public static function all() { return [ self::IS_SET, self::IS_NOT_SET, self::IS_YES, self::IS_NO, self::EQUALS, self::EQUALS_IN_REFERENCE, self::NOT_EQUALS, self::NOT_EQUALS_IN_REFERENCE, self::CONTAINS, self::NOT_CONTAINS, self::STARTS_WITH, self::NOT_STARTS_WITH, self::ENDS_WITH, self::NOT_ENDS_WITH, self::IS_GREATER_THAN, self::IS_LESS_THAN, self::IS_GREATER_THAN_OR_EQUAL_TO, self::IS_LESS_THAN_OR_EQUAL_TO, self::IS_INCLUDE, self::IS_NOT_INCLUDE, self::IS_INCLUDE_PARENT, self::IS_BEFORE, self::IS_BEFORE_OR_EQUAL, self::IS_AFTER, self::IS_AFTER_OR_EQUAL, self::IS_BETWEEN_DATE, self::IS_NOT_BETWEEN_DATE, self::IS_ASSOCIATED_WITH, ]; } /** * Get the linear conditions. * * @return array * @since 5.5.0 */ public static function getLinearConditions() { return [ self::IS_SET, self::IS_NOT_SET, self::IS_YES, self::IS_NO, self::EQUALS, self::CONTAINS, self::NOT_EQUALS, self::NOT_CONTAINS, self::STARTS_WITH, self::NOT_STARTS_WITH, self::ENDS_WITH, self::NOT_ENDS_WITH, self::IS_GREATER_THAN, self::IS_LESS_THAN, self::IS_GREATER_THAN_OR_EQUAL_TO, self::IS_LESS_THAN_OR_EQUAL_TO, self::IS_BEFORE, self::IS_BEFORE_OR_EQUAL, self::IS_AFTER, self::IS_AFTER_OR_EQUAL, self::IS_BETWEEN_DATE, self::IS_NOT_BETWEEN_DATE, ]; } /** * Get the non-linear conditions. * * @return array * @since 5.5.0 */ public static function getNonLinearConditions() { return [ self::IS_INCLUDE, self::IS_NOT_INCLUDE, self::IS_INCLUDE_PARENT, self::EQUALS_IN_REFERENCE, self::NOT_EQUALS_IN_REFERENCE, self::IS_ASSOCIATED_WITH, self::RELATED, ]; } /** * Get the match conditions. * * @return array * @since 5.5.0 */ public static function match() { return [ self::MATCH_ALL, self::MATCH_ANY, ]; } /** * Check if the condition should check the value. * @param string $condition The condition to check. * @return bool True if the condition should check the value, false otherwise. * @since 5.5.0 */ public static function shouldCheckValue($condition) { return !in_array($condition, [ self::IS_SET, self::IS_NOT_SET, self::IS_YES, self::IS_NO, ]); } } PKBA#]��l8[ [ Ecomponents/com_sppagebuilder/dynamic-content/Constants/FieldTypes.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; /** * The valid collection field types. * @since 5.5.0 */ final class FieldTypes { /** * All the available field types constants. * @var string * @since 5.5.0 */ public const TITLE = 'title'; public const ALIAS = 'alias'; public const TEXT = 'text'; public const RICH_TEXT = 'rich-text'; public const IMAGE = 'image'; public const GALLERY = 'gallery'; public const VIDEO = 'video'; public const DATETIME = 'date-time'; public const LINK = 'link'; public const EMAIL = 'email'; public const PHONE = 'phone'; public const NUMBER = 'number'; public const LOCATION = 'location'; public const ICON = 'icon'; public const RATING = 'rating'; public const SWITCH = 'switch'; public const COLOR = 'color'; public const OPTION = 'option'; public const FILE = 'file'; public const REFERENCE = 'reference'; public const MULTI_REFERENCE = 'multi-reference'; public const LAYOUT = 'SPPB Layout'; /** * Get all the field types * * @return array * @since 5.5.0 */ public static function all() { return [ self::TITLE, self::ALIAS, self::TEXT, self::RICH_TEXT, self::IMAGE, self::GALLERY, self::EMAIL, self::PHONE, self::VIDEO, self::DATETIME, self::LINK, self::NUMBER, self::LOCATION, self::ICON, self::RATING, self::SWITCH, self::COLOR, self::OPTION, self::FILE, self::REFERENCE, self::MULTI_REFERENCE, self::LAYOUT, ]; } /** * Convert the field types to a string * * @return string * @since 5.5.0 */ public function __toString() { return implode(',', self::all()); } /** * Convert the field types to a string * * @return string * @since 5.5.0 */ public function toString() { return $this->__toString(); } } PKBA#]!9���Dcomponents/com_sppagebuilder/dynamic-content/Constants/Operators.phpnu�[���<?php namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; final class Operators { /** * All the available SQL where clause operators. * * @var string * @since 5.5.0 */ public const EQUAL = '='; public const NOT_EQUAL = '!='; public const GREATER_THAN = '>'; public const LESS_THAN = '<'; public const GREATER_THAN_OR_EQUAL = '>='; public const LESS_THAN_OR_EQUAL = '<='; public const LIKE = 'LIKE'; public const NOT_LIKE = 'NOT LIKE'; public const IN = 'IN'; public const NOT_IN = 'NOT IN'; public const BETWEEN = 'BETWEEN'; public const IS_NULL = 'IS NULL'; public const IS_NOT_NULL = 'IS NOT NULL'; /** * Get all operators. * * @return array * @since 5.5.0 */ public static function all(): array { return [ self::EQUAL, self::NOT_EQUAL, self::GREATER_THAN, self::LESS_THAN, self::GREATER_THAN_OR_EQUAL, self::LESS_THAN_OR_EQUAL, self::LIKE, self::NOT_LIKE, self::IN, self::NOT_IN, self::BETWEEN, self::IS_NULL, self::IS_NOT_NULL, ]; } } PKBA#]! {�==Acomponents/com_sppagebuilder/dynamic-content/Constants/Status.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; class Status { /** * The published status * * @var int * * @since 5.5.0 */ public const PUBLISHED = 1; /** * The unpublished status * * @var int * * @since 5.5.0 */ public const UNPUBLISHED = 0; /** * The all status * * @var string * * @since 5.5.0 */ public const ALL = '*'; /** * The trashed status * * @var int * * @since 5.5.0 */ public const TRASHED = -2; } PKBA#]rtS5��Dcomponents/com_sppagebuilder/dynamic-content/Constants/Validator.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Constants; defined('_JEXEC') or die; class Validator { /** * The available rules * * @var array * * @since 5.5.0 */ public const AVAILABLE_RULES = [ 'required', 'string', 'array', 'object', 'boolean', 'integer', 'float', 'email', 'url', 'min', 'max', 'in', 'not_in', 'regex', 'number' ]; /** * The rules to validator method map * * @var array * * @since 5.5.0 */ public const RULE_MAP = [ 'required' => 'checkRequired', 'string' => 'checkString', 'array' => 'checkArray', 'object' => 'checkObject', 'boolean' => 'checkBoolean', 'integer' => 'checkInteger', 'number' => 'checkNumber', 'float' => 'checkFloat', 'email' => 'checkEmail', 'url' => 'checkUrl', 'min' => 'checkMin', 'max' => 'checkMax', 'in' => 'checkIn', 'not_in' => 'checkNotIn', 'regex' => 'checkRegex', ]; } PKBA#]��0��=components/com_sppagebuilder/dynamic-content/Supports/Str.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Supports; use DateTime; use Joomla\CMS\Application\ApplicationHelper; use Joomla\String\StringHelper; defined('_JEXEC') or die; final class Str extends StringHelper { /** * Convert a JSON string to an array. * * @param string $value The JSON string. * * @return array * @since 5.5.0 */ public static function toArray($value) { if (empty($value)) { return []; } if (is_array($value)) { return $value; } return json_decode($value, true) ?? []; } /** * Process the value to ensure it's an array. * * @param string $value The value to process. * * @return array * @since 5.5.0 */ public static function process($value) { if (empty($value)) { return $value; } $decoded = json_decode($value, true); if (json_last_error() === JSON_ERROR_NONE && is_array($decoded)) { return $decoded; } return $value; } /** * Make a safe URL string. * * @param string $value The string to make safe. * * @return string * @since 5.5.0 */ public static function safeUrl(string $value) { return ApplicationHelper::stringURLSafe($value); } /** * Generate a UUID version 4. * * @return string * @since 5.5.0 */ public static function uuid() { return sprintf( '%04x%04x-%04x-%04x-%04x-%04x%04x%04x', mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0x0fff) | 0x4000, // Version 4 UUID mt_rand(0, 0x3fff) | 0x8000, // Variant mt_rand(0, 0xffff), mt_rand(0, 0xffff), mt_rand(0, 0xffff) ); } /** * Check if the value is an HTML string. * * @param string $value The value to check. * * @return bool * @since 5.5.0 */ public static function isHtmlString($value) { if (!is_string($value)) { return false; } $pattern = '/<[a-z][\s\S]*>/i'; return preg_match($pattern, $value) === 1; } /** * Sanitize the HTML string. * * @param string $value The value to sanitize. * * @return string * @since 5.5.0 */ public static function sanitizeHtmlString(string $value) { $value = preg_replace('/<(script|iframe|embed|object|applet)[^>]*?>.*?<\/\1>/is', '', $value); $value = strip_tags($value, '<p><a><b><i><u><strong><em><span><div><br><ul><ol><li><h1><h2><h3><h4><h5><h6><img><table><tr><td><th><thead><tbody><blockquote>'); return $value; } /** * Convert a plural word to its singular form. * * @param string $word The word to convert. * * @return string * @since 5.5.0 */ public static function toSingular(string $word) { $irregulars = [ 'children' => 'child', 'people' => 'person', 'teeth' => 'tooth', 'feet' => 'foot', 'geese' => 'goose', 'mice' => 'mouse', 'men' => 'man', 'women' => 'woman', 'oxen' => 'ox' ]; if (array_key_exists($word, $irregulars)) { return $irregulars[$word]; } $rules = [ '/(quiz)zes$/i' => '$1', '/(matr)ices$/i' => '$1ix', '/(vert|ind)ices$/i' => '$1ex', '/^(ox)en$/i' => '$1', '/(alias|status)es$/i' => '$1', '/([octop|vir])i$/i' => '$1us', '/(cris|ax|test)es$/i' => '$1is', '/(shoe)s$/i' => '$1', '/(o)es$/i' => '$1', '/(bus)es$/i' => '$1', '/([m|l])ice$/i' => '$1ouse', '/(x|ch|ss|sh)es$/i' => '$1', '/(m)ovies$/i' => '$1ovie', '/(s)eries$/i' => '$1eries', '/([^aeiouy]|qu)ies$/i' => '$1y', '/([lr])ves$/i' => '$1f', '/(tive)s$/i' => '$1', '/(hive)s$/i' => '$1', '/([^f])ves$/i' => '$1fe', '/(^analy)ses$/i' => '$1sis', '/((a)naly|(b)a|(d)iagno|(p)arenthe|(p)rogno|(s)ynop|(t)he)ses$/i' => '$1$2sis', '/([ti])a$/i' => '$1um', '/(n)ews$/i' => '$1ews', '/s$/i' => '' ]; foreach ($rules as $pattern => $replacement) { if (preg_match($pattern, $word)) { return preg_replace($pattern, $replacement, $word); } } return $word; } /** * Convert a singular word to its plural form. * * @param string $word The word to convert. * * @return string * @since 5.5.0 */ public static function toPlural(string $word) { $irregulars = [ 'person' => 'people', 'man' => 'men', 'child' => 'children', 'foot' => 'feet', 'goose' => 'geese', 'mouse' => 'mice', 'woman' => 'women', 'ox' => 'oxen', 'tooth' => 'teeth' ]; if (array_key_exists($word, $irregulars)) { return $irregulars[$word]; } $rules = [ '/(quiz)$/i' => '$1zes', '/(matr|vert|ind)ix|ex$/i' => '$1ices', '/(x|ch|ss|sh)$/i' => '$1es', '/([^aeiouy]|qu)y$/i' => '$1ies', '/(hive)$/i' => '$1s', '/(?:([^f])fe|([lr])f)$/i' => '$1$2ves', '/sis$/i' => 'ses', '/([ti])um$/i' => '$1a', '/(buffal|tomat)o$/i' => '$1oes', '/(bu)s$/i' => '$1ses', '/(alias|status)$/i' => '$1es', '/(octop|vir)us$/i' => '$1i', '/(ax|test)is$/i' => '$1es', '/s$/i' => 's', '/$/' => 's' ]; foreach ($rules as $pattern => $replacement) { if (preg_match($pattern, $word)) { return preg_replace($pattern, $replacement, $word); } } return $word; } /** * Check if the value is a date. * * @param string $value The value to check. * * @return bool * @since 5.5.0 */ public static function isDate(string $value) { return strtotime($value) !== false; } } PKBA#]�v�2�2=components/com_sppagebuilder/dynamic-content/Supports/Arr.phpnu�[���<?php /** * @package EasyStore.Administrator * @subpackage com_easystore * @copyright (C) 2023 - 2024 JoomShaper. <https://www.joomshaper.com> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace JoomShaper\SPPageBuilder\DynamicContent\Supports; defined('_JEXEC') or die; // phpcs:disable PSR1.Files.SideEffects \defined('_JEXEC') or die; // phpcs:enable PSR1.Files.SideEffects use ArrayAccess; use ArrayIterator; use IteratorAggregate; use Traversable; /** * The array helper class. * * @since 5.5.0 */ class Arr implements ArrayAccess, IteratorAggregate { /** * The array items. * * @var array * * @since 5.5.0 */ protected $items = []; /** * The private constructor method that helps the class to instantiate from outside, * Instead it enforce to use the Arr::make() method to instantiate the array instance. * * @param array $items The initial array items * * @since 5.5.0 */ protected function __construct(array $items = []) { $this->items = $items; } /** * Make an instance of the Arr class. * * @param array $items The initial array items * * @return self * * @since 5.5.0 */ public static function make(array $items = []) { return (new self($items)); } /** * Check if the array has the provided key * * @param string $key The key to check * * @return boolean True if the key exists, false otherwise * * @since 5.5.0 */ public function has($key): bool { return isset($this->items[ $key ]); } /** * Get the value of the array by the key. * * @param string $key The key to retrieve * @param mixed $default The default value if the key doesn't exist * * @return mixed The value associated with the key or the default value * * @since 5.5.0 */ public function get($key, $default = null) { if (!$this->has($key)) { return $default; } return $this->items[$key]; } /** * Set the value into the array. If the key exists then it will update the value. Add a new one otherwise. * * @param string $key The key to set * @param mixed $value The value to set * * @return void * * @since 5.5.0 */ public function set($key, $value): void { $this->items[$key] = $value; } /** * Count the total number of items into the array. * * @return integer The number of items in the array * * @since 5.5.0 */ public function count(): int { return count($this->items); } /** * Add a new item at the end of the array * * @param mixed $value The value to add * * @return integer The updated array length * * @since 5.5.0 */ public function push($value): int { $this->items[] = $value; return $this->count(); } /** * Add a new item to the beginning of the array. * * @param mixed $value The value to add * * @return integer The updated array length * * @since 5.5.0 */ public function prepend($value): int { array_unshift($this->items, $value); return $this->count(); } /** * Remove an item from the end of the array. * * @return mixed The removed item * * @since 5.5.0 */ public function pop() { return array_pop($this->items); } /** * Remove and get an item from the beginning of the array. * * @return mixed The removed item * * @since 5.5.0 */ public function shift() { return array_shift($this->items); } /** * Pick the last element of the array. * If the array is empty then it will return null. * This will only pick the item, but does not remove it from the array. * * @return mixed The last element or null if the array is empty * * @since 5.5.0 */ public function top() { if ($this->count() === 0) { return null; } $length = $this->count(); return $this->items[$length - 1]; } /** * Pick the first element of the array. * If the array is empty then it will return null. * This will only pick the item, but does not remove it from the array. * * @return mixed The first element or null if the array is empty * * @since 5.5.0 */ public function front() { if ($this->count() === 0) { return null; } return $this->items[0]; } /** * Run a map operation using a callable to the array. * * @param callable $callable The callable function * * @return self The new array after applying the callable * * @since 5.5.0 */ public function map(callable $callable): self { $newArray = []; foreach ($this->items as $index => $value) { $newArray[] = $callable($value, $index); } return new static($newArray); } /** * Iterate over each item in the array. * * @param callable $callable The callable function * * @return void * * @since 5.5.0 */ public function foreach(callable $callable): void { foreach ($this->items as $index => $value) { $callable($value, $index); } } /** * Filter the array by a callable function. * The function will return a true/false value and the return value is true then the value will be kept, * otherwise removed. * * @param callable $callable The callable function for filtering * * @return self The filtered array * * @since 5.5.0 */ public function filter(callable $callable): self { $filteredArray = []; foreach ($this->items as $index => $value) { $result = $callable($value, $index); if ($result) { $filteredArray[] = $value; } } return new static($filteredArray); } /** * Find an item into the array by a callable function condition. * * @param callable $callable The callable function for finding * * @return mixed|null The found item or null if not found * * @since 5.5.0 */ public function find(callable $callable) { foreach ($this->items as $index => $value) { if ($callable($value, $index)) { return $value; } } return null; } /** * Find the index of an item into the array. * If not found then it will return -1. * * @param callable $callable The callable function for finding * * @return integer The index of the found item or -1 if not found * * @since 5.5.0 */ public function findIndex(callable $callable): int { foreach ($this->items as $index => $value) { if ($callable($value, $index)) { return $index; } } return -1; } /** * A boolean method that checks if the array satisfies a specific condition. * If it satisfies for only one item then it returns true. * * @param callable $callable The callable function for checking condition * * @return boolean True if any item satisfies the condition, false otherwise * * @since 5.5.0 */ public function some(callable $callable): bool { foreach ($this->items as $index => $value) { if ($callable($value, $index)) { return true; } } return false; } public static function isAssociative(array $array): bool { return array_keys($array) !== range(0, count($array) - 1); } /** * A boolean method that checks if the array satisfies a specific condition. * If every items satisfies the condition then it will return true. * * @param callable $callable The callable function for checking condition * * @return boolean True if all items satisfy the condition, false otherwise * * @since 5.5.0 */ public function every(callable $callable): bool { foreach ($this->items as $index => $value) { if (!$callable($value, $index)) { return false; } } return true; } /** * Replicate the array_reduce function for usage consistency * * @param callable $callable The callable function for reducing * @param mixed $initial_value The initial value for reduction * * @return self The result of the reduction * * @since 5.5.0 */ public function reduce(callable $callable, $initial_value) { $result = array_reduce($this->items, $callable, $initial_value); return new static($result); } /** * Flatten the array for the sequential array * * @return array * @since 5.5.0 */ public function flatten() { return array_reduce($this->items, function ($carry, $item) { return is_array($item) ? array_merge($carry, (new static($item))->flatten()) : array_merge($carry, [$item]); }, []); } /** * Join the array using a glue * * @param string $glue The symbol by which it will be joined * * @return string The joined string * * @since 5.5.0 */ public function join($glue = ',') { return implode($glue, $this->items); } /** * Pluck the array by a key * * @param string $key The key to pluck * * @return self The plucked array * * @since 5.5.0 */ public function pluck($key) { return $this->map(function($item) use ($key) { return is_array($item) ? $item[$key] : $item->{$key}; }); } /** * Group the array by a key * * @param string $key The key to group by * * @return array The grouped array * * @since 5.5.0 */ public function groupBy(string $key) { $grouped = $this->reduce(function($carry, $item) use ($key) { $carry[$item[$key]] ??= []; $carry[$item[$key]][] = $item; return $carry; }, [])->toArray(); return array_values($grouped); } /** * Diff the associative array by the provided array * * @param array $array The array to diff * * @return self * @since 5.5.0 */ public function diffAssoc($array) { $array = $array instanceof self ? $array->toArray() : $array; return new static( array_diff_assoc($this->items, $array) ); } /** * Diff the array by the provided array * * @param array $array The array to diff * * @return self * @since 5.5.0 */ public function diff($array) { $array = $array instanceof self ? $array->toArray() : $array; return new static( array_values( array_diff($this->items, $array) ) ); } /** * Convert the array to an array * * @return array The array * * @since 5.5.0 */ public function toArray(): array { return $this->isAssociative($this->items) ? $this->items : array_values($this->items); } /** * Checks whether an offset exists * * @param mixed $key An offset to check for * * @return bool True if the offset exists, false otherwise * * @since 5.5.0 */ public function offsetExists($key): bool { return $this->has($key); } /** * Offset to retrieve * * @param mixed $key The offset to retrieve * * @return mixed The value at the specified offset * * @since 5.5.0 */ public function offsetGet($key): mixed { return $this->get($key); } /** * Offset to set * * @param mixed $key The offset to assign the value to * @param mixed $value The value to set * * @return void * * @since 5.5.0 */ public function offsetSet($key, $value): void { $this->set($key, $value); } /** * Offset to unset * * @param mixed $key The offset to unset * * @return void * * @since 5.5.0 */ public function offsetUnset($key): void { unset($this->items[$key]); } /** * Get the iterator * * @return Traversable The iterator * * @since 5.5.0 */ public function getIterator(): Traversable { return new ArrayIterator($this->items); } } PKBA#]aIr) >components/com_sppagebuilder/dynamic-content/Supports/Date.phpnu�[���<?php /** * @package EasyStore.Administrator * @subpackage com_easystore * @copyright (C) 2023 - 2024 JoomShaper. <https://www.joomshaper.com> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace JoomShaper\SPPageBuilder\DynamicContent\Supports; use DateTimeZone; use InvalidArgumentException; use Joomla\CMS\Date\Date as JoomlaDate; use Joomla\CMS\Factory; use JoomShaper\SPPageBuilder\DynamicContent\Constants\DateRange; defined('_JEXEC') or die; class Date { public static function create($date, $tzOffset = null) { return new JoomlaDate($date, $tzOffset); } /** * Generate the date range from today to a previous date. * * @param string $range * @return array * @since 5.5.0 */ public static function generateRange($range) { if (!in_array($range, DateRange::all())) { throw new InvalidArgumentException(sprintf('Invalid date range provided: %s. Please use one of the following: %s', $range, implode(', ', DateRange::all()))); } $today = new JoomlaDate('now', new DateTimeZone('UTC')); $previous = new JoomlaDate('now', new DateTimeZone('UTC')); switch ($range) { case DateRange::LAST_24_HOURS: $previous->modify('-24 hours'); break; case DateRange::LAST_7_DAYS: $previous->modify('-7 days'); break; case DateRange::LAST_30_DAYS: $previous->modify('-30 days'); break; } return [$previous, $today]; } /** * Get a safe SQL date for storing in the database. * * @param string $time * @param mixed $tzOffset * * @return string * @since 5.5.0 */ public static function sqlSafeDate($time = 'now', $tzOffset = null) { return Factory::getDate($time, $tzOffset)->toSql(); } /** * Format the date. * * @param string $date The date to format. * @param string $format The format to use. * @return string * @since 5.5.0 */ public static function format($date = 'now', $format = 'Y-m-d H:i:s', $tzOffset = null) { return Factory::getDate($date, $tzOffset)->format($format); } } PKBA#]�F�Dcomponents/com_sppagebuilder/dynamic-content/Supports/Expression.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2024 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ namespace JoomShaper\SPPageBuilder\DynamicContent\Supports; class Expression { /** * The value of the expression * * @var string|int|float * @since 5.5.0 */ protected $value; /** * Create a new expression instance * * @param string|int|float $value The value of the expression * @since 5.5.0 */ public function __construct($value) { $this->value = $value; } /** * Get the value of the expression * * @return string|int|float * @since 5.5.0 */ public function getValue() { return $this->value; } /** * Get the string representation of the expression * * @return string * @since 5.5.0 */ public function __toString() { return $this->getValue(); } } PKBA#]~��1components/com_sppagebuilder/tables/dashboard.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Table\Table; class SppagebuilderTableDashboard extends Table { function __construct(&$db) { parent::__construct('#__sppagebuilder', 'id', $db); } public function store($updateNulls = false) { return parent::store($updateNulls); } } PKBA#]{*�",components/com_sppagebuilder/tables/page.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\Access\Rules; class SppagebuilderTablePage extends Table { /** * The table constructor * * @param Joomla\Database\DatabaseDriver $db */ function __construct(&$db) { parent::__construct('#__sppagebuilder', 'id', $db); } public function bind($array, $ignore = '') { if (isset($array['id'])) { $date = Factory::getDate(); $user = Factory::getUser(); if ($array['id']) { $array['modified'] = $date->toSql(); $array['modified_by'] = $user->get('id'); } else { if (!(int) $array['created_on']) { $array['created_on'] = $date->toSql(); } if (empty($array['created_by'])) { $array['created_by'] = $user->get('id'); } } } // Bind the rules. if (isset($array['rules']) && is_array($array['rules'])) { $rules = new Rules($array['rules']); $this->setRules($rules); } return parent::bind($array, $ignore); } protected function _getAssetTitle() { return $this->title; } /** * Redefined asset name, as we support action control */ protected function _getAssetName() { $k = $this->_tbl_key; return 'com_sppagebuilder.page.' . (int) $this->$k; } /** * We provide our global ACL as parent * @see Table::_getAssetParentId() */ protected function _getAssetParentId(?Table $table = NULL, $id = NULL) { /** @var Joomla\CMS\Table */ $asset = Table::getInstance('Asset'); $asset->loadByName('com_sppagebuilder'); return $asset->id; } } PKBA#]���n��/components/com_sppagebuilder/tables/version.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; class SppagebuilderTableVersion extends Table { /** * The table constructor * * @param Joomla\Database\DatabaseDriver $db */ function __construct(&$db) { parent::__construct('#__sppagebuilder_versions', 'id', $db); } public function bind($array, $ignore = '') { if (isset($array['id'])) { $date = Factory::getDate(); $user = Factory::getUser(); if (!$array['id']) { if (!(int) $array['created_on']) { $array['created_on'] = $date->toSql(); } if (empty($array['created_by'])) { $array['created_by'] = $user->get('id'); } } } else { $date = Factory::getDate(); $user = Factory::getUser(); if (!isset($array['created_on'])) { $array['created_on'] = $date->toSql(); } if (empty($array['created_by'])) { $array['created_by'] = $user->get('id'); } } return parent::bind($array, $ignore); } } PKBA#]��T���-components/com_sppagebuilder/tables/addon.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //No direct access defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Table\Table; use Joomla\Database\DatabaseDriver; class SppagebuilderTableAddon extends Table { /** * Summary of __construct * * @param DatabaseDriver $db DatabaseDriver object. */ function __construct(&$db) { parent::__construct('#__sppagebuilder_addons', 'id', $db); } public function store($updateNulls = false) { return parent::store($updateNulls); } } PKBA#]g��؆�2components/com_sppagebuilder/tables/collection.phpnu�[���<?php defined('_JEXEC') or die; use Joomla\CMS\Access\Rules; use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; class SppagebuilderTableCollection extends Table { public function __construct(&$db) { parent::__construct('#__sppagebuilder_collections', 'id', $db); } protected function _getAssetName() { return 'com_sppagebuilder.collection.' . (int) $this->id; } protected function _getAssetParentId(Table $table = null, $id = null): int { $asset = Table::getInstance('Asset'); $asset->loadByName('com_sppagebuilder'); return (int) $asset->id; } protected function _getAssetTitle() { return $this->title; } public function store($updateNulls = false) { $result = parent::store($updateNulls); if ($this->id) { $asset = Table::getInstance('Asset'); $asset->loadByName($this->_getAssetName()); if ($this->asset_id != $asset->id) { $this->asset_id = $asset->id; parent::store($updateNulls); } } return $result; } }PKBA#]��,�((/components/com_sppagebuilder/tables/comment.phpnu�[��� <?php /** * @package Joomla.Administrator * @subpackage com_sppagebuilder * @author JoomShaper support@joomshaper.com * @copyright * @license GNU General Public License version 2 or later; see http://www.gnu.org/licenses/gpl-2.0.html */ // No Direct Access defined ('_JEXEC') or die('Restricted Access'); use Joomla\CMS\Date\Date; use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\Language\Text; use Joomla\Utilities\ArrayHelper; class SppagebuilderTableComment extends Table { public function __construct(&$db) { parent::__construct('#__sppagebuilder_comments', 'id', $db); } public function bind($src, $ignore = array()) { return parent::bind($src, $ignore); } public function store($updateNulls = false) { $user = Factory::getUser(); $app = Factory::getApplication(); $date = new Date('now', $app->getCfg('offset')); if ($this->id) { $this->modified = (string)$date; $this->modified_by = $user->get('id'); } if (empty($this->created)) { $this->created = (string)$date; } if (empty($this->created_by)) { $this->created_by = $user->get('id'); } return parent::store($updateNulls); } public function publish($pks = null, $published = 1, $userId = 0) { $k = $this->_tbl_key; $pks = ArrayHelper::toInteger((array) $pks); $published = (int) $published; if (empty($pks)) { if ($this->$k) { $pks = array($this->$k); } else { $this->setError(Text::_('JLIB_DATABASE_ERROR_NO_ROWS_SELECTED')); return false; } } $where = $k . '=' . implode(' OR '. $k . ' = ', $pks); $query = $this->_db->getQuery(true) ->update($this->_db->quoteName($this->_tbl)) ->set($this->_db->quoteName('published') . ' = '. $this->_db->quote($published)) ->where($where); $this->_db->setQuery($query); try { $this->_db->execute(); } catch(\RuntimeException $e) { $this->setError($e->getMessage()); return false; } if (in_array($this->$k, $pks)) { $this->published = $published; } $this->setError(''); return true; } } PKBA#]`_�2��/components/com_sppagebuilder/tables/section.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //No direct access defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Table\Table; use Joomla\Database\DatabaseDriver; class SppagebuilderTableSection extends Table { /** * Summary of __construct * * @param DatabaseDriver $db DatabaseDriver object. */ function __construct(&$db) { parent::__construct('#__sppagebuilder_sections', 'id', $db); } public function store($updateNulls = false) { return parent::store($updateNulls); } } PKBA#] ��d.components/com_sppagebuilder/tables/editor.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Access\Rules; use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\Database\DatabaseDriver; class SppagebuilderTableEditor extends Table { /** * Summary of __construct * * @param DatabaseDriver $db DatabaseDriver object. */ function __construct(&$db) { parent::__construct('#__sppagebuilder', 'id', $db); } public function store($updateNulls = false) { return parent::store($updateNulls); } public function bind($array, $ignore = '') { /** @var CMSApplication $app */ $app = Factory::getApplication(); if (isset($array['id'])) { $date = Factory::getDate(); $user = $app->getIdentity(); if ($array['id']) { $array['modified'] = $date->toSql(); $array['modified_by'] = $user->id; } else { if (!(int) $array['created_on']) { $array['created_on'] = $date->toSql(); } if (empty($array['created_by'])) { $array['created_by'] = $user->id; } } } // Bind the rules. if (isset($array['rules']) && is_array($array['rules'])) { $rules = new Rules($array['rules']); $this->setRules($rules); } return parent::bind($array, $ignore); } protected function _getAssetTitle() { return $this->title; } /** * Redefined asset name, as we support action control */ protected function _getAssetName() { $k = $this->_tbl_key; return 'com_sppagebuilder.page.' . (int) $this->$k; } /** * We provide our global ACL as parent * @see Table::_getAssetParentId() */ protected function _getAssetParentId(?Table $table = NULL, $id = NULL) { /** @var Joomla\CMS\Table */ $asset = Table::getInstance('Asset'); $asset->loadByName('com_sppagebuilder'); return $asset->id; } } PKBA#]�ˉ�``,components/com_sppagebuilder/models/icon.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\MVC\Model\ListModel; /** * Icon Model for managing the custom icons. * * @version 4.1.0 */ class SppagebuilderModelIcon extends ListModel { /** * Columns array of #__sppagebuilder_assets table. * * @var array * @version 4.1.0 */ private $columns = []; /** * This is the __construct function. * * @param mixed $config * @version 4.1.0 */ public function __construct($config = array()) { parent::__construct($config); $this->columns = ['id', 'type', 'name', 'title', 'assets', 'css_path', 'published', 'access', 'created', 'created_by']; } /** * Method to get an array of the result set rows from the database query where each row is an object. The array * of objects can optionally be keyed by a field name, but defaults to a sequential numeric array. * * @return mixed The return value or null if the query failed. * @version 4.1.0 */ public function getAllIcons($status = null) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName($this->columns)) ->from($db->quoteName('#__sppagebuilder_assets')); if (isset($status)) { $query->where($db->quoteName('published') . ' = ' . $db->quote($status)); } else { $query->where($db->quoteName('published') . ' IN (0, 1)'); } $db->setQuery($query); try { $result = $db->loadObjectList(); } catch (\Exception $e) { return []; } if (!empty($result)) { foreach ($result as &$icon) { $path = 'components/com_sppagebuilder/assets/images/customIcons/' . $icon->name . '.jpg'; $rootPath = str_replace("\\", "/", JPATH_ROOT . '/' . $path); if (\file_exists($rootPath)) { $icon->thumb = Uri::root() . '/' . $path; } else { $icon->thumb = Uri::root() . '/components/com_sppagebuilder/assets/images/customIcons/default.jpg'; } if (!empty($icon->assets) && \is_string($icon->assets)) { $icon->assets = \json_decode($icon->assets); } } unset($icon); } return $result; } /** * Summary of insertAsset * @param mixed $data * @return mixed * @version 4.1.0 */ public function insertAsset($data) { $dataObject = (object) $data; $dataObject->id = null; $db = Factory::getDbo(); try { if (($icon = $this->getAssetByName($dataObject->name))) { $dataObject->id = $icon->id; $result = $db->updateObject('#__sppagebuilder_assets', $dataObject, 'id', true); } else { $result = $db->insertObject('#__sppagebuilder_assets', $dataObject, 'id'); } $result = $this->getAssetByName($dataObject->name); $path = 'components/com_sppagebuilder/assets/images/customIcons/' . $result->name . '.jpg'; if (\file_exists(JPATH_ROOT . '/' . $path)) { $result->thumb = Uri::root() . '/' . $path; } else { $result->thumb = Uri::root() . '/components/com_sppagebuilder/assets/images/customIcons/default.jpg'; } return $result; } catch (Exception $e) { return false; } } /** * Summary of getAssetByName * @param string $name * @return mixed * @version 4.1.0 */ public function getAssetByName(string $name) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('*')->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('name') . ' = ' . $db->quote($name)); $db->setQuery($query); return $db->loadObject(); } /** * Delete custom icon by ID. * * @param int $id The icon id to remove. * * @return bool True on success, false otherwise. * @since 4.1.0 */ public function deleteCustomIcon(int $id) : bool { $asset = $this->getAssetById($id); $assetName = isset($asset->name) ? $asset->name : ''; $assetPath = JPATH_ROOT . '/media/com_sppagebuilder/assets/iconfont/' . $assetName; $db = Factory::getDbo(); $query = $db->getQuery(true); $query->delete($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' = ' . (int)$id); $db->setQuery($query); if (Folder::exists($assetPath)) { Folder::delete($assetPath); } try { return $db->execute() !== false; } catch (\Exception $e) { return false; } } public function deleteCustomIcons(array $ids) : bool { $ids = array_map('intval', $ids); $assets = $this->getAssetsByIds($ids); foreach ($assets as $asset) { $assetName = isset($asset->name) ? $asset->name : ''; $assetPath = JPATH_ROOT . '/media/com_sppagebuilder/assets/iconfont/' . $assetName; if (Folder::exists($assetPath)) { Folder::delete($assetPath); } } $db = Factory::getDbo(); $query = $db->getQuery(true); $query->delete($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' IN (' . implode(',', $ids) . ')'); $db->setQuery($query); try { return $db->execute() !== false; } catch (\Exception $e) { return false; } } public function getAssetsByIds(array $ids) { $ids = array_map('intval', $ids); $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('*')->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' IN (' . implode(',', $ids) . ')'); $db->setQuery($query); return $db->loadObjectList(); } public function getAssetById(int $id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('*')->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' = ' . $db->quote((int)$id)); $db->setQuery($query); return $db->loadObject(); } /** * Change the status of the custom icon's status. * * @param int $id The icon id. * @param int $status The updating status. * * @return void * @since 4.1.0 */ public function changeCustomIconStatus(int $id, int $status) : bool { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder_assets')) ->set($db->quoteName('published') . ' = ' . $db->quote($status)) ->where($db->quoteName('id') . ' = ' . (int)$id); $db->setQuery($query); try { return $db->execute() !== false; } catch (\Exception $e) { return false; } } public function getIconList($name) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName('assets')); $query->from($db->quoteName('#__sppagebuilder_assets')); $query->where($db->quoteName('name').' = '. $db->quote($name)); $db->setQuery($query); $result = $db->loadResult(); return $result; } public function getAssetProviders() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('DISTINCT ' . $db->quoteName('name') . ', title'); $query->from($db->quoteName('#__sppagebuilder_assets')); $query->where($db->quoteName('published') . ' = 1'); $db->setQuery($query); $result = $db->loadObjectList(); return $result; } } PKBA#]�w���,components/com_sppagebuilder/models/font.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\MVC\Model\ListModel; /** * Font Model for managing the custom fonts. * * @version 4.1.0 */ class SppagebuilderModelFont extends ListModel { /** * Columns array of #__sppagebuilder_assets table. * * @var array * @version 4.1.0 */ private $columns = []; /** * This is the __construct function. * * @param mixed $config * @version 4.1.0 */ public function __construct($config = array()) { parent::__construct($config); $this->columns = ['id', 'type', 'name', 'title', 'assets', 'css_path', 'published', 'access', 'created', 'created_by']; } /** * Method to get an array of the result set rows from the database query where each row is an object. The array * of objects can optionally be keyed by a field name, but defaults to a sequential numeric array. * * @return mixed The return value or null if the query failed. * @version 4.1.0 */ public function getAllFonts() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName($this->columns)) ->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('published') . ' IN (0, 1)'); $db->setQuery($query); try { $result = $db->loadObjectList(); } catch (\Exception $e) { return []; } if (!empty($result)) { foreach ($result as &$icon) { $path = 'components/com_sppagebuilder/assets/images/customIcons/' . $icon->name . '.jpg'; $rootPath = str_replace("\\", "/", JPATH_ROOT . '/' . $path); if (\file_exists($rootPath)) { $icon->thumb = Uri::root() . '/' . $path; } else { $icon->thumb = Uri::root() . '/components/com_sppagebuilder/assets/images/customIcons/default.jpg'; } if (!empty($icon->assets) && \is_string($icon->assets)) { $icon->assets = \json_decode($icon->assets); } } unset($icon); } return $result; } /** * Summary of insertAsset * @param mixed $data * @return mixed * @version 4.1.0 */ public function insertAsset($data) { $dataObject = (object) $data; $dataObject->id = null; $db = Factory::getDbo(); try { if (($icon = $this->getAssetByName($dataObject->name))) { $dataObject->id = $icon->id; $result = $db->updateObject('#__sppagebuilder_assets', $dataObject, 'id', true); } else { $result = $db->insertObject('#__sppagebuilder_assets', $dataObject, 'id'); } $result = $this->getAssetByName($dataObject->name); $path = 'components/com_sppagebuilder/assets/images/customIcons/' . $result->name . '.jpg'; if (\file_exists(JPATH_ROOT . '/' . $path)) { $result->thumb = Uri::root() . '/' . $path; } else { $result->thumb = Uri::root() . '/components/com_sppagebuilder/assets/images/customIcons/default.jpg'; } return $result; } catch (Exception $e) { return false; } } /** * Summary of getAssetByName * @param string $name * @return mixed * @version 4.1.0 */ public function getAssetByName(string $name) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('*')->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('name') . ' = ' . $db->quote($name)); $db->setQuery($query); return $db->loadObject(); } /** * Delete custom icon by ID. * * @param int $id The icon id to remove. * * @return bool True on success, false otherwise. * @since 4.1.0 */ public function deleteCustomIcon(int $id) : bool { $asset = $this->getAssetById($id); $assetName = isset($asset->name) ? $asset->name : ''; $assetPath = JPATH_ROOT . '/media/com_sppagebuilder/assets/iconfont/' . $assetName; $db = Factory::getDbo(); $query = $db->getQuery(true); $query->delete($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' = ' . (int)$id); $db->setQuery($query); if (Folder::exists($assetPath)) { Folder::delete($assetPath); } try { return $db->execute() !== false; } catch (\Exception $e) { return false; } } public function getAssetById(int $id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('*')->from($db->quoteName('#__sppagebuilder_assets')) ->where($db->quoteName('id') . ' = ' . (int)$id); $db->setQuery($query); return $db->loadObject(); } /** * Change the status of the custom icon's status. * * @param int $id The icon id. * @param int $status The updating status. * * @return void * @since 4.1.0 */ public function changeCustomIconStatus(int $id, int $status) : bool { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder_assets')) ->set($db->quoteName('published') . ' = ' . $db->quote($status)) ->where($db->quoteName('id') . ' = ' . (int)$id); $db->setQuery($query); try { return $db->execute() !== false; } catch (\Exception $e) { return false; } } public function getIconList($name) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName('assets')); $query->from($db->quoteName('#__sppagebuilder_assets')); $query->where($db->quoteName('name').' = '. $db->quote($name)); $db->setQuery($query); $result = $db->loadResult(); return $result; } public function getAssetProviders() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('DISTINCT ' . $db->quoteName('name') . ', title'); $query->from($db->quoteName('#__sppagebuilder_assets')); $query->where($db->quoteName('published') . ' = 1'); $db->setQuery($query); $result = $db->loadObjectList(); return $result; } } PKBA#],rss-components/com_sppagebuilder/models/addon.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\Language\Text; use Joomla\String\StringHelper; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\MVC\Model\AdminModel; if (!\class_exists('EditorUtils')) { require_once __DIR__ . './../editor/helpers/EditorUtils.php'; } class SppagebuilderModelAddon extends AdminModel { public function __construct($config = array()) { parent::__construct($config); } /** * Method for getting a form. * * @param array $data Data for the form. * @param bool $loadData True if the form is to load its own data (default case), false if not. * @return void */ public function getForm($data = array(), $loadData = true) { } public function getTable($name = 'Addon', $prefix = 'SppagebuilderTable', $options = array()) { return Table::getInstance($name, $prefix, $options); } } PKBA#]��TWW0components/com_sppagebuilder/models/comments.phpnu�[��� <?php /** * @package Joomla.Administrator * @subpackage com_sppagebuilder * @author JoomShaper support@joomshaper.com * @copyright * @license GNU General Public License version 2 or later; see http://www.gnu.org/licenses/gpl-2.0.html */ // No Direct Access defined ('_JEXEC') or die('Restricted Access'); use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\ListModel; /** * Methods supporting a list of Comment records. * * @since 1.0.0 */ class SppagebuilderModelComments extends ListModel { /** * Constructor. * * @param array $config An optional associative array of configuration settings. * * @since 1.0.0 * @see JControllerLegacy */ public function __construct(array $config = array()) { if (empty($config['filter_fields'])) { $config['filter_fields'] = [ 'id','a.id', 'content', 'a.content', 'ordering', 'a.ordering', 'created_by', 'a.created_by', 'created', 'a.created', 'published', 'a.published' ]; } parent::__construct($config); $this->setDispatcher(Factory::getApplication()->getDispatcher()); } /** * Method to auto-populate the model state. * * Note. Calling getState in this method will result in recursion. * * @param string $ordering An optional ordering field. * @param string $direction An optional direction (asc|desc). * * @return void * * @since 1.0.0 */ protected function populateState($ordering = 'a.ordering', $direction = 'asc') { $app = Factory::getApplication(); $context = $this->context; $search = $this->getUserStateFromRequest($this->context . '.filter.search', 'filter_search'); $this->setState('filter.search', $search); $published = $this->getUserStateFromRequest($this->context . '.filter.published', 'filter_published', '', 'string'); $this->setState('filter.published', $published); $language = $this->getUserStateFromRequest($this->context . '.filter.language', 'filter_language', ''); $this->setState('filter.language', $language); $formSubmited = $app->input->post->get('form_submited'); $access = $this->getUserStateFromRequest($this->context . '.filter.access', 'filter_access'); if ($formSubmited) { $access = $app->input->post->get('access'); $this->setState('filter.access', $access); } parent::populateState($ordering, $direction); } /** * Method to get a store id based on model configuration state. * * This is necessary because the model is used by the component and * different modules that might need different sets of data or different * ordering requirements. * * @param string \id A prefix for the store id. * * @return string A store id. * * @since 1.0.0 */ protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); $id .= ':' . serialize($this->getState('filter.access')); $id .= ':' . $this->getState('filter.published'); $id .= ':' . $this->getState('filter.language'); return parent::getStoreId($id); } /** * Build an SQL query to load the list data. * * @return JDatabaseQuery * * @since 1.0.0 */ protected function getListQuery() { $app = Factory::getApplication(); $state = $this->get('State'); $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('a.*, l.title_native as lang'); $query->from($db->quoteName('#__sppagebuilder_comments', 'a')); $query->join('LEFT' , $db->quoteName('#__languages', 'l') . ' ON (' . $db->quoteName('a.language') . ' = ' . $db->quoteName('l.lang_code') . ' )'); // Join over the users for the checked out user. $query->select('uc.name AS editor') ->join('LEFT', '#__users AS uc ON uc.id=a.checked_out'); $query->select('ua.name AS author_name') ->join('LEFT', '#__users AS ua ON ua.id = a.created_by'); $query->select('ug.title AS access_title') ->join('LEFT','#__viewlevels AS ug ON ug.id = a.access'); if ($status = $this->getState('filter.published')) { if ($status != '*') $query->where($db->quoteName('a.published') . ' = ' . (int) $status); } else { $query->where($db->quoteName('a.published') . ' IN (0,1)'); } $orderCol = $this->getState('list.ordering','a.ordering'); $orderDirn = $this->getState('list.direction','desc'); $order = $db->escape($orderCol) . ' ' . $db->escape($orderDirn); $query->order($order); return $query; } public function getFilterForm($data = [], $loadData = true) { $form = $this->loadForm( 'com_sppagebuilder.filter_comments', 'filter_comments', ['control' => '', 'load_data' => $loadData] ); return $form; } } PKBA#]����00,components/com_sppagebuilder/models/page.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Table\Table; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Form\FormHelper; JLoader::register('SppagebuilderHelperRoute', JPATH_ROOT . '/components/com_sppagebuilder/helpers/route.php'); class SppagebuilderModelPage extends AdminModel { public function getTable($type = 'Page', $prefix = 'SppagebuilderTable', $config = array()) { return Table::getInstance($type, $prefix, $config); } public function getForm($data = array(), $loadData = true) { FormHelper::addFieldPath(JPATH_ADMINISTRATOR . '/components/com_sppagebuilder/models/fields'); $form = $this->loadForm('com_sppagebuilder.page', 'page', array('control' => 'jform', 'load_data' => $loadData)); if (empty($form)) { return false; } $jinput = Factory::getApplication()->input; $id = $jinput->get('id', 0); // Determine correct permissions to check. if ($this->getState('page.id')) { $id = $this->getState('page.id'); // Existing record. Can only edit in selected categories. $form->setFieldAttribute('catid', 'action', 'core.edit'); // Existing record. Can only edit own pages in selected categories. $form->setFieldAttribute('catid', 'action', 'core.edit.own'); } else { // New record. Can only create in selected categories. $form->setFieldAttribute('catid', 'action', 'core.create'); } $user = Factory::getUser(); // Modify the form based on Edit State access controls. if ( $id != 0 && (!$user->authorise('core.edit.state', 'com_sppagebuilder.page.' . (int) $id)) || ($id == 0 && !$user->authorise('core.edit.state', 'com_sppagebuilder')) ) { // Disable fields for display. $form->setFieldAttribute('published', 'disabled', 'true'); // Disable fields while saving. // The controller has already verified this is an page you can edit. $form->setFieldAttribute('published', 'filter', 'unset'); } return $form; } public function getItem($pk = NULL) { if ($item = parent::getItem($pk)) { $item = parent::getItem($pk); // Get item language code $lang_code = (isset($item->language) && $item->language && explode('-', $item->language)[0]) ? explode('-', $item->language)[0] : ''; // Preview URL $item->link = 'index.php?option=com_sppagebuilder&task=page.edit&id=' . $item->id; $item->preview = SppagebuilderHelperRoute::getPageRoute($item->id, $lang_code); $item->frontend_edit = SppagebuilderHelperRoute::getFormRoute($item->id, $lang_code); } return $item; } protected function loadFormData() { /** @var CMSApplication */ $app = Factory::getApplication(); $data = $app->getUserState('com_sppagebuilder.edit.page.data', array()); if (empty($data)) { $data = $this->getItem(); } $this->preprocessData('com_sppagebuilder.page', $data); return $data; } protected function canEditState($item) { return Factory::getUser()->authorise('core.edit.state', 'com_sppagebuilder.page.' . $item->id); } public function save($data) { $app = Factory::getApplication(); if ($app->input->get('task') == 'save2copy') { $data['title'] = $this->pageGenerateNewTitle($data['title']); } if (!empty($data['created_by'])) { $data['created_by'] = $this->checkExistingUser($data['created_by']); } parent::save($data); return true; } protected function checkExistingUser($id) { $currentUser = Factory::getUser(); $user_id = $currentUser->id; if ($id) { $user = Factory::getUser($id); if ($user->id) { $user_id = $id; } } return $user_id; } public static function pageGenerateNewTitle($title) { $pageTable = Table::getInstance('Page', 'SppagebuilderTable'); while ($pageTable->load(array('title' => $title))) { $m = null; if (preg_match('#\((\d+)\)$#', $title, $m)) { $title = preg_replace('#\(\d+\)$#', '(' . ($m[1] + 1) . ')', $title); } else { $title .= ' (2)'; } } return $title; } public static function getPageInfoById($pageId) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(array('a.*')); $query->from($db->quoteName('#__sppagebuilder', 'a')); $query->where($db->quoteName('a.id') . " = " . $db->quote($pageId)); $db->setQuery($query); $result = $db->loadObject(); return $result; } public function getMySections() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id', 'title', 'section', 'created', 'created_by'))); $query->from($db->quoteName('#__sppagebuilder_sections')); $query->order('ordering ASC'); $db->setQuery($query); $results = $db->loadObjectList(); if (!empty($results)) { foreach ($results as &$result) { $result->created = (new DateTime($result->created))->format('j F, Y'); $result->author = Factory::getUser($result->created_by)->get('name'); $result->section = SppagebuilderHelper::formatSavedSection($result->section); unset($result->created_by); } unset($result); } return json_encode($results); } public function deleteSection($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); // delete all custom keys for user 1001. $conditions = array( $db->quoteName('id') . ' = ' . (int)$id ); $query->delete($db->quoteName('#__sppagebuilder_sections')); $query->where($conditions); $db->setQuery($query); return $db->execute(); } public function saveSection($title, $section) { $db = Factory::getDbo(); $user = Factory::getUser(); $obj = new stdClass(); $obj->title = $title; $obj->section = $section; $obj->created = Factory::getDate()->toSql(); $obj->created_by = $user->get('id'); $db->insertObject('#__sppagebuilder_sections', $obj); return $db->insertid(); } public function getMyAddons() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id', 'title', 'code', 'created', 'created_by'))); $query->from($db->quoteName('#__sppagebuilder_addons')); $query->order('ordering ASC'); $db->setQuery($query); $results = $db->loadObjectList(); if (!empty($results)) { foreach ($results as &$result) { $result->created = (new DateTime($result->created))->format('j F, Y'); $result->author = Factory::getUser($result->created_by)->get('name'); $result->code = SppagebuilderHelper::formatSavedAddon($result->code); unset($result->created_by); } unset($result); } return json_encode($results); } public function saveAddon($title, $addon) { $db = Factory::getDbo(); $user = Factory::getUser(); $obj = new stdClass(); $obj->title = $title; $obj->code = $addon; $obj->created = Factory::getDate()->toSql(); $obj->created_by = $user->get('id'); $db->insertObject('#__sppagebuilder_addons', $obj); return $db->insertid(); } public function deleteAddon($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); // delete all custom keys for user 1001. $conditions = array( $db->quoteName('id') . ' = ' . (int)$id ); $query->delete($db->quoteName('#__sppagebuilder_addons')); $query->where($conditions); $db->setQuery($query); return $db->execute(); } public function createBrandNewPage($title = '', $extension = '', $extension_view = '', $view_id = 0) { $user = Factory::getUser(); $date = Factory::getDate(); $db = $this->getDbo(); $page = new stdClass(); $page->title = $title; $page->text = '[]'; $page->extension = $extension; $page->extension_view = $extension_view; $page->view_id = $view_id; $page->published = 1; $page->created_by = (int) $user->id; $page->created_on = $date->toSql(); $page->modified = $date->toSql(); $page->language = '*'; $page->access = 1; $page->active = 1; $page->css = $page->css ?? ''; $db->insertObject('#__sppagebuilder', $page); return $db->insertid(); } public function get_module_page_data($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id'))); $query->from($db->quoteName('#__sppagebuilder')); $query->where($db->quoteName('extension') . ' = ' . $db->quote('mod_sppagebuilder')); $query->where($db->quoteName('extension_view') . ' = ' . $db->quote('module')); $query->where($db->quoteName('view_id') . ' = ' . $db->quote($id)); $query->order('ordering ASC'); $db->setQuery($query); $result = $db->loadResult(); return $result; } private function save_module_data($id, $title, $content) { $user = Factory::getUser(); $date = Factory::getDate(); $db = Factory::getDbo(); $module = new stdClass(); $module->title = $title; $module->text = $content; $module->extension = 'mod_spmodulebuilder'; $module->extension_view = 'module'; $module->view_id = $id; $module->published = 1; $module->created_by = (int) $user->id; $module->created_on = $date->toSql(); $module->language = '*'; $module->access = 1; $module->active = 1; $db->insertObject('#__sppagebuilder', $module); return $db->insertid(); } public function update_module_data($view_id, $id, $title, $content) { $user = Factory::getUser(); $date = Factory::getDate(); $db = Factory::getDbo(); $module = new stdClass(); $module->id = $view_id; $module->title = $title; $module->text = $content; $module->modified_by = (int) $user->id; $module->modified = $date->toSql(); $db->updateObject('#__sppagebuilder', $module, 'id'); return $db->insertid(); } public function getLanguages() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([$db->quoteName('lang_code', 'value'), $db->quoteName('title', 'text')]) ->from($db->quoteName('#__languages')) ->where($db->quoteName('published') . ' = 1') ->order($db->quoteName('ordering') . ' ASC'); $db->setQuery($query); try { $languageList = $db->loadObjectList(); $allLanguage = (object) [ 'text' => Text::_('JALL'), 'value' => '*' ]; array_unshift($languageList, $allLanguage); return $languageList; } catch (\Exception $e) { return []; } } } PKBA#]hh6�))-components/com_sppagebuilder/models/pages.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\Utilities\ArrayHelper; use Joomla\CMS\MVC\Model\ListModel; JLoader::register('SppagebuilderHelperRoute', JPATH_ROOT . '/components/com_sppagebuilder/helpers/route.php'); class SppagebuilderModelPages extends ListModel { public function __construct($config = array()) { if (empty($config['filter_fields'])) { $config['filter_fields'] = array( 'id', 'a.id', 'title', 'a.title', 'extension_view', 'a.extension_view', 'checked_out', 'a.checked_out', 'checked_out_time', 'a.checked_out_time', 'created_by', 'a.created_by', 'published', 'a.published', 'catid', 'a.catid', 'category_title', 'access', 'a.access', 'access_level', 'created_on', 'a.created_on', 'ordering', 'a.ordering', 'hits', 'a.hits', 'language', 'a.language', 'version', 'a.version' ); } parent::__construct($config); $this->setDispatcher(\Joomla\CMS\Factory::getApplication()->getDispatcher()); } protected function populateState($ordering = null, $direction = null) { $app = Factory::getApplication(); $context = $this->context; $search = $this->getUserStateFromRequest($context . '.search', 'filter_search'); $this->setState('filter.search', $search); $access = $this->getUserStateFromRequest($context . '.filter.access', 'filter_access'); $this->setState('filter.access', $access); $published = $this->getUserStateFromRequest($context . '.filter.published', 'filter_published', ''); $this->setState('filter.published', $published); $categoryId = $this->getUserStateFromRequest($this->context . '.filter.category_id', 'filter_category_id'); $this->setState('filter.category_id', $categoryId); $language = $this->getUserStateFromRequest($context . '.filter.language', 'filter_language', ''); $this->setState('filter.language', $language); // List state information. parent::populateState('a.id', 'ASC'); } protected function getStoreId($id = '') { // Compile the store id. $id .= ':' . $this->getState('filter.search'); $id .= ':' . $this->getState('filter.access'); $id .= ':' . $this->getState('filter.published'); $id .= ':' . $this->getState('filter.language'); return parent::getStoreId($id); } protected function getListQuery() { $db = $this->getDbo(); $query = $db->getQuery(true); $user = Factory::getUser(); $query->select( $this->getState( 'list.select', 'a.id, a.title, a.checked_out, a.checked_out_time, a.text, a.created_by, a.extension_view,' . 'a.published, a.access, a.catid, a.ordering, a.created_on, a.created_by, a.language, a.hits, a.version' ) ); $query->from('#__sppagebuilder as a'); $query->where($db->quoteName('a.extension') . ' = ' . $db->quote('com_sppagebuilder')); $query->where($db->quoteName('a.extension_view') . ' <> ' . $db->quote('dynamic_content:detail')); $query->select('l.title AS language_title') ->join('LEFT', $db->quoteName('#__languages') . ' AS l ON l.lang_code = a.language'); // Join over the users for the checked out user. $query->select('uc.name AS editor') ->join('LEFT', '#__users AS uc ON uc.id=a.checked_out'); $query->select('ua.name AS author_name') ->join('LEFT', '#__users AS ua ON ua.id = a.created_by'); $query->select('ug.title AS access_title') ->join('LEFT', '#__viewlevels AS ug ON ug.id = a.access'); // Join over the categories. $query->select('c.title AS category_title') ->join('LEFT', '#__categories AS c ON c.id = a.catid'); if ($access = $this->getState('filter.access')) { $query->where('a.access = ' . (int) $access); } $published = $this->getState('filter.published'); if (is_numeric($published)) { $query->where('a.published = ' . (int) $published); } elseif ($published === '') { $query->where('(a.published IN (0, 1))'); } // Filter by a single or group of categories. $baselevel = 1; $categoryId = $this->getState('filter.category_id'); if (is_numeric($categoryId)) { $cat_tbl = Table::getInstance('Category', 'JTable'); $cat_tbl->load($categoryId); $rgt = $cat_tbl->rgt; $lft = $cat_tbl->lft; $baselevel = (int) $cat_tbl->level; $query->where('c.lft >= ' . (int) $lft) ->where('c.rgt <= ' . (int) $rgt); } elseif (is_array($categoryId)) { $categoryId = ArrayHelper::toInteger($categoryId); $query->where('a.catid IN (' . implode(',', $categoryId) . ')'); } // Filter by language if ($language = $this->getState('filter.language')) { $query->where('a.language = ' . $db->quote($language)); } $search = $this->getState('filter.search'); if (!empty($search)) { if (stripos($search, 'id:') === 0) { $query->where('a.id = ' . (int) substr($search, 3)); } elseif (stripos($search, 'author:') === 0) { $search = $db->quote('%' . $db->escape(substr($search, 7), true) . '%'); $query->where('(uc.name LIKE ' . $search . ' OR uc.username LIKE ' . $search . ')'); } else { $search = $db->quote('%' . $db->escape($search, true) . '%'); $query->where('(a.title LIKE ' . $search . ')'); } } // Add the list ordering clause. $orderCol = $this->state->get('list.ordering', 'a.id'); $orderDirn = $this->state->get('list.direction', 'desc'); if ($orderCol == 'a.ordering' || $orderCol == 'category_title') { $orderCol = 'c.title ' . $orderDirn . ', a.ordering'; } // SQL server change if ($orderCol == 'language') { $orderCol = 'l.title'; } if ($orderCol == 'access_level') { $orderCol = 'ag.title'; } $orderDirn = strtoupper($orderDirn) === 'ASC' ? 'ASC' : 'DESC'; $query->order($db->escape($orderCol . ' ' . $orderDirn)); return $query; } /** * get all page items * */ public function getItems() { $items = parent::getItems(); if (is_array($items) && count($items)) { foreach ($items as $key => &$item) { $item->preview = SppagebuilderHelperRoute::getPageRoute($item->id, $item->language); $item->frontend_edit = SppagebuilderHelperRoute::getFormRoute($item->id, $item->language); } } return $items; } public function getFilterForm($data = [], $loadData = true) { $form = $this->loadForm( 'com_sppagebuilder.filter_pages', 'filter_pages', ['control' => '', 'load_data' => $loadData] ); return $form; } } PKBA#]��j�UU8components/com_sppagebuilder/models/forms/collection.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset> <field name="title" type="hidden" label="JGLOBAL_TITLE" size="40" class="input-large-text" default="" required="true" /> </fieldset> <fieldset name="permissions" label="Permissions" hiddenLabel="true"> <field name="asset_id" type="hidden" /> <field name="rules" type="rules" label="Permissions" hiddenLabel="true" translate_label="false" filter="rules" component="com_sppagebuilder" section="collection" validate="rules" asset_field="asset_id" /> </fieldset> </form> PKBA#]A�-(��6components/com_sppagebuilder/models/forms/category.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <help key="SP_Page_Builder:_New_or_Edit_Category" /> <listhelp key="SP_Page_Builder:_Categories" /> </form> PKBA#]%Qn���=components/com_sppagebuilder/models/forms/filter_comments.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fields name="filter"> <field name="search" type="text" label="JSEARCH_FILTER" description="" hint="JSEARCH_FILTER" /> <field name="published" type="status" label="JOPTION_SELECT_PUBLISHED" description="JOPTION_SELECT_PUBLISHED_DESC" onchange="this.form.submit();"> <option value="">JOPTION_SELECT_PUBLISHED</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="COM_SPPAGEBUILDER_COMMENT_LIST_FULL_ORDERING" description="COM_SPPAGEBUILDER_COMMENT_LIST_FULL_ORDERING_DESC" default="a.name ASC" onchange="this.form.submit();"> <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.published ASC">JSTATUS_ASC</option> <option value="a.published DESC">JSTATUS_DESC</option> <option value="a.content ASC">COM_SPPAGEBUILDER_COMMENT_CONTENT_ASC</option> <option value="a.content DESC">COM_SPPAGEBUILDER_COMMENT_CONTENT_DESC</option> </field> <field name="limit" type="limitbox" label="COM_SPPAGEBUILDER_COMMENT_LIST_LIMIT" description="COM_SPPAGEBUILDER_COMMENT_LIST_LIMIT_DESC" default="25" class="input-mini" onchange="this.form.submit();" /> </fields> </form> PKBA#]qW|UII2components/com_sppagebuilder/models/forms/page.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset> <field name="title" type="hidden" label="JGLOBAL_TITLE" size="40" class="input-large-text" default="" required="true" /> </fieldset> <fieldset name="permissions" label="Permissions" hiddenLabel="true"> <field name="asset_id" type="hidden" filter="unset" /> <field name="rules" type="rules" label="Permissions" hiddenLabel="true" translate_label="false" filter="rules" component="com_sppagebuilder" section="page" validate="rules" /> </fieldset> </form> PKBA#]䈰) ) :components/com_sppagebuilder/models/forms/filter_pages.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fields name="filter"> <field name="search" type="text" label="JSEARCH_FILTER" hint="JSEARCH_FILTER" class="js-stools-search-string" /> <field name="published" type="status" label="JSTATUS" onchange="this.form.submit();" > <option value="">JOPTION_SELECT_PUBLISHED</option> </field> <field name="category_id" type="category" label="JCATEGORY" extension="com_sppagebuilder" onchange="this.form.submit();" addfieldprefix="Joomla\Component\Categories\Administrator\Field" > <option value="">JOPTION_SELECT_CATEGORY</option> </field> <field name="access" type="accesslevel" label="JOPTION_FILTER_ACCESS" description="JOPTION_FILTER_ACCESS_DESC" onchange="this.form.submit();" > <option value="">JOPTION_SELECT_ACCESS</option> </field> <field name="language" type="contentlanguage" label="JGRID_HEADING_LANGUAGE" onchange="this.form.submit();" > <option value="">JOPTION_SELECT_LANGUAGE</option> <option value="*">JALL</option> </field> </fields> <fields name="list"> <field name="fullordering" type="list" label="JGLOBAL_SORT_BY" onchange="this.form.submit();" default="a.name ASC" validate="options" > <option value="">JGLOBAL_SORT_BY</option> <option value="a.ordering ASC">JGRID_HEADING_ORDERING_ASC</option> <option value="a.ordering DESC">JGRID_HEADING_ORDERING_DESC</option> <option value="a.state ASC">JSTATUS_ASC</option> <option value="a.state DESC">JSTATUS_DESC</option> <option value="a.title ASC">JGLOBAL_TITLE_ASC</option> <option value="a.title DESC">JGLOBAL_TITLE_DESC</option> <option value="a.access ASC">JGRID_HEADING_ACCESS_ASC</option> <option value="a.access DESC">JGRID_HEADING_ACCESS_DESC</option> <option value="a.created_by ASC">JAUTHOR_ASC</option> <option value="a.created_by DESC">JAUTHOR_DESC</option> <option value="language ASC" requires="multilanguage">JGRID_HEADING_LANGUAGE_ASC</option> <option value="language DESC" requires="multilanguage">JGRID_HEADING_LANGUAGE_DESC</option> <option value="a.created ASC">JDATE_ASC</option> <option value="a.created DESC">JDATE_DESC</option> <option value="a.hits ASC">JGLOBAL_HITS_ASC</option> <option value="a.hits DESC">JGLOBAL_HITS_DESC</option> <option value="a.id ASC">JGRID_HEADING_ID_ASC</option> <option value="a.id DESC">JGRID_HEADING_ID_DESC</option> </field> <field name="limit" type="limitbox" label="JGLOBAL_LIST_LIMIT" default="25" onchange="this.form.submit();" /> </fields> </form>PKBA#]ڱ=K5components/com_sppagebuilder/models/forms/comment.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <form> <fieldset name="basic"> <field name="id" type="hidden" /> <field name="content" type="text" label="COM_SPPAGEBUILDER_COMMENT_CONTENT" class="inputbox" required="true" /> </fieldset> </form> PKBA#]���/�/-components/com_sppagebuilder/models/media.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Filesystem\File; use Joomla\CMS\Filesystem\Path; use Joomla\CMS\Filesystem\Folder; use Joomla\CMS\MVC\Model\ListModel; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Language\Text; /** * Media Model Class for managing media files. * * @version 4.1.0 */ class SppagebuilderModelMedia extends ListModel { /** * Media __construct function * * @param mixed $config */ public function __construct($config = []) { parent::__construct($config); } /** * Get media items from database. * * @return mixed * @version 4.1.0 */ public function getItems() { $input = Factory::getApplication()->input; $type = $input->get('type', '*', 'STRING'); $date = $input->get('date', NULL, 'STRING'); $page = $input->get('page', 1, 'INT'); $search = $input->get('search', NULL, 'STRING'); $limit = $input->get('limit', 30, 'INT'); $offset = ($page - 1) * $limit; $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['id', 'title', 'path', 'thumb', 'media_attr', 'type', 'created_on', 'created_by']); $query->from($db->quoteName('#__spmedia')); if ($search) { $search = preg_replace('#\xE3\x80\x80#s', " ", trim($search)); $search_array = explode(" ", $search); $search_conditions = []; foreach ($search_array as $term) { $search_conditions[] = $db->quoteName('title') . " LIKE " . $db->quote('%' . $term . '%'); $search_conditions[] = "SUBSTRING_INDEX(" . $db->quoteName('path') . ", '/', -1) LIKE " . $db->quote('%' . $term . '%'); } $query->where('(' . implode(' OR ', $search_conditions) . ')'); } if ($date) { $year_month = explode('-', $date); $query->where('YEAR(created_on) = ' . (int) $year_month[0]); $query->where('MONTH(created_on) = ' . (int) ($year_month[1] ?? 0)); } if ($type !== '*') { $query->where($db->quoteName('type') . " = " . $db->quote($type)); } // Check User permission $user = Factory::getUser(); if (!$user->authorise('core.edit', 'com_sppagebuilder')) { if ($user->authorise('core.edit.own', 'com_sppagebuilder')) { $query->where($db->quoteName('created_by') . " = " . $db->quote($user->id)); } else { return []; } } $query->order('created_on DESC'); $query->setLimit($limit, $offset); $db->setQuery($query); $items = $db->loadObjectList(); foreach ($items as &$item) { $path = $item->path; $filename = basename($path); $item->ext = File::getExt($filename); $item->media_attr = json_decode($item->media_attr); } unset($item); return $items; } public function getDateFilters($date = '', $search = '') { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('DISTINCT YEAR( created_on ) AS year, MONTH( created_on ) AS month'); $query->from($db->quoteName('#__spmedia')); if ($search) { $search = preg_replace('#\xE3\x80\x80#s', " ", trim($search)); $search_array = explode(" ", $search); $search_conditions = []; foreach ($search_array as $term) { $search_conditions[] = $db->quoteName('title') . " LIKE " . $db->quote('%' . $term . '%'); } $query->where('(' . implode(' OR ', $search_conditions) . ')'); } if ($date) { $date = explode('-', $date); $query->where('YEAR(created_on) = ' . (int) $date[0]); $query->where('MONTH(created_on) = ' . (int) ($date[1] ?? 0)); } //Check User permission $user = Factory::getUser(); if (!$user->authorise('core.edit', 'com_sppagebuilder')) { if ($user->authorise('core.edit.own', 'com_sppagebuilder')) { $query->where($db->quoteName('created_by') . " = " . $db->quote($user->id)); } } $query->order('created_on DESC'); $db->setQuery($query); return $db->loadObjectList(); } public function getTotalMedia($date = '', $search = '') { $input = Factory::getApplication()->input; $type = $input->get('type', '*', 'STRING'); $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('COUNT(id)'); $query->from($db->quoteName('#__spmedia')); if ($search) { $search = preg_replace('#\xE3\x80\x80#s', " ", trim($search)); $search_array = explode(" ", $search); $search_conditions = []; foreach ($search_array as $term) { $search_conditions[] = $db->quoteName('title') . " LIKE " . $db->quote('%' . $term . '%'); } $query->where('(' . implode(' OR ', $search_conditions) . ')'); } if ($date) { $date = explode('-', $date); $query->where('YEAR(created_on) = ' . (int) $date[0]); $query->where('MONTH(created_on) = ' . (int) ($date[1] ?? 0)); } if ($type != '*') { $query->where($db->quoteName('type') . " = " . $db->quote($type)); } //Check User permission $user = Factory::getUser(); if (!$user->authorise('core.edit', 'com_sppagebuilder')) { if ($user->authorise('core.edit.own', 'com_sppagebuilder')) { $query->where($db->quoteName('created_by') . " = " . $db->quote($user->id)); } } $db->setQuery($query); return $db->loadResult(); } public function getMediaCategories() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('type, COUNT(id) AS count'); $query->from($db->quoteName('#__spmedia')); $query->group($db->quoteName('type')); $query->order('count DESC'); $db->setQuery($query); $items = $db->loadObjectList(); $categories = array(); $all = 0; if (!empty($items)) { foreach ($items as $key => $item) { $categories[$item->type] = $item->count; $all += $item->count; } } return array('all' => $all) + $categories; } public function insertMedia($title, $path, $media_attr = '[]', $thumb = '', $type = 'image') { $description = ''; $db = Factory::getDbo(); $query = $db->getQuery(true); $columns = ['title', 'path', 'thumb', 'type', 'description', 'media_attr', 'alt', 'extension', 'created_on', 'created_by', 'modified_on', 'modified_by']; $values = [ $db->quote($title), $db->quote($path), $db->quote($thumb), $db->quote($type), $db->quote($description), $db->quote($media_attr), $db->quote($title), $db->quote('com_sppagebuilder'), $db->quote(Factory::getDate('now')), Factory::getUser()->id, $db->quote(Factory::getDate('now')), Factory::getUser()->id, ]; $query ->insert($db->quoteName('#__spmedia')) ->columns($db->quoteName($columns)) ->values(implode(',', $values)); $db->setQuery($query); $db->execute(); $insertid = $db->insertid(); return $insertid; } public function getMediaByID($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id', 'title', 'path', 'thumb', 'type', 'media_attr', 'created_by', 'created_on'))); $query->from($db->quoteName('#__spmedia')); $query->where($db->quoteName('id') . ' = ' . $db->quote($id)); $db->setQuery($query); return $db->loadObject(); } public function removeMediaByID($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $conditions = array($db->quoteName('id') . ' = ' . $db->quote($id)); $query->delete($db->quoteName('#__spmedia')); $query->where($conditions); $db->setQuery($query); try { $db->execute(); } catch (Exception $e) { return false; } return true; } public function removeMediaByPath($path) { $db = Factory::getDbo(); $query = $db->getQuery(true); $conditions = array($db->quoteName('path') . ' LIKE ' . $db->quote('%' . $path . '%')); $query->delete($db->quoteName('#__spmedia')); $query->where($conditions); $db->setQuery($query); $db->execute(); return true; } public function editMediaPathById($path, $newPath) { $db = Factory::getDbo(); $query = $db->getQuery(true); $field = array( $db->qn('path') . '=REPLACE(' . $db->qn('path') . ',' . $db->quote($path) . ',' . $db->quote($newPath) . ')', $db->qn('thumb') . '=REPLACE(' . $db->qn('thumb') . ',' . $db->quote($path) . ',' . $db->quote($newPath) . ')', $db->quoteName('modified_on') . ' = ' . Factory::getDate()->toSql(), $db->quoteName('modified_by') . ' = ' . Factory::getUser()->id, ); $query->update($db->quoteName('#__spmedia')); $query->set($field); $db->setQuery($query); $db->execute(); return true; } // Browse Folders public function getFolders() { $output = array(); $mediaParams = ComponentHelper::getParams('com_media'); $file_path = rtrim(ltrim($mediaParams->get('file_path', 'images'), '/'), '/'); $image_path = rtrim(ltrim($mediaParams->get('image_path', 'images'), '/'), '/'); $input = Factory::getApplication()->input; $path = $input->get('path', '/' . $file_path, 'RAW'); $rawPath = Path::clean($path); $relativePath = ltrim($rawPath, DIRECTORY_SEPARATOR); $pathParts = array_values(array_filter(explode(DIRECTORY_SEPARATOR, $relativePath))); $rootPath = $pathParts[0] ?? $file_path; $allowedRoots = array_values(array_unique(array_filter([$file_path, $image_path]))); if (!in_array($rootPath, $allowedRoots, true)) { $rootPath = $file_path; } $path = Path::clean(JPATH_ROOT . '/' . ltrim($rawPath, DIRECTORY_SEPARATOR)); if (!SecurityHelper::isGetablePath($rawPath)) { $output['status'] = false; $output['message'] = Text::_('COM_SPPAGEBUILDER_MEDIA_FOLDER_NOT_FOUND'); return $output; } try { $directory = BuilderMediaHelper::checkForMediaActionBoundary($path); } catch (\Exception $e) { $output['status'] = false; $output['message'] = $e->getMessage(); return $output; } if (!file_exists($directory)) { $output['status'] = false; $output['message'] = Text::_('COM_SPPAGEBUILDER_MEDIA_FOLDER_NOT_FOUND'); return $output; } $items = Folder::files($directory, '.png|.jpg|.jpeg|.gif|.svg|.pdf|.webp', false, true); $folders_list = Folder::folders($directory, '.', false, false, array('.svn', 'CVS', '.DS_Store', '__MACOSX', '_spmedia_thumbs')); $folders = self::listFolderTree(JPATH_ROOT . '/' . $rootPath, '.'); $crumbs = explode(DIRECTORY_SEPARATOR, rtrim(ltrim($rawPath, DIRECTORY_SEPARATOR), DIRECTORY_SEPARATOR)); $count = count($crumbs); $breadcrumbs = []; foreach ($crumbs as $key => $crumb) { $breadcrumbs[$key]['label'] = $crumb; $breadcrumbs[$key]['path'] = $key > 0 ? dirname($rawPath, $count - $key) . '/' . $crumb : '/' . $rootPath; } $output['status'] = true; $output['items'] = $items; $output['folders_list'] = $folders_list; $output['folders'] = $folders; $output['breadcrumbs'] = $breadcrumbs; return $output; } public static function listFolderTree($path, $filter, $maxLevel = 10, $level = 0, $parent = 0) { $dirs = array(); if ($level == 0) { $GLOBALS['_JFolder_folder_tree_index'] = 0; } if ($level < $maxLevel) { $folders = Folder::folders($path, $filter, false, false, array('.svn', 'CVS', '.DS_Store', '__MACOSX', '_spmedia_thumbs')); // First path, index folder names foreach ($folders as $name) { $id = ++$GLOBALS['_JFolder_folder_tree_index']; $fullName = Path::clean($path . '/' . $name); $dirs[] = array( 'id' => $id, 'parent' => $parent, 'name' => $name, 'fullname' => $fullName, 'relname' => str_replace('\\', '/', str_replace(JPATH_ROOT, '', $fullName)) ); $dirs2 = self::listFolderTree($fullName, $filter, $maxLevel, $level + 1, $id); $dirs = array_merge($dirs, $dirs2); } } return $dirs; } /** * Return Image Information using image path * * @param string Image Path $path * @return void */ public function getMediaByPath($path) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id', 'title', 'path', 'thumb'))); $query->from($db->quoteName('#__spmedia')); $query->where($db->quoteName('path') . ' LIKE ' . $db->quote('%' . $path . '%')); $db->setQuery($query); return $db->loadObject(); } } PKBA#]Ǐ�ii4components/com_sppagebuilder/models/integrations.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\BaseDatabaseModel; use Joomla\CMS\Plugin\PluginHelper; JLoader::register('SppagebuilderHelperIntegrations', JPATH_ADMINISTRATOR . '/components/com_sppagebuilder/helpers/integrations.php'); class SppagebuilderModelIntegrations extends BaseDatabaseModel { public function toggle($group = '', $name = '') { $db = Factory::getDbo(); $integrations = SppagebuilderHelperIntegrations::integrations(); if(isset($integrations[$group])) { $enabled = PluginHelper::isEnabled($group, $name); $status = $enabled ? 0 : 1; $db = Factory::getDbo(); $query = $db->getQuery(true); $fields = array($db->quoteName('enabled') . ' = ' . $status); $conditions = array( $db->quoteName('type') . ' = ' . $db->quote('plugin'), $db->quoteName('element') . ' = ' . $db->quote($name), $db->quoteName('folder') . ' = ' . $db->quote($group) ); $query->update($db->quoteName('#__extensions'))->set($fields)->where($conditions); $db->setQuery($query); $db->execute(); return $status; } else { return false; } } } PKBA#]l�K��1components/com_sppagebuilder/models/languages.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\ListModel; class SppagebuilderModelLanguages extends ListModel { public function __construct($config = array()) { parent::__construct($config); } protected function getListQuery() { $db = $this->getDbo(); $query = $db->getQuery(true); $user = Factory::getUser(); $query->select( $this->getState( 'list.select', 'a.*' ) ); $query->from('#__sppagebuilder_languages as a'); return $query; } public function storeInstall($language) { $db = Factory::getDbo(); $input = Factory::getApplication()->input; $language_name = $input->get('language', 'en-GB', 'STRING'); $result = $this->checkInstall($language->lang_tag); $version = $language->version; if($result) { // Update //self::updateLang($language); $values = array( 'title' => $language->title, 'description' => $language->description, 'lang_key' => $language->lang_key, 'version' => $language->version, ); $version = self::updateLang($values, $language->lang_key); } else { $values = array( $db->quote($language->title), $db->quote($language->description), $db->quote($language->lang_tag), $db->quote($language->lang_key), $db->quote($language->version), 1 ); $this->insertInstall($values); } return $version; //return $result; } private function checkInstall($language = 'en-GB') { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(array('id', 'state'))); $query->from($db->quoteName('#__sppagebuilder_languages')); $query->where($db->quoteName('lang_tag') . ' = ' . $db->quote($language)); $db->setQuery($query); return $db->loadObject(); } private function insertInstall($values = array()) { $db = Factory::getDbo(); $query = $db->getQuery(true); $columns = array('title', 'description', 'lang_tag', 'lang_key', 'version', 'state'); $query ->insert($db->quoteName('#__sppagebuilder_languages')) ->columns($db->quoteName($columns)) ->values(implode(',', $values)); $db->setQuery($query); $db->execute(); $insertid = $db->insertid(); return $insertid; } public function updateLang($values = array(), $lang_tag = 'en-GB') { $db = Factory::getDbo(); // Change state to database $query = $db->getQuery(true); $fields = array( $db->quoteName('title') . ' = ' . $db->quote($values['title']), $db->quoteName('description') . ' = ' . $db->quote($values['description']), $db->quoteName('lang_key') . ' = ' . $db->quote($values['lang_key']), $db->quoteName('version') . ' = ' . $db->quote($values['version']), ); //$fields = array('title', 'description', 'lang_tag', 'lang_key', 'version', 'state'); $conditions = array( $db->quoteName('lang_key') . ' = ' . $db->quote($lang_tag) ); $query->update($db->quoteName('#__sppagebuilder_languages'))->set($fields)->where($conditions); $db->setQuery($query); $db->execute(); return $values['version']; } } PKBA#]�{Ew� � .components/com_sppagebuilder/models/editor.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Dispatcher\Dispatcher as DispatcherDispatcher; use Joomla\CMS\Factory; use Joomla\CMS\Installer\Installer; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\AdminModel; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\Router\Route; use Joomla\CMS\Table\Table; use Joomla\CMS\Uri\Uri; use Joomla\Database\ParameterType; use Joomla\String\StringHelper; use JoomShaper\SPPageBuilder\DynamicContent\Constants\FieldTypes; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\CollectionField; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; use JoomShaper\SPPageBuilder\DynamicContent\Site\CollectionHelper; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; use JoomShaper\SPPageBuilder\DynamicContent\Services\CollectionsService; if (! \class_exists('EditorUtils')) { require_once __DIR__ . './../editor/helpers/EditorUtils.php'; } /** * SPPB Editor Model * * @since 4.0.0 */ class SppagebuilderModelEditor extends AdminModel { /** * The context for the model. * * @var string */ public function __construct($config = []) { parent::__construct($config); $this->setDispatcher(Factory::getApplication()->getDispatcher()); } /** * Method for getting a form. * * @param array $data Data for the form. * @param bool $loadData True if the form is to load its own data (default case), false if not. * @return void */ public function getForm($data = [], $loadData = true) { $form = $this->loadForm('com_sppagebuilder.page', 'page', ['control' => 'jform', 'load_data' => $loadData]); if (empty($form)) { return false; } $jinput = Factory::getApplication()->input; $id = $jinput->get('id', 0); // Determine correct permissions to check. if ($this->getState('page.id')) { $id = $this->getState('page.id'); // Existing record. Can only edit in selected categories. $form->setFieldAttribute('catid', 'action', 'core.edit'); // Existing record. Can only edit own pages in selected categories. $form->setFieldAttribute('catid', 'action', 'core.edit.own'); } else { // New record. Can only create in selected categories. $form->setFieldAttribute('catid', 'action', 'core.create'); } $user = Factory::getUser(); // Modify the form based on Edit State access controls. if ( $id != 0 && (! $user->authorise('core.edit.state', 'com_sppagebuilder.page.' . (int) $id)) || ($id == 0 && ! $user->authorise('core.edit.state', 'com_sppagebuilder')) ) { // Disable fields for display. $form->setFieldAttribute('published', 'disabled', 'true'); // Disable fields while saving. // The controller has already verified this is an page you can edit. $form->setFieldAttribute('published', 'filter', 'unset'); } return $form; } /** * Method to get a single item. * * @param mixed $pk The primary key value for the item. * * @return object|boolean The item data object on success, false on failure. * @since 4.0.0 */ public function getItem($pk = null) { if ($item = parent::getItem($pk)) { $item = parent::getItem($pk); // Get item language code $lang_code = (isset($item->language) && $item->language && explode('-', $item->language)[0]) ? explode('-', $item->language)[0] : ''; // Preview URL $item->link = 'index.php?option=com_sppagebuilder&task=page.edit&id=' . $item->id; $item->preview = SppagebuilderHelperRoute::getPageRoute($item->id, $lang_code); $item->frontend_edit = SppagebuilderHelperRoute::getFormRoute($item->id, $lang_code); } return $item; } /** * Method to get the data that should be injected into the form. * * @return mixed The data for the form. * @since 4.0.0 */ protected function loadFormData() { /** @var CMSApplication */ $app = Factory::getApplication(); $data = $app->getUserState('com_sppagebuilder.edit.page.data', []); if (empty($data)) { $data = $this->getItem(); } $this->preprocessData('com_sppagebuilder.page', $data); return $data; } /** * Check if the user can edit the state of the item. * * @param object $item The item to check. * * @return bool True if the user can edit the state, false otherwise. * @since 4.0.0 */ protected function canEditState($item) { return Factory::getUser()->authorise('core.edit.state', 'com_sppagebuilder.page.' . $item->id); } /** * Get the table instance. * * @param string $name The name of the table. * @param string $prefix The prefix for the table class. * @param array $options Additional options for the table. * * @return Table The table instance. * @since 4.0.0 */ public function getTable($name = 'Editor', $prefix = 'SppagebuilderTable', $options = []) { return Table::getInstance($name, $prefix, $options); } /** * Sort by the given parameter. * * @param string $param The parameter to sort by. * * @return object An object containing the field and direction of the sort. * @since 4.0.0 */ public function sortBy(string $param) { $firstCharacter = substr($param, 0, 1); $orderDirection = "ASC"; if ($firstCharacter === '-') { $param = substr($param, 1); $orderDirection = "DESC"; } $ordering = new stdClass(); $ordering->field = $param; $ordering->direction = $orderDirection; return $ordering; } /** * Get pages based on the provided page data. * * @param object $pageData The data for filtering and sorting pages. * * @return object The response containing total items, total pages, and results. * @since 4.0.0 */ public function getPages($pageData) { $search = $pageData->search; $offset = (int) $pageData->offset; $limit = (int) $pageData->limit; $sortBy = $pageData->sortBy; $category = (int) $pageData->category; $language = $pageData->language; $access = $pageData->access ?? ''; $status = $pageData->status; $extension = $pageData->extension; $extensionView = $pageData->extension_view; $pageTypes = $pageData->page_types; $type = $pageData->type; if (empty($pageTypes)) { $pageTypes = ['page']; } if (! is_array($pageTypes)) { $pageTypes = [$pageTypes]; } if (! empty($type)) { $pageTypes = [$type]; } $response = new stdClass(); try { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([ $db->quoteName('p.id'), $db->quoteName('p.asset_id'), $db->quoteName('p.title'), $db->quoteName('p.text'), $db->quoteName('p.content'), $db->quoteName('p.extension_view'), $db->quoteName('p.view_id'), $db->quoteName('p.catid'), $db->quoteName('p.published'), $db->quoteName('p.created_on'), $db->quoteName('p.created_by'), $db->quoteName('p.language'), $db->quoteName('p.hits'), $db->quoteName('p.checked_out'), $db->quoteName('p.css'), $db->quoteName('p.attribs'), $db->quoteName('p.og_title'), $db->quoteName('p.og_description'), $db->quoteName('p.og_image'), $db->quoteName('c.title', 'category'), $db->quoteName('l.title', 'language_title'), $db->quoteName('ug.title', 'access_title'), ]); $query->from($db->quoteName('#__sppagebuilder', 'p')) ->join('LEFT', $db->quoteName('#__categories', 'c'), $db->quoteName('p.catid') . ' = ' . $db->quoteName('c.id')) ->join('LEFT', $db->quoteName('#__languages', 'l'), $db->quoteName('l.lang_code') . ' = ' . $db->quoteName('p.language')) ->join('LEFT', $db->quoteName('#__viewlevels', 'ug'), $db->quoteName('ug.id') . ' = ' . $db->quoteName('p.access')); $query->where($db->quoteName('p.extension') . ' = :extension') ->bind(':extension', $extension); $query->whereIn($db->quoteName('p.extension_view'), $pageTypes, ParameterType::STRING); if (is_numeric($status)) { $query->where($db->quoteName('p.published') . ' = :status') ->bind(':status', $status, ParameterType::INTEGER); } else { $query->whereIn($db->quoteName('p.published'), [0, 1]); } if (! empty($category)) { $query->where($db->quoteName('p.catid') . ' = :category') ->bind(':category', $category, ParameterType::INTEGER); } if (! empty($language)) { $query->where($db->quoteName('p.language') . ' = :language') ->bind(':language', $language); } if ($access !== '' && is_numeric($access)) { $accessLevel = (int) $access; $query->where($db->quoteName('p.access') . ' = :access') ->bind(':access', $accessLevel, ParameterType::INTEGER); } if (! empty($search)) { $search = trim($search); $searchWords = preg_split('/\s+/', $search, -1, PREG_SPLIT_NO_EMPTY); foreach ($searchWords as $i => $word) { $search = '%' . $word . '%'; $query->where($db->quoteName('p.title') . ' LIKE :search' . $i) ->bind(':search' . $i, $search); } } if (! empty($sortBy)) { $ordering = $this->sortBy($sortBy); $direction = $ordering->direction === 'ASC' ? 'ASC' : 'DESC'; $query->order($db->quoteName('p.' . $ordering->field) . ' ' . $direction); } $query->setLimit($limit, $offset); $db->setQuery($query); try { $results = $db->loadObjectList(); } catch (\Exception $error) { $results = []; } if (! empty($results)) { if (! class_exists('SppagebuilderHelperRoute')) { require_once JPATH_SITE . '/components/com_sppagebuilder/helpers/route.php'; } foreach ($results as &$result) { if ($result->created_on) { $result->created = (new DateTime($result->created_on))->format('j F, Y'); unset($result->created_on); } if (! empty($result->created_by)) { $result->author = Factory::getUser($result->created_by)->name; } if (empty($result->category)) { $result->category = '-'; } if (! empty($result->content)) { $result->text = $result->content; unset($result->content); } if (! empty($result->attribs)) { $result->attribs = json_decode($result->attribs); } if (! empty($result->og_image)) { $result->og_image = json_decode($result->og_image); } $result->url = SppagebuilderHelperRoute::getFormRoute($result->id, $result->language, 0, null, $extensionView === 'popup'); $result->preview = $this->getPreviewUrl($result->id, $result->language)['url'] ?? ''; $result->page_type = static::getReadablePageType($result->extension_view, $result->view_id); if ($result->view_id === CollectionIds::ARTICLES_COLLECTION_ID) { if ($result->extension_view === 'dynamic_content:index') { $result->page_type = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_INDEX'), 'articles'); } else if ($result->extension_view === 'dynamic_content:detail') { $result->page_type = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_DETAIL'), 'articles'); } } else if ($result->view_id === CollectionIds::TAGS_COLLECTION_ID) { if ($result->extension_view === 'dynamic_content:index') { $result->page_type = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_INDEX'), 'tags'); } else if ($result->extension_view === 'dynamic_content:detail') { $result->page_type = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_DETAIL'), 'tags'); } } } unset($result); } $totalQuery = clone $query; $totalQuery->clear('select')->clear('limit')->clear('offset') ->select('COUNT(*)'); $db->setQuery($totalQuery); $allItems = (int) $db->loadResult(); $response->totalItems = $allItems; $response->totalPages = ceil($allItems / $limit); $response->results = EditorUtils::parsePageListData($results); $response->code = 200; return $response; } catch (Exception $error) { $response->totalItems = 0; $response->totalPages = 0; $response->results = $error->getMessage(); $response->code = 500; return $response; } } /** * Get the preview URL for a page. * * @param int $pageId The ID of the page. * @param string|null $language The language code (optional). * * @return array An array containing the preview URL. * @since 4.0.0 */ public function getPreviewUrl($pageId, $language = null) { if (empty($pageId)) { return ['url' => '']; } $page = Page::where('id', $pageId)->first(); if ($page->isEmpty()) { return ['url' => '']; } $isAdmin = Factory::getApplication()->isClient('administrator'); $itemId = SppagebuilderHelperRoute::getMenuItemId($pageId); $menuItemId = $itemId ? '&Itemid=' . $itemId : ''; $pageType = $page->extension_view; switch ($pageType) { case Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL: $firstItemId = CollectionHelper::getFirstCollectionItemId($page->view_id); $url = Route::_(Uri::root() . 'index.php?option=com_sppagebuilder&view=dynamic&collection_item_id[0]=' . $firstItemId . '&collection_type=' . ($page->view_id === CollectionIds::ARTICLES_COLLECTION_ID ? 'articles' : ($page->view_id === CollectionIds::TAGS_COLLECTION_ID ? 'tags' : 'normal-source')), false); break; case Page::PAGE_TYPE_EASYSTORE_STOREFRONT: $url = Route::_(Uri::root() . 'index.php?option=com_easystore&view=products', false); break; case Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX: case Page::PAGE_TYPE_REGULAR: default: $url = 'index.php?option=com_sppagebuilder&view=page&id=' . $pageId . $menuItemId; if (Multilanguage::isEnabled() && ! empty($language) && $language !== '*') { $url .= '&lang=' . $language; } $url = $isAdmin ? Route::link('site', $url, false) : Route::_($url, false); if (strpos($url, 'http://') !== 0 && strpos($url, 'https://') !== 0) { $uri = Uri::getInstance(); $url = $uri->toString(['scheme', 'host']) . '/' . ltrim($url, '/'); } break; } if($pageType === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL || $pageType === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX || $pageType === Page::PAGE_TYPE_EASYSTORE_STOREFRONT) { if (Multilanguage::isEnabled() && ! empty($language) && $language !== '*') { $url .= '&lang=' . $language; } } return ['url' => $url]; } /** * Get readable page type. * * @param string $pageType * @param int|null $collectionId * * @return string * @since 5.5.0 */ private static function getReadablePageType($pageType, $collectionId = null) { switch ($pageType) { case Page::PAGE_TYPE_REGULAR: return Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_PAGE'); case Page::PAGE_TYPE_POPUP: return Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_POPUP'); case Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX: $collection = Collection::find($collectionId); if ($collection->isEmpty()) { // @TODO: check this return Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_PAGE'); } return Text::sprintf('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_INDEX', $collection->alias); case Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL: $collection = Collection::find($collectionId); if ($collection->isEmpty()) { // @TODO: check this return Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_PAGE'); } return Text::sprintf('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_DETAIL', $collection->alias); default: return $pageType; } } /** * Get the full readable route-style page type, including the articles / tags * special cases, matching the page list. e.g. "/articles" or "/articles/:slug". * * @param string $extensionView * @param int|null $viewId * * @return string * @since 6.6.1 */ private static function getPageTypeLabel($extensionView, $viewId = null) { $label = static::getReadablePageType($extensionView, $viewId); $collectionAlias = null; if ((int) $viewId === (int) CollectionIds::ARTICLES_COLLECTION_ID) { $collectionAlias = 'articles'; } elseif ((int) $viewId === (int) CollectionIds::TAGS_COLLECTION_ID) { $collectionAlias = 'tags'; } if (!empty($collectionAlias)) { if ($extensionView === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX) { $label = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_INDEX'), $collectionAlias); } elseif ($extensionView === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL) { $label = sprintf(Text::_('COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_TYPE_DYNAMIC_CONTENT_DETAIL'), $collectionAlias); } } return $label; } /** * Count total number of pages. * * @param string $keyword The search keyword. * * @return int * @since 4.0.0 */ public function countTotalPages($keyword = ''): int { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('COUNT(*)') ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('extension') . ' = ' . $db->quote('com_sppagebuilder')); if (! empty($keyword)) { $keyword = preg_quote($keyword, '/'); $query->where($db->quoteName('title') . ' REGEXP :keyword') ->bind(':keyword', $keyword); } $db->setQuery($query); try { return (int) $db->loadResult(); } catch (\Exception $error) { Factory::getApplication()->enqueueMessage($error->getMessage(), 'error'); return 0; } } /** * Get page content by ID. * * @param int $id The ID of the page. * * @return object|null The page content or null if not found. * @since 4.0.0 */ public function getPageContent(int $id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([ 'id', 'asset_id', 'title', 'text', 'content', 'extension', 'extension_view', 'view_id', 'created_by', 'published', 'catid', 'access', 'created_on', 'attribs', 'og_title', 'og_description', 'og_image', 'language', 'css', 'version', ])->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); $result = null; try { $result = $db->loadObject(); } catch (\Exception $e) { return $result; } $defaultAttributes = (object) [ 'meta_description' => '', 'meta_keywords' => '', 'robots' => 'global', 'author' => '', ]; $defaultImage = (object) [ 'src' => '', ]; if (! empty($result)) { $result->text = ! empty($result) ? \json_decode($result->text) : null; $result->attribs = \json_decode($result->attribs); $result->og_image = \json_decode($result->og_image); if (empty($result->attribs)) { $result->attribs = $defaultAttributes; } if (empty($result->og_image)) { $result->og_image = $defaultImage; } $result->url = SppagebuilderHelperRoute::getFormRoute($result->id, $result->language); $result->collection = null; $result->dynamic_fields = []; if ($result->extension_view === 'dynamic_content:detail' && !empty($result->view_id && $result->view_id !== -2)) { $result->collection = Collection::where('id', $result->view_id)->first(['id', 'title', 'alias'])->toArray(); $result->dynamic_fields = $this->getCollectionFields($result->view_id); } else if ($result->extension_view === 'dynamic_content:detail' && !empty($result->view_id && $result->view_id == -2)) { $result->collection = [ 'id' => $result->view_id, 'title' => Text::_('COM_SPPAGEBUILDER_DYNAMIC_CONTENT_COLLECTION_ARTICLES'), 'alias' => 'articles', ]; $result->dynamic_fields = $this->getArticleFields();; } // Readable route-style page type (e.g. "/articles" or "/articles/:slug"), same as the page list. $result->page_type = self::getPageTypeLabel($result->extension_view, $result->view_id); } return $result; } /** * Get collection fields for a given collection ID. * * @param int $collectionId The ID of the collection. * * @return array An array of fields with their values and labels. * @since 4.0.0 */ private function getCollectionFields($collectionId) { if (empty($collectionId)) { return []; } $fields = CollectionField::where('collection_id', $collectionId) ->whereIn('type', [ FieldTypes::TITLE, FieldTypes::ALIAS, FieldTypes::TEXT, FieldTypes::IMAGE, FieldTypes::RICH_TEXT, ]) ->get(); $fields = Arr::make($fields)->reduce(function ($carry, $field) { if ($field->type === FieldTypes::IMAGE) { $carry['image'] ??= []; $carry['image'][] = ['value' => $field->id, 'label' => '{{' . $field->name . '}}', 'type' => $field->type]; } else { $carry['text'] ??= []; $carry['text'][] = ['value' => $field->id, 'label' => '{{' . $field->name . '}}', 'type' => $field->type]; } return $carry; }, []); return $fields->toArray(); } private function getArticleFields() { $fields = (new CollectionsService)->fetchArticleFieldsForSeo(); $fields = array_filter($fields, function ($field) { return $field['id'] !== 0; }); $fields = Arr::make($fields)->reduce(function ($carry, $field) { if ($field['type'] === FieldTypes::IMAGE) { $carry['image'] ??= []; $carry['image'][] = ['value' => $field['id'], 'label' => '{{' . $field['name'] . '}}', 'type' => $field['type']]; } else { $carry['text'] ??= []; $carry['text'][] = ['value' => $field['id'], 'label' => '{{' . $field['name'] . '}}', 'type' => $field['type']]; } return $carry; }, []); return $fields->toArray(); } /** * Get product page content by extension and view. * * @param string $extension The extension name. * @param string $extensionView The view name. * * @return object|null The product page content or null if not found. * @since 4.0.0 */ public function getProductPageContent(string $extension, string $extensionView) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([ 'id', 'title', 'text', 'content', 'extension', 'extension_view', 'view_id', 'created_by', 'catid', 'access', 'created_on', 'attribs', 'og_title', 'og_description', 'og_image', 'language', 'published', 'css', 'version', ])->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('extension') . ' = :extension') ->where($db->quoteName('extension_view') . ' = :extension_view') ->bind(':extension', $extension, ParameterType::STRING) ->bind(':extension_view', $extensionView, ParameterType::STRING); $db->setQuery($query); $result = null; try { $result = $db->loadObject(); } catch (\Exception $error) { return $result; } $defaultAttributes = (object) [ 'meta_description' => '', 'meta_keywords' => '', 'robots' => 'global', 'author' => '', ]; $defaultImage = (object) [ 'src' => '', ]; if (! empty($result)) { $result->text = ! empty($result) ? \json_decode($result->text) : null; $result->attribs = \json_decode($result->attribs); $result->og_image = \json_decode($result->og_image); if (empty($result->attribs)) { $result->attribs = $defaultAttributes; } if (empty($result->og_image)) { $result->og_image = $defaultImage; } $result->url = SppagebuilderHelperRoute::getFormRoute($result->id, $result->language); } return $result; } /** * Save page data. * * @param array $data The page data to save. * * @throws Exception * @since 4.0.0 */ public function savePage(array $data) { $data['css'] = $data['css'] ?? ''; $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(['extension_view', 'extension'])) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = ' . $db->quote($data['id'])); $db->setQuery($query); $result = $db->loadObject(); if ($result->extension_view === 'popup') { $popupSettingKeys = [ 'popup_type', 'is_excluded_pages', 'is_excluded_menus', 'excluded_pages', 'excluded_menus', 'selected_pages', 'selected_menus', ]; $popupSettings = [ 'id' => $data['id'], ]; foreach ($popupSettingKeys as $popupKey) { if (! empty($data[$popupKey])) { $popupSettings[$popupKey] = $data[$popupKey]; } } $params = ComponentHelper::getParams('com_sppagebuilder'); $componentId = ComponentHelper::getComponent('com_sppagebuilder')->id; $visibility = $params->get('popup_visibility', null); $visibility = ! empty($visibility) ? $visibility : null; $popupId = $data['id']; if (is_null($visibility)) { $visibility = [$popupId => $popupSettings]; } else { $visibility->$popupId = $popupSettings; } $params->set('popup_visibility', $visibility); $table = Table::getInstance('extension'); $table->load($componentId); $table->params = json_encode($params); if (! $table->store()) { echo "Something went wrong"; die; } } try { if (! parent::save($data)) { throw new Exception('Error while saving the page'); } if ($result->extension == 'com_content' && $result->extension_view == 'article') { $page = $this->getPageContent($data['id']); $this->addArticleFullText($page->view_id, $page->content); } $params = ComponentHelper::getParams('com_sppagebuilder'); $pageVersioningEnabled = $params->get('enable_page_versioning', 1); $versioningOnSaveDisabled = !$params->get('enable_versioning_on_save', 1); $is_triggered_from_save = !(isset($data['is_triggered_from_versioning']) ? (bool)$data['is_triggered_from_versioning'] : false); $is_pro_version = !((bool)$data['is_free_version']); if($is_pro_version && $pageVersioningEnabled) { if($is_triggered_from_save && $versioningOnSaveDisabled) { return; } $versionName = !empty($data['version_name']) ? $data['version_name'] : null; $versionNote = !empty($data['version_note']) ? $data['version_note'] : null; $this->createVersionSnapshot($data['id'], $versionName, $versionNote); } } catch (Throwable $error) { throw $error; } } /** * Duplicate a page. * * @param int $id The ID of the page to duplicate. * * @return object * @since 4.0.0 */ public function duplicatePage(int $id) { try { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select("*"); $query->from($db->quoteName('#__sppagebuilder')); $query->where($db->quoteName('id') . '=' . $db->quote($id)); $db->setQuery($query); $page = $db->loadObject(); if (! empty($page)) { $page->title = $this->generatePageNewTitle($page->title); $page->hits = 0; $page->id = ''; $db->insertObject('#__sppagebuilder', $page, 'id'); $this->checkin($id); return (object) [ 'response' => [ 'status' => true, 'id' => $page->id, 'message' => Text::_("COM_SPPAGEBUILDER_SUCCESS_MSG_FOR_PAGE_DUPLICATED"), ], 'code' => 201, ]; } } catch (Exception $e) { return (object) ['status' => false, 'message' => $e->getMessage(), 'code' => 500]; } } /** * Generate page title * * @param string $title current page title. * * @return string */ public function generatePageNewTitle($title) { $table = $this->getTable(); while ($table->load(['title' => $title])) { $title = StringHelper::increment($title); } return $title; } /** * Get Menu List * * @return object The response * @since 4.0.0 */ public function getMenus(): object { $response = new stdClass(); try { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('id, menutype, title') ->from($db->quoteName('#__menu_types')) ->where($db->quoteName('client_id') . ' = 0'); $db->setQuery($query); $result = $db->loadObjectList(); $data = []; if (! empty($result)) { foreach ($result as $value) { $data[] = (object) [ 'value' => $value->menutype, 'label' => $value->title, ]; } } $response->data = $data; $response->code = 200; return $response; } catch (Exception $e) { $response->message = $e->getMessage(); $response->code = 500; return $response; } } /** * Get Menu List * * @param string $menuType The menu type * @return object The response * @since 4.0.0 */ public function getParentItems(string $menuType, int $id = 0): object { $response = new stdClass(); try { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('DISTINCT(a.id) AS value, a.title AS text, a.level, a.lft') ->from($db->quoteName('#__menu', 'a')) ->where($db->quoteName('a.menutype') . ' = ' . $db->quote($menuType)) ->where($db->quoteName('a.client_id') . ' = 0'); if ($id > 0) { $query->join('LEFT', $db->quoteName('#__menu') . ' AS p ON p.id = ' . (int) $id) ->where('NOT(a.lft >= p.lft AND a.rgt <= p.rgt)'); } $query->where('a.published != -2') ->order('a.lft ASC'); $db->setQuery($query); $result = $db->loadObjectList(); $data = []; if (! empty($result)) { foreach ($result as $value) { $data[] = (object) [ 'value' => $value->value, 'label' => $value->text, ]; } } $rootItem = (object) ['value' => 1, 'label' => Text::_('COM_SPPAGEBUILDER_MENU_ITEM_ROOT')]; array_unshift($data, $rootItem); $response->data = $data; $response->code = 200; return $response; } catch (Exception $e) { $response->data = $e->getMessage(); $response->code = 500; return $response; } } /** * Get menu item by page ID. * * @param int $pageId The page ID to search for. * * @return object|null The menu item object if found, null otherwise. * @since 4.0.0 */ public function getMenuByPageId($pageId = 0) { $db = $this->getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from('#__menu'); $query->where($db->quoteName('link') . ' = ' . $db->quote('index.php?option=com_sppagebuilder&view=page&id=' . $pageId)); $query->where($db->quoteName('client_id') . '= 0'); $db->setQuery($query); return $db->loadObject(); } /** * Apply bulk actions on pages. * * @param object $params The parameters containing the action type and IDs. * * @return bool True on success, false on failure. * @since 4.0.0 */ public function applyBulkActions(object $params) { switch ($params->type) { case 'published': return $this->changeStatus($params->ids, 1); case 'unpublished': return $this->changeStatus($params->ids, 0); case 'trash': return $this->changeStatus($params->ids, -2); case 'delete': return $this->deletePages($params->ids); case 'check-out': return $this->checkOutItems($params->ids); case 'rename': return $this->renamePage($params->ids, $params->value); case 'language': return $this->performBulkActions($params->ids, 'language', $params->value); case 'access': return $this->performBulkActions($params->ids, 'access', $params->value); case 'category': return $this->performBulkActions($params->ids, 'catid', $params->value); } } /** * Perform bulk actions on pages. * * @param string $ids Comma-separated list of page IDs. * @param string $type The type of action to perform (e.g., 'language', 'access', 'catid'). * @param string $value The value to set for the specified type. * * @return bool True on success, false on failure. * @since 4.0.0 */ private function performBulkActions(string $ids, string $type, string $value) { $db = Factory::getDbo(); $query = $db->getQuery(true); $ids = array_map('intval', explode(',', $ids)); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName($type) . ' = ' . $db->quote($value)) ->whereIn($db->quoteName('id'), $ids); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Rename a page by ID. * * @param string $id The page ID to rename. * @param string $value The new title for the page. * * @return bool True on success, false on failure. * @since 4.0.0 */ private function renamePage(string $id, string $value) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('title') . ' = ' . $db->quote($value)) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Change the status of pages by IDs. * * @param string $ids Comma-separated list of page IDs to change status. * @param int $status The new status to set (1 for published, 0 for unpublished). * * @return bool True on success, false on failure. * @since 4.0.0 */ private function changeStatus(string $ids, int $status) { $db = Factory::getDbo(); $query = $db->getQuery(true); $idArray = array_map('intval', explode(',', $ids)); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('published') . ' = :status') ->whereIn($db->quoteName('id'), $idArray) ->bind(':status', $status, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Delete pages by IDs. * * @param string $ids Comma-separated list of page IDs to delete. * * @return bool True on success, false on failure. * @since 4.0.0 */ private function deletePages(string $ids) { $db = Factory::getDbo(); $query = $db->getQuery(true); $idsCasted = implode(',', array_map('intval', explode(',', $ids))); $query->delete($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' IN (' . $idsCasted . ')'); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Check in multiple items by IDs. * * @param string $ids Comma-separated list of item IDs to check in. * * @return bool True on success, false on failure. * @since 4.0.0 */ private function checkOutItems(string $ids) { $idsCasted = implode(',', array_map('intval', explode(',', $ids))); $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('checked_out') . ' = 0') ->where($db->quoteName('id') . ' IN (' . $idsCasted . ')'); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Check in a page by ID. * * @param int $id The page ID to check in. * * @return bool True on success, false on failure. * @since 4.0.0 */ public function checkInPage($id) { if (empty($id)) { return; } $user = Factory::getUser(); $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('checked_out') . ' = ' . (int) $user->id) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Check out a page by ID. * * @param int $id The page ID to check out. * * @return bool True on success, false on failure. * @since 4.0.0 */ public function checkOutPage($id) { if (empty($id)) { return; } $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('checked_out') . ' = 0') ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Reset the hit counter of a page by ID. * * @param int $id The page ID whose hits should be reset. * * @return bool True on success, false on failure. * @since 6.6.1 */ public function resetPageHits($id) { if (empty($id)) { return false; } $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder')) ->set($db->quoteName('hits') . ' = 0') ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Check if a language is installed. * * @param string $language The language tag to check. * * @return object|false The language object if installed, false otherwise. * @since 4.0.0 */ public function checkLanguageIsInstalled($language = 'en-GB') { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select($db->quoteName(['id', 'state', 'version'])); $query->from($db->quoteName('#__sppagebuilder_languages')); $query->where($db->quoteName('lang_tag') . ' = :language'); $query->bind(':language', $language); $db->setQuery($query); $result = $db->loadObject(); return ! empty($result) ? $result : false; } /** * Get language status and sync with Joomla extensions table. * * @param string $language The language tag to check. * * @return object|false The language object with synced status, false if not found in Joomla. * @since 6.6.0 */ public function getLanguageStatus($language = 'en-GB') { $db = Factory::getDbo(); $elementPattern = $language . '.com_sppagebuilder'; $query = $db->getQuery(true); $query->select($db->quoteName(['extension_id', 'enabled', 'name'])) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('type') . ' = ' . $db->quote('file')) ->where($db->quoteName('element') . ' = ' . $db->quote($elementPattern)); $db->setQuery($query); $extensionRecord = $db->loadObject(); if (!$extensionRecord) { $this->deleteLanguage($language); return false; } $customRecord = $this->checkLanguageIsInstalled($language); if (!$customRecord) { $state = $extensionRecord->enabled ? 1 : 0; $this->createLanguageFromJoomlaExtension($language, $extensionRecord->name, $state); $customRecord = $this->checkLanguageIsInstalled($language); if (!$customRecord) { return false; } } else { if ($extensionRecord->enabled && (int) $customRecord->state !== 1) { $customRecord->state = 1; $this->updateLanguageState($customRecord->id, 1); } else if (!$extensionRecord->enabled && (int) $customRecord->state !== 0) { $customRecord->state = 0; $this->updateLanguageState($customRecord->id, 0); } } return $customRecord; } /** * Create a language record in our custom table from Joomla extension. * * @param string $language The language tag. * @param string $name The extension name. * @param int $state The state (0 or 1). * * @return int|false The inserted language ID or false on failure. * @since 6.6.0 */ private function createLanguageFromJoomlaExtension($language = 'en-GB', $name = '', $state = 1) { $db = Factory::getDbo(); $parts = explode('-', $language); $langKey = !empty($parts[0]) ? strtolower($parts[0]) : $language; $object = new \stdClass(); $object->title = !empty($name) ? $name : 'SP Page Builder (' . $language . ')'; $object->description = 'Language pack for SP Page Builder'; $object->lang_tag = $language; $object->lang_key = $langKey; $object->version = '2.0.1'; $object->state = $state; try { $db->insertObject('#__sppagebuilder_languages', $object); return $db->insertid(); } catch (\Exception $e) { return false; } } /** * Update language state. * * @param int $id The language record ID. * @param int $state The state value (0 or 1). * * @return bool True on success, false on failure. * @since 6.6.0 */ private function updateLanguageState($id, $state) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder_languages')) ->set($db->quoteName('state') . ' = :state') ->where($db->quoteName('id') . ' = :id') ->bind(':state', $state, ParameterType::INTEGER) ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Store language details. * * @param object $language The language object containing details. * * @return string The version of the stored or updated language. * @since 4.0.0 */ public function storeLanguage($language) { $db = Factory::getDbo(); $result = $this->checkLanguageIsInstalled($language->lang_tag); $version = $language->version; if ($result) { $values = [ 'title' => $language->title, 'description' => $language->description, 'lang_key' => $language->lang_key, 'version' => $language->version, ]; $version = $this->updateLanguageByTag($values, $language->lang_tag); } else { $values = [ $language->title, $language->description, $language->lang_tag, $language->lang_key, $language->version, 1, ]; $this->insertLanguage($values); } return $version; } /** * Insert a new language. * * @param array $values The values to insert. * * @return int The inserted language ID. * @since 4.0.0 */ private function insertLanguage($values = []) { if (empty($values)) { return 0; } $db = Factory::getDbo(); $columns = ['title', 'description', 'lang_tag', 'lang_key', 'version', 'state']; $object = new \stdClass(); foreach ($columns as $i => $column) { $object->$column = $values[$i] ?? ''; } $db->insertObject('#__sppagebuilder_languages', $object); return $db->insertid(); } /** * Update language details. * * @param array $values The values to update. * @param string $lang_tag The language tag. * * @return string The updated version. * @since 4.0.0 */ private function updateLanguage($values = [], $lang_tag = 'en-GB') { $db = $this->getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder_languages')) ->set([ $db->quoteName('title') . ' = :title', $db->quoteName('description') . ' = :description', $db->quoteName('lang_key') . ' = :langKey', $db->quoteName('version') . ' = :version', ]) ->where($db->quoteName('lang_key') . ' = :langTag') ->bind(':title', $values['title']) ->bind(':description', $values['description']) ->bind(':langKey', $values['lang_key']) ->bind(':version', $values['version']) ->bind(':langTag', $lang_tag); $db->setQuery($query); $db->execute(); return $values['version']; } /** * Update language details by lang_tag. * * @param array $values The values to update. * @param string $lang_tag The language tag. * * @return string The updated version. * @since 6.6.0 */ private function updateLanguageByTag($values = [], $lang_tag = 'en-GB') { $db = $this->getDbo(); $query = $db->getQuery(true); $query->update($db->quoteName('#__sppagebuilder_languages')) ->set([ $db->quoteName('title') . ' = :title', $db->quoteName('description') . ' = :description', $db->quoteName('lang_key') . ' = :langKey', $db->quoteName('version') . ' = :version', ]) ->where($db->quoteName('lang_tag') . ' = :langTag') ->bind(':title', $values['title']) ->bind(':description', $values['description']) ->bind(':langKey', $values['lang_key']) ->bind(':version', $values['version']) ->bind(':langTag', $lang_tag); $db->setQuery($query); try { $db->execute(); return $values['version']; } catch (\Exception $e) { return false; } } /** * Uninstall a language. * * @param string $language The language tag to uninstall. * * @return bool True on success, false on failure. * @since 6.6.0 */ public function uninstallLanguage($language = 'en-GB') { try { $langRecord = $this->checkLanguageIsInstalled($language); if (!$langRecord) { return false; } $installer = Installer::getInstance(); $db = Factory::getDbo(); $query = $db->getQuery(true); $elementPattern = $language . '.com_sppagebuilder'; $query->select($db->quoteName('extension_id')) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('type') . ' = ' . $db->quote('file')) ->where($db->quoteName('element') . ' = ' . $db->quote($elementPattern)); $db->setQuery($query); $extensionId = $db->loadResult(); if ($extensionId) { $table = Table::getInstance('Extension'); $table->load($extensionId); $installer->uninstall('file', $extensionId, $table->element); } return $this->deleteLanguage($language); } catch (Exception $e) { return false; } } /** * Delete language record from database. * * @param string $language The language tag to delete. * * @return bool True on success, false on failure. * @since 6.6.0 */ private function deleteLanguage($language = 'en-GB') { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->delete($db->quoteName('#__sppagebuilder_languages')) ->where($db->quoteName('lang_tag') . ' = :language') ->bind(':language', $language); $db->setQuery($query); try { $db->execute(); return true; } catch (\Exception $e) { return false; } } /** * Get menu by ID. * * @param int $menuId The menu ID. * * @return object|null The menu object or null if not found. * @since 4.0.0 */ public function getMenuById($menuId = 0) { $db = $this->getDbo(); $query = $db->getQuery(true); $query->select(['a.*']); $query->from('#__menu as a') ->where('a.id = :id') ->where('a.client_id = 0') ->where($db->quoteName('published') . ' != -2') ->bind(':id', $menuId, ParameterType::INTEGER); $db->setQuery($query); return $db->loadObject(); } /** * Create a new page. * * @param array $data The data for the new page. * * @return int|array The ID of the created page or an error message. * @since 4.0.0 */ public function createPage(array $data) { try { if (! parent::save($data)) { throw new Exception('Failed creating the page.'); } $id = $this->getState($this->getName() . '.id') ?? 0; return $id; } catch (Exception $error) { return ['message' => $error->getMessage()]; } } /** * Toggle Integration * * @return boolean * @since 4.0.0 */ public function toggleIntegration($group = '', $name = '') { $enabled = PluginHelper::isEnabled($group, $name); $status = $enabled ? 0 : 1; $db = Factory::getDbo(); $query = $db->getQuery(true); $fields = [$db->quoteName('enabled') . ' = ' . $status]; $conditions = [ $db->quoteName('type') . ' = ' . $db->quote('plugin'), $db->quoteName('element') . ' = ' . $db->quote($name), $db->quoteName('folder') . ' = ' . $db->quote($group), ]; $query->update($db->quoteName('#__extensions'))->set($fields)->where($conditions); $db->setQuery($query); $db->execute(); return $status; } /** * Get the creator of a page. * * @param int $id The page ID. * * @return int The user ID of the page creator. * @since 5.5.0 */ public function getPageCreator($id) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select('created_by') ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = :id') ->bind(':id', $id, ParameterType::INTEGER); $db->setQuery($query); try { return $db->loadResult(); } catch (\Exception $e) { return 0; } } /** * Add full text to an article. * * @param int $id The article ID. * @param string $data The full text data. * * @return void * @since 5.5.0 */ public function addArticleFullText($id, $data) { $article = new stdClass(); $article->id = $id; $article->fulltext = SppagebuilderHelperSite::getPrettyText($data); Factory::getDbo()->updateObject('#__content', $article, 'id'); } /** * Create a version snapshot of the page before saving * * @param int $pageId * @param string|null $customName * @param string|null $customNote * @return void * @since 6.2.4 */ private function createVersionSnapshot($pageId, $customName = null, $customNote = null) { try { // Get current page data before saving $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([ $db->quoteName('content'), $db->quoteName('css'), $db->quoteName('attribs'), $db->quoteName('og_title'), $db->quoteName('og_image'), $db->quoteName('og_description') ]) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = ' . (int) $pageId); $db->setQuery($query); $pageData = $db->loadObject(); if (!$pageData) { return; // Page doesn't exist yet, skip version creation } // If a custom note is provided, always create a snapshot (manual note addition) // Otherwise, compare with the last active version to see if settings changed if (empty($customNote)) { // Get the last active version to compare $versionQuery = $db->getQuery(true); $versionQuery->select([ $db->quoteName('content'), $db->quoteName('css'), $db->quoteName('attribs'), $db->quoteName('og_title'), $db->quoteName('og_image'), $db->quoteName('og_description') ]) ->from($db->quoteName('#__sppagebuilder_versions')) ->where($db->quoteName('page_id') . ' = ' . (int) $pageId) ->where($db->quoteName('active') . ' = 1') ->order($db->quoteName('created_on') . ' DESC') ->setLimit(1); $db->setQuery($versionQuery); $activeVersion = $db->loadObject(); // If there's an active version, compare settings if ($activeVersion) { $hasChanges = false; // Normalize and compare content $currentContent = $pageData->content ?? ''; $activeContent = $activeVersion->content ?? ''; if ($currentContent !== $activeContent) { $hasChanges = true; } // Compare CSS if (!$hasChanges) { $currentCss = $pageData->css ?? ''; $activeCss = $activeVersion->css ?? ''; if ($currentCss !== $activeCss) { $hasChanges = true; } } // Compare attribs if (!$hasChanges) { $currentAttribs = $pageData->attribs ?? '[]'; $activeAttribs = $activeVersion->attribs ?? '[]'; if ($currentAttribs !== $activeAttribs) { $hasChanges = true; } } // Compare OG fields if (!$hasChanges) { $currentOgTitle = $pageData->og_title ?? ''; $activeOgTitle = $activeVersion->og_title ?? ''; $currentOgImage = $pageData->og_image ?? ''; $activeOgImage = $activeVersion->og_image ?? ''; $currentOgDescription = $pageData->og_description ?? ''; $activeOgDescription = $activeVersion->og_description ?? ''; if ($currentOgTitle !== $activeOgTitle || $currentOgImage !== $activeOgImage || $currentOgDescription !== $activeOgDescription) { $hasChanges = true; } } // If no changes detected, skip version creation if (!$hasChanges) { return; } } } // Use custom name if provided, otherwise format date/time for version name: "Feb 13, 2026, 7:06:30 AM" if (!empty($customName)) { $versionName = $customName; } else { $date = Factory::getDate(); $versionName = $date->format('M j, Y, g:i:s A', true); } $maxVersionsForPage = (int) ComponentHelper::getParams('com_sppagebuilder')->get('max_versions_for_page', 10); $maxVersionsForPage = max(3, $maxVersionsForPage); $countQuery = $db->getQuery(true); $countQuery->select('COUNT(*)') ->from($db->quoteName('#__sppagebuilder_versions')) ->where($db->quoteName('page_id') . ' = ' . (int) $pageId); $db->setQuery($countQuery); $currentVersionCount = (int) $db->loadResult(); if ($currentVersionCount >= $maxVersionsForPage) { $oldestVersionQuery = $db->getQuery(true); $oldestVersionQuery->select($db->quoteName('id')) ->from($db->quoteName('#__sppagebuilder_versions')) ->where($db->quoteName('page_id') . ' = ' . (int) $pageId) ->order($db->quoteName('created_on') . ' ASC') ->setLimit(1); $db->setQuery($oldestVersionQuery); $oldestVersionId = (int) $db->loadResult(); if ($oldestVersionId > 0) { $deleteQuery = $db->getQuery(true); $deleteQuery->delete($db->quoteName('#__sppagebuilder_versions')) ->where($db->quoteName('id') . ' = ' . $oldestVersionId); $db->setQuery($deleteQuery); $db->execute(); } } // Set all other versions of this page to inactive $updateQuery = $db->getQuery(true); $updateQuery->update($db->quoteName('#__sppagebuilder_versions')) ->set($db->quoteName('active') . ' = 0') ->where($db->quoteName('page_id') . ' = ' . (int) $pageId); $db->setQuery($updateQuery); $db->execute(); Table::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_sppagebuilder/tables'); $versionTable = Table::getInstance('Version', 'SppagebuilderTable'); $versionData = [ 'page_id' => $pageId, 'name' => $versionName, 'content' => $pageData->content ?? '', 'css' => $pageData->css ?? '', 'attribs' => $pageData->attribs ?? '[]', 'og_title' => $pageData->og_title ?? '', 'og_image' => $pageData->og_image ?? '', 'og_description' => $pageData->og_description ?? '', 'active' => 1, ]; // Add custom note if provided if (!empty($customNote)) { $versionData['note'] = $customNote; } $versionTable->bind($versionData); $versionTable->store(); } catch (Exception $e) { // Silently fail - versioning is not critical for saving // Log error if needed } } } PKBA#]�%��9components/com_sppagebuilder/models/fields/modal/page.phpnu�[���<?php use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Form\FormField; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Session\Session; use Joomla\CMS\Version; /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); class JFormFieldModal_Page extends FormField { protected $type = 'Modal_Page'; protected function getInput() { // Load language Factory::getLanguage()->load('com_sppagebuilder', JPATH_ADMINISTRATOR); $modalId = 'Page_' . $this->id; $version = new Version(); $JoomlaVersion = (float) $version->getShortVersion(); if ($JoomlaVersion >= 4) { /** @var \Joomla\CMS\WebAsset\WebAssetManager $wa */ $wa = Factory::getApplication()->getDocument()->getWebAssetManager(); // Add the modal field script to the document head. $wa->useScript('field.modal-fields'); $wa->addInlineScript( " window.jSelectPage_" . $this->id . " = function (id, title, catid, object, url, language, extensionView) { window.processModalSelect('Page', '" . $this->id . "', id, title, catid, object, url, language); const collectionField = document.querySelector('.control-group:has(#jform_request_collection_id)'); document.querySelector('#jform_request_extension_view').value = extensionView; collectionField.dispatchEvent(new Event('change')); }", [], ['type' => 'module'] ); // Setup variables for display. $html = array(); $link = 'index.php?option=com_sppagebuilder&view=pages&layout=modal&tmpl=component&function=jSelectPage_' . $this->id; if (isset($this->element['language'])) { $link .= '&forcedLanguage=' . $this->element['language']; } $extensionView = 'page'; $title = Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'); if ((int) $this->value > 0) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('title, extension_view') ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = ' . (int) $this->value); $db->setQuery($query); try { $item = $db->loadObject(); $title = $item->title; $extensionView = $item->extension_view; } catch (RuntimeException $e) { /** @var CMSApplication $app */ $app = Factory::getApplication(); $app->enqueueMessage($e->getMessage(), 'warning'); $app->setHeader('status', '500', true); } } $title = htmlspecialchars($title, ENT_QUOTES, 'UTF-8'); // The active page id field. if ((int) $this->value === 0) { $value = ''; } else { $value = (int) $this->value; } $url = $link . '&' . Session::getFormToken() . '=1'; $html = ''; $html .= '<span class="input-group">'; $html .= '<input class="form-control" id="' . $this->id . '_name" type="text" value="' . $title . '" readonly size="35">'; $html .= '<input type="hidden" id="jform_request_extension_view" value="' . $extensionView . '" >'; $html .= '<button' . ' class="btn btn-primary"' . ' id="' . $this->id . '_edit"' . ' data-bs-toggle="modal"' . ' type="button"' . ' data-bs-target="#ModalSelect' . $modalId . '">' . '<span class="icon-file" aria-hidden="true"></span> ' . Text::_('JSELECT') . '</button>'; $html .= '</span>'; // The class='required' for client side validation $class = ''; if ($this->required) { $class = ' class="required modal-value"'; } $html .= HTMLHelper::_( 'bootstrap.renderModal', 'ModalSelectPage_' . $this->id, array( 'url' => $url, 'title' => Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'), 'height' => '400px', 'width' => '800px', 'bodyHeight' => 70, 'modalWidth' => 80, 'footer' => '<button class="btn" data-bs-dismiss="modal" aria-hidden="true">' . Text::_("JLIB_HTML_BEHAVIOR_CLOSE") . '</button>' ) ); $html .= '<input type="hidden" id="' . $this->id . '_id"' . $class . ' name="' . $this->name . '" value="' . $value . '" />'; return $html; } else { // Build the script. $script = array(); // Select button script $script[] = ' function jSelectPage_' . $this->id . '(id, title, catid, object) {'; $script[] = ' document.getElementById("' . $this->id . '_id").value = id;'; $script[] = ' document.getElementById("' . $this->id . '_name").value = title;'; $script[] = ' jQuery("#modalPage' . $this->id . '").modal("hide");'; if ($this->required) { $script[] = ' document.formvalidator.validate(document.getElementById("' . $this->id . '_id"));'; $script[] = ' document.formvalidator.validate(document.getElementById("' . $this->id . '_name"));'; } $script[] = ' }'; // Add the script to the document head. Factory::getDocument()->addScriptDeclaration(implode("\n", $script)); // Setup variables for display. $html = array(); $link = 'index.php?option=com_sppagebuilder&view=pages&layout=modal&tmpl=component&function=jSelectPage_' . $this->id; if (isset($this->element['language'])) { $link .= '&forcedLanguage=' . $this->element['language']; } if ((int) $this->value > 0) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = ' . (int) $this->value); $db->setQuery($query); try { $title = $db->loadResult(); } catch (RuntimeException $e) { $app = Factory::getApplication(); $app->enqueueMessage($e->getMessage(), 'warning'); $app->setHeader('status', '500', true); } } if (empty($title)) { $title = Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'); } $title = htmlspecialchars($title, ENT_QUOTES, 'UTF-8'); // The active page id field. if (0 == (int) $this->value) { $value = ''; } else { $value = (int) $this->value; } $url = $link . '&' . Session::getFormToken() . '=1'; // The current article display field. $html[] = '<span class="input-append">'; $html[] = '<input type="text" class="input-medium" id="' . $this->id . '_name" value="' . $title . '" disabled="disabled" size="35" />'; $html[] = '<a href="#modalPage' . $this->id . '" class="btn hasTooltip" role="button" data-toggle="modal" title="' . HTMLHelper::tooltipText('COM_SPPAGEBUILDER_CHANGE_PAGE') . '">' . '<span class="icon-file"></span> ' . Text::_('JSELECT') . '</a>'; $html[] = '</span>'; // The class='required' for client side validation $class = ''; if ($this->required) { $class = ' class="required modal-value"'; } $html[] = '<input type="hidden" id="' . $this->id . '_id"' . $class . ' name="' . $this->name . '" value="' . $value . '" />'; $html[] = HTMLHelper::_( 'bootstrap.renderModal', 'modalPage' . $this->id, array( 'url' => $url, 'title' => Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'), 'width' => '800px', 'height' => '400px', 'footer' => '<button class="btn" data-dismiss="modal" aria-hidden="true">' . Text::_("JLIB_HTML_BEHAVIOR_CLOSE") . '</button>' ) ); return implode("\n", $html); } } } PKBA#]���..:components/com_sppagebuilder/models/fields/modal/_page.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Form\FormField; use Joomla\CMS\HTML\HTMLHelper; use Joomla\CMS\Session\Session; class JFormFieldModal_Page extends FormField { protected $type = 'Modal_Page'; protected function getInput() { // Load language Factory::getLanguage()->load('com_sppagebuilder', JPATH_ADMINISTRATOR); // Build the script. $script = array(); // Select button script $script[] = ' function jSelectPage_' . $this->id . '(id, title, catid, object) {'; $script[] = ' document.getElementById("' . $this->id . '_id").value = id;'; $script[] = ' document.getElementById("' . $this->id . '_name").value = title;'; $script[] = ' jQuery("#modalPage' . $this->id . '").modal("hide");'; if ($this->required) { $script[] = ' document.formvalidator.validate(document.getElementById("' . $this->id . '_id"));'; $script[] = ' document.formvalidator.validate(document.getElementById("' . $this->id . '_name"));'; } $script[] = ' }'; // Add the script to the document head. Factory::getDocument()->addScriptDeclaration(implode("\n", $script)); // Setup variables for display. $html = array(); $link = 'index.php?option=com_sppagebuilder&view=pages&layout=modal&tmpl=component&function=jSelectPage_' . $this->id; if (isset($this->element['language'])) { $link .= '&forcedLanguage=' . $this->element['language']; } if ((int) $this->value > 0) { $db = Factory::getDbo(); $query = $db->getQuery(true) ->select($db->quoteName('title')) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('id') . ' = ' . (int) $this->value); $db->setQuery($query); try { $title = $db->loadResult(); } catch (RuntimeException $e) { throw new \Exception($e->getMessage()); } } if (empty($title)) { $title = Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'); } $title = htmlspecialchars($title, ENT_QUOTES, 'UTF-8'); // The active page id field. if ((int) $this->value === 0) { $value = ''; } else { $value = (int) $this->value; } $url = $link . '&' . Session::getFormToken() . '=1'; // The current article display field. $html[] = '<span class="input-append">'; $html[] = '<input type="text" class="input-medium" id="' . $this->id . '_name" value="' . $title . '" disabled="disabled" size="35" />'; $html[] = '<a href="#modalPage' . $this->id . '" class="btn hasTooltip" role="button" data-toggle="modal" title="' . HTMLHelper::tooltipText('COM_SPPAGEBUILDER_CHANGE_PAGE') . '">' . '<span class="icon-file"></span> ' . Text::_('JSELECT') . '</a>'; $html[] = '</span>'; // The class='required' for client side validation $class = ''; if ($this->required) { $class = ' class="required modal-value"'; } $html[] = '<input type="hidden" id="' . $this->id . '_id"' . $class . ' name="' . $this->name . '" value="' . $value . '" />'; $html[] = HTMLHelper::_( 'bootstrap.renderModal', 'modalPage' . $this->id, array( 'url' => $url, 'title' => Text::_('COM_SPPAGEBUILDER_SELECT_AN_PAGE'), 'width' => '800px', 'height' => '400px', 'footer' => '<button class="btn" data-dismiss="modal" aria-hidden="true">' . Text::_("JLIB_HTML_BEHAVIOR_CLOSE") . '</button>' ) ); return implode("\n", $html); } } PKBA#]����7components/com_sppagebuilder/models/fields/resetcss.phpnu�[���<?php /** * @package SP Page Builder * * @copyright Copyright (c) 2010 - 2021 JoomShaper. All rights reserved. * @license GNU General Public License version 2 or later. */ defined('JPATH_PLATFORM') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Form\FormField; use Joomla\CMS\HTML\HTMLHelper; class JFormFieldResetcss extends FormField { protected $type = 'Resetcss'; protected function getInput() { HTMLHelper::_('jquery.framework'); $doc = Factory::getDocument(); $doc->addScriptDeclaration('jQuery(function($) { $("#btn-reset-css").on("click", function(event) { event.preventDefault(); var $this = $(this); $this.text($this.data("loading")); var request = { "option" : "com_sppagebuilder", "task" : "resetcss" }; $.ajax({ type : "POST", data : request, success: function (data) { $this.text($this.data("text")); } }); }); });'); return '<a id="btn-reset-css" class="btn btn-default" data-text="'. Text::_('COM_SPPAGEBUILDER_RESET_CSS_TEXT') .'" data-loading="'. Text::_('COM_SPPAGEBUILDER_RESET_CSS_TEXT_LOADING') .'" href="#">'. Text::_('COM_SPPAGEBUILDER_RESET_CSS_TEXT') .'</a>'; } } PKBA#]�Re�446components/com_sppagebuilder/models/fields/igtoken.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Uri\Uri; use Joomla\CMS\Language\Text; use Joomla\CMS\Form\FormField; use Joomla\CMS\Version; class JFormFieldIgToken extends FormField { protected $type = 'IgToken'; protected function getInput() { $doc = Factory::getDocument(); $doc->addScript(Uri::root() . 'administrator/components/com_sppagebuilder/assets/js/igtoken.js'); $igConfig = [ 'base' => Uri::root() . 'administrator', 'inputId' => $this->id ]; $doc->addScriptOptions('igConfig', $igConfig); if (empty($this->value)) { $value = new stdClass; $value->appId = ''; $value->appSecret = ''; $value->accessToken = ''; $value->igId = ''; } else { $value = json_decode($this->value); } $appId = !empty($value->appId) ? $value->appId : ''; $appSecret = !empty($value->appSecret) ? $value->appSecret : ''; $allowAccessTokenAndIgId = !empty($appId) && !empty($appSecret); $accessToken = !empty($value->accessToken) && $allowAccessTokenAndIgId ? $value->accessToken : ''; $igId = !empty($value->igId) && $allowAccessTokenAndIgId ? $value->igId : ''; $isVisibleTokenIgId = $allowAccessTokenAndIgId && (!empty($accessToken) && !empty($igId)); $value->accessToken = $accessToken; $value->igId = $igId; $this->value = json_encode($value); $version = new Version(); $JoomlaVersion = (float) $version->getShortVersion(); $html = []; $html[] = '<div class="igt-wrapper sppb-ig-token">'; $html[] = '<div class="control-group">'; $html[] = '<label class="control-label">' . Text::_('COM_SPPAGEBUILDER_FB_APP_ID') . '</label>'; $html[] = '<div class="controls">'; $html[] = '<input id="app_id" type="text" class="form-control" value="' . $appId . '" />'; $html[] = '</div>'; $html[] = '</div>'; $html[] = '<div class="control-group">'; $html[] = '<label class="control-label">' . Text::_('COM_SPPAGEBUILDER_FB_APP_SECRET') . '</label>'; $html[] = '<div class="controls">'; $html[] = '<input id="app_secret" type="text" class="form-control" value="' . $appSecret . '" />'; $html[] = '</div>'; $html[] = '</div>'; $html[] = '<div class="control-group ' . (!$isVisibleTokenIgId ? 'hidden': '') . '">'; $html[] = '<label class="control-label">' . Text::_('COM_SPPAGEBUILDER_FB_ACCESS_TOKEN') . '</label>'; $html[] = '<div class="controls">'; $html[] = '<input id="access_token" type="text" class="form-control" readonly="readonly" value="' . $accessToken . '" />'; $html[] = '</div>'; $html[] = '</div>'; $html[] = '<div class="control-group ' . (!$isVisibleTokenIgId ? 'hidden': '') . '">'; $html[] = '<label class="control-label">' . Text::_('COM_SPPAGEBUILDER_FB_IG_ID') . '</label>'; $html[] = '<div class="controls">'; $html[] = '<input id="ig_id" type="text" class="form-control" readonly="readonly" value="' . $igId . '" />'; $html[] = '</div>'; $html[] = '</div>'; $task = $JoomlaVersion < 4 ? 'config.save.component.apply' : 'component.apply'; $html[] = '<div class="control-group ' . (!empty($appId) && !empty($appSecret) ? 'hidden': '') . '">'; $html[] = '<div class="controls">'; $html[] = '<button type="button" onclick="Joomla.submitbutton(\'' . $task . '\');" id="ig_next" class="btn btn-primary">' . Text::_('COM_SPPAGEBUILDER_BTN_NEXT') . '</button>'; $html[] = '</div>'; $html[] = '</div>'; $generateBtnText = Text::_('COM_SPPAGEBUILDER_GENERATE_ACCESS_TOKEN'); if (!empty($accessToken) && !empty($igId)) { $generateBtnText = Text::_('COM_SPPAGEBUILDER_REGENERATE_ACCESS_TOKEN'); } $html[] = '<div class="control-group ' . (empty($appId) || empty($appSecret) ? 'hidden' : '') . '">'; $html[] = '<div class="controls">'; $html[] = '<button type="button" id="app_token" class="btn btn-success">' . $generateBtnText . '</button>'; $html[] = '</div>'; $html[] = '</div>'; $html[] = '<input type="hidden" id="' . $this->id . '" name="' . $this->name . '" value=\'' . (!empty($this->value) ? $this->value : '') . '\' />'; $html[] = '</div>'; return implode("\n", $html); } } PKBA#]�)��4�4;components/com_sppagebuilder/models/fields/categoryedit.phpnu�[���<?php /** * @package Joomla.Administrator * @subpackage com_categories * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ defined('_JEXEC') or die; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Form\FormHelper; use Joomla\CMS\HTML\HTMLHelper; use Joomla\Utilities\ArrayHelper; use Joomla\CMS\Version; FormHelper::loadFieldClass('list'); $version = new Version(); $JoomlaVersion = $version->getShortVersion(); if (version_compare($JoomlaVersion, '4.0.0', '>=')) { JLoader::registerAlias('JFormFieldList', 'Joomla\CMS\Form\Field\ListField'); } /** * Category Edit field.. * * @since 1.6 */ class JFormFieldCategoryEdit extends JFormFieldList { /** * To allow creation of new categories. * * @var integer * @since 3.6 */ protected $allowAdd; /** * Optional prefix for new categories. * * @var string * @since 3.9.11 */ protected $customPrefix; /** * A flexible category list that respects access controls * * @var string * @since 1.6 */ public $type = 'CategoryEdit'; /** * Method to attach a JForm object to the field. * * @param SimpleXMLElement $element The SimpleXMLElement object representing the <field /> tag for the form field object. * @param mixed $value The form field value to validate. * @param string $group The field name group control value. This acts as an array container for the field. * For example if the field has name="foo" and the group value is set to "bar" then the * full field name would end up being "bar[foo]". * * @return boolean True on success. * * @see JFormField::setup() * @since 3.2 */ public function setup(SimpleXMLElement $element, $value, $group = null) { $return = parent::setup($element, $value, $group); if ($return) { $this->allowAdd = isset($this->element['allowAdd']) ? $this->element['allowAdd'] : ''; $this->customPrefix = (string) $this->element['customPrefix']; } return $return; } /** * Method to get certain otherwise inaccessible properties from the form field object. * * @param string $name The property name for which to get the value. * * @return mixed The property value or null. * * @since 3.6 */ public function __get($name) { switch ($name) { case 'allowAdd': case 'customPrefix': return $this->$name; } return parent::__get($name); } /** * Method to set certain otherwise inaccessible properties of the form field object. * * @param string $name The property name for which to set the value. * @param mixed $value The value of the property. * * @return void * * @since 3.6 */ public function __set($name, $value) { $value = (string) $value; switch ($name) { case 'allowAdd': $value = (string) $value; $this->$name = ($value === 'true' || $value === $name || $value === '1'); break; case 'customPrefix': $this->$name = (string) $value; break; default: parent::__set($name, $value); } } /** * Method to get a list of categories that respects access controls and can be used for * either category assignment or parent category assignment in edit screens. * Use the parent element to indicate that the field will be used for assigning parent categories. * * @return array The field option objects. * * @since 1.6 */ protected function getOptions() { $options = array(); $published = $this->element['published'] ? explode(',', (string) $this->element['published']) : array(0, 1); $name = (string) $this->element['name']; // Let's get the id for the current item, either category or content item. $jinput = Factory::getApplication()->input; // Load the category options for a given extension. // For categories the old category is the category id or 0 for new category. if ($this->element['parent'] || $jinput->get('option') == 'com_categories') { $oldCat = $jinput->get('id', 0); $oldParent = $this->form->getValue($name, 0); $extension = $this->element['extension'] ? (string) $this->element['extension'] : (string) $jinput->get('extension', 'com_content'); } else // For items the old category is the category they are in when opened or 0 if new. { $oldCat = $this->form->getValue($name, 0); $extension = $this->element['extension'] ? (string) $this->element['extension'] : (string) $jinput->get('option', 'com_content'); } // Account for case that a submitted form has a multi-value category id field (e.g. a filtering form), just use the first category $oldCat = is_array($oldCat) ? (int) reset($oldCat) : (int) $oldCat; $db = Factory::getDbo(); $user = Factory::getUser(); $query = $db->getQuery(true) ->select('a.id AS value, a.title AS text, a.level, a.published, a.lft, a.language') ->from('#__categories AS a'); // Filter by the extension type if ($this->element['parent'] == true || $jinput->get('option') == 'com_categories') { $query->where('(a.extension = ' . $db->quote($extension) . ' OR a.parent_id = 0)'); } else { $query->where('(a.extension = ' . $db->quote($extension) . ')'); } // Filter language if (!empty($this->element['language'])) { if (strpos($this->element['language'], ',') !== false) { $language = implode(',', $db->quote(explode(',', $this->element['language']))); } else { $language = $db->quote($this->element['language']); } $query->where($db->quoteName('a.language') . ' IN (' . $language . ')'); } // Filter on the published state $query->where('a.published IN (' . implode(',', ArrayHelper::toInteger($published)) . ')'); // Filter categories on User Access Level // Filter by access level on categories. if (!$user->authorise('core.admin')) { $groups = implode(',', $user->getAuthorisedViewLevels()); $query->where('a.access IN (' . $groups . ')'); } $query->order('a.lft ASC'); // If parent isn't explicitly stated but we are in com_categories assume we want parents if ($oldCat != 0 && ($this->element['parent'] == true || $jinput->get('option') == 'com_categories')) { // Prevent parenting to children of this item. // To rearrange parents and children move the children up, not the parents down. $query->join('LEFT', $db->quoteName('#__categories') . ' AS p ON p.id = ' . (int) $oldCat) ->where('NOT(a.lft >= p.lft AND a.rgt <= p.rgt)'); $rowQuery = $db->getQuery(true); $rowQuery->select('a.id AS value, a.title AS text, a.level, a.parent_id') ->from('#__categories AS a') ->where('a.id = ' . (int) $oldCat); $db->setQuery($rowQuery); $row = $db->loadObject(); } // Get the options. $db->setQuery($query); try { $options = $db->loadObjectList(); } catch (RuntimeException $e) { throw new \Exception($e->getMessage(), 500); } // Pad the option text with spaces using depth level as a multiplier. for ($i = 0, $n = count($options); $i < $n; $i++) { // Translate ROOT if ($this->element['parent'] == true || $jinput->get('option') == 'com_categories') { if ($options[$i]->level == 0) { $options[$i]->text = Text::_('JGLOBAL_ROOT_PARENT'); } } if ($options[$i]->published == 1) { $options[$i]->text = str_repeat('- ', !$options[$i]->level ? 0 : $options[$i]->level - 1) . $options[$i]->text; } else { $options[$i]->text = str_repeat('- ', !$options[$i]->level ? 0 : $options[$i]->level - 1) . '[' . $options[$i]->text . ']'; } // Displays language code if not set to All if ($options[$i]->language !== '*') { $options[$i]->text = $options[$i]->text . ' (' . $options[$i]->language . ')'; } } // For new items we want a list of categories you are allowed to create in. if ($oldCat == 0) { foreach ($options as $i => $option) { /* * To take save or create in a category you need to have create rights for that category unless the item is already in that category. * Unset the option if the user isn't authorised for it. In this field assets are always categories. */ if ($option->level != 0 && !$user->authorise('core.create', $extension . '.category.' . $option->value)) { unset($options[$i]); } } } // If you have an existing category id things are more complex. else { /* * If you are only allowed to edit in this category but not edit.state, you should not get any * option to change the category parent for a category or the category for a content item, * but you should be able to save in that category. */ foreach ($options as $i => $option) { $assetKey = $extension . '.category.' . $oldCat; if ($option->level != 0 && !isset($oldParent) && $option->value != $oldCat && !$user->authorise('core.edit.state', $assetKey)) { unset($options[$i]); continue; } if ($option->level != 0 && isset($oldParent) && $option->value != $oldParent && !$user->authorise('core.edit.state', $assetKey)) { unset($options[$i]); continue; } /* * However, if you can edit.state you can also move this to another category for which you have * create permission and you should also still be able to save in the current category. */ $assetKey = $extension . '.category.' . $option->value; if ($option->level != 0 && !isset($oldParent) && $option->value != $oldCat && !$user->authorise('core.create', $assetKey)) { unset($options[$i]); continue; } if ($option->level != 0 && isset($oldParent) && $option->value != $oldParent && !$user->authorise('core.create', $assetKey)) { unset($options[$i]); continue; } } } if (($this->element['parent'] == true || $jinput->get('option') == 'com_categories') && (isset($row) && !isset($options[0])) && isset($this->element['show_root'])) { if ($row->parent_id == '1') { $parent = new stdClass; $parent->text = Text::_('JGLOBAL_ROOT_PARENT'); array_unshift($options, $parent); } array_unshift($options, HTMLHelper::_('select.option', '0', Text::_('JGLOBAL_ROOT'))); } // Merge any additional options in the XML definition. return array_merge(parent::getOptions(), $options); } /** * Method to get the field input markup for a generic list. * Use the multiple attribute to enable multiselect. * * @return string The field input markup. * * @since 3.6 */ protected function getInput() { $html = array(); $class = array(); $attr = ''; // Initialize some field attributes. $class[] = !empty($this->class) ? $this->class : ''; $class[] = 'form-select'; if ($this->allowAdd) { $customGroupText = Text::_('JGLOBAL_CUSTOM_CATEGORY'); $class[] = 'chzn-custom-value'; $attr .= ' data-custom_group_text="' . $customGroupText . '" ' . 'data-no_results_text="' . Text::_('JGLOBAL_ADD_CUSTOM_CATEGORY') . '" ' . 'data-placeholder="' . Text::_('JGLOBAL_TYPE_OR_SELECT_CATEGORY') . '" '; if ($this->customPrefix !== '') { $attr .= 'data-custom_value_prefix="' . $this->customPrefix . '" '; } } if ($class) { $attr .= 'class="' . implode(' ', $class) . '"'; } $attr .= !empty($this->size) ? ' size="' . $this->size . '"' : ''; $attr .= $this->multiple ? ' multiple' : ''; $attr .= $this->required ? ' required aria-required="true"' : ''; $attr .= $this->autofocus ? ' autofocus' : ''; // To avoid user's confusion, readonly="true" should imply disabled="true". if ((string) $this->readonly == '1' || (string) $this->readonly == 'true' || (string) $this->disabled == '1' || (string) $this->disabled == 'true') { $attr .= ' disabled="disabled"'; } // Initialize JavaScript field attributes. $attr .= $this->onchange ? ' onchange="' . $this->onchange . '"' : ''; // Get the field options. $options = (array) $this->getOptions(); // Create a read-only list (no name) with hidden input(s) to store the value(s). if ((string) $this->readonly == '1' || (string) $this->readonly == 'true') { $html[] = HTMLHelper::_('select.genericlist', $options, '', trim($attr), 'value', 'text', $this->value, $this->id); // E.g. form field type tag sends $this->value as array if ($this->multiple && is_array($this->value)) { if (!count($this->value)) { $this->value[] = ''; } foreach ($this->value as $value) { $html[] = '<input type="hidden" name="' . $this->name . '" value="' . htmlspecialchars($value, ENT_COMPAT, 'UTF-8') . '"/>'; } } else { $html[] = '<input type="hidden" name="' . $this->name . '" value="' . htmlspecialchars($this->value, ENT_COMPAT, 'UTF-8') . '"/>'; } } else { // Create a regular list. if (count($options) === 0) { // All Categories have been deleted, so we need a new category (This will create on save if selected). $options[0] = new stdClass; $options[0]->value = 'Uncategorised'; $options[0]->text = 'Uncategorised'; $options[0]->level = '1'; $options[0]->published = '1'; $options[0]->lft = '1'; } $html[] = HTMLHelper::_('select.genericlist', $options, $this->name, trim($attr), 'value', 'text', $this->value, $this->id); } return implode($html); } } PKBA#]�z\�H H @components/com_sppagebuilder/models/fields/dynamiccollection.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct accees defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Application\CMSApplication; use Joomla\CMS\Factory; use Joomla\CMS\Form\Field\ListField; use Joomla\CMS\Language\Text; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; if (file_exists(JPATH_ROOT . '/administrator/components/com_sppagebuilder/vendor/autoload.php')) { require_once JPATH_ROOT . '/administrator/components/com_sppagebuilder/vendor/autoload.php'; } if (file_exists(JPATH_ROOT . '/administrator/components/com_sppagebuilder/dynamic-content/helper.php')) { require_once JPATH_ROOT . '/administrator/components/com_sppagebuilder/dynamic-content/helper.php'; } class JFormFieldDynamicCollection extends ListField { protected $type = 'DynamicCollection'; public function getInput() { $input = parent::getInput(); /** @var CMSApplication $app */ $app = Factory::getApplication(); $document = $app->getDocument(); $document->addScriptDeclaration(" document.addEventListener('DOMContentLoaded', function() { const collectionFieldWrapper = document.querySelector('.control-group:has(#jform_request_collection_id)'); function toggleCollectionField() { const extensionView = document.querySelector('#jform_request_extension_view').value; const collectionField = collectionFieldWrapper.querySelector('#jform_request_collection_id'); if (extensionView !== 'dynamic_content:index') { collectionFieldWrapper.style.display = 'none'; collectionField.value = ''; collectionField.removeAttribute('required'); collectionField.classList.remove('required'); collectionField.setAttribute('disabled', 'disabled'); } else { collectionFieldWrapper.style.display = 'flex'; collectionField.removeAttribute('disabled'); collectionField.classList.add('required'); collectionField.setAttribute('required', true); } } toggleCollectionField(); collectionFieldWrapper.addEventListener('change', function() { toggleCollectionField(); }); }); "); return $input; } public function getOptions() { return $this->getCollections(); } private function getCollections() { $collections = Collection::where('published', 1)->get(['id', 'title']); if (empty($collections)) { return []; } $options = array_map(function ($collection) { return [ 'value' => $collection->id, 'text' => $collection->title ]; }, $collections); return array_merge([ [ 'value' => '', 'text' => 'Select a collection' ] ], $options); } } PKBA#]��J�((6components/com_sppagebuilder/models/fields/spmedia.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2022 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined ('_JEXEC') or die ('Restricted access'); use Joomla\CMS\Form\FormField; use Joomla\CMS\Language\Text; use Joomla\CMS\Uri\Uri; class JFormFieldSpmedia extends FormField { protected $type = 'Spmedia'; protected function getInput() { $media_format = $this->getAttribute('media_format', 'image'); Text::script('COM_SPPAGEBUILDER_MEDIA_MANAGER_CONFIRM_DELETE'); Text::script('COM_SPPAGEBUILDER_MEDIA_MANAGER_ENTER_DIRECTORY_NAME'); $html = ''; if($this->value) { if($media_format == 'image') { $html = '<img class="sp-pagebuilder-media-preview" src="' . Uri::root(true) . '/' . $this->value . '" alt="" />'; } } else { if($media_format == 'image') { $html = '<img class="sp-pagebuilder-media-preview sp-pagebuilder-media-no-image" alt="">'; } } if($media_format == 'image') { $html .= '<input class="sp-media-input" type="hidden" name="'. $this->name .'" id="'. $this->id .'" value="'. $this->value .'">'; } else { $html .= '<input class="sp-media-input" type="text" name="'. $this->name .'" id="'. $this->id .'" value="'. $this->value .'">'; } $html .= '<a href="#" id="media-upload-button" class="sp-pagebuilder-btn sp-pagebuilder-btn-primary sp-pagebuilder-btn-media-manager" data-support="' . $media_format . '"><i class="fa fa-spinner fa-spin" style="margin-right: 5px; display: none;"></i>'. Text::_('COM_SPPAGEBUILDER_MEDIA_MANAGER_UPLOAD_' . strtoupper($media_format)) .'</a> <a href="#" class="sp-pagebuilder-btn sp-pagebuilder-btn-danger sp-pagebuilder-btn-clear-media"><i class="fa fa-times"></i></a>'; return $html; } } PKBA#]�H���2components/com_sppagebuilder/models/collection.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ //no direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\MVC\Model\AdminModel; JLoader::register('SppagebuilderHelperRoute', JPATH_ROOT . '/components/com_sppagebuilder/helpers/route.php'); class SppagebuilderModelCollection extends AdminModel { public function getForm($data = array(), $loadData = true) { $form = $this->loadForm( 'com_sppagebuilder.collection', 'collection', [ 'control' => 'jform', 'load_data' => $loadData ] ); return $form; } public function getItem($pk = null) { $item = parent::getItem($pk); if ($item && $item->id) { $table = $this->getTable(); $table->load($item->id); $item->asset_id = $table->asset_id; if ($item->asset_id) { $asset = \Joomla\CMS\Table\Table::getInstance('Asset'); $asset->load($item->asset_id); $item->rules = new \Joomla\CMS\Access\Rules(json_decode($asset->rules, true)); } } return $item; } protected function populateState() { $app = Factory::getApplication(); $id = $app->input->getInt('id', 0); $this->setState('collection.id', $id); } public function getTable($name = 'Collection', $prefix = 'SppagebuilderTable', $options = []) { return parent::getTable($name, $prefix, $options); } protected function loadFormData() { return $this->getItem(); } } PKBA#]k�:��+�+1components/com_sppagebuilder/models/appconfig.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Component\ComponentHelper; use Joomla\CMS\Factory; use Joomla\CMS\Language\Multilanguage; use Joomla\CMS\Language\Text; use Joomla\CMS\MVC\Model\ListModel; use JoomShaper\SPPageBuilder\DynamicContent\Models\Collection; use JoomShaper\SPPageBuilder\DynamicContent\Models\Page; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Arr; use JoomShaper\SPPageBuilder\DynamicContent\Supports\Str; use JoomShaper\SPPageBuilder\DynamicContent\Constants\CollectionIds; /** * AppConfig Model Class for managing app configs. * * @version 4.1.0 */ class SppagebuilderModelAppconfig extends ListModel { /** * Media __construct function * * @param mixed $config */ public function __construct($config = []) { parent::__construct($config); } /** * Get the page list. * * @return array * @since 5.5.0 */ public function getPageList() { $db = Factory::getDbo(); $query = $db->getQuery(true); $pageTypes = array_map( [$db, 'quote'], [ Page::PAGE_TYPE_REGULAR, Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL ] ); $query->select(['id', 'title', 'extension_view', 'view_id']) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('extension_view') . 'IN (' . implode(',', $pageTypes) . ')') ->where($db->quoteName('published') . ' = 1') ->order($db->quoteName('title') . ' ASC'); $db->setQuery($query); try { $pages = $db->loadObjectList(); $pages = Arr::make($pages); $pages = $pages->reduce(function($carry, $current) { if (in_array($current->extension_view, [Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL]) && $current->view_id === CollectionIds::ARTICLES_COLLECTION_ID) { $carry['articles'] ??= [ 'label' => Text::_('COM_SPPAGEBUILDER_PAGE_TYPE_ARTICLES'), 'icon' => 'articles', 'options' => [] ]; $carry['articles']['options'][] = $current; } elseif (in_array($current->extension_view, [Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX, Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL])) { $carry['cms'] ??= [ 'label' => Text::_('COM_SPPAGEBUILDER_PAGE_TYPE_DYNAMIC_CONTENT'), 'icon' => 'dynamicContent', 'options' => [] ]; $carry['cms']['options'][] = $current; } elseif ($current->extension_view === Page::PAGE_TYPE_REGULAR) { $carry['page'] ??= [ 'label' => Text::_('COM_SPPAGEBUILDER_PAGE_TYPE_PAGES'), 'icon' => 'pages', 'options' => [] ]; $carry['page']['options'][] = $current; } else { $carry[$current->extension_view] ??= [ 'label' => ucfirst($current->extension_view), 'options' => [] ]; $carry[$current->extension_view]['options'][] = $current; } return $carry; }, []); $pages = $pages->map(function ($page) { $items = Arr::make($page['options']); $page['options'] = $items->map(function ($item) { if ($item->extension_view === Page::PAGE_TYPE_DYNAMIC_CONTENT_INDEX) { $collection = ($item->view_id === CollectionIds::ARTICLES_COLLECTION_ID || $item->view_id === CollectionIds::TAGS_COLLECTION_ID) ? null : Collection::find($item->view_id); $item->legend = '/' . ($collection ? $collection->alias : ($item->view_id === CollectionIds::TAGS_COLLECTION_ID ? 'tags' : 'articles')); } elseif ($item->extension_view === Page::PAGE_TYPE_DYNAMIC_CONTENT_DETAIL) { $collection = ($item->view_id === CollectionIds::ARTICLES_COLLECTION_ID || $item->view_id === CollectionIds::TAGS_COLLECTION_ID) ? null : Collection::find($item->view_id); $item->legend = '/' . ($collection ? $collection->alias : ($item->view_id === CollectionIds::TAGS_COLLECTION_ID ? 'tags' : 'articles')) . '/:slug'; } return (object) [ 'label' => $item->title, 'value' => $item->id, 'legend' => $item->legend ?? '' ]; })->toArray(); return $page; }); return $pages->toArray(); } catch (\Exception $e) { return []; } } public function getPopupList(){ $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['id', 'title']) ->from($db->quoteName('#__sppagebuilder')) ->where($db->quoteName('extension_view') . '=' . $db->quote('popup')) ->where($db->quoteName('published') . ' = 1') ->order($db->quoteName('title') . ' ASC'); $db->setQuery($query); try { return $db->loadObjectList(); } catch (\Exception $e) { return []; } } public function getEasyStoreCategories() { if (!ComponentHelper::isEnabled('com_easystore')) { return []; } $db = Factory::getDbo(); $query = $db->getQuery(true) ->select('DISTINCT a.id, a.title, a.level, a.published, a.lft'); $subQuery = $db->getQuery(true) ->select('id, title, level, published, parent_id, lft, rgt') ->from('#__easystore_categories') ->where($db->quoteName('published') . ' = 1') ->where($db->quoteName('id') . ' > 1'); $query->from('(' . $subQuery->__toString() . ') AS a') ->join('LEFT', $db->quoteName('#__easystore_categories') . ' AS b ON a.lft > b.lft AND a.rgt < b.rgt'); $query->order('a.lft ASC'); $db->setQuery($query); $categories = $db->loadObjectList(); $easystoreCategories = [['value' => '', 'label' => Text::_('COM_SPPAGEBUILDER_ADDON_EASYSTORE_ALL_CAT')]]; if (!empty($categories)) { foreach ($categories as $category) { $value = (object) [ 'value' => $category->id, 'label' => str_repeat('- ', ($category->level)) . $category->title ]; $easystoreCategories[] = $value; } } return $easystoreCategories; } public function getCategories() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['id', 'title', 'level', 'lft']) ->from($db->quoteName('#__categories')) ->where($db->quoteName('published') . ' = 1') ->where($db->quoteName('extension') . ' = ' . $db->quote('com_sppagebuilder')) ->order($db->quoteName('lft') . ' ASC'); $db->setQuery($query); try { return $db->loadObjectList(); } catch (\Exception $e) { return []; } } /** * Plugin Model function * This function takes the type of plugin we want to query for in the database, then queries in the db and returns the object * @param string $pluginsType type of the plugins we want to get * @return mixed * @since 5.3.6 */ public function getPlugins(string $pluginsType) { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['name', 'element']) ->from($db->quoteName('#__extensions')) ->where($db->quoteName('type') . ' = ' . $db->quote('plugin')) ->where($db->quoteName('folder') . ' = ' . $db->quote($pluginsType)) ->where($db->quoteName('enabled') . ' = 1') ->where($db->quoteName('client_id') . ' = 0'); $db->setQuery($query); try { return $db->loadObjectList(); } catch (\Exception $e) { return []; } } public function getMenus() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['id', 'title', 'link', 'language']) ->from($db->quoteName('#__menu')) ->where($db->quoteName('published') . ' = 1') ->where($db->quoteName('id') . ' > 1') ->where($db->quoteName('client_id') . ' = 0') ->order($db->quoteName('title') . ' ASC'); $db->setQuery($query); $menuItems = []; try { $menuItems = $db->loadObjectList(); } catch (\Exception $e) { return []; } if (!empty($menuItems)) { foreach ($menuItems as &$item) { $langCode = Multilanguage::isEnabled() ? '&lang=' . $item->language : ''; $langValue = $item->language == '*' ? Text::_('JALL') : $item->language; $item->id = $item->link . '&Itemid=' . $item->id . $langCode; $item->title = $item->title . ' (' . $langValue . ')'; unset($item->link); } unset($item); } return $menuItems; } public function getModules() { return []; } public function getAccessLevels() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select(['id', 'title']) ->from($db->quoteName('#__viewlevels')) ->order($db->quoteName('ordering') . ' ASC'); $db->setQuery($query); try { return $db->loadObjectList(); } catch (\Exception $e) { return []; } } public function getLanguages() { $db = Factory::getDbo(); $query = $db->getQuery(true); $query->select([$db->quoteName('lang_code', 'id'), 'title']) ->from($db->quoteName('#__languages')) ->where($db->quoteName('published') . ' = 1') ->order($db->quoteName('ordering') . ' ASC'); $db->setQuery($query); try { return $db->loadObjectList(); } catch (\Exception $e) { return []; } } public function getUserPermissions($pageId = 0) { $user = Factory::getUser(); if (!$user->id) { return [ 'admin' => false, 'manage' => false, 'create' => false, 'edit' => false, 'edit_state' => false, 'edit_own' => false, 'delete' => false, 'page' => [ 'edit' => false, 'delete' => false, 'edit_state' => false, 'menu_access' => false ], 'collection' => [ 'create' => false, ] ]; } $isAdmin = $user->authorise('core.admin', 'com_sppagebuilder'); $canManage = $user->authorise('core.manage', 'com_sppagebuilder'); $canCreate = $user->authorise('core.create', 'com_sppagebuilder'); $canEdit = $user->authorise('core.edit', 'com_sppagebuilder'); $canEditState = $user->authorise('core.edit.state', 'com_sppagebuilder'); $canEditOwn = $user->authorise('core.edit.own', 'com_sppagebuilder'); $canDelete = $user->authorise('core.delete', 'com_sppagebuilder'); $hasMenuAccess = $user->authorise('core.create', 'com_menus') || $user->authorise('core.edit', 'com_menus'); $canEditPage = $user->authorise('core.edit', 'com_sppagebuilder.page.' . $pageId); $canDeletePage = $user->authorise('core.delete', 'com_sppagebuilder.page.' . $pageId); $canEditStatePage = $user->authorise('core.edit.state', 'com_sppagebuilder.page.' . $pageId); $canCreateCollection = $user->authorise('core.create.collection', 'com_sppagebuilder'); return [ 'admin' => $isAdmin, 'manage' => $canManage, 'create' => $canCreate, 'edit' => $canEdit, 'edit_state' => $canEditState, 'edit_own' => $canEditOwn, 'delete' => $canDelete, 'page' => [ 'edit' => $canEditPage, 'delete' => $canDeletePage, 'edit_state' => $canEditStatePage, 'menu_access' => $hasMenuAccess ], 'collection' => [ 'create' => $canCreateCollection, ] ]; } public function getCollections() { $collections = Collection::all(); if (empty($collections)) { return []; } $collections = Arr::make($collections); return $collections->reduce(function ($carry, $collection) { $carry[$collection->id] = $collection->title; return $carry; }, [])->toArray(); } } PKBA#]39�rww/components/com_sppagebuilder/models/section.phpnu�[���<?php /** * @package SP Page Builder * @author JoomShaper http://www.joomshaper.com * @copyright Copyright (c) 2010 - 2025 JoomShaper * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later */ // No direct access defined('_JEXEC') or die('Restricted access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\Language\Text; use Joomla\String\StringHelper; use Joomla\CMS\Plugin\PluginHelper; use Joomla\CMS\MVC\Model\AdminModel; if (!\class_exists('EditorUtils')) { require_once __DIR__ . './../editor/helpers/EditorUtils.php'; } class SppagebuilderModelSection extends AdminModel { public function __construct($config = array()) { parent::__construct($config); } /** * Method for getting a form. * * @param array $data Data for the form. * @param bool $loadData True if the form is to load its own data (default case), false if not. * @return void */ public function getForm($data = array(), $loadData = true) { } public function getTable($name = 'Section', $prefix = 'SppagebuilderTable', $options = array()) { return Table::getInstance($name, $prefix, $options); } } PKBA#]�mV4��/components/com_sppagebuilder/models/comment.phpnu�[��� <?php /** * @package Joomla.Administrator * @subpackage com_sppagebuilder * @author JoomShaper support@joomshaper.com * @copyright * @license GNU General Public License version 2 or later; see http://www.gnu.org/licenses/gpl-2.0.html */ // No Direct Access defined ('_JEXEC') or die('Restricted Access'); use Joomla\CMS\Factory; use Joomla\CMS\Table\Table; use Joomla\CMS\MVC\Model\AdminModel; class SppagebuilderModelComment extends AdminModel { protected $text_prefix = 'COM_SPPAGEBUILDER'; public function __construct($config = []) { parent::__construct($config); $this->setDispatcher(Factory::getApplication()->getDispatcher()); } public function getTable($name = 'Comment', $prefix = 'SppagebuilderTable', $config = array()) { return Table::getInstance($name, $prefix, $config); } public function getForm($data = array(), $loadData = true) { $app = Factory::getApplication(); $form = $this->loadForm('com_sppagebuilder.comment','comment',array('control' => 'jform', 'load_data' => $loadData)); if (empty($form)) { return false; } return $form; } public function loadFormData() { $data = Factory::getApplication() ->getUserState('com_sppagebuilder.edit.comment.data',array()); if (empty($data)) { $data = $this->getItem(); } return $data; } protected function canDelete($record) { if (!empty($record->id)) { if ($record->published != -2) { return ; } $user = Factory::getUser(); return parent::canDelete($record); } } protected function canEditState($record) { return parent::canEditState($record); } public function getItem($pk = null) { return parent::getItem($pk); } } PKBA#]E1���.components/com_sppagebuilder/sppagebuilder.xmlnu�[���<?xml version="1.0" encoding="utf-8"?> <extension type="component" version="3.9" method="upgrade"> <name>SP Page Builder</name> <author>JoomShaper</author> <creationDate>Sep 2014</creationDate> <authorEmail>support@joomshaper.com</authorEmail> <authorUrl>https://www.joomshaper.com</authorUrl> <copyright>Copyright @ 2010 - 2025 JoomShaper. All rights reserved.</copyright> <license>GNU General Public License version 2 or later</license> <version>6.8.0</version> <scriptfile>installer.script.php</scriptfile> <variant>pro</variant> <updateservers> <server type="extension" priority="1" name="SP Page Builder">https://www.joomshaper.com/updates/com-sp-page-builder-pro-next.xml</server> </updateservers> <install> <sql> <file driver="mysql" charset="utf8">sql/install/mysql/install.mysql.utf8.sql</file> <file driver="mysql">sql/install/mysql/install.mysql.utf8.sql</file> <file driver="mysqli" charset="utf8">sql/install/mysql/install.mysql.utf8.sql</file> <file driver="mysqli">sql/install/mysql/install.mysql.utf8.sql</file> </sql> </install> <update> <schemas> <schemapath type="mysql">sql/updates/mysql</schemapath> <schemapath type="mysqli">sql/updates/mysql</schemapath> </schemas> </update> <files folder="site"> <filename>sppagebuilder.php</filename> <filename>router.php</filename> <filename>controller.php</filename> <folder>addons</folder> <folder>assets</folder> <folder>builder</folder> <folder>helpers</folder> <folder>models</folder> <folder>controllers</folder> <folder>parser</folder> <folder>views</folder> <folder>layouts</folder> </files> <languages folder="language/site"> <language tag="en-GB">en-GB/en-GB.com_sppagebuilder.ini</language> </languages> <plugins> <!-- start pro feature --> <plugin name="sppagebuilder" group="system" activate="true" /> <plugin name="sppagebuilderproupdater" group="system" activate="true" /> <plugin name="sppagebuilderloadmodule" group="content" activate="true" /> <plugin name="profileimage" group="user" activate="false" /> <plugin name="sppagebuilder" group="search" activate="false" /> <plugin name="sppagebuilder" group="finder" activate="false" /> <plugin name="sppagebuilder" group="content" activate="false" /> <plugin name="sppagebuilder" group="spsimpleportfolio" activate="false" /> <!-- end pro feature --> </plugins> <modules> <module module="mod_sppagebuilder" client="site" /> </modules> <administration> <menu link="option=com_sppagebuilder&view=editor&tmpl=component" view="editor"> COM_SPPAGEBUILDER </menu> <submenu> <menu link="option=com_sppagebuilder&view=editor&tmpl=component" view="editor"> COM_SPPAGEBUILDER_ADMIN_MENU_PAGES </menu> <menu link="option=com_sppagebuilder&view=editor&tmpl=component#/dynamic-content" view="editor"> COM_SPPAGEBUILDER_ADMIN_MENU_DYNAMIC_CONTENT </menu> <menu link="option=com_sppagebuilder&view=editor&tmpl=component#/media-manager" view="editor"> COM_SPPAGEBUILDER_ADMIN_MENU_MEDIA </menu> <menu link="option=com_categories&extension=com_sppagebuilder" view="categories"> COM_SPPAGEBUILDER_ADMIN_MENU_CATEGORIES </menu> <menu link="option=com_sppagebuilder&view=editor&tmpl=component#/editor/storefront" view="storefront"> COM_SPPAGEBUILDER_ADMIN_MENU_EASYSTOE </menu> <menu link="option=com_sppagebuilder&view=editor&tmpl=component#/settings" view="editor"> COM_SPPAGEBUILDER_ADMIN_MENU_SETTINGS </menu> </submenu> <files folder="admin"> <filename>access.xml</filename> <filename>config.xml</filename> <filename>sppagebuilder.php</filename> <filename>controller.php</filename> <folder>assets</folder> <folder>controllers</folder> <folder>comment</folder> <folder>config</folder> <folder>dynamic-content</folder> <folder>editor</folder> <folder>models</folder> <folder>helpers</folder> <folder>sql</folder> <folder>tables</folder> <folder>views</folder> <folder>vendor</folder> </files> <languages folder="language/admin"> <language tag="en-GB">en-GB/en-GB.com_sppagebuilder.ini</language> <language tag="en-GB">en-GB/en-GB.com_sppagebuilder.sys.ini</language> </languages> </administration> </extension> PKBA#],�G\W\W9components/com_sppagebuilder/assets/images/quickstart.jpgnu�[������JFIF��� &""&0-0>>T &""&0-0>>T���f"�� ����%#X������R5�T�R5�T�R5�C�����.l4�}M�a�%#X]�V�{��tT�R5�T�R5�T�R5�D�?�َ���Å*l���A$>��͛�s�K�@IH� �μ��cD���1�=�l�c����xu7�s^;�o1=����`���e�u>ٚ�S���� �i��By����v:5tlLi� 5�)��w}3?���|�g~U�q���o0 m=����p6!BCF��Sտ�eqY,�귋�`a�l_��zu���as4+Nj����i�GA�9���\;�i4)o۽n���aBCF�J\M[U���,��l����C�quk�t�e�R�a��8�� ��q���yl|����k�C���-z��� �N�h������!�XM���l+�BCF� �8b�$4k���+�BCF� �8b�$4k���+�BCF� �8b�$4k���+�BCF�{�=!9����FDF���<d�+�!?O�����J��!� )� s��e^��әc����k"��R5�����\�=���K�iߘz��Ȁj���`���3�=�<f���iˆk"��R5�4�e���'.�����R��[���DW�$�k�8�=�߸^��O��~�J�o�=q����P�cW�$�k�\��/�/�g3�]��?"�4'��߭k�`� )�9��t��:���l���nv�hO7�Z����`�.����������:�4'��߭k�JF�w����l�./� \Wv��.Jt�����@�[����%#X��e/Cߡ����`;6h�)"6`�\���]��N�'�� v��^@IH���}�x�y����`>}ϽqnJF��c�>U���$FxY� �4/ϕ_TIH�d� �9���H�X��r�?<������7�x�:������N3%#X �de�.V�k�ƀ8�)���֍����/��s7�%F��¾Z��tVϻ]s�uG� )�-��V�ѵ`߇ )�H,��<PJF�=I��/���[f�sO�@%#X���p6AC[���/�= )�^�`M�������oȀ59�� )�+�U���2Հ���>X�����o@ކ=��JF��Á}��er@ִ@���S�s� H=��P0��U�S�������B �����8�����0��-C�U}���1����]Yk���?̨�<�9�� 7����M�0\��m�s�����8�� ��r�6]w��Z�j��;e�5¯2��ۄ{dش/@�W�/,�i���w����н�Xt��/@���>-�<��'O�B�1 ��~���Qe7b����1nY���u��tɠUn��ZrGC�;����&�UU����p÷wΥսQ��v=MK��c�F�kγ�1�0�Z���?��YbC"����Kz���� �:���b��|��c������S�5T�P�w̙����d�IcYUhm|�ˑ����R�A�P_.��ۜT �s��`��Tʗ�L9���eC�T��fs�@i�KOWp��6�<�l�R���M�e��O[�����������.xz`�� <���=�r4᧙�=cDN�9p��s��tX��Qv��|��9�\4�fg��u�|��|��pfj�.;�<���]�������bܧ��bi�>go澗��'Z>:<l[��3���+=�~�{�g_�\8x�)���p�nS�=w��ܧ�z�!�ŹO�6�̩����p���ߧ��f������z�OTA�x-;.]+�Mx�t�'� �� <>���"��l_���ݻ����\4��Z���u����k���Qp�á��ϧ&������O����C��ᧇ{a��v�`\4��L����o>���~K�����O������� <��}9����|A��_�.x}g�6{���O��,�۪/����w�\4���|��m00�����@13r$@\?��F 07u!123@RTr"AQSaq�#$BUd46Vt8PcHb���[��n��*�e�1�_�^�]`Iv ��ݖ�������� q w�x��j��5���k�����{W������]�_�&�ڿ�Mw�x��j��5���k��������@ ;�m�������ZO�:Y?M?�zm�������ZO�:Y?M?�zm���������U�*�����!˔��saf���= %�5%���vB]��Y�q��Xͬ���='��5M�g��r=9�7y�,Zm�q��,���Pi�Uh�$1s�NfjA& ��Lt &d�f&��Q��"R�-v�y�B=�,�l\8�o �2�ٿ6��K2J6U�$���9U"��}i>`�d�4�A�Z�K�W�G�+'�\��`Et��O�Y����I ���;&X�����A�ة>�m�Kߢf+n���O�[VyN��[�"�o!���c)Yu����.�k�DṠzy�]�b1��B�l��V�-] �>Y$��;>O�ui���b��z���W.J�F�l挘?4r�}i>`�d�4�A�Z�K�W�$}i>`�d�4�A�Z�K�W�$}i>`�d�4�A�Z�K�W���������+�C�QQ��kD;�����싽FF)�a!�Jb�� R)��x(�@�"� � Ug�!_ B��Ea�Wҵۡ`�\�E�-̬�Ϙ��"x�\���)L(�\)�c��3�Bn�qZO�;�|w[���;�.2j�V�ݜ��>"���y��V���xf�I}f��)�7������1J���ȾI186�ž��^5�"�������5i�a9%�������,�wkPg(���\�T�F�r�$h2r �ֳ6��@an�Q�u�>� 1���X�F9�9�-u�%�+�0����Q2I����\q�\�(� H�R[bǙ*N�m �X�+��J�i�W+bt�CV��;f�Xy�n8�RT!Z:pWnVi3�]�*j�5�y�r�����R��m5��vF��g�0�Ȭ�V͈U2�#�[?���9$θT��1�J���V Z�-�*�o�*UK�#[ �V�[��s�?cJ��uZ�h��q�����u*��*c{a] �8"oE��p�.���כN��3��\�^˂//ࠋ+�v�J�]�l��~2)�yhe�G�]�T6uJY�S%���5q"�&e��Q~�eȢ�o��&j�,�B1�i�D#鵊^:����� �=�X`�":����������$ 7�aH���D_+A�+~�.?a��ց���0v W���r&�r���"t���Aaވ�.�r49��K�mU �]�`�х`�Z�m�2�����l�d����<����1�X5X���/#��c���5�nդ��j���t�ePD��'O��'O��'O��'O��'O�ҩ�����X]��>��ј��1]U%�`�);e��+1V� ��2-`��*�h$3�@fQ�X��.mr��H��h�p\JY,i3:���)g~�ԗ��6����rܤ���VIu/��ԧv�Mm y���B���=E6�0Y6�C�G^��R /��Hɕ{nA�bZ��0v����yFY[h���.�/��r�M����f�$D�PEI5�3;k=�UFҹ��+���� �����E+ǐ馃���\�'g�I�A��D]�7٪U���%%�����TH]�&�v����W�� �V����gzBp-��ٝ%"�eݟb������� ����fW ���jA؉6laD|�:ñ3�=["��ݻ|�$�S$�/��2̋їuOY�W_mZ��G W�*�C �1��<`$���^W~F���ƪvx���ִ^�TI*d��pD�� y{��}7���߭T���zC�q�}l���`�ψ���v�1\w3�oV��R�*������S&�U���sFk��qH.�e�Y���E'�6�Q[�ni��[�f��s�]�p�g�ҳ��Q���L)�B�fk�:RIF���AZ,����,�����5����K=�T����ݮ��4�z+(�JZ� �p�I�#�rq:��:ʊ� ,�<ʀ�����VvP�~;� �i�F��4���|�B�e�y͢�)2�x(�ګ ur�@�U�d܃6���71��H:b�w9j��L��%�?��U���[EOJ0@T'�k��s6b�v��@R|��.���9�C��E�-�Z&VI��kM���s+MI)$��-�X-#4�����e%���ŝ:T�%<�� )1ug�Y�"A"R�s��ܴ��@ ,�b��C��q�}l���`��I%WP��C��+����ŸEDN!� ٓǦ1[7Ya(o0�!��)�;�9��g5M���7�[N���]"��NZ(r�B�R���DD�Gl�p���Cx(��B��gP�߸��&]�U�x�,�|b�sd�4�A�f�h�.�1n$@�uI_�ZmfxXX����@=��÷3��Xȗ�WA���8���Z�K�W�2x�9�w�2.�EQS1&�`ð9� ���J'S8`���}��ڸ�X� �2yWy�(�H�HdyǑe�y��� ��7��1��Yc�%���]�'L��1Lc�ME�D�w� %+��#x�!��5��)9��RE!v{���2�[�Ȼb&���&� �)7�v�Y1��\Rj�3Z����j~�)��XR F�F���Y�����(�c��@��;)��Xx����;��Xr㐚���4�HD����.�I��+� ���Q�g��Q��Z����DA'Z�j,3VgbR6�`%�+M�_�2�5��p��b�L��24¬���U@������x��u&��T�-E�+��~�V���U�YÕC9-�dyW� �Mf�E�Ƶ�����8��]�c(�ó%��z�Z<��d]�����e��c��� E9y�xLR�Kc����5p�V�$]&'�d%\F�d�i��V�o&ʶ��ۤ.�)��rCp��ͮJoB������k� .�_��͔�=�<DEXٮU��^��#:��, ڡ��Rf�|�(�Y�;��}é�fB�~s�V$1IL��{�i[���k��^;��Y5�E����=Y]�} ~�K�>��/6��&�֒`�a��$�,&J���M%V�8��QuU�UT8BϪ��ClO��k��[X���s��8���/g<x�l�u#9��p��A��&�PL� �rK�>�����-=)���f� ����Odo�%�����u�W�'�pX������Q�%$qAM��0��~N�y Ļ�&�e� Mb��Ŏ�E�+�H�Te`&8�:�&�Z�+&��j ��ĥO%_J@)E@ك�E�Zٚa��,ԩ�-4��L�:�[>�3rL����*��&�:�!�n���dwM�7��q�}l���`���H�}�b�2i9U�B9�#��/3��SY6�ݙT�@̵BѾ��g��)�f��3�+���<i��r�b���^�T���#���P�o��,!��&νX�E��~��i�+��ev�>m ����l���@�Ɩ�'cJELR%�}ي�"���Jq럍t�Z�$ȯ����d$)�-�g���,p���?A6������D�4 h�0��`d���*o鍩��wس�7wKn( ʰ4���:�&��z��o�X���U'�M�y�*1ɳ��A�x� �R'�2l2��w.���vԉ&�*3�5����4�����ʸ��"�,���x�Se��Af��,�}4_����;�]J�nd��n%]�2��4�[+ih�^BO���J�]�8�aE�����LG1nZ�Q.���m��g*���0�O�Ǫُ(��(܉��X�Q�E�-AQ�|�(j[@�\A$p��T"g��|o+� u�j��h��o9�^c�W��e��$�bG֓�`Ǚ�gE�i��H�VQ�ԓ�� Ν�uVS�o9�^c�W��e��$�bG֓�f7�߯1ǫ����X]���#�I���oט����k� .�_ؑ����ٍ�7��q�}l���`��H��|�����8���Z�K�W�$}i>`�cy��z��[-u�%�+�>��0{1��y�=_ﭖ������!T�0k�G� �9�&����Bj������®�F6q�n l��}u�"k�5�G�A2�D�>�T�Σ eBh�G s��!5�#�����@b�7�@z#�#}`�D���=��Ox�\�2{�@|��k� .�_���k<QJ+�� +a�Xw�ɢ�ҩV%�t�<�J�c��o�Wm��U۪U7��͝�Ir5�]ȣÆ�(����RP����a���+X����i�� (�9���Ԩa�+�-���E:`�J6�ÿ]�_ J�{�W�R�FD�5�k25ĩS����( ��C�S�7�<ݖ�����K4�yc�d�+�<���*b<S�̳���8�}��+V2���cd+���&��"{� zl���A�)���E6��ɝ"�<��\��m"+��ʉ��$m� �ɨ�uj"pw�(���X+�IT��wc}I�~�OL�0�vZ�K�W�2�^�'��C��+��R$�n��!�O#)1��쒰n�\�{�'3c��v:�l>v�j�w$�9�6�(�V��ы�ghw֪s������n��kHğ��rN�o�7��)��n�]`Iv �%��/_��$ �Qd��-e��H>q�u�|��rrڱph��k��'X�6;�3��3uJ&P��ʃ�NI��I/��8�+L<��$���X9�������U���O�|q����J˸w�4Nlo�7��)��n�]`Iv ���V���,%9W�M0 �;���C�Ƶ�Z�fhB��^엳a(�B�hd_�.8@�K��TUSH�c��+_�@"d��9Iw*��`�v� ��k��\R�͓_���:D�!L�L�e8y�P��Q]�P�d���@r��w�67ԛ�����7e��$�~��6h��M+��HY�yN��������t�SNb�G~퍳�A�dz�-�Z bE4h����x�RmY$R,TTr�9�ױ�uӉi˙��1�3�iU��H")�ʁ�!��V|Y���X�Uh'��k٢e=�|mV�i�K��X�w6|��l�əh�I&�1S�T��9����j�ׂ���ׂ���ׂ���Ҙ��]ĩ�(�-���:uu�l�3X��Mnb���a����`��X��Uʉ�qP[7ʕ�$0 x�L��� ͔%���b��$�cơ��-��#_�XeEp�!딍�ru�(NŢUG�S'�O�{���p�P��P�m(�a�Dܠ��j��"Y��r�* "�w�c7%8��0m/���65�u��ū�S�v2�p��6��t�P��P)1�~����/m���{o�u��}�^��@Na��y�-u�%�+�T��RREuC�v�$ O��(��oT@����?B�^�"* YH�r!^�@Zbґ��l���<�����q}�'�Pi�g�Z��[|�0��˜��5���9!���B� B��>`����WC�PL � R�2T���5M�f�V�0IF���+>��Wx���+���-���e���m��1ݻ��U�,��C�;�+��`It[-u�%�+�L�b�딷��1r�P���c��7�g� (U��&擮�Q�OӋhDN� ����-� B�ץd��ᒝ�y媮���]�,��k#�;~E�RBĹ���J�J��/�Y���UA>�$�c��̎���h��"�G@��b�E���l��M�'`�Ѡ����A�Ͻ3�v2�p��6`�:��˿�������E��X]��B&�O��H��2-X3b]��"����E �8�J�:7� �Zgr�V�! �8D)@�;5ܨ *@9��b0�No�4�H>�@9�,�dN����0�H�(�G��^��)bk�(��栊ı暥V�i�"��T�c�I��3��O� �x�R�L��"���g^9��:��c?Q����|��,�k��;-u�%�+�4�Ҹr��yP��DDwj�> rV�NA�6�g���#��J �l�O��X]��CRG��Hߊs��wZ�ڝ�2� "$C�X0%�Cx��~^/�s x���5���0׀K���E�� �x�^�7^/_���č׀��F�Ň.���dI��/ Q�Z�K�W�k� �w��i�ʛq�(�*_����ic`�EÍPz+,�X���� QE����Z�K�W�j�p���e��y��o�t�#�p�;��)JB�J�52��Z�I��pt{BX��+4�c�x僸B�ͻ��vZ�K�W�h&#�L>�p8iR��ێ��T��=����hT }��� �Pw4�z��<��A$Cq���c��2����B$Np�� !�|���?��I'd7 O��P Q������`����Iho���b��`ґ�*f�F�pn�#���Ʃ�G(i8�I��DL���9����B4@CqĜ59���b��ࠤ�#(��Y�2E�C+���mGy�ɖ?���'�?u��J@Nq��K�y�#����`����,,��8�����[scI�*�X���À%p��~Geݼ����p(I1]���j��I���7���S��25��8nͺ+-�T�mc�s`�7�d��i8 ��j���>)���o�":=n|�k���-�l���`���+�ɲS�p���%K��&��n;�1�jԼR7�uSHH9J'7�}�E���l����'a��y12��-��Lv>^�"�:v��TH��<v���\��H�kˋ�E��ݸ:���kPA�Fi.e��ǬQ �S����I3�|�B��A��X]��B��U ��`ld�#�.8F��Q����$����:���Ǯ��I�A�ؽ�p��o��ra��ɹq�A��y���&}��* w!�"锤Y���y�R&�D��MW��A��]'�d��Q8 �Jp����`�Ό�}2��Iq�\�~2_�Mx��4��<a7�� �~�Y�_B����Vo��:��b+�H�Ԩ���n0�y���HOᙥ�(%�_.e7���!m��XW"�r��Y@����'�Ĥ\�]T��+�t1�$� .d7}�������u�~��N������:�?z�'_G�_����~�:�1t�%��b�Kk��������ٙ��p�1���k��K�ɨ�f;b(������Ɩ��%Y]�k���|D>�M�i*�Z.�c��Mx��5�c%�d�{#6AE��s�3e��$�~t˪��9F�L�4T!|a��{��Cꯙ�s��+2�#t��7�Y��g���^f���"�;=xE��vz�7���o����,�óׄY��g���Vl�x�\�M�I�)������>�a��{��C������>�a��{��C������>�a��{��C������>�a��{��C������>�a��y����� �GL���k� .�_���.!��JS���BQ��V��yݶU�������C{F�]`Iv ������C�<�3�w��?�{A��A�O`�?�B�J�J*QV�7���ܚ� ���_u<�ch~���!�2�"��97I�$<���S�ӉcH�UÁܢ�@ >ϲ�X]��C[��p�6�DY�8jXc�C�N-"~nd^��Ƭaw��d���e8i�a�ʉ�u���Q!�芨��Q�o >C���%0o�]��������i�|�#���`"R�'���<`"c����}� �(�i7�b����8o(������`��F�(~�<��@@Cx���˴.�)��� �(�i'�a�)����vZ�K�W�8Q���?pn�')���xt�&%l� n"�ǘ��Hw�t��X����O��X]��8w��J R� r�5˿����R��n`%6�D�"�M�Y;�KG���0!�Ҫ�ɘQ�*�R�?�6�]`Iv ��B ��n� 7�[��؍��<������ �P�m,�S[�#�w:�q)�>�@yɨd�.�T��xt�-u�%�+�-�q���_)M�uUjna�(�~�,��~��wu�pGEL���Q��T���ͮ����}�{�k���5�v���oqMwݷ��������9l9|�w5%L����0�?xo�vZ�K�W��B!1Q� 0Aaq�"2@Rr���#PBb�����3���$SCd���?f%bRu" ����<?���;�������������������q�7��xz[�0TS�ؑLV6�ĸ�k�T0�"Q3��E3���)�<r&�1$$.� �;ݲ�Q��b�������D�N�*|,�L%�(�D��RC.+O3�q�X��d�6�"��\T��:ʑF3h�ؖ4�ˉ���dl���RKñx��c��RPI��(���^�k�m���HF��Ç�S!R�+��8œ���R}��ɔn��N��G�{��l���k5�c�$��:D���z�bOni���5�Z���a�h2F!��%B���"��Hsɒ(�bT̀����_��s� ���� �z��'|�4J,KƓ;�`=���xM��Ӑ$�\f ('f�jT��X�{.�uG$�Q-�7 �Q�d̻lH�1A#Z��R��Aj�B�/�3Xa���,�P�]|[��%�K��`��h��R4G�I#ߧ�n��{�G�] �'���~�s��P��+>L#M`��Ů)�;[ :�)�),��c�jY��ف�8��ƠL�@MV ��y��.��Q�\����1���E.$��Gr����*�� �" ]�����[-�[(�j� |LQ��u1�9�)� ��N�H�G\� ��r�d��2�!@A�a�X�$�G� �������4JA��}(�b ��U�� 6�\����D��v���Q$�Dtm�������G�%��(X\\w���9�M�5��i����h�Z��1��`E�BĐk e�`��E@A#)����;��5�k�̈S]Ȭd"MB���Ǯ��h��&�&̖�jX@٢bn�b4L��6QJl^8�%�˳ �$X��E0U�e@Jg����xzm W,�T�l$�d�b���R,$A�@�������9�]h��c쐛\|6�@PB�ƙ2XvQe+2�ckWR�@J�k���j�)~�������`4� ���&`�@����L���I~��(���|P(�WUJ�2D"}�� ��ά� �k��ER�n�[��E��y#auX�7:��E¹ч@��k����R�m��s`��:�g0�aw Q�B�E(T�;P>��$ �"��Ҡ���y��#U������l��>y-O<k6Iķ77�n�7�8����Mm�R5T��3ⷱ�8�lS�۲�����#a��� �i��j��o.���b�L�4�(���aI��p�nh��oXi�,�R/X��R�r�&Շļh�}���ةR�9�:f$���f�=�f u���W�ߚ/gվ���Kw�Z���mD�(sp� 5Hq�o�P5���kn%H��D� _�Ó ��.E�eF� �4�Aެ�R� �n#a��H n�"���lBXXZRs �R�SG���z��ݕ4�$�����|d�A�Z��vV*w�®�����IA$�� � o��йJ:�#�ɫ���$�4L����$�� >t�X�k�$.Ή�0�t��Rl ��:0ob~�� A��:�<=%6dt7V�� ���|��˹Z�mE"� y+!��H,k#J���3�U iNX����&GK�/l�U�ڒVId|��A����w|�;\1e_z�Z��%���T�[��]H��8�ha�H@ef%�#]KT$P�O;2���C��su�@Ҭ[��,�B�15���b.�)��kP��z<T�د87o�)�xb�|�����G@��{�+;K"�貭K#,�$zC� �C�.@Ꚋ�k�Vl�F#l���X9�I�x�nk�_9)]��U���[l`�vV)�4�EU�$C���龵L��d��{�aQ�4����>���IC�� �A_9)v�ǃ,�*Y���v�1��`�M�J���18+��+LI�*-�#��1��Tp���},��Z���#�\"j�����^��4��m�-��Ĩ�'���,I�t]`z`�[����֮<U�I�i � �\�qj����ʞ���&��5� ����O���~�dYP�=�W�z�<=<:�Jt��b��F֩�Y�=`��a��A���OT�D��*�+�˪��.������� �9%�g�%�Qj�h�͇0�!gR9��D�P��*�R�u��L�p]�ar���*�Ţ#2���X@�8�!�Б}��#K�����X�y��vGfnH�Y�Y��H�+\�!������*#�U�;�!��J�%.E�+�E�$�j �Q�V���+$� Ɗ�z��t���Hk0�9W���Ư'�Nڊ(��Zc ��jâ>R��|�l��+�{Rh�|E��-2�궼����ߩ��!�"T!�j��N����o�x�LJ��<?���7���U�\U�L��H��Q�M.���+��>rB��L�d% ��\U�W~��M�7������#�e ��i�>�>nHcf1��UkZ�ՉŶ#B�d��0ω�A!���K�x*��G���9����?���z�<=f���*c���M C���l@�!���@Y'���L��{Y���4h���ڃ�uS�gX�:�1[֎@o`,jVQ&�Ǻv{���$l��Ђc�t��!����̨�F���|��S8Q4q(gm���0��i1Q��ܳ]�����Ò��խ]��/,��QP�y%:8{�G�{X����>$X�1R�P~��*��b S"7�i�G�Y�A�8i�H}g���o�������8�}�/���A|��k�i��f�i 퐒^���a���h�UQrj#�9�����*�9Ѓ��Ԃ`W\��`Fd� ��~ ����}��T��U?��꾲w��T3�����b��`JP .W#�K�z-�F�����Z�����`k1ԣ���X�+~�Y4e�kf+! ��Z<'��xO5h�j0�XZ��8�c��Ѽ1���ɵ�ULJ�]d*jb;ؚ>�'p�!<��ቜ\n���/|�"Q�]d(��F����F�]ԇ��bQ?l!���V�U�\xz��]�6�V�������vk��/��IZ�\F"H�{I$�Ed_��k����5�� �yw5d)̰�E��Lu�]�w�5�����m����]���#����A�˜����G�ln���J=�c7W� a�o�\�;ǥ@���!��v�;K&���ӯ����OBT!� qQ�R�m l!�O/��<=R��ҍg��cD��<+;0�^�B��)�H�����:0Y�fV[��8�D�e�5�>z��=~O��'�_��C�4� 3��z�<=I��oˮ����=H �eH���q��~y�Z\"���K �����������go-i��Zv�V����o%a�.c]� �YLJ���}��y}��Y�ގ��-�g����'�7Eϫu�xz���zb���y��-�.�:�>#v��NΧ�S���h�m��/�}}�i_*��"�{��dh��`�Da�-ѽ��oDޢ���=O��RN; & ؕ, *p"�Q��m�����vt�Q�� \�G��}P|��a��n��S�ä7���e"�ʣ�V��p�P:��P����eR{o�m��T��� �E~CU0�:�m�U�f�G�8��_y�R�]��6��*���f��~F���yd�7z\��5��E��I��k��l9G�!���J�s1�b�u���ΰ�r���ZX�ե��ZX��Z9%��2_X�~��d��"�'��r�*)��V�}#G]&(��5W?��w��/����/����/����/���뜧���y��������s�?ܮu�����m��1���A�o�&��@5o�a\��+�a��s�9�Qs��<xzRP�� hf������E(%��/!��欏欏欏欏欏欏欏欏欏��sZJ��kC7ݭ�v�3}���kC7ݭ�v�3}���kC7ݭ�v�3}���kC7ݭ�v�3}���kC7ݭ�v�R�6��<=N�mg��Oa��xz��9�����z[)�/��227�4���D vU���xz�\8��J��ڜ� �>��E6����r�f����?������=��U�z�:ظ�[�v��s ��LJ��^�Y�M��c�=_�>�LJ�&��k�4,#���^<4/�D��8��>�;��Շ���Vެ?�Xz>�dž���L !1 6AQs"Ra�02q���3Tr��#$Bbt���45@CSUcd�����?���H�EH�B����r��Y<����8�=��=��=��=��=��=،�@O_�^���E��� �.wGS2��&eT��`J���<�.�U�m�m$�-� \\o��.R��n�ۑ��S�w�b{�s��ν�Yl�u�l=n#� ���b�H�$��`�=xD�~Q{K'�;(e*xc���O��2���1j��i*�|Tb,�����G�]�i!$��� ��Y�3���w�S���`�n�`������P����;�J���Q�������%���Y<����vEOQ$/P֎N�IDNbG�Y��0��5F�J�:�$1�xBm|f[C�eU1�T4�,��c��:A��@q��TY�*���%����lA��y�3+f��0کf褸��`wsS�Sգ<,���J�ٔ؎i��%��xe�U0>�[���{F)�^e!������-�J����J�*������5{�l2�%j��0�ߤ��e��ft0VA�����cc����yu)�a�lt�f\���d�Z�J�,Ғ�UԷ������uT�(�.�zA-\��d�:Q ��U<�4�R�T˒� q+i�RHr��pGv3���l�>Nxq�Jo2�R:A��#�dɨ?���ͪ5Ji�g�����H��hr�)j*��I� �j��N�p�-cMCMM[���E���j��:N: �)��Z� ����!}q*��rMŎ6f9jr�*���K,�KV9 �G�ӊAMK��K3��oyYX�3iou��fd_N�ख़���HE;2̷�U�7�`�:c9�4��%�3*�����݊|�**��&OBI6v�$���+~,0��G��v �3���_���$�Y�[�93�/NЫ9OY����6C��W�Tƣ�G�������ys�l==��,��B���KMMPT�rh7R��e��B�$�K�r���tq��X m��$��Q�H� +zဳ��q%5�S40�v�b*-��pi��o�2�nˤX�x�g� �'��cH��LcE���W��D�E $v����a�c(X�&Kl�~�qQB�#EEE����2t������ĩB I��oJ�s�x`-;ċx������$���>�(�FGG�G��>@��B�μF9E�,�D\�"�G�U�vU��f����]a�x�hΕ���D1�m�F[]�5�b�h�*|�h����Pf]�n�2���h3(���:>������A�=Nx*��1�ވ���o�*��q� �}��,v�%>`"���@Rާv�;���;̨6o(^��-t��ai�$Bo�%�6z��0��VF����dhZ�,m����}n���K&b�A=%��.����h#�h�ii`�X��ةR �� n�ØGAP��:�X��heQ+�Hۇ��W�t���BZxҖ���iU� )������w���y�S�����qpP�1��s=����0>\�[�%�����P��=�J}rV&ܑ�\�F�2����yu[J36�l�;S� ���p��Q%[ND�q;S�д�u��|Wl~Q_-S��*�Lh�fX�����ؤ�i��+'�0z�幸��"��6~�0�FJ�z���4L����m�ʨ����$��O龹k�'��ZQ�U3�I���+�����!1��&�,�,�Fb}�d�f�f��1�_u���~*2���^Tbk=!�E�?P����cS�C/O1�(e�IKHz=�f�Ӂ��Q��d5��J�L��7R �F>jemZH�2���&y&.��o8��L1fSQ� �+�#�M*B��~�q�dqQd�4�z6�-���u��C�̼F9E�,�D_Bx����x�r��Y<����?G2����y} �~��e�1�/id�"��[s��� �yf_�+���Ib��-��[��N���T�E��5x�]]YM��z2�G�M&QA=mL�E j>'�y8�� ���G�aF$�i����N(������5��jsT��&���D�p���a6�'P~I�;{���.j3�3P)��WL��ۼ{��먶4��(���ȋ����FQ���4�L�TF�K�[�ĒI$ܓ��rkL{)N�9e�Y!��o�'��g�bE�1��)T���w�>�Qf���Զ��(T$M�PA��75G��V��s��Y<��ܦmE=J�����5C�����pp��rQ�=NA5+o����2z��~m����,�{������W�����ϗ�t�����g�KŹ�E�,�D]]�Ϧ�2R)�5O�DG�rڈ7��ߙ�u�0�&�K��m�Tв=\�D�� *�Û��ޭ)b��mO+^iA�˼&6kf��<�)�����?�����1GIbȊG�Qa�����f3 �6tD��\�|�̽���8�/��93!����aY��Ww�mk��tr{'��Z�~Q{K'�W7��1ͲZ��(������`1[ɮ�AP��J�X�S%��#��G�/%kG�6�>��.�f�U���ᅆ�1r[���nK��Q����pȬ�0�w{b�3g"���ߊ�Jz� �<n,A�G���M�CS�V�8YapF����;�6�C3�����6�nH��3?>?�yE�,�D]\¹��Q[�bnI'+���HG3q<�u!�zG� �sf9}.iE5Rk�e�����y/ȣ���$�fb�L�*�G���������L�O�y��ld�?���CA"���$��^Q{K'�V�����m�ٖnr�D��<����㏟y�?�?�>}����x����|��|`�������1�y�nuOP�(����X�w[�^���EիKUL;��ߋX�`#`�_y�bq��=5h�V��w���e�&���ge�$����a��W�^���E�͓E^�iA������c��e��QU.���Op��4�jQ�����eHbyꢖ?v&����n.ŏ���8sl�_�qO En�O�M����>��M���{�S�$��� �����O".�t=hO�ni$�$/#�(�I�����ֻݖ�n�{[���L�X����������))��y!�/�ߋ�[`rz��m �+��qYI*m%�����{��sd�D�E��o�u9E�,�D\�D2�2:�Zۯ��m�U˾-�X�*��I&��2{%���t�E�F��<f�;�gz�K��d!G�|6��2�*,t_���s,�$H�iXI)����� ��f}�P~�|���Pc䍨�R�$mG�N����䝩�V��<@vҞ%�)r�+�忋I��-� ��o�[���t7�q�o��z���ͅ�mu T�u��{?(���ȋ�#����X�y����꡷�݁����0�3�� �`B�A�o��:pM����O".��e1���/����t�E�P_lj�4xn�I#7���nqq��$���E�,�D]W]C�4`z��q[.��<p� ��r��Y<��ݴ�oN L��=&k��O���#h�~\s�� �M⧈�!�#����Y<���TMW�PO3�JtgoG1�8�=@ � �,1a���UIHQanz6>���(���ȋ��F!1 "5Qs2Aaq��0RT��#3BSbcr$�����46@Ct��?�Y&�����Y��$��l_a���R7��$������<���ǒC�~x�H{��Iq��e #(�:{�i�*�f =fب��`�XŜĥ�q]��k����H1o[��Z����mi y��J-q~�������SvQ���~��KKQ�� �l ����O럧�}��+�T�8��;U�{O6��!�^�~Lq&kS,R#�n,T%���7�M� dUm�/�t�8�v���mC�8���Ul�I 7��{;jc�/�=�:��?Ob� <W�E���Ф� ��ZFdQ#/xBnG!��S��sE��j��M]�@��#���y�/n������0T�c�m��� �#�%E��#���KU�h&��ʅ P���E��SE�*�E�3`&��VZ��qK�TVLf?�Ԥ �u? �m�Ĕ��VԦ��S�6�m$�sSKmq9V����l_a��� ��m*T��|�� 4���0KX���`����HY��̵)���V���#H#�Ҿ�Δ�<�T�cH�C���� ���ԙ��{�`���9��3��\�e��Dbv0��V���²��CO$rG@�&�E�]�[\q^��Y���T��N _�"���Z��8j��j Z��^�/x�(L��SoQ�3�H+�B�IEp�_H��'秬�K$��,���g j#wX��gH�K��<b:�NxH d$o8�����e�O��2�>�m۸⦆J�"�#�L�Q$���ݼۀ8xaJ��h�mLJYm�jcW���e�L�u�nhHB��pl��N��?����ؾ�O� 5R!�$�)‐��<:�r:jm,E����*�"�kjPM���5�����o��������y �M�{0�Us�q$��/ &����W>��u�QW�Z��H��M�cek�6$i$���]���I���Dd��E�o;��wy��f<I78��%}6��F�-Vj*v��XhBnۻ�^�*�B��V$�̻��a$�u�A�ӳ��1,Ř�bw�nyOl_a����� �b8=t���n��/$��Mk4���Y��+e��MJ%�}P�5��m�L��l�%��謣�e�o�f���u&YI���"����/�_Qt��[}�2j�*�qU.]+�Z����hb7��TS�Yĵ�5$�fH�}���|x�-���s�JX�,�Av`-��Q�ޒ��x��Ԭ�d 47��z�l���i��f��o��PUA��mC�s�Td%�;��x�y���S�+�;�dBcq��Ret��eϢWi�\!!ŵn�ʨ��r��+K,��%��x��/����if �c ��Z�J<����eu 6���ꭻ�'���at�<��6/���~���� +�dLe�Qp�C��8��,<��͎tG�C�)v�1���P@Z�J�#D�O���Et�PSC!iФv�M�G�UQ�i�A4:���H��bl�0�K4��S�d��Dp=�j�9�4|܃@���ǯUOW vX��* @�&cV�B�.�ȷ�浐-2��9�F�wI��<�Z�A"sQ�5h��W�y��<���# �X��8�pzvE�<�٣T�(���J�$�Q�Lb���ѕ.����4��0�� ��Ԡ:���a����|yl_a���R����]_��ؾ�O��}!�� ��<1�}��+�J�C�u|��xcb� <W��+�f� b�c��/!����^�g�L-�Dڿ#�W�ʺ�e6*E�#Z�`b�UfU�R�2J�ü�`�{'�S���fFjv����T�t�U�PEEF��4�3�����9T���)%���c2�9u@���@�C�Ь6 �Ƭ��x��يs,� ��3/~�{`�,8�1�/m��cDY{Z��rl��<Z �#��DQA7`71�tAM �MZ�n����U��R~�{�F��|yv/���~���3@�3�R���*x�x�J�� ���{n-lh�B�'��x��Z>�&�����.��b�#-9��f=�W����I���=� ��ؾ�O�;#�G�����y��{����mܔ��V_!h%x��=cs�V�7�c�8�#�"7���<���=D�R��~�>�x�3���-i��SՉ>�~CH���9�;'�q��GS��E ��k��y�������>���<�G�~C����SP�R�!uF�㞋��n�KǗb� <W��ْ�e٥>�1F��}�� �.�d�B��up���������XR�`������l()�թ=,�����m>g]B��J�X��D#��`Ͽيj��&I�r���i�T9�Q$��J��B7?���ɱ�%�?�%�?���� ��tv/���~�-2����@�cnI�K�bpG-\��о�䢬��ꢩ�m2Fn���v��?�B��RX�,q��h{�cN�����1��5�̩%[�(�V���x�ф�,�*��9��i������o�?,}�;�x�!�;���Q��Ǐ�G�6�)�ʧ�i݈�I*��[��}��+�`�m����/��cf�aT.2*~j��F�Z��t���/�'��� �\s�ؾ�O�9sj��s�s)�* �g�ǩ��qY�����>���EK""�f|qki�U|9TI&���k|�,�@l�4'�����>�j[n��G����� ��4�_������9F �X�P8�2���Ul D�9�ݺ��)��F��/��NY�<p*K�v���å�U��LT�wD5?�7��-LlUui:@�oX�̥W�P~�7��6/���~X�fTP�Gz�gd��]�_�⊟gQE5Y ���|1������~s�e��P��V�J�yOJ��q��>Ѿ+3��ў��t @p�����&��� c�[?���y�g��[�9l��kq����f<��x��ba����5Emێ�ad�ߞ�oa�Ǖl����쓵���?,4;)�ڢ��ݹ.]��4�_��B�[��a���p߃_saj�n��e �A� 1�@��ؾ�O�1�������&��s������ө�wa�t�>�b� <W�X��rw�����6/���~U��b.�s}�c=�7�nT�,� �lz{�i�3xb��+"�t�L�Gp�I* ���$�O��\�l@ţ�Z�:���}��+��PKBA#]H�L����<components/com_sppagebuilder/assets/images/quickstart-2x.jpgnu�[������JFIF��� &""&0-0>>T &""&0-0>>T��l�"�� ����O�'��~@0 ��'������X@��`�H���� <`O�{�<�? �����`�D�j� <`O�eR�.���j�,�әkܻٸM�]`��$� ���Ch�c���l�^[J�v=��[�w��H����m���x�ޱ�oxj��ɬ��m��$� ��|��0'�=�@x�����y�~@0�$� �����*�,�{�"��\7�J|`_*3 rȶ��? ��S[f\���ҩ1>�.��>�|�m�wΐK� ����ά�<���A�v9�zqr���`�ܝ��|�'E�����*1 ��8�����Ú���[u.��w]���G5>gvCt�{�t�MAw���[^��sH��o�/@?��`��R���Z��9$u�1��&'6����D!�y���αߑ �N����cۢ�+aQ㨼�o~�jͧ���je~���䂇�f/�/�A�? ��!2�D�|j���,�L�:;�i��l�ZRLs�0�p�����tZ%Jȷ����/=�'��/+s�wS+��F�%/52y���Px��&4����3"�Aw�����|���V���f��Q���ky��>��j��R�~q7��2�\���Ldls)ؔ9'/�/�A�? m�Ra��҃J�7�{�ɲ s��z�x~�m�zc�N��Z�uh�dcC��JS/�-��M���,�*lO}a߽`�~� ��|�k{s��<`+@~}`���`�H���`���`]u�����3�$��d\V ��R8Ih��UT�`���`G�Af<�'���W_eƞ��\9'l�uް*��v?�ݐ㗡#w�>�`���`rQl8��:r�U�>"t��{�0��V��ש��s��b��h}֮JO�zL}��㔥��H���Z�E��{g�g���w@�[~��]��a��G#Ʀ��!���(��ʬI��N� �'\��پDt�(e��n�S����%:�� �g4:��)�:3�n�r��\����xA�Z���:�bS����3���Ϟ�r����$.���s�]F�f���3oՑ�����[�<��2g)���}K�_Ec<��K�E֮Dt��*a�*6�����`?��I�2�DΌFY���O˞Ruo�ݕ�{�6�<��D�S�מU��$�Ndu%̞^t�%�.c�]j�D��<��:0������`��q&��=���v>�w0Җ-��7eN��z[�dY&�m�C�m]Q��|�Ů���ij�Q��䒰��`�|A�? �2�L�@-_Px��{�W�3��� �����`�H�|A�? �-_Px��{�W�3��� �����`�H�|A�? �-_Px��{�W�3��� �����`�H�|A�? �-_Px��{�W�3��� �����(<g�=o�%�¾�~���o���,ߐ�S��|�����o.���(�����Ń��*j ϐ~@0�e����Y�� ��?3�6��_�@�"����'�Ӫ*���������I�Q�ԀT�@3��� e���B���J����<;,�|��"1� ��`���^��}ʬ���l�s<D�*r �O�<�,�0ku��Xt��?�*r �O�kJ�Wn]�pu'Ĺ�f��p���r-T�@3����\��u���~��ϸ����ڗ��h�"1� ��`��{_$���۽��F�/��j����(�S�ϐ~@0�j�Շ�;[@L��z��`�r0�����Θ�S�ϐ~@0ã.vsv�G����1�9z'�ms|�z��Ͼ�(����'�y蟘��t�s:��˾�P���hj��O�����&�r�)�1~\����}xt`�<��@�%�5_.�c>@ ����0Q,;�R��O۳&^֗�!Sb��_��~�Q��? >mx� ������rs.�ޕ��aB>m�����y,O��{�,�e�@v�n���l7�)�Tg����\[�d������GU� K�`~@0�٘>��ɷ����נ�$ �Rc#��p����-��j��%�??~~�R�X��*�݇sҚ���x�oڻB�Aq���@v�������`I�d�?�e���6��j���נ;����? �he�����T{V����.h����l���- �O��y~�?:���ʶ����~@0���ў��z��z�:7H? ������ �W4@����ʺ�|e���T ��l ����x�WIo�!^�~@0�����]n#cnZy�J����7-������\�A 2`Gx� � ��T�;e�����|���~>�ܮ?�]$���s�_��x��`F���E����@;lzt,��UA�~@0 锟�_/��Z�@"/�N�z�#���(���mm�u��܋~QP���aYI�N��<� f�v��:��m]� ) ̞��?80��d���'�`��.��H�� ƣع��t�d~@0��~�6{A_��|���1�q~6�3��o�E����I$\��xܬP#,VWm�߹��u��zɀ�i�my��Ύ����EFپ�KF��~@0Y0��^ئS��n;X-�`+.��Qs��;���`q�C�d�rOJ�=t�q�㭃 ����@'�6���x�ۀX�H��`=�5�Z� (��`6>��@'�!oh,|��`zI��m%5��Wz�/ޯ-����ܗ����S�9��wJ�U-ug���A��`�R>Y�k��������ڕ�V�`��1D>��{'��o`�ň�ª����`ِB5����W��qPT�� �����k� ���~@0��0�X���@O�|�o�����˧�'����d5�5��������M8��E~�5��>}wO�? An��w�Հ���0���Ѐ*nw����+� ~A�(��*r��S`ֺPr�'�����������@�*�F}��'������@�<k���xNX�������9�`��qlY�&,���� ͐����c{4} NX�������9�9`sd s�y�;�+�σ���U9h,��wH?�z<ؿs~92<�ȩ��������b�H��>%(���C0�۟C���i�<:ͭ9w�֊Lc8�p���͇�w{C��gsѱ��5���^Ɔ�<J`�[�os�1ohY��۷?;{=�|"x�x�Z�e-� ��צ�,������O�o1]���83{�~K���;/�r0�PoY�3��y��u{�s�����zϕc��ͷ�1��oK���<oj)�j?'�� ��cy���U�x]x�{���ډId��<�,��8��'���<�,7E��9`�/�O)� �|"xNXn��� r�t_�S�<����d%(�R�<�C��4��v���`�h�-�z��DxD>c�z_У��;��>\ik�u* s�¼�z��������G�ik�u* s��-q�_����[�0���T@�.�[:��^�)�����K\�Q�B>h�[\���#�7��A� �}�u* s���n�&K=�ۑ��4���O�Tu���9��x��uz=�F��??���'�xZ��:�_@�X�bI��>�\��ӓǼ-U�� s�/"̹�V�TK3����S�@ s��H�a�����֨��7��x+��?5�7~� s��ۇO˨�XR� s��u)J�u�mD��w����q㹲V�x�<˜+�\w}�e2��iD� М�s����Aֱ]� s��A��w�<�O�y\� �@��[~��&� ���q�v�d�@灆>�P�y�k�S��;�v�&����A��A��uw��Q���2̯<�a���~ LT�n������3��0Y�wn�<n���qݻ�Px�hM}Uۻ��S^�K ����V�2���.�ex9 _�&k��t����I���b���&��d�T@��������[� �Q��h��s`?�-��[�!�������Tf��[�!�^CF~l՟U1����uD9���s`?�-�\{h^w��w��3�Z*�Yj�gt�O$�`uDM����n.�y��wDyR�\'E��BU���쇤�Z� ��z:!bx,��5��m�xS���oξ�ʏ�պ/���cj��T|�o_6y��,��T��ӳ��(M�����Րcj���1��2�/6��=�,|�1�TC?�eP��ُU�Bv��=��[��� �E��(��Q�i�gͻn\��2є�X�����7ͫGLeL����Q�=�n��*���#;�J�vZ�c��#�F��B�ڪ ̀;�Dxcj��g6ڪ ̀G�6��s`፪���Dxcj��g6ڪ ̀G�6��s�-��e�?������]^��-�t���K8J<E��Y>���C�N^�� .�<E��}g��_&e�W��N<����[� �m�o�����>�_��0����[� ��7�uu�jC���ė`"�Q�}�o�-_7��>�w�Ǎt�7��p��A�-��Y6㖽[>k����AD>���p�~uD�J�˞�(zW����K���sG�l�T@%&'�x��Ah��g�\�_����Q�~Z�l�-�`���W����P���-�=@��^�����Q9���r|<�T@L��w������-�=O7�Z@�C����NkN>e��E��9�DG��{�uD]��ʟ?o���4�����Q��_W� ���H�nyR�Q�t�_�ڮjU�[�)ߔt�n�{a&/���0"cr9E��t�]��0��T@Y��n���s���oF�a����o���H{�nxr�-�n6o�nl@��@woc���uD��ӴÃX�{���Z�n�������5���c�tt�G1�DŽz�C����807@ 2!34P165A"#`QB ��Ι�X�������{�/��b�B�+�_��'�?����k �ŏ�5��b�B���%���Z�Ik�%���Z�Ik�%���Z�Ik�%���Z�Ik�%���Z�Ik�%���Z�Ih�i�X�ns �ŏ�$�d�>w �ŏ�$�d�>w �ŏ�$�d�>w �ŏ�$�d�>w �ŏyl�[h��C_U�<���R�EyT��W2w�;��bǼ�w�Vi��Jrc۰�0��.iQZ�x�I���{�03�)!g�݅Q2!az��0O"2&\��,�7�2חb�d�nl�<Q�ܐe�T��*A�F$y#�U�4Fd���ؼw.@�Q��mjk�6Dkl��q�v5�����,����L�����Ê�}@�~N^��>~9�З�J�N�C�p�X��O��Ϙ�!H�̅ɩf=���6*�h�b)2&�}�4�X1i���Tz$p�G35 �z� N̯�(�MpE0��8-^߃�rl���8�Y)�%��"MX�$����r�Ɲ����HCFV�)u"� -jbԫZW\�or�z�����-�?� ��QPy��J_�+�;���|1c�qɎ,�v��)�S'}$:��M�5�-"���ȓ"T�:��� +:K�IS���c���U`W6�|�Z�(Ȳ��L�; �!��D�n���ԩR�A��=�*j�Q�//&�-�z��� f�BE�^���t��K�%s'}��O�,�K�%s'}��O�,�K�%s'}��O�,�K�%s'}��O�,�K�%s'}��O�,{�hԎD1�f-�-��"�+�{�M����y:]W��Ck��i&�}I$�LN2�c"@Ƃ���/�䈖8byNUW�JCk��i�N�C��c/��06�I��xb�~�8�K��s-�%��X쑵�#_3�����z�cx��]y'�=�0�|�����O�XmTJ�5q���eySIJ���H���)�i�D2kc��b�3�33ti;� ��D�c��O�j��v �6�<� �e�t�L2��K�%zpG��~��V�!�vxʑ��|�呷զ�-���j�f��uA��;Z�$�y�67ʰc��Ŗ��;e�2�������'2#���&U��L=8��:�o�r8O�,{�V��-��m���U�e��k�p�5#�D� �MߑbL@��]-:-;a�"��/Ҷ;�7��B Z|���c�4�qQi�*�SG�9I� %;��I�'qd�n�th�B���������1;����f��7a��p.�&�+���� �E� "X��p��W^p�N�p����!ӎ/�6��\a�����cl��tI��1 ��j��6i��+�~�XW���vDz�җ����h��5��2�M��Q�d��-�3 {#��\�w���m�Z)�H#;ayS�.a�lb�� ��o�kT�3'�I���cO�Ղ�j�Ɉ'O�cO�f�>�H�D?%>�4�H�<�&���j3 @q�%��1�_"�]P?�[C��#�.�ɕk�� b|\�$Hۧ0��oݧ�kDņW�o�t/n������������������������U� �ŏzu�q�c}1�Ȑ�� >K�VK��L������XŅ '��L���J g�.q�mdG�I!�=���տJ��wAYk���Hڕ�X���ݍ�,HA�_��2��K���O�L�/��2���->�L�e]��� 6�k�6��`B�ɕ���L�zha�Ŋ@��4ė4e<:m`!�"Yl�8r�ϝR�N�W����ڛT�3&��+�\�kڶ�\I�$Ei>;�co��VU��j�4��3�?qvKZN�')��Jf�'.J���<���Id�t����4�Ŷ���fP���霱�A^%�q��5���n���G�Y���3�kM<l�V��f�Z8��Z��mh��&U��L5���v\T�µ=t��7V��T�ǔےj��j:A��F�����c����Q�9#�"�b�QV���p�ȦX��'�M���tI�Rak!���7��d��e����я�I]jߊ�t�;� �M�䰨[R�q���dŰ�.s�`��I�k����:��b�p�]�斥����Y�>�ex���dĬM�s)��F�$V����C������U���F �c�ͤi�Z�V��fMF�Ƥ � �[2i�)s-q*\c��YK��.k�.Sѥ��Y���ZҲ�G�mB$9&\��*��<Z�Gc �Zm��Mj��d�i-���ϭU�Ԁm�:F���TV�,+fyM���6F+X|3j�z~�h�d6�]��*�?��Ӳ�O�1����#K;q~'Z����{�?�ф�bǽ�fo�\q[�1̨h]#F�N��S�0�Xh�A�e�|���Ӧ��Mq�:U*J���1� �d.�gx�"1>X�+�7�`���y�ON�:L������i;� �cp���LY�(U�s 7�=+e���u˺bM9{=�? ��\�S,�tJ ��ƚ�-�Ldր����\%�ر>*g� N^��iqE��:�r칧��O#~h�X;x)��T�3'�M2�0c�7��YO�!I��҃�C�.���z{t�J��t뒑B$j[]3E���zHF�T�>&]%�6LC��bKѦ�-��Vǣ�1`2�:C>·y�1�g5*MB�d3� l�Խ�{���4ܧ"�<�ˇ��>���>�V�?�?V�2Z.�ɕk�� i'% JJ�K�g�q �R\K�x���U�#Q�`w���0�X��͒�3A���Ɨ��"M混Ǩ��Jqgɩl�ʜT�P�bP�i^�����:�C�U�M�쓹�*OZ��'�Nc#�;YՂc������Df���ܣ��Ñgmvl��B�0G��#����˒�L1�fCzJ�r-ɔ�Q��q"ʹ�B|��vJ��JL��M �SV�r�Z@&��X��(]�ʲ�@��Y����^���QR�IrZ�J�J_��rd]��� �QLǑ!�����Q�Y̋��V8�5RΈԙ� �K�7�Fb��0��yo.t�w�7��iZB��I�ҥ�r�y%�D��T�.�9�aM�(l�Y���94�L�4C�B�D� h�s)� .!t��M$�S6�r�: $��Ñ��(\%Y�$͙���`w���0�X�H��J�����"�#�"!d5$`�Rq��;����{�%WrUw%WrUw%WrUw%P�.���`w���0�X�H��J�N�C��po�T`w���0�X���.r>�"Y��u: �J�YĨN�!� ��4fG#�λdv�.z����{Z⽭g|U�XYl���J���G����3��B����x��v�"�S�;��������@�0�<�PH��i"3JY�Q:�l>�H9�"^���XL]�o�T`w���0�X�� 2�d��� ��g���W���/�S�,鱒�>h�c��d�R�j����i��Ȯ����W�h�*b��:t^ZU�� ��)�-��L�HP-:��r��з%����N�4Uc�~��L�h�R�R�<�u��U0�/kUZd�ݓ��z��� |,�֥�a�@�r�-Z�M�'}���>Ci���Uã�l>�,����j�v�k:M� ���F��H���B�]��\�h�J0;�D�I��{!��n&4P�K�@��ef�io���s��:a:]�.���P��`\z{?K�q$#21���p���(J��m�t�J�5L��uf�q+Eë�GΈN�����\ R �Ҳ� �wx\M���neK��\L��y�q��ٿO��"��ꑣ9��'glk���K�X���w�6�5��F�c��N8�D�#Y&��x$�S#�F�%wv�,b;Sћ2�?��ک��rU6c�8�Nn*��U�+���Ę\V-�RG&����n���IY_Md��+|�c�d�R�Ӆ��7.wh�Y��̣�<9KP%j�> K���y;jg�6��O���:Ze�r�m�*�m�k���+�+)M�x���Щ��C$�P8j1djv�$Db�D&!�O؊1R�禛�kH� ]_�9v]�Wv�`�vC��r�� �ŏz��8��~Z���31Mb|ji����="E���V��S��C=Z�V5��R��f�"����,����j1З�D�&�6��� ����\'ӇS�=gF=�Rm )ݞ�o1NI�N%���E�t�#ljNwmb�8�Y��S K�%S���:F�G����N��gF�N#�F��+իea}F��~V�M�7T{�c�:���ş�9K��,��P�lV>����S��3$��gT�O��s4_h�s�dH�a�̫z��+�F�$b�����k�Z���!5���'��Ͼ%���r�K�GLJ<�) �Y�X�9�WJ�P� �ICC�91�4�;%K���r{MǪ)?��ə��x���j���������F��F�U1%J=c�T9� 1V�Ք� �А�Y^^Y��f� �ώ�.�I�Yk3��c�/��M�mj[�rDWMao|o|hWzqiY�S��a��r�?hz>Bƞ5����̜*�R_�*���8�a��S��-�T͌n����f���۲d`�r: 4� �18���9���+sR�?��*�n}�c��Qn�u��0�7�{T�'��9���A.l�Ě�*�I3R#u��$�T��9!��~��VZI�x�ۋ���0F���G�2�Ŝ5�S��t���r�y��Ln ����K��_��B��b)[d' 5=��ܩ�ɘJc���F��F?�%u�^!��ig*��9��<��<��ˋzk�:T23"H�'�&Smh�� n���p����.��yZ*��h�yNd�#q "��qBZ��ѥ��ԕ�0����v���k�C^�������_��B��^�I'WxU�8U0���U0�o�@�NL�/ѐ.�ǔ�B(k�XӲ9˱�L��()%yf�u�E��ʎ��6We ����2�p���0�0fX��Z��!��Ma�0��.>�d�Ҏ@�����Lj��R׳I�n���"dcɐu-�G��۬��řZ"�Z�NWfʮ�6qI��5$'M�y�,1(�LN>���-'1.M�x���*r�"���@;�K��3NOg:P�Df8��z�G�Tz��>H��Χ9�Ltʅ��g�[���O�,{�fR�������S�\$]\��� D��R�u�8�����:�9�(CPކ[�r���%��m9-4��btD�K�2���S+ע1���H�&B�U9|��%�i���A�<��yϹn@Ա��/�P��:�4��|�8�-巼� �{G��P�&R^��� =�4������c����9o!M>��ߞr�R�TZu-�s������*Q7���ڇe����g{�6R{J$�|�k)��z�N��.W�3X%�f7mFeGT�Oh�^��&�g��e��<5gL��ؑ� ��F`Ǟ2������%�Dj�Qv���;#z����5��<��}���F���I\�<PΖp�s��� F��%OW�iR��;�=�ܟ���|1c�"_�+�f{Ź?�ф�b�D��W���r�� �ŏ�$�ՙ��F���I_�3�-���'�?�%���Vg�[���O�,�K�%~��x�'��0�X�H��J�Y��nO��a>���/��=�ܟ���|1c�"_�+�f{Ź?�ф�b�D��W���r�� �ŏ�$�ՙ��F���I_�3�-���'�?�%���Vg�[���O�,�K�%o ��Jkr>�e������I�R�l�x�'��0�X�H�A��bj��&���bj��&���6 M+L\�H���X)����Z� �J&�E���Z� B�ɟq��o,-�15x����O^-=x�����T�1X!��4�v����������a�Մ�b��^����ZȌW ok����[49^�#{��9�:Uk� �SY�\鹭a~�[����������w���K~Z0���'` ��~�U��W�"���EA������UC��A�����x��/����n�X��g�L���]_G{�Q�n�U�k}n�t��ܰI_KN�b��v���h^�� �cjׇ�豬�����pX$�TN6�&�V#�V�x�l8KQP����>���������W[m�u��W[m�u��WV�x�W���LiW̸γNIC=uFCg �3w��b��<��fD%��ݏ�bAn�(vz�I�ԛ�^����Ϥ�rc�B�um��L.�xm)N�Il�]rq���R؊����E��um_^{���)agfL\���E�I�%��7xO�,|ĝ�nΆ^īP@n�8ӯ�?N���l� �>OG>g�ݯ�s�6'&�+�{�6��a o MJsBwX��L�ѹ-� �Ox�3�wb��~I|��x���.�p��,8>����������1hfK����e�m[9%q��I��K�>ݒY6$��cL�*� �>z�7+.="ռe��h��֓�K���n�X�y�G Ɖpr�m��*��8o,Ƙ�V�pj� �q}���.��N5�-��u<d^I�>$H�1���'������>����Nª��1�$�ll^�䑵f�0b�[!����X_I�v��R�X��O��ϩ���I� �l1�2�d�|z�����H�Bݶi[n��# V�T�hb�$���C��'�>^B�[��)��)<ӅZ�蜤�S�Yԩd�d�#W�Ir$�+Ҵ��@�Y�.ª��ۡQVh�|0��3|� jf��JU(K��5���� ��F� \�*��;�c��Z���źI�%��7xO�,|��F��NE�19Ig;��M ^��k���/9,�l�n�h���@�����O���kZ��3d\�ll�Q3��\�_s���l:4i���k�ꈺc�]�R;^V� �O�/�?���|1c�d�RY��E�o���!/>��$e�Zvle+���_Y��ק+bs�ֺ�XJ�{u)��{�����pIF�_�r��#��L�<��N�>v�C�彭�$0F�H���m�DH����PTT�Z�Vr�I?$�P��f� �ŏ��=�Ȋ�R�+<Î!(�+�^�c.q��(2þ"��O"-���Gv�BP`��NZ�y���Q&�)-q^D�|ݍ!��j��|H�.�p����kmH�ڑ�# �F.��µ�}N.L�(���V2��1�.�{$�U�LuVĸ�7��� l�[,��� 5�� l�[,��� 4�c��� �Bqx�$v�xѕ���l����'�>L�K ��c��r'[�5#M�$���� 4Ì����}��d��jW0�d���v��{Z�����!Qᔀ}9�(���c<�J��Rr�>�.=p�2 l�Ҷr�[9t���V�]+g.���J�˥l�Ҷr�[9t���V�]+6A��/�N�����>��s�+�BZ /�$�p`I,f R��<f��C,Fv���`�X��s쇨a\�����U�F皵� ��+a�h�� @�`,��a~�!fs�38���H��"��ř;8��I�+z[���Т��@p�K�?���|1c��M���Y+�W �K =��Do�F˼&w�ХP�=ڗ�Tۤ��Lp .<�Ɨ{�������ܛ���r����*��<&�R���Yh�c��QoP���pon����{z�{��%��_6�$m|H����#k�F�č����}��&�a�V�D[mh*�"��-��<�3ժ�\�>�/n�M����.6��(G��6b���%@��W4�)b(�$�%�2��� �ء��! iv�c��QoIùeV�v���ɼj��}����'�2�S �ŏ�z I��q{"�J1��z3�S{x��ͮB�&I�s�(Rt~�L�XA�+��9i�[����ԗ�p�[� e�@Zԙ"��X�F�$V���`��*���3��]!� �.��erW7� ci(�YnB�^>���]�$anZ�����-i�\�u�����Oe\��'2b<Ť�MO�� ��1��{ؼv�{�V3u4���DM�R�=�b�%,� 0�ue,��-�D�!?k���M(��i��T�7�G`C��8���ؒ((L�X;��X��b�p��-��@>�&'* �.�N0#��3�c�6g�B�z�M�.�._��_]���Oe\��,���wiZ��vLpnhnje-e��I-�:V�腱��2ʓ�&un N-F�Kk/=ʓ�k�`}s��~��NP;މF��=ɦ���hܖ���#����Qm��x3*�0�X�Fػ���1������aE�Av,����wX�UY�M��}���զy�M HY��'nN �U��K ZP�<�� ���dg��!��a �n��.ְl�V����0��R�m�X��!���$Yc4���(�,�zD�$D��]��VBuY��Po��x��SR!�#�0�Fi����U�c�ۣ�+nw�Z�uuv�T'l�Z�ϕ�l�Z�ϕ�l�Z�ϕ�l�Z�ϕ�l�Z�ϕ�l�Z�$o�e�1��|1c��(�/7�PyII�=;���u3��G�Q��a>��(�j�ذ��F0r'�:���'�>FGz���8� �?Ȍt�#��O�,|��u�7���+�֔��P��F���@k���"�_!���Ak`Z���`%l[�V� U�H[@�z�D���@+a ���l3��1�c���J��" �����>��0�� P.`��}��Y *�A�5��K �S�V��B�_ �ŏ��^�QnZ�u���.�kZֵ�P���H��f��!*�/��|1c�`�}�����[�%1�o�D�(�ǡ��\$���O��B�W���]|��#��⠛v #�Yf�.������z1�z�B�rϮ��YW���j��)�o�%��b����$(�KR����o�°����������3o�[�n�����n�s`ߖ�$��2"c+Ԏݐ�m�'�>E��Z��R�=���{\7꽌���� w���ނ�pmW>����{�4Rc�����LBu���wGT�jֵ��m�gm�`n�����G%@�"���I()���>��M��J�t���Ơ8��ok��P�g�����2ѐW�� �����'�ש�#�w9*G�xk��N+����%b�W�+�8O�,|�5O�������.�O��auf��P� ����F[�Ȑ�����NL��PMem��i�;˦�B��G❐1�,0a�=�@�& �rXO�,|�:Q�J�>��,��5S[�u�����n���T��:c�#�˭rH�*ŦK�V��)T|��メބB���{��v�M�<'�>K�v8��4��M�b�hҷ�)2cI$��Q�<+{���K��,�HX���^.[;H��t�s0����C| ��l~��g�]]U�ת���_<�!��b��C��H��8Ä��;bFF��Rf�>�$*-&��#��n3�^�2�ۧ�L-�hH���k��zl���H��.X�h�4�-iv.ņŷ�0z����|1c�L��Ż(�4�`�B�)������R�#q1��&Y���D!�P�ܴ����m��gj�L4ڀ.,��RT�*��x����dfv��%oT}��O�,|����A���2��C���\*$��$�~yIhV�ʩ� �ܽ������D��l`+���SR�)N�C�$�ˊjN֜�� ��X^��S o�X�$��<��P5��ݡcij5�KV� 6v�&�?.�'V�yn�2�2ڤ@�ܹ��ށ^���ww\�B��B�S� �2�7;z�P��KS�gB,0%Qr��;Z��xyFʖ����a����>��DZ�<�n1V.cZ̙��VLޚŦDM��yJ���2D��$!*h�et�X�z��)�L�9H��R� �hӪ�4궍:��)���������^f�3?י�����g��3�y����^f�3?י�����g��3�y����^f�3?י������sjЏ҉�k��-)T���P���� Th�v�''��Ȁޱ�T�x�Ry%8d���|1c�c�X�o�l��m|���m|���m&ӕ�RI�٥lҶi[4��V�+f� \� C�:�`�M6�X{����١y�}t�g�f[8�#�ɯ�lx�5(tPL�#�� @�J٥lҶi[4��V�+f��J٥lҶi[4��V�+f��J٥lҶi[4��V�+f��J٥)��!9���m|���m|���mG�O�U}lҶi[4��V�+f�积�/P��[k嶾[k嶾[i�O�hgpp�� �ŏy�d̑IQ�]�ύ+l�Ҷύ+l�Ҷύ)�$��J�<��:�kα��f���:�kα��f���:�kα��f���:�kα��f���:�kα��f�r��`ͳ�J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4���J�>4�6]ǫ�o Snp�X����)�������xiN�i�Z�Cz�S�'�>F�c5��Zh�g~0���>��,(��ΐ�bP�����0�X�a�Po�����F�=�IP�9H� P��-�?��IG���p('*�9>J���5,�6���(��WAǒ��t�䧧;�G�0�X��r����a�^���{�|nM�jS&R>�z�j��w��J<�VFS��$�����m��.� |On���%�ꥎn.^,��������aGn��� �ŏ��:���H}�U(xnM��U'0]vN�r�w��u{R� ��e��ɺ�A��/@F _�%�����2�a�f�"�z���zV�r���a����7>�=b�?w�P�*�u�.X��[r�W���k���k��qf{U��b��2�$�k�U�G���kZ��%�0A����a>��M�� �{��+�k[� Qޒ�]��?O��b�ɷ)�)�{�Y��t���Rz�RaJ)Af~� �ŏ�@����k�V��̼�M�z{����F�"�,�o谟X�F�����sR6�;+/�k���*����'�>U��#��;�V�*�H�W� �\��Ek��?��bǾ���]v��W]� O�'^�O�<��V%�E��N��_�+^�n{ �ŏx1X��r��}�]���'U��P�}V=:�j��)�RKu9_v�Gw~ȿ�{ �ŏx�]Am�!�7в%*�8�#q��W#Q���U��"��e���v/�;��bǼ]�&R�d}��.e�%J���J�B���[�k�2�Ī:��>s �Ŏ�lK�/�,�wJJ���9D�����Oz�7ެ>��:B;^�=0���x�Gk���X�<�|�<�D�Ia%IŇt����ukWf�ٵvm]�Wb�صwA��4Jb�{������Q�W+⫫⫫⫫⫫⫫⫫⫫⫫⫫⫫⫫⫨��T��7�Y@� ��I�!����|1c���Y !10@AQR "2adqr����BPSU��������#3T���Cb����$V`cs���4D���� ?������Q�7m ��dJ�r�I$�?�Dž�L�I$�I��|/�d���/�d���/�d���/�d��fTY���Q�f���G����5�j?��Y���Q�f���G����5�j?��Y���Q�f���G����5�j?��k yO�i��N��;�~�'��.3�<w��Oy:\g�x�L��t��D����8Ik{}on�eD���ο�#����D0�� ���3����nb��-���.���K��O�i�����햺��S7=i����x�-�N�{�f+�1��)�ç�㏶+�ǥ_���졷E�ı<.K���=ߐ+8D}Q���Ȩ��� ��� �a���]c���]���j���V��ގ?�Mo�on�%�Fd�&9e�*%������zP �:��#9�S:v��6�&l����M�wZGF���(oM�u���k*��A��E�n��1)��M�k�t$*�م��h�XoUQZ�ك�[���(U��p�[ä^^��Isqz��Y6.��?�ި�m���Z#�eEV����6��5*��nn�@�|`�k+K��֩u)���E*M��~���7��FY�C ,�puU��SXʥ��䥭�* ���y�C�gk���)�Y�7����!Vv�xj^<6�[Ʊǽ�0�'O-.ǥ�z'��_���|sc��]Nb7�s���<P�Gе� `��fs}2M4e�9�G�-[_�2,��0��v�I��5xf�K�����o;��ݑX�)�.wo���e�V̲ k��6�+ �º�İǛ��Q$�4\��f%�����6+k3�a`�-�5cx����2���JY�2���-�I�,owq$������S��ň�R��"��甲�L;U�u�W;��R6�Wӏr� ?��W��%�_Lg�f����5�]j��15��w���$'xK��T��9�P��p�� a�e���v�ഉ� ��(�p]`6M��R=;���j�)q>�0�p��Ke�6����i��!]:������ٻKk�$��l��Q1|S�Hp�E���c���"�].3�<w��NG�H�::���0A��1�c?ެk��M#���eV٘H�������h�%H�� +����>��I��>�B���R�ܒL6�RF��P�@�4[�B�#{�����味9SX�/��؈���,�|� 7���;���v��pe�yV(�;wI܀+��J6��x���.�L�I4Y78�Y��I�I5�-el���H�x��M$�JŤ�F.��ibu�]Rb��h��J�h�J��^�bw��b8w��]��]2r�61kh�%��Qs(Ub�VS^Y�1 �q�\�|�Ͳ�s�Ţ�!¤������r�yB{.��;�~�'��.3�<w��Oy:\g�x�L��t��D����=��q����2p�E�"��[w�GǠUԖ9@f�le x� ���:�#����]��1����rPk�~�/ݬm&�_�H��u��]��Gsz쑼��*��b��%^�S@�)[iew�pH���Wo5Ĭ ą�R���_�X&&�z�_�HѺ�V��'�ç��e/�B������ 9�a��i��5:����:�,&^��D�~�G{G��Ō�]Z��GwP�e5�DvH#�����̱�nبcW�<��<q��f�96jx�q��8To�K)�i%M��YLư��Z0����c��s�U��\:7 �bG�y{�Q�G�<[N�f3Q)^�6��)��x������e=�{�Ӳ��!�&�u$�����s�>�i�0;�]����y���G�2��Ƭ���S?vm5��Ac���+$w*�M��7)�ݑg��##,=�A��v?��/_[#�b��W���tT�C�[�ZZ<"-�\�|g�����Z��ٮaM6�pH���s�_�j����2$�e��� <l*F��kIXd^ *O|l=�s[�E�\D��B�Z�D��4q���H�zm6��@�5�Xw�$n����j��ӈ�_�� M��Y��̻��cNY�n��q�cA�s��M��fY�2�ΐM`�7���M�;*�@}c��5(�í ��뮐]-���ժ\3j�B����hҝ�](]&{�g�9y&��#K������! �v�h4Es$oq�Ѹ��I���[�Z���$v��j�;�Q5�ګ5�|Uw���>�]���Gf�겒��"�\l��4Ѭ���&��u� C�X�-@/d��w�m-�TdZ�0�� ���v���vIf<�*ͳm]i"6�t<�¦�&���^��%���!��Eo��q6%���B9��kE��$B`����@眫��y$Ta.mD�9�����V�oin�]����+� �0\hwwWwR}Era���kS)�&FB���&�8��G�:W�-�%��+u*��+h��aQ�Y��kL�bb�A�1�TrI����qt�� �Q�?�¬%���Љ��WcJC�>!��kI��1��A���lM��@��۰�Ğj ع��RM�!�"�$�w�[���_$Q�6�Ei�|V�!i��h-��T�9ɫ��jg�����gZ���72��,�h�Q�wg����-�������.��ĤH4�x4q�A����O���k��ħ�:\��DBHj�����9r��u�gi��k+���Q\�;ݴ�.� �Z����lfgg��Pcher2ryR�d���3ĩ3�C請R�%��xgә��1�{�*��2�ă�ޤ�kKt�^2�Xc' ;���uրww�r>�" �6���i�jf7ȅJ���,W�V��p��2p���'/4;�SGd/���#&��3��o�Ю������j�^�E���[�m�%��ͶiTad��/n����D�O9%�c�f���#e6���F�GP��R� �ͮ`�y#�)������R{�I��#��0*O�J����&��w���5��`���r$Hą�FL�$t����NU[h������R]���.��kw�(�hm"Aoc ڐ!$��I��Ss')߿V<�`X��Eq$8|]e>�p!�J�����`�1yY�ҤQO�W��4i�|��g��~�MX ��E4��GWv���u1��/dӌ�iL1�;���e�+ ���s��:��HV� %�rsϡ+eHlVy�fnR�H>E���.�KKXa%O)�\��ĚX���%(�ˤ �-�����-��n�i�G��{ۼ���j\���`��ݸ��M�� ڎc)��?X]ߎ.�+�m��:@g�qc>�D��;�ca/q���ʺ`���d*�� * *�7�ԚQb�ROo��wA,Dw��w�{ϱj�����˯4w��#��r�_�!�<�*� IZ,��e߭�Z��6�BS�o��#i���O%|wu�q���4u��-�v��=|H~�+��|�e��۽F���7)X��Uˌ7�{Kkpݠx�I���Uӭ�)+�wnI1�(Hl�@�F�2����9�</�d�rt� � "��HVk�!l�B�ռL5��{Km=��"|r��d���c�!+�RQ��v>�&���[����1P~���VS��>�u){��O��:[�&IVM=�/0����&��w���5�Maq60�<��Fav��(�v{�&Iw���W$I5o�D�mF��VK�xs.�����hA�)���,�*��ԕ��w�A�I�FJ�s]J^�->�`��5� �&I'Y7L�t��;�N�M�7�-aV* ���,���[I� o.��]����v���-ŌP<f�d�M���+o�4Gkl�㕔��#��U�u���~���o�z�m��S(�h�ƪ�\��{byY� ����I��Fn.W�6��A�sM�=��M+s��Y��w~8��D����x�(q��q�@�1��3Φ�,���ߴ�ɎҭZLO˹�=�ص|qm���##b.t �RU�S1�X5 [�b��C���/�X�&7t��@��Z�4u��-�v��=|H~�+��|�e��۽JGsfI�P!�����A���W�V���'6�L�-�[��1���F�!���ܝ��t�f." �q��9�w"T՟y�������G���ѫ��8K����T��yuS��L`�tK�"X��J��E�ahR�;nm��Nv�a�[XIy+Kqer�D��l�� �V��p���[{�����%y�y���\�(�;I��?/��Ӂs!���zh�H��"�k[FK$��+�p�C)O*�;[O$E��cb��|Uw���>�]�Cb8���{g������E���ι Q�m�<�Ы��� dl-��&�C�b��@�F>���]A:��&��i�p���?��#�!j�I�/}�Ů+I9�M.�%L�{������@$�&ZƬR����0܉HL�X�� ��F�C�J�&�E�$y�KP:a� ��&g��P��^��P}/�G�!W�X^Ϊ.��I�R�(pW2�X�w����'���7��s�E|qm����0i��s�M��i���@>�'?+�uŦ(ҺbdP��T�/k3�%�����B���ja�����%�d��)�"j�;,R�-���sDNa_.bI�;;�[iVAkl��u���rZ�[�ahw�mp��'v��j]���>ū[ ȧߌ[�p�2�5�WU����ũ�If�o�*��}H���p�&a�^Id}r:��@ �R�\�����Et���+����$K����4UԠ$���2xl��m"�%�������٧��ۥ|#�b��ÿ��� �w��)%�78is�r� !�ZB�p�FeQw�L3��ի�����vQǜp�$ݠ$�E�璊���w�����i��ǧ[UԶӅ��G2�Ch&�,"9wif��혬r��Bϡ<�$�ܕ�6�#e#al5�%� �z���祉c�kn��5���ܼ���ݴ��&�e�B�O��=?�O�,�4�6@f�s'!�{�w�'�K�G/h�F��±����q<q��� R��!�w1��xp� hT����X��Z,�2�l�!�h�R(�e9�5Ec�{ o"I��#L�6,�pC8R�.)�3Y�̒v�k���3X�,���Gx��c��8��Ǯ%<�EI�DHm�P3��!z����x"(\duĊi�$F���R5��Eb�݄]{�G��zƥ{� �{@(d]�D�>1X�]ډ�a[An��s�� c�x��C�H�fL�+d I�o�F�Q�I�S�;�,�e���v���2��^��$���KT�!�Gncs�� �-�U�5���X�6a�E����`�Uķ��RM+�w'���wn��uIw�� �v� uI�6��]Rz���V;{w9�K�E�>��-tM\�ks��x���Ua�V#gp@K-�zz��X��}a!{C���,ARV�6j�:��+��H���,�Ed8�N�5�u���̯��6�f,�WEb}|l����à%�K�H��5�������C6��=֣喑�C�n-��b}�(tS2�e��i�$F����k��Ţ�D]{�Y����93χ]Gsf�a�X�j� 4 ���ɤI]kol��H�w�����i��N�f�J3�&�7�S|��.E]ÉbRG�������f�r�QN�I+�wc�fc�$�!�=�� (P�B��+�����i��N��˘p���snx_���Z�s)�፤l�Ӓ�k ���HIm�A;5�w��D�������@� D�Kx�J���A� ���/t-m��/�5Ԟ7@f�l��_U:�I:�u7ma���<}�m��kA�WK���C�")fc���8Գ��H��m$��n��]oyi�14�:[3�,��Q&zhZ=,��u?{-��d�wH6��tÃ��OK|F�+�RY�U��h�ѻ!�fjr�O�V��ϧ�O�k�v��ˢ[{�6��NJ aז��4'�w���Nm���8C�{��.����I�O�p��|�)�3V��a�{���� ��Hr�w��h7[��=ŴZ���G|�Ə+k�C�L�4bUɴ�aR4�M#I,�sgw9�=�xP̓�n�a������[T{ۘ��,!]%��G5TZ���Ց����%��1 TV�c{�i{�Z� )�_���M��f{w9�$Q��dk��o�<:ke��ܠ�΅ �����T1-�,2[����X��{6О��)�ng��)�E +,kK̗�����{+�`�ʉ���>3v�g˼�4Q4���~i;yO�Z[�o��Rd��@�A����X��Mغg<����߈l~�W��1��}����a�ۡ\��?$-��\�'6�L�,��5��~z!���.ȳ���P���tn;V�?��.���V�.O�[��T���C�8cԒE��Ӡi�'kxW�H�rQ5h-���r=6�)��v[��UH �Ԑ{�@�Y��ĥF��&YkZ���[��c���J �g���rnN���l��Z|�ص��%KG,�X*�K繀�ne�G��F$�X+������{�L�� �2��u6���*r�M9B*�k�"��3���D���w:���a���PĨ�!�*�m���y F�'\K���z��#���g�7r��H$AM��Cw���H���ڽ��'m���tN�-rb�B�^�Db���ǕE�#Q%��G�y���`���L�2�E����8�m�i�'����R�� H��Kw2!<�u���0~�6#�b�&�� ��4�s�\GK��0QZ��L+!�Ym��y�*��qw<�L��<�Y�a�qy��O3�@/,A��䓯\��:&��C����*�{�tz�173��t�i���|�M�.։�r�5Iky}S"�RU������keGk�$I S���<��qHҸ��++.�4�-�1;�!RK�JUFg�*�kk+�$���%�T;��V�P��L3bO��{�\�K�(\���%�a�5�k�;/����I�:F�!��#1�Ѥ�++�D�ke�ڵi$15��݆��̺�F{o$�A�T�5k9� æ��>������]6�3$}ѤTW����43�\Bc�GJ>JQ�R���|���%s��s��NM����9�o�!�#�;�M�7f4���X��u�{��,0�WdlW @�Ftř�,��I;I4�����Dݨ_L��q�`ΰ��8Pdw� �<�*-�=�����CH�4v/{h��۩� �@e_]���1��?�z���햂�XbX�!y���t��-4���ܹy2� ;۲�� qn����iG�����{{�Л�#Ǒ�"��I����{�'h�qS�[��$�4g�� ڣ�+��?�W��_�]*��o�;��.�u;r��R1� +������5���"��鮭�e�Ma��V%�0��U�9#B�&��:������w�2y��4-q0lg�/�Ϧ&s`�K)��6Q�ב����1�����J��ص�yG�~��r7>#��it���&�y�Xv�����,�W�1�Ɇ�㖰+�Q�~���Q"f���w�j��p��L�WD�.�v�ohؼESn�'P��l��w?g�힆`cw�n���S�l�[�g�䈔*r�u/�1��-%��1:�:y�x�(a�)�q��c��=/�� x��E �P��,��W�1����+2�7�J�=�ۯ�K�����<]Y�פ�4DyYRiA���K�f��L�p&�n�q˼A��ף[Z�>a�r�]��S���s��NV0�ćb4�t��jR`��|���8A��v��I�3����[�Q��w����9Tk$�eg��%?��9��Wᯌg�=�}}��?��e��Ȼ�Z�C�D%��85�������m����D��1X�ŧm�����\m����'h�s I��� ��T��,z�xaי��|�5|Mu��ү����s�<�]K�o�WSA'���&(}�u1y��Od�_�s����G\�t�]�у#)ȩ��ޱ�)����c�%���7�dBY��L5>������3铹���"����Y� �A� �����'�yӶ�֡���%�}��� �1a��憧V�+$x�J�� ����l��w?g�힆s\�Cyc���**���}v�]��U�+�"�=Bᤙ�� TPCqw��p���w�e�Iص���5|Ie�B�h���|D�a��W8D�g'>���D�I�����V�|���p596�<b�9���>�ѭ��-�ȗz]7�$.�!�5�_�R]4��B?����{>��y�</�d�m��F��#��w.Ru��gԑ�w1�*�<?�sT�n{�-j�X���XʳAij��h�;�$j�bx���� �{~�s;ӈ��g����� P9�+M]�K�.���GL�9U��~Ѭcp�Cf�^@94�.�6˅H �m%1���S�2���>�k�=�.��-�I���dl�A1��#iV�± ��x���dQ�����?o�Ѽ��i�"�axU��ope���Ϻ��&�1�s �m"xW��_�]*�J��&�����m/-�Kh�4ts����C����E���d��W�+=b���� �똥Ra���u�V3o%�0&��92w��DT� ̑g{��3���Kt;��d���$��ՠ���v4�ǝ�1gv,�v�u����H_�/#��mt�Q�| �����q��Ԉs���X�-�_���}��b��ϩ�qȣ��r���8�_I��.��*�;V�7��<�-bH�"+�;� ���B�I�M�ic��v,�����T�<���z��0�b�$�=�v��+ `�T8z�i~�8�iH��z�S���M�����,I��2y�r��5�%�� ��O�5�}��0c6�W���}ZB��v�͑�L��Q�T��W�F;Y��M]=��[�q;�r�@�L�Ij��x%�[Y��ev�ufWFP� c���s��N���q��M�P?Z�W�{s��97���0��%A���:�Z���[��l \sX�X�����?����I$b��K3��N�w1��� P]�'��U�l����VX-#X����"��б��mc���NP�h�1����n�#��]} #:J�0 �F�X�]X]ho���z[ۉ��5m��C<��2X.�nT`e�W�����HV)u�L5)��9�v(� m"ut9�)�u��gy�<]ej�h���#WJ�-Gb��dYb�;H �����G8�C�MAPs���DV4�PFD��g ym�V.�q�!����ϭ�;;�gbIbv�Oazm.�O�$�h+ `kk�M�%1 �M���I��{���8aN��m�B���I��n,�7�Hh�ʍ�SWv:_ ։�X���&{ڹ ��E����b��TY��G�X�Y���B�9^��-byP�[�t�b�KH��2jM���y&����1f9(fMb���!��� !cϠ�{�8m��TH�G�V8�A-����C92I�6���]\��� %$ZZ f��c�խ�)���h$c%�d�9��f<��T�7�Y�:9g��X0���Q���|��O�ص�0��m��܍˷���� ��� �<Ư��[b�#X�1�X�3���~�'��.>`z_Dnw��.� �+�4�[L65-!X��Hb�!���_�O�<6�L��t����s��Oy:^���~�'��/z�G����i��N��}#��nx_���'K��y�</�d����_H�<۞�2{����xm���=��{��<6�L��t����s��Oy:^���~�'��/z�G����i��N��}#��nx_���'K��y�</�d����I�er�bc�`���6���+�m � �{Y"L���9�<6�L���mu �H*AR �T��,��v�5뜽�Ӯ��U#�u�E�" �&�<�6����P�˨-�N�Y�X�yW�����[/Zc-�ɰ�ں5 �8��S�pI��55555555M���8֠*s;�a^��.s����:��W)�vFݫy���#�d��� :0��H���*����� Ҿ��<�'��*���ʮ�����ς��Ӥw�9H�J�o����m}�&���\N�5��8\d��b�+��_��Z�c`���k��]��Z�w�n����ۿŮ�}v��k��]��Z�|��u���~�u�����q{s�咦�l>��2d]<�ш۴x�M�?��8�kl�wN{��l�X���p��z�j�P���-�u8�9VE���s��D�_�s� ���t��k��EE.��w0�=�wo����&02� +�r�A ]HuB��͈�& y!�d��t�Xl#a�U�B]�x�j���ٷ��ӆ�aV�m��S���d&Uk��O���WUv��>�_�]R�����З��T����v����%���-��/ݮ�m��%��� ���k�>n_�J��x�E+�S3˖�h�aF��#�n��N1����Y��ݎH9@(�)��zGeJ� r��ĸ�����".�g������;�BH. ��*��r ����>��G]� �l3 �x4��~es�a��i*����K��&�3�-�D� �;�d�n���ጘ��>{�9����w�~%k�#�ђ)Wa"+NL6�9p����F��l<?��~�'?���������� 9n�0-��>k���}OV�;,jS&��*^��a]�2���?��7x�h�� ���s�����x�Gqy�]iu���k&3�i����V}~bR�+���m1��2��������%ʹw,-�m� RJ2I����s�N�p~�2qs�%��<ax���7q[B�ڕ��{Ö�[�YAm!)�����#��.ކRI��bܞa���V������ݒO�Sd�^~���_�&y!ю�A�s�e��JE���y/!N�D)��9��M�?��8�����G�G�pVK��%IuWQ̶��m2j9"*�Ð��h�T�%?S���X���xS|� �k���$���]���y�r0\S E�����%}r��X���k{m5��̎e26��m�X��,@fs�5�s�N�p~�2q}��G9cEK(�ɘ�-�w����8-�A�I$�ETw�4�������E$˚Z��S��u�퐎���[�,!؇�tB���"oHդV��`���=I<cJ5��B�x"��.����sap�\هP�J��V(n&űs��"��aq[����w�.�@�M~��{w<�'+�r�l^�_Be=��7>-o�<?��~�'`m�t���M�&��r�ϸ�,�c��ԳJ �A�%g�☄�:'�,�J'� *ͮn�>$��$or�V�cX�ջ�{{qdѕJ�P!�R���OSE,s�v�ˉ���0��I�p^���a�L�u��7|�47��S��0nEq|�@���`����e�%G���`c��j=��n-��Ӂ92�A�"�ў�'Pۻbɷ>-o�<?��~�'`n�6�=�jϮ�]L��T'P=��4�.]�>z���ŭ��d�M$P��`�Q4�na�w�$cl�Aa5l�7����}lǑTkc�(,�ӄ|O���%�4k�E���;R�TG}?T��(P���+5�ݤ[��I��uku�[꓂9�>d�Ih�wX5�uq\�Y?,��s�N�p~�2qR��j��:MN..�%�Rs����17K{u�i?�r���.,�C#-��h�`��+x�i�o'�t���_��xe�$�{4�J�A&��.-��Slb��#�0��܆y����y�r��c�9NB��Z�)y?T�T0��A�+����xВg���i��>!W� �n-m����� �*�)H�;ֹiWs�^��|[�uQ�96���&��W&��M ��M�?��8�M3�9�9� b�Hř�)4g��2� !$k� 6�Hˑ�B����mpTGq�;{���Zχ��f��Ѝ�D!]�y{#C�`3�v�hn\�6F"s��·�]G\G!`��,�����B=##�w$he�� "0O����y�~o�>d�2v���5����)4-� ���#P����#��S,�����9�l�R�1��ڛۜB��e�(�ր#2T�I� ���V�K���q$�z�d��~�`�����Ճ'�K��O���V�=/ެ>z_�X2|�z���B��,�X�C5Z�N�j��ιT�F�C�:�R=�C,Iqvt"V��d�C��ۃ�i���TE,��H�H��EEh�t6˵#?���Ld�M���昳1�N����(|�_��S�` 4T���<�+�U�fMB���jE�;_p��wZ7ů��âa�m�)�W�y�i%��fws�3����6��(�d�@�i�ƭ��ߍXշ�[���~5cV�AoƬj��-�Ս[}���o���V5m��jƭ��ߍXշ�[���~5cV�AoƬj��-�Պ�2C֎Q-2J��@dn����L�M�k����f�W3�iە�A���A&���9�a�t8�^�+��?�'�S��g�A�� @��\�1PI&�&�pەh缒@of�� QQ�s����Bsp9ԝ��i�#T��IV;yKm��r?Te��G+v�D>QS�vP�%�� �s�:��5�!���@�� �'��|G�����k�1�=6�/�d�z�^�ɈfG��6�iX�������`81�g�g4=n���ґ_�ڦ�ɐ�+RJ�U�]����:% dT���ٕ:�F�@�vo��H���6�qS�6_��.nW��{���&� �<�x�,M�̏�]mS�v[D6��"�-"�-"�-"�-r�x?��8�Y\N�g�S�C)nTH�܊?��Vr;^�0�v]�i���#�B=n{�@�AV(s�T��#�)T���C ���-�H�G˨�#<>��8���r��q��D:�mQ~�lJ�49%��jy�71�~#��{� ]�G%]����S&��t|ⶫ*���{/��������L�Ll��/9�Ք:��)N�,t�(`q��*ԋ>��\A�rPJ���V0�'#*��,S.��!e9m1��c7^^��v�*$��W���0<����b�����O+�S��r�@@ �,yy����A��W�C���&�!ɔ�PE`�ʹ�a��v�iW\b�� %ܒ��٣��B��^A��WVD#1:�p��<?���A��PAڤl#�����h��V��AN}���{D|S��N'8��JfClq�_�V���0Þ)_!���`*�(�����ΤiyD= *$�9fH�4��u;#�VS�l �>9���NHp�+d�ʬN+��!*w�y�FȊt�#R��B���$�� �(����m��ř�$��$�iH���妢O�n�QʼΡ��Lz'1蚜Ȁ��#GHw�q�@6��� ��|��J��zDɅM�[�s��F5q5��DK�ʌg�R*��`��h?.���?@��I��i���#��2qh$��tFyx�%L#^X���v�P*s��>2w��i�C��wg�����[�X���vdy���-��?�Ԃ#o�!�m$-ɤ5�w��T,�N�uշ�(3��VQ���͉�Mv�pG$E,ǘ �m�s(�8���^�m��>)�~�'�G�>�;�Jӷ;���)lU�;�������Ti���h˅A(ʯ[�����=��'Ϯ��5ثI��mFE`~Z��:�qO��ϼ(86�ri�\��ʮ#���PA1�o�D>"8i�gĚ�X��u��G2���2q%,�@P9I��\mj����J��_��E2֏�Ei��&�p�:�^�SwbX�Rxj��X-�h��F�)�./'��~�ṟ��0 >Eb2��r���R��WV��Z���>��Ն1�1���ua�}%��c�-]XcIj���KWV��Z���>��Ն1�N��.���f���.�9���2q%��D�^�nf��b5�D���3Geo�[�+v�����JHS� ��u���L�G�����4UP@8�U�u-��4�9����N#�TN�s�p��6c�Vil��|����i����Q���Fd�f[��aH�e��@ �g��jT�`���+��]b�=���+��I�|��ʓ����&%��*LK���T��ϯܡ�����Z�?�h_���~� �� Cy�P�} �7�H5�����Kե��^�n��.���R���`�P$��/�i���ϗȣ�j^V5�5e��>I0�g�d��d�٢T��</�d�<���8��5�n���[������F�=k>���>��i����#���^z�N��dU'�r�0���|�����o�d�Ìx_���v��e�aZ�75��=���؍P��yO�C������#�Tj_:���q+�#Vs�=�*<c�x_���v9d?�)��t7hQ�&�}�@9d2y���7�qvw��h��<���T#�x���L�G��Q����U�DQ�Yѣ� 4w��u m#�6PvcS�4�����Ռm��H:-�9c���4�[[�M�Y�(�{-d��sļ/�d�_�CzC=���+��� 0ᮗ3�u�CRxζ�g-��X�xu��rl�e'��>���o�����'oe��0��#%��̓ļ/�d�[b/�_W`��b���jsL�ɤQ��FNS|��}V��նNl����� �� ���`c�1��\��rF��0��.f�`B���Ĝ�Hx&�,����e�A�/��v�[#P��4����_��ĽĨ���<6$��H2H�<�\�#�:�ԝ�H�S�m������Jk</S8E���i��wo(����"]�"`��hCO$�̨3&�ӻ�y2>�I�W�5v;V6"���0>N'�~�'�%��T�N,2��<�l��Hy�/0�Ra@�ƃ%P9F�#��sj6�.�W��2�%nwl p;��*�r ����!���b'�eQ&M!��x2`�/���ۖ�o�R�m�j[A��}ڞ���S�o�j{?M��Og����2q-���Χ�9�'$Q���F#��@;�+�9'�á�R5L�BQ����NK{���x8�k��'c:v��q�;�&H�)��p�j�d�aq�C�j�]��c��9m&��8�d�ʣ��4F����Dz�!�~�'��1�\w`��fI' *�B� .���<˸d/�4i;�pN�nV��ܸCv�����69{WV#0|ưK�$,l���6��j��gm�呻Tv"���1gc���;���[.uz��,J��V�a@|`dkcj쿫���C��N%�<g�n ?E�S��m�Ļ�i�z0G�NY�k�͍6���5伲\Jt�����+h�6��(��:�q\RN��={��2�5��t��n.��&���汍����a�z�F�lR��|����J�0l��rnm�|}��%��ȧ���i��r:����0���A�>[Kg�w�ddVD�! Α!���"�"(�?Y��,>[��p�"G�;S#��=�k��|�.F_�B=2N�F���^��t S�4����_�HH�N,@fI��RLV�Q���عVF�sQ@;x�T��w'm��n���;�4ٻ�0�q��8�+���#[ǹ͡�o�F������C(5G(UaZ��r���6�hY���� ,q(ت� (f {[I�����}�{���P���yޯ�3Kp$11] �rα���5���~��Mc��J�e9k���������������������������������������������!��o� ����t�^AVw�a��ON0>�MC(��EC.|ʅ��a��(5kq$��@�!I��v��</�d�/E�KW�˽o���G5�WT����uO���T����uO���T����uI�#�X�X���b������X���z�=_��)���OW���z���ol�ˤr@U�-��`� �]in�>��yv����i,����?�$�D�+v�4=����F��֮�،��^&�Zl�Q��@ ��;y��*�y1��V{7%HP�W)@�V%l�j�шm �y�rj�=_��)���OW���z��S�=b������X���z�=_��)���OW���z��S�=b������X���z�=_��)���OW���z��S�=b������X���z�=_��)���]�6\��f���P�V����k�P�V����k�P�V���N=��C��5�z��S�=b������X���z�=_��Tz��h��y~�����k�P�V����k�P�V����k�!)���}��hioJ[,��x_���\����K}����Ё�y+�[�ìo�n?��U��:�V����[�ìHȊ�%��e�� ��ԟv��u'ݫ��I�j��R}ھ�ԟv��u'ݫ��I�j��R}ھ�ԟv��u'ݫ��I�j��R}ھ�ԟv��u'ݫ��I�j��R}ھ�ԟv��u'ݫ��I�j��R}��E�k��9��7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������7��Xߪ�~c~�q�u������.e����$Ӎ'xʁ� ��L�Et�G ��k���I��x��������d}��i�����H��;c����u�Ӕy���i�����3yM��R~�1̭��>��_���63�>s�\&c�#�R� �S�z�1�$�n��t��O7l���I����\�y��I�JO#���R��ά}[�,q�͝�xɯ�Ă8ۤ�?||/�d�U��+cG��9T��s&��eF��s��N���Eu�#:s�kQ�ֻ�T�bWj9��ʱ)�Z��|�r�x��C.�����2q�[u�9{]@��c0f�lj �����S3m��"oN}��2U��P ���$�C>�����2qZ7��s�*݈�T���ը7��B?�~���s���1+����ԥOE����`:CZ�����Sy���i��{��x���\�ϒ�I:k�v]����>�_��Ď��[��r�Nu��R9kS�vØ���y�/�d�g�]M�T2��P,���#���Ø���y|/�d�}�jaG0GP%ҏw����|��_�������c%s����������L�T��c^5�ԏ�42 �G�x|/�dሢ(����v�|��u3����3ໟ�G��_���lr^nR�=�¢d<�� ��g���x3ڟ���_���r�<=���{a��(��%O�֜G�3UOm-|Kܪ�>��<�{��N��9�N�c�H��(���O��Pdc�c9�����2Tmō̐����Q��h��{��� ,x]�j��Z�p�y�i���N����`�Pe�Q9$��>`x1��$�5�����z���*A芐z"����*A芐z"����*A芐z"������7FY�o�i����40 152@!A"46Q7P3BG����e�&������[�}��#��J�I\I+�%q$�$�Ē��WJ�I\I+�%&�(��!�T>��#�ۡ������V� ��}�gg2mW9m��~���_�j�+�W��B�d�̷\Ϙ�F#s��m81�Ef��3�5�Â�rx�;U��+��V� ��}�g ��*�E0�bѣ%#mg��F�v�n�H��ͯ�R.Ev�)\�q�@%��B�5-��(�,�F��o���mlC�}#|GU�CkbeC��:��[�*���%�Qi��q��F�TĻH8�:�|��!2��QO���sH ��/V��Y����5?"�슍Gk;�=�Ķ�w{�i�c�)}�G�'��H��r��c��HO�5�T�Vؐs+��W 4�z�+m�)����>ʇ>���~��?a��ҷM̝�l1<[�ێ,e�v(���Ά�:g��n��j��;~�M��oƸ��͜JJ��-�ee`�A<�csI�8��Yw:�9u5v\��ٹc%{B������VJ�BZ�3T7Q�5�N�|�BK�LO\���t��&�\U�c\��w^4��@XM �Μ��.�2VML5|��]9{��]�gַ��=�n�ao�(�����"�5�5�5�5�4S�beC�)�p��k!}��21�e��K.`!p�c�Ѯ&�I���Z=�6�]���aA�JZ����K>��t�3� [�&�Ĥ�;��`n�uh�/�4l[�-;�Y)�37�:����'2�3PY<�^�dY�_�'|g$�o�N^ݲMn��Q`]��c~E�^�m�7��F?GIc^pcpa��W��X���|Y�R��qi!¿��\��X��P�vɛ�'L�!#�����۷ȿ�S���;���PY,�.:K5hђ@�U##VtWj=��� ��� ����0(챑�]5�6>D�+�DŦdL[����[��ٙ)�<S劳�L�>K�r�.:8S��������j�(�)�r�v��tI�C4'��T�M�"TQF ��M2`���Øs�beC��)D�Q5C2(�I � �>d��������9��"��$1�B���ƈ��S��CT��lBdQ�ȿ��*� ~��ֱ��̲)�ED��Υ�v<�ו)�k�8���жЦ��+�}ȵI���}S�<}� ����o�l��t������'�vӕ�[v�3��l軂)�;jbՄ�|�:ǻVUҍ�]�*�ஸ���M��S�Jk/z 锅>%�80g���݉��i)/5o�*���Я&�I��d�8�g�[�Sp�Fv6)��a�J.DUŅAH��NT, /uǷ�J!Y��>�q.;؛j�`ʼ`�'Z�>ʇ>&ƔbЗK"�co&ꭄ�gWs�I��^�yo�V.�c�W�)9�-�UE�u)���Y�%aћ�^[�m�#*Y(�<%��5��ejܸ]3ڠ��ww2�V���;:�[�&!P�O��U�n���]1��I[]�f^��2��Үw��XD����%���Dm�QI���#4Q�L����W�e���|���C�!:�!�T9��wS�N6�c���d�y�FOμ�>Л��BV�m9)96r�2�]�?�-!q����(i*�iqF�� �"5�ij�o��U�e���pv��0�)i�!0��<U�2E}/W,7�î̶e����8�m��v���-��Uj���f�Tn���k9�Nc�mK�}���j9�m�YKV�hR?�my9�hƉ]����2-���H��8h�����K���6�NBu�C�}#|G�O�m.(*�d�I��Ӑ�k�*H���Ӑ�k�*H���Ӑ�k�*H���Ӑ�k�*H���Ӑ�k�*H���Ӑ�k�*H���Ӑ�k�*H������p��z�����4!�Y0�*88�'m�JL2:�7[���Ѐ�]�+!��� u�}� [����;�N��E�p68qH��B��9&�rӒ���,n""""Ѻ�L�����c]O��0�)����oxx ����R�r��C��*����ȑQ%�Y��Ym���.�r��/&(A�L��)�:1Σp-�4�^0H�k��i����P�ŵ21��8�\���T�Oɋ(�O�Wcb� P�6��=p����5d��?0�/�9q������J\j��Ð*&HÑ���{ %�Æ*�b�9+�Ɔ�D����W?0�/�9q���}��MH�� ��7�_�ЉZ��2s�J�Ɋ��"�4WqMѳ�+j;���4��\C�i_7?�c7P9̡�s��]v���ޫ97�4rc�\e����.FΣغ�z�F�,<�1�=����ص)=N� �q��SשO^�=���Eͽ,Ȅ�/�9q���yH/9t:�MDU:JQz� ��t��yx>U�Q�\"W�W`W��`�F�]��Xsi�K?1w����:�lg;\:�é\:�éA���>ʆ�G��̻U,��)LX��rD<d�=s ꢣK=M�U,����-�b?�~I9!(f/$Djz��!R�\���;��(���6��w6[��/K�*Q�mc$d�!1��ܪ�98a����d{&F*m$�c���^?�u|�[B���*��SQ��wj���"�� j��q >+�����Y���E�beCI̦B%AE�Ts8�"� �>u�T!C �ИMא�2���n�6ޖ���($�}�')6�1��s��{G1^��W�s��Xʴt�G�*2��*EՏe�~XضqH�&����Pѓ>��H�E$W=sC}AW����PU�:��z��y ^���^�T}� "�O�*/�����A�����\T��Q��v�� i�eCFH�;8�?بR� "#��h�e�,���M�G �G�*2�$Y#�N��պj��5c[�/�ER���1���D[��������.�!�T4fI�)��D0*��^1(W/�V7�DG�$��-�� ~h��)�ܖ���7Dv ��36�!�T4dI��N{��,B�٬~ 5P@���e ��֥�P4�� ��B��u��4W�2�9��!�T4\yC��$#1M�2��1��Au�( #~J5+��s���H몚I�hF�lC�G2'IE &.Ҁ����*'��C�ԃE0��~�qӇ�Xxv� �4�cD|駧dGqr�9��4�]�U�&�F42�����>ʇ3�(�AE���^��(�����5��5��5rJ�q��h�;��X�<t�1u�fF�Jm��e�\e�^goי��v�y��^goי��v�y��^goי��v�D\��"*�r�cnS��$%MK�A����9�[�DJ��m���D���R��*Ϛ&��͔�������d;Bw�+�+�+�+�+�+�+�+�+�)�� �������o��j������o��j������o��j������o��j������o�+%�rbeCE�⻃�M���P��US)�����=9Rd�^����jx&�x�Fd�!�#g�n�$L����>ʆ���AC"�:����6A�(� ����d�^�EN��7e���`�>�!�T4N�P��t�M�9�9�7���1N��beCH��U��aNbeI���03��}� #(@@uV&Fϑ5N��T�*��5����"Fx?Ǎ�6���=x��E9 �I�9Hs&`1RT��0��>ʇ3�D����:����`>{��/��2g2fjR����P�V�%����9@����F�L�*��*ba���k��Ƽ1�k�!2��p o��%L������eB���G !1AQ 0Tq���"2@a���S��#R���3Bbr��P�Cs���� ?�Q@$ ,v�;I��u��7���'�����h��h��h��'���w����7�n�����2����Xٱ�I%��e�]��c@?�ˇ�vRĠ�g@n��q\;A"Ja�2�c�W�-���183�23X����$ڰm�oFY�G*�X��N��a�y10�2�D)�X뾋V Y�x��fX�2�,�ٯ�VI����tB��l%����* ����iV�.H��Q�̑�:�0���{��nq�te�h�M�0AC�Ą"�\�&.�w��͝ fv$��njl(�u��40��Ă���]5�җ��q�e�5@�\ff$R��Q�Q/��_�s�-���0�� �d�s�ݳ��nMg�#�h�)0߱B͘�h�O��&ň�2�ĊF�EO,��,1e6l5�(���}q< �[��'���w����7?�!�ک9P��{���ce�I Q �,��eA�.}caY�9�:f64�C���!6����y�$���F��a���"�.o{h66F�ǻ����dnt�˙�r�`�K��� �31O,J��IbE���5�@N���f�TWC�Ň�Dix��Xe�c�P��n��w�*e�2�@��ȫg� +����IP�1���tq< ��3H�7��37Ԋ�8y�d�(+"]N�sLq��h��5�I6�_�D�b�$�s&d��m�X�b��K�[�o �)m{�&�G���c��_B�5�$���d�e���ٴ�H�`�R��s��`v�<���Dl�!�7�<#��ǚ ��e6$i��kW dpdy�9UZKo�Mp��9B�L[1(mw=�V>LX3�H$��urMcN0���+6B�C|A�T�aq�Zw%W7�,��TɃ���Dr� ��ڦhHʬ�� �+�q�v|@�iB��N�Ŷ4�'�l��p���%��+rV��rlE�8�yy("l�.�gm�:|"�"� ���E�c\4o��r��M��jg��9NW1͟��k�c'lJ��f2��55L�J�3;�f6��I5n^TDN��ō�@W��˃yd¹gC%��6���%�A���t��Nh� H�$�Ѹy1����+�k�P�l!<vҡ��>i��I���Jd���a��*F�̡�o��6�2X�����Ұ��J�ƹ�&�X"�JHχ'n����*H�i��,H>�� A4��դY��hԮ�sN�p�!l��=_��L�S������@;Ȣb����A"�ٗ妜�F8�X1&��\� ��a/.?��I��O��Ȯ�H:K2�ռP)����%� f�l�E���-$�U������"�Y���m�1��6P�F�)݀�nRI]N�B��� X�qG���ٳ�y;-_�'�W���K)0�vS�NF)�&Gsr�2�Z���:�x�S�� q�5��X�ju�C�i�/$��W^�P��R.;�s%���-��Q����#�� �A$��-�V���Y�%.-��E�!F�"�e�[X�߶Ձ���43��M`��X� �C(����p��t n����6���+�fnQ�ψ �+��Xu��`�R��Oϋ�.�x��)���"��a!�6����8�8i�-�I���\��ƦHQO� ����k�0�ΥX�WHmv�����"%��[Z�pz/�rk�����צ�H�Qe�*���7 �0 ��AӮ��A�$�;l:����M:�� ��/�ڍ���aG��p��M� RQ�F��`)Հ�oL �ڱ"�eVg��Ĥ �Km5��X�o�[w�c�n/���79C$�U��!�L}s��:�ƃ�s`82���A��զw����3[~�`�i�S(R��bE$�:�V 2X�t��e$��ʜ���m��o�UL���AU��M�9�p�L�ٯb,N�fI����*y��t�$�/��Z�x��2`R��!pI] �$*.h%VA Vr�4Xk ���2�X�ʃM�I�FIg`%�`��#��)W+[x�"�!���9���ҿU5�L\��Bj2i1,�hC���Z�{�&�*��DQvb6Q�p�)�Z���i&3bʈʨ*36QrM,��(��&����)H���f$^� ����I�*�&���o R� �u�P 9!���{�G4��$F��E��������z(s��x��<Nd��]���:E�c��G�`l��yp�Qm�\ #�P�30,5�����/_���Ǘ�4��H���*ҀED��ʡF�ʒ��xȗ�k�U³a�dB�)�3.�vހ8�`�` S{h�5�G��?�k���ȧ4�`�/�j�CQd�����X��x���G5���RE�n Ac���F��4Pσr�'� ��h�s�uv ��[�՚�Z��j�zv%�F�E�[�j�ap�H�Q�8%O�t�nN[�]~#�Ƈ�p��c�e�^���Q�l�癪 ��UM�A=\Os�4�F��!!}V �di �+$�7�p+�Ҥ����u�2)� c{ �q}�1Í�([>���w���H�ՈfTE�AU�Ƥ�b�IH����9�<D�$28֎5�L��,n��U���G�cq��i��a}&��5$�˝LE��[i�bp��4��eE�5k�ZA4��b��k��u� )�����9�{@�*�5�&mA����� %�$��4 T���Ff� ce��@��p�������/ �X_1XA���S$���k�@ �"� ��!h��]SV�%W]bfT#�6�ݖ#Ep��1�N��UuԘt��,͔��NRԐ'�;��ڬ�`��;��a]+�гb����=��D��KK�N�趛�=q< �[��:,k�Ƅ�oH(�*(�E������xܷ{�\O{��{��or��}q< �[��'���w����7�n�?JS�?JS�d���� *�띢�)�l���� [�C�$�k��s�����b�4����� ]q< ��|Q!��s��2�T�7Խ� �&�W#|�� fk) ~�2M�e浱x�V3�{O��Rz��`5l�X&M��8�y�֍�jnU6A*#�W.M�I�3=I�?Y�N��O�35ka�7+��4[>��;��q< �X�g% a�Dz���F,��䓴��q19d��sI a���Xl�2+�ٳ�)���b��Yu(m̤Z��c0�#�:�-����n�sz�x�:�v��k5��v�pm%����/�]��먤�^a��ڧX�X��h/*F[���s�h�n�sz�x�`��c�5��M��z�6:��э�ݞ-6��y�Vt?,��a"� �G�������n��qid���Ū��W����vbw��SW����sz�x�a�x��?�_�LY���M�'�λ��DH$� _���I��BUH��}���+m&yfp�?�>~BBڮ@�x�-�� �����¸���³����-p���k�'�K\'�"�S�?ڸBfb ;;��m#������irz<(��Bhy�(��YH�h �o�#L�+r6�B��I�㑐ʖgSb��] ���>�-�ħ��i�3���A��x�@P;�'��(�̈́�(;Fk�h��Ř�N�(�I�QP�2.�an(˱"�b��� ¬��eK����r0�n�٘�l+��DG:����Q2�����jB�*�����`�9��/�{����?�t]q< �=�y`d���$�i�v���N�Sb�$lΪ�2� {��]������v�/��V1=��2{q���H6�!��w�CEHS� 1<��D:Հ`~F�QF�*���?_�9�{�\Ot]�N�@4�n!�$�W��<��2�!d,.�b ��,��O�F�M�R4V? �~U���c���X�'�V? �~U����.X�� ���u��7Bt����\�p�%�II�N�nY��u��7C�K-�����m�Q��F~�r���1��C�t1��K��:\Opy�b{�ΞH�͓�[;��q< ����q�z�ؽü�ݧ_ˤ��n�h�6���֫��!\����'\Ot;T��h�(Q�ì�o�:Agq�I����Ƿ���n�c[��8���u �{G;w4]�������ki�C������K��_5ʠ�m������e��b�IWnS��l�6l�^ӣ�fl����<R�L�je�����n�j78���� �v�� ��z�1Ӭ���hasa�T��L��H��O��QQ<J�s#I��tb��F�M�j�0��k5# �o�լǴ�q< ����b��f��h� �}�}�����,���A�M{x��C�@l��"��Ǭ =��L*���^"UƧ�@N���Ǩ���z���6X�\��&��X��I��7�R}���R}����G�7�b?����R�5�)e��2f'H$�.�i��ɑc���ERB�x�D`C5�œV]��?��x�?m�$�Q��O��$�Q��O��$�Q��O��$�Q��O��$�Q��O��$�T�b5D�;��ʓ�o�jdt���S��+�T��U��u�@�h�ʱ�ʓ�o�kr�9)5��7�'��łJ�X����O�����E��.���$���'�/�I?y|�I���RO�_*�~�T���ʤ���U$���'�/�M�5�����}�>/��mO���S�����}�>/��mO���S�����}�>/��mO���S�����}�>/��mO���S�����}�>/��mO���Sb�F]�g�<��u^��:=`֦��\Ot�a��>@R��j1J f��0�T(���u��7Cb�uj"�/i���Rw�� 48�|h�{�\O{��Z��>b�#��x��f�>b�Ǹ���7�j<�Z��p��nz�R~���'�Q���Q���?\Ot�������z�x�h�_VPuf�su7�mZγ��Z�s�b����'����4 0512!@A34"7BP#$G�����g(�$�����gt7�"mTMne��]ne��]ne��]ne��]ne��]ne��].�;��wC~��m��3��wC~��m��3��wCsGk_ Mu�G�|�4��8�8�R2#�d-,���0*�RD��(�#y�7� �'�����ޟ�q�NQ���oVoɝl3��/Ao[ u2�H����es"�4�D�����}����)���X���I�j��-��6�f����;��H6�f����;��H6�f����;���1M��'��:1KN��������<ȅ�(ыY ,,#EY8}3(d^���6���ĕC:a<d�K�I�O�F��$�3�-�6�$i j�d�eB��>R���C}����$ϊ�Q)�<n|3��>U�� ���*ɵ�O����s�,��s��G��MR����l��}��YV1sip�o=:LH5 �n�,�����cW.� x7{�$R �am,yr*�fȱ�$�Q���"@���V@��;(������R�`Y���: ��P���ꭡ��L��qbS��8��"�Eh����_�c�r(���[���yS^Tו5�MySJ���3���2�40�Cī28S���8��-ǧ;�MP6�ge��"[�9���]����I�|AZ�D������ ɣ�6b��-��dr�(-�9�����K}�$:�U���$��a_.����$��E�����͊к�cPC=Y��j�����1�x�a�x��;{Ƙ��e{���P��ҵ_413��+1+��Lz}@��y��3��<�1 �G�ok1�C��.�u�Å�+^�9�v3�P�@���ȔE!�:h�;"Ι��ҧM��t�Vv0�2:Κ�<Kl�j���=��b����I�)�e�C� �F�$Ȋ�8$Ι1Sx�'Ό� c`v+-U��nm�ƴ��9�K�������+�R[[M$T�z�6/3���wCs"+�Ǎv=�!?TT]��Ȳ��;4��f4�(���dz�ֹ˱�� �sY�7��B��b�2,:��M�Ej�5��;�Xgt70��D�dx�k�תbأ�-F9ix� -�[J�$��a� h�z)�jt�U�X��9��PL�P$�FY��������ǒϦ�$9�.�rK�q���"-f?aj5(�(gԵ�3\�r92M��pl���jʑ0���'�XH�_[2��8�K(�y��T�2&��M��C��>S�vk�)� �p`(�m�cs V�Vcs-Zg��j����[��t]*l^G{k��&�O-q3kK�|}_=�0��{����5w�}a���+Mb 1����)�i+#YJ:�9���&��^�3�}C�u�|�j�=z��G9eR�������]�[߶�F.�T�c��k��J�V@�校��W����I������<�DK�$L3��Xy�U�\W��X���sc3��.�/#���wCs�`����M���B���}��v�2J�u����r(0`ɮ���1�\P�o�����.���R�d����e�# �ె,��%�襍gwQm\�^ ����=��k�Kc��H\��w2�ƮbӘ�=%��x�AwEP¾���5�$�_c�'rŦ� y���oqʓ��R�B���!���Z���R¶���}i��I�eA�_|�����;��H6��U�9�$�)y�^G{k�!���/#���wC~��m�g|�����;��H6���K��ma��ߤ?�Y�%�w����o�Ϳ���;�Xgt7����w�y�3��{u�^���^��Y�N���n��p(Z�_s��KE��Fk�f�Q��*y�[S[S[SNT٬3��G�O�_;c`�Ab!e�t�j��}lֹY.$�'p$ra�)q?�2"&��CTG�43:N�P,Akc*X����b��}4x����,�J�(z�/.� ��)>�a� �0 ��{���!-JI^L � V��2�qѭa�rj����<am�'|����}:cR�� <�ڿR��)9>���NvxM{�S�G�k��=��X�H��_�wI�%��;���]q R�H��1? h���6�i�Q`�Uh%��v��^V�U�C�e��ۺN�/.� �ıWO{'L�1�TF����*�"0& !����y>�[>cSS��̗��_,/������,R��3��cƣZ��^�؉�-�2s+2�y�ɇ�-\9��[���)d|��i�x�uÝ*K��A�)���gM}�5�t��?��$+��^\3����Uux^�f���z~[�j"��Y�5� e]Xe�IA��]�]f��d�Q�~���a�h�+&����z���z��ˆwCt�I�*+#�`��3R�dž�G�(5a:5tW����ݮ�2ؓ��EUؑ�mTs�6j���%�t�#�A��b�ղ������I�ػ|-�T�� қjyР�-new^&�a!�|�R����mi�X�3v>#�{;I���Ffzh�1_ƅ�����㲼�,U�O���Xrl��S�Xgt7H0�����B96/�ɯ9���_�o�5��F"���W����A(�$܊ �O?��_�j�Q���F���Vy�IP$?G���9��ʑ�/���2l����wCta�`��(cp�Ɠ��[�-�����}p}��>�\m����f�gt���n�o�3���_�X��T}��zS�8��Rt���n�E��ގ�4J��""~7�BS2���F�"m^�� ѭ��=��V/�ͭ�ۭ��6�+�Ъ���o��=k�u��M��D�o���a����l+ۥD]8(��'��~�.�P-OtDOnJ�11yv&�O;��佛�V���];���;��0���z<q�LSș����&�o�U���b�lN\�o�$Q��!}�Y*��X�Uu�I�a������^j:�ZKF�= �Ɗ�f҄Gb��q(��C�}Q�����G̒���w����]���U؊�3���Ó���T@��Tp�h�֘R+ז�������峷j�E���jj4������|��m��;����3.��^i1�ͩ��Yk��Z�5��+]j>jO f�(;Ɋ� �t�%Y��[����nz�.��]�p���w���[��nz�.�eEw)�T��p�惊�+H:+F{����$bֈ�G����;�cU���;���I$9"8���\gi�yU��;��u�u�u�u�u�u�u�u�u�u/)���T�;Mq�����\gi�3���k��5�v��;Mq�����\gi�3���k��5�v��;Mq�����D�,��1y0��n�Q @���6�nc����|3����������d.��tل�[)�Ii����\�?�0��n�i�V#H�c����9I��ET�C/�k���1��j���_��;��-]��i�k��5�O��-V�Wb��� �j�N� �/���&�|劊��C��"�]"��TNڛ9Ƒ6)�]���;���U?;��]n�Hʞފ�ұ���˕�G�� �k�z�gt70iS��j���� �j�ߗj�[<��b=6+جv������)�I=��k����z�y��n�艷O'���My�^tם5�My�Nv����+n�Tت�\3�_��D !1AQ "0Tq���2@Ra���S���r���#3B��CPb��� ?��;:n�ά�%��f�/�m��V��Z+Eh���V��Z#OM՛ľ���q麳x�Խ���=7Vo�A����� L��ؾP�K�? ��7�� �k1�Վ��XؖThĨA�I��j��bD$�i'/�zĮx�WF-�(mCf��aH&g ϙ���e�ޱQ�bp�Ui\\0N[m���̱;�g�5�64k�b�>3��Cq�ة��N#�������w��7�yB�\�QbD���efR�f����_��Y\6UP� �̂8�:@A��d�Ӫ�I��ZvF�+(RIr�����$nc��鮼��iĨp�ee���w�_}d� �'�1��v#H��@�Jd�[0�FAqC-�)�sgԥF�����q麳x�Խ���=7Vo���:]Ǧ���^^)px_��4�~��IqO���бx�Fca��g�ʵ���9A4�����_m�RVP��N��4�*�Z��4�<>�� �����B����L@[:A<�Y�c���A ��X��� i�4�^2���8&�!v�ɸT��b&і�7G�nnuU�I<h��77$�Y�K��� +G���!��F�4, w|B��oGG���H���͒��&�~���#��ěgT)p5V(^ �<��[�m��W�Ƃ��iq52I�r U7�3���_g�v3�ꀋ�:�0S��� ,�F���`?�q�G2B_u��XO�J��^]U�LN#b�� � �+0�Ϟ0n3Xii>���@'.�������3(,���Q��� F�l5���R�a6ʗS�h�"IZ�FڽՃL..�� �P��Yf�.����NbF�p��qj�)WII�E���Q��)���7/k[ua�0K�e7S��H�S�X�W���$�������ep�@�z�����7�yl��I ���Ʌ��^[��e��R�\\�b{�b�h4�S5��# m�4rN������@��"�O3���]a+*,kr�CC���l�Oa�jU2"�+)79�EKp�1���ZEC;&\䑤���8u.n ���$�p��Ɣ#�w�{�,��<�LFݠX���,@[�G�q����#P�O�q�;؛\~���\� 6��\��H\��Q�c��u7�kh&�rJ���G�EBc��4��\���rxMo������sH�D>/X[ l�Փ�=Vo��'����ұ�Ȟ�HH����JZ��U1VSpA��2���ŭN��n����I\�fv,{�bfXZ��B���u�b��b%��Eص�/X��Fm*�@�L�77d.lN�*y"'^V"�����͛�}c#��= t�k��v_g&X��UbJ�b O$�ՙ��&h���IE�b�u:դb(�F�Ec�,���� �&c2ꔹ.;]bf�;g�oK^���F7.�I=��;ȶ��f��I����X۴�Y�K��JT�"Ԭ݂��{A <d�T�v��^�j�¢��E� I���3(��*���]�*�F�h�z�x���]2��� �t,�6 ��H�l^;�=���h*Ʀ�,��Ԛ��l��_}���������X���/��rF����!6*IM���&3+�ko� V|�S��(b{"2zj5��ŵ��@�� ȱ Ԙ1/Y *�7$k��!���h-�A Ԑ�� ��pk�[����´$����І�K o�oe���K�l�@^�xg |�&$�v�M�pI��}P2�s��-p6I�Ԝ���&��S9�6%�P(�����$F(��9��I, g$ =�����i�0����%�x1q�e:����b�/�M��#2[i*X��["��05��ĵ�Q�zb��#+ `���g;ؓI#M<ֶ�_gʼnU6f 3���~�*B9o�Z�����~�j�,&4"�[9�}6�� �Gt`A�@IR�|��cX�m���k��a%@.����Y Q�&Qr6k��x+��_�`V&i,�Mb��'0eʤk��a?�^�""@��\��S2 �J�g���u�o�f�/-]��y�F�(0I^�um������7OIQXi"�K,��A��P<�i�<�`�b6V�"�C3�h�S&)!P �ɗM��� �L�X���)3Ϊy�~*'��i��4�D�{�a5�vB=�㪰�,qۋt�-�v��0,���zB۴��Á���u�$ �Y�M$�$@@��"�3a��ƋVv�E�2�i`�}���=���Y��!�n� �Q4�|Q9��/XI��C�l[�uRL��N@�\]���V��B�꾻���g�[x:�GD s�O���ضk��#'�7�}K��L����4Z�����'���՛ľ��V�����_R���o�f�/�{Cշ�z�x�Խ���=Y�K�^�m����%�/hz��OVo���N����N����R$(�P0$����vE�X���x�?�cS2݈#�wh�^�e�^� �[�=Y�K���L�<#m,����W�jip��>!�|3�M��;�&�E֧���a��=��x$t�D�n�k���G��Q���K�{-sr�m9�i��/�"��3�*O�;���;�#��\q|V[��|�-���f�/Iq@4�xؿP��P,��H�[ilG$L�f�� �h��T��eM"HJ� �r��I0ӂ�`�G��o�f�/I�̣�r5 ���Y��4�f)����H�x�ݥ����{ƣ���_7 �v��=��'�7�zAg�9�ہDFCk?�ZQ�9�d"��tbi�'��'cD��q���5��]�OVo�il:������:F��T����t�>�c�Y/��\rv�spkM? ���9>�E��՛Ľ?v��O�Gb�`�&(e Y]����A�\@(H���mBܕ��� Z����c�IcK�K#0]��0��$[�1�� �+ʕ���+rV.�$_*�!�&`ʪ��������^��gN:V&�ӧ�SW� DG�P"t#�EЬ ���xP0����M�\p=��78�N�C��q�痳 /��=�Ou�D�r��x��|��l�F�@<�YU@^��"�.�jU��S��T ��������;��ήG!E���<��\���}HmGh� ����N��Ï�<��/��]Y�K�F]Q��kX�S$�ʲ)$ �� E���K7�jg���U� B�h�Ѱ��·�@OE��U6�E5*��Q�a�慹��S)��T��&���q���e𞋫7�z/�� b)�B��4yZ�|9#�`�����'Eh�ѝ����u��/�aq?��X\O����u��<��]�'GE՛Ľк�zc��)�"E�W@�:�x���I�c� �6�"��E�����ч�>Ta�ϕ>s�M�|���ϕ<1�GEl����7�z��t,��o�G�R6$o�t�Y�K��ME�� '�:el�+�uf�/C����h��5s�=!�)ȝ�ó����^�j�� "����۴��M����M�f�/C�G-�8u-��~ʘH=����>\^��:C�!����wڢj��6�:�x���Õqv2��j�=^��Q�]N�aqL�6��^�R#�(.�ћ*)f;��r9n�16�[GG՛Ľ�L2=ͮ�ZdpY��F��Z�Zv�3�W�1?��q��;N���� ��#I�)֦�!��O9�p�:�x����͔\��Q<��D�/�Π�e�?�|��_:��@�.�`y�|�h U�D�/��W�]��sI*��̤�&mw�M7�:i�8yГ�G� ?4yГ�G� ?4yГ�G� ?4yГ�G� ?4yГ�G� ?4yГ�G�Bϔr/�5���y����Q2��:y��d�+��P��:n��X_�'�a��u��PI�1<�=Y�K� Z6��P�V��7��UE� 6�o������p�:���Q��|�8{��Gq���>u=�Σ����p�:�P�9[�p�+}U�o���|��T8o���� ��P�V��7��UC��[�p�+}U�o���|��T8o���� ��P�V��7��UC��[�p�+}U�o���|��TXk2�l���\���%�u���z�kޱ՛Ľ+\�i;��4�cKJk�s�Y�K����);�g,Q�oC�z�x��t��P���f�/��w�uf�/�l� �P���^[Z��)�Jҍ�w��f�/L8��f�-8t<�#^S����t���Vo��PKBA#]F�/�7components/com_sppagebuilder/assets/vendor/autoload.phpnu�[���<?php // autoload.php @generated by Composer if (PHP_VERSION_ID < 50600) { if (!headers_sent()) { header('HTTP/1.1 500 Internal Server Error'); } $err = 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL; if (!ini_get('display_errors')) { if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { fwrite(STDERR, $err); } elseif (!headers_sent()) { echo $err; } } trigger_error( $err, E_USER_ERROR ); } require_once __DIR__ . '/composer/autoload_real.php'; return ComposerAutoloaderInita6751dbcaf49022a7255309c490f79a4::getLoader(); PKBA#]6��'PPKcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/composer.jsonnu�[���{ "name": "facebook/graph-sdk", "description": "Facebook SDK for PHP", "keywords": ["facebook", "sdk"], "type": "library", "homepage": "https://github.com/facebook/php-graph-sdk", "license": "Facebook Platform", "authors": [ { "name": "Facebook", "homepage": "https://github.com/facebook/php-graph-sdk/contributors" } ], "require": { "php": "^5.4|^7.0" }, "require-dev": { "phpunit/phpunit": "~4.0", "mockery/mockery": "~0.8", "guzzlehttp/guzzle": "~5.0" }, "suggest": { "paragonie/random_compat": "Provides a better CSPRNG option in PHP 5", "guzzlehttp/guzzle": "Allows for implementation of the Guzzle HTTP client" }, "autoload": { "psr-4": { "Facebook\\": "src/Facebook/" }, "files": ["src/Facebook/polyfills.php"] }, "autoload-dev": { "psr-4": { "Facebook\\Tests\\": "tests/" } }, "extra": { "branch-alias": { "dev-master": "5.x-dev" } } } PKCA#]�+F��kcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookCanvasHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; /** * Class FacebookCanvasLoginHelper * * @package Facebook */ class FacebookCanvasHelper extends FacebookSignedRequestFromInputHelper { /** * Returns the app data value. * * @return mixed|null */ public function getAppData() { return $this->signedRequest ? $this->signedRequest->get('app_data') : null; } /** * Get raw signed request from POST. * * @return string|null */ public function getRawSignedRequest() { return $this->getRawSignedRequestFromPost() ?: null; } } PKCA#]���2�*�*rcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookRedirectLoginHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; use Facebook\Exceptions\FacebookSDKException; use Facebook\PersistentData\FacebookSessionPersistentDataHandler; use Facebook\PersistentData\PersistentDataInterface; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorFactory; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface; use Facebook\Url\FacebookUrlDetectionHandler; use Facebook\Url\FacebookUrlManipulator; use Facebook\Url\UrlDetectionInterface; /** * Class FacebookRedirectLoginHelper * * @package Facebook */ class FacebookRedirectLoginHelper { /** * @const int The length of CSRF string to validate the login link. */ const CSRF_LENGTH = 32; /** * @var OAuth2Client The OAuth 2.0 client service. */ protected $oAuth2Client; /** * @var UrlDetectionInterface The URL detection handler. */ protected $urlDetectionHandler; /** * @var PersistentDataInterface The persistent data handler. */ protected $persistentDataHandler; /** * @var PseudoRandomStringGeneratorInterface The cryptographically secure pseudo-random string generator. */ protected $pseudoRandomStringGenerator; /** * @param OAuth2Client $oAuth2Client The OAuth 2.0 client service. * @param PersistentDataInterface|null $persistentDataHandler The persistent data handler. * @param UrlDetectionInterface|null $urlHandler The URL detection handler. * @param PseudoRandomStringGeneratorInterface|null $prsg The cryptographically secure pseudo-random string generator. */ public function __construct(OAuth2Client $oAuth2Client, PersistentDataInterface $persistentDataHandler = null, UrlDetectionInterface $urlHandler = null, PseudoRandomStringGeneratorInterface $prsg = null) { $this->oAuth2Client = $oAuth2Client; $this->persistentDataHandler = $persistentDataHandler ?: new FacebookSessionPersistentDataHandler(); $this->urlDetectionHandler = $urlHandler ?: new FacebookUrlDetectionHandler(); $this->pseudoRandomStringGenerator = PseudoRandomStringGeneratorFactory::createPseudoRandomStringGenerator($prsg); } /** * Returns the persistent data handler. * * @return PersistentDataInterface */ public function getPersistentDataHandler() { return $this->persistentDataHandler; } /** * Returns the URL detection handler. * * @return UrlDetectionInterface */ public function getUrlDetectionHandler() { return $this->urlDetectionHandler; } /** * Returns the cryptographically secure pseudo-random string generator. * * @return PseudoRandomStringGeneratorInterface */ public function getPseudoRandomStringGenerator() { return $this->pseudoRandomStringGenerator; } /** * Stores CSRF state and returns a URL to which the user should be sent to in order to continue the login process with Facebook. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param array $params An array of parameters to generate URL. * @param string $separator The separator to use in http_build_query(). * * @return string */ private function makeUrl($redirectUrl, array $scope, array $params = [], $separator = '&') { $state = $this->persistentDataHandler->get('state') ?: $this->pseudoRandomStringGenerator->getPseudoRandomString(static::CSRF_LENGTH); $this->persistentDataHandler->set('state', $state); return $this->oAuth2Client->getAuthorizationUrl($redirectUrl, $state, $scope, $params, $separator); } /** * Returns the URL to send the user in order to login to Facebook. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). * * @return string */ public function getLoginUrl($redirectUrl, array $scope = [], $separator = '&') { return $this->makeUrl($redirectUrl, $scope, [], $separator); } /** * Returns the URL to send the user in order to log out of Facebook. * * @param AccessToken|string $accessToken The access token that will be logged out. * @param string $next The url Facebook should redirect the user to after a successful logout. * @param string $separator The separator to use in http_build_query(). * * @return string * * @throws FacebookSDKException */ public function getLogoutUrl($accessToken, $next, $separator = '&') { if (!$accessToken instanceof AccessToken) { $accessToken = new AccessToken($accessToken); } if ($accessToken->isAppAccessToken()) { throw new FacebookSDKException('Cannot generate a logout URL with an app access token.', 722); } $params = [ 'next' => $next, 'access_token' => $accessToken->getValue(), ]; return 'https://www.facebook.com/logout.php?' . http_build_query($params, null, $separator); } /** * Returns the URL to send the user in order to login to Facebook with permission(s) to be re-asked. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). * * @return string */ public function getReRequestUrl($redirectUrl, array $scope = [], $separator = '&') { $params = ['auth_type' => 'rerequest']; return $this->makeUrl($redirectUrl, $scope, $params, $separator); } /** * Returns the URL to send the user in order to login to Facebook with user to be re-authenticated. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). * * @return string */ public function getReAuthenticationUrl($redirectUrl, array $scope = [], $separator = '&') { $params = ['auth_type' => 'reauthenticate']; return $this->makeUrl($redirectUrl, $scope, $params, $separator); } /** * Takes a valid code from a login redirect, and returns an AccessToken entity. * * @param string|null $redirectUrl The redirect URL. * * @return AccessToken|null * * @throws FacebookSDKException */ public function getAccessToken($redirectUrl = null) { if (!$code = $this->getCode()) { return null; } $this->validateCsrf(); $this->resetCsrf(); $redirectUrl = $redirectUrl ?: $this->urlDetectionHandler->getCurrentUrl(); // At minimum we need to remove the 'code', 'enforce_https' and 'state' params $redirectUrl = FacebookUrlManipulator::removeParamsFromUrl($redirectUrl, ['code', 'enforce_https', 'state']); return $this->oAuth2Client->getAccessTokenFromCode($code, $redirectUrl); } /** * Validate the request against a cross-site request forgery. * * @throws FacebookSDKException */ protected function validateCsrf() { $state = $this->getState(); if (!$state) { throw new FacebookSDKException('Cross-site request forgery validation failed. Required GET param "state" missing.'); } $savedState = $this->persistentDataHandler->get('state'); if (!$savedState) { throw new FacebookSDKException('Cross-site request forgery validation failed. Required param "state" missing from persistent data.'); } if (\hash_equals($savedState, $state)) { return; } throw new FacebookSDKException('Cross-site request forgery validation failed. The "state" param from the URL and session do not match.'); } /** * Resets the CSRF so that it doesn't get reused. */ private function resetCsrf() { $this->persistentDataHandler->set('state', null); } /** * Return the code. * * @return string|null */ protected function getCode() { return $this->getInput('code'); } /** * Return the state. * * @return string|null */ protected function getState() { return $this->getInput('state'); } /** * Return the error code. * * @return string|null */ public function getErrorCode() { return $this->getInput('error_code'); } /** * Returns the error. * * @return string|null */ public function getError() { return $this->getInput('error'); } /** * Returns the error reason. * * @return string|null */ public function getErrorReason() { return $this->getInput('error_reason'); } /** * Returns the error description. * * @return string|null */ public function getErrorDescription() { return $this->getInput('error_description'); } /** * Returns a value from a GET param. * * @param string $key * * @return string|null */ private function getInput($key) { return isset($_GET[$key]) ? $_GET[$key] : null; } } PKCA#]R䊆��ocomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookJavaScriptHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; /** * Class FacebookJavaScriptLoginHelper * * @package Facebook */ class FacebookJavaScriptHelper extends FacebookSignedRequestFromInputHelper { /** * Get raw signed request from the cookie. * * @return string|null */ public function getRawSignedRequest() { return $this->getRawSignedRequestFromCookie(); } } PKCA#]���Ly y lcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookPageTabHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\FacebookApp; use Facebook\FacebookClient; /** * Class FacebookPageTabHelper * * @package Facebook */ class FacebookPageTabHelper extends FacebookCanvasHelper { /** * @var array|null */ protected $pageData; /** * Initialize the helper and process available signed request data. * * @param FacebookApp $app The FacebookApp entity. * @param FacebookClient $client The client to make HTTP requests. * @param string|null $graphVersion The version of Graph to use. */ public function __construct(FacebookApp $app, FacebookClient $client, $graphVersion = null) { parent::__construct($app, $client, $graphVersion); if (!$this->signedRequest) { return; } $this->pageData = $this->signedRequest->get('page'); } /** * Returns a value from the page data. * * @param string $key * @param mixed|null $default * * @return mixed|null */ public function getPageData($key, $default = null) { if (isset($this->pageData[$key])) { return $this->pageData[$key]; } return $default; } /** * Returns true if the user is an admin. * * @return boolean */ public function isAdmin() { return $this->getPageData('admin') === true; } /** * Returns the page id if available. * * @return string|null */ public function getPageId() { return $this->getPageData('id'); } } PKCA#]� "EE{components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Helpers/FacebookSignedRequestFromInputHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\Facebook; use Facebook\FacebookApp; use Facebook\FacebookClient; use Facebook\SignedRequest; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; /** * Class FacebookSignedRequestFromInputHelper * * @package Facebook */ abstract class FacebookSignedRequestFromInputHelper { /** * @var SignedRequest|null The SignedRequest entity. */ protected $signedRequest; /** * @var FacebookApp The FacebookApp entity. */ protected $app; /** * @var OAuth2Client The OAuth 2.0 client service. */ protected $oAuth2Client; /** * Initialize the helper and process available signed request data. * * @param FacebookApp $app The FacebookApp entity. * @param FacebookClient $client The client to make HTTP requests. * @param string|null $graphVersion The version of Graph to use. */ public function __construct(FacebookApp $app, FacebookClient $client, $graphVersion = null) { $this->app = $app; $graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; $this->oAuth2Client = new OAuth2Client($this->app, $client, $graphVersion); $this->instantiateSignedRequest(); } /** * Instantiates a new SignedRequest entity. * * @param string|null */ public function instantiateSignedRequest($rawSignedRequest = null) { $rawSignedRequest = $rawSignedRequest ?: $this->getRawSignedRequest(); if (!$rawSignedRequest) { return; } $this->signedRequest = new SignedRequest($this->app, $rawSignedRequest); } /** * Returns an AccessToken entity from the signed request. * * @return AccessToken|null * * @throws \Facebook\Exceptions\FacebookSDKException */ public function getAccessToken() { if ($this->signedRequest && $this->signedRequest->hasOAuthData()) { $code = $this->signedRequest->get('code'); $accessToken = $this->signedRequest->get('oauth_token'); if ($code && !$accessToken) { return $this->oAuth2Client->getAccessTokenFromCode($code); } $expiresAt = $this->signedRequest->get('expires', 0); return new AccessToken($accessToken, $expiresAt); } return null; } /** * Returns the SignedRequest entity. * * @return SignedRequest|null */ public function getSignedRequest() { return $this->signedRequest; } /** * Returns the user_id if available. * * @return string|null */ public function getUserId() { return $this->signedRequest ? $this->signedRequest->getUserId() : null; } /** * Get raw signed request from input. * * @return string|null */ abstract public function getRawSignedRequest(); /** * Get raw signed request from POST input. * * @return string|null */ public function getRawSignedRequestFromPost() { if (isset($_POST['signed_request'])) { return $_POST['signed_request']; } return null; } /** * Get raw signed request from cookie set from the Javascript SDK. * * @return string|null */ public function getRawSignedRequestFromCookie() { if (isset($_COOKIE['fbsr_' . $this->app->getId()])) { return $_COOKIE['fbsr_' . $this->app->getId()]; } return null; } } PKCA#]����]components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\HttpClients\FacebookHttpClientInterface; use Facebook\HttpClients\FacebookCurlHttpClient; use Facebook\HttpClients\FacebookStreamHttpClient; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookClient * * @package Facebook */ class FacebookClient { /** * @const string Production Graph API URL. */ const BASE_GRAPH_URL = 'https://graph.facebook.com'; /** * @const string Graph API URL for video uploads. */ const BASE_GRAPH_VIDEO_URL = 'https://graph-video.facebook.com'; /** * @const string Beta Graph API URL. */ const BASE_GRAPH_URL_BETA = 'https://graph.beta.facebook.com'; /** * @const string Beta Graph API URL for video uploads. */ const BASE_GRAPH_VIDEO_URL_BETA = 'https://graph-video.beta.facebook.com'; /** * @const int The timeout in seconds for a normal request. */ const DEFAULT_REQUEST_TIMEOUT = 60; /** * @const int The timeout in seconds for a request that contains file uploads. */ const DEFAULT_FILE_UPLOAD_REQUEST_TIMEOUT = 3600; /** * @const int The timeout in seconds for a request that contains video uploads. */ const DEFAULT_VIDEO_UPLOAD_REQUEST_TIMEOUT = 7200; /** * @var bool Toggle to use Graph beta url. */ protected $enableBetaMode = false; /** * @var FacebookHttpClientInterface HTTP client handler. */ protected $httpClientHandler; /** * @var int The number of calls that have been made to Graph. */ public static $requestCount = 0; /** * Instantiates a new FacebookClient object. * * @param FacebookHttpClientInterface|null $httpClientHandler * @param boolean $enableBeta */ public function __construct(FacebookHttpClientInterface $httpClientHandler = null, $enableBeta = false) { $this->httpClientHandler = $httpClientHandler ?: $this->detectHttpClientHandler(); $this->enableBetaMode = $enableBeta; } /** * Sets the HTTP client handler. * * @param FacebookHttpClientInterface $httpClientHandler */ public function setHttpClientHandler(FacebookHttpClientInterface $httpClientHandler) { $this->httpClientHandler = $httpClientHandler; } /** * Returns the HTTP client handler. * * @return FacebookHttpClientInterface */ public function getHttpClientHandler() { return $this->httpClientHandler; } /** * Detects which HTTP client handler to use. * * @return FacebookHttpClientInterface */ public function detectHttpClientHandler() { return extension_loaded('curl') ? new FacebookCurlHttpClient() : new FacebookStreamHttpClient(); } /** * Toggle beta mode. * * @param boolean $betaMode */ public function enableBetaMode($betaMode = true) { $this->enableBetaMode = $betaMode; } /** * Returns the base Graph URL. * * @param boolean $postToVideoUrl Post to the video API if videos are being uploaded. * * @return string */ public function getBaseGraphUrl($postToVideoUrl = false) { if ($postToVideoUrl) { return $this->enableBetaMode ? static::BASE_GRAPH_VIDEO_URL_BETA : static::BASE_GRAPH_VIDEO_URL; } return $this->enableBetaMode ? static::BASE_GRAPH_URL_BETA : static::BASE_GRAPH_URL; } /** * Prepares the request for sending to the client handler. * * @param FacebookRequest $request * * @return array */ public function prepareRequestMessage(FacebookRequest $request) { $postToVideoUrl = $request->containsVideoUploads(); $url = $this->getBaseGraphUrl($postToVideoUrl) . $request->getUrl(); // If we're sending files they should be sent as multipart/form-data if ($request->containsFileUploads()) { $requestBody = $request->getMultipartBody(); $request->setHeaders([ 'Content-Type' => 'multipart/form-data; boundary=' . $requestBody->getBoundary(), ]); } else { $requestBody = $request->getUrlEncodedBody(); $request->setHeaders([ 'Content-Type' => 'application/x-www-form-urlencoded', ]); } return [ $url, $request->getMethod(), $request->getHeaders(), $requestBody->getBody(), ]; } /** * Makes the request to Graph and returns the result. * * @param FacebookRequest $request * * @return FacebookResponse * * @throws FacebookSDKException */ public function sendRequest(FacebookRequest $request) { if (get_class($request) === 'Facebook\FacebookRequest') { $request->validateAccessToken(); } list($url, $method, $headers, $body) = $this->prepareRequestMessage($request); // Since file uploads can take a while, we need to give more time for uploads $timeOut = static::DEFAULT_REQUEST_TIMEOUT; if ($request->containsFileUploads()) { $timeOut = static::DEFAULT_FILE_UPLOAD_REQUEST_TIMEOUT; } elseif ($request->containsVideoUploads()) { $timeOut = static::DEFAULT_VIDEO_UPLOAD_REQUEST_TIMEOUT; } // Should throw `FacebookSDKException` exception on HTTP client error. // Don't catch to allow it to bubble up. $rawResponse = $this->httpClientHandler->send($url, $method, $body, $headers, $timeOut); static::$requestCount++; $returnResponse = new FacebookResponse( $request, $rawResponse->getBody(), $rawResponse->getHttpResponseCode(), $rawResponse->getHeaders() ); if ($returnResponse->isError()) { throw $returnResponse->getThrownException(); } return $returnResponse; } /** * Makes a batched request to Graph and returns the result. * * @param FacebookBatchRequest $request * * @return FacebookBatchResponse * * @throws FacebookSDKException */ public function sendBatchRequest(FacebookBatchRequest $request) { $request->prepareRequestsForBatch(); $facebookResponse = $this->sendRequest($request); return new FacebookBatchResponse($request, $facebookResponse); } } PKCA#]v]{$��scomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookGuzzleHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; use GuzzleHttp\Client; use GuzzleHttp\Message\ResponseInterface; use GuzzleHttp\Ring\Exception\RingException; use GuzzleHttp\Exception\RequestException; class FacebookGuzzleHttpClient implements FacebookHttpClientInterface { /** * @var \GuzzleHttp\Client The Guzzle client. */ protected $guzzleClient; /** * @param \GuzzleHttp\Client|null The Guzzle client. */ public function __construct(Client $guzzleClient = null) { $this->guzzleClient = $guzzleClient ?: new Client(); } /** * @inheritdoc */ public function send($url, $method, $body, array $headers, $timeOut) { $options = [ 'headers' => $headers, 'body' => $body, 'timeout' => $timeOut, 'connect_timeout' => 10, 'verify' => __DIR__ . '/certs/DigiCertHighAssuranceEVRootCA.pem', ]; $request = $this->guzzleClient->createRequest($method, $url, $options); try { $rawResponse = $this->guzzleClient->send($request); } catch (RequestException $e) { $rawResponse = $e->getResponse(); if ($e->getPrevious() instanceof RingException || !$rawResponse instanceof ResponseInterface) { throw new FacebookSDKException($e->getMessage(), $e->getCode()); } } $rawHeaders = $this->getHeadersAsString($rawResponse); $rawBody = $rawResponse->getBody(); $httpStatusCode = $rawResponse->getStatusCode(); return new GraphRawResponse($rawHeaders, $rawBody, $httpStatusCode); } /** * Returns the Guzzle array of headers as a string. * * @param ResponseInterface $response The Guzzle response. * * @return string */ public function getHeadersAsString(ResponseInterface $response) { $headers = $response->getHeaders(); $rawHeaders = []; foreach ($headers as $name => $values) { $rawHeaders[] = $name . ": " . implode(", ", $values); } return implode("\r\n", $rawHeaders); } } PKCA#]�� Ex x mcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/HttpClientsFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use GuzzleHttp\Client; use InvalidArgumentException; use Exception; class HttpClientsFactory { private function __construct() { // a factory constructor should never be invoked } /** * HTTP client generation. * * @param FacebookHttpClientInterface|Client|string|null $handler * * @throws Exception If the cURL extension or the Guzzle client aren't available (if required). * @throws InvalidArgumentException If the http client handler isn't "curl", "stream", "guzzle", or an instance of Facebook\HttpClients\FacebookHttpClientInterface. * * @return FacebookHttpClientInterface */ public static function createHttpClient($handler) { if (!$handler) { return self::detectDefaultClient(); } if ($handler instanceof FacebookHttpClientInterface) { return $handler; } if ('stream' === $handler) { return new FacebookStreamHttpClient(); } if ('curl' === $handler) { if (!extension_loaded('curl')) { throw new Exception('The cURL extension must be loaded in order to use the "curl" handler.'); } return new FacebookCurlHttpClient(); } if ('guzzle' === $handler && !class_exists('GuzzleHttp\Client')) { throw new Exception('The Guzzle HTTP client must be included in order to use the "guzzle" handler.'); } if ($handler instanceof Client) { return new FacebookGuzzleHttpClient($handler); } if ('guzzle' === $handler) { return new FacebookGuzzleHttpClient(); } throw new InvalidArgumentException('The http client handler must be set to "curl", "stream", "guzzle", be an instance of GuzzleHttp\Client or an instance of Facebook\HttpClients\FacebookHttpClientInterface'); } /** * Detect default HTTP client. * * @return FacebookHttpClientInterface */ private static function detectDefaultClient() { if (extension_loaded('curl')) { return new FacebookCurlHttpClient(); } if (class_exists('GuzzleHttp\Client')) { return new FacebookGuzzleHttpClient(); } return new FacebookStreamHttpClient(); } } PKCA#]��XXscomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStreamHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; class FacebookStreamHttpClient implements FacebookHttpClientInterface { /** * @var FacebookStream Procedural stream wrapper as object. */ protected $facebookStream; /** * @param FacebookStream|null Procedural stream wrapper as object. */ public function __construct(FacebookStream $facebookStream = null) { $this->facebookStream = $facebookStream ?: new FacebookStream(); } /** * @inheritdoc */ public function send($url, $method, $body, array $headers, $timeOut) { $options = [ 'http' => [ 'method' => $method, 'header' => $this->compileHeader($headers), 'content' => $body, 'timeout' => $timeOut, 'ignore_errors' => true ], 'ssl' => [ 'verify_peer' => true, 'verify_peer_name' => true, 'allow_self_signed' => true, // All root certificates are self-signed 'cafile' => __DIR__ . '/certs/DigiCertHighAssuranceEVRootCA.pem', ], ]; $this->facebookStream->streamContextCreate($options); $rawBody = $this->facebookStream->fileGetContents($url); $rawHeaders = $this->facebookStream->getResponseHeaders(); if ($rawBody === false || empty($rawHeaders)) { throw new FacebookSDKException('Stream returned an empty response', 660); } $rawHeaders = implode("\r\n", $rawHeaders); return new GraphRawResponse($rawHeaders, $rawBody); } /** * Formats the headers for use in the stream wrapper. * * @param array $headers The request headers. * * @return string */ public function compileHeader(array $headers) { $header = []; foreach ($headers as $k => $v) { $header[] = $k . ': ' . $v; } return implode("\r\n", $header); } } PKCA#].R�g��icomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookStream.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; /** * Class FacebookStream * * Abstraction for the procedural stream elements so that the functions can be * mocked and the implementation can be tested. * * @package Facebook */ class FacebookStream { /** * @var resource Context stream resource instance */ protected $stream; /** * @var array Response headers from the stream wrapper */ protected $responseHeaders = []; /** * Make a new context stream reference instance * * @param array $options */ public function streamContextCreate(array $options) { $this->stream = stream_context_create($options); } /** * The response headers from the stream wrapper * * @return array */ public function getResponseHeaders() { return $this->responseHeaders; } /** * Send a stream wrapped request * * @param string $url * * @return mixed */ public function fileGetContents($url) { $rawResponse = file_get_contents($url, false, $this->stream); $this->responseHeaders = $http_response_header ?: []; return $rawResponse; } } PKCA#]z kYYgcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurl.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; /** * Class FacebookCurl * * Abstraction for the procedural curl elements so that curl can be mocked and the implementation can be tested. * * @package Facebook */ class FacebookCurl { /** * @var resource Curl resource instance */ protected $curl; /** * Make a new curl reference instance */ public function init() { $this->curl = curl_init(); } /** * Set a curl option * * @param $key * @param $value */ public function setopt($key, $value) { curl_setopt($this->curl, $key, $value); } /** * Set an array of options to a curl resource * * @param array $options */ public function setoptArray(array $options) { curl_setopt_array($this->curl, $options); } /** * Send a curl request * * @return mixed */ public function exec() { return curl_exec($this->curl); } /** * Return the curl error number * * @return int */ public function errno() { return curl_errno($this->curl); } /** * Return the curl error message * * @return string */ public function error() { return curl_error($this->curl); } /** * Get info from a curl reference * * @param $type * * @return mixed */ public function getinfo($type) { return curl_getinfo($this->curl, $type); } /** * Get the currently installed curl version * * @return array */ public function version() { return curl_version(); } /** * Close the resource connection to curl */ public function close() { curl_close($this->curl); } } PKCA#]X�x++vcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookHttpClientInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; /** * Interface FacebookHttpClientInterface * * @package Facebook */ interface FacebookHttpClientInterface { /** * Sends a request to the server and returns the raw response. * * @param string $url The endpoint to send the request to. * @param string $method The request method. * @param string $body The body of the request. * @param array $headers The request headers. * @param int $timeOut The timeout in seconds for the request. * * @return \Facebook\Http\GraphRawResponse Raw response from the server. * * @throws \Facebook\Exceptions\FacebookSDKException */ public function send($url, $method, $body, array $headers, $timeOut); } PKCA#]s����qcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookCurlHttpClient * * @package Facebook */ class FacebookCurlHttpClient implements FacebookHttpClientInterface { /** * @var string The client error message */ protected $curlErrorMessage = ''; /** * @var int The curl client error code */ protected $curlErrorCode = 0; /** * @var string|boolean The raw response from the server */ protected $rawResponse; /** * @var FacebookCurl Procedural curl as object */ protected $facebookCurl; /** * @param FacebookCurl|null Procedural curl as object */ public function __construct(FacebookCurl $facebookCurl = null) { $this->facebookCurl = $facebookCurl ?: new FacebookCurl(); } /** * @inheritdoc */ public function send($url, $method, $body, array $headers, $timeOut) { $this->openConnection($url, $method, $body, $headers, $timeOut); $this->sendRequest(); if ($curlErrorCode = $this->facebookCurl->errno()) { throw new FacebookSDKException($this->facebookCurl->error(), $curlErrorCode); } // Separate the raw headers from the raw body list($rawHeaders, $rawBody) = $this->extractResponseHeadersAndBody(); $this->closeConnection(); return new GraphRawResponse($rawHeaders, $rawBody); } /** * Opens a new curl connection. * * @param string $url The endpoint to send the request to. * @param string $method The request method. * @param string $body The body of the request. * @param array $headers The request headers. * @param int $timeOut The timeout in seconds for the request. */ public function openConnection($url, $method, $body, array $headers, $timeOut) { $options = [ CURLOPT_CUSTOMREQUEST => $method, CURLOPT_HTTPHEADER => $this->compileRequestHeaders($headers), CURLOPT_URL => $url, CURLOPT_CONNECTTIMEOUT => 10, CURLOPT_TIMEOUT => $timeOut, CURLOPT_RETURNTRANSFER => true, // Return response as string CURLOPT_HEADER => true, // Enable header processing CURLOPT_SSL_VERIFYHOST => 2, CURLOPT_SSL_VERIFYPEER => true, CURLOPT_CAINFO => __DIR__ . '/certs/DigiCertHighAssuranceEVRootCA.pem', ]; if ($method !== "GET") { $options[CURLOPT_POSTFIELDS] = $body; } $this->facebookCurl->init(); $this->facebookCurl->setoptArray($options); } /** * Closes an existing curl connection */ public function closeConnection() { $this->facebookCurl->close(); } /** * Send the request and get the raw response from curl */ public function sendRequest() { $this->rawResponse = $this->facebookCurl->exec(); } /** * Compiles the request headers into a curl-friendly format. * * @param array $headers The request headers. * * @return array */ public function compileRequestHeaders(array $headers) { $return = []; foreach ($headers as $key => $value) { $return[] = $key . ': ' . $value; } return $return; } /** * Extracts the headers and the body into a two-part array * * @return array */ public function extractResponseHeadersAndBody() { $parts = explode("\r\n\r\n", $this->rawResponse); $rawBody = array_pop($parts); $rawHeaders = implode("\r\n\r\n", $parts); return [trim($rawHeaders), trim($rawBody)]; } } PKCA#]aQ WW~components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/HttpClients/certs/DigiCertHighAssuranceEVRootCA.pemnu�[���-----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm +9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3 hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2 Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep +OkuE6N36B9K -----END CERTIFICATE----- PKCA#]7�3w��fcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPicture.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphPicture * * @package Facebook */ class GraphPicture extends GraphNode { /** * Returns true if user picture is silhouette. * * @return bool|null */ public function isSilhouette() { return $this->getField('is_silhouette'); } /** * Returns the url of user picture if it exists * * @return string|null */ public function getUrl() { return $this->getField('url'); } /** * Returns the width of user picture if it exists * * @return int|null */ public function getWidth() { return $this->getField('width'); } /** * Returns the height of user picture if it exists * * @return int|null */ public function getHeight() { return $this->getField('height'); } } PKCA#]!�Hppccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphPage.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphPage * * @package Facebook */ class GraphPage extends GraphNode { /** * @var array Maps object key names to Graph object types. */ protected static $graphObjectMap = [ 'best_page' => '\Facebook\GraphNodes\GraphPage', 'global_brand_parent_page' => '\Facebook\GraphNodes\GraphPage', 'location' => '\Facebook\GraphNodes\GraphLocation', 'cover' => '\Facebook\GraphNodes\GraphCoverPhoto', 'picture' => '\Facebook\GraphNodes\GraphPicture', ]; /** * Returns the ID for the user's page as a string if present. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns the Category for the user's page as a string if present. * * @return string|null */ public function getCategory() { return $this->getField('category'); } /** * Returns the Name of the user's page as a string if present. * * @return string|null */ public function getName() { return $this->getField('name'); } /** * Returns the best available Page on Facebook. * * @return GraphPage|null */ public function getBestPage() { return $this->getField('best_page'); } /** * Returns the brand's global (parent) Page. * * @return GraphPage|null */ public function getGlobalBrandParentPage() { return $this->getField('global_brand_parent_page'); } /** * Returns the location of this place. * * @return GraphLocation|null */ public function getLocation() { return $this->getField('location'); } /** * Returns CoverPhoto of the Page. * * @return GraphCoverPhoto|null */ public function getCover() { return $this->getField('cover'); } /** * Returns Picture of the Page. * * @return GraphPicture|null */ public function getPicture() { return $this->getField('picture'); } /** * Returns the page access token for the admin user. * * Only available in the `/me/accounts` context. * * @return string|null */ public function getAccessToken() { return $this->getField('access_token'); } /** * Returns the roles of the page admin user. * * Only available in the `/me/accounts` context. * * @return array|null */ public function getPerms() { return $this->getField('perms'); } /** * Returns the `fan_count` (Number of people who likes to page) as int if present. * * @return int|null */ public function getFanCount() { return $this->getField('fan_count'); } } PKCA#]�}�kvvjcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAchievement.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphAchievement * * @package Facebook */ class GraphAchievement extends GraphNode { /** * @var array Maps object key names to Graph object types. */ protected static $graphObjectMap = [ 'from' => '\Facebook\GraphNodes\GraphUser', 'application' => '\Facebook\GraphNodes\GraphApplication', ]; /** * Returns the ID for the achievement. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns the user who achieved this. * * @return GraphUser|null */ public function getFrom() { return $this->getField('from'); } /** * Returns the time at which this was achieved. * * @return \DateTime|null */ public function getPublishTime() { return $this->getField('publish_time'); } /** * Returns the app in which the user achieved this. * * @return GraphApplication|null */ public function getApplication() { return $this->getField('application'); } /** * Returns information about the achievement type this instance is connected with. * * @return array|null */ public function getData() { return $this->getField('data'); } /** * Returns the type of achievement. * * @see https://developers.facebook.com/docs/graph-api/reference/achievement * * @return string */ public function getType() { return 'game.achievement'; } /** * Indicates whether gaining the achievement published a feed story for the user. * * @return boolean|null */ public function isNoFeedStory() { return $this->getField('no_feed_story'); } } PKCA#]@?��)1)1jcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNodeFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use Facebook\FacebookResponse; use Facebook\Exceptions\FacebookSDKException; /** * Class GraphNodeFactory * * @package Facebook * * ## Assumptions ## * GraphEdge - is ALWAYS a numeric array * GraphEdge - is ALWAYS an array of GraphNode types * GraphNode - is ALWAYS an associative array * GraphNode - MAY contain GraphNode's "recurrable" * GraphNode - MAY contain GraphEdge's "recurrable" * GraphNode - MAY contain DateTime's "primitives" * GraphNode - MAY contain string's "primitives" */ class GraphNodeFactory { /** * @const string The base graph object class. */ const BASE_GRAPH_NODE_CLASS = '\Facebook\GraphNodes\GraphNode'; /** * @const string The base graph edge class. */ const BASE_GRAPH_EDGE_CLASS = '\Facebook\GraphNodes\GraphEdge'; /** * @const string The graph object prefix. */ const BASE_GRAPH_OBJECT_PREFIX = '\Facebook\GraphNodes\\'; /** * @var FacebookResponse The response entity from Graph. */ protected $response; /** * @var array The decoded body of the FacebookResponse entity from Graph. */ protected $decodedBody; /** * Init this Graph object. * * @param FacebookResponse $response The response entity from Graph. */ public function __construct(FacebookResponse $response) { $this->response = $response; $this->decodedBody = $response->getDecodedBody(); } /** * Tries to convert a FacebookResponse entity into a GraphNode. * * @param string|null $subclassName The GraphNode sub class to cast to. * * @return GraphNode * * @throws FacebookSDKException */ public function makeGraphNode($subclassName = null) { $this->validateResponseAsArray(); $this->validateResponseCastableAsGraphNode(); return $this->castAsGraphNodeOrGraphEdge($this->decodedBody, $subclassName); } /** * Convenience method for creating a GraphAchievement collection. * * @return GraphAchievement * * @throws FacebookSDKException */ public function makeGraphAchievement() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphAchievement'); } /** * Convenience method for creating a GraphAlbum collection. * * @return GraphAlbum * * @throws FacebookSDKException */ public function makeGraphAlbum() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphAlbum'); } /** * Convenience method for creating a GraphPage collection. * * @return GraphPage * * @throws FacebookSDKException */ public function makeGraphPage() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphPage'); } /** * Convenience method for creating a GraphSessionInfo collection. * * @return GraphSessionInfo * * @throws FacebookSDKException */ public function makeGraphSessionInfo() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphSessionInfo'); } /** * Convenience method for creating a GraphUser collection. * * @return GraphUser * * @throws FacebookSDKException */ public function makeGraphUser() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphUser'); } /** * Convenience method for creating a GraphEvent collection. * * @return GraphEvent * * @throws FacebookSDKException */ public function makeGraphEvent() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphEvent'); } /** * Convenience method for creating a GraphGroup collection. * * @return GraphGroup * * @throws FacebookSDKException */ public function makeGraphGroup() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphGroup'); } /** * Tries to convert a FacebookResponse entity into a GraphEdge. * * @param string|null $subclassName The GraphNode sub class to cast the list items to. * @param boolean $auto_prefix Toggle to auto-prefix the subclass name. * * @return GraphEdge * * @throws FacebookSDKException */ public function makeGraphEdge($subclassName = null, $auto_prefix = true) { $this->validateResponseAsArray(); $this->validateResponseCastableAsGraphEdge(); if ($subclassName && $auto_prefix) { $subclassName = static::BASE_GRAPH_OBJECT_PREFIX . $subclassName; } return $this->castAsGraphNodeOrGraphEdge($this->decodedBody, $subclassName); } /** * Validates the decoded body. * * @throws FacebookSDKException */ public function validateResponseAsArray() { if (!is_array($this->decodedBody)) { throw new FacebookSDKException('Unable to get response from Graph as array.', 620); } } /** * Validates that the return data can be cast as a GraphNode. * * @throws FacebookSDKException */ public function validateResponseCastableAsGraphNode() { if (isset($this->decodedBody['data']) && static::isCastableAsGraphEdge($this->decodedBody['data'])) { throw new FacebookSDKException( 'Unable to convert response from Graph to a GraphNode because the response looks like a GraphEdge. Try using GraphNodeFactory::makeGraphEdge() instead.', 620 ); } } /** * Validates that the return data can be cast as a GraphEdge. * * @throws FacebookSDKException */ public function validateResponseCastableAsGraphEdge() { if (!(isset($this->decodedBody['data']) && static::isCastableAsGraphEdge($this->decodedBody['data']))) { throw new FacebookSDKException( 'Unable to convert response from Graph to a GraphEdge because the response does not look like a GraphEdge. Try using GraphNodeFactory::makeGraphNode() instead.', 620 ); } } /** * Safely instantiates a GraphNode of $subclassName. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The subclass to cast this collection to. * * @return GraphNode * * @throws FacebookSDKException */ public function safelyMakeGraphNode(array $data, $subclassName = null) { $subclassName = $subclassName ?: static::BASE_GRAPH_NODE_CLASS; static::validateSubclass($subclassName); // Remember the parent node ID $parentNodeId = isset($data['id']) ? $data['id'] : null; $items = []; foreach ($data as $k => $v) { // Array means could be recurable if (is_array($v)) { // Detect any smart-casting from the $graphObjectMap array. // This is always empty on the GraphNode collection, but subclasses can define // their own array of smart-casting types. $graphObjectMap = $subclassName::getObjectMap(); $objectSubClass = isset($graphObjectMap[$k]) ? $graphObjectMap[$k] : null; // Could be a GraphEdge or GraphNode $items[$k] = $this->castAsGraphNodeOrGraphEdge($v, $objectSubClass, $k, $parentNodeId); } else { $items[$k] = $v; } } return new $subclassName($items); } /** * Takes an array of values and determines how to cast each node. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The subclass to cast this collection to. * @param string|null $parentKey The key of this data (Graph edge). * @param string|null $parentNodeId The parent Graph node ID. * * @return GraphNode|GraphEdge * * @throws FacebookSDKException */ public function castAsGraphNodeOrGraphEdge(array $data, $subclassName = null, $parentKey = null, $parentNodeId = null) { if (isset($data['data'])) { // Create GraphEdge if (static::isCastableAsGraphEdge($data['data'])) { return $this->safelyMakeGraphEdge($data, $subclassName, $parentKey, $parentNodeId); } // Sometimes Graph is a weirdo and returns a GraphNode under the "data" key $outerData = $data; unset($outerData['data']); $data = $data['data'] + $outerData; } // Create GraphNode return $this->safelyMakeGraphNode($data, $subclassName); } /** * Return an array of GraphNode's. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The GraphNode subclass to cast each item in the list to. * @param string|null $parentKey The key of this data (Graph edge). * @param string|null $parentNodeId The parent Graph node ID. * * @return GraphEdge * * @throws FacebookSDKException */ public function safelyMakeGraphEdge(array $data, $subclassName = null, $parentKey = null, $parentNodeId = null) { if (!isset($data['data'])) { throw new FacebookSDKException('Cannot cast data to GraphEdge. Expected a "data" key.', 620); } $dataList = []; foreach ($data['data'] as $graphNode) { $dataList[] = $this->safelyMakeGraphNode($graphNode, $subclassName); } $metaData = $this->getMetaData($data); // We'll need to make an edge endpoint for this in case it's a GraphEdge (for cursor pagination) $parentGraphEdgeEndpoint = $parentNodeId && $parentKey ? '/' . $parentNodeId . '/' . $parentKey : null; $className = static::BASE_GRAPH_EDGE_CLASS; return new $className($this->response->getRequest(), $dataList, $metaData, $parentGraphEdgeEndpoint, $subclassName); } /** * Get the meta data from a list in a Graph response. * * @param array $data The Graph response. * * @return array */ public function getMetaData(array $data) { unset($data['data']); return $data; } /** * Determines whether or not the data should be cast as a GraphEdge. * * @param array $data * * @return boolean */ public static function isCastableAsGraphEdge(array $data) { if ($data === []) { return true; } // Checks for a sequential numeric array which would be a GraphEdge return array_keys($data) === range(0, count($data) - 1); } /** * Ensures that the subclass in question is valid. * * @param string $subclassName The GraphNode subclass to validate. * * @throws FacebookSDKException */ public static function validateSubclass($subclassName) { if ($subclassName == static::BASE_GRAPH_NODE_CLASS || is_subclass_of($subclassName, static::BASE_GRAPH_NODE_CLASS)) { return; } throw new FacebookSDKException('The given subclass "' . $subclassName . '" is not valid. Cannot cast to an object that is not a GraphNode subclass.', 620); } } PKCA#]���xxccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphUser.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphUser * * @package Facebook */ class GraphUser extends GraphNode { /** * @var array Maps object key names to Graph object types. */ protected static $graphObjectMap = [ 'hometown' => '\Facebook\GraphNodes\GraphPage', 'location' => '\Facebook\GraphNodes\GraphPage', 'significant_other' => '\Facebook\GraphNodes\GraphUser', 'picture' => '\Facebook\GraphNodes\GraphPicture', ]; /** * Returns the ID for the user as a string if present. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns the name for the user as a string if present. * * @return string|null */ public function getName() { return $this->getField('name'); } /** * Returns the first name for the user as a string if present. * * @return string|null */ public function getFirstName() { return $this->getField('first_name'); } /** * Returns the middle name for the user as a string if present. * * @return string|null */ public function getMiddleName() { return $this->getField('middle_name'); } /** * Returns the last name for the user as a string if present. * * @return string|null */ public function getLastName() { return $this->getField('last_name'); } /** * Returns the email for the user as a string if present. * * @return string|null */ public function getEmail() { return $this->getField('email'); } /** * Returns the gender for the user as a string if present. * * @return string|null */ public function getGender() { return $this->getField('gender'); } /** * Returns the Facebook URL for the user as a string if available. * * @return string|null */ public function getLink() { return $this->getField('link'); } /** * Returns the users birthday, if available. * * @return Birthday|null */ public function getBirthday() { return $this->getField('birthday'); } /** * Returns the current location of the user as a GraphPage. * * @return GraphPage|null */ public function getLocation() { return $this->getField('location'); } /** * Returns the current location of the user as a GraphPage. * * @return GraphPage|null */ public function getHometown() { return $this->getField('hometown'); } /** * Returns the current location of the user as a GraphUser. * * @return GraphUser|null */ public function getSignificantOther() { return $this->getField('significant_other'); } /** * Returns the picture of the user as a GraphPicture * * @return GraphPicture|null */ public function getPicture() { return $this->getField('picture'); } } PKCA#]�>�Y��dcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphGroup.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphGroup * * @package Facebook */ class GraphGroup extends GraphNode { /** * @var array Maps object key names to GraphNode types. */ protected static $graphObjectMap = [ 'cover' => '\Facebook\GraphNodes\GraphCoverPhoto', 'venue' => '\Facebook\GraphNodes\GraphLocation', ]; /** * Returns the `id` (The Group ID) as string if present. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns the `cover` (The cover photo of the Group) as GraphCoverPhoto if present. * * @return GraphCoverPhoto|null */ public function getCover() { return $this->getField('cover'); } /** * Returns the `description` (A brief description of the Group) as string if present. * * @return string|null */ public function getDescription() { return $this->getField('description'); } /** * Returns the `email` (The email address to upload content to the Group. Only current members of the Group can use this) as string if present. * * @return string|null */ public function getEmail() { return $this->getField('email'); } /** * Returns the `icon` (The URL for the Group's icon) as string if present. * * @return string|null */ public function getIcon() { return $this->getField('icon'); } /** * Returns the `link` (The Group's website) as string if present. * * @return string|null */ public function getLink() { return $this->getField('link'); } /** * Returns the `name` (The name of the Group) as string if present. * * @return string|null */ public function getName() { return $this->getField('name'); } /** * Returns the `member_request_count` (Number of people asking to join the group.) as int if present. * * @return int|null */ public function getMemberRequestCount() { return $this->getField('member_request_count'); } /** * Returns the `owner` (The profile that created this Group) as GraphNode if present. * * @return GraphNode|null */ public function getOwner() { return $this->getField('owner'); } /** * Returns the `parent` (The parent Group of this Group, if it exists) as GraphNode if present. * * @return GraphNode|null */ public function getParent() { return $this->getField('parent'); } /** * Returns the `privacy` (The privacy setting of the Group) as string if present. * * @return string|null */ public function getPrivacy() { return $this->getField('privacy'); } /** * Returns the `updated_time` (The last time the Group was updated (this includes changes in the Group's properties and changes in posts and comments if user can see them)) as \DateTime if present. * * @return \DateTime|null */ public function getUpdatedTime() { return $this->getField('updated_time'); } /** * Returns the `venue` (The location for the Group) as GraphLocation if present. * * @return GraphLocation|null */ public function getVenue() { return $this->getField('venue'); } } PKCA#]WV%ccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphList.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphList * * @package Facebook * * @deprecated 5.0.0 GraphList has been renamed to GraphEdge * @todo v6: Remove this class */ class GraphList extends GraphEdge { } PKCA#]�M��dcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEvent.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphEvent * * @package Facebook */ class GraphEvent extends GraphNode { /** * @var array Maps object key names to GraphNode types. */ protected static $graphObjectMap = [ 'cover' => '\Facebook\GraphNodes\GraphCoverPhoto', 'place' => '\Facebook\GraphNodes\GraphPage', 'picture' => '\Facebook\GraphNodes\GraphPicture', 'parent_group' => '\Facebook\GraphNodes\GraphGroup', ]; /** * Returns the `id` (The event ID) as string if present. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns the `cover` (Cover picture) as GraphCoverPhoto if present. * * @return GraphCoverPhoto|null */ public function getCover() { return $this->getField('cover'); } /** * Returns the `description` (Long-form description) as string if present. * * @return string|null */ public function getDescription() { return $this->getField('description'); } /** * Returns the `end_time` (End time, if one has been set) as DateTime if present. * * @return \DateTime|null */ public function getEndTime() { return $this->getField('end_time'); } /** * Returns the `is_date_only` (Whether the event only has a date specified, but no time) as bool if present. * * @return bool|null */ public function getIsDateOnly() { return $this->getField('is_date_only'); } /** * Returns the `name` (Event name) as string if present. * * @return string|null */ public function getName() { return $this->getField('name'); } /** * Returns the `owner` (The profile that created the event) as GraphNode if present. * * @return GraphNode|null */ public function getOwner() { return $this->getField('owner'); } /** * Returns the `parent_group` (The group the event belongs to) as GraphGroup if present. * * @return GraphGroup|null */ public function getParentGroup() { return $this->getField('parent_group'); } /** * Returns the `place` (Event Place information) as GraphPage if present. * * @return GraphPage|null */ public function getPlace() { return $this->getField('place'); } /** * Returns the `privacy` (Who can see the event) as string if present. * * @return string|null */ public function getPrivacy() { return $this->getField('privacy'); } /** * Returns the `start_time` (Start time) as DateTime if present. * * @return \DateTime|null */ public function getStartTime() { return $this->getField('start_time'); } /** * Returns the `ticket_uri` (The link users can visit to buy a ticket to this event) as string if present. * * @return string|null */ public function getTicketUri() { return $this->getField('ticket_uri'); } /** * Returns the `timezone` (Timezone) as string if present. * * @return string|null */ public function getTimezone() { return $this->getField('timezone'); } /** * Returns the `updated_time` (Last update time) as DateTime if present. * * @return \DateTime|null */ public function getUpdatedTime() { return $this->getField('updated_time'); } /** * Returns the `picture` (Event picture) as GraphPicture if present. * * @return GraphPicture|null */ public function getPicture() { return $this->getField('picture'); } /** * Returns the `attending_count` (Number of people attending the event) as int if present. * * @return int|null */ public function getAttendingCount() { return $this->getField('attending_count'); } /** * Returns the `declined_count` (Number of people who declined the event) as int if present. * * @return int|null */ public function getDeclinedCount() { return $this->getField('declined_count'); } /** * Returns the `maybe_count` (Number of people who maybe going to the event) as int if present. * * @return int|null */ public function getMaybeCount() { return $this->getField('maybe_count'); } /** * Returns the `noreply_count` (Number of people who did not reply to the event) as int if present. * * @return int|null */ public function getNoreplyCount() { return $this->getField('noreply_count'); } /** * Returns the `invited_count` (Number of people invited to the event) as int if present. * * @return int|null */ public function getInvitedCount() { return $this->getField('invited_count'); } } PKCA#]�n��ecomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObject.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphObject * * @package Facebook * * @deprecated 5.0.0 GraphObject has been renamed to GraphNode * @todo v6: Remove this class */ class GraphObject extends GraphNode { } PKCA#]��W%� � gcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphLocation.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphLocation * * @package Facebook */ class GraphLocation extends GraphNode { /** * Returns the street component of the location * * @return string|null */ public function getStreet() { return $this->getField('street'); } /** * Returns the city component of the location * * @return string|null */ public function getCity() { return $this->getField('city'); } /** * Returns the state component of the location * * @return string|null */ public function getState() { return $this->getField('state'); } /** * Returns the country component of the location * * @return string|null */ public function getCountry() { return $this->getField('country'); } /** * Returns the zipcode component of the location * * @return string|null */ public function getZip() { return $this->getField('zip'); } /** * Returns the latitude component of the location * * @return float|null */ public function getLatitude() { return $this->getField('latitude'); } /** * Returns the street component of the location * * @return float|null */ public function getLongitude() { return $this->getField('longitude'); } } PKCA#]�`��ccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphEdge.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use Facebook\FacebookRequest; use Facebook\Url\FacebookUrlManipulator; use Facebook\Exceptions\FacebookSDKException; /** * Class GraphEdge * * @package Facebook */ class GraphEdge extends Collection { /** * @var FacebookRequest The original request that generated this data. */ protected $request; /** * @var array An array of Graph meta data like pagination, etc. */ protected $metaData = []; /** * @var string|null The parent Graph edge endpoint that generated the list. */ protected $parentEdgeEndpoint; /** * @var string|null The subclass of the child GraphNode's. */ protected $subclassName; /** * Init this collection of GraphNode's. * * @param FacebookRequest $request The original request that generated this data. * @param array $data An array of GraphNode's. * @param array $metaData An array of Graph meta data like pagination, etc. * @param string|null $parentEdgeEndpoint The parent Graph edge endpoint that generated the list. * @param string|null $subclassName The subclass of the child GraphNode's. */ public function __construct(FacebookRequest $request, array $data = [], array $metaData = [], $parentEdgeEndpoint = null, $subclassName = null) { $this->request = $request; $this->metaData = $metaData; $this->parentEdgeEndpoint = $parentEdgeEndpoint; $this->subclassName = $subclassName; parent::__construct($data); } /** * Gets the parent Graph edge endpoint that generated the list. * * @return string|null */ public function getParentGraphEdge() { return $this->parentEdgeEndpoint; } /** * Gets the subclass name that the child GraphNode's are cast as. * * @return string|null */ public function getSubClassName() { return $this->subclassName; } /** * Returns the raw meta data associated with this GraphEdge. * * @return array */ public function getMetaData() { return $this->metaData; } /** * Returns the next cursor if it exists. * * @return string|null */ public function getNextCursor() { return $this->getCursor('after'); } /** * Returns the previous cursor if it exists. * * @return string|null */ public function getPreviousCursor() { return $this->getCursor('before'); } /** * Returns the cursor for a specific direction if it exists. * * @param string $direction The direction of the page: after|before * * @return string|null */ public function getCursor($direction) { if (isset($this->metaData['paging']['cursors'][$direction])) { return $this->metaData['paging']['cursors'][$direction]; } return null; } /** * Generates a pagination URL based on a cursor. * * @param string $direction The direction of the page: next|previous * * @return string|null * * @throws FacebookSDKException */ public function getPaginationUrl($direction) { $this->validateForPagination(); // Do we have a paging URL? if (!isset($this->metaData['paging'][$direction])) { return null; } $pageUrl = $this->metaData['paging'][$direction]; return FacebookUrlManipulator::baseGraphUrlEndpoint($pageUrl); } /** * Validates whether or not we can paginate on this request. * * @throws FacebookSDKException */ public function validateForPagination() { if ($this->request->getMethod() !== 'GET') { throw new FacebookSDKException('You can only paginate on a GET request.', 720); } } /** * Gets the request object needed to make a next|previous page request. * * @param string $direction The direction of the page: next|previous * * @return FacebookRequest|null * * @throws FacebookSDKException */ public function getPaginationRequest($direction) { $pageUrl = $this->getPaginationUrl($direction); if (!$pageUrl) { return null; } $newRequest = clone $this->request; $newRequest->setEndpoint($pageUrl); return $newRequest; } /** * Gets the request object needed to make a "next" page request. * * @return FacebookRequest|null * * @throws FacebookSDKException */ public function getNextPageRequest() { return $this->getPaginationRequest('next'); } /** * Gets the request object needed to make a "previous" page request. * * @return FacebookRequest|null * * @throws FacebookSDKException */ public function getPreviousPageRequest() { return $this->getPaginationRequest('previous'); } /** * The total number of results according to Graph if it exists. * * This will be returned if the summary=true modifier is present in the request. * * @return int|null */ public function getTotalCount() { if (isset($this->metaData['summary']['total_count'])) { return $this->metaData['summary']['total_count']; } return null; } /** * @inheritDoc */ public function map(\Closure $callback) { return new static( $this->request, array_map($callback, $this->items, array_keys($this->items)), $this->metaData, $this->parentEdgeEndpoint, $this->subclassName ); } } PKCA#]��{mmjcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphApplication.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphApplication * * @package Facebook */ class GraphApplication extends GraphNode { /** * Returns the ID for the application. * * @return string|null */ public function getId() { return $this->getField('id'); } } PKCA#]���IIccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphNode.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphNode * * @package Facebook */ class GraphNode extends Collection { /** * @var array Maps object key names to Graph object types. */ protected static $graphObjectMap = []; /** * Init this Graph object. * * @param array $data */ public function __construct(array $data = []) { parent::__construct($this->castItems($data)); } /** * Iterates over an array and detects the types each node * should be cast to and returns all the items as an array. * * @TODO Add auto-casting to AccessToken entities. * * @param array $data The array to iterate over. * * @return array */ public function castItems(array $data) { $items = []; foreach ($data as $k => $v) { if ($this->shouldCastAsDateTime($k) && (is_numeric($v) || $this->isIso8601DateString($v)) ) { $items[$k] = $this->castToDateTime($v); } elseif ($k === 'birthday') { $items[$k] = $this->castToBirthday($v); } else { $items[$k] = $v; } } return $items; } /** * Uncasts any auto-casted datatypes. * Basically the reverse of castItems(). * * @return array */ public function uncastItems() { $items = $this->asArray(); return array_map(function ($v) { if ($v instanceof \DateTime) { return $v->format(\DateTime::ISO8601); } return $v; }, $items); } /** * Get the collection of items as JSON. * * @param int $options * * @return string */ public function asJson($options = 0) { return json_encode($this->uncastItems(), $options); } /** * Detects an ISO 8601 formatted string. * * @param string $string * * @return boolean * * @see https://developers.facebook.com/docs/graph-api/using-graph-api/#readmodifiers * @see http://www.cl.cam.ac.uk/~mgk25/iso-time.html * @see http://en.wikipedia.org/wiki/ISO_8601 */ public function isIso8601DateString($string) { // This insane regex was yoinked from here: // http://www.pelagodesign.com/blog/2009/05/20/iso-8601-date-validation-that-doesnt-suck/ // ...and I'm all like: // http://thecodinglove.com/post/95378251969/when-code-works-and-i-dont-know-why $crazyInsaneRegexThatSomehowDetectsIso8601 = '/^([\+-]?\d{4}(?!\d{2}\b))' . '((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?' . '|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d' . '|[12]\d{2}|3([0-5]\d|6[1-6])))([T\s]((([01]\d|2[0-3])' . '((:?)[0-5]\d)?|24\:?00)([\.,]\d+(?!:))?)?(\17[0-5]\d' . '([\.,]\d+)?)?([zZ]|([\+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/'; return preg_match($crazyInsaneRegexThatSomehowDetectsIso8601, $string) === 1; } /** * Determines if a value from Graph should be cast to DateTime. * * @param string $key * * @return boolean */ public function shouldCastAsDateTime($key) { return in_array($key, [ 'created_time', 'updated_time', 'start_time', 'end_time', 'backdated_time', 'issued_at', 'expires_at', 'publish_time', 'joined' ], true); } /** * Casts a date value from Graph to DateTime. * * @param int|string $value * * @return \DateTime */ public function castToDateTime($value) { if (is_int($value)) { $dt = new \DateTime(); $dt->setTimestamp($value); } else { $dt = new \DateTime($value); } return $dt; } /** * Casts a birthday value from Graph to Birthday * * @param string $value * * @return Birthday */ public function castToBirthday($value) { return new Birthday($value); } /** * Getter for $graphObjectMap. * * @return array */ public static function getObjectMap() { return static::$graphObjectMap; } } PKCA#]��1���bcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Birthday.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Birthday object to handle various Graph return formats * * @package Facebook */ class Birthday extends DateTime { /** * @var bool */ private $hasDate = false; /** * @var bool */ private $hasYear = false; /** * Parses Graph birthday format to set indication flags, possible values: * * MM/DD/YYYY * MM/DD * YYYY * * @link https://developers.facebook.com/docs/graph-api/reference/user * * @param string $date */ public function __construct($date) { $parts = explode('/', $date); $this->hasYear = count($parts) === 3 || count($parts) === 1; $this->hasDate = count($parts) === 3 || count($parts) === 2; parent::__construct($date); } /** * Returns whether date object contains birth day and month * * @return bool */ public function hasDate() { return $this->hasDate; } /** * Returns whether date object contains birth year * * @return bool */ public function hasYear() { return $this->hasYear; } } PKCA#]�'!f+ + jcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphSessionInfo.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphSessionInfo * * @package Facebook */ class GraphSessionInfo extends GraphNode { /** * Returns the application id the token was issued for. * * @return string|null */ public function getAppId() { return $this->getField('app_id'); } /** * Returns the application name the token was issued for. * * @return string|null */ public function getApplication() { return $this->getField('application'); } /** * Returns the date & time that the token expires. * * @return \DateTime|null */ public function getExpiresAt() { return $this->getField('expires_at'); } /** * Returns whether the token is valid. * * @return boolean */ public function getIsValid() { return $this->getField('is_valid'); } /** * Returns the date & time the token was issued at. * * @return \DateTime|null */ public function getIssuedAt() { return $this->getField('issued_at'); } /** * Returns the scope permissions associated with the token. * * @return array */ public function getScopes() { return $this->getField('scopes'); } /** * Returns the login id of the user associated with the token. * * @return string|null */ public function getUserId() { return $this->getField('user_id'); } } PKCA#]�n�"PPlcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphObjectFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use Facebook\Exceptions\FacebookSDKException; /** * Class GraphObjectFactory * * @package Facebook * * @deprecated 5.0.0 GraphObjectFactory has been renamed to GraphNodeFactory * @todo v6: Remove this class */ class GraphObjectFactory extends GraphNodeFactory { /** * @const string The base graph object class. */ const BASE_GRAPH_NODE_CLASS = '\Facebook\GraphNodes\GraphObject'; /** * @const string The base graph edge class. */ const BASE_GRAPH_EDGE_CLASS = '\Facebook\GraphNodes\GraphList'; /** * Tries to convert a FacebookResponse entity into a GraphNode. * * @param string|null $subclassName The GraphNode sub class to cast to. * * @return GraphNode * * @deprecated 5.0.0 GraphObjectFactory has been renamed to GraphNodeFactory */ public function makeGraphObject($subclassName = null) { return $this->makeGraphNode($subclassName); } /** * Convenience method for creating a GraphEvent collection. * * @return GraphEvent * * @throws FacebookSDKException */ public function makeGraphEvent() { return $this->makeGraphNode(static::BASE_GRAPH_OBJECT_PREFIX . 'GraphEvent'); } /** * Tries to convert a FacebookResponse entity into a GraphEdge. * * @param string|null $subclassName The GraphNode sub class to cast the list items to. * @param boolean $auto_prefix Toggle to auto-prefix the subclass name. * * @return GraphEdge * * @deprecated 5.0.0 GraphObjectFactory has been renamed to GraphNodeFactory */ public function makeGraphList($subclassName = null, $auto_prefix = true) { return $this->makeGraphEdge($subclassName, $auto_prefix); } } PKCA#]]:CTdcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphAlbum.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphAlbum * * @package Facebook */ class GraphAlbum extends GraphNode { /** * @var array Maps object key names to Graph object types. */ protected static $graphObjectMap = [ 'from' => '\Facebook\GraphNodes\GraphUser', 'place' => '\Facebook\GraphNodes\GraphPage', ]; /** * Returns the ID for the album. * * @return string|null */ public function getId() { return $this->getField('id'); } /** * Returns whether the viewer can upload photos to this album. * * @return boolean|null */ public function getCanUpload() { return $this->getField('can_upload'); } /** * Returns the number of photos in this album. * * @return int|null */ public function getCount() { return $this->getField('count'); } /** * Returns the ID of the album's cover photo. * * @return string|null */ public function getCoverPhoto() { return $this->getField('cover_photo'); } /** * Returns the time the album was initially created. * * @return \DateTime|null */ public function getCreatedTime() { return $this->getField('created_time'); } /** * Returns the time the album was updated. * * @return \DateTime|null */ public function getUpdatedTime() { return $this->getField('updated_time'); } /** * Returns the description of the album. * * @return string|null */ public function getDescription() { return $this->getField('description'); } /** * Returns profile that created the album. * * @return GraphUser|null */ public function getFrom() { return $this->getField('from'); } /** * Returns profile that created the album. * * @return GraphPage|null */ public function getPlace() { return $this->getField('place'); } /** * Returns a link to this album on Facebook. * * @return string|null */ public function getLink() { return $this->getField('link'); } /** * Returns the textual location of the album. * * @return string|null */ public function getLocation() { return $this->getField('location'); } /** * Returns the title of the album. * * @return string|null */ public function getName() { return $this->getField('name'); } /** * Returns the privacy settings for the album. * * @return string|null */ public function getPrivacy() { return $this->getField('privacy'); } /** * Returns the type of the album. * * enum{ profile, mobile, wall, normal, album } * * @return string|null */ public function getType() { return $this->getField('type'); } } PKCA#]�ߧ���dcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/Collection.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class Collection * * Modified version of Collection in "illuminate/support" by Taylor Otwell * * @package Facebook */ use ArrayAccess; use ArrayIterator; use Countable; use IteratorAggregate; class Collection implements ArrayAccess, Countable, IteratorAggregate { /** * The items contained in the collection. * * @var array */ protected $items = []; /** * Create a new collection. * * @param array $items */ public function __construct(array $items = []) { $this->items = $items; } /** * Gets the value of a field from the Graph node. * * @param string $name The field to retrieve. * @param mixed $default The default to return if the field doesn't exist. * * @return mixed */ public function getField($name, $default = null) { if (isset($this->items[$name])) { return $this->items[$name]; } return $default; } /** * Gets the value of the named property for this graph object. * * @param string $name The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed * * @deprecated 5.0.0 getProperty() has been renamed to getField() * @todo v6: Remove this method */ public function getProperty($name, $default = null) { return $this->getField($name, $default); } /** * Returns a list of all fields set on the object. * * @return array */ public function getFieldNames() { return array_keys($this->items); } /** * Returns a list of all properties set on the object. * * @return array * * @deprecated 5.0.0 getPropertyNames() has been renamed to getFieldNames() * @todo v6: Remove this method */ public function getPropertyNames() { return $this->getFieldNames(); } /** * Get all of the items in the collection. * * @return array */ public function all() { return $this->items; } /** * Get the collection of items as a plain array. * * @return array */ public function asArray() { return array_map(function ($value) { return $value instanceof Collection ? $value->asArray() : $value; }, $this->items); } /** * Run a map over each of the items. * * @param \Closure $callback * * @return static */ public function map(\Closure $callback) { return new static(array_map($callback, $this->items, array_keys($this->items))); } /** * Get the collection of items as JSON. * * @param int $options * * @return string */ public function asJson($options = 0) { return json_encode($this->asArray(), $options); } /** * Count the number of items in the collection. * * @return int */ public function count() { return count($this->items); } /** * Get an iterator for the items. * * @return ArrayIterator */ public function getIterator() { return new ArrayIterator($this->items); } /** * Determine if an item exists at an offset. * * @param mixed $key * * @return bool */ public function offsetExists($key) { return array_key_exists($key, $this->items); } /** * Get an item at a given offset. * * @param mixed $key * * @return mixed */ public function offsetGet($key) { return $this->items[$key]; } /** * Set the item at a given offset. * * @param mixed $key * @param mixed $value * * @return void */ public function offsetSet($key, $value) { if (is_null($key)) { $this->items[] = $value; } else { $this->items[$key] = $value; } } /** * Unset the item at a given offset. * * @param string $key * * @return void */ public function offsetUnset($key) { unset($this->items[$key]); } /** * Convert the collection to its string representation. * * @return string */ public function __toString() { return $this->asJson(); } } PKCA#]%p&��icomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/GraphNodes/GraphCoverPhoto.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphCoverPhoto * * @package Facebook */ class GraphCoverPhoto extends GraphNode { /** * Returns the id of cover if it exists * * @return int|null */ public function getId() { return $this->getField('id'); } /** * Returns the source of cover if it exists * * @return string|null */ public function getSource() { return $this->getField('source'); } /** * Returns the offset_x of cover if it exists * * @return int|null */ public function getOffsetX() { return $this->getField('offset_x'); } /** * Returns the offset_y of cover if it exists * * @return int|null */ public function getOffsetY() { return $this->getField('offset_y'); } } PKCA#]t� i<<�components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/UrandomPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class UrandomPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from /dev/urandom. '; /** * @throws FacebookSDKException */ public function __construct() { if (ini_get('open_basedir')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'There is an open_basedir constraint that prevents access to /dev/urandom.' ); } if (!is_readable('/dev/urandom')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Unable to read from /dev/urandom.' ); } } /** * @inheritdoc */ public function getPseudoRandomString($length) { $this->validateLength($length); $stream = fopen('/dev/urandom', 'rb'); if (!is_resource($stream)) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Unable to open stream to /dev/urandom.' ); } if (!defined('HHVM_VERSION')) { stream_set_read_buffer($stream, 0); } $binaryString = fread($stream, $length); fclose($stream); if (!$binaryString) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Stream to /dev/urandom returned no data.' ); } return $this->binToHex($binaryString, $length); } } PKCA#]�y� �components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorTrait.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; trait PseudoRandomStringGeneratorTrait { /** * Validates the length argument of a random string. * * @param int $length The length to validate. * * @throws \InvalidArgumentException */ public function validateLength($length) { if (!is_int($length)) { throw new \InvalidArgumentException('getPseudoRandomString() expects an integer for the string length'); } if ($length < 1) { throw new \InvalidArgumentException('getPseudoRandomString() expects a length greater than 1'); } } /** * Converts binary data to hexadecimal of arbitrary length. * * @param string $binaryData The binary data to convert to hex. * @param int $length The length of the string to return. * * @return string */ public function binToHex($binaryData, $length) { return \substr(\bin2hex($binaryData), 0, $length); } } PKCA#]�%Jkk�components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; /** * Interface * * @package Facebook */ interface PseudoRandomStringGeneratorInterface { /** * Get a cryptographically secure pseudo-random string of arbitrary length. * * @see http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers/ * * @param int $length The length of the string to return. * * @return string * * @throws \Facebook\Exceptions\FacebookSDKException|\InvalidArgumentException */ public function getPseudoRandomString($length); } PKCA#]��8# # �components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/OpenSslPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class OpenSslPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from openssl_random_pseudo_bytes().'; /** * @throws FacebookSDKException */ public function __construct() { if (!function_exists('openssl_random_pseudo_bytes')) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'The function openssl_random_pseudo_bytes() does not exist.'); } } /** * @inheritdoc */ public function getPseudoRandomString($length) { $this->validateLength($length); $wasCryptographicallyStrong = false; $binaryString = openssl_random_pseudo_bytes($length, $wasCryptographicallyStrong); if ($binaryString === false) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'openssl_random_pseudo_bytes() returned an unknown error.'); } if ($wasCryptographicallyStrong !== true) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'openssl_random_pseudo_bytes() returned a pseudo-random string but it was not cryptographically secure and cannot be used.'); } return $this->binToHex($binaryString, $length); } } PKCA#]��B �components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/McryptPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class McryptPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from mcrypt_create_iv(). '; /** * @throws FacebookSDKException */ public function __construct() { if (!function_exists('mcrypt_create_iv')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'The function mcrypt_create_iv() does not exist.' ); } } /** * @inheritdoc */ public function getPseudoRandomString($length) { $this->validateLength($length); $binaryString = mcrypt_create_iv($length, MCRYPT_DEV_URANDOM); if ($binaryString === false) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'mcrypt_create_iv() returned an error.' ); } return $this->binToHex($binaryString, $length); } } PKCA#]�����components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/RandomBytesPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class RandomBytesPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from random_bytes(). '; /** * @throws FacebookSDKException */ public function __construct() { if (!function_exists('random_bytes')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'The function random_bytes() does not exist.' ); } } /** * @inheritdoc */ public function getPseudoRandomString($length) { $this->validateLength($length); return $this->binToHex(random_bytes($length), $length); } } PKCA#]��\���components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; use InvalidArgumentException; class PseudoRandomStringGeneratorFactory { private function __construct() { // a factory constructor should never be invoked } /** * Pseudo random string generator creation. * * @param PseudoRandomStringGeneratorInterface|string|null $generator * * @throws InvalidArgumentException If the pseudo random string generator must be set to "random_bytes", "mcrypt", "openssl", or "urandom", or be an instance of Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface. * * @return PseudoRandomStringGeneratorInterface */ public static function createPseudoRandomStringGenerator($generator) { if (!$generator) { return self::detectDefaultPseudoRandomStringGenerator(); } if ($generator instanceof PseudoRandomStringGeneratorInterface) { return $generator; } if ('random_bytes' === $generator) { return new RandomBytesPseudoRandomStringGenerator(); } if ('mcrypt' === $generator) { return new McryptPseudoRandomStringGenerator(); } if ('openssl' === $generator) { return new OpenSslPseudoRandomStringGenerator(); } if ('urandom' === $generator) { return new UrandomPseudoRandomStringGenerator(); } throw new InvalidArgumentException('The pseudo random string generator must be set to "random_bytes", "mcrypt", "openssl", or "urandom", or be an instance of Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface'); } /** * Detects which pseudo-random string generator to use. * * @throws FacebookSDKException If unable to detect a cryptographically secure pseudo-random string generator. * * @return PseudoRandomStringGeneratorInterface */ private static function detectDefaultPseudoRandomStringGenerator() { // Check for PHP 7's CSPRNG first to keep mcrypt deprecation messages from appearing in PHP 7.1. if (function_exists('random_bytes')) { return new RandomBytesPseudoRandomStringGenerator(); } // Since openssl_random_pseudo_bytes() can sometimes return non-cryptographically // secure pseudo-random strings (in rare cases), we check for mcrypt_create_iv() next. if (function_exists('mcrypt_create_iv')) { return new McryptPseudoRandomStringGenerator(); } if (function_exists('openssl_random_pseudo_bytes')) { return new OpenSslPseudoRandomStringGenerator(); } if (!ini_get('open_basedir') && is_readable('/dev/urandom')) { return new UrandomPseudoRandomStringGenerator(); } throw new FacebookSDKException('Unable to detect a cryptographically secure pseudo-random string generator.'); } } PKCA#]��q��ycomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthenticationException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookAuthenticationException * * @package Facebook */ class FacebookAuthenticationException extends FacebookSDKException { } PKCA#]���)��xcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookAuthorizationException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookAuthorizationException * * @package Facebook */ class FacebookAuthorizationException extends FacebookSDKException { } PKCA#]O�l��pcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookOtherException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookOtherException * * @package Facebook */ class FacebookOtherException extends FacebookSDKException { } PKCA#]�ͱ���qcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookClientException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookClientException * * @package Facebook */ class FacebookClientException extends FacebookSDKException { } PKCA#],�����qcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookServerException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookServerException * * @package Facebook */ class FacebookServerException extends FacebookSDKException { } PKCA#]5���qqscomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResponseException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; use Facebook\FacebookResponse; /** * Class FacebookResponseException * * @package Facebook */ class FacebookResponseException extends FacebookSDKException { /** * @var FacebookResponse The response that threw the exception. */ protected $response; /** * @var array Decoded response. */ protected $responseData; /** * Creates a FacebookResponseException. * * @param FacebookResponse $response The response that threw the exception. * @param FacebookSDKException $previousException The more detailed exception. */ public function __construct(FacebookResponse $response, FacebookSDKException $previousException = null) { $this->response = $response; $this->responseData = $response->getDecodedBody(); $errorMessage = $this->get('message', 'Unknown error from Graph.'); $errorCode = $this->get('code', -1); parent::__construct($errorMessage, $errorCode, $previousException); } /** * A factory for creating the appropriate exception based on the response from Graph. * * @param FacebookResponse $response The response that threw the exception. * * @return FacebookResponseException */ public static function create(FacebookResponse $response) { $data = $response->getDecodedBody(); if (!isset($data['error']['code']) && isset($data['code'])) { $data = ['error' => $data]; } $code = isset($data['error']['code']) ? $data['error']['code'] : null; $message = isset($data['error']['message']) ? $data['error']['message'] : 'Unknown error from Graph.'; if (isset($data['error']['error_subcode'])) { switch ($data['error']['error_subcode']) { // Other authentication issues case 458: case 459: case 460: case 463: case 464: case 467: return new static($response, new FacebookAuthenticationException($message, $code)); // Video upload resumable error case 1363030: case 1363019: case 1363033: case 1363021: case 1363041: return new static($response, new FacebookResumableUploadException($message, $code)); case 1363037: $previousException = new FacebookResumableUploadException($message, $code); $startOffset = isset($data['error']['error_data']['start_offset']) ? (int) $data['error']['error_data']['start_offset'] : null; $previousException->setStartOffset($startOffset); $endOffset = isset($data['error']['error_data']['end_offset']) ? (int) $data['error']['error_data']['end_offset'] : null; $previousException->setEndOffset($endOffset); return new static($response, $previousException); } } switch ($code) { // Login status or token expired, revoked, or invalid case 100: case 102: case 190: return new static($response, new FacebookAuthenticationException($message, $code)); // Server issue, possible downtime case 1: case 2: return new static($response, new FacebookServerException($message, $code)); // API Throttling case 4: case 17: case 32: case 341: case 613: return new static($response, new FacebookThrottleException($message, $code)); // Duplicate Post case 506: return new static($response, new FacebookClientException($message, $code)); } // Missing Permissions if ($code == 10 || ($code >= 200 && $code <= 299)) { return new static($response, new FacebookAuthorizationException($message, $code)); } // OAuth authentication error if (isset($data['error']['type']) && $data['error']['type'] === 'OAuthException') { return new static($response, new FacebookAuthenticationException($message, $code)); } // All others return new static($response, new FacebookOtherException($message, $code)); } /** * Checks isset and returns that or a default value. * * @param string $key * @param mixed $default * * @return mixed */ private function get($key, $default = null) { if (isset($this->responseData['error'][$key])) { return $this->responseData['error'][$key]; } return $default; } /** * Returns the HTTP status code * * @return int */ public function getHttpStatusCode() { return $this->response->getHttpStatusCode(); } /** * Returns the sub-error code * * @return int */ public function getSubErrorCode() { return $this->get('error_subcode', -1); } /** * Returns the error type * * @return string */ public function getErrorType() { return $this->get('type', ''); } /** * Returns the raw response used to create the exception. * * @return string */ public function getRawResponse() { return $this->response->getBody(); } /** * Returns the decoded response used to create the exception. * * @return array */ public function getResponseData() { return $this->responseData; } /** * Returns the response entity used to create the exception. * * @return FacebookResponse */ public function getResponse() { return $this->response; } } PKCA#]#V۱IIzcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookResumableUploadException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookResumableUploadException * * @package Facebook */ class FacebookResumableUploadException extends FacebookSDKException { protected $startOffset; protected $endOffset; /** * @return int|null */ public function getStartOffset() { return $this->startOffset; } /** * @param int|null $startOffset */ public function setStartOffset($startOffset) { $this->startOffset = $startOffset; } /** * @return int|null */ public function getEndOffset() { return $this->endOffset; } /** * @param int|null $endOffset */ public function setEndOffset($endOffset) { $this->endOffset = $endOffset; } } PKCA#]�~T���scomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookThrottleException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookThrottleException * * @package Facebook */ class FacebookThrottleException extends FacebookSDKException { } PKCA#]8@]��ncomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Exceptions/FacebookSDKException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookSDKException * * @package Facebook */ class FacebookSDKException extends \Exception { } PKCA#]$�-(>>Xcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/polyfills.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ /** * @see https://github.com/sarciszewski/php-future/blob/master/src/Security.php#L37-L51 */ if (!function_exists('hash_equals')) { function hash_equals($knownString, $userString) { if (function_exists('mb_strlen')) { $kLen = mb_strlen($knownString, '8bit'); $uLen = mb_strlen($userString, '8bit'); } else { $kLen = strlen($knownString); $uLen = strlen($userString); } if ($kLen !== $uLen) { return false; } $result = 0; for ($i = 0; $i < $kLen; $i++) { $result |= (ord($knownString[$i]) ^ ord($userString[$i])); } // They are only identical strings if $result is exactly 0... return 0 === $result; } } PKCA#]�Hbbdcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookBatchResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use ArrayIterator; use IteratorAggregate; use ArrayAccess; /** * Class FacebookBatchResponse * * @package Facebook */ class FacebookBatchResponse extends FacebookResponse implements IteratorAggregate, ArrayAccess { /** * @var FacebookBatchRequest The original entity that made the batch request. */ protected $batchRequest; /** * @var array An array of FacebookResponse entities. */ protected $responses = []; /** * Creates a new Response entity. * * @param FacebookBatchRequest $batchRequest * @param FacebookResponse $response */ public function __construct(FacebookBatchRequest $batchRequest, FacebookResponse $response) { $this->batchRequest = $batchRequest; $request = $response->getRequest(); $body = $response->getBody(); $httpStatusCode = $response->getHttpStatusCode(); $headers = $response->getHeaders(); parent::__construct($request, $body, $httpStatusCode, $headers); $responses = $response->getDecodedBody(); $this->setResponses($responses); } /** * Returns an array of FacebookResponse entities. * * @return array */ public function getResponses() { return $this->responses; } /** * The main batch response will be an array of requests so * we need to iterate over all the responses. * * @param array $responses */ public function setResponses(array $responses) { $this->responses = []; foreach ($responses as $key => $graphResponse) { $this->addResponse($key, $graphResponse); } } /** * Add a response to the list. * * @param int $key * @param array|null $response */ public function addResponse($key, $response) { $originalRequestName = isset($this->batchRequest[$key]['name']) ? $this->batchRequest[$key]['name'] : $key; $originalRequest = isset($this->batchRequest[$key]['request']) ? $this->batchRequest[$key]['request'] : null; $httpResponseBody = isset($response['body']) ? $response['body'] : null; $httpResponseCode = isset($response['code']) ? $response['code'] : null; // @TODO With PHP 5.5 support, this becomes array_column($response['headers'], 'value', 'name') $httpResponseHeaders = isset($response['headers']) ? $this->normalizeBatchHeaders($response['headers']) : []; $this->responses[$originalRequestName] = new FacebookResponse( $originalRequest, $httpResponseBody, $httpResponseCode, $httpResponseHeaders ); } /** * @inheritdoc */ public function getIterator() { return new ArrayIterator($this->responses); } /** * @inheritdoc */ public function offsetSet($offset, $value) { $this->addResponse($offset, $value); } /** * @inheritdoc */ public function offsetExists($offset) { return isset($this->responses[$offset]); } /** * @inheritdoc */ public function offsetUnset($offset) { unset($this->responses[$offset]); } /** * @inheritdoc */ public function offsetGet($offset) { return isset($this->responses[$offset]) ? $this->responses[$offset] : null; } /** * Converts the batch header array into a standard format. * @TODO replace with array_column() when PHP 5.5 is supported. * * @param array $batchHeaders * * @return array */ private function normalizeBatchHeaders(array $batchHeaders) { $headers = []; foreach ($batchHeaders as $header) { $headers[$header['name']] = $header['value']; } return $headers; } } PKCA#]��33Wcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/autoload.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ /** * You only need this file if you are not using composer. * Why are you not using composer? * https://getcomposer.org/ */ if (version_compare(PHP_VERSION, '5.4.0', '<')) { throw new Exception('The Facebook SDK requires PHP version 5.4 or higher.'); } require_once __DIR__ . '/polyfills.php'; /** * Register the autoloader for the Facebook SDK classes. * * Based off the official PSR-4 autoloader example found here: * https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-4-autoloader-examples.md * * @param string $class The fully-qualified class name. * * @return void */ spl_autoload_register(function ($class) { // project-specific namespace prefix $prefix = 'Facebook\\'; // For backwards compatibility $customBaseDir = ''; // @todo v6: Remove support for 'FACEBOOK_SDK_V4_SRC_DIR' if (defined('FACEBOOK_SDK_V4_SRC_DIR')) { $customBaseDir = FACEBOOK_SDK_V4_SRC_DIR; } elseif (defined('FACEBOOK_SDK_SRC_DIR')) { $customBaseDir = FACEBOOK_SDK_SRC_DIR; } // base directory for the namespace prefix $baseDir = $customBaseDir ?: __DIR__ . '/'; // does the class use the namespace prefix? $len = strlen($prefix); if (strncmp($prefix, $class, $len) !== 0) { // no, move to the next registered autoloader return; } // get the relative class name $relativeClass = substr($class, $len); // replace the namespace prefix with the base directory, replace namespace // separators with directory separators in the relative class name, append // with .php $file = rtrim($baseDir, '/') . '/' . str_replace('\\', '/', $relativeClass) . '.php'; // if the file exists, require it if (file_exists($file)) { require $file; } }); PKCA#]Ѭ59-3-3^components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Url\FacebookUrlManipulator; use Facebook\FileUpload\FacebookFile; use Facebook\FileUpload\FacebookVideo; use Facebook\Http\RequestBodyMultipart; use Facebook\Http\RequestBodyUrlEncoded; use Facebook\Exceptions\FacebookSDKException; /** * Class Request * * @package Facebook */ class FacebookRequest { /** * @var FacebookApp The Facebook app entity. */ protected $app; /** * @var string|null The access token to use for this request. */ protected $accessToken; /** * @var string The HTTP method for this request. */ protected $method; /** * @var string The Graph endpoint for this request. */ protected $endpoint; /** * @var array The headers to send with this request. */ protected $headers = []; /** * @var array The parameters to send with this request. */ protected $params = []; /** * @var array The files to send with this request. */ protected $files = []; /** * @var string ETag to send with this request. */ protected $eTag; /** * @var string Graph version to use for this request. */ protected $graphVersion; /** * Creates a new Request entity. * * @param FacebookApp|null $app * @param AccessToken|string|null $accessToken * @param string|null $method * @param string|null $endpoint * @param array|null $params * @param string|null $eTag * @param string|null $graphVersion */ public function __construct(FacebookApp $app = null, $accessToken = null, $method = null, $endpoint = null, array $params = [], $eTag = null, $graphVersion = null) { $this->setApp($app); $this->setAccessToken($accessToken); $this->setMethod($method); $this->setEndpoint($endpoint); $this->setParams($params); $this->setETag($eTag); $this->graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; } /** * Set the access token for this request. * * @param AccessToken|string|null * * @return FacebookRequest */ public function setAccessToken($accessToken) { $this->accessToken = $accessToken; if ($accessToken instanceof AccessToken) { $this->accessToken = $accessToken->getValue(); } return $this; } /** * Sets the access token with one harvested from a URL or POST params. * * @param string $accessToken The access token. * * @return FacebookRequest * * @throws FacebookSDKException */ public function setAccessTokenFromParams($accessToken) { $existingAccessToken = $this->getAccessToken(); if (!$existingAccessToken) { $this->setAccessToken($accessToken); } elseif ($accessToken !== $existingAccessToken) { throw new FacebookSDKException('Access token mismatch. The access token provided in the FacebookRequest and the one provided in the URL or POST params do not match.'); } return $this; } /** * Return the access token for this request. * * @return string|null */ public function getAccessToken() { return $this->accessToken; } /** * Return the access token for this request as an AccessToken entity. * * @return AccessToken|null */ public function getAccessTokenEntity() { return $this->accessToken ? new AccessToken($this->accessToken) : null; } /** * Set the FacebookApp entity used for this request. * * @param FacebookApp|null $app */ public function setApp(FacebookApp $app = null) { $this->app = $app; } /** * Return the FacebookApp entity used for this request. * * @return FacebookApp */ public function getApp() { return $this->app; } /** * Generate an app secret proof to sign this request. * * @return string|null */ public function getAppSecretProof() { if (!$accessTokenEntity = $this->getAccessTokenEntity()) { return null; } return $accessTokenEntity->getAppSecretProof($this->app->getSecret()); } /** * Validate that an access token exists for this request. * * @throws FacebookSDKException */ public function validateAccessToken() { $accessToken = $this->getAccessToken(); if (!$accessToken) { throw new FacebookSDKException('You must provide an access token.'); } } /** * Set the HTTP method for this request. * * @param string */ public function setMethod($method) { $this->method = strtoupper($method); } /** * Return the HTTP method for this request. * * @return string */ public function getMethod() { return $this->method; } /** * Validate that the HTTP method is set. * * @throws FacebookSDKException */ public function validateMethod() { if (!$this->method) { throw new FacebookSDKException('HTTP method not specified.'); } if (!in_array($this->method, ['GET', 'POST', 'DELETE'])) { throw new FacebookSDKException('Invalid HTTP method specified.'); } } /** * Set the endpoint for this request. * * @param string * * @return FacebookRequest * * @throws FacebookSDKException */ public function setEndpoint($endpoint) { // Harvest the access token from the endpoint to keep things in sync $params = FacebookUrlManipulator::getParamsAsArray($endpoint); if (isset($params['access_token'])) { $this->setAccessTokenFromParams($params['access_token']); } // Clean the token & app secret proof from the endpoint. $filterParams = ['access_token', 'appsecret_proof']; $this->endpoint = FacebookUrlManipulator::removeParamsFromUrl($endpoint, $filterParams); return $this; } /** * Return the endpoint for this request. * * @return string */ public function getEndpoint() { // For batch requests, this will be empty return $this->endpoint; } /** * Generate and return the headers for this request. * * @return array */ public function getHeaders() { $headers = static::getDefaultHeaders(); if ($this->eTag) { $headers['If-None-Match'] = $this->eTag; } return array_merge($this->headers, $headers); } /** * Set the headers for this request. * * @param array $headers */ public function setHeaders(array $headers) { $this->headers = array_merge($this->headers, $headers); } /** * Sets the eTag value. * * @param string $eTag */ public function setETag($eTag) { $this->eTag = $eTag; } /** * Set the params for this request. * * @param array $params * * @return FacebookRequest * * @throws FacebookSDKException */ public function setParams(array $params = []) { if (isset($params['access_token'])) { $this->setAccessTokenFromParams($params['access_token']); } // Don't let these buggers slip in. unset($params['access_token'], $params['appsecret_proof']); // @TODO Refactor code above with this //$params = $this->sanitizeAuthenticationParams($params); $params = $this->sanitizeFileParams($params); $this->dangerouslySetParams($params); return $this; } /** * Set the params for this request without filtering them first. * * @param array $params * * @return FacebookRequest */ public function dangerouslySetParams(array $params = []) { $this->params = array_merge($this->params, $params); return $this; } /** * Iterate over the params and pull out the file uploads. * * @param array $params * * @return array */ public function sanitizeFileParams(array $params) { foreach ($params as $key => $value) { if ($value instanceof FacebookFile) { $this->addFile($key, $value); unset($params[$key]); } } return $params; } /** * Add a file to be uploaded. * * @param string $key * @param FacebookFile $file */ public function addFile($key, FacebookFile $file) { $this->files[$key] = $file; } /** * Removes all the files from the upload queue. */ public function resetFiles() { $this->files = []; } /** * Get the list of files to be uploaded. * * @return array */ public function getFiles() { return $this->files; } /** * Let's us know if there is a file upload with this request. * * @return boolean */ public function containsFileUploads() { return !empty($this->files); } /** * Let's us know if there is a video upload with this request. * * @return boolean */ public function containsVideoUploads() { foreach ($this->files as $file) { if ($file instanceof FacebookVideo) { return true; } } return false; } /** * Returns the body of the request as multipart/form-data. * * @return RequestBodyMultipart */ public function getMultipartBody() { $params = $this->getPostParams(); return new RequestBodyMultipart($params, $this->files); } /** * Returns the body of the request as URL-encoded. * * @return RequestBodyUrlEncoded */ public function getUrlEncodedBody() { $params = $this->getPostParams(); return new RequestBodyUrlEncoded($params); } /** * Generate and return the params for this request. * * @return array */ public function getParams() { $params = $this->params; $accessToken = $this->getAccessToken(); if ($accessToken) { $params['access_token'] = $accessToken; $params['appsecret_proof'] = $this->getAppSecretProof(); } return $params; } /** * Only return params on POST requests. * * @return array */ public function getPostParams() { if ($this->getMethod() === 'POST') { return $this->getParams(); } return []; } /** * The graph version used for this request. * * @return string */ public function getGraphVersion() { return $this->graphVersion; } /** * Generate and return the URL for this request. * * @return string */ public function getUrl() { $this->validateMethod(); $graphVersion = FacebookUrlManipulator::forceSlashPrefix($this->graphVersion); $endpoint = FacebookUrlManipulator::forceSlashPrefix($this->getEndpoint()); $url = $graphVersion . $endpoint; if ($this->getMethod() !== 'POST') { $params = $this->getParams(); $url = FacebookUrlManipulator::appendParamsToUrl($url, $params); } return $url; } /** * Return the default headers that every request should use. * * @return array */ public static function getDefaultHeaders() { return [ 'User-Agent' => 'fb-php-' . Facebook::VERSION, 'Accept-Encoding' => '*', ]; } } PKCA#]���Yx&x&qcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessTokenMetadata.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; use Facebook\Exceptions\FacebookSDKException; /** * Class AccessTokenMetadata * * Represents metadata from an access token. * * @package Facebook * @see https://developers.facebook.com/docs/graph-api/reference/debug_token */ class AccessTokenMetadata { /** * The access token metadata. * * @var array */ protected $metadata = []; /** * Properties that should be cast as DateTime objects. * * @var array */ protected static $dateProperties = ['expires_at', 'issued_at']; /** * @param array $metadata * * @throws FacebookSDKException */ public function __construct(array $metadata) { if (!isset($metadata['data'])) { throw new FacebookSDKException('Unexpected debug token response data.', 401); } $this->metadata = $metadata['data']; $this->castTimestampsToDateTime(); } /** * Returns a value from the metadata. * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed */ public function getField($field, $default = null) { if (isset($this->metadata[$field])) { return $this->metadata[$field]; } return $default; } /** * Returns a value from the metadata. * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed * * @deprecated 5.0.0 getProperty() has been renamed to getField() * @todo v6: Remove this method */ public function getProperty($field, $default = null) { return $this->getField($field, $default); } /** * Returns a value from a child property in the metadata. * * @param string $parentField The parent property. * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed */ public function getChildProperty($parentField, $field, $default = null) { if (!isset($this->metadata[$parentField])) { return $default; } if (!isset($this->metadata[$parentField][$field])) { return $default; } return $this->metadata[$parentField][$field]; } /** * Returns a value from the error metadata. * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed */ public function getErrorProperty($field, $default = null) { return $this->getChildProperty('error', $field, $default); } /** * Returns a value from the "metadata" metadata. *Brain explodes* * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed */ public function getMetadataProperty($field, $default = null) { return $this->getChildProperty('metadata', $field, $default); } /** * The ID of the application this access token is for. * * @return string|null */ public function getAppId() { return $this->getField('app_id'); } /** * Name of the application this access token is for. * * @return string|null */ public function getApplication() { return $this->getField('application'); } /** * Any error that a request to the graph api * would return due to the access token. * * @return bool|null */ public function isError() { return $this->getField('error') !== null; } /** * The error code for the error. * * @return int|null */ public function getErrorCode() { return $this->getErrorProperty('code'); } /** * The error message for the error. * * @return string|null */ public function getErrorMessage() { return $this->getErrorProperty('message'); } /** * The error subcode for the error. * * @return int|null */ public function getErrorSubcode() { return $this->getErrorProperty('subcode'); } /** * DateTime when this access token expires. * * @return \DateTime|null */ public function getExpiresAt() { return $this->getField('expires_at'); } /** * Whether the access token is still valid or not. * * @return boolean|null */ public function getIsValid() { return $this->getField('is_valid'); } /** * DateTime when this access token was issued. * * Note that the issued_at field is not returned * for short-lived access tokens. * * @see https://developers.facebook.com/docs/facebook-login/access-tokens#debug * * @return \DateTime|null */ public function getIssuedAt() { return $this->getField('issued_at'); } /** * General metadata associated with the access token. * Can contain data like 'sso', 'auth_type', 'auth_nonce'. * * @return array|null */ public function getMetadata() { return $this->getField('metadata'); } /** * The 'sso' child property from the 'metadata' parent property. * * @return string|null */ public function getSso() { return $this->getMetadataProperty('sso'); } /** * The 'auth_type' child property from the 'metadata' parent property. * * @return string|null */ public function getAuthType() { return $this->getMetadataProperty('auth_type'); } /** * The 'auth_nonce' child property from the 'metadata' parent property. * * @return string|null */ public function getAuthNonce() { return $this->getMetadataProperty('auth_nonce'); } /** * For impersonated access tokens, the ID of * the page this token contains. * * @return string|null */ public function getProfileId() { return $this->getField('profile_id'); } /** * List of permissions that the user has granted for * the app in this access token. * * @return array */ public function getScopes() { return $this->getField('scopes'); } /** * The ID of the user this access token is for. * * @return string|null */ public function getUserId() { return $this->getField('user_id'); } /** * Ensures the app ID from the access token * metadata is what we expect. * * @param string $appId * * @throws FacebookSDKException */ public function validateAppId($appId) { if ($this->getAppId() !== $appId) { throw new FacebookSDKException('Access token metadata contains unexpected app ID.', 401); } } /** * Ensures the user ID from the access token * metadata is what we expect. * * @param string $userId * * @throws FacebookSDKException */ public function validateUserId($userId) { if ($this->getUserId() !== $userId) { throw new FacebookSDKException('Access token metadata contains unexpected user ID.', 401); } } /** * Ensures the access token has not expired yet. * * @throws FacebookSDKException */ public function validateExpiration() { if (!$this->getExpiresAt() instanceof \DateTime) { return; } if ($this->getExpiresAt()->getTimestamp() < time()) { throw new FacebookSDKException('Inspection of access token metadata shows that the access token has expired.', 401); } } /** * Converts a unix timestamp into a DateTime entity. * * @param int $timestamp * * @return \DateTime */ private function convertTimestampToDateTime($timestamp) { $dt = new \DateTime(); $dt->setTimestamp($timestamp); return $dt; } /** * Casts the unix timestamps as DateTime entities. */ private function castTimestampsToDateTime() { foreach (static::$dateProperties as $key) { if (isset($this->metadata[$key]) && $this->metadata[$key] !== 0) { $this->metadata[$key] = $this->convertTimestampToDateTime($this->metadata[$key]); } } } } PKCA#] R'L""jcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Authentication/OAuth2Client.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; use Facebook\Facebook; use Facebook\FacebookApp; use Facebook\FacebookRequest; use Facebook\FacebookResponse; use Facebook\FacebookClient; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookSDKException; /** * Class OAuth2Client * * @package Facebook */ class OAuth2Client { /** * @const string The base authorization URL. */ const BASE_AUTHORIZATION_URL = 'https://www.facebook.com'; /** * The FacebookApp entity. * * @var FacebookApp */ protected $app; /** * The Facebook client. * * @var FacebookClient */ protected $client; /** * The version of the Graph API to use. * * @var string */ protected $graphVersion; /** * The last request sent to Graph. * * @var FacebookRequest|null */ protected $lastRequest; /** * @param FacebookApp $app * @param FacebookClient $client * @param string|null $graphVersion The version of the Graph API to use. */ public function __construct(FacebookApp $app, FacebookClient $client, $graphVersion = null) { $this->app = $app; $this->client = $client; $this->graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; } /** * Returns the last FacebookRequest that was sent. * Useful for debugging and testing. * * @return FacebookRequest|null */ public function getLastRequest() { return $this->lastRequest; } /** * Get the metadata associated with the access token. * * @param AccessToken|string $accessToken The access token to debug. * * @return AccessTokenMetadata */ public function debugToken($accessToken) { $accessToken = $accessToken instanceof AccessToken ? $accessToken->getValue() : $accessToken; $params = ['input_token' => $accessToken]; $this->lastRequest = new FacebookRequest( $this->app, $this->app->getAccessToken(), 'GET', '/debug_token', $params, null, $this->graphVersion ); $response = $this->client->sendRequest($this->lastRequest); $metadata = $response->getDecodedBody(); return new AccessTokenMetadata($metadata); } /** * Generates an authorization URL to begin the process of authenticating a user. * * @param string $redirectUrl The callback URL to redirect to. * @param string $state The CSPRNG-generated CSRF value. * @param array $scope An array of permissions to request. * @param array $params An array of parameters to generate URL. * @param string $separator The separator to use in http_build_query(). * * @return string */ public function getAuthorizationUrl($redirectUrl, $state, array $scope = [], array $params = [], $separator = '&') { $params += [ 'client_id' => $this->app->getId(), 'state' => $state, 'response_type' => 'code', 'sdk' => 'php-sdk-' . Facebook::VERSION, 'redirect_uri' => $redirectUrl, 'scope' => implode(',', $scope) ]; return static::BASE_AUTHORIZATION_URL . '/' . $this->graphVersion . '/dialog/oauth?' . http_build_query($params, null, $separator); } /** * Get a valid access token from a code. * * @param string $code * @param string $redirectUri * * @return AccessToken * * @throws FacebookSDKException */ public function getAccessTokenFromCode($code, $redirectUri = '') { $params = [ 'code' => $code, 'redirect_uri' => $redirectUri, ]; return $this->requestAnAccessToken($params); } /** * Exchanges a short-lived access token with a long-lived access token. * * @param AccessToken|string $accessToken * * @return AccessToken * * @throws FacebookSDKException */ public function getLongLivedAccessToken($accessToken) { $accessToken = $accessToken instanceof AccessToken ? $accessToken->getValue() : $accessToken; $params = [ 'grant_type' => 'fb_exchange_token', 'fb_exchange_token' => $accessToken, ]; return $this->requestAnAccessToken($params); } /** * Get a valid code from an access token. * * @param AccessToken|string $accessToken * @param string $redirectUri * * @return AccessToken * * @throws FacebookSDKException */ public function getCodeFromLongLivedAccessToken($accessToken, $redirectUri = '') { $params = [ 'redirect_uri' => $redirectUri, ]; $response = $this->sendRequestWithClientParams('/oauth/client_code', $params, $accessToken); $data = $response->getDecodedBody(); if (!isset($data['code'])) { throw new FacebookSDKException('Code was not returned from Graph.', 401); } return $data['code']; } /** * Send a request to the OAuth endpoint. * * @param array $params * * @return AccessToken * * @throws FacebookSDKException */ protected function requestAnAccessToken(array $params) { $response = $this->sendRequestWithClientParams('/oauth/access_token', $params); $data = $response->getDecodedBody(); if (!isset($data['access_token'])) { throw new FacebookSDKException('Access token was not returned from Graph.', 401); } // Graph returns two different key names for expiration time // on the same endpoint. Doh! :/ $expiresAt = 0; if (isset($data['expires'])) { // For exchanging a short lived token with a long lived token. // The expiration time in seconds will be returned as "expires". $expiresAt = time() + $data['expires']; } elseif (isset($data['expires_in'])) { // For exchanging a code for a short lived access token. // The expiration time in seconds will be returned as "expires_in". // See: https://developers.facebook.com/docs/facebook-login/access-tokens#long-via-code $expiresAt = time() + $data['expires_in']; } return new AccessToken($data['access_token'], $expiresAt); } /** * Send a request to Graph with an app access token. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * * @return FacebookResponse * * @throws FacebookResponseException */ protected function sendRequestWithClientParams($endpoint, array $params, $accessToken = null) { $params += $this->getClientParams(); $accessToken = $accessToken ?: $this->app->getAccessToken(); $this->lastRequest = new FacebookRequest( $this->app, $accessToken, 'GET', $endpoint, $params, null, $this->graphVersion ); return $this->client->sendRequest($this->lastRequest); } /** * Returns the client_* params for OAuth requests. * * @return array */ protected function getClientParams() { return [ 'client_id' => $this->app->getId(), 'client_secret' => $this->app->getSecret(), ]; } } PKCA#]�FR���icomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Authentication/AccessToken.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; /** * Class AccessToken * * @package Facebook */ class AccessToken { /** * The access token value. * * @var string */ protected $value = ''; /** * Date when token expires. * * @var \DateTime|null */ protected $expiresAt; /** * Create a new access token entity. * * @param string $accessToken * @param int $expiresAt */ public function __construct($accessToken, $expiresAt = 0) { $this->value = $accessToken; if ($expiresAt) { $this->setExpiresAtFromTimeStamp($expiresAt); } } /** * Generate an app secret proof to sign a request to Graph. * * @param string $appSecret The app secret. * * @return string */ public function getAppSecretProof($appSecret) { return hash_hmac('sha256', $this->value, $appSecret); } /** * Getter for expiresAt. * * @return \DateTime|null */ public function getExpiresAt() { return $this->expiresAt; } /** * Determines whether or not this is an app access token. * * @return bool */ public function isAppAccessToken() { return strpos($this->value, '|') !== false; } /** * Determines whether or not this is a long-lived token. * * @return bool */ public function isLongLived() { if ($this->expiresAt) { return $this->expiresAt->getTimestamp() > time() + (60 * 60 * 2); } if ($this->isAppAccessToken()) { return true; } return false; } /** * Checks the expiration of the access token. * * @return boolean|null */ public function isExpired() { if ($this->getExpiresAt() instanceof \DateTime) { return $this->getExpiresAt()->getTimestamp() < time(); } if ($this->isAppAccessToken()) { return false; } return null; } /** * Returns the access token as a string. * * @return string */ public function getValue() { return $this->value; } /** * Returns the access token as a string. * * @return string */ public function __toString() { return $this->getValue(); } /** * Setter for expires_at. * * @param int $timeStamp */ protected function setExpiresAtFromTimeStamp($timeStamp) { $dt = new \DateTime(); $dt->setTimestamp($timeStamp); $this->expiresAt = $dt; } } PKCA#]�Dz��Zcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookApp.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookSDKException; class FacebookApp implements \Serializable { /** * @var string The app ID. */ protected $id; /** * @var string The app secret. */ protected $secret; /** * @param string $id * @param string $secret * * @throws FacebookSDKException */ public function __construct($id, $secret) { if (!is_string($id) // Keeping this for BC. Integers greater than PHP_INT_MAX will make is_int() return false && !is_int($id)) { throw new FacebookSDKException('The "app_id" must be formatted as a string since many app ID\'s are greater than PHP_INT_MAX on some systems.'); } // We cast as a string in case a valid int was set on a 64-bit system and this is unserialised on a 32-bit system $this->id = (string) $id; $this->secret = $secret; } /** * Returns the app ID. * * @return string */ public function getId() { return $this->id; } /** * Returns the app secret. * * @return string */ public function getSecret() { return $this->secret; } /** * Returns an app access token. * * @return AccessToken */ public function getAccessToken() { return new AccessToken($this->id . '|' . $this->secret); } /** * Serializes the FacebookApp entity as a string. * * @return string */ public function serialize() { return implode('|', [$this->id, $this->secret]); } /** * Unserializes a string as a FacebookApp entity. * * @param string $serialized */ public function unserialize($serialized) { list($id, $secret) = explode('|', $serialized); $this->__construct($id, $secret); } } PKCA#]~�S]]icomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlManipulator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Class FacebookUrlManipulator * * @package Facebook */ class FacebookUrlManipulator { /** * Remove params from a URL. * * @param string $url The URL to filter. * @param array $paramsToFilter The params to filter from the URL. * * @return string The URL with the params removed. */ public static function removeParamsFromUrl($url, array $paramsToFilter) { $parts = parse_url($url); $query = ''; if (isset($parts['query'])) { $params = []; parse_str($parts['query'], $params); // Remove query params foreach ($paramsToFilter as $paramName) { unset($params[$paramName]); } if (count($params) > 0) { $query = '?' . http_build_query($params, null, '&'); } } $scheme = isset($parts['scheme']) ? $parts['scheme'] . '://' : ''; $host = isset($parts['host']) ? $parts['host'] : ''; $port = isset($parts['port']) ? ':' . $parts['port'] : ''; $path = isset($parts['path']) ? $parts['path'] : ''; $fragment = isset($parts['fragment']) ? '#' . $parts['fragment'] : ''; return $scheme . $host . $port . $path . $query . $fragment; } /** * Gracefully appends params to the URL. * * @param string $url The URL that will receive the params. * @param array $newParams The params to append to the URL. * * @return string */ public static function appendParamsToUrl($url, array $newParams = []) { if (empty($newParams)) { return $url; } if (strpos($url, '?') === false) { return $url . '?' . http_build_query($newParams, null, '&'); } list($path, $query) = explode('?', $url, 2); $existingParams = []; parse_str($query, $existingParams); // Favor params from the original URL over $newParams $newParams = array_merge($newParams, $existingParams); // Sort for a predicable order ksort($newParams); return $path . '?' . http_build_query($newParams, null, '&'); } /** * Returns the params from a URL in the form of an array. * * @param string $url The URL to parse the params from. * * @return array */ public static function getParamsAsArray($url) { $query = parse_url($url, PHP_URL_QUERY); if (!$query) { return []; } $params = []; parse_str($query, $params); return $params; } /** * Adds the params of the first URL to the second URL. * * Any params that already exist in the second URL will go untouched. * * @param string $urlToStealFrom The URL harvest the params from. * @param string $urlToAddTo The URL that will receive the new params. * * @return string The $urlToAddTo with any new params from $urlToStealFrom. */ public static function mergeUrlParams($urlToStealFrom, $urlToAddTo) { $newParams = static::getParamsAsArray($urlToStealFrom); // Nothing new to add, return as-is if (!$newParams) { return $urlToAddTo; } return static::appendParamsToUrl($urlToAddTo, $newParams); } /** * Check for a "/" prefix and prepend it if not exists. * * @param string|null $string * * @return string|null */ public static function forceSlashPrefix($string) { if (!$string) { return $string; } return strpos($string, '/') === 0 ? $string : '/' . $string; } /** * Trims off the hostname and Graph version from a URL. * * @param string $urlToTrim The URL the needs the surgery. * * @return string The $urlToTrim with the hostname and Graph version removed. */ public static function baseGraphUrlEndpoint($urlToTrim) { return '/' . preg_replace('/^https:\/\/.+\.facebook\.com(\/v.+?)?\//', '', $urlToTrim); } } PKCA#]�n[11hcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Url/UrlDetectionInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Interface UrlDetectionInterface * * @package Facebook */ interface UrlDetectionInterface { /** * Get the currently active URL. * * @return string */ public function getCurrentUrl(); } PKCA#]_}����ncomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Url/FacebookUrlDetectionHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Class FacebookUrlDetectionHandler * * @package Facebook */ class FacebookUrlDetectionHandler implements UrlDetectionInterface { /** * @inheritdoc */ public function getCurrentUrl() { return $this->getHttpScheme() . '://' . $this->getHostName() . $this->getServerVar('REQUEST_URI'); } /** * Get the currently active URL scheme. * * @return string */ protected function getHttpScheme() { return $this->isBehindSsl() ? 'https' : 'http'; } /** * Tries to detect if the server is running behind an SSL. * * @return boolean */ protected function isBehindSsl() { // Check for proxy first $protocol = $this->getHeader('X_FORWARDED_PROTO'); if ($protocol) { return $this->protocolWithActiveSsl($protocol); } $protocol = $this->getServerVar('HTTPS'); if ($protocol) { return $this->protocolWithActiveSsl($protocol); } return (string)$this->getServerVar('SERVER_PORT') === '443'; } /** * Detects an active SSL protocol value. * * @param string $protocol * * @return boolean */ protected function protocolWithActiveSsl($protocol) { $protocol = strtolower((string)$protocol); return in_array($protocol, ['on', '1', 'https', 'ssl'], true); } /** * Tries to detect the host name of the server. * * Some elements adapted from * * @see https://github.com/symfony/HttpFoundation/blob/master/Request.php * * @return string */ protected function getHostName() { // Check for proxy first $header = $this->getHeader('X_FORWARDED_HOST'); if ($header && $this->isValidForwardedHost($header)) { $elements = explode(',', $header); $host = $elements[count($elements) - 1]; } elseif (!$host = $this->getHeader('HOST')) { if (!$host = $this->getServerVar('SERVER_NAME')) { $host = $this->getServerVar('SERVER_ADDR'); } } // trim and remove port number from host // host is lowercase as per RFC 952/2181 $host = strtolower(preg_replace('/:\d+$/', '', trim($host))); // Port number $scheme = $this->getHttpScheme(); $port = $this->getCurrentPort(); $appendPort = ':' . $port; // Don't append port number if a normal port. if (($scheme == 'http' && $port == '80') || ($scheme == 'https' && $port == '443')) { $appendPort = ''; } return $host . $appendPort; } protected function getCurrentPort() { // Check for proxy first $port = $this->getHeader('X_FORWARDED_PORT'); if ($port) { return (string)$port; } $protocol = (string)$this->getHeader('X_FORWARDED_PROTO'); if ($protocol === 'https') { return '443'; } return (string)$this->getServerVar('SERVER_PORT'); } /** * Returns the a value from the $_SERVER super global. * * @param string $key * * @return string */ protected function getServerVar($key) { return isset($_SERVER[$key]) ? $_SERVER[$key] : ''; } /** * Gets a value from the HTTP request headers. * * @param string $key * * @return string */ protected function getHeader($key) { return $this->getServerVar('HTTP_' . $key); } /** * Checks if the value in X_FORWARDED_HOST is a valid hostname * Could prevent unintended redirections * * @param string $header * * @return boolean */ protected function isValidForwardedHost($header) { $elements = explode(',', $header); $host = $elements[count($elements) - 1]; return preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $host) //valid chars check && 0 < strlen($host) && strlen($host) < 254 //overall length check && preg_match("/^[^\.]{1,63}(\.[^\.]{1,63})*$/", $host); //length of each label } } PKCA#] �� � \components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/SignedRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Exceptions\FacebookSDKException; /** * Class SignedRequest * * @package Facebook */ class SignedRequest { /** * @var FacebookApp The FacebookApp entity. */ protected $app; /** * @var string The raw encrypted signed request. */ protected $rawSignedRequest; /** * @var array The payload from the decrypted signed request. */ protected $payload; /** * Instantiate a new SignedRequest entity. * * @param FacebookApp $facebookApp The FacebookApp entity. * @param string|null $rawSignedRequest The raw signed request. */ public function __construct(FacebookApp $facebookApp, $rawSignedRequest = null) { $this->app = $facebookApp; if (!$rawSignedRequest) { return; } $this->rawSignedRequest = $rawSignedRequest; $this->parse(); } /** * Returns the raw signed request data. * * @return string|null */ public function getRawSignedRequest() { return $this->rawSignedRequest; } /** * Returns the parsed signed request data. * * @return array|null */ public function getPayload() { return $this->payload; } /** * Returns a property from the signed request data if available. * * @param string $key * @param mixed|null $default * * @return mixed|null */ public function get($key, $default = null) { if (isset($this->payload[$key])) { return $this->payload[$key]; } return $default; } /** * Returns user_id from signed request data if available. * * @return string|null */ public function getUserId() { return $this->get('user_id'); } /** * Checks for OAuth data in the payload. * * @return boolean */ public function hasOAuthData() { return $this->get('oauth_token') || $this->get('code'); } /** * Creates a signed request from an array of data. * * @param array $payload * * @return string */ public function make(array $payload) { $payload['algorithm'] = isset($payload['algorithm']) ? $payload['algorithm'] : 'HMAC-SHA256'; $payload['issued_at'] = isset($payload['issued_at']) ? $payload['issued_at'] : time(); $encodedPayload = $this->base64UrlEncode(json_encode($payload)); $hashedSig = $this->hashSignature($encodedPayload); $encodedSig = $this->base64UrlEncode($hashedSig); return $encodedSig . '.' . $encodedPayload; } /** * Validates and decodes a signed request and saves * the payload to an array. */ protected function parse() { list($encodedSig, $encodedPayload) = $this->split(); // Signature validation $sig = $this->decodeSignature($encodedSig); $hashedSig = $this->hashSignature($encodedPayload); $this->validateSignature($hashedSig, $sig); $this->payload = $this->decodePayload($encodedPayload); // Payload validation $this->validateAlgorithm(); } /** * Splits a raw signed request into signature and payload. * * @return array * * @throws FacebookSDKException */ protected function split() { if (strpos($this->rawSignedRequest, '.') === false) { throw new FacebookSDKException('Malformed signed request.', 606); } return explode('.', $this->rawSignedRequest, 2); } /** * Decodes the raw signature from a signed request. * * @param string $encodedSig * * @return string * * @throws FacebookSDKException */ protected function decodeSignature($encodedSig) { $sig = $this->base64UrlDecode($encodedSig); if (!$sig) { throw new FacebookSDKException('Signed request has malformed encoded signature data.', 607); } return $sig; } /** * Decodes the raw payload from a signed request. * * @param string $encodedPayload * * @return array * * @throws FacebookSDKException */ protected function decodePayload($encodedPayload) { $payload = $this->base64UrlDecode($encodedPayload); if ($payload) { $payload = json_decode($payload, true); } if (!is_array($payload)) { throw new FacebookSDKException('Signed request has malformed encoded payload data.', 607); } return $payload; } /** * Validates the algorithm used in a signed request. * * @throws FacebookSDKException */ protected function validateAlgorithm() { if ($this->get('algorithm') !== 'HMAC-SHA256') { throw new FacebookSDKException('Signed request is using the wrong algorithm.', 605); } } /** * Hashes the signature used in a signed request. * * @param string $encodedData * * @return string * * @throws FacebookSDKException */ protected function hashSignature($encodedData) { $hashedSig = hash_hmac( 'sha256', $encodedData, $this->app->getSecret(), $raw_output = true ); if (!$hashedSig) { throw new FacebookSDKException('Unable to hash signature from encoded payload data.', 602); } return $hashedSig; } /** * Validates the signature used in a signed request. * * @param string $hashedSig * @param string $sig * * @throws FacebookSDKException */ protected function validateSignature($hashedSig, $sig) { if (\hash_equals($hashedSig, $sig)) { return; } throw new FacebookSDKException('Signed request has an invalid signature.', 602); } /** * Base64 decoding which replaces characters: * + instead of - * / instead of _ * * @link http://en.wikipedia.org/wiki/Base64#URL_applications * * @param string $input base64 url encoded input * * @return string decoded string */ public function base64UrlDecode($input) { $urlDecodedBase64 = strtr($input, '-_', '+/'); $this->validateBase64($urlDecodedBase64); return base64_decode($urlDecodedBase64); } /** * Base64 encoding which replaces characters: * + instead of - * / instead of _ * * @link http://en.wikipedia.org/wiki/Base64#URL_applications * * @param string $input string to encode * * @return string base64 url encoded input */ public function base64UrlEncode($input) { return strtr(base64_encode($input), '+/', '-_'); } /** * Validates a base64 string. * * @param string $input base64 value to validate * * @throws FacebookSDKException */ protected function validateBase64($input) { if (!preg_match('/^[a-zA-Z0-9\/\r\n+]*={0,2}$/', $input)) { throw new FacebookSDKException('Signed request contains malformed base64 encoding.', 608); } } } PKCA#]�֝3�K�KWcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Facebook.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; use Facebook\FileUpload\FacebookFile; use Facebook\FileUpload\FacebookResumableUploader; use Facebook\FileUpload\FacebookTransferChunk; use Facebook\FileUpload\FacebookVideo; use Facebook\GraphNodes\GraphEdge; use Facebook\Url\UrlDetectionInterface; use Facebook\Url\FacebookUrlDetectionHandler; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorFactory; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface; use Facebook\HttpClients\HttpClientsFactory; use Facebook\PersistentData\PersistentDataFactory; use Facebook\PersistentData\PersistentDataInterface; use Facebook\Helpers\FacebookCanvasHelper; use Facebook\Helpers\FacebookJavaScriptHelper; use Facebook\Helpers\FacebookPageTabHelper; use Facebook\Helpers\FacebookRedirectLoginHelper; use Facebook\Exceptions\FacebookSDKException; /** * Class Facebook * * @package Facebook */ class Facebook { /** * @const string Version number of the Facebook PHP SDK. */ const VERSION = '5.7.0'; /** * @const string Default Graph API version for requests. */ const DEFAULT_GRAPH_VERSION = 'v2.10'; /** * @const string The name of the environment variable that contains the app ID. */ const APP_ID_ENV_NAME = 'FACEBOOK_APP_ID'; /** * @const string The name of the environment variable that contains the app secret. */ const APP_SECRET_ENV_NAME = 'FACEBOOK_APP_SECRET'; /** * @var FacebookApp The FacebookApp entity. */ protected $app; /** * @var FacebookClient The Facebook client service. */ protected $client; /** * @var OAuth2Client The OAuth 2.0 client service. */ protected $oAuth2Client; /** * @var UrlDetectionInterface|null The URL detection handler. */ protected $urlDetectionHandler; /** * @var PseudoRandomStringGeneratorInterface|null The cryptographically secure pseudo-random string generator. */ protected $pseudoRandomStringGenerator; /** * @var AccessToken|null The default access token to use with requests. */ protected $defaultAccessToken; /** * @var string|null The default Graph version we want to use. */ protected $defaultGraphVersion; /** * @var PersistentDataInterface|null The persistent data handler. */ protected $persistentDataHandler; /** * @var FacebookResponse|FacebookBatchResponse|null Stores the last request made to Graph. */ protected $lastResponse; /** * Instantiates a new Facebook super-class object. * * @param array $config * * @throws FacebookSDKException */ public function __construct(array $config = []) { $config = array_merge([ 'app_id' => getenv(static::APP_ID_ENV_NAME), 'app_secret' => getenv(static::APP_SECRET_ENV_NAME), 'default_graph_version' => static::DEFAULT_GRAPH_VERSION, 'enable_beta_mode' => false, 'http_client_handler' => null, 'persistent_data_handler' => null, 'pseudo_random_string_generator' => null, 'url_detection_handler' => null, ], $config); if (!$config['app_id']) { throw new FacebookSDKException('Required "app_id" key not supplied in config and could not find fallback environment variable "' . static::APP_ID_ENV_NAME . '"'); } if (!$config['app_secret']) { throw new FacebookSDKException('Required "app_secret" key not supplied in config and could not find fallback environment variable "' . static::APP_SECRET_ENV_NAME . '"'); } $this->app = new FacebookApp($config['app_id'], $config['app_secret']); $this->client = new FacebookClient( HttpClientsFactory::createHttpClient($config['http_client_handler']), $config['enable_beta_mode'] ); $this->pseudoRandomStringGenerator = PseudoRandomStringGeneratorFactory::createPseudoRandomStringGenerator( $config['pseudo_random_string_generator'] ); $this->setUrlDetectionHandler($config['url_detection_handler'] ?: new FacebookUrlDetectionHandler()); $this->persistentDataHandler = PersistentDataFactory::createPersistentDataHandler( $config['persistent_data_handler'] ); if (isset($config['default_access_token'])) { $this->setDefaultAccessToken($config['default_access_token']); } // @todo v6: Throw an InvalidArgumentException if "default_graph_version" is not set $this->defaultGraphVersion = $config['default_graph_version']; } /** * Returns the FacebookApp entity. * * @return FacebookApp */ public function getApp() { return $this->app; } /** * Returns the FacebookClient service. * * @return FacebookClient */ public function getClient() { return $this->client; } /** * Returns the OAuth 2.0 client service. * * @return OAuth2Client */ public function getOAuth2Client() { if (!$this->oAuth2Client instanceof OAuth2Client) { $app = $this->getApp(); $client = $this->getClient(); $this->oAuth2Client = new OAuth2Client($app, $client, $this->defaultGraphVersion); } return $this->oAuth2Client; } /** * Returns the last response returned from Graph. * * @return FacebookResponse|FacebookBatchResponse|null */ public function getLastResponse() { return $this->lastResponse; } /** * Returns the URL detection handler. * * @return UrlDetectionInterface */ public function getUrlDetectionHandler() { return $this->urlDetectionHandler; } /** * Changes the URL detection handler. * * @param UrlDetectionInterface $urlDetectionHandler */ private function setUrlDetectionHandler(UrlDetectionInterface $urlDetectionHandler) { $this->urlDetectionHandler = $urlDetectionHandler; } /** * Returns the default AccessToken entity. * * @return AccessToken|null */ public function getDefaultAccessToken() { return $this->defaultAccessToken; } /** * Sets the default access token to use with requests. * * @param AccessToken|string $accessToken The access token to save. * * @throws \InvalidArgumentException */ public function setDefaultAccessToken($accessToken) { if (is_string($accessToken)) { $this->defaultAccessToken = new AccessToken($accessToken); return; } if ($accessToken instanceof AccessToken) { $this->defaultAccessToken = $accessToken; return; } throw new \InvalidArgumentException('The default access token must be of type "string" or Facebook\AccessToken'); } /** * Returns the default Graph version. * * @return string */ public function getDefaultGraphVersion() { return $this->defaultGraphVersion; } /** * Returns the redirect login helper. * * @return FacebookRedirectLoginHelper */ public function getRedirectLoginHelper() { return new FacebookRedirectLoginHelper( $this->getOAuth2Client(), $this->persistentDataHandler, $this->urlDetectionHandler, $this->pseudoRandomStringGenerator ); } /** * Returns the JavaScript helper. * * @return FacebookJavaScriptHelper */ public function getJavaScriptHelper() { return new FacebookJavaScriptHelper($this->app, $this->client, $this->defaultGraphVersion); } /** * Returns the canvas helper. * * @return FacebookCanvasHelper */ public function getCanvasHelper() { return new FacebookCanvasHelper($this->app, $this->client, $this->defaultGraphVersion); } /** * Returns the page tab helper. * * @return FacebookPageTabHelper */ public function getPageTabHelper() { return new FacebookPageTabHelper($this->app, $this->client, $this->defaultGraphVersion); } /** * Sends a GET request to Graph and returns the result. * * @param string $endpoint * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function get($endpoint, $accessToken = null, $eTag = null, $graphVersion = null) { return $this->sendRequest( 'GET', $endpoint, $params = [], $accessToken, $eTag, $graphVersion ); } /** * Sends a POST request to Graph and returns the result. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function post($endpoint, array $params = [], $accessToken = null, $eTag = null, $graphVersion = null) { return $this->sendRequest( 'POST', $endpoint, $params, $accessToken, $eTag, $graphVersion ); } /** * Sends a DELETE request to Graph and returns the result. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function delete($endpoint, array $params = [], $accessToken = null, $eTag = null, $graphVersion = null) { return $this->sendRequest( 'DELETE', $endpoint, $params, $accessToken, $eTag, $graphVersion ); } /** * Sends a request to Graph for the next page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function next(GraphEdge $graphEdge) { return $this->getPaginationResults($graphEdge, 'next'); } /** * Sends a request to Graph for the previous page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function previous(GraphEdge $graphEdge) { return $this->getPaginationResults($graphEdge, 'previous'); } /** * Sends a request to Graph for the next page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * @param string $direction The direction of the pagination: next|previous. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function getPaginationResults(GraphEdge $graphEdge, $direction) { $paginationRequest = $graphEdge->getPaginationRequest($direction); if (!$paginationRequest) { return null; } $this->lastResponse = $this->client->sendRequest($paginationRequest); // Keep the same GraphNode subclass $subClassName = $graphEdge->getSubClassName(); $graphEdge = $this->lastResponse->getGraphEdge($subClassName, false); return count($graphEdge) > 0 ? $graphEdge : null; } /** * Sends a request to Graph and returns the result. * * @param string $method * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function sendRequest($method, $endpoint, array $params = [], $accessToken = null, $eTag = null, $graphVersion = null) { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $request = $this->request($method, $endpoint, $params, $accessToken, $eTag, $graphVersion); return $this->lastResponse = $this->client->sendRequest($request); } /** * Sends a batched request to Graph and returns the result. * * @param array $requests * @param AccessToken|string|null $accessToken * @param string|null $graphVersion * * @return FacebookBatchResponse * * @throws FacebookSDKException */ public function sendBatchRequest(array $requests, $accessToken = null, $graphVersion = null) { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $batchRequest = new FacebookBatchRequest( $this->app, $requests, $accessToken, $graphVersion ); return $this->lastResponse = $this->client->sendBatchRequest($batchRequest); } /** * Instantiates an empty FacebookBatchRequest entity. * * @param AccessToken|string|null $accessToken The top-level access token. Requests with no access token * will fallback to this. * @param string|null $graphVersion The Graph API version to use. * @return FacebookBatchRequest */ public function newBatchRequest($accessToken = null, $graphVersion = null) { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; return new FacebookBatchRequest( $this->app, [], $accessToken, $graphVersion ); } /** * Instantiates a new FacebookRequest entity. * * @param string $method * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookRequest * * @throws FacebookSDKException */ public function request($method, $endpoint, array $params = [], $accessToken = null, $eTag = null, $graphVersion = null) { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; return new FacebookRequest( $this->app, $accessToken, $method, $endpoint, $params, $eTag, $graphVersion ); } /** * Factory to create FacebookFile's. * * @param string $pathToFile * * @return FacebookFile * * @throws FacebookSDKException */ public function fileToUpload($pathToFile) { return new FacebookFile($pathToFile); } /** * Factory to create FacebookVideo's. * * @param string $pathToFile * * @return FacebookVideo * * @throws FacebookSDKException */ public function videoToUpload($pathToFile) { return new FacebookVideo($pathToFile); } /** * Upload a video in chunks. * * @param int $target The id of the target node before the /videos edge. * @param string $pathToFile The full path to the file. * @param array $metadata The metadata associated with the video file. * @param string|null $accessToken The access token. * @param int $maxTransferTries The max times to retry a failed upload chunk. * @param string|null $graphVersion The Graph API version to use. * * @return array * * @throws FacebookSDKException */ public function uploadVideo($target, $pathToFile, $metadata = [], $accessToken = null, $maxTransferTries = 5, $graphVersion = null) { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $uploader = new FacebookResumableUploader($this->app, $this->client, $accessToken, $graphVersion); $endpoint = '/'.$target.'/videos'; $file = $this->videoToUpload($pathToFile); $chunk = $uploader->start($endpoint, $file); do { $chunk = $this->maxTriesTransfer($uploader, $endpoint, $chunk, $maxTransferTries); } while (!$chunk->isLastChunk()); return [ 'video_id' => $chunk->getVideoId(), 'success' => $uploader->finish($endpoint, $chunk->getUploadSessionId(), $metadata), ]; } /** * Attempts to upload a chunk of a file in $retryCountdown tries. * * @param FacebookResumableUploader $uploader * @param string $endpoint * @param FacebookTransferChunk $chunk * @param int $retryCountdown * * @return FacebookTransferChunk * * @throws FacebookSDKException */ private function maxTriesTransfer(FacebookResumableUploader $uploader, $endpoint, FacebookTransferChunk $chunk, $retryCountdown) { $newChunk = $uploader->transfer($endpoint, $chunk, $retryCountdown < 1); if ($newChunk !== $chunk) { return $newChunk; } $retryCountdown--; // If transfer() returned the same chunk entity, the transfer failed but is resumable. return $this->maxTriesTransfer($uploader, $endpoint, $chunk, $retryCountdown); } } PKCA#]��6�')')_components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\GraphNodes\GraphNodeFactory; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookResponse * * @package Facebook */ class FacebookResponse { /** * @var int The HTTP status code response from Graph. */ protected $httpStatusCode; /** * @var array The headers returned from Graph. */ protected $headers; /** * @var string The raw body of the response from Graph. */ protected $body; /** * @var array The decoded body of the Graph response. */ protected $decodedBody = []; /** * @var FacebookRequest The original request that returned this response. */ protected $request; /** * @var FacebookSDKException The exception thrown by this request. */ protected $thrownException; /** * Creates a new Response entity. * * @param FacebookRequest $request * @param string|null $body * @param int|null $httpStatusCode * @param array|null $headers */ public function __construct(FacebookRequest $request, $body = null, $httpStatusCode = null, array $headers = []) { $this->request = $request; $this->body = $body; $this->httpStatusCode = $httpStatusCode; $this->headers = $headers; $this->decodeBody(); } /** * Return the original request that returned this response. * * @return FacebookRequest */ public function getRequest() { return $this->request; } /** * Return the FacebookApp entity used for this response. * * @return FacebookApp */ public function getApp() { return $this->request->getApp(); } /** * Return the access token that was used for this response. * * @return string|null */ public function getAccessToken() { return $this->request->getAccessToken(); } /** * Return the HTTP status code for this response. * * @return int */ public function getHttpStatusCode() { return $this->httpStatusCode; } /** * Return the HTTP headers for this response. * * @return array */ public function getHeaders() { return $this->headers; } /** * Return the raw body response. * * @return string */ public function getBody() { return $this->body; } /** * Return the decoded body response. * * @return array */ public function getDecodedBody() { return $this->decodedBody; } /** * Get the app secret proof that was used for this response. * * @return string|null */ public function getAppSecretProof() { return $this->request->getAppSecretProof(); } /** * Get the ETag associated with the response. * * @return string|null */ public function getETag() { return isset($this->headers['ETag']) ? $this->headers['ETag'] : null; } /** * Get the version of Graph that returned this response. * * @return string|null */ public function getGraphVersion() { return isset($this->headers['Facebook-API-Version']) ? $this->headers['Facebook-API-Version'] : null; } /** * Returns true if Graph returned an error message. * * @return boolean */ public function isError() { return isset($this->decodedBody['error']); } /** * Throws the exception. * * @throws FacebookSDKException */ public function throwException() { throw $this->thrownException; } /** * Instantiates an exception to be thrown later. */ public function makeException() { $this->thrownException = FacebookResponseException::create($this); } /** * Returns the exception that was thrown for this request. * * @return FacebookResponseException|null */ public function getThrownException() { return $this->thrownException; } /** * Convert the raw response into an array if possible. * * Graph will return 2 types of responses: * - JSON(P) * Most responses from Graph are JSON(P) * - application/x-www-form-urlencoded key/value pairs * Happens on the `/oauth/access_token` endpoint when exchanging * a short-lived access token for a long-lived access token * - And sometimes nothing :/ but that'd be a bug. */ public function decodeBody() { $this->decodedBody = json_decode($this->body, true); if ($this->decodedBody === null) { $this->decodedBody = []; parse_str($this->body, $this->decodedBody); } elseif (is_bool($this->decodedBody)) { // Backwards compatibility for Graph < 2.1. // Mimics 2.1 responses. // @TODO Remove this after Graph 2.0 is no longer supported $this->decodedBody = ['success' => $this->decodedBody]; } elseif (is_numeric($this->decodedBody)) { $this->decodedBody = ['id' => $this->decodedBody]; } if (!is_array($this->decodedBody)) { $this->decodedBody = []; } if ($this->isError()) { $this->makeException(); } } /** * Instantiate a new GraphObject from response. * * @param string|null $subclassName The GraphNode subclass to cast to. * * @return \Facebook\GraphNodes\GraphObject * * @throws FacebookSDKException * * @deprecated 5.0.0 getGraphObject() has been renamed to getGraphNode() * @todo v6: Remove this method */ public function getGraphObject($subclassName = null) { return $this->getGraphNode($subclassName); } /** * Instantiate a new GraphNode from response. * * @param string|null $subclassName The GraphNode subclass to cast to. * * @return \Facebook\GraphNodes\GraphNode * * @throws FacebookSDKException */ public function getGraphNode($subclassName = null) { $factory = new GraphNodeFactory($this); return $factory->makeGraphNode($subclassName); } /** * Convenience method for creating a GraphAlbum collection. * * @return \Facebook\GraphNodes\GraphAlbum * * @throws FacebookSDKException */ public function getGraphAlbum() { $factory = new GraphNodeFactory($this); return $factory->makeGraphAlbum(); } /** * Convenience method for creating a GraphPage collection. * * @return \Facebook\GraphNodes\GraphPage * * @throws FacebookSDKException */ public function getGraphPage() { $factory = new GraphNodeFactory($this); return $factory->makeGraphPage(); } /** * Convenience method for creating a GraphSessionInfo collection. * * @return \Facebook\GraphNodes\GraphSessionInfo * * @throws FacebookSDKException */ public function getGraphSessionInfo() { $factory = new GraphNodeFactory($this); return $factory->makeGraphSessionInfo(); } /** * Convenience method for creating a GraphUser collection. * * @return \Facebook\GraphNodes\GraphUser * * @throws FacebookSDKException */ public function getGraphUser() { $factory = new GraphNodeFactory($this); return $factory->makeGraphUser(); } /** * Convenience method for creating a GraphEvent collection. * * @return \Facebook\GraphNodes\GraphEvent * * @throws FacebookSDKException */ public function getGraphEvent() { $factory = new GraphNodeFactory($this); return $factory->makeGraphEvent(); } /** * Convenience method for creating a GraphGroup collection. * * @return \Facebook\GraphNodes\GraphGroup * * @throws FacebookSDKException */ public function getGraphGroup() { $factory = new GraphNodeFactory($this); return $factory->makeGraphGroup(); } /** * Instantiate a new GraphList from response. * * @param string|null $subclassName The GraphNode subclass to cast list items to. * @param boolean $auto_prefix Toggle to auto-prefix the subclass name. * * @return \Facebook\GraphNodes\GraphList * * @throws FacebookSDKException * * @deprecated 5.0.0 getGraphList() has been renamed to getGraphEdge() * @todo v6: Remove this method */ public function getGraphList($subclassName = null, $auto_prefix = true) { return $this->getGraphEdge($subclassName, $auto_prefix); } /** * Instantiate a new GraphEdge from response. * * @param string|null $subclassName The GraphNode subclass to cast list items to. * @param boolean $auto_prefix Toggle to auto-prefix the subclass name. * * @return \Facebook\GraphNodes\GraphEdge * * @throws FacebookSDKException */ public function getGraphEdge($subclassName = null, $auto_prefix = true) { $factory = new GraphNodeFactory($this); return $factory->makeGraphEdge($subclassName, $auto_prefix); } } PKCA#]��J�J�ccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FileUpload/Mimetypes.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; /** * Provides mappings of file extensions to mimetypes * * Taken from Guzzle * * @see https://github.com/guzzle/guzzle/blob/master/src/Mimetypes.php * * @link http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/conf/mime.types */ class Mimetypes { /** @var self */ protected static $instance; /** @var array Mapping of extension to mimetype */ protected $mimetypes = [ '3dml' => 'text/vnd.in3d.3dml', '3g2' => 'video/3gpp2', '3gp' => 'video/3gpp', '7z' => 'application/x-7z-compressed', 'aab' => 'application/x-authorware-bin', 'aac' => 'audio/x-aac', 'aam' => 'application/x-authorware-map', 'aas' => 'application/x-authorware-seg', 'abw' => 'application/x-abiword', 'ac' => 'application/pkix-attr-cert', 'acc' => 'application/vnd.americandynamics.acc', 'ace' => 'application/x-ace-compressed', 'acu' => 'application/vnd.acucobol', 'acutc' => 'application/vnd.acucorp', 'adp' => 'audio/adpcm', 'aep' => 'application/vnd.audiograph', 'afm' => 'application/x-font-type1', 'afp' => 'application/vnd.ibm.modcap', 'ahead' => 'application/vnd.ahead.space', 'ai' => 'application/postscript', 'aif' => 'audio/x-aiff', 'aifc' => 'audio/x-aiff', 'aiff' => 'audio/x-aiff', 'air' => 'application/vnd.adobe.air-application-installer-package+zip', 'ait' => 'application/vnd.dvb.ait', 'ami' => 'application/vnd.amiga.ami', 'apk' => 'application/vnd.android.package-archive', 'application' => 'application/x-ms-application', 'apr' => 'application/vnd.lotus-approach', 'asa' => 'text/plain', 'asax' => 'application/octet-stream', 'asc' => 'application/pgp-signature', 'ascx' => 'text/plain', 'asf' => 'video/x-ms-asf', 'ashx' => 'text/plain', 'asm' => 'text/x-asm', 'asmx' => 'text/plain', 'aso' => 'application/vnd.accpac.simply.aso', 'asp' => 'text/plain', 'aspx' => 'text/plain', 'asx' => 'video/x-ms-asf', 'atc' => 'application/vnd.acucorp', 'atom' => 'application/atom+xml', 'atomcat' => 'application/atomcat+xml', 'atomsvc' => 'application/atomsvc+xml', 'atx' => 'application/vnd.antix.game-component', 'au' => 'audio/basic', 'avi' => 'video/x-msvideo', 'aw' => 'application/applixware', 'axd' => 'text/plain', 'azf' => 'application/vnd.airzip.filesecure.azf', 'azs' => 'application/vnd.airzip.filesecure.azs', 'azw' => 'application/vnd.amazon.ebook', 'bat' => 'application/x-msdownload', 'bcpio' => 'application/x-bcpio', 'bdf' => 'application/x-font-bdf', 'bdm' => 'application/vnd.syncml.dm+wbxml', 'bed' => 'application/vnd.realvnc.bed', 'bh2' => 'application/vnd.fujitsu.oasysprs', 'bin' => 'application/octet-stream', 'bmi' => 'application/vnd.bmi', 'bmp' => 'image/bmp', 'book' => 'application/vnd.framemaker', 'box' => 'application/vnd.previewsystems.box', 'boz' => 'application/x-bzip2', 'bpk' => 'application/octet-stream', 'btif' => 'image/prs.btif', 'bz' => 'application/x-bzip', 'bz2' => 'application/x-bzip2', 'c' => 'text/x-c', 'c11amc' => 'application/vnd.cluetrust.cartomobile-config', 'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg', 'c4d' => 'application/vnd.clonk.c4group', 'c4f' => 'application/vnd.clonk.c4group', 'c4g' => 'application/vnd.clonk.c4group', 'c4p' => 'application/vnd.clonk.c4group', 'c4u' => 'application/vnd.clonk.c4group', 'cab' => 'application/vnd.ms-cab-compressed', 'car' => 'application/vnd.curl.car', 'cat' => 'application/vnd.ms-pki.seccat', 'cc' => 'text/x-c', 'cct' => 'application/x-director', 'ccxml' => 'application/ccxml+xml', 'cdbcmsg' => 'application/vnd.contact.cmsg', 'cdf' => 'application/x-netcdf', 'cdkey' => 'application/vnd.mediastation.cdkey', 'cdmia' => 'application/cdmi-capability', 'cdmic' => 'application/cdmi-container', 'cdmid' => 'application/cdmi-domain', 'cdmio' => 'application/cdmi-object', 'cdmiq' => 'application/cdmi-queue', 'cdx' => 'chemical/x-cdx', 'cdxml' => 'application/vnd.chemdraw+xml', 'cdy' => 'application/vnd.cinderella', 'cer' => 'application/pkix-cert', 'cfc' => 'application/x-coldfusion', 'cfm' => 'application/x-coldfusion', 'cgm' => 'image/cgm', 'chat' => 'application/x-chat', 'chm' => 'application/vnd.ms-htmlhelp', 'chrt' => 'application/vnd.kde.kchart', 'cif' => 'chemical/x-cif', 'cii' => 'application/vnd.anser-web-certificate-issue-initiation', 'cil' => 'application/vnd.ms-artgalry', 'cla' => 'application/vnd.claymore', 'class' => 'application/java-vm', 'clkk' => 'application/vnd.crick.clicker.keyboard', 'clkp' => 'application/vnd.crick.clicker.palette', 'clkt' => 'application/vnd.crick.clicker.template', 'clkw' => 'application/vnd.crick.clicker.wordbank', 'clkx' => 'application/vnd.crick.clicker', 'clp' => 'application/x-msclip', 'cmc' => 'application/vnd.cosmocaller', 'cmdf' => 'chemical/x-cmdf', 'cml' => 'chemical/x-cml', 'cmp' => 'application/vnd.yellowriver-custom-menu', 'cmx' => 'image/x-cmx', 'cod' => 'application/vnd.rim.cod', 'com' => 'application/x-msdownload', 'conf' => 'text/plain', 'cpio' => 'application/x-cpio', 'cpp' => 'text/x-c', 'cpt' => 'application/mac-compactpro', 'crd' => 'application/x-mscardfile', 'crl' => 'application/pkix-crl', 'crt' => 'application/x-x509-ca-cert', 'cryptonote' => 'application/vnd.rig.cryptonote', 'cs' => 'text/plain', 'csh' => 'application/x-csh', 'csml' => 'chemical/x-csml', 'csp' => 'application/vnd.commonspace', 'css' => 'text/css', 'cst' => 'application/x-director', 'csv' => 'text/csv', 'cu' => 'application/cu-seeme', 'curl' => 'text/vnd.curl', 'cww' => 'application/prs.cww', 'cxt' => 'application/x-director', 'cxx' => 'text/x-c', 'dae' => 'model/vnd.collada+xml', 'daf' => 'application/vnd.mobius.daf', 'dataless' => 'application/vnd.fdsn.seed', 'davmount' => 'application/davmount+xml', 'dcr' => 'application/x-director', 'dcurl' => 'text/vnd.curl.dcurl', 'dd2' => 'application/vnd.oma.dd2+xml', 'ddd' => 'application/vnd.fujixerox.ddd', 'deb' => 'application/x-debian-package', 'def' => 'text/plain', 'deploy' => 'application/octet-stream', 'der' => 'application/x-x509-ca-cert', 'dfac' => 'application/vnd.dreamfactory', 'dic' => 'text/x-c', 'dir' => 'application/x-director', 'dis' => 'application/vnd.mobius.dis', 'dist' => 'application/octet-stream', 'distz' => 'application/octet-stream', 'djv' => 'image/vnd.djvu', 'djvu' => 'image/vnd.djvu', 'dll' => 'application/x-msdownload', 'dmg' => 'application/octet-stream', 'dms' => 'application/octet-stream', 'dna' => 'application/vnd.dna', 'doc' => 'application/msword', 'docm' => 'application/vnd.ms-word.document.macroenabled.12', 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'dot' => 'application/msword', 'dotm' => 'application/vnd.ms-word.template.macroenabled.12', 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template', 'dp' => 'application/vnd.osgi.dp', 'dpg' => 'application/vnd.dpgraph', 'dra' => 'audio/vnd.dra', 'dsc' => 'text/prs.lines.tag', 'dssc' => 'application/dssc+der', 'dtb' => 'application/x-dtbook+xml', 'dtd' => 'application/xml-dtd', 'dts' => 'audio/vnd.dts', 'dtshd' => 'audio/vnd.dts.hd', 'dump' => 'application/octet-stream', 'dvi' => 'application/x-dvi', 'dwf' => 'model/vnd.dwf', 'dwg' => 'image/vnd.dwg', 'dxf' => 'image/vnd.dxf', 'dxp' => 'application/vnd.spotfire.dxp', 'dxr' => 'application/x-director', 'ecelp4800' => 'audio/vnd.nuera.ecelp4800', 'ecelp7470' => 'audio/vnd.nuera.ecelp7470', 'ecelp9600' => 'audio/vnd.nuera.ecelp9600', 'ecma' => 'application/ecmascript', 'edm' => 'application/vnd.novadigm.edm', 'edx' => 'application/vnd.novadigm.edx', 'efif' => 'application/vnd.picsel', 'ei6' => 'application/vnd.pg.osasli', 'elc' => 'application/octet-stream', 'eml' => 'message/rfc822', 'emma' => 'application/emma+xml', 'eol' => 'audio/vnd.digital-winds', 'eot' => 'application/vnd.ms-fontobject', 'eps' => 'application/postscript', 'epub' => 'application/epub+zip', 'es3' => 'application/vnd.eszigno3+xml', 'esf' => 'application/vnd.epson.esf', 'et3' => 'application/vnd.eszigno3+xml', 'etx' => 'text/x-setext', 'exe' => 'application/x-msdownload', 'exi' => 'application/exi', 'ext' => 'application/vnd.novadigm.ext', 'ez' => 'application/andrew-inset', 'ez2' => 'application/vnd.ezpix-album', 'ez3' => 'application/vnd.ezpix-package', 'f' => 'text/x-fortran', 'f4v' => 'video/x-f4v', 'f77' => 'text/x-fortran', 'f90' => 'text/x-fortran', 'fbs' => 'image/vnd.fastbidsheet', 'fcs' => 'application/vnd.isac.fcs', 'fdf' => 'application/vnd.fdf', 'fe_launch' => 'application/vnd.denovo.fcselayout-link', 'fg5' => 'application/vnd.fujitsu.oasysgp', 'fgd' => 'application/x-director', 'fh' => 'image/x-freehand', 'fh4' => 'image/x-freehand', 'fh5' => 'image/x-freehand', 'fh7' => 'image/x-freehand', 'fhc' => 'image/x-freehand', 'fig' => 'application/x-xfig', 'fli' => 'video/x-fli', 'flo' => 'application/vnd.micrografx.flo', 'flv' => 'video/x-flv', 'flw' => 'application/vnd.kde.kivio', 'flx' => 'text/vnd.fmi.flexstor', 'fly' => 'text/vnd.fly', 'fm' => 'application/vnd.framemaker', 'fnc' => 'application/vnd.frogans.fnc', 'for' => 'text/x-fortran', 'fpx' => 'image/vnd.fpx', 'frame' => 'application/vnd.framemaker', 'fsc' => 'application/vnd.fsc.weblaunch', 'fst' => 'image/vnd.fst', 'ftc' => 'application/vnd.fluxtime.clip', 'fti' => 'application/vnd.anser-web-funds-transfer-initiation', 'fvt' => 'video/vnd.fvt', 'fxp' => 'application/vnd.adobe.fxp', 'fxpl' => 'application/vnd.adobe.fxp', 'fzs' => 'application/vnd.fuzzysheet', 'g2w' => 'application/vnd.geoplan', 'g3' => 'image/g3fax', 'g3w' => 'application/vnd.geospace', 'gac' => 'application/vnd.groove-account', 'gdl' => 'model/vnd.gdl', 'geo' => 'application/vnd.dynageo', 'gex' => 'application/vnd.geometry-explorer', 'ggb' => 'application/vnd.geogebra.file', 'ggt' => 'application/vnd.geogebra.tool', 'ghf' => 'application/vnd.groove-help', 'gif' => 'image/gif', 'gim' => 'application/vnd.groove-identity-message', 'gmx' => 'application/vnd.gmx', 'gnumeric' => 'application/x-gnumeric', 'gph' => 'application/vnd.flographit', 'gqf' => 'application/vnd.grafeq', 'gqs' => 'application/vnd.grafeq', 'gram' => 'application/srgs', 'gre' => 'application/vnd.geometry-explorer', 'grv' => 'application/vnd.groove-injector', 'grxml' => 'application/srgs+xml', 'gsf' => 'application/x-font-ghostscript', 'gtar' => 'application/x-gtar', 'gtm' => 'application/vnd.groove-tool-message', 'gtw' => 'model/vnd.gtw', 'gv' => 'text/vnd.graphviz', 'gxt' => 'application/vnd.geonext', 'h' => 'text/x-c', 'h261' => 'video/h261', 'h263' => 'video/h263', 'h264' => 'video/h264', 'hal' => 'application/vnd.hal+xml', 'hbci' => 'application/vnd.hbci', 'hdf' => 'application/x-hdf', 'hh' => 'text/x-c', 'hlp' => 'application/winhlp', 'hpgl' => 'application/vnd.hp-hpgl', 'hpid' => 'application/vnd.hp-hpid', 'hps' => 'application/vnd.hp-hps', 'hqx' => 'application/mac-binhex40', 'hta' => 'application/octet-stream', 'htc' => 'text/html', 'htke' => 'application/vnd.kenameaapp', 'htm' => 'text/html', 'html' => 'text/html', 'hvd' => 'application/vnd.yamaha.hv-dic', 'hvp' => 'application/vnd.yamaha.hv-voice', 'hvs' => 'application/vnd.yamaha.hv-script', 'i2g' => 'application/vnd.intergeo', 'icc' => 'application/vnd.iccprofile', 'ice' => 'x-conference/x-cooltalk', 'icm' => 'application/vnd.iccprofile', 'ico' => 'image/x-icon', 'ics' => 'text/calendar', 'ief' => 'image/ief', 'ifb' => 'text/calendar', 'ifm' => 'application/vnd.shana.informed.formdata', 'iges' => 'model/iges', 'igl' => 'application/vnd.igloader', 'igm' => 'application/vnd.insors.igm', 'igs' => 'model/iges', 'igx' => 'application/vnd.micrografx.igx', 'iif' => 'application/vnd.shana.informed.interchange', 'imp' => 'application/vnd.accpac.simply.imp', 'ims' => 'application/vnd.ms-ims', 'in' => 'text/plain', 'ini' => 'text/plain', 'ipfix' => 'application/ipfix', 'ipk' => 'application/vnd.shana.informed.package', 'irm' => 'application/vnd.ibm.rights-management', 'irp' => 'application/vnd.irepository.package+xml', 'iso' => 'application/octet-stream', 'itp' => 'application/vnd.shana.informed.formtemplate', 'ivp' => 'application/vnd.immervision-ivp', 'ivu' => 'application/vnd.immervision-ivu', 'jad' => 'text/vnd.sun.j2me.app-descriptor', 'jam' => 'application/vnd.jam', 'jar' => 'application/java-archive', 'java' => 'text/x-java-source', 'jisp' => 'application/vnd.jisp', 'jlt' => 'application/vnd.hp-jlyt', 'jnlp' => 'application/x-java-jnlp-file', 'joda' => 'application/vnd.joost.joda-archive', 'jpe' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg', 'jpgm' => 'video/jpm', 'jpgv' => 'video/jpeg', 'jpm' => 'video/jpm', 'js' => 'text/javascript', 'json' => 'application/json', 'kar' => 'audio/midi', 'karbon' => 'application/vnd.kde.karbon', 'kfo' => 'application/vnd.kde.kformula', 'kia' => 'application/vnd.kidspiration', 'kml' => 'application/vnd.google-earth.kml+xml', 'kmz' => 'application/vnd.google-earth.kmz', 'kne' => 'application/vnd.kinar', 'knp' => 'application/vnd.kinar', 'kon' => 'application/vnd.kde.kontour', 'kpr' => 'application/vnd.kde.kpresenter', 'kpt' => 'application/vnd.kde.kpresenter', 'ksp' => 'application/vnd.kde.kspread', 'ktr' => 'application/vnd.kahootz', 'ktx' => 'image/ktx', 'ktz' => 'application/vnd.kahootz', 'kwd' => 'application/vnd.kde.kword', 'kwt' => 'application/vnd.kde.kword', 'lasxml' => 'application/vnd.las.las+xml', 'latex' => 'application/x-latex', 'lbd' => 'application/vnd.llamagraphics.life-balance.desktop', 'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml', 'les' => 'application/vnd.hhe.lesson-player', 'lha' => 'application/octet-stream', 'link66' => 'application/vnd.route66.link66+xml', 'list' => 'text/plain', 'list3820' => 'application/vnd.ibm.modcap', 'listafp' => 'application/vnd.ibm.modcap', 'log' => 'text/plain', 'lostxml' => 'application/lost+xml', 'lrf' => 'application/octet-stream', 'lrm' => 'application/vnd.ms-lrm', 'ltf' => 'application/vnd.frogans.ltf', 'lvp' => 'audio/vnd.lucent.voice', 'lwp' => 'application/vnd.lotus-wordpro', 'lzh' => 'application/octet-stream', 'm13' => 'application/x-msmediaview', 'm14' => 'application/x-msmediaview', 'm1v' => 'video/mpeg', 'm21' => 'application/mp21', 'm2a' => 'audio/mpeg', 'm2v' => 'video/mpeg', 'm3a' => 'audio/mpeg', 'm3u' => 'audio/x-mpegurl', 'm3u8' => 'application/vnd.apple.mpegurl', 'm4a' => 'audio/mp4', 'm4u' => 'video/vnd.mpegurl', 'm4v' => 'video/mp4', 'ma' => 'application/mathematica', 'mads' => 'application/mads+xml', 'mag' => 'application/vnd.ecowin.chart', 'maker' => 'application/vnd.framemaker', 'man' => 'text/troff', 'mathml' => 'application/mathml+xml', 'mb' => 'application/mathematica', 'mbk' => 'application/vnd.mobius.mbk', 'mbox' => 'application/mbox', 'mc1' => 'application/vnd.medcalcdata', 'mcd' => 'application/vnd.mcd', 'mcurl' => 'text/vnd.curl.mcurl', 'mdb' => 'application/x-msaccess', 'mdi' => 'image/vnd.ms-modi', 'me' => 'text/troff', 'mesh' => 'model/mesh', 'meta4' => 'application/metalink4+xml', 'mets' => 'application/mets+xml', 'mfm' => 'application/vnd.mfmp', 'mgp' => 'application/vnd.osgeo.mapguide.package', 'mgz' => 'application/vnd.proteus.magazine', 'mid' => 'audio/midi', 'midi' => 'audio/midi', 'mif' => 'application/vnd.mif', 'mime' => 'message/rfc822', 'mj2' => 'video/mj2', 'mjp2' => 'video/mj2', 'mlp' => 'application/vnd.dolby.mlp', 'mmd' => 'application/vnd.chipnuts.karaoke-mmd', 'mmf' => 'application/vnd.smaf', 'mmr' => 'image/vnd.fujixerox.edmics-mmr', 'mny' => 'application/x-msmoney', 'mobi' => 'application/x-mobipocket-ebook', 'mods' => 'application/mods+xml', 'mov' => 'video/quicktime', 'movie' => 'video/x-sgi-movie', 'mp2' => 'audio/mpeg', 'mp21' => 'application/mp21', 'mp2a' => 'audio/mpeg', 'mp3' => 'audio/mpeg', 'mp4' => 'video/mp4', 'mp4a' => 'audio/mp4', 'mp4s' => 'application/mp4', 'mp4v' => 'video/mp4', 'mpc' => 'application/vnd.mophun.certificate', 'mpe' => 'video/mpeg', 'mpeg' => 'video/mpeg', 'mpg' => 'video/mpeg', 'mpg4' => 'video/mp4', 'mpga' => 'audio/mpeg', 'mpkg' => 'application/vnd.apple.installer+xml', 'mpm' => 'application/vnd.blueice.multipass', 'mpn' => 'application/vnd.mophun.application', 'mpp' => 'application/vnd.ms-project', 'mpt' => 'application/vnd.ms-project', 'mpy' => 'application/vnd.ibm.minipay', 'mqy' => 'application/vnd.mobius.mqy', 'mrc' => 'application/marc', 'mrcx' => 'application/marcxml+xml', 'ms' => 'text/troff', 'mscml' => 'application/mediaservercontrol+xml', 'mseed' => 'application/vnd.fdsn.mseed', 'mseq' => 'application/vnd.mseq', 'msf' => 'application/vnd.epson.msf', 'msh' => 'model/mesh', 'msi' => 'application/x-msdownload', 'msl' => 'application/vnd.mobius.msl', 'msty' => 'application/vnd.muvee.style', 'mts' => 'model/vnd.mts', 'mus' => 'application/vnd.musician', 'musicxml' => 'application/vnd.recordare.musicxml+xml', 'mvb' => 'application/x-msmediaview', 'mwf' => 'application/vnd.mfer', 'mxf' => 'application/mxf', 'mxl' => 'application/vnd.recordare.musicxml', 'mxml' => 'application/xv+xml', 'mxs' => 'application/vnd.triscape.mxs', 'mxu' => 'video/vnd.mpegurl', 'n-gage' => 'application/vnd.nokia.n-gage.symbian.install', 'n3' => 'text/n3', 'nb' => 'application/mathematica', 'nbp' => 'application/vnd.wolfram.player', 'nc' => 'application/x-netcdf', 'ncx' => 'application/x-dtbncx+xml', 'ngdat' => 'application/vnd.nokia.n-gage.data', 'nlu' => 'application/vnd.neurolanguage.nlu', 'nml' => 'application/vnd.enliven', 'nnd' => 'application/vnd.noblenet-directory', 'nns' => 'application/vnd.noblenet-sealer', 'nnw' => 'application/vnd.noblenet-web', 'npx' => 'image/vnd.net-fpx', 'nsf' => 'application/vnd.lotus-notes', 'oa2' => 'application/vnd.fujitsu.oasys2', 'oa3' => 'application/vnd.fujitsu.oasys3', 'oas' => 'application/vnd.fujitsu.oasys', 'obd' => 'application/x-msbinder', 'oda' => 'application/oda', 'odb' => 'application/vnd.oasis.opendocument.database', 'odc' => 'application/vnd.oasis.opendocument.chart', 'odf' => 'application/vnd.oasis.opendocument.formula', 'odft' => 'application/vnd.oasis.opendocument.formula-template', 'odg' => 'application/vnd.oasis.opendocument.graphics', 'odi' => 'application/vnd.oasis.opendocument.image', 'odm' => 'application/vnd.oasis.opendocument.text-master', 'odp' => 'application/vnd.oasis.opendocument.presentation', 'ods' => 'application/vnd.oasis.opendocument.spreadsheet', 'odt' => 'application/vnd.oasis.opendocument.text', 'oga' => 'audio/ogg', 'ogg' => 'audio/ogg', 'ogv' => 'video/ogg', 'ogx' => 'application/ogg', 'onepkg' => 'application/onenote', 'onetmp' => 'application/onenote', 'onetoc' => 'application/onenote', 'onetoc2' => 'application/onenote', 'opf' => 'application/oebps-package+xml', 'oprc' => 'application/vnd.palm', 'org' => 'application/vnd.lotus-organizer', 'osf' => 'application/vnd.yamaha.openscoreformat', 'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml', 'otc' => 'application/vnd.oasis.opendocument.chart-template', 'otf' => 'application/x-font-otf', 'otg' => 'application/vnd.oasis.opendocument.graphics-template', 'oth' => 'application/vnd.oasis.opendocument.text-web', 'oti' => 'application/vnd.oasis.opendocument.image-template', 'otp' => 'application/vnd.oasis.opendocument.presentation-template', 'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template', 'ott' => 'application/vnd.oasis.opendocument.text-template', 'oxt' => 'application/vnd.openofficeorg.extension', 'p' => 'text/x-pascal', 'p10' => 'application/pkcs10', 'p12' => 'application/x-pkcs12', 'p7b' => 'application/x-pkcs7-certificates', 'p7c' => 'application/pkcs7-mime', 'p7m' => 'application/pkcs7-mime', 'p7r' => 'application/x-pkcs7-certreqresp', 'p7s' => 'application/pkcs7-signature', 'p8' => 'application/pkcs8', 'pas' => 'text/x-pascal', 'paw' => 'application/vnd.pawaafile', 'pbd' => 'application/vnd.powerbuilder6', 'pbm' => 'image/x-portable-bitmap', 'pcf' => 'application/x-font-pcf', 'pcl' => 'application/vnd.hp-pcl', 'pclxl' => 'application/vnd.hp-pclxl', 'pct' => 'image/x-pict', 'pcurl' => 'application/vnd.curl.pcurl', 'pcx' => 'image/x-pcx', 'pdb' => 'application/vnd.palm', 'pdf' => 'application/pdf', 'pfa' => 'application/x-font-type1', 'pfb' => 'application/x-font-type1', 'pfm' => 'application/x-font-type1', 'pfr' => 'application/font-tdpfr', 'pfx' => 'application/x-pkcs12', 'pgm' => 'image/x-portable-graymap', 'pgn' => 'application/x-chess-pgn', 'pgp' => 'application/pgp-encrypted', 'php' => 'text/x-php', 'phps' => 'application/x-httpd-phps', 'pic' => 'image/x-pict', 'pkg' => 'application/octet-stream', 'pki' => 'application/pkixcmp', 'pkipath' => 'application/pkix-pkipath', 'plb' => 'application/vnd.3gpp.pic-bw-large', 'plc' => 'application/vnd.mobius.plc', 'plf' => 'application/vnd.pocketlearn', 'pls' => 'application/pls+xml', 'pml' => 'application/vnd.ctc-posml', 'png' => 'image/png', 'pnm' => 'image/x-portable-anymap', 'portpkg' => 'application/vnd.macports.portpkg', 'pot' => 'application/vnd.ms-powerpoint', 'potm' => 'application/vnd.ms-powerpoint.template.macroenabled.12', 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template', 'ppam' => 'application/vnd.ms-powerpoint.addin.macroenabled.12', 'ppd' => 'application/vnd.cups-ppd', 'ppm' => 'image/x-portable-pixmap', 'pps' => 'application/vnd.ms-powerpoint', 'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroenabled.12', 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', 'ppt' => 'application/vnd.ms-powerpoint', 'pptm' => 'application/vnd.ms-powerpoint.presentation.macroenabled.12', 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'pqa' => 'application/vnd.palm', 'prc' => 'application/x-mobipocket-ebook', 'pre' => 'application/vnd.lotus-freelance', 'prf' => 'application/pics-rules', 'ps' => 'application/postscript', 'psb' => 'application/vnd.3gpp.pic-bw-small', 'psd' => 'image/vnd.adobe.photoshop', 'psf' => 'application/x-font-linux-psf', 'pskcxml' => 'application/pskc+xml', 'ptid' => 'application/vnd.pvi.ptid1', 'pub' => 'application/x-mspublisher', 'pvb' => 'application/vnd.3gpp.pic-bw-var', 'pwn' => 'application/vnd.3m.post-it-notes', 'pya' => 'audio/vnd.ms-playready.media.pya', 'pyv' => 'video/vnd.ms-playready.media.pyv', 'qam' => 'application/vnd.epson.quickanime', 'qbo' => 'application/vnd.intu.qbo', 'qfx' => 'application/vnd.intu.qfx', 'qps' => 'application/vnd.publishare-delta-tree', 'qt' => 'video/quicktime', 'qwd' => 'application/vnd.quark.quarkxpress', 'qwt' => 'application/vnd.quark.quarkxpress', 'qxb' => 'application/vnd.quark.quarkxpress', 'qxd' => 'application/vnd.quark.quarkxpress', 'qxl' => 'application/vnd.quark.quarkxpress', 'qxt' => 'application/vnd.quark.quarkxpress', 'ra' => 'audio/x-pn-realaudio', 'ram' => 'audio/x-pn-realaudio', 'rar' => 'application/x-rar-compressed', 'ras' => 'image/x-cmu-raster', 'rb' => 'text/plain', 'rcprofile' => 'application/vnd.ipunplugged.rcprofile', 'rdf' => 'application/rdf+xml', 'rdz' => 'application/vnd.data-vision.rdz', 'rep' => 'application/vnd.businessobjects', 'res' => 'application/x-dtbresource+xml', 'resx' => 'text/xml', 'rgb' => 'image/x-rgb', 'rif' => 'application/reginfo+xml', 'rip' => 'audio/vnd.rip', 'rl' => 'application/resource-lists+xml', 'rlc' => 'image/vnd.fujixerox.edmics-rlc', 'rld' => 'application/resource-lists-diff+xml', 'rm' => 'application/vnd.rn-realmedia', 'rmi' => 'audio/midi', 'rmp' => 'audio/x-pn-realaudio-plugin', 'rms' => 'application/vnd.jcp.javame.midlet-rms', 'rnc' => 'application/relax-ng-compact-syntax', 'roff' => 'text/troff', 'rp9' => 'application/vnd.cloanto.rp9', 'rpss' => 'application/vnd.nokia.radio-presets', 'rpst' => 'application/vnd.nokia.radio-preset', 'rq' => 'application/sparql-query', 'rs' => 'application/rls-services+xml', 'rsd' => 'application/rsd+xml', 'rss' => 'application/rss+xml', 'rtf' => 'application/rtf', 'rtx' => 'text/richtext', 's' => 'text/x-asm', 'saf' => 'application/vnd.yamaha.smaf-audio', 'sbml' => 'application/sbml+xml', 'sc' => 'application/vnd.ibm.secure-container', 'scd' => 'application/x-msschedule', 'scm' => 'application/vnd.lotus-screencam', 'scq' => 'application/scvp-cv-request', 'scs' => 'application/scvp-cv-response', 'scurl' => 'text/vnd.curl.scurl', 'sda' => 'application/vnd.stardivision.draw', 'sdc' => 'application/vnd.stardivision.calc', 'sdd' => 'application/vnd.stardivision.impress', 'sdkd' => 'application/vnd.solent.sdkm+xml', 'sdkm' => 'application/vnd.solent.sdkm+xml', 'sdp' => 'application/sdp', 'sdw' => 'application/vnd.stardivision.writer', 'see' => 'application/vnd.seemail', 'seed' => 'application/vnd.fdsn.seed', 'sema' => 'application/vnd.sema', 'semd' => 'application/vnd.semd', 'semf' => 'application/vnd.semf', 'ser' => 'application/java-serialized-object', 'setpay' => 'application/set-payment-initiation', 'setreg' => 'application/set-registration-initiation', 'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data', 'sfs' => 'application/vnd.spotfire.sfs', 'sgl' => 'application/vnd.stardivision.writer-global', 'sgm' => 'text/sgml', 'sgml' => 'text/sgml', 'sh' => 'application/x-sh', 'shar' => 'application/x-shar', 'shf' => 'application/shf+xml', 'sig' => 'application/pgp-signature', 'silo' => 'model/mesh', 'sis' => 'application/vnd.symbian.install', 'sisx' => 'application/vnd.symbian.install', 'sit' => 'application/x-stuffit', 'sitx' => 'application/x-stuffitx', 'skd' => 'application/vnd.koan', 'skm' => 'application/vnd.koan', 'skp' => 'application/vnd.koan', 'skt' => 'application/vnd.koan', 'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12', 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide', 'slt' => 'application/vnd.epson.salt', 'sm' => 'application/vnd.stepmania.stepchart', 'smf' => 'application/vnd.stardivision.math', 'smi' => 'application/smil+xml', 'smil' => 'application/smil+xml', 'snd' => 'audio/basic', 'snf' => 'application/x-font-snf', 'so' => 'application/octet-stream', 'spc' => 'application/x-pkcs7-certificates', 'spf' => 'application/vnd.yamaha.smaf-phrase', 'spl' => 'application/x-futuresplash', 'spot' => 'text/vnd.in3d.spot', 'spp' => 'application/scvp-vp-response', 'spq' => 'application/scvp-vp-request', 'spx' => 'audio/ogg', 'src' => 'application/x-wais-source', 'srt' => 'application/octet-stream', 'sru' => 'application/sru+xml', 'srx' => 'application/sparql-results+xml', 'sse' => 'application/vnd.kodak-descriptor', 'ssf' => 'application/vnd.epson.ssf', 'ssml' => 'application/ssml+xml', 'st' => 'application/vnd.sailingtracker.track', 'stc' => 'application/vnd.sun.xml.calc.template', 'std' => 'application/vnd.sun.xml.draw.template', 'stf' => 'application/vnd.wt.stf', 'sti' => 'application/vnd.sun.xml.impress.template', 'stk' => 'application/hyperstudio', 'stl' => 'application/vnd.ms-pki.stl', 'str' => 'application/vnd.pg.format', 'stw' => 'application/vnd.sun.xml.writer.template', 'sub' => 'image/vnd.dvb.subtitle', 'sus' => 'application/vnd.sus-calendar', 'susp' => 'application/vnd.sus-calendar', 'sv4cpio' => 'application/x-sv4cpio', 'sv4crc' => 'application/x-sv4crc', 'svc' => 'application/vnd.dvb.service', 'svd' => 'application/vnd.svd', 'svg' => 'image/svg+xml', 'svgz' => 'image/svg+xml', 'swa' => 'application/x-director', 'swf' => 'application/x-shockwave-flash', 'swi' => 'application/vnd.aristanetworks.swi', 'sxc' => 'application/vnd.sun.xml.calc', 'sxd' => 'application/vnd.sun.xml.draw', 'sxg' => 'application/vnd.sun.xml.writer.global', 'sxi' => 'application/vnd.sun.xml.impress', 'sxm' => 'application/vnd.sun.xml.math', 'sxw' => 'application/vnd.sun.xml.writer', 't' => 'text/troff', 'tao' => 'application/vnd.tao.intent-module-archive', 'tar' => 'application/x-tar', 'tcap' => 'application/vnd.3gpp2.tcap', 'tcl' => 'application/x-tcl', 'teacher' => 'application/vnd.smart.teacher', 'tei' => 'application/tei+xml', 'teicorpus' => 'application/tei+xml', 'tex' => 'application/x-tex', 'texi' => 'application/x-texinfo', 'texinfo' => 'application/x-texinfo', 'text' => 'text/plain', 'tfi' => 'application/thraud+xml', 'tfm' => 'application/x-tex-tfm', 'thmx' => 'application/vnd.ms-officetheme', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'tmo' => 'application/vnd.tmobile-livetv', 'torrent' => 'application/x-bittorrent', 'tpl' => 'application/vnd.groove-tool-template', 'tpt' => 'application/vnd.trid.tpt', 'tr' => 'text/troff', 'tra' => 'application/vnd.trueapp', 'trm' => 'application/x-msterminal', 'tsd' => 'application/timestamped-data', 'tsv' => 'text/tab-separated-values', 'ttc' => 'application/x-font-ttf', 'ttf' => 'application/x-font-ttf', 'ttl' => 'text/turtle', 'twd' => 'application/vnd.simtech-mindmapper', 'twds' => 'application/vnd.simtech-mindmapper', 'txd' => 'application/vnd.genomatix.tuxedo', 'txf' => 'application/vnd.mobius.txf', 'txt' => 'text/plain', 'u32' => 'application/x-authorware-bin', 'udeb' => 'application/x-debian-package', 'ufd' => 'application/vnd.ufdl', 'ufdl' => 'application/vnd.ufdl', 'umj' => 'application/vnd.umajin', 'unityweb' => 'application/vnd.unity', 'uoml' => 'application/vnd.uoml+xml', 'uri' => 'text/uri-list', 'uris' => 'text/uri-list', 'urls' => 'text/uri-list', 'ustar' => 'application/x-ustar', 'utz' => 'application/vnd.uiq.theme', 'uu' => 'text/x-uuencode', 'uva' => 'audio/vnd.dece.audio', 'uvd' => 'application/vnd.dece.data', 'uvf' => 'application/vnd.dece.data', 'uvg' => 'image/vnd.dece.graphic', 'uvh' => 'video/vnd.dece.hd', 'uvi' => 'image/vnd.dece.graphic', 'uvm' => 'video/vnd.dece.mobile', 'uvp' => 'video/vnd.dece.pd', 'uvs' => 'video/vnd.dece.sd', 'uvt' => 'application/vnd.dece.ttml+xml', 'uvu' => 'video/vnd.uvvu.mp4', 'uvv' => 'video/vnd.dece.video', 'uvva' => 'audio/vnd.dece.audio', 'uvvd' => 'application/vnd.dece.data', 'uvvf' => 'application/vnd.dece.data', 'uvvg' => 'image/vnd.dece.graphic', 'uvvh' => 'video/vnd.dece.hd', 'uvvi' => 'image/vnd.dece.graphic', 'uvvm' => 'video/vnd.dece.mobile', 'uvvp' => 'video/vnd.dece.pd', 'uvvs' => 'video/vnd.dece.sd', 'uvvt' => 'application/vnd.dece.ttml+xml', 'uvvu' => 'video/vnd.uvvu.mp4', 'uvvv' => 'video/vnd.dece.video', 'uvvx' => 'application/vnd.dece.unspecified', 'uvx' => 'application/vnd.dece.unspecified', 'vcd' => 'application/x-cdlink', 'vcf' => 'text/x-vcard', 'vcg' => 'application/vnd.groove-vcard', 'vcs' => 'text/x-vcalendar', 'vcx' => 'application/vnd.vcx', 'vis' => 'application/vnd.visionary', 'viv' => 'video/vnd.vivo', 'vor' => 'application/vnd.stardivision.writer', 'vox' => 'application/x-authorware-bin', 'vrml' => 'model/vrml', 'vsd' => 'application/vnd.visio', 'vsf' => 'application/vnd.vsf', 'vss' => 'application/vnd.visio', 'vst' => 'application/vnd.visio', 'vsw' => 'application/vnd.visio', 'vtu' => 'model/vnd.vtu', 'vxml' => 'application/voicexml+xml', 'w3d' => 'application/x-director', 'wad' => 'application/x-doom', 'wav' => 'audio/x-wav', 'wax' => 'audio/x-ms-wax', 'wbmp' => 'image/vnd.wap.wbmp', 'wbs' => 'application/vnd.criticaltools.wbs+xml', 'wbxml' => 'application/vnd.wap.wbxml', 'wcm' => 'application/vnd.ms-works', 'wdb' => 'application/vnd.ms-works', 'weba' => 'audio/webm', 'webm' => 'video/webm', 'webp' => 'image/webp', 'wg' => 'application/vnd.pmi.widget', 'wgt' => 'application/widget', 'wks' => 'application/vnd.ms-works', 'wm' => 'video/x-ms-wm', 'wma' => 'audio/x-ms-wma', 'wmd' => 'application/x-ms-wmd', 'wmf' => 'application/x-msmetafile', 'wml' => 'text/vnd.wap.wml', 'wmlc' => 'application/vnd.wap.wmlc', 'wmls' => 'text/vnd.wap.wmlscript', 'wmlsc' => 'application/vnd.wap.wmlscriptc', 'wmv' => 'video/x-ms-wmv', 'wmx' => 'video/x-ms-wmx', 'wmz' => 'application/x-ms-wmz', 'woff' => 'application/x-font-woff', 'wpd' => 'application/vnd.wordperfect', 'wpl' => 'application/vnd.ms-wpl', 'wps' => 'application/vnd.ms-works', 'wqd' => 'application/vnd.wqd', 'wri' => 'application/x-mswrite', 'wrl' => 'model/vrml', 'wsdl' => 'application/wsdl+xml', 'wspolicy' => 'application/wspolicy+xml', 'wtb' => 'application/vnd.webturbo', 'wvx' => 'video/x-ms-wvx', 'x32' => 'application/x-authorware-bin', 'x3d' => 'application/vnd.hzn-3d-crossword', 'xap' => 'application/x-silverlight-app', 'xar' => 'application/vnd.xara', 'xbap' => 'application/x-ms-xbap', 'xbd' => 'application/vnd.fujixerox.docuworks.binder', 'xbm' => 'image/x-xbitmap', 'xdf' => 'application/xcap-diff+xml', 'xdm' => 'application/vnd.syncml.dm+xml', 'xdp' => 'application/vnd.adobe.xdp+xml', 'xdssc' => 'application/dssc+xml', 'xdw' => 'application/vnd.fujixerox.docuworks', 'xenc' => 'application/xenc+xml', 'xer' => 'application/patch-ops-error+xml', 'xfdf' => 'application/vnd.adobe.xfdf', 'xfdl' => 'application/vnd.xfdl', 'xht' => 'application/xhtml+xml', 'xhtml' => 'application/xhtml+xml', 'xhvml' => 'application/xv+xml', 'xif' => 'image/vnd.xiff', 'xla' => 'application/vnd.ms-excel', 'xlam' => 'application/vnd.ms-excel.addin.macroenabled.12', 'xlc' => 'application/vnd.ms-excel', 'xlm' => 'application/vnd.ms-excel', 'xls' => 'application/vnd.ms-excel', 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroenabled.12', 'xlsm' => 'application/vnd.ms-excel.sheet.macroenabled.12', 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'xlt' => 'application/vnd.ms-excel', 'xltm' => 'application/vnd.ms-excel.template.macroenabled.12', 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', 'xlw' => 'application/vnd.ms-excel', 'xml' => 'application/xml', 'xo' => 'application/vnd.olpc-sugar', 'xop' => 'application/xop+xml', 'xpi' => 'application/x-xpinstall', 'xpm' => 'image/x-xpixmap', 'xpr' => 'application/vnd.is-xpr', 'xps' => 'application/vnd.ms-xpsdocument', 'xpw' => 'application/vnd.intercon.formnet', 'xpx' => 'application/vnd.intercon.formnet', 'xsl' => 'application/xml', 'xslt' => 'application/xslt+xml', 'xsm' => 'application/vnd.syncml+xml', 'xspf' => 'application/xspf+xml', 'xul' => 'application/vnd.mozilla.xul+xml', 'xvm' => 'application/xv+xml', 'xvml' => 'application/xv+xml', 'xwd' => 'image/x-xwindowdump', 'xyz' => 'chemical/x-xyz', 'yaml' => 'text/yaml', 'yang' => 'application/yang', 'yin' => 'application/yin+xml', 'yml' => 'text/yaml', 'zaz' => 'application/vnd.zzazz.deck+xml', 'zip' => 'application/zip', 'zir' => 'application/vnd.zul', 'zirz' => 'application/vnd.zul', 'zmm' => 'application/vnd.handheld-entertainment+xml' ]; /** * Get a singleton instance of the class * * @return self * @codeCoverageIgnore */ public static function getInstance() { if (!self::$instance) { self::$instance = new self(); } return self::$instance; } /** * Get a mimetype value from a file extension * * @param string $extension File extension * * @return string|null */ public function fromExtension($extension) { $extension = strtolower($extension); return isset($this->mimetypes[$extension]) ? $this->mimetypes[$extension] : null; } /** * Get a mimetype from a filename * * @param string $filename Filename to generate a mimetype from * * @return string|null */ public function fromFilename($filename) { return $this->fromExtension(pathinfo($filename, PATHINFO_EXTENSION)); } } PKCA#]�K���gcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookVideo.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; /** * Class FacebookVideo * * @package Facebook */ class FacebookVideo extends FacebookFile { } PKCA#]�ݪ " " ocomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookTransferChunk.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; /** * Class FacebookTransferChunk * * @package Facebook */ class FacebookTransferChunk { /** * @var FacebookFile The file to chunk during upload. */ private $file; /** * @var int The ID of the upload session. */ private $uploadSessionId; /** * @var int Start byte position of the next file chunk. */ private $startOffset; /** * @var int End byte position of the next file chunk. */ private $endOffset; /** * @var int The ID of the video. */ private $videoId; /** * @param FacebookFile $file * @param int $uploadSessionId * @param int $videoId * @param int $startOffset * @param int $endOffset */ public function __construct(FacebookFile $file, $uploadSessionId, $videoId, $startOffset, $endOffset) { $this->file = $file; $this->uploadSessionId = $uploadSessionId; $this->videoId = $videoId; $this->startOffset = $startOffset; $this->endOffset = $endOffset; } /** * Return the file entity. * * @return FacebookFile */ public function getFile() { return $this->file; } /** * Return a FacebookFile entity with partial content. * * @return FacebookFile */ public function getPartialFile() { $maxLength = $this->endOffset - $this->startOffset; return new FacebookFile($this->file->getFilePath(), $maxLength, $this->startOffset); } /** * Return upload session Id * * @return int */ public function getUploadSessionId() { return $this->uploadSessionId; } /** * Check whether is the last chunk * * @return bool */ public function isLastChunk() { return $this->startOffset === $this->endOffset; } /** * @return int */ public function getStartOffset() { return $this->startOffset; } /** * @return int */ public function getEndOffset() { return $this->endOffset; } /** * Get uploaded video Id * * @return int */ public function getVideoId() { return $this->videoId; } } PKCA#]�߆���fcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookFile.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookFile * * @package Facebook */ class FacebookFile { /** * @var string The path to the file on the system. */ protected $path; /** * @var int The maximum bytes to read. Defaults to -1 (read all the remaining buffer). */ private $maxLength; /** * @var int Seek to the specified offset before reading. If this number is negative, no seeking will occur and reading will start from the current position. */ private $offset; /** * @var resource The stream pointing to the file. */ protected $stream; /** * Creates a new FacebookFile entity. * * @param string $filePath * @param int $maxLength * @param int $offset * * @throws FacebookSDKException */ public function __construct($filePath, $maxLength = -1, $offset = -1) { $this->path = $filePath; $this->maxLength = $maxLength; $this->offset = $offset; $this->open(); } /** * Closes the stream when destructed. */ public function __destruct() { $this->close(); } /** * Opens a stream for the file. * * @throws FacebookSDKException */ public function open() { if (!$this->isRemoteFile($this->path) && !is_readable($this->path)) { throw new FacebookSDKException('Failed to create FacebookFile entity. Unable to read resource: ' . $this->path . '.'); } $this->stream = fopen($this->path, 'r'); if (!$this->stream) { throw new FacebookSDKException('Failed to create FacebookFile entity. Unable to open resource: ' . $this->path . '.'); } } /** * Stops the file stream. */ public function close() { if (is_resource($this->stream)) { fclose($this->stream); } } /** * Return the contents of the file. * * @return string */ public function getContents() { return stream_get_contents($this->stream, $this->maxLength, $this->offset); } /** * Return the name of the file. * * @return string */ public function getFileName() { return basename($this->path); } /** * Return the path of the file. * * @return string */ public function getFilePath() { return $this->path; } /** * Return the size of the file. * * @return int */ public function getSize() { return filesize($this->path); } /** * Return the mimetype of the file. * * @return string */ public function getMimetype() { return Mimetypes::getInstance()->fromFilename($this->path) ?: 'text/plain'; } /** * Returns true if the path to the file is remote. * * @param string $pathToFile * * @return boolean */ protected function isRemoteFile($pathToFile) { return preg_match('/^(https?|ftp):\/\/.*/', $pathToFile) === 1; } } PKCA#].��scomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FileUpload/FacebookResumableUploader.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookResumableUploadException; use Facebook\Exceptions\FacebookSDKException; use Facebook\FacebookApp; use Facebook\FacebookClient; use Facebook\FacebookRequest; /** * Class FacebookResumableUploader * * @package Facebook */ class FacebookResumableUploader { /** * @var FacebookApp */ protected $app; /** * @var string */ protected $accessToken; /** * @var FacebookClient The Facebook client service. */ protected $client; /** * @var string Graph version to use for this request. */ protected $graphVersion; /** * @param FacebookApp $app * @param FacebookClient $client * @param AccessToken|string|null $accessToken * @param string $graphVersion */ public function __construct(FacebookApp $app, FacebookClient $client, $accessToken, $graphVersion) { $this->app = $app; $this->client = $client; $this->accessToken = $accessToken; $this->graphVersion = $graphVersion; } /** * Upload by chunks - start phase * * @param string $endpoint * @param FacebookFile $file * * @return FacebookTransferChunk * * @throws FacebookSDKException */ public function start($endpoint, FacebookFile $file) { $params = [ 'upload_phase' => 'start', 'file_size' => $file->getSize(), ]; $response = $this->sendUploadRequest($endpoint, $params); return new FacebookTransferChunk($file, $response['upload_session_id'], $response['video_id'], $response['start_offset'], $response['end_offset']); } /** * Upload by chunks - transfer phase * * @param string $endpoint * @param FacebookTransferChunk $chunk * @param boolean $allowToThrow * * @return FacebookTransferChunk * * @throws FacebookResponseException */ public function transfer($endpoint, FacebookTransferChunk $chunk, $allowToThrow = false) { $params = [ 'upload_phase' => 'transfer', 'upload_session_id' => $chunk->getUploadSessionId(), 'start_offset' => $chunk->getStartOffset(), 'video_file_chunk' => $chunk->getPartialFile(), ]; try { $response = $this->sendUploadRequest($endpoint, $params); } catch (FacebookResponseException $e) { $preException = $e->getPrevious(); if ($allowToThrow || !$preException instanceof FacebookResumableUploadException) { throw $e; } if (null !== $preException->getStartOffset() && null !== $preException->getEndOffset()) { return new FacebookTransferChunk( $chunk->getFile(), $chunk->getUploadSessionId(), $chunk->getVideoId(), $preException->getStartOffset(), $preException->getEndOffset() ); } // Return the same chunk entity so it can be retried. return $chunk; } return new FacebookTransferChunk($chunk->getFile(), $chunk->getUploadSessionId(), $chunk->getVideoId(), $response['start_offset'], $response['end_offset']); } /** * Upload by chunks - finish phase * * @param string $endpoint * @param string $uploadSessionId * @param array $metadata The metadata associated with the file. * * @return boolean * * @throws FacebookSDKException */ public function finish($endpoint, $uploadSessionId, $metadata = []) { $params = array_merge($metadata, [ 'upload_phase' => 'finish', 'upload_session_id' => $uploadSessionId, ]); $response = $this->sendUploadRequest($endpoint, $params); return $response['success']; } /** * Helper to make a FacebookRequest and send it. * * @param string $endpoint The endpoint to POST to. * @param array $params The params to send with the request. * * @return array */ private function sendUploadRequest($endpoint, $params = []) { $request = new FacebookRequest($this->app, $this->accessToken, 'POST', $endpoint, $params, null, $this->graphVersion); return $this->client->sendRequest($request)->getDecodedBody(); } } PKCA#]rf\��dcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Http/GraphRawResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Class GraphRawResponse * * @package Facebook */ class GraphRawResponse { /** * @var array The response headers in the form of an associative array. */ protected $headers; /** * @var string The raw response body. */ protected $body; /** * @var int The HTTP status response code. */ protected $httpResponseCode; /** * Creates a new GraphRawResponse entity. * * @param string|array $headers The headers as a raw string or array. * @param string $body The raw response body. * @param int $httpStatusCode The HTTP response code (if sending headers as parsed array). */ public function __construct($headers, $body, $httpStatusCode = null) { if (is_numeric($httpStatusCode)) { $this->httpResponseCode = (int)$httpStatusCode; } if (is_array($headers)) { $this->headers = $headers; } else { $this->setHeadersFromString($headers); } $this->body = $body; } /** * Return the response headers. * * @return array */ public function getHeaders() { return $this->headers; } /** * Return the body of the response. * * @return string */ public function getBody() { return $this->body; } /** * Return the HTTP response code. * * @return int */ public function getHttpResponseCode() { return $this->httpResponseCode; } /** * Sets the HTTP response code from a raw header. * * @param string $rawResponseHeader */ public function setHttpResponseCodeFromHeader($rawResponseHeader) { // https://tools.ietf.org/html/rfc7230#section-3.1.2 list($version, $status, $reason) = array_pad(explode(' ', $rawResponseHeader, 3), 3, null); $this->httpResponseCode = (int) $status; } /** * Parse the raw headers and set as an array. * * @param string $rawHeaders The raw headers from the response. */ protected function setHeadersFromString($rawHeaders) { // Normalize line breaks $rawHeaders = str_replace("\r\n", "\n", $rawHeaders); // There will be multiple headers if a 301 was followed // or a proxy was followed, etc $headerCollection = explode("\n\n", trim($rawHeaders)); // We just want the last response (at the end) $rawHeader = array_pop($headerCollection); $headerComponents = explode("\n", $rawHeader); foreach ($headerComponents as $line) { if (strpos($line, ': ') === false) { $this->setHttpResponseCodeFromHeader($line); } else { list($key, $value) = explode(': ', $line, 2); $this->headers[$key] = $value; } } } } PKCA#]b ���hcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyMultipart.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; use Facebook\FileUpload\FacebookFile; /** * Class RequestBodyMultipartt * * Some things copied from Guzzle * * @package Facebook * * @see https://github.com/guzzle/guzzle/blob/master/src/Post/MultipartBody.php */ class RequestBodyMultipart implements RequestBodyInterface { /** * @var string The boundary. */ private $boundary; /** * @var array The parameters to send with this request. */ private $params; /** * @var array The files to send with this request. */ private $files = []; /** * @param array $params The parameters to send with this request. * @param array $files The files to send with this request. * @param string $boundary Provide a specific boundary. */ public function __construct(array $params = [], array $files = [], $boundary = null) { $this->params = $params; $this->files = $files; $this->boundary = $boundary ?: uniqid(); } /** * @inheritdoc */ public function getBody() { $body = ''; // Compile normal params $params = $this->getNestedParams($this->params); foreach ($params as $k => $v) { $body .= $this->getParamString($k, $v); } // Compile files foreach ($this->files as $k => $v) { $body .= $this->getFileString($k, $v); } // Peace out $body .= "--{$this->boundary}--\r\n"; return $body; } /** * Get the boundary * * @return string */ public function getBoundary() { return $this->boundary; } /** * Get the string needed to transfer a file. * * @param string $name * @param FacebookFile $file * * @return string */ private function getFileString($name, FacebookFile $file) { return sprintf( "--%s\r\nContent-Disposition: form-data; name=\"%s\"; filename=\"%s\"%s\r\n\r\n%s\r\n", $this->boundary, $name, $file->getFileName(), $this->getFileHeaders($file), $file->getContents() ); } /** * Get the string needed to transfer a POST field. * * @param string $name * @param string $value * * @return string */ private function getParamString($name, $value) { return sprintf( "--%s\r\nContent-Disposition: form-data; name=\"%s\"\r\n\r\n%s\r\n", $this->boundary, $name, $value ); } /** * Returns the params as an array of nested params. * * @param array $params * * @return array */ private function getNestedParams(array $params) { $query = http_build_query($params, null, '&'); $params = explode('&', $query); $result = []; foreach ($params as $param) { list($key, $value) = explode('=', $param, 2); $result[urldecode($key)] = urldecode($value); } return $result; } /** * Get the headers needed before transferring the content of a POST file. * * @param FacebookFile $file * * @return string */ protected function getFileHeaders(FacebookFile $file) { return "\r\nContent-Type: {$file->getMimetype()}"; } } PKCA#];s���icomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyUrlEncoded.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Class RequestBodyUrlEncoded * * @package Facebook */ class RequestBodyUrlEncoded implements RequestBodyInterface { /** * @var array The parameters to send with this request. */ protected $params = []; /** * Creates a new GraphUrlEncodedBody entity. * * @param array $params */ public function __construct(array $params) { $this->params = $params; } /** * @inheritdoc */ public function getBody() { return http_build_query($this->params, null, '&'); } } PKCA#]���%%hcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/Http/RequestBodyInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Interface * * @package Facebook */ interface RequestBodyInterface { /** * Get the body of the request to send to Graph. * * @return string */ public function getBody(); } PKCA#][�B�$$ccomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/FacebookBatchRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use ArrayIterator; use IteratorAggregate; use ArrayAccess; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookSDKException; /** * Class BatchRequest * * @package Facebook */ class FacebookBatchRequest extends FacebookRequest implements IteratorAggregate, ArrayAccess { /** * @var array An array of FacebookRequest entities to send. */ protected $requests = []; /** * @var array An array of files to upload. */ protected $attachedFiles; /** * Creates a new Request entity. * * @param FacebookApp|null $app * @param array $requests * @param AccessToken|string|null $accessToken * @param string|null $graphVersion */ public function __construct(FacebookApp $app = null, array $requests = [], $accessToken = null, $graphVersion = null) { parent::__construct($app, $accessToken, 'POST', '', [], null, $graphVersion); $this->add($requests); } /** * Adds a new request to the array. * * @param FacebookRequest|array $request * @param string|null|array $options Array of batch request options e.g. 'name', 'omit_response_on_success'. * If a string is given, it is the value of the 'name' option. * * @return FacebookBatchRequest * * @throws \InvalidArgumentException */ public function add($request, $options = null) { if (is_array($request)) { foreach ($request as $key => $req) { $this->add($req, $key); } return $this; } if (!$request instanceof FacebookRequest) { throw new \InvalidArgumentException('Argument for add() must be of type array or FacebookRequest.'); } if (null === $options) { $options = []; } elseif (!is_array($options)) { $options = ['name' => $options]; } $this->addFallbackDefaults($request); // File uploads $attachedFiles = $this->extractFileAttachments($request); $name = isset($options['name']) ? $options['name'] : null; unset($options['name']); $requestToAdd = [ 'name' => $name, 'request' => $request, 'options' => $options, 'attached_files' => $attachedFiles, ]; $this->requests[] = $requestToAdd; return $this; } /** * Ensures that the FacebookApp and access token fall back when missing. * * @param FacebookRequest $request * * @throws FacebookSDKException */ public function addFallbackDefaults(FacebookRequest $request) { if (!$request->getApp()) { $app = $this->getApp(); if (!$app) { throw new FacebookSDKException('Missing FacebookApp on FacebookRequest and no fallback detected on FacebookBatchRequest.'); } $request->setApp($app); } if (!$request->getAccessToken()) { $accessToken = $this->getAccessToken(); if (!$accessToken) { throw new FacebookSDKException('Missing access token on FacebookRequest and no fallback detected on FacebookBatchRequest.'); } $request->setAccessToken($accessToken); } } /** * Extracts the files from a request. * * @param FacebookRequest $request * * @return string|null * * @throws FacebookSDKException */ public function extractFileAttachments(FacebookRequest $request) { if (!$request->containsFileUploads()) { return null; } $files = $request->getFiles(); $fileNames = []; foreach ($files as $file) { $fileName = uniqid(); $this->addFile($fileName, $file); $fileNames[] = $fileName; } $request->resetFiles(); // @TODO Does Graph support multiple uploads on one endpoint? return implode(',', $fileNames); } /** * Return the FacebookRequest entities. * * @return array */ public function getRequests() { return $this->requests; } /** * Prepares the requests to be sent as a batch request. */ public function prepareRequestsForBatch() { $this->validateBatchRequestCount(); $params = [ 'batch' => $this->convertRequestsToJson(), 'include_headers' => true, ]; $this->setParams($params); } /** * Converts the requests into a JSON(P) string. * * @return string */ public function convertRequestsToJson() { $requests = []; foreach ($this->requests as $request) { $options = []; if (null !== $request['name']) { $options['name'] = $request['name']; } $options += $request['options']; $requests[] = $this->requestEntityToBatchArray($request['request'], $options, $request['attached_files']); } return json_encode($requests); } /** * Validate the request count before sending them as a batch. * * @throws FacebookSDKException */ public function validateBatchRequestCount() { $batchCount = count($this->requests); if ($batchCount === 0) { throw new FacebookSDKException('There are no batch requests to send.'); } elseif ($batchCount > 50) { // Per: https://developers.facebook.com/docs/graph-api/making-multiple-requests#limits throw new FacebookSDKException('You cannot send more than 50 batch requests at a time.'); } } /** * Converts a Request entity into an array that is batch-friendly. * * @param FacebookRequest $request The request entity to convert. * @param string|null|array $options Array of batch request options e.g. 'name', 'omit_response_on_success'. * If a string is given, it is the value of the 'name' option. * @param string|null $attachedFiles Names of files associated with the request. * * @return array */ public function requestEntityToBatchArray(FacebookRequest $request, $options = null, $attachedFiles = null) { if (null === $options) { $options = []; } elseif (!is_array($options)) { $options = ['name' => $options]; } $compiledHeaders = []; $headers = $request->getHeaders(); foreach ($headers as $name => $value) { $compiledHeaders[] = $name . ': ' . $value; } $batch = [ 'headers' => $compiledHeaders, 'method' => $request->getMethod(), 'relative_url' => $request->getUrl(), ]; // Since file uploads are moved to the root request of a batch request, // the child requests will always be URL-encoded. $body = $request->getUrlEncodedBody()->getBody(); if ($body) { $batch['body'] = $body; } $batch += $options; if (null !== $attachedFiles) { $batch['attached_files'] = $attachedFiles; } return $batch; } /** * Get an iterator for the items. * * @return ArrayIterator */ public function getIterator() { return new ArrayIterator($this->requests); } /** * @inheritdoc */ public function offsetSet($offset, $value) { $this->add($value, $offset); } /** * @inheritdoc */ public function offsetExists($offset) { return isset($this->requests[$offset]); } /** * @inheritdoc */ public function offsetUnset($offset) { unset($this->requests[$offset]); } /** * @inheritdoc */ public function offsetGet($offset) { return isset($this->requests[$offset]) ? $this->requests[$offset] : null; } } PKCA#]��=���components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookMemoryPersistentDataHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; /** * Class FacebookMemoryPersistentDataHandler * * @package Facebook */ class FacebookMemoryPersistentDataHandler implements PersistentDataInterface { /** * @var array The session data to keep in memory. */ protected $sessionData = []; /** * @inheritdoc */ public function get($key) { return isset($this->sessionData[$key]) ? $this->sessionData[$key] : null; } /** * @inheritdoc */ public function set($key, $value) { $this->sessionData[$key] = $value; } } PKCA#]�,Xn n scomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; use InvalidArgumentException; class PersistentDataFactory { private function __construct() { // a factory constructor should never be invoked } /** * PersistentData generation. * * @param PersistentDataInterface|string|null $handler * * @throws InvalidArgumentException If the persistent data handler isn't "session", "memory", or an instance of Facebook\PersistentData\PersistentDataInterface. * * @return PersistentDataInterface */ public static function createPersistentDataHandler($handler) { if (!$handler) { return session_status() === PHP_SESSION_ACTIVE ? new FacebookSessionPersistentDataHandler() : new FacebookMemoryPersistentDataHandler(); } if ($handler instanceof PersistentDataInterface) { return $handler; } if ('session' === $handler) { return new FacebookSessionPersistentDataHandler(); } if ('memory' === $handler) { return new FacebookMemoryPersistentDataHandler(); } throw new InvalidArgumentException('The persistent data handler must be set to "session", "memory", or be an instance of Facebook\PersistentData\PersistentDataInterface'); } } PKCA#]z���ucomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PersistentData/PersistentDataInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; /** * Interface PersistentDataInterface * * @package Facebook */ interface PersistentDataInterface { /** * Get a value from a persistent data store. * * @param string $key * * @return mixed */ public function get($key); /** * Set a value in the persistent data store. * * @param string $key * @param mixed $value */ public function set($key, $value); } PKCA#]��Z���components/com_sppagebuilder/assets/vendor/facebook/graph-sdk/src/Facebook/PersistentData/FacebookSessionPersistentDataHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookSessionPersistentDataHandler * * @package Facebook */ class FacebookSessionPersistentDataHandler implements PersistentDataInterface { /** * @var string Prefix to use for session variables. */ protected $sessionPrefix = 'FBRLH_'; /** * Init the session handler. * * @param boolean $enableSessionCheck * * @throws FacebookSDKException */ public function __construct($enableSessionCheck = true) { if ($enableSessionCheck && session_status() !== PHP_SESSION_ACTIVE) { throw new FacebookSDKException( 'Sessions are not active. Please make sure session_start() is at the top of your script.', 720 ); } } /** * @inheritdoc */ public function get($key) { if (isset($_SESSION[$this->sessionPrefix . $key])) { return $_SESSION[$this->sessionPrefix . $key]; } return null; } /** * @inheritdoc */ public function set($key, $value) { $_SESSION[$this->sessionPrefix . $key] = $value; } } PKCA#]/z�U��Pcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/CODE_OF_CONDUCT.mdnu�[���# Code of Conduct Facebook has adopted a Code of Conduct that we expect project participants to adhere to. Please [read the full text](https://code.facebook.com/codeofconduct) so that you can understand what actions will and will not be tolerated. PKCA#]���Lcomponents/com_sppagebuilder/assets/vendor/facebook/graph-sdk/phpcs.xml.distnu�[���<?xml version="1.0"?> <ruleset> <file>src/</file> <file>tests/</file> <arg value="spn" /> <rule ref="PSR2" /> </ruleset> PKCA#]M'cE//Acomponents/com_sppagebuilder/assets/vendor/composer/installed.phpnu�[���<?php return array( 'root' => array( 'name' => 'joomshaper/sppagebuilder', 'pretty_version' => '6.8.0.x-dev', 'version' => '6.8.0.9999999-dev', 'reference' => '6350861e186f457341e035522d10150a1e927247', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => true, ), 'versions' => array( 'facebook/graph-sdk' => array( 'dev_requirement' => false, 'replaced' => array( 0 => '>=5.7.0', ), ), 'joomshaper/sppagebuilder' => array( 'pretty_version' => '6.8.0.x-dev', 'version' => '6.8.0.9999999-dev', 'reference' => '6350861e186f457341e035522d10150a1e927247', 'type' => 'library', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => false, ), 'nickdnk/graph-sdk' => array( 'pretty_version' => '8.0.1', 'version' => '8.0.1.0', 'reference' => '6ba3e5c66ffbe1a725d5822dc7dd4c1fb013ff00', 'type' => 'library', 'install_path' => __DIR__ . '/../nickdnk/graph-sdk', 'aliases' => array(), 'dev_requirement' => false, ), ), ); PKCA#]�/t��Kcomponents/com_sppagebuilder/assets/vendor/composer/autoload_namespaces.phpnu�[���<?php // autoload_namespaces.php @generated by Composer $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( ); PKCA#] 2��??Icomponents/com_sppagebuilder/assets/vendor/composer/InstalledVersions.phpnu�[���<?php /* * This file is part of Composer. * * (c) Nils Adermann <naderman@naderman.de> * Jordi Boggiano <j.boggiano@seld.be> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Composer; use Composer\Autoload\ClassLoader; use Composer\Semver\VersionParser; /** * This class is copied in every Composer installed project and available to all * * See also https://getcomposer.org/doc/07-runtime.md#installed-versions * * To require its presence, you can require `composer-runtime-api ^2.0` * * @final */ class InstalledVersions { /** * @var mixed[]|null * @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null */ private static $installed; /** * @var bool|null */ private static $canGetVendors; /** * @var array[] * @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}> */ private static $installedByVendor = array(); /** * Returns a list of all package names which are present, either by being installed, replaced or provided * * @return string[] * @psalm-return list<string> */ public static function getInstalledPackages() { $packages = array(); foreach (self::getInstalled() as $installed) { $packages[] = array_keys($installed['versions']); } if (1 === \count($packages)) { return $packages[0]; } return array_keys(array_flip(\call_user_func_array('array_merge', $packages))); } /** * Returns a list of all package names with a specific type e.g. 'library' * * @param string $type * @return string[] * @psalm-return list<string> */ public static function getInstalledPackagesByType($type) { $packagesByType = array(); foreach (self::getInstalled() as $installed) { foreach ($installed['versions'] as $name => $package) { if (isset($package['type']) && $package['type'] === $type) { $packagesByType[] = $name; } } } return $packagesByType; } /** * Checks whether the given package is installed * * This also returns true if the package name is provided or replaced by another package * * @param string $packageName * @param bool $includeDevRequirements * @return bool */ public static function isInstalled($packageName, $includeDevRequirements = true) { foreach (self::getInstalled() as $installed) { if (isset($installed['versions'][$packageName])) { return $includeDevRequirements || !isset($installed['versions'][$packageName]['dev_requirement']) || $installed['versions'][$packageName]['dev_requirement'] === false; } } return false; } /** * Checks whether the given package satisfies a version constraint * * e.g. If you want to know whether version 2.3+ of package foo/bar is installed, you would call: * * Composer\InstalledVersions::satisfies(new VersionParser, 'foo/bar', '^2.3') * * @param VersionParser $parser Install composer/semver to have access to this class and functionality * @param string $packageName * @param string|null $constraint A version constraint to check for, if you pass one you have to make sure composer/semver is required by your package * @return bool */ public static function satisfies(VersionParser $parser, $packageName, $constraint) { $constraint = $parser->parseConstraints((string) $constraint); $provided = $parser->parseConstraints(self::getVersionRanges($packageName)); return $provided->matches($constraint); } /** * Returns a version constraint representing all the range(s) which are installed for a given package * * It is easier to use this via isInstalled() with the $constraint argument if you need to check * whether a given version of a package is installed, and not just whether it exists * * @param string $packageName * @return string Version constraint usable with composer/semver */ public static function getVersionRanges($packageName) { foreach (self::getInstalled() as $installed) { if (!isset($installed['versions'][$packageName])) { continue; } $ranges = array(); if (isset($installed['versions'][$packageName]['pretty_version'])) { $ranges[] = $installed['versions'][$packageName]['pretty_version']; } if (array_key_exists('aliases', $installed['versions'][$packageName])) { $ranges = array_merge($ranges, $installed['versions'][$packageName]['aliases']); } if (array_key_exists('replaced', $installed['versions'][$packageName])) { $ranges = array_merge($ranges, $installed['versions'][$packageName]['replaced']); } if (array_key_exists('provided', $installed['versions'][$packageName])) { $ranges = array_merge($ranges, $installed['versions'][$packageName]['provided']); } return implode(' || ', $ranges); } throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } /** * @param string $packageName * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present */ public static function getVersion($packageName) { foreach (self::getInstalled() as $installed) { if (!isset($installed['versions'][$packageName])) { continue; } if (!isset($installed['versions'][$packageName]['version'])) { return null; } return $installed['versions'][$packageName]['version']; } throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } /** * @param string $packageName * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as version, use satisfies or getVersionRanges if you need to know if a given version is present */ public static function getPrettyVersion($packageName) { foreach (self::getInstalled() as $installed) { if (!isset($installed['versions'][$packageName])) { continue; } if (!isset($installed['versions'][$packageName]['pretty_version'])) { return null; } return $installed['versions'][$packageName]['pretty_version']; } throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } /** * @param string $packageName * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as reference */ public static function getReference($packageName) { foreach (self::getInstalled() as $installed) { if (!isset($installed['versions'][$packageName])) { continue; } if (!isset($installed['versions'][$packageName]['reference'])) { return null; } return $installed['versions'][$packageName]['reference']; } throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } /** * @param string $packageName * @return string|null If the package is being replaced or provided but is not really installed, null will be returned as install path. Packages of type metapackages also have a null install path. */ public static function getInstallPath($packageName) { foreach (self::getInstalled() as $installed) { if (!isset($installed['versions'][$packageName])) { continue; } return isset($installed['versions'][$packageName]['install_path']) ? $installed['versions'][$packageName]['install_path'] : null; } throw new \OutOfBoundsException('Package "' . $packageName . '" is not installed'); } /** * @return array * @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool} */ public static function getRootPackage() { $installed = self::getInstalled(); return $installed[0]['root']; } /** * Returns the raw installed.php data for custom implementations * * @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect. * @return array[] * @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} */ public static function getRawData() { @trigger_error('getRawData only returns the first dataset loaded, which may not be what you expect. Use getAllRawData() instead which returns all datasets for all autoloaders present in the process.', E_USER_DEPRECATED); if (null === self::$installed) { // only require the installed.php file if this file is loaded from its dumped location, // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 if (substr(__DIR__, -8, 1) !== 'C') { self::$installed = include __DIR__ . '/installed.php'; } else { self::$installed = array(); } } return self::$installed; } /** * Returns the raw data of all installed.php which are currently loaded for custom implementations * * @return array[] * @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}> */ public static function getAllRawData() { return self::getInstalled(); } /** * Lets you reload the static array from another file * * This is only useful for complex integrations in which a project needs to use * this class but then also needs to execute another project's autoloader in process, * and wants to ensure both projects have access to their version of installed.php. * * A typical case would be PHPUnit, where it would need to make sure it reads all * the data it needs from this class, then call reload() with * `require $CWD/vendor/composer/installed.php` (or similar) as input to make sure * the project in which it runs can then also use this class safely, without * interference between PHPUnit's dependencies and the project's dependencies. * * @param array[] $data A vendor/composer/installed.php data set * @return void * * @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $data */ public static function reload($data) { self::$installed = $data; self::$installedByVendor = array(); } /** * @return array[] * @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}> */ private static function getInstalled() { if (null === self::$canGetVendors) { self::$canGetVendors = method_exists('Composer\Autoload\ClassLoader', 'getRegisteredLoaders'); } $installed = array(); if (self::$canGetVendors) { foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { if (isset(self::$installedByVendor[$vendorDir])) { $installed[] = self::$installedByVendor[$vendorDir]; } elseif (is_file($vendorDir.'/composer/installed.php')) { /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ $required = require $vendorDir.'/composer/installed.php'; $installed[] = self::$installedByVendor[$vendorDir] = $required; if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { self::$installed = $installed[count($installed) - 1]; } } } } if (null === self::$installed) { // only require the installed.php file if this file is loaded from its dumped location, // and not from its source location in the composer/composer package, see https://github.com/composer/composer/issues/9937 if (substr(__DIR__, -8, 1) !== 'C') { /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ $required = require __DIR__ . '/installed.php'; self::$installed = $required; } else { self::$installed = array(); } } if (self::$installed !== array()) { $installed[] = self::$installed; } return $installed; } } PKCA#]L����Icomponents/com_sppagebuilder/assets/vendor/composer/autoload_classmap.phpnu�[���<?php // autoload_classmap.php @generated by Composer $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( 'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php', ); PKCA#]��h���Ecomponents/com_sppagebuilder/assets/vendor/composer/autoload_psr4.phpnu�[���<?php // autoload_psr4.php @generated by Composer $vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array( 'Facebook\\' => array($vendorDir . '/nickdnk/graph-sdk/src/Facebook'), ); PKCA#]9�S��Bcomponents/com_sppagebuilder/assets/vendor/composer/installed.jsonnu�[���{ "packages": [ { "name": "nickdnk/graph-sdk", "version": "8.0.1", "version_normalized": "8.0.1.0", "source": { "type": "git", "url": "https://github.com/nickdnk/php-graph-sdk.git", "reference": "6ba3e5c66ffbe1a725d5822dc7dd4c1fb013ff00" }, "dist": { "type": "zip", "url": "https://api.github.com/repos/nickdnk/php-graph-sdk/zipball/6ba3e5c66ffbe1a725d5822dc7dd4c1fb013ff00", "reference": "6ba3e5c66ffbe1a725d5822dc7dd4c1fb013ff00", "shasum": "" }, "require": { "php": "^8.1" }, "conflict": { "guzzlehttp/guzzle": "<6.0" }, "replace": { "facebook/graph-sdk": ">=5.7.0" }, "require-dev": { "guzzlehttp/guzzle": "^7.9.2", "mockery/mockery": "^1.6.12", "phpunit/phpunit": "^9.5" }, "time": "2025-08-22T23:48:30+00:00", "type": "library", "installation-source": "dist", "autoload": { "psr-4": { "Facebook\\": "src/Facebook/" } }, "notification-url": "https://packagist.org/downloads/", "license": [ "proprietary" ], "authors": [ { "name": "Facebook", "homepage": "https://github.com/facebook/php-graph-sdk/contributors" } ], "description": "Facebook SDK for PHP 8+", "homepage": "https://github.com/nickdnk/php-graph-sdk", "keywords": [ "facebook", "sdk" ], "support": { "issues": "https://github.com/nickdnk/php-graph-sdk/issues", "source": "https://github.com/nickdnk/php-graph-sdk/tree/8.0.1" }, "install-path": "../nickdnk/graph-sdk" } ], "dev": true, "dev-package-names": [] } PKCA#]E����Fcomponents/com_sppagebuilder/assets/vendor/composer/platform_check.phpnu�[���<?php // platform_check.php @generated by Composer $issues = array(); if (!(PHP_VERSION_ID >= 50400)) { $issues[] = 'Your Composer dependencies require a PHP version ">= 5.4.0". You are running ' . PHP_VERSION . '.'; } if ($issues) { if (!headers_sent()) { header('HTTP/1.1 500 Internal Server Error'); } if (!ini_get('display_errors')) { if (PHP_SAPI === 'cli' || PHP_SAPI === 'phpdbg') { fwrite(STDERR, 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . implode(PHP_EOL, $issues) . PHP_EOL.PHP_EOL); } elseif (!headers_sent()) { echo 'Composer detected issues in your platform:' . PHP_EOL.PHP_EOL . str_replace('You are running '.PHP_VERSION.'.', '', implode(PHP_EOL, $issues)) . PHP_EOL.PHP_EOL; } } trigger_error( 'Composer detected issues in your platform: ' . implode(' ', $issues), E_USER_ERROR ); } PKCA#]��??Ecomponents/com_sppagebuilder/assets/vendor/composer/autoload_real.phpnu�[���<?php // autoload_real.php @generated by Composer class ComposerAutoloaderInita6751dbcaf49022a7255309c490f79a4 { private static $loader; public static function loadClassLoader($class) { if ('Composer\Autoload\ClassLoader' === $class) { require __DIR__ . '/ClassLoader.php'; } } /** * @return \Composer\Autoload\ClassLoader */ public static function getLoader() { if (null !== self::$loader) { return self::$loader; } spl_autoload_register(array('ComposerAutoloaderInita6751dbcaf49022a7255309c490f79a4', 'loadClassLoader'), true, true); self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); spl_autoload_unregister(array('ComposerAutoloaderInita6751dbcaf49022a7255309c490f79a4', 'loadClassLoader')); require __DIR__ . '/autoload_static.php'; call_user_func(\Composer\Autoload\ComposerStaticInita6751dbcaf49022a7255309c490f79a4::getInitializer($loader)); $loader->register(true); return $loader; } } PKCA#]2@u�?�?Ccomponents/com_sppagebuilder/assets/vendor/composer/ClassLoader.phpnu�[���<?php /* * This file is part of Composer. * * (c) Nils Adermann <naderman@naderman.de> * Jordi Boggiano <j.boggiano@seld.be> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Composer\Autoload; /** * ClassLoader implements a PSR-0, PSR-4 and classmap class loader. * * $loader = new \Composer\Autoload\ClassLoader(); * * // register classes with namespaces * $loader->add('Symfony\Component', __DIR__.'/component'); * $loader->add('Symfony', __DIR__.'/framework'); * * // activate the autoloader * $loader->register(); * * // to enable searching the include path (eg. for PEAR packages) * $loader->setUseIncludePath(true); * * In this example, if you try to use a class in the Symfony\Component * namespace or one of its children (Symfony\Component\Console for instance), * the autoloader will first look for the class under the component/ * directory, and it will then fallback to the framework/ directory if not * found before giving up. * * This class is loosely based on the Symfony UniversalClassLoader. * * @author Fabien Potencier <fabien@symfony.com> * @author Jordi Boggiano <j.boggiano@seld.be> * @see https://www.php-fig.org/psr/psr-0/ * @see https://www.php-fig.org/psr/psr-4/ */ class ClassLoader { /** @var \Closure(string):void */ private static $includeFile; /** @var string|null */ private $vendorDir; // PSR-4 /** * @var array<string, array<string, int>> */ private $prefixLengthsPsr4 = array(); /** * @var array<string, list<string>> */ private $prefixDirsPsr4 = array(); /** * @var list<string> */ private $fallbackDirsPsr4 = array(); // PSR-0 /** * List of PSR-0 prefixes * * Structured as array('F (first letter)' => array('Foo\Bar (full prefix)' => array('path', 'path2'))) * * @var array<string, array<string, list<string>>> */ private $prefixesPsr0 = array(); /** * @var list<string> */ private $fallbackDirsPsr0 = array(); /** @var bool */ private $useIncludePath = false; /** * @var array<string, string> */ private $classMap = array(); /** @var bool */ private $classMapAuthoritative = false; /** * @var array<string, bool> */ private $missingClasses = array(); /** @var string|null */ private $apcuPrefix; /** * @var array<string, self> */ private static $registeredLoaders = array(); /** * @param string|null $vendorDir */ public function __construct($vendorDir = null) { $this->vendorDir = $vendorDir; self::initializeIncludeClosure(); } /** * @return array<string, list<string>> */ public function getPrefixes() { if (!empty($this->prefixesPsr0)) { return call_user_func_array('array_merge', array_values($this->prefixesPsr0)); } return array(); } /** * @return array<string, list<string>> */ public function getPrefixesPsr4() { return $this->prefixDirsPsr4; } /** * @return list<string> */ public function getFallbackDirs() { return $this->fallbackDirsPsr0; } /** * @return list<string> */ public function getFallbackDirsPsr4() { return $this->fallbackDirsPsr4; } /** * @return array<string, string> Array of classname => path */ public function getClassMap() { return $this->classMap; } /** * @param array<string, string> $classMap Class to filename map * * @return void */ public function addClassMap(array $classMap) { if ($this->classMap) { $this->classMap = array_merge($this->classMap, $classMap); } else { $this->classMap = $classMap; } } /** * Registers a set of PSR-0 directories for a given prefix, either * appending or prepending to the ones previously set for this prefix. * * @param string $prefix The prefix * @param list<string>|string $paths The PSR-0 root directories * @param bool $prepend Whether to prepend the directories * * @return void */ public function add($prefix, $paths, $prepend = false) { $paths = (array) $paths; if (!$prefix) { if ($prepend) { $this->fallbackDirsPsr0 = array_merge( $paths, $this->fallbackDirsPsr0 ); } else { $this->fallbackDirsPsr0 = array_merge( $this->fallbackDirsPsr0, $paths ); } return; } $first = $prefix[0]; if (!isset($this->prefixesPsr0[$first][$prefix])) { $this->prefixesPsr0[$first][$prefix] = $paths; return; } if ($prepend) { $this->prefixesPsr0[$first][$prefix] = array_merge( $paths, $this->prefixesPsr0[$first][$prefix] ); } else { $this->prefixesPsr0[$first][$prefix] = array_merge( $this->prefixesPsr0[$first][$prefix], $paths ); } } /** * Registers a set of PSR-4 directories for a given namespace, either * appending or prepending to the ones previously set for this namespace. * * @param string $prefix The prefix/namespace, with trailing '\\' * @param list<string>|string $paths The PSR-4 base directories * @param bool $prepend Whether to prepend the directories * * @throws \InvalidArgumentException * * @return void */ public function addPsr4($prefix, $paths, $prepend = false) { $paths = (array) $paths; if (!$prefix) { // Register directories for the root namespace. if ($prepend) { $this->fallbackDirsPsr4 = array_merge( $paths, $this->fallbackDirsPsr4 ); } else { $this->fallbackDirsPsr4 = array_merge( $this->fallbackDirsPsr4, $paths ); } } elseif (!isset($this->prefixDirsPsr4[$prefix])) { // Register directories for a new namespace. $length = strlen($prefix); if ('\\' !== $prefix[$length - 1]) { throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); } $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; $this->prefixDirsPsr4[$prefix] = $paths; } elseif ($prepend) { // Prepend directories for an already registered namespace. $this->prefixDirsPsr4[$prefix] = array_merge( $paths, $this->prefixDirsPsr4[$prefix] ); } else { // Append directories for an already registered namespace. $this->prefixDirsPsr4[$prefix] = array_merge( $this->prefixDirsPsr4[$prefix], $paths ); } } /** * Registers a set of PSR-0 directories for a given prefix, * replacing any others previously set for this prefix. * * @param string $prefix The prefix * @param list<string>|string $paths The PSR-0 base directories * * @return void */ public function set($prefix, $paths) { if (!$prefix) { $this->fallbackDirsPsr0 = (array) $paths; } else { $this->prefixesPsr0[$prefix[0]][$prefix] = (array) $paths; } } /** * Registers a set of PSR-4 directories for a given namespace, * replacing any others previously set for this namespace. * * @param string $prefix The prefix/namespace, with trailing '\\' * @param list<string>|string $paths The PSR-4 base directories * * @throws \InvalidArgumentException * * @return void */ public function setPsr4($prefix, $paths) { if (!$prefix) { $this->fallbackDirsPsr4 = (array) $paths; } else { $length = strlen($prefix); if ('\\' !== $prefix[$length - 1]) { throw new \InvalidArgumentException("A non-empty PSR-4 prefix must end with a namespace separator."); } $this->prefixLengthsPsr4[$prefix[0]][$prefix] = $length; $this->prefixDirsPsr4[$prefix] = (array) $paths; } } /** * Turns on searching the include path for class files. * * @param bool $useIncludePath * * @return void */ public function setUseIncludePath($useIncludePath) { $this->useIncludePath = $useIncludePath; } /** * Can be used to check if the autoloader uses the include path to check * for classes. * * @return bool */ public function getUseIncludePath() { return $this->useIncludePath; } /** * Turns off searching the prefix and fallback directories for classes * that have not been registered with the class map. * * @param bool $classMapAuthoritative * * @return void */ public function setClassMapAuthoritative($classMapAuthoritative) { $this->classMapAuthoritative = $classMapAuthoritative; } /** * Should class lookup fail if not found in the current class map? * * @return bool */ public function isClassMapAuthoritative() { return $this->classMapAuthoritative; } /** * APCu prefix to use to cache found/not-found classes, if the extension is enabled. * * @param string|null $apcuPrefix * * @return void */ public function setApcuPrefix($apcuPrefix) { $this->apcuPrefix = function_exists('apcu_fetch') && filter_var(ini_get('apc.enabled'), FILTER_VALIDATE_BOOLEAN) ? $apcuPrefix : null; } /** * The APCu prefix in use, or null if APCu caching is not enabled. * * @return string|null */ public function getApcuPrefix() { return $this->apcuPrefix; } /** * Registers this instance as an autoloader. * * @param bool $prepend Whether to prepend the autoloader or not * * @return void */ public function register($prepend = false) { spl_autoload_register(array($this, 'loadClass'), true, $prepend); if (null === $this->vendorDir) { return; } if ($prepend) { self::$registeredLoaders = array($this->vendorDir => $this) + self::$registeredLoaders; } else { unset(self::$registeredLoaders[$this->vendorDir]); self::$registeredLoaders[$this->vendorDir] = $this; } } /** * Unregisters this instance as an autoloader. * * @return void */ public function unregister() { spl_autoload_unregister(array($this, 'loadClass')); if (null !== $this->vendorDir) { unset(self::$registeredLoaders[$this->vendorDir]); } } /** * Loads the given class or interface. * * @param string $class The name of the class * @return true|null True if loaded, null otherwise */ public function loadClass($class) { if ($file = $this->findFile($class)) { $includeFile = self::$includeFile; $includeFile($file); return true; } return null; } /** * Finds the path to the file where the class is defined. * * @param string $class The name of the class * * @return string|false The path if found, false otherwise */ public function findFile($class) { // class map lookup if (isset($this->classMap[$class])) { return $this->classMap[$class]; } if ($this->classMapAuthoritative || isset($this->missingClasses[$class])) { return false; } if (null !== $this->apcuPrefix) { $file = apcu_fetch($this->apcuPrefix.$class, $hit); if ($hit) { return $file; } } $file = $this->findFileWithExtension($class, '.php'); // Search for Hack files if we are running on HHVM if (false === $file && defined('HHVM_VERSION')) { $file = $this->findFileWithExtension($class, '.hh'); } if (null !== $this->apcuPrefix) { apcu_add($this->apcuPrefix.$class, $file); } if (false === $file) { // Remember that this class does not exist. $this->missingClasses[$class] = true; } return $file; } /** * Returns the currently registered loaders keyed by their corresponding vendor directories. * * @return array<string, self> */ public static function getRegisteredLoaders() { return self::$registeredLoaders; } /** * @param string $class * @param string $ext * @return string|false */ private function findFileWithExtension($class, $ext) { // PSR-4 lookup $logicalPathPsr4 = strtr($class, '\\', DIRECTORY_SEPARATOR) . $ext; $first = $class[0]; if (isset($this->prefixLengthsPsr4[$first])) { $subPath = $class; while (false !== $lastPos = strrpos($subPath, '\\')) { $subPath = substr($subPath, 0, $lastPos); $search = $subPath . '\\'; if (isset($this->prefixDirsPsr4[$search])) { $pathEnd = DIRECTORY_SEPARATOR . substr($logicalPathPsr4, $lastPos + 1); foreach ($this->prefixDirsPsr4[$search] as $dir) { if (file_exists($file = $dir . $pathEnd)) { return $file; } } } } } // PSR-4 fallback dirs foreach ($this->fallbackDirsPsr4 as $dir) { if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr4)) { return $file; } } // PSR-0 lookup if (false !== $pos = strrpos($class, '\\')) { // namespaced class name $logicalPathPsr0 = substr($logicalPathPsr4, 0, $pos + 1) . strtr(substr($logicalPathPsr4, $pos + 1), '_', DIRECTORY_SEPARATOR); } else { // PEAR-like class name $logicalPathPsr0 = strtr($class, '_', DIRECTORY_SEPARATOR) . $ext; } if (isset($this->prefixesPsr0[$first])) { foreach ($this->prefixesPsr0[$first] as $prefix => $dirs) { if (0 === strpos($class, $prefix)) { foreach ($dirs as $dir) { if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { return $file; } } } } } // PSR-0 fallback dirs foreach ($this->fallbackDirsPsr0 as $dir) { if (file_exists($file = $dir . DIRECTORY_SEPARATOR . $logicalPathPsr0)) { return $file; } } // PSR-0 include paths. if ($this->useIncludePath && $file = stream_resolve_include_path($logicalPathPsr0)) { return $file; } return false; } /** * @return void */ private static function initializeIncludeClosure() { if (self::$includeFile !== null) { return; } /** * Scope isolated include. * * Prevents access to $this/self from included files. * * @param string $file * @return void */ self::$includeFile = \Closure::bind(static function($file) { include $file; }, null, null); } } PKCA#]V����Fcomponents/com_sppagebuilder/assets/vendor/composer/autoload_files.phpnu�[���<?php // autoload_files.php @generated by Composer $vendorDir = dirname(dirname(__FILE__)); $baseDir = dirname($vendorDir); return array( 'c65d09b6820da036953a371c8c73a9b1' => $vendorDir . '/facebook/graph-sdk/src/Facebook/polyfills.php', ); PKCA#]�33Gcomponents/com_sppagebuilder/assets/vendor/composer/autoload_static.phpnu�[���<?php // autoload_static.php @generated by Composer namespace Composer\Autoload; class ComposerStaticInita6751dbcaf49022a7255309c490f79a4 { public static $prefixLengthsPsr4 = array ( 'F' => array ( 'Facebook\\' => 9, ), ); public static $prefixDirsPsr4 = array ( 'Facebook\\' => array ( 0 => __DIR__ . '/..' . '/nickdnk/graph-sdk/src/Facebook', ), ); public static $classMap = array ( 'Composer\\InstalledVersions' => __DIR__ . '/..' . '/composer/InstalledVersions.php', ); public static function getInitializer(ClassLoader $loader) { return \Closure::bind(function () use ($loader) { $loader->prefixLengthsPsr4 = ComposerStaticInita6751dbcaf49022a7255309c490f79a4::$prefixLengthsPsr4; $loader->prefixDirsPsr4 = ComposerStaticInita6751dbcaf49022a7255309c490f79a4::$prefixDirsPsr4; $loader->classMap = ComposerStaticInita6751dbcaf49022a7255309c490f79a4::$classMap; }, null, ClassLoader::class); } } PKCA#]�7����ncomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Helpers/FacebookJavaScriptHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; /** * Class FacebookJavaScriptLoginHelper * * @package Facebook */ class FacebookJavaScriptHelper extends FacebookSignedRequestFromInputHelper { /** * Get raw signed request from the cookie. */ public function getRawSignedRequest(): ?string { return $this->getRawSignedRequestFromCookie(); } } PKCA#]��� � kcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Helpers/FacebookPageTabHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\FacebookApp; use Facebook\FacebookClient; /** * Class FacebookPageTabHelper * * @package Facebook */ class FacebookPageTabHelper extends FacebookCanvasHelper { /** * @var array|null */ protected ?array $pageData = null; /** * Initialize the helper and process available signed request data. * * @param FacebookApp $app The FacebookApp entity. * @param FacebookClient $client The client to make HTTP requests. * @param string|null $graphVersion The version of Graph to use. */ public function __construct(FacebookApp $app, FacebookClient $client, ?string $graphVersion = null) { parent::__construct($app, $client, $graphVersion); if (!$this->signedRequest) { return; } $this->pageData = $this->signedRequest->get('page'); } /** * Returns a value from the page data. */ public function getPageData(string $key, mixed $default = null): mixed { if (isset($this->pageData[$key])) { return $this->pageData[$key]; } return $default; } public function isAdmin(): bool { return $this->getPageData('admin') === true; } public function getPageId(): ?string { return $this->getPageData('id'); } } PKCA#]��~zcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Helpers/FacebookSignedRequestFromInputHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\Exceptions\FacebookSDKException; use Facebook\Facebook; use Facebook\FacebookApp; use Facebook\FacebookClient; use Facebook\SignedRequest; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; /** * Class FacebookSignedRequestFromInputHelper * * @package Facebook */ abstract class FacebookSignedRequestFromInputHelper { /** * @var SignedRequest|null The SignedRequest entity. */ protected ?SignedRequest $signedRequest = null; /** * @var FacebookApp The FacebookApp entity. */ protected FacebookApp $app; /** * @var OAuth2Client The OAuth 2.0 client service. */ protected OAuth2Client $oAuth2Client; /** * Initialize the helper and process available signed request data. * * @param FacebookApp $app The FacebookApp entity. * @param FacebookClient $client The client to make HTTP requests. * @param string|null $graphVersion The version of Graph to use. * @throws FacebookSDKException */ public function __construct(FacebookApp $app, FacebookClient $client, ?string $graphVersion = null) { $this->app = $app; $graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; $this->oAuth2Client = new OAuth2Client($this->app, $client, $graphVersion); $this->instantiateSignedRequest(); } /** * Instantiates a new SignedRequest entity. * @throws FacebookSDKException */ public function instantiateSignedRequest(?string $rawSignedRequest = null): void { $rawSignedRequest = $rawSignedRequest ?: $this->getRawSignedRequest(); if (!$rawSignedRequest) { return; } $this->signedRequest = new SignedRequest($this->app, $rawSignedRequest); } /** * Returns an AccessToken entity from the signed request. * * @throws FacebookSDKException */ public function getAccessToken(): ?AccessToken { if ($this->signedRequest && $this->signedRequest->hasOAuthData()) { $code = $this->signedRequest->get('code'); $accessToken = $this->signedRequest->get('oauth_token'); if ($code && !$accessToken) { return $this->oAuth2Client->getAccessTokenFromCode($code); } $expiresAt = $this->signedRequest->get('expires', 0); return new AccessToken($accessToken, $expiresAt); } return null; } /** * Returns the SignedRequest entity. */ public function getSignedRequest(): ?SignedRequest { return $this->signedRequest; } /** * Returns the user_id if available. */ public function getUserId(): ?string { return $this->signedRequest?->getUserId(); } /** * Get raw signed request from input. */ abstract public function getRawSignedRequest(): ?string; /** * Get raw signed request from POST input. */ public function getRawSignedRequestFromPost(): ?string { if (isset($_POST['signed_request'])) { return $_POST['signed_request']; } return null; } /** * Get raw signed request from cookie set from the Javascript SDK. */ public function getRawSignedRequestFromCookie(): ?string { if (isset($_COOKIE['fbsr_' . $this->app->getId()])) { return $_COOKIE['fbsr_' . $this->app->getId()]; } return null; } } PKCA#]�!Lu::jcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Helpers/FacebookCanvasHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; /** * Class FacebookCanvasLoginHelper * * @package Facebook */ class FacebookCanvasHelper extends FacebookSignedRequestFromInputHelper { /** * Returns the app data value. */ public function getAppData(): mixed { return $this->signedRequest?->get('app_data'); } /** * Get raw signed request from POST. */ public function getRawSignedRequest(): ?string { return $this->getRawSignedRequestFromPost() ?: null; } } PKCA#]����`*`*qcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Helpers/FacebookRedirectLoginHelper.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Helpers; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; use Facebook\Exceptions\FacebookSDKException; use Facebook\PersistentData\FacebookSessionPersistentDataHandler; use Facebook\PersistentData\PersistentDataInterface; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorFactory; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface; use Facebook\Url\FacebookUrlDetectionHandler; use Facebook\Url\FacebookUrlManipulator; use Facebook\Url\UrlDetectionInterface; use function hash_equals; /** * Class FacebookRedirectLoginHelper * * @package Facebook */ class FacebookRedirectLoginHelper { /** * @const int The length of CSRF string to validate the login link. */ const CSRF_LENGTH = 32; /** * @var OAuth2Client The OAuth 2.0 client service. */ protected OAuth2Client $oAuth2Client; /** * @var UrlDetectionInterface The URL detection handler. */ protected UrlDetectionInterface $urlDetectionHandler; /** * @var PersistentDataInterface The persistent data handler. */ protected PersistentDataInterface $persistentDataHandler; /** * @var PseudoRandomStringGeneratorInterface The cryptographically secure pseudo-random string generator. */ protected PseudoRandomStringGeneratorInterface $pseudoRandomStringGenerator; /** * @param OAuth2Client $oAuth2Client The OAuth 2.0 client service. * @param PersistentDataInterface|null $persistentDataHandler The persistent data handler. * @param UrlDetectionInterface|null $urlHandler The URL detection handler. * @param PseudoRandomStringGeneratorInterface|null $prsg The cryptographically secure pseudo-random string generator. */ public function __construct(OAuth2Client $oAuth2Client, ?PersistentDataInterface $persistentDataHandler = null, ?UrlDetectionInterface $urlHandler = null, ?PseudoRandomStringGeneratorInterface $prsg = null) { $this->oAuth2Client = $oAuth2Client; $this->persistentDataHandler = $persistentDataHandler ?: new FacebookSessionPersistentDataHandler(); $this->urlDetectionHandler = $urlHandler ?: new FacebookUrlDetectionHandler(); $this->pseudoRandomStringGenerator = PseudoRandomStringGeneratorFactory::createPseudoRandomStringGenerator($prsg); } /** * Returns the persistent data handler. */ public function getPersistentDataHandler(): PersistentDataInterface { return $this->persistentDataHandler; } /** * Returns the URL detection handler. */ public function getUrlDetectionHandler(): UrlDetectionInterface { return $this->urlDetectionHandler; } /** * Returns the cryptographically secure pseudo-random string generator. */ public function getPseudoRandomStringGenerator(): PseudoRandomStringGeneratorInterface { return $this->pseudoRandomStringGenerator; } /** * Stores CSRF state and returns a URL to which the user should be sent to in order to continue the login process with Facebook. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param array $params An array of parameters to generate URL. * @param string $separator The separator to use in http_build_query(). * @return string */ private function makeUrl(string $redirectUrl, array $scope, array $params = [], string $separator = '&'): string { $state = $this->persistentDataHandler->get('state') ?: $this->pseudoRandomStringGenerator->getPseudoRandomString(static::CSRF_LENGTH); $this->persistentDataHandler->set('state', $state); return $this->oAuth2Client->getAuthorizationUrl($redirectUrl, $state, $scope, $params, $separator); } /** * Returns the URL to send the user in order to login to Facebook. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). */ public function getLoginUrl(string $redirectUrl, array $scope = [], string $separator = '&'): string { return $this->makeUrl($redirectUrl, $scope, [], $separator); } /** * Returns the URL to send the user in order to log out of Facebook. * * @param AccessToken|string $accessToken The access token that will be logged out. * @param string $next The url Facebook should redirect the user to after a successful logout. * @param string $separator The separator to use in http_build_query(). * * @throws FacebookSDKException */ public function getLogoutUrl(AccessToken|string $accessToken, string $next, string $separator = '&'): string { if (!$accessToken instanceof AccessToken) { $accessToken = new AccessToken($accessToken); } if ($accessToken->isAppAccessToken()) { throw new FacebookSDKException('Cannot generate a logout URL with an app access token.', 722); } $params = [ 'next' => $next, 'access_token' => $accessToken->getValue(), ]; return 'https://www.facebook.com/logout.php?' . http_build_query($params, '', $separator); } /** * Returns the URL to send the user in order to login to Facebook with permission(s) to be re-asked. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). */ public function getReRequestUrl(string $redirectUrl, array $scope = [], string $separator = '&'): string { $params = ['auth_type' => 'rerequest']; return $this->makeUrl($redirectUrl, $scope, $params, $separator); } /** * Returns the URL to send the user in order to login to Facebook with user to be re-authenticated. * * @param string $redirectUrl The URL Facebook should redirect users to after login. * @param array $scope List of permissions to request during login. * @param string $separator The separator to use in http_build_query(). */ public function getReAuthenticationUrl(string $redirectUrl, array $scope = [], string $separator = '&'): string { $params = ['auth_type' => 'reauthenticate']; return $this->makeUrl($redirectUrl, $scope, $params, $separator); } /** * Takes a valid code from a login redirect, and returns an AccessToken entity. * * @param string|null $redirectUrl The redirect URL. * * @return AccessToken|null * * @throws FacebookSDKException */ public function getAccessToken(?string $redirectUrl = null): ?AccessToken { if (!$code = $this->getCode()) { return null; } $this->validateCsrf(); $this->resetCsrf(); $redirectUrl = $redirectUrl ?: $this->urlDetectionHandler->getCurrentUrl(); // At minimum we need to remove the 'code', 'enforce_https' and 'state' params $redirectUrl = FacebookUrlManipulator::removeParamsFromUrl($redirectUrl, ['code', 'enforce_https', 'state']); return $this->oAuth2Client->getAccessTokenFromCode($code, $redirectUrl); } /** * Validate the request against a cross-site request forgery. * * @throws FacebookSDKException */ protected function validateCsrf(): void { $state = $this->getState(); if (!$state) { throw new FacebookSDKException('Cross-site request forgery validation failed. Required GET param "state" missing.'); } $savedState = $this->persistentDataHandler->get('state'); if (!$savedState) { throw new FacebookSDKException('Cross-site request forgery validation failed. Required param "state" missing from persistent data.'); } if (hash_equals($savedState, $state)) { return; } throw new FacebookSDKException('Cross-site request forgery validation failed. The "state" param from the URL and session do not match.'); } /** * Resets the CSRF so that it doesn't get reused. */ private function resetCsrf(): void { $this->persistentDataHandler->set('state', null); } /** * Return the code. */ protected function getCode(): ?string { return $this->getInput('code'); } /** * Return the state. */ protected function getState(): ?string { return $this->getInput('state'); } /** * Return the error code. */ public function getErrorCode(): ?string { return $this->getInput('error_code'); } /** * Returns the error. */ public function getError(): ?string { return $this->getInput('error'); } /** * Returns the error reason. */ public function getErrorReason(): ?string { return $this->getInput('error_reason'); } /** * Returns the error description. */ public function getErrorDescription(): ?string { return $this->getInput('error_description'); } /** * Returns a value from a GET param. * * @param string $key * @return string|null */ private function getInput(string $key): ?string { $v = $_GET[$key] ?? null; if (!is_string($v)) { return null; } return $v; } } PKCA#]^F���0�0]components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Url\FacebookUrlManipulator; use Facebook\FileUpload\FacebookFile; use Facebook\FileUpload\FacebookVideo; use Facebook\Http\RequestBodyMultipart; use Facebook\Http\RequestBodyUrlEncoded; use Facebook\Exceptions\FacebookSDKException; /** * Class Request * * @package Facebook */ class FacebookRequest { /** * @var FacebookApp|null The Facebook app entity. */ protected FacebookApp|null $app; /** * @var string|null The access token to use for this request. */ protected string|null $accessToken; /** * @var string|null The HTTP method for this request. */ protected ?string $method; /** * @var string|null The Graph endpoint for this request. */ protected ?string $endpoint; /** * @var array The headers to send with this request. */ protected array $headers = []; /** * @var array The parameters to send with this request. */ protected array $params = []; /** * @var FacebookFile[] The files to send with this request. */ protected array $files = []; /** * @var string|null ETag to send with this request. */ protected ?string $eTag; /** * @var string Graph version to use for this request. */ protected string $graphVersion; /** * Creates a new Request entity. * @throws FacebookSDKException */ public function __construct(?FacebookApp $app = null, AccessToken|string|null $accessToken = null, ?string $method = null, ?string $endpoint = null, ?array $params = [], ?string $eTag = null, ?string $graphVersion = null) { $this->setApp($app); $this->setAccessToken($accessToken); $this->setMethod($method); $this->setEndpoint($endpoint); $this->setParams($params); $this->setETag($eTag); $this->graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; } /** * Set the access token for this request. */ public function setAccessToken(AccessToken|string|null $accessToken): self { $this->accessToken = $accessToken; if ($accessToken instanceof AccessToken) { $this->accessToken = $accessToken->getValue(); } return $this; } /** * Sets the access token with one harvested from a URL or POST params. * * @param string $accessToken The access token. * * @return FacebookRequest * * @throws FacebookSDKException */ public function setAccessTokenFromParams(string $accessToken): self { $existingAccessToken = $this->getAccessToken(); if (!$existingAccessToken) { $this->setAccessToken($accessToken); } elseif ($accessToken !== $existingAccessToken) { throw new FacebookSDKException('Access token mismatch. The access token provided in the FacebookRequest and the one provided in the URL or POST params do not match.'); } return $this; } /** * Return the access token for this request. * * @return string|null */ public function getAccessToken(): ?string { return $this->accessToken; } /** * Return the access token for this request as an AccessToken entity. * * @return AccessToken|null */ public function getAccessTokenEntity(): ?AccessToken { return $this->accessToken ? new AccessToken($this->accessToken) : null; } /** * Set the FacebookApp entity used for this request. * * @param FacebookApp|null $app */ public function setApp(?FacebookApp $app = null): void { $this->app = $app; } /** * Return the FacebookApp entity used for this request. */ public function getApp(): ?FacebookApp { return $this->app; } /** * Generate an app secret proof to sign this request. */ public function getAppSecretProof(): ?string { if (!$accessTokenEntity = $this->getAccessTokenEntity()) { return null; } return $accessTokenEntity->getAppSecretProof($this->app->getSecret()); } /** * Validate that an access token exists for this request. * * @throws FacebookSDKException */ public function validateAccessToken(): void { $accessToken = $this->getAccessToken(); if (!$accessToken) { throw new FacebookSDKException('You must provide an access token.'); } } /** * Set the HTTP method for this request. */ public function setMethod(?string $method): void { $this->method = $method ? strtoupper($method) : null; } /** * Return the HTTP method for this request. */ public function getMethod(): ?string { return $this->method; } /** * Validate that the HTTP method is set. * * @throws FacebookSDKException */ public function validateMethod(): void { if (!$this->method) { throw new FacebookSDKException('HTTP method not specified.'); } if (!in_array($this->method, ['GET', 'POST', 'DELETE'])) { throw new FacebookSDKException('Invalid HTTP method specified.'); } } /** * Set the endpoint for this request. * * @throws FacebookSDKException */ public function setEndpoint(?string $endpoint): self { if (!$endpoint) { $this->endpoint = null; return $this; } // Harvest the access token from the endpoint to keep things in sync $params = FacebookUrlManipulator::getParamsAsArray($endpoint); if (isset($params['access_token'])) { $this->setAccessTokenFromParams($params['access_token']); } // Clean the token & app secret proof from the endpoint. $filterParams = ['access_token', 'appsecret_proof']; $this->endpoint = FacebookUrlManipulator::removeParamsFromUrl($endpoint, $filterParams); return $this; } /** * Return the endpoint for this request. */ public function getEndpoint(): ?string { // For batch requests, this will be empty return $this->endpoint; } /** * Generate and return the headers for this request. */ public function getHeaders(): array { $headers = static::getDefaultHeaders(); if ($this->eTag) { $headers['If-None-Match'] = $this->eTag; } return array_merge($this->headers, $headers); } /** * Set the headers for this request. */ public function setHeaders(array $headers): void { $this->headers = array_merge($this->headers, $headers); } /** * Sets the eTag value. */ public function setETag(?string $eTag): void { $this->eTag = $eTag; } /** * Set the params for this request. * * @throws FacebookSDKException */ public function setParams(array $params = []): self { if (isset($params['access_token'])) { $this->setAccessTokenFromParams($params['access_token']); } // Don't let these buggers slip in. unset($params['access_token'], $params['appsecret_proof']); // @TODO Refactor code above with this //$params = $this->sanitizeAuthenticationParams($params); $params = $this->sanitizeFileParams($params); $this->dangerouslySetParams($params); return $this; } /** * Set the params for this request without filtering them first. */ public function dangerouslySetParams(array $params = []): self { $this->params = array_merge($this->params, $params); return $this; } /** * Iterate over the params and pull out the file uploads. */ public function sanitizeFileParams(array $params): array { foreach ($params as $key => $value) { if ($value instanceof FacebookFile) { $this->addFile($key, $value); unset($params[$key]); } } return $params; } /** * Add a file to be uploaded. */ public function addFile(string $key, FacebookFile $file): void { $this->files[$key] = $file; } /** * Removes all the files from the upload queue. */ public function resetFiles(): void { $this->files = []; } /** * Get the list of files to be uploaded. * @return FacebookFile[] */ public function getFiles(): array { return $this->files; } /** * Let's us know if there is a file upload with this request. */ public function containsFileUploads(): bool { return !empty($this->files); } /** * Let's us know if there is a video upload with this request. */ public function containsVideoUploads(): bool { foreach ($this->files as $file) { if ($file instanceof FacebookVideo) { return true; } } return false; } /** * Returns the body of the request as multipart/form-data. */ public function getMultipartBody(): RequestBodyMultipart { $params = $this->getPostParams(); return new RequestBodyMultipart($params, $this->files); } /** * Returns the body of the request as URL-encoded. */ public function getUrlEncodedBody(): RequestBodyUrlEncoded { $params = $this->getPostParams(); return new RequestBodyUrlEncoded($params); } /** * Generate and return the params for this request. */ public function getParams(): array { $params = $this->params; $accessToken = $this->getAccessToken(); if ($accessToken) { $params['access_token'] = $accessToken; $params['appsecret_proof'] = $this->getAppSecretProof(); } return $params; } /** * Only return params on POST requests. */ public function getPostParams(): array { if ($this->getMethod() === 'POST') { return $this->getParams(); } return []; } /** * The graph version used for this request. */ public function getGraphVersion(): string { return $this->graphVersion; } /** * Generate and return the URL for this request. * @throws FacebookSDKException */ public function getUrl(): string { $this->validateMethod(); $graphVersion = FacebookUrlManipulator::forceSlashPrefix($this->graphVersion); $endpoint = FacebookUrlManipulator::forceSlashPrefix($this->getEndpoint()); $url = $graphVersion . $endpoint; if ($this->getMethod() !== 'POST') { $params = $this->getParams(); $url = FacebookUrlManipulator::appendParamsToUrl($url, $params); } return $url; } /** * Return the default headers that every request should use. */ public static function getDefaultHeaders(): array { return [ 'User-Agent' => 'fb-php-' . Facebook::VERSION, 'Accept-Encoding' => '*', ]; } } PKCA#]q�wwmcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Url/FacebookUrlDetectionHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Class FacebookUrlDetectionHandler * * @package Facebook */ class FacebookUrlDetectionHandler implements UrlDetectionInterface { /** * @inheritdoc */ public function getCurrentUrl(): string { return $this->getHttpScheme() . '://' . $this->getHostName() . $this->getServerVar('REQUEST_URI'); } /** * Get the currently active URL scheme. */ protected function getHttpScheme(): string { return $this->isBehindSsl() ? 'https' : 'http'; } /** * Tries to detect if the server is running behind an SSL. */ protected function isBehindSsl(): bool { // Check for proxy first $protocol = $this->getHeader('X_FORWARDED_PROTO'); if ($protocol) { return $this->protocolWithActiveSsl($protocol); } $protocol = $this->getServerVar('HTTPS'); if ($protocol) { return $this->protocolWithActiveSsl($protocol); } return $this->getCurrentPort() === '443'; } /** * Detects an active SSL protocol value. * * @param string $protocol * * @return boolean */ protected function protocolWithActiveSsl(string $protocol): bool { return in_array(strtolower($protocol), ['on', '1', 'https', 'ssl'], true); } /** * Tries to detect the host name of the server. * * Some elements adapted from * * @see https://github.com/symfony/HttpFoundation/blob/master/Request.php */ protected function getHostName(): string { // Check for proxy first $header = $this->getHeader('X_FORWARDED_HOST'); if ($header && $this->isValidForwardedHost($header)) { $elements = explode(',', $header); $host = $elements[count($elements) - 1]; } elseif (!$host = $this->getHeader('HOST')) { if (!$host = $this->getServerVar('SERVER_NAME')) { $host = $this->getServerVar('SERVER_ADDR'); } } // trim and remove port number from host // host is lowercase as per RFC 952/2181 $host = strtolower(preg_replace('/:\d+$/', '', trim($host))); // Port number $scheme = $this->getHttpScheme(); $port = $this->getCurrentPort(); $appendPort = ':' . $port; // Don't append port number if a normal port. if (($scheme == 'http' && $port == '80') || ($scheme == 'https' && $port == '443')) { $appendPort = ''; } return $host . $appendPort; } protected function getCurrentPort(): string { // Check for proxy first if ($port = $this->getHeader('X_FORWARDED_PORT')) { return $port; } if ($this->getHeader('X_FORWARDED_PROTO') === 'https') { return '443'; } return (string)$this->getServerVar('SERVER_PORT'); } /** * Returns the a value from the $_SERVER super global. */ protected function getServerVar(string $key): mixed { return $_SERVER[$key] ?? ''; } /** * Gets a value from the HTTP request headers. */ protected function getHeader(string $key): string { return $this->getServerVar('HTTP_' . $key); } /** * Checks if the value in X_FORWARDED_HOST is a valid hostname * Could prevent unintended redirections */ protected function isValidForwardedHost(string $header): bool { $elements = explode(',', $header); $host = $elements[count($elements) - 1]; return preg_match("/^([a-z\d](-*[a-z\d])*)(\.([a-z\d](-*[a-z\d])*))*$/i", $host) //valid chars check && 0 < strlen($host) && strlen($host) < 254 //overall length check && preg_match("/^[^.]{1,63}(\.[^.]{1,63})*$/", $host); //length of each label } } PKCA#]]��]��hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Url/FacebookUrlManipulator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Class FacebookUrlManipulator * * @package Facebook */ class FacebookUrlManipulator { /** * Remove params from a URL. * * @param string|null $url The URL to filter. * @param array $paramsToFilter The params to filter from the URL. * * @return string The URL with the params removed. */ public static function removeParamsFromUrl(?string $url, array $paramsToFilter): string { if (!is_string($url)) { return ''; } $parts = parse_url($url); $query = ''; if (isset($parts['query'])) { $params = []; parse_str($parts['query'], $params); // Remove query params foreach ($paramsToFilter as $paramName) { unset($params[$paramName]); } if (count($params) > 0) { $query = '?' . http_build_query($params); } } $scheme = isset($parts['scheme']) ? $parts['scheme'] . '://' : ''; $host = $parts['host'] ?? ''; $port = isset($parts['port']) ? ':' . $parts['port'] : ''; $path = $parts['path'] ?? ''; $fragment = isset($parts['fragment']) ? '#' . $parts['fragment'] : ''; return $scheme . $host . $port . $path . $query . $fragment; } /** * Gracefully appends params to the URL. * * @param string $url The URL that will receive the params. * @param array $newParams The params to append to the URL. */ public static function appendParamsToUrl(string $url, array $newParams = []): string { if (empty($newParams)) { return $url; } if (!str_contains($url, '?')) { return $url . '?' . http_build_query($newParams); } list($path, $query) = explode('?', $url, 2); $existingParams = []; parse_str($query, $existingParams); // Favor params from the original URL over $newParams $newParams = array_merge($newParams, $existingParams); // Sort for a predicable order ksort($newParams); return $path . '?' . http_build_query($newParams); } /** * Returns the params from a URL in the form of an array. * * @param string|null $url The URL to parse the params from. * * @return array */ public static function getParamsAsArray(?string $url): array { if (!is_string($url)) { return []; } $query = parse_url($url, PHP_URL_QUERY); if (!$query) { return []; } $params = []; parse_str($query, $params); return $params; } /** * Adds the params of the first URL to the second URL. * * Any params that already exist in the second URL will go untouched. * * @param string $urlToStealFrom The URL harvest the params from. * @param string $urlToAddTo The URL that will receive the new params. * * @return string The $urlToAddTo with any new params from $urlToStealFrom. */ public static function mergeUrlParams(string $urlToStealFrom, string $urlToAddTo): string { $newParams = static::getParamsAsArray($urlToStealFrom); // Nothing new to add, return as-is if (!$newParams) { return $urlToAddTo; } return static::appendParamsToUrl($urlToAddTo, $newParams); } /** * Check for a "/" prefix and prepend it if not exists. */ public static function forceSlashPrefix(?string $string): ?string { if (!$string) { return $string; } return str_starts_with($string, '/') ? $string : '/' . $string; } /** * Trims off the hostname and Graph version from a URL. * * @param string $urlToTrim The URL the needs the surgery. * * @return string The $urlToTrim with the hostname and Graph version removed. */ public static function baseGraphUrlEndpoint(string $urlToTrim): string { return '/' . preg_replace('/^https:\/\/.+\.facebook\.com(\/v.+?)?\//', '', $urlToTrim); } } PKCA#]�{99gcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Url/UrlDetectionInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Url; /** * Interface UrlDetectionInterface * * @package Facebook */ interface UrlDetectionInterface { /** * Get the currently active URL. * * @return string */ public function getCurrentUrl(): string; } PKCA#]x�lO$O$bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookBatchRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use ArrayIterator; use InvalidArgumentException; use IteratorAggregate; use ArrayAccess; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookSDKException; /** * Class BatchRequest * * @package Facebook */ class FacebookBatchRequest extends FacebookRequest implements IteratorAggregate, ArrayAccess { /** * @var array An array of FacebookRequest entities to send. */ protected array $requests = []; /** * Creates a new Request entity. * * @param FacebookApp|null $app * @param FacebookRequest[] $requests * @param AccessToken|string|null $accessToken * @param string|null $graphVersion * @throws FacebookSDKException */ public function __construct(?FacebookApp $app = null, array $requests = [], AccessToken|string|null $accessToken = null, ?string $graphVersion = null) { parent::__construct($app, $accessToken, 'POST', '', [], null, $graphVersion); $this->add($requests); } /** * Adds a new request to the array. * * @param FacebookRequest|FacebookRequest[] $request * @param array|string|null $options Array of batch request options e.g. 'name', 'omit_response_on_success'. * If a string is given, it is the value of the 'name' option. * * @return FacebookBatchRequest * * @throws FacebookSDKException */ public function add(array|FacebookRequest $request, int|array|string|null $options = null): self { if (is_array($request)) { foreach ($request as $key => $req) { $this->add($req, $key); } return $this; } if (!$request instanceof FacebookRequest) { throw new InvalidArgumentException('Argument for add() must be of type array or FacebookRequest.'); } if (null === $options) { $options = []; } elseif (!is_array($options)) { $options = ['name' => $options]; } $this->addFallbackDefaults($request); // File uploads $attachedFiles = $this->extractFileAttachments($request); $name = $options['name'] ?? null; unset($options['name']); $requestToAdd = [ 'name' => $name, 'request' => $request, 'options' => $options, 'attached_files' => $attachedFiles, ]; $this->requests[] = $requestToAdd; return $this; } /** * Ensures that the FacebookApp and access token fall back when missing. * * @throws FacebookSDKException */ public function addFallbackDefaults(FacebookRequest $request): void { if (!$request->getApp()) { $app = $this->getApp(); if (!$app) { throw new FacebookSDKException('Missing FacebookApp on FacebookRequest and no fallback detected on FacebookBatchRequest.'); } $request->setApp($app); } if (!$request->getAccessToken()) { $accessToken = $this->getAccessToken(); if (!$accessToken) { throw new FacebookSDKException('Missing access token on FacebookRequest and no fallback detected on FacebookBatchRequest.'); } $request->setAccessToken($accessToken); } } /** * Extracts the files from a request. */ public function extractFileAttachments(FacebookRequest $request): ?string { if (!$request->containsFileUploads()) { return null; } $files = $request->getFiles(); $fileNames = []; foreach ($files as $file) { $fileName = uniqid(); $this->addFile($fileName, $file); $fileNames[] = $fileName; } $request->resetFiles(); // @TODO Does Graph support multiple uploads on one endpoint? return implode(',', $fileNames); } /** * Return the FacebookRequest entities. * * @return FacebookRequest[] */ public function getRequests(): array { return $this->requests; } /** * Prepares the requests to be sent as a batch request. * @throws FacebookSDKException */ public function prepareRequestsForBatch(): void { $this->validateBatchRequestCount(); $params = [ 'batch' => $this->convertRequestsToJson(), 'include_headers' => true, ]; $this->setParams($params); } /** * Converts the requests into a JSON(P) string. * @throws FacebookSDKException */ public function convertRequestsToJson(): string { $requests = []; foreach ($this->requests as $request) { $options = []; if (null !== $request['name']) { $options['name'] = $request['name']; } $options += $request['options']; $requests[] = $this->requestEntityToBatchArray($request['request'], $options, $request['attached_files']); } return json_encode($requests); } /** * Validate the request count before sending them as a batch. * * @throws FacebookSDKException */ public function validateBatchRequestCount(): void { $batchCount = count($this->requests); if ($batchCount === 0) { throw new FacebookSDKException('There are no batch requests to send.'); } elseif ($batchCount > 50) { // Per: https://developers.facebook.com/docs/graph-api/making-multiple-requests#limits throw new FacebookSDKException('You cannot send more than 50 batch requests at a time.'); } } /** * Converts a Request entity into an array that is batch-friendly. * * @param FacebookRequest $request The request entity to convert. * @param string|null|array $options Array of batch request options e.g. 'name', 'omit_response_on_success'. * If a string is given, it is the value of the 'name' option. * @param string|null $attachedFiles Names of files associated with the request. * @throws FacebookSDKException */ public function requestEntityToBatchArray(FacebookRequest $request, array|string|null $options = null, ?string $attachedFiles = null): array { if (null === $options) { $options = []; } elseif (!is_array($options)) { $options = ['name' => $options]; } $compiledHeaders = []; $headers = $request->getHeaders(); foreach ($headers as $name => $value) { $compiledHeaders[] = $name . ': ' . $value; } $batch = [ 'headers' => $compiledHeaders, 'method' => $request->getMethod(), 'relative_url' => $request->getUrl(), ]; // Since file uploads are moved to the root request of a batch request, // the child requests will always be URL-encoded. $body = $request->getUrlEncodedBody()->getBody(); if ($body) { $batch['body'] = $body; } $batch += $options; if (null !== $attachedFiles) { $batch['attached_files'] = $attachedFiles; } return $batch; } /** * Get an iterator for the items. * * @return ArrayIterator */ public function getIterator(): ArrayIterator { return new ArrayIterator($this->requests); } /** * @inheritdoc * @throws FacebookSDKException */ public function offsetSet($offset, $value): void { $this->add($value, $offset); } /** * @inheritdoc */ public function offsetExists($offset): bool { return isset($this->requests[$offset]); } /** * @inheritdoc */ public function offsetUnset($offset): void { unset($this->requests[$offset]); } /** * @inheritdoc */ public function offsetGet($offset): mixed { return $this->requests[$offset] ?? null; } } PKCA#]�x]s��hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Http/RequestBodyUrlEncoded.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Class RequestBodyUrlEncoded * * @package Facebook */ class RequestBodyUrlEncoded implements RequestBodyInterface { /** * @var array The parameters to send with this request. */ protected array $params = []; /** * Creates a new GraphUrlEncodedBody entity. * * @param array $params */ public function __construct(array $params) { $this->params = $params; } /** * @inheritdoc */ public function getBody(): string { return http_build_query($this->params); } } PKCA#]A~�)gcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Http/RequestBodyInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Interface * * @package Facebook */ interface RequestBodyInterface { /** * Get the body of the request to send to Graph. */ public function getBody(): string; } PKCA#]J���YYccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Http/GraphRawResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; /** * Class GraphRawResponse * * @package Facebook */ class GraphRawResponse { /** * @var array The response headers in the form of an associative array. */ protected array $headers; /** * @var string|null The raw response body. */ protected ?string $body; /** * @var int|null The HTTP status response code. */ protected ?int $httpResponseCode; /** * Creates a new GraphRawResponse entity. * * @param string|array $headers The headers as a raw string or array. * @param string|null $body The raw response body. * @param int|null $httpStatusCode The HTTP response code (if sending headers as parsed array). */ public function __construct(array|string $headers, ?string $body, ?int $httpStatusCode = null) { $this->httpResponseCode = $httpStatusCode; if (is_array($headers)) { $this->headers = $headers; } else { $this->setHeadersFromString($headers); } $this->body = $body; } /** * Return the response headers. * * @return array */ public function getHeaders(): array { return $this->headers; } /** * Return the body of the response. */ public function getBody(): ?string { return $this->body; } /** * Return the HTTP response code. */ public function getHttpResponseCode(): ?int { return $this->httpResponseCode; } /** * Sets the HTTP response code from a raw header. */ public function setHttpResponseCodeFromHeader(string $rawResponseHeader): void { // https://tools.ietf.org/html/rfc7230#section-3.1.2 list(,$status) = array_pad(explode(' ', $rawResponseHeader, 3), 3, null); $this->httpResponseCode = (int)$status; } /** * Parse the raw headers and set as an array. * * @param string $rawHeaders The raw headers from the response. */ protected function setHeadersFromString(string $rawHeaders): void { // Normalize line breaks $rawHeaders = str_replace("\r\n", "\n", $rawHeaders); // There will be multiple headers if a 301 was followed // or a proxy was followed, etc $headerCollection = explode("\n\n", trim($rawHeaders)); // We just want the last response (at the end) $rawHeader = array_pop($headerCollection); $headerComponents = explode("\n", $rawHeader); foreach ($headerComponents as $line) { if (!str_contains($line, ': ')) { $this->setHttpResponseCodeFromHeader($line); } else { list($key, $value) = explode(': ', $line, 2); $this->headers[$key] = $value; } } } } PKCA#]\w��zzgcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Http/RequestBodyMultipart.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Http; use Facebook\FileUpload\FacebookFile; /** * Class RequestBodyMultipartt * * Some things copied from Guzzle * * @package Facebook * * @see https://github.com/guzzle/guzzle/blob/master/src/Post/MultipartBody.php */ class RequestBodyMultipart implements RequestBodyInterface { /** * @var string The boundary. */ private string $boundary; /** * @var array The parameters to send with this request. */ private array $params; /** * @var array The files to send with this request. */ private array $files; /** * @param array $params The parameters to send with this request. * @param array $files The files to send with this request. * @param string|null $boundary Provide a specific boundary. */ public function __construct(array $params = [], array $files = [], ?string $boundary = null) { $this->params = $params; $this->files = $files; $this->boundary = $boundary ?: uniqid(); } /** * @inheritdoc */ public function getBody(): string { $body = ''; // Compile normal params $params = $this->getNestedParams($this->params); foreach ($params as $k => $v) { $body .= $this->getParamString($k, $v); } // Compile files foreach ($this->files as $k => $v) { $body .= $this->getFileString($k, $v); } // Peace out $body .= "--$this->boundary--\r\n"; return $body; } /** * Get the boundary */ public function getBoundary(): string { return $this->boundary; } /** * Get the string needed to transfer a file. */ private function getFileString(string $name, FacebookFile $file): string { return sprintf( "--%s\r\nContent-Disposition: form-data; name=\"%s\"; filename=\"%s\"%s\r\n\r\n%s\r\n", $this->boundary, $name, $file->getFileName(), $this->getFileHeaders($file), $file->getContents() ); } /** * Get the string needed to transfer a POST field. */ private function getParamString(string $name, string $value): string { return sprintf( "--%s\r\nContent-Disposition: form-data; name=\"%s\"\r\n\r\n%s\r\n", $this->boundary, $name, $value ); } /** * Returns the params as an array of nested params. */ private function getNestedParams(array $params): array { $query = http_build_query($params); $params = explode('&', $query); $result = []; foreach ($params as $param) { list($key, $value) = explode('=', $param, 2); $result[urldecode($key)] = urldecode($value); } return $result; } /** * Get the headers needed before transferring the content of a POST file. */ protected function getFileHeaders(FacebookFile $file): string { return "\r\nContent-Type: {$file->getMimetype()}"; } } PKCA#]d2���[components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/SignedRequest.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Exceptions\FacebookSDKException; use function hash_equals; /** * Class SignedRequest * * @package Facebook */ class SignedRequest { /** * @var FacebookApp The FacebookApp entity. */ protected FacebookApp $app; /** * @var string|null The raw encrypted signed request. */ protected ?string $rawSignedRequest; /** * @var array|null The payload from the decrypted signed request. */ protected ?array $payload; /** * Instantiate a new SignedRequest entity. * * @param FacebookApp $facebookApp The FacebookApp entity. * @param string|null $rawSignedRequest The raw signed request. * @throws FacebookSDKException */ public function __construct(FacebookApp $facebookApp, ?string $rawSignedRequest = null) { $this->app = $facebookApp; $this->payload = null; if (!$rawSignedRequest) { return; } $this->rawSignedRequest = $rawSignedRequest; $this->parse(); } /** * Returns the raw signed request data. */ public function getRawSignedRequest(): ?string { return $this->rawSignedRequest; } /** * Returns the parsed signed request data. */ public function getPayload(): ?array { return $this->payload; } /** * Returns a property from the signed request data if available. */ public function get(string $key, mixed $default = null): mixed { if (isset($this->payload[$key])) { return $this->payload[$key]; } return $default; } /** * Returns user_id from signed request data if available. */ public function getUserId(): ?string { return $this->get('user_id'); } /** * Checks for OAuth data in the payload. */ public function hasOAuthData(): bool { return $this->get('oauth_token') || $this->get('code'); } /** * Creates a signed request from an array of data. * @throws FacebookSDKException */ public function make(array $payload): string { $payload['algorithm'] = $payload['algorithm'] ?? 'HMAC-SHA256'; $payload['issued_at'] = $payload['issued_at'] ?? time(); $encodedPayload = $this->base64UrlEncode(json_encode($payload)); $hashedSig = $this->hashSignature($encodedPayload); $encodedSig = $this->base64UrlEncode($hashedSig); return $encodedSig . '.' . $encodedPayload; } /** * Validates and decodes a signed request and saves * the payload to an array. * @throws FacebookSDKException */ protected function parse(): void { list($encodedSig, $encodedPayload) = $this->split(); // Signature validation $sig = $this->decodeSignature($encodedSig); $hashedSig = $this->hashSignature($encodedPayload); $this->validateSignature($hashedSig, $sig); $this->payload = $this->decodePayload($encodedPayload); // Payload validation $this->validateAlgorithm(); } /** * Splits a raw signed request into signature and payload. * * @throws FacebookSDKException */ protected function split(): array { if (!str_contains($this->rawSignedRequest, '.')) { throw new FacebookSDKException('Malformed signed request.', 606); } return explode('.', $this->rawSignedRequest, 2); } /** * Decodes the raw signature from a signed request. * * @throws FacebookSDKException */ protected function decodeSignature(string $encodedSig): string { $sig = $this->base64UrlDecode($encodedSig); if (!$sig) { throw new FacebookSDKException('Signed request has malformed encoded signature data.', 607); } return $sig; } /** * Decodes the raw payload from a signed request. * * @throws FacebookSDKException */ protected function decodePayload(string $encodedPayload): array { $payload = $this->base64UrlDecode($encodedPayload); if ($payload) { $payload = json_decode($payload, true); } if (!is_array($payload)) { throw new FacebookSDKException('Signed request has malformed encoded payload data.', 607); } return $payload; } /** * Validates the algorithm used in a signed request. * * @throws FacebookSDKException */ protected function validateAlgorithm(): void { if ($this->get('algorithm') !== 'HMAC-SHA256') { throw new FacebookSDKException('Signed request is using the wrong algorithm.', 605); } } /** * Hashes the signature used in a signed request. * * @throws FacebookSDKException */ protected function hashSignature(string $encodedData): string { $hashedSig = hash_hmac( 'sha256', $encodedData, $this->app->getSecret(), true ); if (!$hashedSig) { throw new FacebookSDKException('Unable to hash signature from encoded payload data.', 602); } return $hashedSig; } /** * Validates the signature used in a signed request. * * @throws FacebookSDKException */ protected function validateSignature(string $hashedSig, string $sig): void { if (hash_equals($hashedSig, $sig)) { return; } throw new FacebookSDKException('Signed request has an invalid signature.', 602); } /** * Base64 decoding which replaces characters: * + instead of - * / instead of _ * * @link http://en.wikipedia.org/wiki/Base64#URL_applications * @throws FacebookSDKException */ public function base64UrlDecode(string $input): string { $urlDecodedBase64 = strtr($input, '-_', '+/'); $this->validateBase64($urlDecodedBase64); return base64_decode($urlDecodedBase64); } /** * Base64 encoding which replaces characters: * + instead of - * / instead of _ * * @link http://en.wikipedia.org/wiki/Base64#URL_applications */ public function base64UrlEncode(string $input): string { return strtr(base64_encode($input), '+/', '-_'); } /** * Validates a base64 string. * * @throws FacebookSDKException */ protected function validateBase64(string $input): void { if (!preg_match('/^[a-zA-Z0-9\/\r\n+]*={0,2}$/', $input)) { throw new FacebookSDKException('Signed request contains malformed base64 encoding.', 608); } } } PKCA#]��q��xcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookAuthenticationException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookAuthenticationException * * @package Facebook */ class FacebookAuthenticationException extends FacebookSDKException { } PKCA#]�~T���rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookThrottleException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookThrottleException * * @package Facebook */ class FacebookThrottleException extends FacebookSDKException { } PKCA#]O�l��ocomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookOtherException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookOtherException * * @package Facebook */ class FacebookOtherException extends FacebookSDKException { } PKCA#]�ͱ���pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookClientException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookClientException * * @package Facebook */ class FacebookClientException extends FacebookSDKException { } PKCA#]��T8��rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookResponseException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; use Facebook\FacebookResponse; /** * Class FacebookResponseException * * @package Facebook */ class FacebookResponseException extends FacebookSDKException { /** * @var FacebookResponse The response that threw the exception. */ protected FacebookResponse $response; /** * @var array|null Decoded response. */ protected ?array $responseData; /** * Creates a FacebookResponseException. * * @param FacebookResponse $response The response that threw the exception. * @param FacebookSDKException|null $previousException The more detailed exception. */ public function __construct(FacebookResponse $response, ?FacebookSDKException $previousException = null) { $this->response = $response; $this->responseData = $response->getDecodedBody(); $errorMessage = $this->get('message', 'Unknown error from Graph.'); $errorCode = $this->get('code', -1); parent::__construct($errorMessage, $errorCode, $previousException); } /** * A factory for creating the appropriate exception based on the response from Graph. * * @param FacebookResponse $response The response that threw the exception. * * @return FacebookResponseException */ public static function create(FacebookResponse $response): FacebookResponseException { $data = $response->getDecodedBody(); if (!isset($data['error']['code']) && isset($data['code'])) { $data = ['error' => $data]; } $code = $data['error']['code'] ?? null; $message = $data['error']['message'] ?? 'Unknown error from Graph.'; if (isset($data['error']['error_subcode'])) { switch ($data['error']['error_subcode']) { // Other authentication issues case 458: case 459: case 460: case 463: case 464: case 467: return new static($response, new FacebookAuthenticationException($message, $code)); // Video upload resumable error case 1363030: case 1363019: case 1363033: case 1363021: case 1363041: return new static($response, new FacebookResumableUploadException($message, $code)); case 1363037: $previousException = new FacebookResumableUploadException($message, $code); $startOffset = isset($data['error']['error_data']['start_offset']) ? (int)$data['error']['error_data']['start_offset'] : null; $previousException->setStartOffset($startOffset); $endOffset = isset($data['error']['error_data']['end_offset']) ? (int)$data['error']['error_data']['end_offset'] : null; $previousException->setEndOffset($endOffset); return new static($response, $previousException); } } switch ($code) { // Login status or token expired, revoked, or invalid case 100: case 102: case 190: return new static($response, new FacebookAuthenticationException($message, $code)); // Server issue, possible downtime case 1: case 2: return new static($response, new FacebookServerException($message, $code)); // API Throttling case 4: case 17: case 32: case 341: case 613: return new static($response, new FacebookThrottleException($message, $code)); // Duplicate Post case 506: return new static($response, new FacebookClientException($message, $code)); } // Missing Permissions if ($code == 10 || ($code >= 200 && $code <= 299)) { return new static($response, new FacebookAuthorizationException($message, $code)); } // OAuth authentication error if (isset($data['error']['type']) && $data['error']['type'] === 'OAuthException') { return new static($response, new FacebookAuthenticationException($message, $code)); } // All others return new static($response, new FacebookOtherException($message, $code)); } /** * Checks isset and returns that or a default value. */ private function get(string $key, mixed $default = null) { if (isset($this->responseData['error'][$key])) { return $this->responseData['error'][$key]; } return $default; } /** * Returns the HTTP status code */ public function getHttpStatusCode(): ?int { return $this->response->getHttpStatusCode(); } /** * Returns the sub-error code */ public function getSubErrorCode(): int { return $this->get('error_subcode', -1); } /** * Returns the error type */ public function getErrorType(): string { return $this->get('type', ''); } /** * Returns the raw response used to create the exception. */ public function getRawResponse(): ?string { return $this->response->getBody(); } /** * Returns the decoded response used to create the exception. */ public function getResponseData(): ?array { return $this->responseData; } /** * Returns the response entity used to create the exception. * * @return FacebookResponse */ public function getResponse(): FacebookResponse { return $this->response; } } PKCA#]���)��wcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookAuthorizationException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookAuthorizationException * * @package Facebook */ class FacebookAuthorizationException extends FacebookSDKException { } PKCA#],�����pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookServerException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookServerException * * @package Facebook */ class FacebookServerException extends FacebookSDKException { } PKCA#]�jjR��mcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookSDKException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; use Exception; /** * Class FacebookSDKException * * @package Facebook */ class FacebookSDKException extends Exception { } PKCA#]#�5���ycomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Exceptions/FacebookResumableUploadException.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Exceptions; /** * Class FacebookResumableUploadException * * @package Facebook */ class FacebookResumableUploadException extends FacebookSDKException { protected ?int $startOffset = null, $endOffset = null; public function getStartOffset(): ?int { return $this->startOffset; } public function setStartOffset(?int $startOffset): void { $this->startOffset = $startOffset; } public function getEndOffset(): ?int { return $this->endOffset; } public function setEndOffset(?int $endOffset): void { $this->endOffset = $endOffset; } } PKCA#]y�:��ucomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphApplicationEventsConfig.phpnu�[���<?php namespace Facebook\GraphNodes; class GraphApplicationEventsConfig extends GraphNode { public function getDefaultAteStatus(): ?int { return $this->getField('default_ate_status'); } public function isAdvertiserIdCollectionEnabled(): ?bool { return $this->getField('advertiser_id_collection_enabled'); } public function isEventCollectionEnabled(): ?bool { return $this->getField('event_collection_enabled'); } }PKCA#]N��ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/Collection.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class Collection * * Modified version of Collection in "illuminate/support" by Taylor Otwell * * @package Facebook */ use ArrayAccess; use ArrayIterator; use Closure; use Countable; use IteratorAggregate; class Collection implements ArrayAccess, Countable, IteratorAggregate { /** * The items contained in the collection. * * @var array */ protected array $items = []; /** * Create a new collection. * * @param array $items */ public function __construct(array $items = []) { $this->items = $items; } /** * Gets the value of a field from the Graph node. * * @param string $name The field to retrieve. * @param mixed $default The default to return if the field doesn't exist. * * @return mixed */ public function getField(string $name, mixed $default = null): mixed { if (isset($this->items[$name])) { return $this->items[$name]; } return $default; } /** * Returns a list of all fields set on the object. */ public function getFieldNames(): array { return array_keys($this->items); } /** * Get all of the items in the collection. */ public function all(): array { return $this->items; } /** * Get the collection of items as a plain array. */ public function asArray(): array { return array_map(function ($value) { return $value instanceof Collection ? $value->asArray() : $value; }, $this->items); } /** * Run a map over each of the items. */ public function map(Closure $callback): static { return new static(array_map($callback, $this->items, array_keys($this->items))); } /** * Get the collection of items as JSON. */ public function asJson(int $options = 0): string { return json_encode($this->asArray(), $options); } /** * Count the number of items in the collection. */ public function count(): int { return count($this->items); } /** * Get an iterator for the items. */ public function getIterator(): ArrayIterator { return new ArrayIterator($this->items); } /** * Determine if an item exists at an offset. */ public function offsetExists(mixed $offset): bool { return array_key_exists($offset, $this->items); } /** * Get an item at a given offset. */ public function offsetGet(mixed $offset): mixed { return $this->items[$offset] ?? null; } /** * Set the item at a given offset. */ public function offsetSet(mixed $offset, mixed $value): void { if (is_null($offset)) { $this->items[] = $value; } else { $this->items[$offset] = $value; } } /** * Unset the item at a given offset. */ public function offsetUnset(mixed $offset): void { unset($this->items[$offset]); } /** * Convert the collection to its string representation. */ public function __toString(): string { return $this->asJson(); } } PKCA#][��t��ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphAlbum.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Class GraphAlbum * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/album/ */ class GraphAlbum extends GraphNode { protected static array $graphObjectMap = [ 'from' => GraphUser::class, 'place' => GraphPlace::class, 'event' => GraphEvent::class, 'cover_photo' => GraphPhoto::class, ]; public function getId(): ?string { return $this->getField('id'); } public function getBackdatedTime(): ?DateTime { return $this->getField('backdated_time'); } public function getCanUpload(): ?bool { return $this->getField('can_upload'); } public function getCount(): ?int { return $this->getField('count'); } public function getCoverPhoto(): ?GraphPhoto { return $this->getField('cover_photo'); } public function getCreatedTime(): ?DateTime { return $this->getField('created_time'); } public function getUpdatedTime(): ?DateTime { return $this->getField('updated_time'); } public function getDescription(): ?string { return $this->getField('description'); } public function getFrom(): ?GraphUser { return $this->getField('from'); } public function getPlace(): ?GraphPlace { return $this->getField('place'); } public function getLink(): ?string { return $this->getField('link'); } public function getLocation(): ?string { return $this->getField('location'); } public function getName(): ?string { return $this->getField('name'); } public function getPrivacy(): ?string { return $this->getField('privacy'); } /** * One of `album`, `app`, `cover`, `profile`, `mobile`, `normal` or `wall`. */ public function getType(): ?string { return $this->getField('type'); } public function getEvent(): ?GraphEvent { return $this->getField('event'); } } PKCA#]�t#lcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphMailingAddress.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/mailing-address/ */ class GraphMailingAddress extends GraphNode { protected static array $graphObjectMap = [ 'city_page' => GraphPage::class ]; public function getId(): ?string { return $this->getField('id'); } public function getCity(): ?string { return $this->getField('city'); } public function getCountry(): ?string { return $this->getField('country'); } public function getPostalCode(): ?string { return $this->getField('postal_code'); } public function getRegion(): ?string { return $this->getField('region'); } public function getStreet1(): ?string { return $this->getField('street1'); } public function getStreet2(): ?string { return $this->getField('street2'); } public function getCityPage(): ?GraphPage { return $this->getField('city_page'); } }PKCA#]$h��pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPaymentPricePoints.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/payment-pricepoints/ */ class GraphPaymentPricePoints extends GraphNode { protected static array $graphObjectMap = [ 'mobile' => GraphPaymentPricePoint::class ]; /** * @return ?GraphPaymentPricePoint[] */ public function getMobile(): ?array { return $this->getField('mobile'); } }PKCA#]]4��Z Z ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphVideo.phpnu�[���<?php namespace Facebook\GraphNodes; use DateTime; /** * @link https://developers.facebook.com/docs/graph-api/reference/video/ */ class GraphVideo extends GraphNode { protected static array $graphObjectMap = [ 'event' => GraphEvent::class, 'format' => GraphVideoFormat::class, 'place' => GraphPlace::class, ]; public function getId(): ?string { return $this->getField('id'); } /** * @return ?int[] */ public function adBreaks(): ?array { return $this->getField('ad_breaks'); } public function getCreatedTime(): ?DateTime { return $this->getField('created_time'); } /** * @return ?string[] */ public function getCustomLabels(): ?array { return $this->getField('custom_labels'); } public function getDescription(): ?string { return $this->getField('description'); } public function getEmbedHtml(): ?string { return $this->getField('embed_html'); } public function isEmbeddable(): ?bool { return $this->getField('embeddable'); } public function getBackdatedTime(): ?DateTime { return $this->getField('backdated_time'); } public function getEvent(): ?GraphEvent { return $this->getField('event'); } /** * @return ?GraphVideoFormat[] */ public function getFormat(): ?array { return $this->getField('format'); } public function getLength(): ?float { return $this->getField('length'); } public function getIcon(): ?string { return $this->getField('icon'); } public function isCrossPostVideo(): ?bool { return $this->getField('is_crosspost_video'); } public function isCrossPostEligible(): ?bool { return $this->getField('is_crossposting_eligible'); } public function isEpisode(): ?bool { return $this->getField('is_episode'); } public function isInstagramEligible(): ?bool { return $this->getField('is_instagram_eligible'); } public function isReferenceOnly(): ?bool { return $this->getField('is_reference_only'); } public function permaLinkUrl(): ?string { return $this->getField('permalink_url'); } public function getPlace(): ?GraphPlace { return $this->getField('place'); } public function getPostId(): ?string { return $this->getField('post_id'); } public function getPostViews(): ?int { return $this->getField('post_views'); } }PKCA#]���8��hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphEngagement.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/engagement/ */ class GraphEngagement extends GraphNode { public function getCount(): ?int { return $this->getField('count'); } public function getCountString(): ?string { return $this->getField('count_string'); } public function getCountStringWithLike(): ?string { return $this->getField('count_string_with_like'); } public function getCountStringWithoutLike(): ?string { return $this->getField('count_string_without_like'); } public function getSocialSentence(): ?string { return $this->getField('social_sentence'); } public function getSocialSentenceWithLike(): ?string { return $this->getField('social_sentence_with_like'); } public function getSocialSentenceWithoutLike(): ?string { return $this->getField('social_sentence_without_like'); } }PKCA#]��/���hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphArchivedAd.phpnu�[���<?php namespace Facebook\GraphNodes; use DateTime; /** * @link https://developers.facebook.com/docs/marketing-api/reference/archived-ad/ */ class GraphArchivedAd extends GraphNode { protected static array $graphObjectMap = [ 'estimated_audience_size' => GraphInsightsRangeValue::class, 'impressions' => GraphInsightsRangeValue::class, 'spend' => GraphInsightsRangeValue::class, ]; public function getId(): ?string { return $this->getField('id'); } public function getAdCreationTime(): ?DateTime { return $this->getField('ad_creation_time'); } /** * @return ?string[] */ public function getAdCreativeBodies(): ?array { return $this->getField('ad_creative_bodies'); } /** * @return ?string[] */ public function getAdCreativeLinkCaptions(): ?array { return $this->getField('ad_creative_link_captions'); } /** * @return ?string[] */ public function getAdCreativeLinkDescriptions(): ?array { return $this->getField('ad_creative_link_descriptions'); } /** * @return ?string[] */ public function getAdCreativeLinkTitles(): ?array { return $this->getField('ad_creative_link_titles'); } public function getAdDeliveryStartTime(): ?DateTime { return $this->getField('ad_delivery_start_time'); } public function getAdDeliveryStopTime(): ?DateTime { return $this->getField('ad_delivery_stop_time'); } public function getAdSnapshotUrl(): ?string { return $this->getField('ad_snapshot_url'); } public function getBrTotalReach(): ?int { return $this->getField('br_total_reach'); } public function getBylines(): ?string { return $this->getField('bylines'); } public function getCurrency(): ?string { return $this->getField('currency'); } public function getEstimatedAudienceSize(): ?GraphInsightsRangeValue { return $this->getField('estimated_audience_size'); } public function getEUTotalReach(): ?int { return $this->getField('eu_total_reach'); } public function getImpressions(): ?GraphInsightsRangeValue { return $this->getField('impressions'); } /** * @return ?string[] */ public function getLanguages(): ?array { return $this->getField('languages'); } public function getPageId(): ?string { return $this->getField('page_id'); } public function getPageName(): ?string { return $this->getField('page_name'); } /** * @return ?string[] */ public function getPublisherPlatforms(): ?array { return $this->getField('publisher_platforms'); } public function getSpend(): ?GraphInsightsRangeValue { return $this->getField('spend'); } /** * @return ?string[] */ public function getTargetAges(): ?array { return $this->getField('target_ages'); } /** * @return ?string[] */ public function getTargetGenders(): ?array { return $this->getField('target_genders'); } }PKCA#]5/F�xcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphApplicationObjectStoreURLs.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/application-object-store-urls/ */ class GraphApplicationObjectStoreURLs extends GraphNode { public function getAmazonAppStore(): ?string { return $this->getField('amazon_app_store'); } public function getFBCanvas(): ?string { return $this->getField('fb_canvas'); } public function getFBGameRoom(): ?string { return $this->getField('fb_gameroom'); } public function getGooglePlay(): ?string { return $this->getField('google_play'); } public function getInstantGame(): ?string { return $this->getField('instant_game'); } public function getItunes(): ?string { return $this->getField('itunes'); } public function getItunesIpad(): ?string { return $this->getField('itunes_ipad'); } public function getWindows10Store(): ?string { return $this->getField('windows_10_store'); } } PKCA#]R�1�SSucomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphApplicationRestrictions.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/application-restriction-info/ */ class GraphApplicationRestrictions extends GraphNode { public function getAge(): ?string { return $this->getField('age'); } public function getAgeDistribution(): ?string { return $this->getField('age_distribution'); } public function getLocation(): ?string { return $this->getField('location'); } public function getType(): ?string { return $this->getField('type'); } }PKCA#]Z��66bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphNode.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; use Exception; /** * Class GraphNode * * @package Facebook */ class GraphNode extends Collection { /** * @var array Maps object key names to Graph object types. */ protected static array $graphObjectMap = []; /** * Init this Graph object. * * @param array $data */ public function __construct(array $data = []) { parent::__construct($this->castItems($data)); } /** * Iterates over an array and detects the types each node * should be cast to and returns all the items as an array. * * @TODO Add auto-casting to AccessToken entities. * * @param array $data The array to iterate over. * * @return array */ public function castItems(array $data): array { $items = []; foreach ($data as $k => $v) { if ($this->shouldCastAsDateTime($k) ) { try { $items[$k] = $this->castToDateTime($v); } catch (Exception) { // If it cannot be parsed as a date but should be one, we cannot add it because of type checking. } } elseif ($k === 'birthday') { $items[$k] = $this->castToBirthday($v); } else { $items[$k] = $v; } } return $items; } /** * Uncasts any auto-casted datatypes. * Basically the reverse of castItems(). * * @return array */ public function uncastItems(): array { $items = $this->asArray(); return array_map(function ($v) { if ($v instanceof DateTime) { return $v->format(DateTime::ISO8601); } return $v; }, $items); } /** * Get the collection of items as JSON. */ public function asJson(int $options = 0): string { return json_encode($this->uncastItems(), $options); } /** * Determines if a value from Graph should be cast to DateTime. * * @param string $key * * @return boolean */ public function shouldCastAsDateTime(string $key): bool { return in_array($key, [ 'created_time', 'updated_time', 'start_time', 'end_time', 'backdated_time', 'issued_at', 'expires_at', 'publish_time', 'joined' ], true); } /** * Casts a date value from Graph to DateTime. * On PHP 8.3+, this is DateMalformedStringException, so we catch everything. * @throws Exception */ private function castToDateTime(int|string $value): DateTime { if (is_int($value)) { $dt = new DateTime(); $dt->setTimestamp($value); } else { $dt = new DateTime($value); } return $dt; } /** * Casts a birthday value from Graph to Birthday */ private function castToBirthday(string $value): Birthday { return new Birthday($value); } /** * Getter for $graphObjectMap. * * @return array */ public static function getObjectMap(): array { return static::$graphObjectMap; } } PKCA#]��:>>acomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/Birthday.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Birthday object to handle various Graph return formats * * @package Facebook */ class Birthday extends DateTime { private bool $hasDate, $hasYear; /** * Parses Graph birthday format to set indication flags, possible values: * * MM/DD/YYYY * MM/DD * YYYY * * @link https://developers.facebook.com/docs/graph-api/reference/user */ public function __construct(string $date) { $parts = explode('/', $date); $count = count($parts); $this->hasYear = $count === 3 || $count === 1; $this->hasDate = $count === 3 || $count === 2; parent::__construct($date); } /** * Returns whether date object contains birth day and month */ public function hasDate(): bool { return $this->hasDate; } /** * Returns whether date object contains birth year */ public function hasYear(): bool { return $this->hasYear; } } PKCA#]�&�(�(icomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphNodeFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use Facebook\FacebookResponse; use Facebook\Exceptions\FacebookSDKException; /** * Class GraphNodeFactory * * @package Facebook * * ## Assumptions ## * GraphEdge - is ALWAYS a numeric array * GraphEdge - is ALWAYS an array of GraphNode types * GraphNode - is ALWAYS an associative array * GraphNode - MAY contain GraphNode's "recurrable" * GraphNode - MAY contain GraphEdge's "recurrable" * GraphNode - MAY contain DateTime's "primitives" * GraphNode - MAY contain string's "primitives" */ class GraphNodeFactory { /** * @var FacebookResponse The response entity from Graph. */ protected FacebookResponse $response; /** * @var array|null The decoded body of the FacebookResponse entity from Graph. */ protected ?array $decodedBody; /** * Init this Graph object. * * @param FacebookResponse $response The response entity from Graph. */ public function __construct(FacebookResponse $response) { $this->response = $response; $this->decodedBody = $response->getDecodedBody(); } /** * Tries to convert a FacebookResponse entity into a GraphNode. * * @param string|null $subclassName The GraphNode sub class to cast to. * * @throws FacebookSDKException */ public function makeGraphNode(?string $subclassName = null): GraphEdge|GraphNode { $this->validateResponseAsArray(); $this->validateResponseCastableAsGraphNode(); return $this->castAsGraphNodeOrGraphEdge($this->decodedBody, $subclassName); } /** * Tries to convert a FacebookResponse entity into a GraphEdge. * * @param string|null $subclassName The GraphNode sub class to cast the list items to. * * @return GraphEdge|GraphNode * * @throws FacebookSDKException */ public function makeGraphEdge(?string $subclassName = null): GraphEdge|GraphNode { $this->validateResponseAsArray(); $this->validateResponseCastableAsGraphEdge(); return $this->castAsGraphNodeOrGraphEdge($this->decodedBody, $subclassName); } /** * Validates the decoded body. * * @throws FacebookSDKException */ private function validateResponseAsArray(): void { if (!is_array($this->decodedBody)) { throw new FacebookSDKException('Unable to get response from Graph as array.', 620); } } /** * Validates that the return data can be cast as a GraphNode. * * @throws FacebookSDKException */ public function validateResponseCastableAsGraphNode(): void { if (isset($this->decodedBody['data']) && static::isCastableAsGraphEdge($this->decodedBody['data'])) { throw new FacebookSDKException( 'Unable to convert response from Graph to a GraphNode because the response looks like a GraphEdge. Try using GraphNodeFactory::makeGraphEdge() instead.', 620 ); } } /** * Validates that the return data can be cast as a GraphEdge. * * @throws FacebookSDKException */ public function validateResponseCastableAsGraphEdge(): void { if (!(isset($this->decodedBody['data']) && static::isCastableAsGraphEdge($this->decodedBody['data']))) { throw new FacebookSDKException( 'Unable to convert response from Graph to a GraphEdge because the response does not look like a GraphEdge. Try using GraphNodeFactory::makeGraphNode() instead.', 620 ); } } /** * Safely instantiates a GraphNode of $subclassName. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The subclass to cast this collection to. * * @throws FacebookSDKException */ private function safelyMakeGraphNode(array $data, ?string $subclassName = null): GraphNode { $subclassName = $subclassName ?: GraphNode::class; static::validateSubclass($subclassName); // Remember the parent node ID $parentNodeId = $data['id'] ?? null; $items = []; foreach ($data as $k => $v) { if (is_array($v)) { if (array_is_list($v)) { // If the array is a list of objects, we want to cast each of those objects to the appropriate GraphNode // subclass, but retain the array structure. Since everything is an array when we use associative arrays // when reading the JSON, we need array_is_list to distinguish a JSON array from an object. $children = []; foreach ($v as $cv) { if (is_array($cv)) { $children[] = $this->castAsGraphNodeOrGraphEdge($cv, $subclassName::getObjectMap()[$k] ?? null, $k, $parentNodeId); } else { // Element in array is not an object, i.e. if a property is an array of plain strings. $children[] = $cv; } } $items[$k] = $children; } else { // This means it's an object, not an array. $items[$k] = $this->castAsGraphNodeOrGraphEdge($v, $subclassName::getObjectMap()[$k] ?? null, $k, $parentNodeId); } } else { // If it's not an "array" (or JSON object), use the value directly and don't attempt to cast it. $items[$k] = $v; } } return new $subclassName($items); } /** * Takes an array of values and determines how to cast each node. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The subclass to cast this collection to. * @param string|null $parentKey The key of this data (Graph edge). * @param string|null $parentNodeId The parent Graph node ID. * * @throws FacebookSDKException */ private function castAsGraphNodeOrGraphEdge(array $data, ?string $subclassName = null, ?string $parentKey = null, ?string $parentNodeId = null): GraphNode|GraphEdge { if (isset($data['data'])) { // Create GraphEdge if (static::isCastableAsGraphEdge($data['data'])) { return $this->safelyMakeGraphEdge($data, $subclassName, $parentKey, $parentNodeId); } // Sometimes Graph is a weirdo and returns a GraphNode under the "data" key $outerData = $data; unset($outerData['data']); $data = $data['data'] + $outerData; } // Create GraphNode return $this->safelyMakeGraphNode($data, $subclassName); } /** * Return an array of GraphNode's. * * @param array $data The array of data to iterate over. * @param string|null $subclassName The GraphNode subclass to cast each item in the list to. * @param string|null $parentKey The key of this data (Graph edge). * @param string|null $parentNodeId The parent Graph node ID. * * @throws FacebookSDKException */ private function safelyMakeGraphEdge(array $data, ?string $subclassName = null, ?string $parentKey = null, ?string $parentNodeId = null): GraphEdge { if (!isset($data['data'])) { throw new FacebookSDKException('Cannot cast data to GraphEdge. Expected a "data" key.', 620); } $dataList = []; foreach ($data['data'] as $graphNode) { $dataList[] = $this->safelyMakeGraphNode($graphNode, $subclassName); } $metaData = $this->getMetaData($data); // We'll need to make an edge endpoint for this in case it's a GraphEdge (for cursor pagination) $parentGraphEdgeEndpoint = $parentNodeId && $parentKey ? '/' . $parentNodeId . '/' . $parentKey : null; return new GraphEdge($this->response->getRequest(), $dataList, $metaData, $parentGraphEdgeEndpoint, $subclassName); } /** * Get the meta data from a list in a Graph response. * * @param array $data The Graph response. * * @return array */ public function getMetaData(array $data): array { unset($data['data']); return $data; } /** * Determines whether or not the data should be cast as a GraphEdge. */ public static function isCastableAsGraphEdge(array $data): bool { if ($data === []) { return true; } // Checks for a sequential numeric array which would be a GraphEdge return array_is_list($data); } /** * Ensures that the subclass in question is valid. * * @param string $subclassName The GraphNode subclass to validate. * * @throws FacebookSDKException */ public static function validateSubclass(string $subclassName): void { if (is_a($subclassName, GraphNode::class, true) || is_subclass_of($subclassName, GraphNode::class)) { return; } throw new FacebookSDKException('The given subclass "' . $subclassName . '" is not valid. Cannot cast to an object that is not a GraphNode subclass.', 620); } } PKCA#]����hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphExperience.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/experience/ */ class GraphExperience extends GraphNode { protected static array $graphObjectMap = [ 'with' => GraphUser::class ]; public function getId(): ?string { return $this->getField('id'); } public function getDescription(): ?string { return $this->getField('description'); } public function getName(): ?string { return $this->getField('name'); } public function getWith(): ?GraphUser { return $this->getField('with'); } }PKCA#]��ֹ��bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphEdge.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use Closure; use Facebook\FacebookRequest; use Facebook\Url\FacebookUrlManipulator; use Facebook\Exceptions\FacebookSDKException; /** * Class GraphEdge * * @package Facebook */ class GraphEdge extends Collection { /** * @var FacebookRequest The original request that generated this data. */ protected FacebookRequest $request; /** * @var array An array of Graph meta data like pagination, etc. */ protected array $metaData = []; /** * @var string|null The parent Graph edge endpoint that generated the list. */ protected ?string $parentEdgeEndpoint; /** * @var string|null The subclass of the child GraphNode's. */ protected ?string $subclassName; /** * Init this collection of GraphNode's. * * @param FacebookRequest $request The original request that generated this data. * @param array $data An array of GraphNode's. * @param array $metaData An array of Graph meta data like pagination, etc. * @param string|null $parentEdgeEndpoint The parent Graph edge endpoint that generated the list. * @param string|null $subclassName The subclass of the child GraphNode's. */ public function __construct(FacebookRequest $request, array $data = [], array $metaData = [], ?string $parentEdgeEndpoint = null, ?string $subclassName = null) { $this->request = $request; $this->metaData = $metaData; $this->parentEdgeEndpoint = $parentEdgeEndpoint; $this->subclassName = $subclassName; parent::__construct($data); } /** * Gets the parent Graph edge endpoint that generated the list. * * @return string|null */ public function getParentGraphEdge(): ?string { return $this->parentEdgeEndpoint; } /** * Gets the subclass name that the child GraphNode's are cast as. * * @return string|null */ public function getSubClassName(): ?string { return $this->subclassName; } /** * Returns the raw meta data associated with this GraphEdge. * * @return array */ public function getMetaData(): array { return $this->metaData; } /** * Returns the next cursor if it exists. * * @return string|null */ public function getNextCursor(): ?string { return $this->getCursor('after'); } /** * Returns the previous cursor if it exists. * * @return string|null */ public function getPreviousCursor(): ?string { return $this->getCursor('before'); } /** * Returns the cursor for a specific direction if it exists. * * @param string $direction The direction of the page: after|before * * @return string|null */ public function getCursor(string $direction): ?string { if (isset($this->metaData['paging']['cursors'][$direction])) { return $this->metaData['paging']['cursors'][$direction]; } return null; } /** * Generates a pagination URL based on a cursor. * * @param string $direction The direction of the page: next|previous * * @return string|null * * @throws FacebookSDKException */ public function getPaginationUrl(string $direction): ?string { $this->validateForPagination(); // Do we have a paging URL? if (!isset($this->metaData['paging'][$direction])) { return null; } $pageUrl = $this->metaData['paging'][$direction]; return FacebookUrlManipulator::baseGraphUrlEndpoint($pageUrl); } /** * Validates whether or not we can paginate on this request. * * @throws FacebookSDKException */ public function validateForPagination(): void { if ($this->request->getMethod() !== 'GET') { throw new FacebookSDKException('You can only paginate on a GET request.', 720); } } /** * Gets the request object needed to make a next|previous page request. * * @param string $direction The direction of the page: next|previous * * @throws FacebookSDKException */ public function getPaginationRequest(string $direction): FacebookRequest|null { $pageUrl = $this->getPaginationUrl($direction); if (!$pageUrl) { return null; } $newRequest = clone $this->request; $newRequest->setEndpoint($pageUrl); return $newRequest; } /** * Gets the request object needed to make a "next" page request. * * @throws FacebookSDKException */ public function getNextPageRequest(): ?FacebookRequest { return $this->getPaginationRequest('next'); } /** * Gets the request object needed to make a "previous" page request. * * @throws FacebookSDKException */ public function getPreviousPageRequest(): ?FacebookRequest { return $this->getPaginationRequest('previous'); } /** * The total number of results according to Graph if it exists. * * This will be returned if the summary=true modifier is present in the request. */ public function getTotalCount(): ?int { return $this->metaData['summary']['total_count'] ?? null; } /** * @inheritDoc */ public function map(Closure $callback): static { return new static( $this->request, array_map($callback, $this->items, array_keys($this->items)), $this->metaData, $this->parentEdgeEndpoint, $this->subclassName ); } } PKCA#]���nnocomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphVideoUploadLimits.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/video-upload-limits/ */ class GraphVideoUploadLimits extends GraphNode { public function getLength(): ?int { return $this->getField('length'); } public function getSize(): ?int { return $this->getField('size'); } }PKCA#]Գ�Ͳ�ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphEvent.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Class GraphEvent * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/event */ class GraphEvent extends GraphNode { /** * @var array Maps object key names to GraphNode types. */ protected static array $graphObjectMap = [ 'cover' => GraphCoverPhoto::class, 'place' => GraphPage::class, 'parent_group' => GraphGroup::class, ]; /** * Returns the `id` (The event ID) as string if present. */ public function getId(): ?string { return $this->getField('id'); } /** * Returns the `cover` (Cover picture) as GraphCoverPhoto if present. */ public function getCover(): ?GraphCoverPhoto { return $this->getField('cover'); } /** * Returns the `description` (Long-form description) as string if present. */ public function getDescription(): ?string { return $this->getField('description'); } /** * Returns the `end_time` (End time, if one has been set) as DateTime if present. */ public function getEndTime(): ?DateTime { return $this->getField('end_time'); } /** * Returns the `is_date_only` (Whether the event only has a date specified, but no time) as bool if present. */ public function getIsDateOnly(): ?bool { return $this->getField('is_date_only'); } /** * Returns the `name` (Event name) as string if present. */ public function getName(): ?string { return $this->getField('name'); } /** * Returns the `owner` (The profile that created the event) as GraphNode if present. */ public function getOwner(): ?GraphNode { return $this->getField('owner'); } /** * Returns the `parent_group` (The group the event belongs to) as GraphGroup if present. */ public function getParentGroup(): ?GraphGroup { return $this->getField('parent_group'); } /** * Returns the `place` (Event Place information) as GraphPage if present. */ public function getPlace(): ?GraphPage { return $this->getField('place'); } /** * Returns the `privacy` (Who can see the event) as string if present. */ public function getPrivacy(): ?string { return $this->getField('privacy'); } /** * Returns the `start_time` (Start time) as DateTime if present. */ public function getStartTime(): ?DateTime { return $this->getField('start_time'); } /** * Returns the `ticket_uri` (The link users can visit to buy a ticket to this event) as string if present. */ public function getTicketUri(): ?string { return $this->getField('ticket_uri'); } /** * Returns the `timezone` (Timezone) as string if present. */ public function getTimezone(): ?string { return $this->getField('timezone'); } /** * Returns the `updated_time` (Last update time) as DateTime if present. */ public function getUpdatedTime(): ?DateTime { return $this->getField('updated_time'); } /** * Returns the `attending_count` (Number of people attending the event) as int if present. */ public function getAttendingCount(): ?int { return $this->getField('attending_count'); } /** * Returns the `declined_count` (Number of people who declined the event) as int if present. */ public function getDeclinedCount(): ?int { return $this->getField('declined_count'); } /** * Returns the `maybe_count` (Number of people who maybe going to the event) as int if present. */ public function getMaybeCount(): ?int { return $this->getField('maybe_count'); } /** * Returns the `noreply_count` (Number of people who did not reply to the event) as int if present. */ public function getNoreplyCount(): ?int { return $this->getField('noreply_count'); } /** * Returns the `invited_count` (Number of people invited to the event) as int if present. * * @return int|null */ public function getInvitedCount(): ?int { return $this->getField('invited_count'); } public function getType(): ?string { return $this->getField('type'); } } PKCA#]�� FFecomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPicture.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphPicture * * @package Facebook */ class GraphPicture extends GraphNode { /** * Returns true if user picture is silhouette. */ public function isSilhouette(): ?bool { return $this->getField('is_silhouette'); } /** * Returns the url of user picture if it exists */ public function getUrl(): ?string { return $this->getField('url'); } /** * Returns the width of user picture if it exists */ public function getWidth(): ?int { return $this->getField('width'); } /** * Returns the height of user picture if it exists */ public function getHeight(): ?int { return $this->getField('height'); } } PKCA#]��ܠnnhcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPermission.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/permission/ */ class GraphPermission extends GraphNode { public function getPermission(): string { return $this->getField('permission'); } public function getStatus(): string { return $this->getField('status'); } }PKCA#]y<�� � icomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphSessionInfo.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Class GraphSessionInfo * * @package Facebook */ class GraphSessionInfo extends GraphNode { /** * Returns the application id the token was issued for. */ public function getAppId(): ?string { return $this->getField('app_id'); } /** * Returns the application name the token was issued for. */ public function getApplication(): ?string { return $this->getField('application'); } /** * Returns the date & time that the token expires. */ public function getExpiresAt(): ?DateTime { return $this->getField('expires_at'); } /** * Returns whether the token is valid. */ public function getIsValid(): ?bool { return $this->getField('is_valid'); } /** * Returns the date & time the token was issued at. */ public function getIssuedAt(): ?DateTime { return $this->getField('issued_at'); } /** * Returns the scope permissions associated with the token. */ public function getScopes(): ?array { return $this->getField('scopes'); } /** * Returns the login id of the user associated with the token. */ public function getUserId(): ?string { return $this->getField('user_id'); } } PKCA#]�X0���hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphCoverPhoto.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphCoverPhoto * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/cover-photo/ */ class GraphCoverPhoto extends GraphNode { public function getId(): ?string { return $this->getField('id'); } public function getSource(): ?string { return $this->getField('source'); } public function getOffsetX(): ?float { return $this->getField('offset_x'); } public function getOffsetY(): ?float { return $this->getField('offset_y'); } } PKCA#]��HI��ocomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPaymentPricePoint.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/payment-pricepoint/ */ class GraphPaymentPricePoint extends GraphNode { public function getCredits(): ?float { return $this->getField('credits'); } public function getCurrency(): ?string { return $this->getField('currency'); } public function getUserPrice(): ?string { return $this->getField('user_price'); } }PKCA#]��ѥ�fcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphLocation.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphLocation * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/location/ */ class GraphLocation extends GraphNode { public function getStreet(): ?string { return $this->getField('street'); } public function getCity(): ?string { return $this->getField('city'); } public function getState(): ?string { return $this->getField('state'); } public function getCountry(): ?string { return $this->getField('country'); } public function getZip(): ?string { return $this->getField('zip'); } public function getLatitude(): ?float { return $this->getField('latitude'); } public function getLongitude(): ?float { return $this->getField('longitude'); } } PKCA#]�TESSfcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphAgeRange.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/age-range/ */ class GraphAgeRange extends GraphNode { public function getMax(): ?int { return $this->getField('max'); } public function getMin(): ?int { return $this->getField('min'); } } PKCA#]r��655bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphUser.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphUser * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/user/ */ class GraphUser extends GraphNode { protected static array $graphObjectMap = [ 'age_range' => GraphAgeRange::class, 'hometown' => GraphPage::class, 'location' => GraphPage::class, 'picture' => GraphPicture::class, 'significant_other' => GraphUser::class, 'sports' => GraphExperience::class, 'favorite_teams' => GraphExperience::class, 'favorite_athletes' => GraphExperience::class, 'languages' => GraphExperience::class, 'inspirational_people' => GraphExperience::class, 'video_upload_limits' => GraphVideoUploadLimits::class, 'permissions' => GraphPermission::class, 'payment_pricepoints' => GraphPaymentPricePoints::class, 'albums' => GraphAlbum::class ]; public function getId(): ?string { return $this->getField('id'); } public function getName(): ?string { return $this->getField('name'); } public function getProfilePicture(): ?string { return $this->getField('profile_pic'); } public function getClientBusinessId(): ?string { return $this->getField('client_business_id'); } public function getTokenForBusiness(): ?string { return $this->getField('token_for_business'); } public function getIdForAvatars(): ?string { return $this->getField('id_for_avatars'); } /** * @return ?GraphExperience[] */ public function getFavoriteAthletes(): ?array { return $this->getField('favorite_athletes'); } /** * @return ?GraphExperience[] */ public function getFavoriteTeams(): ?array { return $this->getField('favorite_teams'); } /** * @return ?GraphExperience[] */ public function getLanguages(): ?array { return $this->getField('languages'); } /** * @return ?GraphExperience[] */ public function getInspirationalPeople(): ?array { return $this->getField('inspirational_people'); } public function getAbout(): ?string { return $this->getField('about'); } public function getNameFormat(): ?string { return $this->getField('name_format'); } public function getShortName(): ?string { return $this->getField('short_name'); } public function getFirstName(): ?string { return $this->getField('first_name'); } public function getMiddleName(): ?string { return $this->getField('middle_name'); } public function getLastName(): ?string { return $this->getField('last_name'); } public function getEmail(): ?string { return $this->getField('email'); } public function getGender(): ?string { return $this->getField('gender'); } public function getLink(): ?string { return $this->getField('link'); } public function getBirthday(): ?Birthday { return $this->getField('birthday'); } public function getLocation(): ?GraphPage { return $this->getField('location'); } /** * Returns the current location of the user as a GraphPage. */ public function getHometown(): ?GraphPage { return $this->getField('hometown'); } /** * Returns the current location of the user as a GraphUser. */ public function getSignificantOther(): ?GraphUser { return $this->getField('significant_other'); } /** * Returns the picture of the user as a GraphPicture */ public function getPicture(): ?GraphPicture { return $this->getField('picture'); } public function supportsDonateButtonInLiveVideos(): ?bool { return $this->getField('supports_donate_button_in_live_video'); } public function getAgeRange(): ?GraphAgeRange { return $this->getField('age_range'); } public function isInstalled(): ?bool { return $this->getField('installed'); } /** * @return ?string[] */ public function getMeetingFor(): ?array { return $this->getField('meeting_for'); } /** * @return ?GraphExperience[] */ public function getSports(): ?array { return $this->getField('sports'); } public function getVideoUploadLimits(): ?GraphVideoUploadLimits { return $this->getField('video_upload_limits'); } public function getPermissions(): ?GraphEdge { return $this->getField('permissions'); } public function getAlbums(): ?GraphEdge { return $this->getField('albums'); } public function getPaymentPricePoints(): ?GraphPaymentPricePoints { return $this->getField('payment_pricepoints'); } } PKCA#]�D_��ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPlace.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/place */ class GraphPlace extends GraphNode { protected static array $graphObjectMap = [ 'location' => GraphLocation::class ]; public function getId(): ?string { return $this->getField('id'); } public function getLocation(): ?GraphLocation { return $this->getField('location'); } public function getName(): ?string { return $this->getField('name'); } public function getOverallRating(): ?float { return $this->getField('overall_rating'); } }PKCA#]�H����qcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPlatformImageSource.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/platform-image-source/ */ class GraphPlatformImageSource extends GraphNode { public function getHeight(): ?int { return $this->getField('height'); } public function getWidth(): ?int { return $this->getField('width'); } public function getSource(): ?string { return $this->getField('source'); } }PKCA#]Q�-�*)*)icomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphApplication.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Class GraphApplication * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/application/ */ class GraphApplication extends GraphNode { protected static array $graphObjectMap = [ 'object_store_urls' => GraphApplicationObjectStoreURLs::class, 'restrictions' => GraphApplicationRestrictions::class, 'app_events_config' => GraphApplicationEventsConfig::class ]; /** * Returns the ID for the application. */ public function getId(): ?string { return $this->getField('id'); } public function getAamRules(): ?string { return $this->getField('aam_rules'); } public function getAnAdSpaceLimit(): ?int { return $this->getField('an_ad_space_limit'); } /** * @return ?string[] */ public function getAppDomains(): ?array { return $this->getField('app_domains'); } public function getAppEventsConfig(): ?GraphApplicationEventsConfig { return $this->getField('app_events_config'); } public function isAppInstallTracked(): ?bool { return $this->getField('app_install_tracked'); } public function getAppName(): ?string { return $this->getField('app_name'); } public function getAppType(): ?int { return $this->getField('app_type'); } public function getAuthDialogDataHelpUrl(): ?string { return $this->getField('auth_dialog_data_help_url'); } public function getAuthDialogHeadline(): ?string { return $this->getField('auth_dialog_headline'); } public function getAuthDialoguePermissionsExplanation(): ?string { return $this->getField('auth_dialog_perms_explanation'); } public function getAuthReferralDefaultActivityPrivacy(): ?string { return $this->getField('auth_referral_default_activity_privacy'); } public function isAuthReferralEnabled(): ?bool { return $this->getField('auth_referral_enabled'); } /** * @return ?string[] */ public function getAuthReferralExtendedPermissions(): ?array { return $this->getField('auth_referral_extended_perms'); } /** * @return ?string[] */ public function getAuthReferralFriendPermissions(): ?array { return $this->getField('auth_referral_friend_perms'); } public function getAuthReferralResponseType(): ?string { return $this->getField('auth_referral_response_type'); } /** * @return ?string[] */ public function getAuthReferralUserPermissions(): ?array { return $this->getField('auth_referral_user_perms'); } public function isCanvasFluidHeight(): ?bool { return $this->getField('canvas_fluid_height'); } public function getCanvasFluidWidth(): ?int { return $this->getField('canvas_fluid_width'); } public function getCanvasUrl(): ?string { return $this->getField('canvas_url'); } public function getCategory(): ?string { return $this->getField('category'); } public function getClientConfig(): ?array { return $this->getField('client_config'); } public function getCompany(): ?string { return $this->getField('company'); } public function isConfigurediOSSSO(): ?bool { return $this->getField('configured_ios_sso'); } public function getContactEmail(): ?string { return $this->getField('contact_email'); } public function getCreatedTime(): ?DateTime { return $this->getField('created_time'); } public function getCreatorUid(): ?string { return $this->getField('creator_uid'); } public function getDailyActiveUsers(): ?string { return $this->getField('daily_active_users'); } public function getDailyActiveUsersRank(): ?int { return $this->getField('daily_active_users_rank'); } public function getDeauthCallbackUrl(): ?string { return $this->getField('deauth_callback_url'); } public function getDefaultShareMode(): ?string { return $this->getField('default_share_mode'); } public function getDescription(): ?string { return $this->getField('description'); } public function getFinancialId(): ?string { return $this->getField('financial_id'); } public function getHostingUrl(): ?string { return $this->getField('hosting_url'); } public function getIconUrl(): ?string { return $this->getField('icon_url'); } /** * @return ?string[] */ public function getiOSBundleIds(): ?array { return $this->getField('ios_bundle_id'); } public function iOSSupportsNativeProxyAuthFlow(): ?bool { return $this->getField('ios_supports_native_proxy_auth_flow'); } public function iOSSupportsSystemAuth(): ?bool { return $this->getField('ios_supports_system_auth'); } public function getiPadAppStoreId(): ?string { return $this->getField('ipad_app_store_id'); } public function getiPhoneAppStoreId(): ?string { return $this->getField('iphone_app_store_id'); } public function getLink(): ?string { return $this->getField('link'); } public function getLoggingToken(): ?string { return $this->getField('logging_token'); } public function getLogoUrl(): ?string { return $this->getField('logo_url'); } public function getMobileProfileSectionUrl(): ?string { return $this->getField('mobile_profile_section_url'); } public function getMobileWebUrl(): ?string { return $this->getField('mobile_web_url'); } public function getMonthlyActiveUsers(): ?string { return $this->getField('monthly_active_users'); } public function getMonthlyActiveUsersRank(): ?int { return $this->getField('monthly_active_users_rank'); } /** * Seems to be identical to `getAppName()`. */ public function getName(): ?string { return $this->getField('name'); } public function getNamespace(): ?string { return $this->getField('namespace'); } public function getObjectStoreUrls(): ?GraphApplicationObjectStoreURLs { return $this->getField('object_store_urls'); } public function getPageTabDefaultName(): ?string { return $this->getField('page_tab_default_name'); } public function getPageTabUrl(): ?string { return $this->getField('page_tab_url'); } public function getPhotoUrl(): ?string { return $this->getField('photo_url'); } public function getPrivacyPolicyUrl(): ?string { return $this->getField('privacy_policy_url'); } public function getProfileSectionUrl(): ?string { return $this->getField('profile_section_url'); } public function getPropertyId(): ?string { return $this->getField('property_id'); } /** * @return ?string[] */ public function getRealTimeModeDevices(): ?array { return $this->getField('real_time_mode_devices'); } public function getRestrictions(): ?GraphApplicationRestrictions { return $this->getField('restrictions'); } public function getRestrictiveDataFilterParams(): ?string { return $this->getField('restrictive_data_filter_params'); } public function getSecureCanvasUrl(): ?string { return $this->getField('secure_canvas_url'); } public function getSecurePageTabUrl(): ?string { return $this->getField('secure_page_tab_url'); } public function getServerIPWhitelist(): ?string { return $this->getField('server_ip_whitelist'); } public function isSocialDiscovery(): ?bool { return $this->getField('social_discovery'); } public function getSubcategory(): ?string { return $this->getField('subcategory'); } public function getSuggestedEventSettings(): ?string { return $this->getField('suggested_event_settings'); } /** * Array of: `WEB`,`CANVAS`,`MOBILE_WEB`,`IPHONE`,`IPAD`,`ANDROID`,`WINDOWS`,`AMAZON`,`SUPPLEMENTARY_IMAGES`, * `GAMEROOM`,`INSTANT_GAME`,`OCULUS`,`SAMSUNG`,`XIAOMI`. * @return ?string[] */ public function getSupportedPlatforms(): ?array { return $this->getField('supported_platforms'); } public function getTermsOfServiceUrl(): ?string { return $this->getField('terms_of_service_url'); } public function getUrlSchemeSuffix(): ?string { return $this->getField('url_scheme_suffix'); } public function getUserSupportEmail(): ?string { return $this->getField('user_support_email'); } public function getUserSupportUrl(): ?string { return $this->getField('user_support_url'); } public function getWebsiteUrl(): ?string { return $this->getField('website_url'); } public function getWeeklyActiveUsers(): ?string { return $this->getField('weekly_active_users'); } } PKCA#](��c��pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphInsightsRangeValue.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/insights-range-value/ */ class GraphInsightsRangeValue extends GraphNode { public function getLowerBound(): ?string { return $this->getField('lower_bound'); } public function getUpperBound(): ?string { return $this->getField('upper_bound'); } }PKCA#]�;D ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPhoto.phpnu�[���<?php namespace Facebook\GraphNodes; use DateTime; /** * @link https://developers.facebook.com/docs/graph-api/reference/photo/ */ class GraphPhoto extends GraphNode { protected static array $graphObjectMap = [ 'event' => GraphEvent::class, 'album' => GraphAlbum::class, 'images' => GraphPlatformImageSource::class, 'webp_images' => GraphPlatformImageSource::class, 'place' => GraphPlace::class, ]; public function getId(): ?string { return $this->getField('id'); } public function getAlbum(): ?GraphAlbum { return $this->getField('album'); } public function getAltText(): ?string { return $this->getField('alt_text'); } public function getAltTextCustom(): ?string { return $this->getField('alt_text_custom'); } public function getBackDatedTime(): ?DateTime { return $this->getField('backdated_time'); } public function canBackDate(): ?bool { return $this->getField('can_backdate'); } public function canDelete(): ?bool { return $this->getField('can_delete'); } public function canTag(): ?bool { return $this->getField('can_tag'); } public function getCreatedTime(): ?DateTime { return $this->getField('created_time'); } public function getEvent(): ?GraphEvent { return $this->getField('event'); } public function getHeight(): ?int { return $this->getField('height'); } public function getWidth(): ?int { return $this->getField('width'); } public function getIcon(): ?string { return $this->getField('icon'); } public function getLink(): ?string { return $this->getField('link'); } public function getName(): ?string { return $this->getField('name'); } public function getPageStoryId(): ?string { return $this->getField('page_story_id'); } public function getPlace(): ?GraphPlace { return $this->getField('place'); } public function getUpdatedTime(): ?DateTime { return $this->getField('updated_time'); } /** * @return ?GraphPlatformImageSource[] */ public function getWebPImages(): ?array { return $this->getField('webp_images'); } /** * @return ?GraphPlatformImageSource[] */ public function getImages(): ?array { return $this->getField('images'); } }PKCA#]��)�s s bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphPage.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; /** * Class GraphPage * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/page/ */ class GraphPage extends GraphNode { protected static array $graphObjectMap = [ 'featured_video' => GraphVideo::class, 'engagement' => GraphEngagement::class, 'contact_address' => GraphMailingAddress::class, 'best_page' => GraphPage::class, 'location' => GraphLocation::class, 'cover' => GraphCoverPhoto::class ]; public function getId(): ?string { return $this->getField('id'); } public function getAbout(): ?string { return $this->getField('about'); } public function getCategory(): ?string { return $this->getField('category'); } public function getDescription(): ?string { return $this->getField('description'); } public function getDescriptionHtml(): ?string { return $this->getField('description_html'); } /** * @return ?string[] */ public function getEmails(): ?array { return $this->getField('emails'); } public function getEngagement(): ?GraphEngagement { return $this->getField('engagement'); } public function getName(): ?string { return $this->getField('name'); } public function getAppId(): ?string { return $this->getField('app_id'); } public function getBestPage(): ?GraphPage { return $this->getField('best_page'); } public function getLocation(): ?GraphLocation { return $this->getField('location'); } public function getCover(): ?GraphCoverPhoto { return $this->getField('cover'); } public function getAccessToken(): ?string { return $this->getField('access_token'); } public function getAffiliation(): ?string { return $this->getField('affiliation'); } public function getFanCount(): ?int { return $this->getField('fan_count'); } public function getFeaturedVideo(): ?GraphVideo { return $this->getField('featured_video'); } public function getContactAddress(): ?GraphMailingAddress { return $this->getField('contact_address'); } } PKCA#]�2����icomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphVideoFormat.phpnu�[���<?php namespace Facebook\GraphNodes; /** * @link https://developers.facebook.com/docs/graph-api/reference/video-format/ */ class GraphVideoFormat extends GraphNode { public function getEmbedHtml(): ?string { return $this->getField('embed_html'); } public function getFilter(): ?string { return $this->getField('filter'); } public function getHeight(): ?int { return $this->getField('height'); } public function getWidth(): ?int { return $this->getField('width'); } public function getPicture(): ?string { return $this->getField('picture'); } }PKCA#]��x,,ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/GraphNodes/GraphGroup.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\GraphNodes; use DateTime; /** * Class GraphGroup * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/group */ class GraphGroup extends GraphNode { /** * @var array Maps object key names to GraphNode types. */ protected static array $graphObjectMap = [ 'cover' => GraphCoverPhoto::class ]; public function getId(): ?string { return $this->getField('id'); } public function getCover(): ?GraphCoverPhoto { return $this->getField('cover'); } public function getDescription(): ?string { return $this->getField('description'); } public function getEmail(): ?string { return $this->getField('email'); } public function getIcon(): ?string { return $this->getField('icon'); } public function getMemberCount(): ?int { return $this->getField('member_count'); } public function getMemberRequestCount(): ?int { return $this->getField('member_request_count'); } public function getName(): ?string { return $this->getField('name'); } /** * @deprecated Deprecated in v9.0. Probably does not work anymore. */ public function getOwner(): ?GraphNode { return $this->getField('owner'); } public function getParent(): ?GraphNode { return $this->getField('parent'); } public function getPermissions(): ?string { return $this->getField('permissions'); } public function getPrivacy(): ?string { return $this->getField('privacy'); } public function getUpdatedTime(): ?DateTime { return $this->getField('updated_time'); } } PKCA#]���� � lcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/HttpClientsFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use GuzzleHttp\Client; use InvalidArgumentException; use Exception; class HttpClientsFactory { private function __construct() { // a factory constructor should never be invoked } /** * HTTP client generation. * * @param FacebookHttpClientInterface|Client|string|null $handler - mixed type since we don't know if Guzzle is installed. * * @throws Exception If the cURL extension or the Guzzle client aren't available (if required). * @throws InvalidArgumentException If the http client handler isn't "curl", "stream", "guzzle", or an instance of Facebook\HttpClients\FacebookHttpClientInterface. * * @return FacebookHttpClientInterface */ public static function createHttpClient(mixed $handler): FacebookHttpClientInterface { if ($handler === null) { return self::detectDefaultClient(); } if ($handler instanceof FacebookHttpClientInterface) { return $handler; } if ('stream' === $handler) { return new FacebookStreamHttpClient(); } if ('curl' === $handler) { if (!extension_loaded('curl')) { throw new Exception('The cURL extension must be loaded in order to use the "curl" handler.'); } return new FacebookCurlHttpClient(); } if ('guzzle' === $handler && !class_exists('GuzzleHttp\Client')) { throw new Exception('The Guzzle HTTP client must be included in order to use the "guzzle" handler.'); } if ($handler instanceof Client) { return new FacebookGuzzleHttpClient($handler); } if ('guzzle' === $handler) { return new FacebookGuzzleHttpClient(); } throw new InvalidArgumentException('The http client handler must be set to "curl", "stream", "guzzle", be an instance of GuzzleHttp\Client or an instance of Facebook\HttpClients\FacebookHttpClientInterface'); } /** * Detect default HTTP client. */ private static function detectDefaultClient(): FacebookHttpClientInterface { if (class_exists('GuzzleHttp\Client')) { return new FacebookGuzzleHttpClient(); } if (extension_loaded('curl')) { return new FacebookCurlHttpClient(); } return new FacebookStreamHttpClient(); } } PKCA#]3Y�LLfcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookCurl.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; /** * Class FacebookCurl * * Abstraction for the procedural curl elements so that curl can be mocked and the implementation can be tested. * * @package Facebook */ class FacebookCurl { /** * @var resource Curl resource instance */ protected $curl; /** * Make a new curl reference instance */ public function init() { $this->curl = curl_init(); } /** * Set a curl option */ public function setopt(int $key, mixed $value): void { curl_setopt($this->curl, $key, $value); } /** * Set an array of options to a curl resource */ public function setoptArray(array $options): void { curl_setopt_array($this->curl, $options); } /** * Send a curl request */ public function exec(): bool|string { return curl_exec($this->curl); } /** * Return the curl error number */ public function errno(): ?int { // For some reason, adding int type to return here causes the mock testing framework to not work and return null. return curl_errno($this->curl); } /** * Return the curl error message */ public function error(): string { return curl_error($this->curl); } /** * Get info from a curl reference */ public function getinfo(?int $type): mixed { return curl_getinfo($this->curl, $type); } /** * Get the currently installed curl version * * @return array|false */ public function version(): array|false { return curl_version(); } /** * Close the resource connection to curl */ public function close(): void { curl_close($this->curl); } } PKCA#]��1ǀ�ucomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookHttpClientInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Exceptions\FacebookSDKException; use Facebook\Http\GraphRawResponse; /** * Interface FacebookHttpClientInterface * * @package Facebook */ interface FacebookHttpClientInterface { /** * Sends a request to the server and returns the raw response. * * @param string $url The endpoint to send the request to. * @param string $method The request method. * @param string|null $body The body of the request. * @param array $headers The request headers. * @param int $timeOut The timeout in seconds for the request. * * @return GraphRawResponse Raw response from the server. * * @throws FacebookSDKException */ public function send(string $url, string $method, ?string $body, array $headers, int $timeOut): GraphRawResponse; } PKCA#]�ڽ�55rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookStreamHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; class FacebookStreamHttpClient implements FacebookHttpClientInterface { /** * @var FacebookStream Procedural stream wrapper as object. */ protected FacebookStream $facebookStream; /** * @param FacebookStream|null $facebookStream Procedural stream wrapper as object. */ public function __construct(?FacebookStream $facebookStream = null) { $this->facebookStream = $facebookStream ?: new FacebookStream(); } /** * @inheritdoc */ public function send(string $url, string $method, ?string $body, array $headers, int $timeOut): GraphRawResponse { $options = [ 'http' => [ 'method' => $method, 'header' => $this->compileHeader($headers), 'content' => $body, 'timeout' => $timeOut, 'ignore_errors' => true ], ]; $this->facebookStream->streamContextCreate($options); $rawBody = $this->facebookStream->fileGetContents($url); $rawHeaders = $this->facebookStream->getResponseHeaders(); if ($rawBody === false || empty($rawHeaders)) { throw new FacebookSDKException('Stream returned an empty response', 660); } $rawHeaders = implode("\r\n", $rawHeaders); return new GraphRawResponse($rawHeaders, $rawBody); } /** * Formats the headers for use in the stream wrapper. */ public function compileHeader(array $headers): string { $header = []; foreach ($headers as $k => $v) { $header[] = $k . ': ' . $v; } return implode("\r\n", $header); } } PKCA#]y�M+J J hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookStream.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; /** * Class FacebookStream * * Abstraction for the procedural stream elements so that the functions can be * mocked and the implementation can be tested. * * @package Facebook */ class FacebookStream { /** * @var resource Context stream resource instance */ protected $stream; /** * @var array Response headers from the stream wrapper */ protected array $responseHeaders = []; /** * Make a new context stream reference instance */ public function streamContextCreate(array $options): void { $this->stream = stream_context_create($options); } /** * The response headers from the stream wrapper * For some reason, this must be nullable or it fails when mocked in test. * This array is never null. */ public function getResponseHeaders(): ?array { return $this->responseHeaders; } /** * Send a stream wrapped request * * @param string $url * * @return string|false */ public function fileGetContents(string $url): string|false { $rawResponse = file_get_contents($url, false, $this->stream); $this->responseHeaders = $http_response_header ?: []; return $rawResponse; } } PKCA#]�c��rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookGuzzleHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; use GuzzleHttp\Client; use GuzzleHttp\Exception\GuzzleException; use Psr\Http\Message\ResponseInterface; class FacebookGuzzleHttpClient implements FacebookHttpClientInterface { /** * @var Client The Guzzle client. */ protected Client $guzzleClient; /** * @param Client|null $guzzleClient The Guzzle client. */ public function __construct(?Client $guzzleClient = null) { $this->guzzleClient = $guzzleClient ?: new Client(); } /** * @inheritdoc */ public function send(string $url, string $method, ?string $body, array $headers, int $timeOut): GraphRawResponse { $options = [ 'headers' => $headers, 'timeout' => $timeOut, 'http_errors' => false, 'connect_timeout' => 10, ]; if ($body) { $options['body'] = $body; } try { $rawResponse = $this->guzzleClient->request($method, $url, $options); return new GraphRawResponse( $this->getHeadersAsString($rawResponse), $rawResponse->getBody(), $rawResponse->getStatusCode() ); } catch (GuzzleException $e) { throw new FacebookSDKException($e->getMessage(), $e->getCode()); } } /** * Returns the Guzzle array of headers as a string. * * @param ResponseInterface $response The Guzzle response. */ public function getHeadersAsString(ResponseInterface $response): string { $headers = $response->getHeaders(); $rawHeaders = []; foreach ($headers as $name => $values) { $rawHeaders[] = $name . ": " . implode(", ", $values); } return implode("\r\n", $rawHeaders); } } PKCA#]�G�1::pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/HttpClients/FacebookCurlHttpClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\HttpClients; use Facebook\Http\GraphRawResponse; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookCurlHttpClient * * @package Facebook */ class FacebookCurlHttpClient implements FacebookHttpClientInterface { /** * @var string|boolean The raw response from the server */ protected string|bool $rawResponse; /** * @var FacebookCurl Procedural curl as object */ protected FacebookCurl $facebookCurl; /** * @param FacebookCurl|null $facebookCurl Procedural curl as object */ public function __construct(?FacebookCurl $facebookCurl = null) { $this->facebookCurl = $facebookCurl ?: new FacebookCurl(); } /** * @inheritdoc */ public function send(string $url, string $method, ?string $body, array $headers, int $timeOut): GraphRawResponse { $this->openConnection($url, $method, $body, $headers, $timeOut); $this->sendRequest(); if ($curlErrorCode = $this->facebookCurl->errno()) { throw new FacebookSDKException($this->facebookCurl->error(), $curlErrorCode); } // Separate the raw headers from the raw body list($rawHeaders, $rawBody) = $this->extractResponseHeadersAndBody(); $this->closeConnection(); return new GraphRawResponse($rawHeaders, $rawBody); } /** * Opens a new curl connection. * * @param string $url The endpoint to send the request to. * @param string $method The request method. * @param string|null $body The body of the request. * @param array $headers The request headers. * @param int $timeOut The timeout in seconds for the request. */ public function openConnection(string $url, string $method, ?string $body, array $headers, int $timeOut) { $options = [ CURLOPT_CUSTOMREQUEST => $method, CURLOPT_HTTPHEADER => $this->compileRequestHeaders($headers), CURLOPT_URL => $url, CURLOPT_CONNECTTIMEOUT => 10, CURLOPT_TIMEOUT => $timeOut, CURLOPT_RETURNTRANSFER => true, // Return response as string CURLOPT_HEADER => true, // Enable header processing ]; if ($method !== "GET" && $body) { $options[CURLOPT_POSTFIELDS] = $body; } $this->facebookCurl->init(); $this->facebookCurl->setoptArray($options); } /** * Closes an existing curl connection */ public function closeConnection(): void { $this->facebookCurl->close(); } /** * Send the request and get the raw response from curl */ public function sendRequest(): void { $this->rawResponse = $this->facebookCurl->exec(); } /** * Compiles the request headers into a curl-friendly format. * * @param array $headers The request headers. * * @return array */ public function compileRequestHeaders(array $headers): array { $return = []; foreach ($headers as $key => $value) { $return[] = $key . ': ' . $value; } return $return; } /** * Extracts the headers and the body into a two-part array * * @return array */ public function extractResponseHeadersAndBody(): array { $parts = explode("\r\n\r\n", $this->rawResponse); $rawBody = array_pop($parts); $rawHeaders = implode("\r\n\r\n", $parts); return [trim($rawHeaders), trim($rawBody)]; } } PKCA#]au+kk�components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use InvalidArgumentException; /** * Interface * * @package Facebook */ interface PseudoRandomStringGeneratorInterface { /** * Get a cryptographically secure pseudo-random string of arbitrary length. * * @see http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers/ * * @param int $length The length of the string to return. * * @return string * * @throws InvalidArgumentException */ public function getPseudoRandomString(int $length): string; } PKCA#]��]""�components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use InvalidArgumentException; class PseudoRandomStringGeneratorFactory { private function __construct() { // a factory constructor should never be invoked } /** * Pseudo random string generator creation. * * @param string|PseudoRandomStringGeneratorInterface|null $generator The pseudo random string generator must be set to "random_bytes", "openssl", or "urandom", or be an instance of Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface. * @throws InvalidArgumentException */ public static function createPseudoRandomStringGenerator(string|null|PseudoRandomStringGeneratorInterface $generator): PseudoRandomStringGeneratorInterface { if (!$generator) { return self::detectDefaultPseudoRandomStringGenerator(); } if ($generator instanceof PseudoRandomStringGeneratorInterface) { return $generator; } if ('random_bytes' === $generator) { return new RandomBytesPseudoRandomStringGenerator(); } if ('openssl' === $generator) { return new OpenSslPseudoRandomStringGenerator(); } if ('urandom' === $generator) { return new UrandomPseudoRandomStringGenerator(); } throw new InvalidArgumentException('The pseudo random string generator must be set to "random_bytes", "openssl", "urandom" or be an instance of ' . PseudoRandomStringGeneratorInterface::class); } /** * Detects which pseudo-random string generator to use. * * @return PseudoRandomStringGeneratorInterface * @throws InvalidArgumentException If unable to detect a cryptographically secure pseudo-random string generator. * */ private static function detectDefaultPseudoRandomStringGenerator(): PseudoRandomStringGeneratorInterface { // Check for PHP 7's CSPRNG first to keep mcrypt deprecation messages from appearing in PHP 7.1. if (function_exists('random_bytes')) { return new RandomBytesPseudoRandomStringGenerator(); } if (function_exists('openssl_random_pseudo_bytes')) { return new OpenSslPseudoRandomStringGenerator(); } if (!ini_get('open_basedir') && is_readable('/dev/urandom')) { return new UrandomPseudoRandomStringGenerator(); } throw new InvalidArgumentException('Unable to detect a cryptographically secure pseudo-random string generator.'); } } PKCA#]��c;;�components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/PseudoRandomStringGeneratorTrait.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use function bin2hex; use function substr; trait PseudoRandomStringGeneratorTrait { /** * Converts binary data to hexadecimal of arbitrary length. * * @param string $binaryData The binary data to convert to hex. * @param int $length The length of the string to return. * * @return string */ public function binToHex(string $binaryData, int $length): string { return substr(bin2hex($binaryData), 0, $length); } } PKCA#]��|p# # �components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/OpenSslPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class OpenSslPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ private const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from openssl_random_pseudo_bytes(): '; /** * @throws FacebookSDKException */ public function __construct() { if (!function_exists('openssl_random_pseudo_bytes')) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'The function openssl_random_pseudo_bytes() does not exist.'); } } /** * @inheritdoc * @throws FacebookSDKException */ public function getPseudoRandomString(int $length): string { $wasCryptographicallyStrong = false; $binaryString = openssl_random_pseudo_bytes($length, $wasCryptographicallyStrong); if (!$binaryString) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'openssl_random_pseudo_bytes() returned an unknown error.'); } if (!$wasCryptographicallyStrong) { throw new FacebookSDKException(static::ERROR_MESSAGE . 'openssl_random_pseudo_bytes() returned a pseudo-random string but it was not cryptographically secure and cannot be used.'); } return $this->binToHex($binaryString, $length); } } PKCA#]$~Ң���components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/RandomBytesPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class RandomBytesPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from random_bytes(): '; /** * @throws FacebookSDKException */ public function __construct() { if (!function_exists('random_bytes')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'The function random_bytes() does not exist.' ); } } /** * @inheritdoc */ public function getPseudoRandomString(int $length): string { return $this->binToHex(random_bytes($length), $length); } } PKCA#]T�~DD�components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PseudoRandomString/UrandomPseudoRandomStringGenerator.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PseudoRandomString; use Facebook\Exceptions\FacebookSDKException; class UrandomPseudoRandomStringGenerator implements PseudoRandomStringGeneratorInterface { use PseudoRandomStringGeneratorTrait; /** * @const string The error message when generating the string fails. */ const ERROR_MESSAGE = 'Unable to generate a cryptographically secure pseudo-random string from /dev/urandom: '; /** * @throws FacebookSDKException */ public function __construct() { if (ini_get('open_basedir')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'There is an open_basedir constraint that prevents access to /dev/urandom.' ); } if (!is_readable('/dev/urandom')) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Unable to read from /dev/urandom.' ); } } /** * @inheritdoc * @throws FacebookSDKException */ public function getPseudoRandomString(int $length): string { $stream = fopen('/dev/urandom', 'rb'); if (!is_resource($stream)) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Unable to open stream to /dev/urandom.' ); } if (!defined('HHVM_VERSION')) { stream_set_read_buffer($stream, 0); } $binaryString = fread($stream, $length); fclose($stream); if (!$binaryString) { throw new FacebookSDKException( static::ERROR_MESSAGE . 'Stream to /dev/urandom returned no data.' ); } return $this->binToHex($binaryString, $length); } } PKCA#]La#a#pcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Authentication/AccessTokenMetadata.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; use DateTime; use Facebook\Exceptions\FacebookSDKException; /** * Class AccessTokenMetadata * * Represents metadata from an access token. * * @package Facebook * @link https://developers.facebook.com/docs/graph-api/reference/debug_token */ class AccessTokenMetadata { /** * The access token metadata. * * @var array */ protected array $metadata = []; /** * Properties that should be cast as DateTime objects. * * @var array */ protected static array $dateProperties = ['expires_at', 'issued_at']; /** * @param array $metadata * * @throws FacebookSDKException */ public function __construct(array $metadata) { if (!isset($metadata['data'])) { throw new FacebookSDKException('Unexpected debug token response data.', 401); } $this->metadata = $metadata['data']; $this->castTimestampsToDateTime(); } /** * Returns a value from the metadata. * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. * * @return mixed */ public function getField(string $field, mixed $default = null): mixed { if (isset($this->metadata[$field])) { return $this->metadata[$field]; } return $default; } /** * Returns a value from a child property in the metadata. * * @param string $parentField The parent property. * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. */ public function getChildProperty(string $parentField, string $field, mixed $default = null): mixed { if (!isset($this->metadata[$parentField])) { return $default; } if (!isset($this->metadata[$parentField][$field])) { return $default; } return $this->metadata[$parentField][$field]; } /** * Returns a value from the error metadata. * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. */ public function getErrorProperty(string $field, mixed $default = null): mixed { return $this->getChildProperty('error', $field, $default); } /** * Returns a value from the "metadata" metadata. *Brain explodes* * * @param string $field The property to retrieve. * @param mixed $default The default to return if the property doesn't exist. */ public function getMetadataProperty(string $field, mixed $default = null): mixed { return $this->getChildProperty('metadata', $field, $default); } /** * The ID of the application this access token is for. */ public function getAppId(): ?string { return $this->getField('app_id'); } /** * Name of the application this access token is for. */ public function getApplication(): ?string { return $this->getField('application'); } /** * Any error that a request to the graph api * would return due to the access token. */ public function isError(): bool { return $this->getField('error') !== null; } /** * The error code for the error. * * @return int|null */ public function getErrorCode(): ?int { return $this->getErrorProperty('code'); } /** * The error message for the error. */ public function getErrorMessage(): ?string { return $this->getErrorProperty('message'); } /** * The error subcode for the error. */ public function getErrorSubcode(): ?int { return $this->getErrorProperty('subcode'); } /** * DateTime when this access token expires. */ public function getExpiresAt(): ?DateTime { return $this->getField('expires_at'); } /** * Whether the access token is still valid or not. */ public function getIsValid(): ?bool { return $this->getField('is_valid'); } /** * DateTime when this access token was issued. * * Note that the issued_at field is not returned * for short-lived access tokens. * * @see https://developers.facebook.com/docs/facebook-login/access-tokens#debug */ public function getIssuedAt(): ?DateTime { return $this->getField('issued_at'); } /** * General metadata associated with the access token. * Can contain data like 'sso', 'auth_type', 'auth_nonce'. */ public function getMetadata(): ?array { return $this->getField('metadata'); } /** * The 'sso' child property from the 'metadata' parent property. */ public function getSso(): ?string { return $this->getMetadataProperty('sso'); } /** * The 'auth_type' child property from the 'metadata' parent property. */ public function getAuthType(): ?string { return $this->getMetadataProperty('auth_type'); } /** * The 'auth_nonce' child property from the 'metadata' parent property. */ public function getAuthNonce(): ?string { return $this->getMetadataProperty('auth_nonce'); } /** * For impersonated access tokens, the ID of * the page this token contains. */ public function getProfileId(): ?string { return $this->getField('profile_id'); } /** * List of permissions that the user has granted for * the app in this access token. */ public function getScopes(): array { return $this->getField('scopes'); } /** * The ID of the user this access token is for. */ public function getUserId(): ?string { return $this->getField('user_id'); } /** * Ensures the app ID from the access token * metadata is what we expect. * * @throws FacebookSDKException */ public function validateAppId(string $appId): void { if ($this->getAppId() !== $appId) { throw new FacebookSDKException('Access token metadata contains unexpected app ID.', 401); } } /** * Ensures the user ID from the access token * metadata is what we expect. * * @throws FacebookSDKException */ public function validateUserId(string $userId): void { if ($this->getUserId() !== $userId) { throw new FacebookSDKException('Access token metadata contains unexpected user ID.', 401); } } /** * Ensures the access token has not expired yet. * * @throws FacebookSDKException */ public function validateExpiration(): void { if (!$this->getExpiresAt() instanceof DateTime) { return; } if ($this->getExpiresAt()->getTimestamp() < time()) { throw new FacebookSDKException('Inspection of access token metadata shows that the access token has expired.', 401); } } /** * Converts a unix timestamp into a DateTime entity. */ private function convertTimestampToDateTime(int|string $timestamp): DateTime { $dt = new DateTime(); $dt->setTimestamp($timestamp); return $dt; } /** * Casts the unix timestamps as DateTime entities. */ private function castTimestampsToDateTime(): void { foreach (static::$dateProperties as $key) { if (isset($this->metadata[$key]) && is_numeric($this->metadata[$key]) && $this->metadata[$key]) { $this->metadata[$key] = $this->convertTimestampToDateTime($this->metadata[$key]); } else { $this->metadata[$key] = null; } } } } PKCA#]�l��!�!icomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Authentication/OAuth2Client.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; use Facebook\Facebook; use Facebook\FacebookApp; use Facebook\FacebookRequest; use Facebook\FacebookResponse; use Facebook\FacebookClient; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookSDKException; /** * Class OAuth2Client * * @package Facebook */ class OAuth2Client { /** * @const string The base authorization URL. */ const BASE_AUTHORIZATION_URL = 'https://www.facebook.com'; /** * The FacebookApp entity. * * @var FacebookApp */ protected FacebookApp $app; /** * The Facebook client. * * @var FacebookClient */ protected FacebookClient $client; /** * The version of the Graph API to use. * * @var string */ protected string $graphVersion; /** * The last request sent to Graph. * * @var FacebookRequest|null */ protected ?FacebookRequest $lastRequest; /** * @param FacebookApp $app * @param FacebookClient $client * @param string|null $graphVersion The version of the Graph API to use. */ public function __construct(FacebookApp $app, FacebookClient $client, ?string $graphVersion = null) { $this->app = $app; $this->client = $client; $this->graphVersion = $graphVersion ?: Facebook::DEFAULT_GRAPH_VERSION; } /** * Returns the last FacebookRequest that was sent. * Useful for debugging and testing. * * @return FacebookRequest|null */ public function getLastRequest(): ?FacebookRequest { return $this->lastRequest; } /** * Get the metadata associated with the access token. * * @param AccessToken|string $accessToken The access token to debug. * * @return AccessTokenMetadata * @throws FacebookSDKException */ public function debugToken(AccessToken|string $accessToken): AccessTokenMetadata { $accessToken = $accessToken instanceof AccessToken ? $accessToken->getValue() : $accessToken; $params = ['input_token' => $accessToken]; $this->lastRequest = new FacebookRequest( $this->app, $this->app->getAccessToken(), 'GET', '/debug_token', $params, null, $this->graphVersion ); $response = $this->client->sendRequest($this->lastRequest); $metadata = $response->getDecodedBody(); return new AccessTokenMetadata($metadata); } /** * Generates an authorization URL to begin the process of authenticating a user. * * @param string $redirectUrl The callback URL to redirect to. * @param string $state The CSPRNG-generated CSRF value. * @param array $scope An array of permissions to request. * @param array $params An array of parameters to generate URL. * @param string $separator The separator to use in http_build_query(). */ public function getAuthorizationUrl(string $redirectUrl, string $state, array $scope = [], array $params = [], string $separator = '&'): string { $params += [ 'client_id' => $this->app->getId(), 'state' => $state, 'response_type' => 'code', 'sdk' => 'php-sdk-' . Facebook::VERSION, 'redirect_uri' => $redirectUrl, 'scope' => implode(',', $scope) ]; return static::BASE_AUTHORIZATION_URL . '/' . $this->graphVersion . '/dialog/oauth?' . http_build_query($params, '', $separator); } /** * Get a valid access token from a code. * * @throws FacebookSDKException */ public function getAccessTokenFromCode(string $code, string $redirectUri = ''): AccessToken { $params = [ 'code' => $code, 'redirect_uri' => $redirectUri, ]; return $this->requestAnAccessToken($params); } /** * Exchanges a short-lived access token with a long-lived access token. * * @throws FacebookSDKException */ public function getLongLivedAccessToken(AccessToken|string $accessToken): AccessToken { $accessToken = $accessToken instanceof AccessToken ? $accessToken->getValue() : $accessToken; $params = [ 'grant_type' => 'fb_exchange_token', 'fb_exchange_token' => $accessToken, ]; return $this->requestAnAccessToken($params); } /** * Get a valid code from an access token. * * @throws FacebookSDKException */ public function getCodeFromLongLivedAccessToken(AccessToken|string $accessToken, string $redirectUri = ''): string { $params = [ 'redirect_uri' => $redirectUri, ]; $response = $this->sendRequestWithClientParams('/oauth/client_code', $params, $accessToken); $data = $response->getDecodedBody(); if (!isset($data['code'])) { throw new FacebookSDKException('Code was not returned from Graph.', 401); } return $data['code']; } /** * Send a request to the OAuth endpoint. * * @throws FacebookSDKException */ protected function requestAnAccessToken(array $params): AccessToken { $response = $this->sendRequestWithClientParams('/oauth/access_token', $params); $data = $response->getDecodedBody(); if (!isset($data['access_token'])) { throw new FacebookSDKException('Access token was not returned from Graph.', 401); } // Graph returns two different key names for expiration time // on the same endpoint. Doh! :/ $expiresAt = 0; if (isset($data['expires'])) { // For exchanging a short lived token with a long lived token. // The expiration time in seconds will be returned as "expires". $expiresAt = time() + $data['expires']; } elseif (isset($data['expires_in'])) { // For exchanging a code for a short lived access token. // The expiration time in seconds will be returned as "expires_in". // See: https://developers.facebook.com/docs/facebook-login/access-tokens#long-via-code $expiresAt = time() + $data['expires_in']; } return new AccessToken($data['access_token'], $expiresAt); } /** * Send a request to Graph with an app access token. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * * @return FacebookResponse * * @throws FacebookResponseException * @throws FacebookSDKException */ protected function sendRequestWithClientParams(string $endpoint, array $params, AccessToken|string|null $accessToken = null): FacebookResponse { $params += $this->getClientParams(); $accessToken = $accessToken ?: $this->app->getAccessToken(); $this->lastRequest = new FacebookRequest( $this->app, $accessToken, 'GET', $endpoint, $params, null, $this->graphVersion ); return $this->client->sendRequest($this->lastRequest); } /** * Returns the client_* params for OAuth requests. */ protected function getClientParams(): array { return [ 'client_id' => $this->app->getId(), 'client_secret' => $this->app->getSecret(), ]; } } PKCA#]m[z� � hcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Authentication/AccessToken.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\Authentication; use DateTime; /** * Class AccessToken * * @package Facebook */ class AccessToken { /** * The access token value. * * @var string */ protected string $value = ''; /** * Date when token expires. * * @var DateTime|null */ protected ?DateTime $expiresAt = null; /** * Create a new access token entity. */ public function __construct(string $accessToken, int $expiresAt = 0) { $this->value = $accessToken; if ($expiresAt) { $this->setExpiresAtFromTimeStamp($expiresAt); } } /** * Generate an app secret proof to sign a request to Graph. * * @param string $appSecret The app secret. * * @return string */ public function getAppSecretProof(string $appSecret): string { return hash_hmac('sha256', $this->value, $appSecret); } /** * Getter for expiresAt. * * @return DateTime|null */ public function getExpiresAt(): ?DateTime { return $this->expiresAt; } /** * Determines whether or not this is an app access token. */ public function isAppAccessToken(): bool { return str_contains($this->value, '|'); } /** * Determines whether or not this is a long-lived token. * * @return bool */ public function isLongLived(): bool { if ($this->expiresAt) { return $this->expiresAt->getTimestamp() > time() + (60 * 60 * 2); } return $this->isAppAccessToken(); } /** * Checks the expiration of the access token. */ public function isExpired(): bool { if ($this->getExpiresAt() instanceof DateTime) { return $this->getExpiresAt()->getTimestamp() < time(); } return false; } /** * Returns the access token as a string. */ public function getValue(): string { return $this->value; } /** * Returns the access token as a string. * * @return string */ public function __toString() { return $this->getValue(); } protected function setExpiresAtFromTimeStamp(int $timeStamp): void { $dt = new DateTime(); $dt->setTimestamp($timeStamp); $this->expiresAt = $dt; } } PKCA#]){����ccomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookBatchResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use ArrayIterator; use IteratorAggregate; use ArrayAccess; /** * Class FacebookBatchResponse * * @package Facebook */ class FacebookBatchResponse extends FacebookResponse implements IteratorAggregate, ArrayAccess { /** * @var FacebookBatchRequest The original entity that made the batch request. */ protected FacebookBatchRequest $batchRequest; /** * @var array An array of FacebookResponse entities. */ protected array $responses = []; /** * Creates a new Response entity. * * @param FacebookBatchRequest $batchRequest * @param FacebookResponse $response */ public function __construct(FacebookBatchRequest $batchRequest, FacebookResponse $response) { $this->batchRequest = $batchRequest; $request = $response->getRequest(); $body = $response->getBody(); $httpStatusCode = $response->getHttpStatusCode(); $headers = $response->getHeaders(); parent::__construct($request, $body, $httpStatusCode, $headers); $responses = $response->getDecodedBody(); $this->setResponses($responses); } /** * Returns an array of FacebookResponse entities. */ public function getResponses(): array { return $this->responses; } /** * The main batch response will be an array of requests so * we need to iterate over all the responses. */ public function setResponses(array $responses): void { $this->responses = []; foreach ($responses as $key => $graphResponse) { $this->addResponse($key, $graphResponse); } } /** * Add a response to the list. */ public function addResponse(int $key, ?array $response): void { $originalRequestName = isset($this->batchRequest[$key]['name']) ? $this->batchRequest[$key]['name'] : $key; $originalRequest = isset($this->batchRequest[$key]['request']) ? $this->batchRequest[$key]['request'] : null; $httpResponseBody = $response['body'] ?? null; $httpResponseCode = $response['code'] ?? null; $httpResponseHeaders = isset($response['headers']) ? array_column($response['headers'], 'value', 'name') : []; $this->responses[$originalRequestName] = new FacebookResponse( $originalRequest, $httpResponseBody, $httpResponseCode, $httpResponseHeaders ); } /** * @inheritdoc */ public function getIterator(): ArrayIterator { return new ArrayIterator($this->responses); } /** * @inheritdoc */ public function offsetSet($offset, $value): void { $this->addResponse($offset, $value); } /** * @inheritdoc */ public function offsetExists($offset): bool { return isset($this->responses[$offset]); } /** * @inheritdoc */ public function offsetUnset($offset): void { unset($this->responses[$offset]); } /** * @inheritdoc */ public function offsetGet($offset): mixed { return $this->responses[$offset] ?? null; } } PKCA#]�ڈ��components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PersistentData/FacebookMemoryPersistentDataHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; /** * Class FacebookMemoryPersistentDataHandler * * @package Facebook */ class FacebookMemoryPersistentDataHandler implements PersistentDataInterface { /** * @var array The session data to keep in memory. */ protected array $sessionData = []; /** * @inheritdoc */ public function get(mixed $key): mixed { return $this->sessionData[$key] ?? null; } /** * @inheritdoc */ public function set(mixed $key, mixed $value): void { $this->sessionData[$key] = $value; } } PKCA#]XHm���components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PersistentData/FacebookSessionPersistentDataHandler.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookSessionPersistentDataHandler * * @package Facebook */ class FacebookSessionPersistentDataHandler implements PersistentDataInterface { /** * @var string Prefix to use for session variables. */ protected string $sessionPrefix = 'FBRLH_'; /** * Init the session handler. * * @throws FacebookSDKException */ public function __construct(bool $enableSessionCheck = true) { if ($enableSessionCheck && session_status() !== PHP_SESSION_ACTIVE) { throw new FacebookSDKException( 'Sessions are not active. Please make sure session_start() is at the top of your script.', 720 ); } } /** * @inheritdoc */ public function get(mixed $key): mixed { if (isset($_SESSION[$this->sessionPrefix . $key])) { return $_SESSION[$this->sessionPrefix . $key]; } return null; } /** * @inheritdoc */ public function set(mixed $key, mixed $value): void { $_SESSION[$this->sessionPrefix . $key] = $value; } } PKCA#]�5�D++tcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PersistentData/PersistentDataInterface.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; /** * Interface PersistentDataInterface * * @package Facebook */ interface PersistentDataInterface { /** * Get a value from a persistent data store. * * @param string $key * * @return mixed */ public function get(mixed $key): mixed; /** * Set a value in the persistent data store. * * @param string $key * @param mixed $value */ public function set(mixed $key, mixed $value): void; } PKCA#]�<ج � rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/PersistentData/PersistentDataFactory.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\PersistentData; use InvalidArgumentException; class PersistentDataFactory { private function __construct() { // a factory constructor should never be invoked } /** * PersistentData generation. * * @param PersistentDataInterface|string|null $handler * * @return PersistentDataInterface * @throws InvalidArgumentException If the persistent data handler isn't "session", "memory", or an instance of Facebook\PersistentData\PersistentDataInterface. * */ public static function createPersistentDataHandler(PersistentDataInterface|string|null $handler): PersistentDataInterface { if (!$handler) { return session_status() === PHP_SESSION_ACTIVE ? new FacebookSessionPersistentDataHandler() : new FacebookMemoryPersistentDataHandler(); } if ($handler instanceof PersistentDataInterface) { return $handler; } if ('session' === $handler) { return new FacebookSessionPersistentDataHandler(); } if ('memory' === $handler) { return new FacebookMemoryPersistentDataHandler(); } throw new InvalidArgumentException('The persistent data handler must be set to "session", "memory", or be an instance of Facebook\PersistentData\PersistentDataInterface'); } } PKCA#]G]�Ic%c%^components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookResponse.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\GraphNodes\GraphAlbum; use Facebook\GraphNodes\GraphEdge; use Facebook\GraphNodes\GraphEvent; use Facebook\GraphNodes\GraphGroup; use Facebook\GraphNodes\GraphNode; use Facebook\GraphNodes\GraphNodeFactory; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookSDKException; use Facebook\GraphNodes\GraphPage; use Facebook\GraphNodes\GraphSessionInfo; use Facebook\GraphNodes\GraphUser; /** * Class FacebookResponse * * @package Facebook */ class FacebookResponse { /** * @var int|null The HTTP status code response from Graph. */ protected ?int $httpStatusCode; /** * @var array The headers returned from Graph. */ protected array $headers; /** * @var string|null The raw body of the response from Graph. */ protected ?string $body; /** * @var array|null The decoded body of the Graph response. */ protected ?array $decodedBody = null; /** * @var FacebookRequest The original request that returned this response. */ protected FacebookRequest $request; /** * @var FacebookResponseException|null The exception thrown by this request. */ protected ?FacebookResponseException $thrownException; /** * Creates a new Response entity. */ public function __construct(FacebookRequest $request, ?string $body = null, ?int $httpStatusCode = null, array $headers = []) { $this->request = $request; $this->body = $body; $this->httpStatusCode = $httpStatusCode; $this->headers = $headers; $this->decodeBody(); } /** * Return the original request that returned this response. * * @return FacebookRequest */ public function getRequest(): FacebookRequest { return $this->request; } /** * Return the FacebookApp entity used for this response. */ public function getApp(): ?FacebookApp { return $this->request->getApp(); } /** * Return the access token that was used for this response. */ public function getAccessToken(): ?string { return $this->request->getAccessToken(); } /** * Return the HTTP status code for this response. */ public function getHttpStatusCode(): ?int { return $this->httpStatusCode; } /** * Return the HTTP headers for this response. */ public function getHeaders(): array { return $this->headers; } /** * Return the raw body response. */ public function getBody(): ?string { return $this->body; } /** * Return the decoded body response. */ public function getDecodedBody(): ?array { return $this->decodedBody; } /** * Get the app secret proof that was used for this response. */ public function getAppSecretProof(): ?string { return $this->request->getAppSecretProof(); } /** * Get the ETag associated with the response. */ public function getETag(): ?string { return $this->headers['ETag'] ?? null; } /** * Get the version of Graph that returned this response. */ public function getGraphVersion(): ?string { return $this->headers['Facebook-API-Version'] ?? null; } /** * Returns true if Graph returned an error message. */ public function isError(): bool { return isset($this->decodedBody['error']); } /** * Throws the exception. * * @throws FacebookResponseException */ public function throwException() { throw $this->thrownException; } /** * Instantiates an exception to be thrown later. */ public function makeException(): void { $this->thrownException = FacebookResponseException::create($this); } /** * Returns the exception that was thrown for this request. * * @return FacebookResponseException|null */ public function getThrownException(): ?FacebookResponseException { return $this->thrownException; } /** * Convert the raw response into an array if possible. * * Graph will return 2 types of responses: * - JSON(P) * Most responses from Graph are JSON(P) * - application/x-www-form-urlencoded key/value pairs * Happens on the `/oauth/access_token` endpoint when exchanging * a short-lived access token for a long-lived access token * - And sometimes nothing :/ but that'd be a bug. */ public function decodeBody(): void { if ($this->body === null) { return; } $decoded = json_decode($this->body, true); if ($decoded === null) { $this->decodedBody = []; parse_str($this->body, $this->decodedBody); } elseif (is_numeric($decoded)) { $this->decodedBody = ['id' => $this->decodedBody]; } elseif (!is_array($decoded)) { $this->decodedBody = []; } else { $this->decodedBody = $decoded; } if ($this->isError()) { $this->makeException(); } } /** * Instantiate a new GraphNode from response. * * @param string|null $subclassName The GraphNode subclass to cast to. * * @throws FacebookSDKException */ public function getGraphNode(?string $subclassName = null): GraphNode { $factory = new GraphNodeFactory($this); return $factory->makeGraphNode($subclassName); } /** * Convenience method for creating a GraphAlbum collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphAlbum::class). */ public function getGraphAlbum(): GraphAlbum { $factory = new GraphNodeFactory($this); /** @var GraphAlbum $album */ $album = $factory->makeGraphNode(GraphAlbum::class); return $album; } /** * Convenience method for creating a GraphPage collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphPage::class)). */ public function getGraphPage(): GraphPage { $factory = new GraphNodeFactory($this); /** @var GraphPage $page */ $page = $factory->makeGraphNode(GraphPage::class); return $page; } /** * Convenience method for creating a GraphSessionInfo collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphSessionInfo::class). */ public function getGraphSessionInfo(): GraphSessionInfo { $factory = new GraphNodeFactory($this); /** @var GraphSessionInfo $session */ $session = $factory->makeGraphNode(GraphSessionInfo::class); return $session; } /** * Convenience method for creating a GraphUser collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphUser::class). */ public function getGraphUser(): GraphUser { $factory = new GraphNodeFactory($this); /** @var GraphUser $user */ $user = $factory->makeGraphNode(GraphUser::class); return $user; } /** * Convenience method for creating a GraphEvent collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphEvent::class). */ public function getGraphEvent(): GraphEvent { $factory = new GraphNodeFactory($this); /** @var GraphEvent $event */ $event = $factory->makeGraphNode(GraphEvent::class); return $event; } /** * Convenience method for creating a GraphGroup collection. * @throws FacebookSDKException * @deprecated Use getGraphNode(GraphGroup::class). */ public function getGraphGroup(): GraphGroup { $factory = new GraphNodeFactory($this); /** @var GraphGroup $group */ $group = $factory->makeGraphNode(GraphGroup::class); return $group; } /** * Instantiate a new GraphEdge from response. * * @param string|null $subclassName The GraphNode subclass to cast list items to. * * @throws FacebookSDKException */ public function getGraphEdge(?string $subclassName = null): GraphEdge { $factory = new GraphNodeFactory($this); return $factory->makeGraphEdge($subclassName); } } PKCA#]��֦J�JVcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/Facebook.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Authentication\OAuth2Client; use Facebook\FileUpload\FacebookFile; use Facebook\FileUpload\FacebookResumableUploader; use Facebook\FileUpload\FacebookTransferChunk; use Facebook\FileUpload\FacebookVideo; use Facebook\GraphNodes\GraphEdge; use Facebook\Url\UrlDetectionInterface; use Facebook\Url\FacebookUrlDetectionHandler; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorFactory; use Facebook\PseudoRandomString\PseudoRandomStringGeneratorInterface; use Facebook\HttpClients\HttpClientsFactory; use Facebook\PersistentData\PersistentDataFactory; use Facebook\PersistentData\PersistentDataInterface; use Facebook\Helpers\FacebookCanvasHelper; use Facebook\Helpers\FacebookJavaScriptHelper; use Facebook\Helpers\FacebookPageTabHelper; use Facebook\Helpers\FacebookRedirectLoginHelper; use Facebook\Exceptions\FacebookSDKException; use InvalidArgumentException; /** * Class Facebook * * @package Facebook */ class Facebook { /** * @const string Version number of the Facebook PHP SDK. */ const VERSION = '8.0.0'; /** * @const string Default Graph API version for requests. */ const DEFAULT_GRAPH_VERSION = 'v20.0'; /** * @const string The name of the environment variable that contains the app ID. */ const APP_ID_ENV_NAME = 'FACEBOOK_APP_ID'; /** * @const string The name of the environment variable that contains the app secret. */ const APP_SECRET_ENV_NAME = 'FACEBOOK_APP_SECRET'; /** * @var FacebookApp The FacebookApp entity. */ protected FacebookApp $app; /** * @var FacebookClient The Facebook client service. */ protected FacebookClient $client; /** * @var OAuth2Client|null The OAuth 2.0 client service. */ protected ?OAuth2Client $oAuth2Client = null; /** * @var UrlDetectionInterface The URL detection handler. */ protected UrlDetectionInterface $urlDetectionHandler; /** * @var PseudoRandomStringGeneratorInterface The cryptographically secure pseudo-random string generator. */ protected PseudoRandomStringGeneratorInterface $pseudoRandomStringGenerator; /** * @var AccessToken|null The default access token to use with requests. */ protected AccessToken|null $defaultAccessToken; /** * @var string|null The default Graph version we want to use. */ protected string|null $defaultGraphVersion; /** * @var PersistentDataInterface The persistent data handler. */ protected PersistentDataInterface $persistentDataHandler; /** * @var FacebookResponse|FacebookBatchResponse|null Stores the last request made to Graph. */ protected FacebookResponse|FacebookBatchResponse|null $lastResponse; /** * Instantiates a new Facebook super-class object. * @throws FacebookSDKException */ public function __construct(array $config = []) { $config = array_merge([ 'app_id' => getenv(static::APP_ID_ENV_NAME), 'app_secret' => getenv(static::APP_SECRET_ENV_NAME), 'default_graph_version' => static::DEFAULT_GRAPH_VERSION, 'enable_beta_mode' => false, 'http_client_handler' => null, 'persistent_data_handler' => null, 'pseudo_random_string_generator' => null, 'url_detection_handler' => null, ], $config); if (!$config['app_id']) { throw new FacebookSDKException('Required "app_id" key not supplied in config and could not find fallback environment variable "' . static::APP_ID_ENV_NAME . '"'); } if (!$config['app_secret']) { throw new FacebookSDKException('Required "app_secret" key not supplied in config and could not find fallback environment variable "' . static::APP_SECRET_ENV_NAME . '"'); } $this->app = new FacebookApp($config['app_id'], $config['app_secret']); $this->client = new FacebookClient( HttpClientsFactory::createHttpClient($config['http_client_handler']), $config['enable_beta_mode'] ); $this->pseudoRandomStringGenerator = PseudoRandomStringGeneratorFactory::createPseudoRandomStringGenerator( $config['pseudo_random_string_generator'] ); $this->setUrlDetectionHandler($config['url_detection_handler'] ?: new FacebookUrlDetectionHandler()); $this->persistentDataHandler = PersistentDataFactory::createPersistentDataHandler( $config['persistent_data_handler'] ); if (isset($config['default_access_token'])) { $t = $config['default_access_token']; if (!is_string($t) && !($t instanceof AccessToken)) { throw new InvalidArgumentException('Access token must be of type string or ' . AccessToken::class . '.'); } $this->setDefaultAccessToken($config['default_access_token']); } $this->defaultGraphVersion = $config['default_graph_version']; } /** * Returns the FacebookApp entity. */ public function getApp(): FacebookApp { return $this->app; } /** * Returns the FacebookClient service. */ public function getClient(): FacebookClient { return $this->client; } /** * Returns the OAuth 2.0 client service. */ public function getOAuth2Client(): OAuth2Client { if (!$this->oAuth2Client) { $app = $this->getApp(); $client = $this->getClient(); $this->oAuth2Client = new OAuth2Client($app, $client, $this->defaultGraphVersion); } return $this->oAuth2Client; } /** * Returns the last response returned from Graph. */ public function getLastResponse(): FacebookResponse|FacebookBatchResponse|null { return $this->lastResponse; } /** * Returns the URL detection handler. */ public function getUrlDetectionHandler(): ?UrlDetectionInterface { return $this->urlDetectionHandler; } /** * Changes the URL detection handler. */ private function setUrlDetectionHandler(UrlDetectionInterface $urlDetectionHandler): void { $this->urlDetectionHandler = $urlDetectionHandler; } /** * Returns the default AccessToken entity. */ public function getDefaultAccessToken(): ?AccessToken { return $this->defaultAccessToken; } /** * Sets the default access token to use with requests. * * @throws InvalidArgumentException */ public function setDefaultAccessToken(AccessToken|string $accessToken): void { if (is_string($accessToken)) { $this->defaultAccessToken = new AccessToken($accessToken); return; } if ($accessToken instanceof AccessToken) { $this->defaultAccessToken = $accessToken; return; } throw new InvalidArgumentException('The default access token must be of type "string" or Facebook\AccessToken'); } public function getDefaultGraphVersion(): string { return $this->defaultGraphVersion; } public function getRedirectLoginHelper(): FacebookRedirectLoginHelper { return new FacebookRedirectLoginHelper( $this->getOAuth2Client(), $this->persistentDataHandler, $this->urlDetectionHandler, $this->pseudoRandomStringGenerator ); } public function getJavaScriptHelper(): FacebookJavaScriptHelper { return new FacebookJavaScriptHelper($this->app, $this->client, $this->defaultGraphVersion); } public function getCanvasHelper(): FacebookCanvasHelper { return new FacebookCanvasHelper($this->app, $this->client, $this->defaultGraphVersion); } public function getPageTabHelper(): FacebookPageTabHelper { return new FacebookPageTabHelper($this->app, $this->client, $this->defaultGraphVersion); } /** * Sends a GET request to Graph and returns the result. * * @param string $endpoint * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function get(string $endpoint, AccessToken|string|null $accessToken = null, ?string $eTag = null, ?string $graphVersion = null): FacebookResponse { return $this->sendRequest( 'GET', $endpoint, [], $accessToken, $eTag, $graphVersion ); } /** * Sends a POST request to Graph and returns the result. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function post(string $endpoint, array $params = [], AccessToken|string|null $accessToken = null, ?string $eTag = null, ?string $graphVersion = null): FacebookResponse { return $this->sendRequest( 'POST', $endpoint, $params, $accessToken, $eTag, $graphVersion ); } /** * Sends a DELETE request to Graph and returns the result. * * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function delete(string $endpoint, array $params = [], AccessToken|string|null $accessToken = null, ?string $eTag = null, ?string $graphVersion = null): FacebookResponse { return $this->sendRequest( 'DELETE', $endpoint, $params, $accessToken, $eTag, $graphVersion ); } /** * Sends a request to Graph for the next page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function next(GraphEdge $graphEdge): ?GraphEdge { return $this->getPaginationResults($graphEdge, 'next'); } /** * Sends a request to Graph for the previous page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function previous(GraphEdge $graphEdge): ?GraphEdge { return $this->getPaginationResults($graphEdge, 'previous'); } /** * Sends a request to Graph for the next page of results. * * @param GraphEdge $graphEdge The GraphEdge to paginate over. * @param string $direction The direction of the pagination: next|previous. * * @return GraphEdge|null * * @throws FacebookSDKException */ public function getPaginationResults(GraphEdge $graphEdge, string $direction): ?GraphEdge { $paginationRequest = $graphEdge->getPaginationRequest($direction); if (!$paginationRequest) { return null; } $this->lastResponse = $this->client->sendRequest($paginationRequest); // Keep the same GraphNode subclass $subClassName = $graphEdge->getSubClassName(); $graphEdge = $this->lastResponse->getGraphEdge($subClassName); return count($graphEdge) > 0 ? $graphEdge : null; } /** * Sends a request to Graph and returns the result. * * @param string $method * @param string $endpoint * @param array $params * @param AccessToken|string|null $accessToken * @param string|null $eTag * @param string|null $graphVersion * * @return FacebookResponse * * @throws FacebookSDKException */ public function sendRequest(string $method, string $endpoint, array $params = [], AccessToken|string|null $accessToken = null, ?string $eTag = null, ?string $graphVersion = null): FacebookResponse { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $request = $this->request($method, $endpoint, $params, $accessToken, $eTag, $graphVersion); return $this->lastResponse = $this->client->sendRequest($request); } /** * Sends a batched request to Graph and returns the result. * * @param array $requests * @param AccessToken|string|null $accessToken * @param string|null $graphVersion * * @return FacebookBatchResponse * * @throws FacebookSDKException */ public function sendBatchRequest(array $requests, AccessToken|string|null $accessToken = null, ?string $graphVersion = null): FacebookBatchResponse { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $batchRequest = new FacebookBatchRequest( $this->app, $requests, $accessToken, $graphVersion ); return $this->lastResponse = $this->client->sendBatchRequest($batchRequest); } /** * Instantiates an empty FacebookBatchRequest entity. * * @param AccessToken|string|null $accessToken The top-level access token. Requests with no access token * will fallback to this. * @param string|null $graphVersion The Graph API version to use. * @return FacebookBatchRequest */ public function newBatchRequest(AccessToken|string|null $accessToken = null, ?string $graphVersion = null): FacebookBatchRequest { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; return new FacebookBatchRequest( $this->app, [], $accessToken, $graphVersion ); } /** * Instantiates a new FacebookRequest entity. * @throws FacebookSDKException */ public function request(string $method, string $endpoint, array $params = [], AccessToken|string|null $accessToken = null, ?string $eTag = null, ?string $graphVersion = null): FacebookRequest { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; return new FacebookRequest( $this->app, $accessToken, $method, $endpoint, $params, $eTag, $graphVersion ); } /** * Factory to create FacebookFile's. * @throws FacebookSDKException */ public function fileToUpload(string $pathToFile): FacebookFile { return new FacebookFile($pathToFile); } /** * Factory to create FacebookVideo * @throws FacebookSDKException */ public function videoToUpload(string $pathToFile): FacebookVideo { return new FacebookVideo($pathToFile); } /** * Upload a video in chunks. * * @param string $target The id of the target node before the /videos edge. * @param string $pathToFile The full path to the file. * @param array $metadata The metadata associated with the video file. * @param string|null $accessToken The access token. * @param int $maxTransferTries The max times to retry a failed upload chunk. * @param string|null $graphVersion The Graph API version to use. * * @throws FacebookSDKException */ public function uploadVideo(string $target, string $pathToFile, array $metadata = [], ?string $accessToken = null, int $maxTransferTries = 5, ?string $graphVersion = null): array { $accessToken = $accessToken ?: $this->defaultAccessToken; $graphVersion = $graphVersion ?: $this->defaultGraphVersion; $uploader = new FacebookResumableUploader($this->app, $this->client, $accessToken, $graphVersion); $endpoint = '/'.$target.'/videos'; $file = $this->videoToUpload($pathToFile); $chunk = $uploader->start($endpoint, $file); do { $chunk = $this->maxTriesTransfer($uploader, $endpoint, $chunk, $maxTransferTries); } while (!$chunk->isLastChunk()); return [ 'video_id' => $chunk->getVideoId(), 'success' => $uploader->finish($endpoint, $chunk->getUploadSessionId(), $metadata), ]; } /** * Attempts to upload a chunk of a file in $retryCountdown tries. * * @param FacebookResumableUploader $uploader * @param string $endpoint * @param FacebookTransferChunk $chunk * @param int $retryCountdown * * @return FacebookTransferChunk * * @throws FacebookSDKException */ private function maxTriesTransfer(FacebookResumableUploader $uploader, string $endpoint, FacebookTransferChunk $chunk, int $retryCountdown): FacebookTransferChunk { $newChunk = $uploader->transfer($endpoint, $chunk, $retryCountdown < 1); if ($newChunk !== $chunk) { return $newChunk; } $retryCountdown--; // If transfer() returned the same chunk entity, the transfer failed but is resumable. return $this->maxTriesTransfer($uploader, $endpoint, $chunk, $retryCountdown); } } PKCA#]S� ���Ycomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookApp.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookSDKException; class FacebookApp implements \Serializable { /** * @var string The app ID. */ protected string $id; /** * @var string The app secret. */ protected string $secret; /** * @param string|int $id * @param string $secret * * @throws FacebookSDKException */ public function __construct(string|int $id, string $secret) { if (!is_string($id) && PHP_INT_SIZE === 4) { throw new FacebookSDKException('The "app_id" must be formatted as a string when PHP is running in 32 bit mode.'); } $this->id = (string) $id; $this->secret = $secret; } /** * Returns the app ID. */ public function getId(): string { return $this->id; } /** * Returns the app secret. */ public function getSecret(): string { return $this->secret; } /** * Returns an app access token. */ public function getAccessToken(): AccessToken { return new AccessToken($this->id . '|' . $this->secret); } /** * Serializes the FacebookApp entity as a string. */ public function serialize(): string { return implode('|', [$this->id, $this->secret]); } public function __serialize(): array { return ['id' => $this->id, 'secret' => $this->secret]; } /** * Unserializes a string as a FacebookApp entity. * @throws FacebookSDKException */ public function unserialize(string $data): void { list($id, $secret) = explode('|', $data); $this->__construct($id, $secret); } public function __unserialize($data): void { $this->__construct($data['id'], $data['secret']); } } PKCA#]8Gh��\components/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FacebookClient.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook; use Facebook\HttpClients\FacebookGuzzleHttpClient; use Facebook\HttpClients\FacebookHttpClientInterface; use Facebook\HttpClients\FacebookCurlHttpClient; use Facebook\HttpClients\FacebookStreamHttpClient; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookClient * * @package Facebook */ class FacebookClient { /** * @const string Production Graph API URL. */ const BASE_GRAPH_URL = 'https://graph.facebook.com'; /** * @const string Graph API URL for video uploads. */ const BASE_GRAPH_VIDEO_URL = 'https://graph-video.facebook.com'; /** * @const string Beta Graph API URL. */ const BASE_GRAPH_URL_BETA = 'https://graph.beta.facebook.com'; /** * @const string Beta Graph API URL for video uploads. */ const BASE_GRAPH_VIDEO_URL_BETA = 'https://graph-video.beta.facebook.com'; /** * @const int The timeout in seconds for a normal request. */ const DEFAULT_REQUEST_TIMEOUT = 60; /** * @const int The timeout in seconds for a request that contains file uploads. */ const DEFAULT_FILE_UPLOAD_REQUEST_TIMEOUT = 3600; /** * @const int The timeout in seconds for a request that contains video uploads. */ const DEFAULT_VIDEO_UPLOAD_REQUEST_TIMEOUT = 7200; /** * @var bool Toggle to use Graph beta url. */ protected bool $enableBetaMode = false; /** * @var FacebookHttpClientInterface HTTP client handler. */ protected FacebookHttpClientInterface $httpClientHandler; /** * @var int The number of calls that have been made to Graph. */ public static int $requestCount = 0; /** * Instantiates a new FacebookClient object. */ public function __construct(?FacebookHttpClientInterface $httpClientHandler = null, bool $enableBeta = false) { $this->httpClientHandler = $httpClientHandler ?: $this->detectHttpClientHandler(); $this->enableBetaMode = $enableBeta; } /** * Sets the HTTP client handler. */ public function setHttpClientHandler(FacebookHttpClientInterface $httpClientHandler): void { $this->httpClientHandler = $httpClientHandler; } /** * Returns the HTTP client handler. */ public function getHttpClientHandler(): FacebookHttpClientInterface { return $this->httpClientHandler; } /** * Detects which HTTP client handler to use. */ public function detectHttpClientHandler(): FacebookHttpClientInterface { if (class_exists('GuzzleHttp\Client')) { return new FacebookGuzzleHttpClient(); } return extension_loaded('curl') ? new FacebookCurlHttpClient() : new FacebookStreamHttpClient(); } /** * Toggle beta mode. * * @param boolean $betaMode */ public function enableBetaMode(bool $betaMode = true): void { $this->enableBetaMode = $betaMode; } /** * Returns the base Graph URL. * * @param boolean $postToVideoUrl Post to the video API if videos are being uploaded. */ public function getBaseGraphUrl(bool $postToVideoUrl = false): string { if ($postToVideoUrl) { return $this->enableBetaMode ? static::BASE_GRAPH_VIDEO_URL_BETA : static::BASE_GRAPH_VIDEO_URL; } return $this->enableBetaMode ? static::BASE_GRAPH_URL_BETA : static::BASE_GRAPH_URL; } /** * Prepares the request for sending to the client handler. * * @throws FacebookSDKException */ public function prepareRequestMessage(FacebookRequest $request): array { $postToVideoUrl = $request->containsVideoUploads(); $url = $this->getBaseGraphUrl($postToVideoUrl) . $request->getUrl(); // If we're sending files they should be sent as multipart/form-data if ($request->containsFileUploads()) { $requestBody = $request->getMultipartBody(); $request->setHeaders([ 'Content-Type' => 'multipart/form-data; boundary=' . $requestBody->getBoundary(), ]); } else { $requestBody = $request->getUrlEncodedBody(); $request->setHeaders([ 'Content-Type' => 'application/x-www-form-urlencoded', ]); } return [ $url, $request->getMethod(), $request->getHeaders(), $requestBody->getBody(), ]; } /** * Makes the request to Graph and returns the result. * * @throws FacebookSDKException */ public function sendRequest(FacebookRequest $request): FacebookResponse { if (get_class($request) === FacebookRequest::class) { $request->validateAccessToken(); } list($url, $method, $headers, $body) = $this->prepareRequestMessage($request); // Since file uploads can take a while, we need to give more time for uploads $timeOut = static::DEFAULT_REQUEST_TIMEOUT; if ($request->containsFileUploads()) { $timeOut = static::DEFAULT_FILE_UPLOAD_REQUEST_TIMEOUT; } elseif ($request->containsVideoUploads()) { $timeOut = static::DEFAULT_VIDEO_UPLOAD_REQUEST_TIMEOUT; } // Should throw `FacebookSDKException` exception on HTTP client error. // Don't catch to allow it to bubble up. $rawResponse = $this->httpClientHandler->send($url, $method, $body, $headers, $timeOut); static::$requestCount++; $returnResponse = new FacebookResponse( $request, $rawResponse->getBody(), $rawResponse->getHttpResponseCode(), $rawResponse->getHeaders() ); if ($returnResponse->isError()) { throw $returnResponse->getThrownException(); } return $returnResponse; } /** * Makes a batched request to Graph and returns the result. * * @throws FacebookSDKException */ public function sendBatchRequest(FacebookBatchRequest $request): FacebookBatchResponse { $request->prepareRequestsForBatch(); $facebookResponse = $this->sendRequest($request); return new FacebookBatchResponse($request, $facebookResponse); } } PKCA#]��.�.�bcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FileUpload/Mimetypes.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; /** * Provides mappings of file extensions to mimetypes * * Taken from Guzzle * * @see https://github.com/guzzle/guzzle/blob/master/src/Mimetypes.php * * @link http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/conf/mime.types */ class Mimetypes { protected static ?Mimetypes $instance = null; /** @var array Mapping of extension to mimetype */ protected array $mimetypes = [ '3dml' => 'text/vnd.in3d.3dml', '3g2' => 'video/3gpp2', '3gp' => 'video/3gpp', '7z' => 'application/x-7z-compressed', 'aab' => 'application/x-authorware-bin', 'aac' => 'audio/x-aac', 'aam' => 'application/x-authorware-map', 'aas' => 'application/x-authorware-seg', 'abw' => 'application/x-abiword', 'ac' => 'application/pkix-attr-cert', 'acc' => 'application/vnd.americandynamics.acc', 'ace' => 'application/x-ace-compressed', 'acu' => 'application/vnd.acucobol', 'acutc' => 'application/vnd.acucorp', 'adp' => 'audio/adpcm', 'aep' => 'application/vnd.audiograph', 'afm' => 'application/x-font-type1', 'afp' => 'application/vnd.ibm.modcap', 'ahead' => 'application/vnd.ahead.space', 'ai' => 'application/postscript', 'aif' => 'audio/x-aiff', 'aifc' => 'audio/x-aiff', 'aiff' => 'audio/x-aiff', 'air' => 'application/vnd.adobe.air-application-installer-package+zip', 'ait' => 'application/vnd.dvb.ait', 'ami' => 'application/vnd.amiga.ami', 'apk' => 'application/vnd.android.package-archive', 'application' => 'application/x-ms-application', 'apr' => 'application/vnd.lotus-approach', 'asa' => 'text/plain', 'asax' => 'application/octet-stream', 'asc' => 'application/pgp-signature', 'ascx' => 'text/plain', 'asf' => 'video/x-ms-asf', 'ashx' => 'text/plain', 'asm' => 'text/x-asm', 'asmx' => 'text/plain', 'aso' => 'application/vnd.accpac.simply.aso', 'asp' => 'text/plain', 'aspx' => 'text/plain', 'asx' => 'video/x-ms-asf', 'atc' => 'application/vnd.acucorp', 'atom' => 'application/atom+xml', 'atomcat' => 'application/atomcat+xml', 'atomsvc' => 'application/atomsvc+xml', 'atx' => 'application/vnd.antix.game-component', 'au' => 'audio/basic', 'avi' => 'video/x-msvideo', 'aw' => 'application/applixware', 'axd' => 'text/plain', 'azf' => 'application/vnd.airzip.filesecure.azf', 'azs' => 'application/vnd.airzip.filesecure.azs', 'azw' => 'application/vnd.amazon.ebook', 'bat' => 'application/x-msdownload', 'bcpio' => 'application/x-bcpio', 'bdf' => 'application/x-font-bdf', 'bdm' => 'application/vnd.syncml.dm+wbxml', 'bed' => 'application/vnd.realvnc.bed', 'bh2' => 'application/vnd.fujitsu.oasysprs', 'bin' => 'application/octet-stream', 'bmi' => 'application/vnd.bmi', 'bmp' => 'image/bmp', 'book' => 'application/vnd.framemaker', 'box' => 'application/vnd.previewsystems.box', 'boz' => 'application/x-bzip2', 'bpk' => 'application/octet-stream', 'btif' => 'image/prs.btif', 'bz' => 'application/x-bzip', 'bz2' => 'application/x-bzip2', 'c' => 'text/x-c', 'c11amc' => 'application/vnd.cluetrust.cartomobile-config', 'c11amz' => 'application/vnd.cluetrust.cartomobile-config-pkg', 'c4d' => 'application/vnd.clonk.c4group', 'c4f' => 'application/vnd.clonk.c4group', 'c4g' => 'application/vnd.clonk.c4group', 'c4p' => 'application/vnd.clonk.c4group', 'c4u' => 'application/vnd.clonk.c4group', 'cab' => 'application/vnd.ms-cab-compressed', 'car' => 'application/vnd.curl.car', 'cat' => 'application/vnd.ms-pki.seccat', 'cc' => 'text/x-c', 'cct' => 'application/x-director', 'ccxml' => 'application/ccxml+xml', 'cdbcmsg' => 'application/vnd.contact.cmsg', 'cdf' => 'application/x-netcdf', 'cdkey' => 'application/vnd.mediastation.cdkey', 'cdmia' => 'application/cdmi-capability', 'cdmic' => 'application/cdmi-container', 'cdmid' => 'application/cdmi-domain', 'cdmio' => 'application/cdmi-object', 'cdmiq' => 'application/cdmi-queue', 'cdx' => 'chemical/x-cdx', 'cdxml' => 'application/vnd.chemdraw+xml', 'cdy' => 'application/vnd.cinderella', 'cer' => 'application/pkix-cert', 'cfc' => 'application/x-coldfusion', 'cfm' => 'application/x-coldfusion', 'cgm' => 'image/cgm', 'chat' => 'application/x-chat', 'chm' => 'application/vnd.ms-htmlhelp', 'chrt' => 'application/vnd.kde.kchart', 'cif' => 'chemical/x-cif', 'cii' => 'application/vnd.anser-web-certificate-issue-initiation', 'cil' => 'application/vnd.ms-artgalry', 'cla' => 'application/vnd.claymore', 'class' => 'application/java-vm', 'clkk' => 'application/vnd.crick.clicker.keyboard', 'clkp' => 'application/vnd.crick.clicker.palette', 'clkt' => 'application/vnd.crick.clicker.template', 'clkw' => 'application/vnd.crick.clicker.wordbank', 'clkx' => 'application/vnd.crick.clicker', 'clp' => 'application/x-msclip', 'cmc' => 'application/vnd.cosmocaller', 'cmdf' => 'chemical/x-cmdf', 'cml' => 'chemical/x-cml', 'cmp' => 'application/vnd.yellowriver-custom-menu', 'cmx' => 'image/x-cmx', 'cod' => 'application/vnd.rim.cod', 'com' => 'application/x-msdownload', 'conf' => 'text/plain', 'cpio' => 'application/x-cpio', 'cpp' => 'text/x-c', 'cpt' => 'application/mac-compactpro', 'crd' => 'application/x-mscardfile', 'crl' => 'application/pkix-crl', 'crt' => 'application/x-x509-ca-cert', 'cryptonote' => 'application/vnd.rig.cryptonote', 'cs' => 'text/plain', 'csh' => 'application/x-csh', 'csml' => 'chemical/x-csml', 'csp' => 'application/vnd.commonspace', 'css' => 'text/css', 'cst' => 'application/x-director', 'csv' => 'text/csv', 'cu' => 'application/cu-seeme', 'curl' => 'text/vnd.curl', 'cww' => 'application/prs.cww', 'cxt' => 'application/x-director', 'cxx' => 'text/x-c', 'dae' => 'model/vnd.collada+xml', 'daf' => 'application/vnd.mobius.daf', 'dataless' => 'application/vnd.fdsn.seed', 'davmount' => 'application/davmount+xml', 'dcr' => 'application/x-director', 'dcurl' => 'text/vnd.curl.dcurl', 'dd2' => 'application/vnd.oma.dd2+xml', 'ddd' => 'application/vnd.fujixerox.ddd', 'deb' => 'application/x-debian-package', 'def' => 'text/plain', 'deploy' => 'application/octet-stream', 'der' => 'application/x-x509-ca-cert', 'dfac' => 'application/vnd.dreamfactory', 'dic' => 'text/x-c', 'dir' => 'application/x-director', 'dis' => 'application/vnd.mobius.dis', 'dist' => 'application/octet-stream', 'distz' => 'application/octet-stream', 'djv' => 'image/vnd.djvu', 'djvu' => 'image/vnd.djvu', 'dll' => 'application/x-msdownload', 'dmg' => 'application/octet-stream', 'dms' => 'application/octet-stream', 'dna' => 'application/vnd.dna', 'doc' => 'application/msword', 'docm' => 'application/vnd.ms-word.document.macroenabled.12', 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'dot' => 'application/msword', 'dotm' => 'application/vnd.ms-word.template.macroenabled.12', 'dotx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.template', 'dp' => 'application/vnd.osgi.dp', 'dpg' => 'application/vnd.dpgraph', 'dra' => 'audio/vnd.dra', 'dsc' => 'text/prs.lines.tag', 'dssc' => 'application/dssc+der', 'dtb' => 'application/x-dtbook+xml', 'dtd' => 'application/xml-dtd', 'dts' => 'audio/vnd.dts', 'dtshd' => 'audio/vnd.dts.hd', 'dump' => 'application/octet-stream', 'dvi' => 'application/x-dvi', 'dwf' => 'model/vnd.dwf', 'dwg' => 'image/vnd.dwg', 'dxf' => 'image/vnd.dxf', 'dxp' => 'application/vnd.spotfire.dxp', 'dxr' => 'application/x-director', 'ecelp4800' => 'audio/vnd.nuera.ecelp4800', 'ecelp7470' => 'audio/vnd.nuera.ecelp7470', 'ecelp9600' => 'audio/vnd.nuera.ecelp9600', 'ecma' => 'application/ecmascript', 'edm' => 'application/vnd.novadigm.edm', 'edx' => 'application/vnd.novadigm.edx', 'efif' => 'application/vnd.picsel', 'ei6' => 'application/vnd.pg.osasli', 'elc' => 'application/octet-stream', 'eml' => 'message/rfc822', 'emma' => 'application/emma+xml', 'eol' => 'audio/vnd.digital-winds', 'eot' => 'application/vnd.ms-fontobject', 'eps' => 'application/postscript', 'epub' => 'application/epub+zip', 'es3' => 'application/vnd.eszigno3+xml', 'esf' => 'application/vnd.epson.esf', 'et3' => 'application/vnd.eszigno3+xml', 'etx' => 'text/x-setext', 'exe' => 'application/x-msdownload', 'exi' => 'application/exi', 'ext' => 'application/vnd.novadigm.ext', 'ez' => 'application/andrew-inset', 'ez2' => 'application/vnd.ezpix-album', 'ez3' => 'application/vnd.ezpix-package', 'f' => 'text/x-fortran', 'f4v' => 'video/x-f4v', 'f77' => 'text/x-fortran', 'f90' => 'text/x-fortran', 'fbs' => 'image/vnd.fastbidsheet', 'fcs' => 'application/vnd.isac.fcs', 'fdf' => 'application/vnd.fdf', 'fe_launch' => 'application/vnd.denovo.fcselayout-link', 'fg5' => 'application/vnd.fujitsu.oasysgp', 'fgd' => 'application/x-director', 'fh' => 'image/x-freehand', 'fh4' => 'image/x-freehand', 'fh5' => 'image/x-freehand', 'fh7' => 'image/x-freehand', 'fhc' => 'image/x-freehand', 'fig' => 'application/x-xfig', 'fli' => 'video/x-fli', 'flo' => 'application/vnd.micrografx.flo', 'flv' => 'video/x-flv', 'flw' => 'application/vnd.kde.kivio', 'flx' => 'text/vnd.fmi.flexstor', 'fly' => 'text/vnd.fly', 'fm' => 'application/vnd.framemaker', 'fnc' => 'application/vnd.frogans.fnc', 'for' => 'text/x-fortran', 'fpx' => 'image/vnd.fpx', 'frame' => 'application/vnd.framemaker', 'fsc' => 'application/vnd.fsc.weblaunch', 'fst' => 'image/vnd.fst', 'ftc' => 'application/vnd.fluxtime.clip', 'fti' => 'application/vnd.anser-web-funds-transfer-initiation', 'fvt' => 'video/vnd.fvt', 'fxp' => 'application/vnd.adobe.fxp', 'fxpl' => 'application/vnd.adobe.fxp', 'fzs' => 'application/vnd.fuzzysheet', 'g2w' => 'application/vnd.geoplan', 'g3' => 'image/g3fax', 'g3w' => 'application/vnd.geospace', 'gac' => 'application/vnd.groove-account', 'gdl' => 'model/vnd.gdl', 'geo' => 'application/vnd.dynageo', 'gex' => 'application/vnd.geometry-explorer', 'ggb' => 'application/vnd.geogebra.file', 'ggt' => 'application/vnd.geogebra.tool', 'ghf' => 'application/vnd.groove-help', 'gif' => 'image/gif', 'gim' => 'application/vnd.groove-identity-message', 'gmx' => 'application/vnd.gmx', 'gnumeric' => 'application/x-gnumeric', 'gph' => 'application/vnd.flographit', 'gqf' => 'application/vnd.grafeq', 'gqs' => 'application/vnd.grafeq', 'gram' => 'application/srgs', 'gre' => 'application/vnd.geometry-explorer', 'grv' => 'application/vnd.groove-injector', 'grxml' => 'application/srgs+xml', 'gsf' => 'application/x-font-ghostscript', 'gtar' => 'application/x-gtar', 'gtm' => 'application/vnd.groove-tool-message', 'gtw' => 'model/vnd.gtw', 'gv' => 'text/vnd.graphviz', 'gxt' => 'application/vnd.geonext', 'h' => 'text/x-c', 'h261' => 'video/h261', 'h263' => 'video/h263', 'h264' => 'video/h264', 'hal' => 'application/vnd.hal+xml', 'hbci' => 'application/vnd.hbci', 'hdf' => 'application/x-hdf', 'hh' => 'text/x-c', 'hlp' => 'application/winhlp', 'hpgl' => 'application/vnd.hp-hpgl', 'hpid' => 'application/vnd.hp-hpid', 'hps' => 'application/vnd.hp-hps', 'hqx' => 'application/mac-binhex40', 'hta' => 'application/octet-stream', 'htc' => 'text/html', 'htke' => 'application/vnd.kenameaapp', 'htm' => 'text/html', 'html' => 'text/html', 'hvd' => 'application/vnd.yamaha.hv-dic', 'hvp' => 'application/vnd.yamaha.hv-voice', 'hvs' => 'application/vnd.yamaha.hv-script', 'i2g' => 'application/vnd.intergeo', 'icc' => 'application/vnd.iccprofile', 'ice' => 'x-conference/x-cooltalk', 'icm' => 'application/vnd.iccprofile', 'ico' => 'image/x-icon', 'ics' => 'text/calendar', 'ief' => 'image/ief', 'ifb' => 'text/calendar', 'ifm' => 'application/vnd.shana.informed.formdata', 'iges' => 'model/iges', 'igl' => 'application/vnd.igloader', 'igm' => 'application/vnd.insors.igm', 'igs' => 'model/iges', 'igx' => 'application/vnd.micrografx.igx', 'iif' => 'application/vnd.shana.informed.interchange', 'imp' => 'application/vnd.accpac.simply.imp', 'ims' => 'application/vnd.ms-ims', 'in' => 'text/plain', 'ini' => 'text/plain', 'ipfix' => 'application/ipfix', 'ipk' => 'application/vnd.shana.informed.package', 'irm' => 'application/vnd.ibm.rights-management', 'irp' => 'application/vnd.irepository.package+xml', 'iso' => 'application/octet-stream', 'itp' => 'application/vnd.shana.informed.formtemplate', 'ivp' => 'application/vnd.immervision-ivp', 'ivu' => 'application/vnd.immervision-ivu', 'jad' => 'text/vnd.sun.j2me.app-descriptor', 'jam' => 'application/vnd.jam', 'jar' => 'application/java-archive', 'java' => 'text/x-java-source', 'jisp' => 'application/vnd.jisp', 'jlt' => 'application/vnd.hp-jlyt', 'jnlp' => 'application/x-java-jnlp-file', 'joda' => 'application/vnd.joost.joda-archive', 'jpe' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg', 'jpgm' => 'video/jpm', 'jpgv' => 'video/jpeg', 'jpm' => 'video/jpm', 'js' => 'text/javascript', 'json' => 'application/json', 'kar' => 'audio/midi', 'karbon' => 'application/vnd.kde.karbon', 'kfo' => 'application/vnd.kde.kformula', 'kia' => 'application/vnd.kidspiration', 'kml' => 'application/vnd.google-earth.kml+xml', 'kmz' => 'application/vnd.google-earth.kmz', 'kne' => 'application/vnd.kinar', 'knp' => 'application/vnd.kinar', 'kon' => 'application/vnd.kde.kontour', 'kpr' => 'application/vnd.kde.kpresenter', 'kpt' => 'application/vnd.kde.kpresenter', 'ksp' => 'application/vnd.kde.kspread', 'ktr' => 'application/vnd.kahootz', 'ktx' => 'image/ktx', 'ktz' => 'application/vnd.kahootz', 'kwd' => 'application/vnd.kde.kword', 'kwt' => 'application/vnd.kde.kword', 'lasxml' => 'application/vnd.las.las+xml', 'latex' => 'application/x-latex', 'lbd' => 'application/vnd.llamagraphics.life-balance.desktop', 'lbe' => 'application/vnd.llamagraphics.life-balance.exchange+xml', 'les' => 'application/vnd.hhe.lesson-player', 'lha' => 'application/octet-stream', 'link66' => 'application/vnd.route66.link66+xml', 'list' => 'text/plain', 'list3820' => 'application/vnd.ibm.modcap', 'listafp' => 'application/vnd.ibm.modcap', 'log' => 'text/plain', 'lostxml' => 'application/lost+xml', 'lrf' => 'application/octet-stream', 'lrm' => 'application/vnd.ms-lrm', 'ltf' => 'application/vnd.frogans.ltf', 'lvp' => 'audio/vnd.lucent.voice', 'lwp' => 'application/vnd.lotus-wordpro', 'lzh' => 'application/octet-stream', 'm13' => 'application/x-msmediaview', 'm14' => 'application/x-msmediaview', 'm1v' => 'video/mpeg', 'm21' => 'application/mp21', 'm2a' => 'audio/mpeg', 'm2v' => 'video/mpeg', 'm3a' => 'audio/mpeg', 'm3u' => 'audio/x-mpegurl', 'm3u8' => 'application/vnd.apple.mpegurl', 'm4a' => 'audio/mp4', 'm4u' => 'video/vnd.mpegurl', 'm4v' => 'video/mp4', 'ma' => 'application/mathematica', 'mads' => 'application/mads+xml', 'mag' => 'application/vnd.ecowin.chart', 'maker' => 'application/vnd.framemaker', 'man' => 'text/troff', 'mathml' => 'application/mathml+xml', 'mb' => 'application/mathematica', 'mbk' => 'application/vnd.mobius.mbk', 'mbox' => 'application/mbox', 'mc1' => 'application/vnd.medcalcdata', 'mcd' => 'application/vnd.mcd', 'mcurl' => 'text/vnd.curl.mcurl', 'mdb' => 'application/x-msaccess', 'mdi' => 'image/vnd.ms-modi', 'me' => 'text/troff', 'mesh' => 'model/mesh', 'meta4' => 'application/metalink4+xml', 'mets' => 'application/mets+xml', 'mfm' => 'application/vnd.mfmp', 'mgp' => 'application/vnd.osgeo.mapguide.package', 'mgz' => 'application/vnd.proteus.magazine', 'mid' => 'audio/midi', 'midi' => 'audio/midi', 'mif' => 'application/vnd.mif', 'mime' => 'message/rfc822', 'mj2' => 'video/mj2', 'mjp2' => 'video/mj2', 'mlp' => 'application/vnd.dolby.mlp', 'mmd' => 'application/vnd.chipnuts.karaoke-mmd', 'mmf' => 'application/vnd.smaf', 'mmr' => 'image/vnd.fujixerox.edmics-mmr', 'mny' => 'application/x-msmoney', 'mobi' => 'application/x-mobipocket-ebook', 'mods' => 'application/mods+xml', 'mov' => 'video/quicktime', 'movie' => 'video/x-sgi-movie', 'mp2' => 'audio/mpeg', 'mp21' => 'application/mp21', 'mp2a' => 'audio/mpeg', 'mp3' => 'audio/mpeg', 'mp4' => 'video/mp4', 'mp4a' => 'audio/mp4', 'mp4s' => 'application/mp4', 'mp4v' => 'video/mp4', 'mpc' => 'application/vnd.mophun.certificate', 'mpe' => 'video/mpeg', 'mpeg' => 'video/mpeg', 'mpg' => 'video/mpeg', 'mpg4' => 'video/mp4', 'mpga' => 'audio/mpeg', 'mpkg' => 'application/vnd.apple.installer+xml', 'mpm' => 'application/vnd.blueice.multipass', 'mpn' => 'application/vnd.mophun.application', 'mpp' => 'application/vnd.ms-project', 'mpt' => 'application/vnd.ms-project', 'mpy' => 'application/vnd.ibm.minipay', 'mqy' => 'application/vnd.mobius.mqy', 'mrc' => 'application/marc', 'mrcx' => 'application/marcxml+xml', 'ms' => 'text/troff', 'mscml' => 'application/mediaservercontrol+xml', 'mseed' => 'application/vnd.fdsn.mseed', 'mseq' => 'application/vnd.mseq', 'msf' => 'application/vnd.epson.msf', 'msh' => 'model/mesh', 'msi' => 'application/x-msdownload', 'msl' => 'application/vnd.mobius.msl', 'msty' => 'application/vnd.muvee.style', 'mts' => 'model/vnd.mts', 'mus' => 'application/vnd.musician', 'musicxml' => 'application/vnd.recordare.musicxml+xml', 'mvb' => 'application/x-msmediaview', 'mwf' => 'application/vnd.mfer', 'mxf' => 'application/mxf', 'mxl' => 'application/vnd.recordare.musicxml', 'mxml' => 'application/xv+xml', 'mxs' => 'application/vnd.triscape.mxs', 'mxu' => 'video/vnd.mpegurl', 'n-gage' => 'application/vnd.nokia.n-gage.symbian.install', 'n3' => 'text/n3', 'nb' => 'application/mathematica', 'nbp' => 'application/vnd.wolfram.player', 'nc' => 'application/x-netcdf', 'ncx' => 'application/x-dtbncx+xml', 'ngdat' => 'application/vnd.nokia.n-gage.data', 'nlu' => 'application/vnd.neurolanguage.nlu', 'nml' => 'application/vnd.enliven', 'nnd' => 'application/vnd.noblenet-directory', 'nns' => 'application/vnd.noblenet-sealer', 'nnw' => 'application/vnd.noblenet-web', 'npx' => 'image/vnd.net-fpx', 'nsf' => 'application/vnd.lotus-notes', 'oa2' => 'application/vnd.fujitsu.oasys2', 'oa3' => 'application/vnd.fujitsu.oasys3', 'oas' => 'application/vnd.fujitsu.oasys', 'obd' => 'application/x-msbinder', 'oda' => 'application/oda', 'odb' => 'application/vnd.oasis.opendocument.database', 'odc' => 'application/vnd.oasis.opendocument.chart', 'odf' => 'application/vnd.oasis.opendocument.formula', 'odft' => 'application/vnd.oasis.opendocument.formula-template', 'odg' => 'application/vnd.oasis.opendocument.graphics', 'odi' => 'application/vnd.oasis.opendocument.image', 'odm' => 'application/vnd.oasis.opendocument.text-master', 'odp' => 'application/vnd.oasis.opendocument.presentation', 'ods' => 'application/vnd.oasis.opendocument.spreadsheet', 'odt' => 'application/vnd.oasis.opendocument.text', 'oga' => 'audio/ogg', 'ogg' => 'audio/ogg', 'ogv' => 'video/ogg', 'ogx' => 'application/ogg', 'onepkg' => 'application/onenote', 'onetmp' => 'application/onenote', 'onetoc' => 'application/onenote', 'onetoc2' => 'application/onenote', 'opf' => 'application/oebps-package+xml', 'oprc' => 'application/vnd.palm', 'org' => 'application/vnd.lotus-organizer', 'osf' => 'application/vnd.yamaha.openscoreformat', 'osfpvg' => 'application/vnd.yamaha.openscoreformat.osfpvg+xml', 'otc' => 'application/vnd.oasis.opendocument.chart-template', 'otf' => 'application/x-font-otf', 'otg' => 'application/vnd.oasis.opendocument.graphics-template', 'oth' => 'application/vnd.oasis.opendocument.text-web', 'oti' => 'application/vnd.oasis.opendocument.image-template', 'otp' => 'application/vnd.oasis.opendocument.presentation-template', 'ots' => 'application/vnd.oasis.opendocument.spreadsheet-template', 'ott' => 'application/vnd.oasis.opendocument.text-template', 'oxt' => 'application/vnd.openofficeorg.extension', 'p' => 'text/x-pascal', 'p10' => 'application/pkcs10', 'p12' => 'application/x-pkcs12', 'p7b' => 'application/x-pkcs7-certificates', 'p7c' => 'application/pkcs7-mime', 'p7m' => 'application/pkcs7-mime', 'p7r' => 'application/x-pkcs7-certreqresp', 'p7s' => 'application/pkcs7-signature', 'p8' => 'application/pkcs8', 'pas' => 'text/x-pascal', 'paw' => 'application/vnd.pawaafile', 'pbd' => 'application/vnd.powerbuilder6', 'pbm' => 'image/x-portable-bitmap', 'pcf' => 'application/x-font-pcf', 'pcl' => 'application/vnd.hp-pcl', 'pclxl' => 'application/vnd.hp-pclxl', 'pct' => 'image/x-pict', 'pcurl' => 'application/vnd.curl.pcurl', 'pcx' => 'image/x-pcx', 'pdb' => 'application/vnd.palm', 'pdf' => 'application/pdf', 'pfa' => 'application/x-font-type1', 'pfb' => 'application/x-font-type1', 'pfm' => 'application/x-font-type1', 'pfr' => 'application/font-tdpfr', 'pfx' => 'application/x-pkcs12', 'pgm' => 'image/x-portable-graymap', 'pgn' => 'application/x-chess-pgn', 'pgp' => 'application/pgp-encrypted', 'php' => 'text/x-php', 'phps' => 'application/x-httpd-phps', 'pic' => 'image/x-pict', 'pkg' => 'application/octet-stream', 'pki' => 'application/pkixcmp', 'pkipath' => 'application/pkix-pkipath', 'plb' => 'application/vnd.3gpp.pic-bw-large', 'plc' => 'application/vnd.mobius.plc', 'plf' => 'application/vnd.pocketlearn', 'pls' => 'application/pls+xml', 'pml' => 'application/vnd.ctc-posml', 'png' => 'image/png', 'pnm' => 'image/x-portable-anymap', 'portpkg' => 'application/vnd.macports.portpkg', 'pot' => 'application/vnd.ms-powerpoint', 'potm' => 'application/vnd.ms-powerpoint.template.macroenabled.12', 'potx' => 'application/vnd.openxmlformats-officedocument.presentationml.template', 'ppam' => 'application/vnd.ms-powerpoint.addin.macroenabled.12', 'ppd' => 'application/vnd.cups-ppd', 'ppm' => 'image/x-portable-pixmap', 'pps' => 'application/vnd.ms-powerpoint', 'ppsm' => 'application/vnd.ms-powerpoint.slideshow.macroenabled.12', 'ppsx' => 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', 'ppt' => 'application/vnd.ms-powerpoint', 'pptm' => 'application/vnd.ms-powerpoint.presentation.macroenabled.12', 'pptx' => 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'pqa' => 'application/vnd.palm', 'prc' => 'application/x-mobipocket-ebook', 'pre' => 'application/vnd.lotus-freelance', 'prf' => 'application/pics-rules', 'ps' => 'application/postscript', 'psb' => 'application/vnd.3gpp.pic-bw-small', 'psd' => 'image/vnd.adobe.photoshop', 'psf' => 'application/x-font-linux-psf', 'pskcxml' => 'application/pskc+xml', 'ptid' => 'application/vnd.pvi.ptid1', 'pub' => 'application/x-mspublisher', 'pvb' => 'application/vnd.3gpp.pic-bw-var', 'pwn' => 'application/vnd.3m.post-it-notes', 'pya' => 'audio/vnd.ms-playready.media.pya', 'pyv' => 'video/vnd.ms-playready.media.pyv', 'qam' => 'application/vnd.epson.quickanime', 'qbo' => 'application/vnd.intu.qbo', 'qfx' => 'application/vnd.intu.qfx', 'qps' => 'application/vnd.publishare-delta-tree', 'qt' => 'video/quicktime', 'qwd' => 'application/vnd.quark.quarkxpress', 'qwt' => 'application/vnd.quark.quarkxpress', 'qxb' => 'application/vnd.quark.quarkxpress', 'qxd' => 'application/vnd.quark.quarkxpress', 'qxl' => 'application/vnd.quark.quarkxpress', 'qxt' => 'application/vnd.quark.quarkxpress', 'ra' => 'audio/x-pn-realaudio', 'ram' => 'audio/x-pn-realaudio', 'rar' => 'application/x-rar-compressed', 'ras' => 'image/x-cmu-raster', 'rb' => 'text/plain', 'rcprofile' => 'application/vnd.ipunplugged.rcprofile', 'rdf' => 'application/rdf+xml', 'rdz' => 'application/vnd.data-vision.rdz', 'rep' => 'application/vnd.businessobjects', 'res' => 'application/x-dtbresource+xml', 'resx' => 'text/xml', 'rgb' => 'image/x-rgb', 'rif' => 'application/reginfo+xml', 'rip' => 'audio/vnd.rip', 'rl' => 'application/resource-lists+xml', 'rlc' => 'image/vnd.fujixerox.edmics-rlc', 'rld' => 'application/resource-lists-diff+xml', 'rm' => 'application/vnd.rn-realmedia', 'rmi' => 'audio/midi', 'rmp' => 'audio/x-pn-realaudio-plugin', 'rms' => 'application/vnd.jcp.javame.midlet-rms', 'rnc' => 'application/relax-ng-compact-syntax', 'roff' => 'text/troff', 'rp9' => 'application/vnd.cloanto.rp9', 'rpss' => 'application/vnd.nokia.radio-presets', 'rpst' => 'application/vnd.nokia.radio-preset', 'rq' => 'application/sparql-query', 'rs' => 'application/rls-services+xml', 'rsd' => 'application/rsd+xml', 'rss' => 'application/rss+xml', 'rtf' => 'application/rtf', 'rtx' => 'text/richtext', 's' => 'text/x-asm', 'saf' => 'application/vnd.yamaha.smaf-audio', 'sbml' => 'application/sbml+xml', 'sc' => 'application/vnd.ibm.secure-container', 'scd' => 'application/x-msschedule', 'scm' => 'application/vnd.lotus-screencam', 'scq' => 'application/scvp-cv-request', 'scs' => 'application/scvp-cv-response', 'scurl' => 'text/vnd.curl.scurl', 'sda' => 'application/vnd.stardivision.draw', 'sdc' => 'application/vnd.stardivision.calc', 'sdd' => 'application/vnd.stardivision.impress', 'sdkd' => 'application/vnd.solent.sdkm+xml', 'sdkm' => 'application/vnd.solent.sdkm+xml', 'sdp' => 'application/sdp', 'sdw' => 'application/vnd.stardivision.writer', 'see' => 'application/vnd.seemail', 'seed' => 'application/vnd.fdsn.seed', 'sema' => 'application/vnd.sema', 'semd' => 'application/vnd.semd', 'semf' => 'application/vnd.semf', 'ser' => 'application/java-serialized-object', 'setpay' => 'application/set-payment-initiation', 'setreg' => 'application/set-registration-initiation', 'sfd-hdstx' => 'application/vnd.hydrostatix.sof-data', 'sfs' => 'application/vnd.spotfire.sfs', 'sgl' => 'application/vnd.stardivision.writer-global', 'sgm' => 'text/sgml', 'sgml' => 'text/sgml', 'sh' => 'application/x-sh', 'shar' => 'application/x-shar', 'shf' => 'application/shf+xml', 'sig' => 'application/pgp-signature', 'silo' => 'model/mesh', 'sis' => 'application/vnd.symbian.install', 'sisx' => 'application/vnd.symbian.install', 'sit' => 'application/x-stuffit', 'sitx' => 'application/x-stuffitx', 'skd' => 'application/vnd.koan', 'skm' => 'application/vnd.koan', 'skp' => 'application/vnd.koan', 'skt' => 'application/vnd.koan', 'sldm' => 'application/vnd.ms-powerpoint.slide.macroenabled.12', 'sldx' => 'application/vnd.openxmlformats-officedocument.presentationml.slide', 'slt' => 'application/vnd.epson.salt', 'sm' => 'application/vnd.stepmania.stepchart', 'smf' => 'application/vnd.stardivision.math', 'smi' => 'application/smil+xml', 'smil' => 'application/smil+xml', 'snd' => 'audio/basic', 'snf' => 'application/x-font-snf', 'so' => 'application/octet-stream', 'spc' => 'application/x-pkcs7-certificates', 'spf' => 'application/vnd.yamaha.smaf-phrase', 'spl' => 'application/x-futuresplash', 'spot' => 'text/vnd.in3d.spot', 'spp' => 'application/scvp-vp-response', 'spq' => 'application/scvp-vp-request', 'spx' => 'audio/ogg', 'src' => 'application/x-wais-source', 'srt' => 'application/octet-stream', 'sru' => 'application/sru+xml', 'srx' => 'application/sparql-results+xml', 'sse' => 'application/vnd.kodak-descriptor', 'ssf' => 'application/vnd.epson.ssf', 'ssml' => 'application/ssml+xml', 'st' => 'application/vnd.sailingtracker.track', 'stc' => 'application/vnd.sun.xml.calc.template', 'std' => 'application/vnd.sun.xml.draw.template', 'stf' => 'application/vnd.wt.stf', 'sti' => 'application/vnd.sun.xml.impress.template', 'stk' => 'application/hyperstudio', 'stl' => 'application/vnd.ms-pki.stl', 'str' => 'application/vnd.pg.format', 'stw' => 'application/vnd.sun.xml.writer.template', 'sub' => 'image/vnd.dvb.subtitle', 'sus' => 'application/vnd.sus-calendar', 'susp' => 'application/vnd.sus-calendar', 'sv4cpio' => 'application/x-sv4cpio', 'sv4crc' => 'application/x-sv4crc', 'svc' => 'application/vnd.dvb.service', 'svd' => 'application/vnd.svd', 'svg' => 'image/svg+xml', 'svgz' => 'image/svg+xml', 'swa' => 'application/x-director', 'swf' => 'application/x-shockwave-flash', 'swi' => 'application/vnd.aristanetworks.swi', 'sxc' => 'application/vnd.sun.xml.calc', 'sxd' => 'application/vnd.sun.xml.draw', 'sxg' => 'application/vnd.sun.xml.writer.global', 'sxi' => 'application/vnd.sun.xml.impress', 'sxm' => 'application/vnd.sun.xml.math', 'sxw' => 'application/vnd.sun.xml.writer', 't' => 'text/troff', 'tao' => 'application/vnd.tao.intent-module-archive', 'tar' => 'application/x-tar', 'tcap' => 'application/vnd.3gpp2.tcap', 'tcl' => 'application/x-tcl', 'teacher' => 'application/vnd.smart.teacher', 'tei' => 'application/tei+xml', 'teicorpus' => 'application/tei+xml', 'tex' => 'application/x-tex', 'texi' => 'application/x-texinfo', 'texinfo' => 'application/x-texinfo', 'text' => 'text/plain', 'tfi' => 'application/thraud+xml', 'tfm' => 'application/x-tex-tfm', 'thmx' => 'application/vnd.ms-officetheme', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'tmo' => 'application/vnd.tmobile-livetv', 'torrent' => 'application/x-bittorrent', 'tpl' => 'application/vnd.groove-tool-template', 'tpt' => 'application/vnd.trid.tpt', 'tr' => 'text/troff', 'tra' => 'application/vnd.trueapp', 'trm' => 'application/x-msterminal', 'tsd' => 'application/timestamped-data', 'tsv' => 'text/tab-separated-values', 'ttc' => 'application/x-font-ttf', 'ttf' => 'application/x-font-ttf', 'ttl' => 'text/turtle', 'twd' => 'application/vnd.simtech-mindmapper', 'twds' => 'application/vnd.simtech-mindmapper', 'txd' => 'application/vnd.genomatix.tuxedo', 'txf' => 'application/vnd.mobius.txf', 'txt' => 'text/plain', 'u32' => 'application/x-authorware-bin', 'udeb' => 'application/x-debian-package', 'ufd' => 'application/vnd.ufdl', 'ufdl' => 'application/vnd.ufdl', 'umj' => 'application/vnd.umajin', 'unityweb' => 'application/vnd.unity', 'uoml' => 'application/vnd.uoml+xml', 'uri' => 'text/uri-list', 'uris' => 'text/uri-list', 'urls' => 'text/uri-list', 'ustar' => 'application/x-ustar', 'utz' => 'application/vnd.uiq.theme', 'uu' => 'text/x-uuencode', 'uva' => 'audio/vnd.dece.audio', 'uvd' => 'application/vnd.dece.data', 'uvf' => 'application/vnd.dece.data', 'uvg' => 'image/vnd.dece.graphic', 'uvh' => 'video/vnd.dece.hd', 'uvi' => 'image/vnd.dece.graphic', 'uvm' => 'video/vnd.dece.mobile', 'uvp' => 'video/vnd.dece.pd', 'uvs' => 'video/vnd.dece.sd', 'uvt' => 'application/vnd.dece.ttml+xml', 'uvu' => 'video/vnd.uvvu.mp4', 'uvv' => 'video/vnd.dece.video', 'uvva' => 'audio/vnd.dece.audio', 'uvvd' => 'application/vnd.dece.data', 'uvvf' => 'application/vnd.dece.data', 'uvvg' => 'image/vnd.dece.graphic', 'uvvh' => 'video/vnd.dece.hd', 'uvvi' => 'image/vnd.dece.graphic', 'uvvm' => 'video/vnd.dece.mobile', 'uvvp' => 'video/vnd.dece.pd', 'uvvs' => 'video/vnd.dece.sd', 'uvvt' => 'application/vnd.dece.ttml+xml', 'uvvu' => 'video/vnd.uvvu.mp4', 'uvvv' => 'video/vnd.dece.video', 'uvvx' => 'application/vnd.dece.unspecified', 'uvx' => 'application/vnd.dece.unspecified', 'vcd' => 'application/x-cdlink', 'vcf' => 'text/x-vcard', 'vcg' => 'application/vnd.groove-vcard', 'vcs' => 'text/x-vcalendar', 'vcx' => 'application/vnd.vcx', 'vis' => 'application/vnd.visionary', 'viv' => 'video/vnd.vivo', 'vor' => 'application/vnd.stardivision.writer', 'vox' => 'application/x-authorware-bin', 'vrml' => 'model/vrml', 'vsd' => 'application/vnd.visio', 'vsf' => 'application/vnd.vsf', 'vss' => 'application/vnd.visio', 'vst' => 'application/vnd.visio', 'vsw' => 'application/vnd.visio', 'vtu' => 'model/vnd.vtu', 'vxml' => 'application/voicexml+xml', 'w3d' => 'application/x-director', 'wad' => 'application/x-doom', 'wav' => 'audio/x-wav', 'wax' => 'audio/x-ms-wax', 'wbmp' => 'image/vnd.wap.wbmp', 'wbs' => 'application/vnd.criticaltools.wbs+xml', 'wbxml' => 'application/vnd.wap.wbxml', 'wcm' => 'application/vnd.ms-works', 'wdb' => 'application/vnd.ms-works', 'weba' => 'audio/webm', 'webm' => 'video/webm', 'webp' => 'image/webp', 'wg' => 'application/vnd.pmi.widget', 'wgt' => 'application/widget', 'wks' => 'application/vnd.ms-works', 'wm' => 'video/x-ms-wm', 'wma' => 'audio/x-ms-wma', 'wmd' => 'application/x-ms-wmd', 'wmf' => 'application/x-msmetafile', 'wml' => 'text/vnd.wap.wml', 'wmlc' => 'application/vnd.wap.wmlc', 'wmls' => 'text/vnd.wap.wmlscript', 'wmlsc' => 'application/vnd.wap.wmlscriptc', 'wmv' => 'video/x-ms-wmv', 'wmx' => 'video/x-ms-wmx', 'wmz' => 'application/x-ms-wmz', 'woff' => 'application/x-font-woff', 'wpd' => 'application/vnd.wordperfect', 'wpl' => 'application/vnd.ms-wpl', 'wps' => 'application/vnd.ms-works', 'wqd' => 'application/vnd.wqd', 'wri' => 'application/x-mswrite', 'wrl' => 'model/vrml', 'wsdl' => 'application/wsdl+xml', 'wspolicy' => 'application/wspolicy+xml', 'wtb' => 'application/vnd.webturbo', 'wvx' => 'video/x-ms-wvx', 'x32' => 'application/x-authorware-bin', 'x3d' => 'application/vnd.hzn-3d-crossword', 'xap' => 'application/x-silverlight-app', 'xar' => 'application/vnd.xara', 'xbap' => 'application/x-ms-xbap', 'xbd' => 'application/vnd.fujixerox.docuworks.binder', 'xbm' => 'image/x-xbitmap', 'xdf' => 'application/xcap-diff+xml', 'xdm' => 'application/vnd.syncml.dm+xml', 'xdp' => 'application/vnd.adobe.xdp+xml', 'xdssc' => 'application/dssc+xml', 'xdw' => 'application/vnd.fujixerox.docuworks', 'xenc' => 'application/xenc+xml', 'xer' => 'application/patch-ops-error+xml', 'xfdf' => 'application/vnd.adobe.xfdf', 'xfdl' => 'application/vnd.xfdl', 'xht' => 'application/xhtml+xml', 'xhtml' => 'application/xhtml+xml', 'xhvml' => 'application/xv+xml', 'xif' => 'image/vnd.xiff', 'xla' => 'application/vnd.ms-excel', 'xlam' => 'application/vnd.ms-excel.addin.macroenabled.12', 'xlc' => 'application/vnd.ms-excel', 'xlm' => 'application/vnd.ms-excel', 'xls' => 'application/vnd.ms-excel', 'xlsb' => 'application/vnd.ms-excel.sheet.binary.macroenabled.12', 'xlsm' => 'application/vnd.ms-excel.sheet.macroenabled.12', 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'xlt' => 'application/vnd.ms-excel', 'xltm' => 'application/vnd.ms-excel.template.macroenabled.12', 'xltx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', 'xlw' => 'application/vnd.ms-excel', 'xml' => 'application/xml', 'xo' => 'application/vnd.olpc-sugar', 'xop' => 'application/xop+xml', 'xpi' => 'application/x-xpinstall', 'xpm' => 'image/x-xpixmap', 'xpr' => 'application/vnd.is-xpr', 'xps' => 'application/vnd.ms-xpsdocument', 'xpw' => 'application/vnd.intercon.formnet', 'xpx' => 'application/vnd.intercon.formnet', 'xsl' => 'application/xml', 'xslt' => 'application/xslt+xml', 'xsm' => 'application/vnd.syncml+xml', 'xspf' => 'application/xspf+xml', 'xul' => 'application/vnd.mozilla.xul+xml', 'xvm' => 'application/xv+xml', 'xvml' => 'application/xv+xml', 'xwd' => 'image/x-xwindowdump', 'xyz' => 'chemical/x-xyz', 'yaml' => 'text/yaml', 'yang' => 'application/yang', 'yin' => 'application/yin+xml', 'yml' => 'text/yaml', 'zaz' => 'application/vnd.zzazz.deck+xml', 'zip' => 'application/zip', 'zir' => 'application/vnd.zul', 'zirz' => 'application/vnd.zul', 'zmm' => 'application/vnd.handheld-entertainment+xml' ]; /** * Get a singleton instance of the class * * @return self * @codeCoverageIgnore */ public static function getInstance(): self { if (!self::$instance) { self::$instance = new self(); } return self::$instance; } /** * Get a mimetype value from a file extension * * @param string $extension File extension * * @return string|null */ public function fromExtension(string $extension): ?string { return $this->mimetypes[strtolower($extension)] ?? null; } /** * Get a mimetype from a filename * * @param string $filename Filename to generate a mimetype from * * @return string|null */ public function fromFilename(string $filename): ?string { return $this->fromExtension(pathinfo($filename, PATHINFO_EXTENSION)); } } PKCA#]�F�rcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FileUpload/FacebookResumableUploader.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; use Facebook\Authentication\AccessToken; use Facebook\Exceptions\FacebookResponseException; use Facebook\Exceptions\FacebookResumableUploadException; use Facebook\Exceptions\FacebookSDKException; use Facebook\FacebookApp; use Facebook\FacebookClient; use Facebook\FacebookRequest; /** * Class FacebookResumableUploader * * @package Facebook */ class FacebookResumableUploader { protected FacebookApp $app; protected AccessToken|string|null $accessToken; protected FacebookClient $client; protected string $graphVersion; /** * @param FacebookApp $app * @param FacebookClient $client * @param AccessToken|string|null $accessToken * @param string $graphVersion */ public function __construct(FacebookApp $app, FacebookClient $client, AccessToken|string|null $accessToken, string $graphVersion) { $this->app = $app; $this->client = $client; $this->accessToken = $accessToken; $this->graphVersion = $graphVersion; } /** * Upload by chunks - start phase * * @param string $endpoint * @param FacebookFile $file * * @return FacebookTransferChunk * * @throws FacebookSDKException */ public function start(string $endpoint, FacebookFile $file): FacebookTransferChunk { $params = [ 'upload_phase' => 'start', 'file_size' => $file->getSize(), ]; $response = $this->sendUploadRequest($endpoint, $params); return new FacebookTransferChunk($file, $response['upload_session_id'], $response['video_id'], $response['start_offset'], $response['end_offset']); } /** * Upload by chunks - transfer phase * * @param string $endpoint * @param FacebookTransferChunk $chunk * @param boolean $allowToThrow * * @return FacebookTransferChunk * * @throws FacebookResponseException * @throws FacebookSDKException */ public function transfer(string $endpoint, FacebookTransferChunk $chunk, bool $allowToThrow = false): FacebookTransferChunk { $params = [ 'upload_phase' => 'transfer', 'upload_session_id' => $chunk->getUploadSessionId(), 'start_offset' => $chunk->getStartOffset(), 'video_file_chunk' => $chunk->getPartialFile(), ]; try { $response = $this->sendUploadRequest($endpoint, $params); } catch (FacebookResponseException $e) { $preException = $e->getPrevious(); if ($allowToThrow || !$preException instanceof FacebookResumableUploadException) { throw $e; } if (null !== $preException->getStartOffset() && null !== $preException->getEndOffset()) { return new FacebookTransferChunk( $chunk->getFile(), $chunk->getUploadSessionId(), $chunk->getVideoId(), $preException->getStartOffset(), $preException->getEndOffset() ); } // Return the same chunk entity so it can be retried. return $chunk; } return new FacebookTransferChunk($chunk->getFile(), $chunk->getUploadSessionId(), $chunk->getVideoId(), $response['start_offset'], $response['end_offset']); } /** * Upload by chunks - finish phase * * @param string $endpoint * @param string $uploadSessionId * @param array $metadata The metadata associated with the file. * * @return bool * @throws FacebookSDKException */ public function finish(string $endpoint, string $uploadSessionId, array $metadata = []): bool { $params = array_merge($metadata, [ 'upload_phase' => 'finish', 'upload_session_id' => $uploadSessionId, ]); $response = $this->sendUploadRequest($endpoint, $params); return $response['success']; } /** * Helper to make a FacebookRequest and send it. * * @param string $endpoint The endpoint to POST to. * @param array $params The params to send with the request. * * @throws FacebookSDKException */ private function sendUploadRequest(string $endpoint, array $params = []): ?array { $request = new FacebookRequest($this->app, $this->accessToken, 'POST', $endpoint, $params, null, $this->graphVersion); return $this->client->sendRequest($request)->getDecodedBody(); } } PKCA#]k'���ncomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FileUpload/FacebookTransferChunk.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookTransferChunk * * @package Facebook */ class FacebookTransferChunk { /** * @var FacebookFile The file to chunk during upload. */ private FacebookFile $file; /** * @var int The ID of the upload session. */ private int $uploadSessionId; /** * @var int Start byte position of the next file chunk. */ private int $startOffset; /** * @var int End byte position of the next file chunk. */ private int $endOffset; /** * @var int The ID of the video. */ private int $videoId; public function __construct(FacebookFile $file, int $uploadSessionId, int $videoId, int $startOffset, int $endOffset) { $this->file = $file; $this->uploadSessionId = $uploadSessionId; $this->videoId = $videoId; $this->startOffset = $startOffset; $this->endOffset = $endOffset; } /** * Return the file entity. * * @return FacebookFile */ public function getFile(): FacebookFile { return $this->file; } /** * Return a FacebookFile entity with partial content. * @throws FacebookSDKException */ public function getPartialFile(): FacebookFile { $maxLength = $this->endOffset - $this->startOffset; return new FacebookFile($this->file->getFilePath(), $maxLength, $this->startOffset); } public function getUploadSessionId(): int { return $this->uploadSessionId; } public function isLastChunk(): bool { return $this->startOffset === $this->endOffset; } public function getStartOffset(): int { return $this->startOffset; } public function getEndOffset(): int { return $this->endOffset; } public function getVideoId(): int { return $this->videoId; } } PKCA#]�K���fcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FileUpload/FacebookVideo.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; /** * Class FacebookVideo * * @package Facebook */ class FacebookVideo extends FacebookFile { } PKCA#]g����ecomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/src/Facebook/FileUpload/FacebookFile.phpnu�[���<?php /** * Copyright 2017 Facebook, Inc. * * You are hereby granted a non-exclusive, worldwide, royalty-free license to * use, copy, modify, and distribute this software in source code or binary * form for use in connection with the web services and APIs provided by * Facebook. * * As with any software that integrates with the Facebook platform, your use * of this software is subject to the Facebook Developer Principles and * Policies [http://developers.facebook.com/policy/]. This copyright notice * shall be included in all copies or substantial portions of the software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. * */ namespace Facebook\FileUpload; use Facebook\Exceptions\FacebookSDKException; /** * Class FacebookFile * * @package Facebook */ class FacebookFile { /** * @var string The path to the file on the system. */ protected string $path; /** * @var int The maximum bytes to read. Defaults to -1 (read all the remaining buffer). */ private int $maxLength; /** * @var int Seek to the specified offset before reading. If this number is negative, no seeking will occur and reading will start from the current position. */ private int $offset; /** * @var resource The stream pointing to the file. */ protected $stream; /** * Creates a new FacebookFile entity. * * @throws FacebookSDKException */ public function __construct(string $filePath, int $maxLength = -1, int $offset = -1) { $this->path = $filePath; $this->maxLength = $maxLength; $this->offset = $offset; $this->open(); } /** * Closes the stream when destructed. */ public function __destruct() { $this->close(); } /** * Opens a stream for the file. * * @throws FacebookSDKException */ public function open(): void { if (!$this->isRemoteFile($this->path) && !is_readable($this->path)) { throw new FacebookSDKException('Failed to create FacebookFile entity. Unable to read resource: ' . $this->path . '.'); } $this->stream = fopen($this->path, 'r'); if (!$this->stream) { throw new FacebookSDKException('Failed to create FacebookFile entity. Unable to open resource: ' . $this->path . '.'); } } /** * Stops the file stream. */ public function close(): void { if (is_resource($this->stream)) { fclose($this->stream); } } /** * Return the contents of the file. * */ public function getContents(): false|string { return stream_get_contents($this->stream, $this->maxLength, $this->offset); } /** * Return the name of the file. */ public function getFileName(): string { return basename($this->path); } /** * Return the path of the file. */ public function getFilePath(): string { return $this->path; } /** * Return the size of the file. */ public function getSize(): int { return filesize($this->path); } /** * Return the mimetype of the file. */ public function getMimetype(): string { return Mimetypes::getInstance()->fromFilename($this->path) ?: 'text/plain'; } /** * Returns true if the path to the file is remote. */ protected function isRemoteFile(string $pathToFile): bool { return preg_match('/^(https?|ftp):\/\/.*/', $pathToFile) === 1; } } PKCA#]��3�Jcomponents/com_sppagebuilder/assets/vendor/nickdnk/graph-sdk/composer.jsonnu�[���{ "name": "nickdnk/graph-sdk", "description": "Facebook SDK for PHP 8+", "keywords": ["facebook", "sdk"], "type": "library", "homepage": "https://github.com/nickdnk/php-graph-sdk", "license": "proprietary", "authors": [ { "name": "Facebook", "homepage": "https://github.com/facebook/php-graph-sdk/contributors" } ], "require": { "php": "^8.1" }, "require-dev": { "phpunit/phpunit": "^9.5", "mockery/mockery": "^1.6.12", "guzzlehttp/guzzle": "^7.9.2" }, "conflict": { "guzzlehttp/guzzle": "<6.0" }, "autoload": { "psr-4": { "Facebook\\": "src/Facebook/" } }, "autoload-dev": { "psr-4": { "Facebook\\Tests\\": "tests/" } }, "replace": { "facebook/graph-sdk": ">=5.7.0" } } PKCA#]����1components/com_sppagebuilder/assets/composer.jsonnu�[���{ "name": "joomshaper/sppagebuilder", "license": "GNU-GPL2", "authors": [ { "name": "JoomShaper", "email": "support@joomshaper.com" } ], "require": { "nickdnk/graph-sdk": "^8.0" } } PKCA#]��Z_(F(FOcomponents/com_sppagebuilder/assets/editor/dist/images/8371734f429ed1f93a89.pngnu�[����PNG IHDR~��m�EPLTE���������������������������������������������������HOf1���;�X�������`�\ �������f�s)�|6�v.�j����m!�c�y2�p%���������������������������������������x}�ZZZ��UUU���""#��������PPP_ey```��������,,,������KKL��棧�����ϵ�h���000����~���ワiiiz���ʯ��SZp�������������ddd�N�q�ނ�ä�444'((nnnHGG����w�788��D�|�}���������9���o�\�}����c�rrr����k��sDDD������Ǩ�c���6�����{{{ﶏ�uAAA��渻�F���~:;;vvv>>>�qW���[yׇP��ߌ�����{i�ۯ��p��>�������������b���}����j�����Ջ�����������w��������������)kp�?ux�����f������j*<>����3����B��Ԧ�����Wa0NP;��4`b����������,x��Y���Wv�o空�˲Y&�MJݕ(jp��{.��ޗ���i4��ˬ��nRJ�^Fu�����R��羀�G[��G�f"g@B,�Ä�Rl�m:a���g���l��Ъ-����v�m�z��a�s�կ����ʞ���ItRNS`�@� p���0P���Sg�B�IDATx���Mn�0��a0Iԑ��=X��%$$��@9E.�Eӳ�D���1���7�xm,d(yR�4��k�E��lL���*y2�OX��9������ό��8���q쬎����+���U�[~P����c�T@I:�/� ���� Uj*�ѯ�@����vj zPS�:��d���� \��WQ��~U���!�?.���!�?.���!�F�ֹvto�}�K���ߞ��Ww7�62��:J��ߟ�ݹ����C�;3]e��붽tK�wc��ri�c�^�u������L���۲��{k�_՝��������� �K�+�0w$$$CDn�sp1���l�Q�Mv���/�.��?``cӘ�H��A���2���<�?؞�Y�2�?�k: hGfG���]�=%ɘʃ��$��*���̊3D�wT0YɰN�a���?�Ef�_L��Jb(m�]�K�r���Z�z�^�?]}D �O�%.A@� �W� �_��撃�6�~@�v�Gv�NkeƮ7��9�'��v ��J�=ᒑ��F��/�ztt�c�U0U�|� ]-ǂX&������([�\�cv�v�����מ{q��˷k�\�.����^�~Pr-� ^�S0fK�c��+�<�1���O������(�S�n�`<�&P�$pV���~����j��7,g���G�M��L�P+�C]�k�Y#��<����Q���ZE����G������b�c�+�x�22בhْ���u�7V�O'E�u�GB|f���.~��g��Vc.ZS�3�}"�)_�/1~� �����,�V�"���^��yF��ҴIa�lG�-uu�6�N��Y�1�_Ǐl�O�Fm}k��_[�@Dر����ȳ⧰��z��y �yR���$2�ʶ�az�R��迂�44�[�~�@���gV1q��>�{5AD �}�f�!c���gZ�~^7�Ps]ñL�S�r�#�k�`��V3 +CP5 ��S��^�O@+~� �rˑ-�<��h��[C��e8~�ڃf���X�ЄyO�� ����i?���h�O�R�uur��e�&Ԇ���O��O���s���sƔԣS�DM�Q�֞����Ӣo<�08��Ћ�) ��2�a!�"�k�5��ʼn���MKCa�&PD=u?]��![��Q�>%&n�:�^&�Psg�O�ip�TC \�X�R#�[�:~�spu�>V o3BE�\�di#,�krYU\ Ҡ��tKF��<�L�w}5쵚�R��v}M��Og~�������߇�,+��ϼ�%��Q:/��,S��;_T���y�����Ӊ�Yf�Q��E�ө�>���{�}�>���{�}����i/e������8.��� ݭ^c�%�5�O��R<����˧[��~�;���1�?>��q�w=�loJh�tK� �O���/�o��۹�f�}��+��1�=�y1�,'�X9�:�5����+���~)���d/�*u`#�l?��V���N�=��D����4f&\��(r�U=����:]�=��]��/��^��n#�zZ+,�mɌd��)��$�ǵ��UޗR����/�����m��,u뛘=�HH�'�@�"�`�ӵ��<��肚�� ��/$c�y�v�O��lC�!���S�-~�~�4װ��~��.{�E�d6�ibT;0�0�ŏ�P4�J�я���b�<���H��)�c:{���Z�o�]<�*;*?�d��g�e�ͭ�*��Y�6�e�?H%��]����~XU����*zqa�ݟ���ݟW?'D �,~�)��(ާ�2�D�ɶ��d�s�~���I%�烩Tj9c,_y������\#P����Jį�T,N�K;Hڀ���Ԣ�(c=�]7��\g�3����W̮������IwY��gg��y%�KT�]���Gx�{p�~�?ՠ����Ի.Z����о��9 9�vW����R��,�f�Tf�c���|��������?��+qg���R�������?�n�[t�f��i�w= {�@������-��[�?���o��ߢ���E�C������cǎUۈ��?� �����@���%:x��I�G�!-��Ex( Y��>B�^�u�t8� w��K�K��D>ɪ��?��_W�N�����]5�95��j�sj�u�����ϩ��U�S㯫�?���;�D �9�{O����G�1A%����H���w>ҏY*��qJ)�7�k����@��)�oe����2xKP�]���ViƘ��Z����@�R)%"Ʒ�H��4-gQ�����Đ����(BY���߹qsEmͻ�AS�\G�n%�>$}�l���UJk�$��@��*��� � �?p�@dP���!�M���M���Lӆs*a��\C_#�;oN#�5`�g:�-�8|p>�?� ��I�T��{:�� o��ۘ�z�w��D��W�4'�d{�����$�ݵu;~���n��#h֟��>�O��A�rD ��/�ɤϳ>�ӣ�-��9Z)K��T������c�7�9��#I����/P0��b�;Ra���Gy�'�'�yX�ǏH �< 9RaK����ɓi�9"�s� Q\O�f\��_�?���J�.�D|����_������;a��#^�NWx��/O����0����ݏ{r�u�����˟�=�)�/ ��w�����k#U���xPzӛ����[+���:̖���&h�/�$0���� ,I,F�T*5��H�P��E�v]�?����}O&��IS�Vk퓤�f]��y�礝��F3f.�"�`.���b&�h�(uw����m��J���/U�3�b��N������P����e��n!�;�`��;K�-P:��H���m��-ב���bPT]A�\̥Ѕ�1��N�t�2::jT��(�k��J:�F�wm�h��L��}�*��?��8���Ï/�9�u�������}�?���!��[n���<��B<�2������k-�������f�S/��f���B���щ����[n������_6ӊ��ݢ'��ߣ����b�8�ީ��C�w�r����7^�Mܦ�2������pm➫�ñ�:(�::M[�����e��Ըxep�����;�߬��Tʹ�.��*K� zt4�� F��tsﯫL_ؿu�l�b�Ϭ�|)��7(ީPH<q�-�/�w����mΉП�X��Bmo]!|�Sב�N�7}���s� ?֊~��+"}.p�@�t�]�pW_��:r�-�t��I�u}u㾻���!����RI��E`�����>|�n^q:�]��ڼb�s�A��y��w���?��A�o�=+�T7�ģ����h��C]���vp؍�!t$�����l�MJ0 �X�J�a�y����s��O��h����E:���צm�%�'��L�$��N�O�` �������9�X�o*a����p��6��z�DT�9V>�N�MM!ifZjՃ�����cw�M|1������,A��߰�(Ї�U�-f����DB�3/�h�����S�Z:M�GFB���s���z#�����?k=5��B�����eLM��m�R);�ˊf5kE���,������`�.Ǿ875666��������蹱�s��j��e�G��9p����〾�o~�)w~J��(ƚ�0�`~.��� ����ѯ����(|�B_��;������ȑ����.�3�$�F2�6�<>}��? �_�~i������0�Sc�������Oa������g��?|j�@P���\��g�V��s��>��e��7.���.�_Sc�4�����A���w�X��v>�����$(��\���� �l�P(x)]��B�a�������s���v���w;$u(�?i2�J�ك�TF�����]�_Z*��ʕ�-+n�-�Q)ڷ����C���]�h���H ���NCچ?&��!�]���WY�_^^^\\��_"�F�W}�����!�_�'�7�߮��w��;Y�z5�ߪ7?p��a {2�N� �]�������iӊ���C������F�v0t�?��I�Z�߰@?M���t��\��+��(&դ�����RA�%1BVu�ƃ��8T���l{���f����>�����51����_O�����w�IZV���A>C�����lg�SN)�|^���C~��x|vr��OM�=������3#��`����f|���w�� ?r�A7n�n�S Ї�?Ōb��7���-�/./.����V\C���������=x��%�?88�ȟ����5���x ��wv`��3����٦����Q�2�Ogr�GS�<<�%�/g=]�m,�c��r<�R�O:a� ���?DC�O���(��l�����~������ #�,D���2�J��ye�Dٳe����]"Ϗ?������7�����<��t�# �c�~��?x�P�K�9{�|����.}ȇ?������@�ffq��D[�p���?�[,��V�5�T��X��B!�����o���fT��>ѕx)�-t�e��W��Y<^>�����������jM�?���>s��3�'��M!{�� �"K �6�-�({|�g�'�I�^����,VR ���)[G�Y��/�M� Yjh9G���{O���o���/�皇�_:{��Kߞ~�SmX8~�z"�?0�? 7�k����Y��f��qH-euM��̝����m��Zo~���K�����3�(*��7���nB��bʍ@��ޗƁ�^���K��� ���M�C��އ��z�Pk���v�$�c͋u��ӈwƵs1rH� �V�T�9Y%�x�M���g\p����!��[;���ҥ^���o�G:p������rf���2��Ą�����e��Dռ�i6�ٺ�a�Q�%�ͼ��nA�����3��+�h�����=$�����*���n�|�S�ߦ�t�9�{zF���;���%�~�O��~d�&+h:��D�3���}-c���0'�Ջ�=n|��a�Z�".�W��j�����ֻU��H�7����?�����)��gǸ�@/��N�z���b���6s!��A\�*��,.��Y�����Z�k{ �>}X��?%�8^Ջ�2��#���a�����{[�?E�7'p?�S(�2ܴ&�Ԭp���f+e̿�����0(��p�Ǣ��Q[R���ڻ;xv��0?�����S�猟vq�ѩ����uK�C�٨+L�%�_Д�?��/x�,��4 2*�s��z�d�;|M�"�f��zqkx��]�~*=߹���������G����W�j�?X�~0�N/�߃ p>�/�ɴ���ʥ��E���U��翍�-���� wV�M`|���;K�7����WzNG�Y�aʞʞzvǿ��]wUW��ߔu��͖i�ki~��4r6�G3ik/�,�ߟ<V�72��b氽_��S��iă� ��!Ə�9��G���. ��r��Nk,��y�_�ȦF�O&����Z)(�V��-m� ���qos�j��9�@o�� ��y��#{n���J����J��E�]@� g�糺�v�J![�p�Tl��T�#�K��Z?c�v���Հ�ڇC���0~��S�_�;����uC��gx�1U���(�����y������&�+�*��zF�/�h%F�_|�B�C��1���ᡫ�so�u�a�纓�� �-u;~��S���ғ�Y�?�ٗ*���K*\�.?�g�ϒ���6�����5�C{�����8��gآ�>�h��Oyɶ�|���v*�k.��Ȋ��%�c���?������__����TӍ�w�|��#~`wx���ة�۾[~s9�ȨB1��Q�NƏ����^���f�!�C�-)VK�����q�:��w7�yݯ__wݛ崩YZ���9s� ����~��rm-�a�= �d7�e;k���|^_^�i�+��i���d���JXL�%��O��oi�����I����2�CH���~/of���7���,g��̈́&{v2Z��3_�Y���ߣ�'U(����Y���@�!q� FG�*��e*�i��Ġ���%0�\��6�_��~���#�_���zFJ��������ƞ�l�>c8p�U (�RY/���6����}��}�������-����bE��ș�_�Sel�n��<��WJ�:��z).Z�s'���i�Ӈ$���f��UAT�(�H��d���2���������L�j/1'��N�����+�D_ :nRR3Q���W�4�{�=����� [?K�C�5�i�^��O����o>%��-�~�� O7���S���(��)�@����@�'� :�So�8l����矽��j�jx��ɢ���qe���i�#���]�o����M�����`-�H|��u����g��8��6 >j�(t2�9!'�>m���o �@}7]��o{��K��;��}�� �Y�&�/�!q^��>�n��F����+�l !d���_����M�:����?>�3�3�F��?�~7�?W�L�� ?��8�l�:��U�0���?7�f�u�j�bO3~���r��MS�9E����H��c�N���O������E���?e�ɹnF���_�x`8rH��졺� �H�~u<�o8�_s��?N��P>o9E�P�+� �����D� g��Bhw�/_�]�{�O"}������\C�B!�s�愤��1Ux_�\��Vۅ���}]'�����j ��?&Uv�K��h�6,/���Q�j�G�t�|��\יF�c�۷�8}|����%҇Ѓ?��֟�q�'�DR7�]� ��_�!�k�c�ۻ�$���k����2ֽ�=�ͳ���QZ%��!vط��������w?���3����+�=����߷?�]D��G�Y{�Pz�z5�?�vh�?�?���'��������~���*~`7��s-�N5��:����߳VjY��vR��|�*��?~�އ��=��+?������j�@�?��ꝗ\����+6gO�]{�?�#���ǃ�<���\ :�\,抮e�!7_t��|Fb���~�� ����:�5�O<�?�8+3�s��߁���2i��tE�P�Ϝ�o�����!��<���l:�{-Z&O�C31$��usXQ���p����ۜ�#U��2�(vzME��?�$^ $�t�Y��f��:����� ��?��3QƏs&�����?��r,A_SA����g{�6����>�S7�>V�ׁ_1s��VL]����Gѳ���m����Z��������i�"D�=3S��pE=A'�]:�����G�;��b�|_)�0�'LD����RP�/Ο/9��Z�l�̺/nGXvWqY���\6& =��pP�)�A�֔�T�=�N��P��>3�Mc��C�'>�n������3ߙ�\�f������7��,폏=�����_�̓� ǿdO5�6�C�g��wЇ���7��2~n��/��}� �-�������Fӆ���|��Z�`�'����$>�+y��?(�?�+��;���6�c�����k��u��ͯ��w9~H����Dן0ͥm�dž����G���e�z��?:�� ����Aq���?,/��K�]a�E����c�_j�+��0�?�W5���[��R�:� ����t�SJy�l����x�e��=�qIE4�� L�d����e����h������ފ������'����(��҃w>���^I���ũ��G�����z��s�>�����[��O�a�?���~��WN9��A�ᆱW��F���&��bA--}w͏G/�{����j߯4�&�C�?x�?���>5O<��3���ţ�C��29Ub>�,�Q��?~�J�ѳ�+� �0����?�����S���Ӳ�Q���z��o�յ��}.,&J�<>�~դ��W��s ��~�&\��T���3 ~З�u_8�ƏZ�gT��\���~����Qџ��K����#�ϣ��������7W6L��T���;3Y�Ǚ_i���3��{�W3Is�F�=*&�*������F-�2�nQ)ӗ5,g�}��ۿ��[����kAe!�J�(߄�����n�����M��@�S��~r��"�2������ٴ�?O8]����+�A0�_��vB�_�>Lޔyu���v {��,�ߴ�&�Q���B�#�S�����N�]ט"�I����|+�Jpu���Y,lJ�_���@��.��0�]C�E�Lڍ� H����9+}�蹇��� Þ)U�ܿ�U�g�pF�L d�7�7U��K�/����ӯ�y[�t�*�j������j(�,Μ����s�G�n;Ρ{���'_�g�,��n��:Jp�#j�E6O�Wt����U�cL����P1������Ժp�Co_x��N��y����ə%�[�c�b��ㅮ���FN������ʚ���Gl]�7zΆo�x�J�0J��Y����姾�zqB�_Y�Ԗˢ �L�&������s�L�E'�4�ۮ�X��Ϲ�8�b��H7���g��)P*ݟy�Y�<���`�8�Ж�cSM](�M�MO���p�L��gJr�U��o"�%�w*�ʤA��/�h�ч^��c՚":�eҤ�l��f�^���Ĕ��L�}�t�p�ɬ�0ffQ�R��-�k����ժ�9�T3������?����Z]Я���f �_k7I�p*T�ǰ�2�;P��9�����Jf�0��Sd"�(� i���-���7%���f�L�����jd5IK�oS0�����B�ЪK�ܬ]dL�9�6;qD���9b苓3N�{k���M�&����X6?�8%ٓV� ��-10oR�*@��N��-Z'���<>�&gK��T�i�s�%2�����C�;4A�'�t �e��Ep"�`��Dߓ �3|2p���$HAu�j��M�/�@_��H�F�{���;�ȑ�[�ǐ������S��[�B�if�9X����%{Ҋ?��'�� �m�����ˬ.�C�B��Q��ՙ�?��Ļ�6Zй�5L������I�n1n�����[�B�kiXlN3����۠^��.�b5k b�W���Y��I�X<4� �4Uur92;YZ����=_"�cH|��Z'�Z��A�ӌ?Ӳj5�DWuU���x��-Kk��`�89��"V� sGrvCo؆�ؕjeA.pj����#i.gj<3���܌g��M�\��n�۬��6Y��d�Q(`�1�-��y��3�����\��jQ�75�帎�0q6�#oe�r|�KWf���|�k#/���������3;ث%K �\T �-<CG����9aC��աFr<�{�Z=�����,3�ȷ2���o"y��Ŀk��W�;vr�2���B>�_����?N�p�+ժ�ދ�q�P�� �>s����<��s�0X#/a��z��wr�t��d������a~���T�ܹ���1��������������)�C�O��d��+ ��]��_p�B z�?/�k���%ͯ1�gT��Z�m�?'b��#��7��7>��z��Cz��w���/��a3\;*���w�9�Ű�&�'4��2�y������zðuC�w��V�"+����"\����.��3ԫ�~ϥ)ƿ5�jf�Z\$����D�Q�ض��K���`�+z�>B�J���!����~���M�r����-t�}�y"��Uߐz'��?�R�+~,K=F��9 ��dE&�~�CG4�.��GL��S��~Nw_�|�=@�]~F�E�+��KS�x ��bG��5�k&b�_�Q���c���ch�H���)�3U��km�V�,�ߴ_�]5:z� GB zH=~��-�VD~ y���J�.�7`����#����FhSu=Cue�L�~�j�k��ل?�����ym�����z)��Z�m��� �HEo3K/�a$��,�"BR�7D��DQF�у:�P�A��M��إ�����F+|�g�y�4��+�������N�4��}y���X�cV� ��#]�_kM�ĸg鷂�$>�V�Xz3A�~1w����͖�S��o�5��q��A3���7���=>sN@bp�K���X�|��|�ż�,�r;�����.(#~t��1�L|�'�&s��#џX�{x�����n��y������+&b��ƶ^Я�C�<�A���/��m?y4�c�l�O�������J����`���5v�kȞF��� Om�Z��^�Y���|�0�� �i�XZ�BL!�������s@�5J���a�4+�Ϩ��i�ѧ���X#g2)�$��s�XT?\�0�I�?�?�_o��]����?�j��a_�?�� ��5�>�ۨ�s�?K�,/�H�`Q�Ǒ:TK��_�#������'���� ���+��O�+¿��.����b����>'��Ϳs�-� �EuX-����pwY��b<�(��',���[��`.��v(�+&V_���3�&�==�|Zw�}��y�k� #x�jq$�v�]�����ä��Z�e��w���0�5p�l�mo����b�ܹ-z�q�?VU��p��<gFhxϨ4Tw/��e����/˔>JX�K ���5��f�A�����*zӿ�1��/a�].�.�ߐ~���쩄a�s�>����A�]���O<��j���` ��)]5k�,�J�����:��q�Uud�Ʈ��Ȟj�۪�]?���i�O�oȺ�j�+��ׇF����lm@���!�W��τT? ������5�:;u@����ЯJ¡��7B������7\�c���k��Ǧ�U쨭q��o����_���8?�r�>P�&�~ё">a����@�ڎ��ny�RG$�t<�ͦ��ny~z�l�Frc� �� k��x��??-C�7�ﮐ{?����S)����}��ooHa��K���s��nm��!��#��S��|n=��� ���J��}��z��!�(�9%�z^�$��or4��i�;qO��m���)���밟Oll��N�>a:���Gn��m�`z�/�yQ.�~�6�3ן �~Q��^j��֧'R��j���I*��>pN���g�ǫ/�bd�����-A�o���)�dA:!���hh�v�O8�3qTd)|���A=���6~�=�t�~@�-�(�8���!�� ��}G�D�~�ϦO�PF�HO���3�n_����췑�!r�4��� �ĸ|��R���v�8��;.P�)>8x K>OB:�}��P ��)>82 ���O�?��ȼ$=�g��O��K�F���T��O��T�J��{`���]��L���O�y�s�`ɹ��3�3���R��T��~��#���o��G�3� ��ɾ����RL��V����?��� �#'n���� %�.�A�����C��s� F��C������11������|�^�B�؟�JǪ��?��'.I�G�4������;�]?�B z��fώQ���^!�ԫv��e\-)�{�;�|� �+F$�җIbc��l훞<y��O���e����>��w�9�1l:M}�Kw͒|�� )���O>��4���}W��������ԮZ��r��̏�OQ��<���z��"�W��w.;��e�v��-��3���E?&�a�~������|���h��G?9�����&z�8y{�U�^���o�'�g���I؇�A�Ư��tXߠo�'W6@������Πo�'w�a���,�v~������V~�/���)��9�� �����5 �k5�١c"�A��"QQ L�j��ry O��R?Q�K�D�.����O��R?Q�K�D�.����O��R?Q�����qd��m1g;kQ~�n0� A�>�HL� $naE`��w�����}�>UϽ#��tJ�4=�8jk���;㵽:u�U���5ys����:�(}�|7h�T��_ơIK��B��^*�'R;�@�l/_��ޏ���S@o�5�_j��õ��h5}(��Em���*����~Y���χ�J�8|�?�� �o{! ?�!�{�.�`�~��_W@~�t��! _�w�@��%� ~dc)�2|��Y��7���z��`�-{��~������/��/�tf�s�;�u �鿀o�|e���!|����2��e�K���T���g珿�1y��q��<�:��s����2�%�)����WK���'_1��=��>�܍���?N!s����N���_-�����8ze��0|�ċ�iG��Hv�������/��}ۺ���俔d���w��]� �?���lɣ�od,��(���>���~%;|S��R �/�~k0�>���p?�[>��#;S�D�v�k�����'��Ƅ�g���_������șw�zJI��!쟈�wٿ��_��;��}g��tsN��e�9V] ��}��k������]i�a�P�`�H��{�SƏ�?���Ǐ?�N���/e���l�!��K %_��'��i}�q=;����:M�����l:�:��S����q����.����7�t��6����M� �K�+��/�~[������ዾ߱��7�>�w:�����k��iZK�|�Ye���?��O��������|ζJ��|>�nt.z��7YZ�������;ʝ�aק�\{��/m��}J�����yu?�j�[%�/�>�� ���<�v�9r�ӎ�m~������Q�"DY��=0��c��p��j��KP��Y��cK�Iq�e�A^����N��4�9|>���_��-?�����UW==V���?X��H�&�eu����q�?6��E�(�ԭɩ��?��X��tY�k���Փ�Uss�F<��߂��..�M�&��B�dZn�PGC��.O�t&�]�4y��'O�t�����t����@_���\j��/�%�����K<*%���?��>��P�.��,;�{���M3��(�5�O�jtC��=�p=�Q3}��E:�,�/��-a��*���O���9x�cr�W`Q� �?����?�h�J]�;}~~�&Ȏ�dB�4��X ?����+���c��#3~ޥ)��k��6�~���i���8��ljj=�Ͻ���Y��~�&��'�$�|��{�7�;l�{�0���m��E$P�1�����?�Sr<TF�^�����q��P���';��2T�>_<;< ���o� �?��EÏ �<0�?Y�d~�X�/x�E��axg���7�~� M3P�C�a�4(� �I��2�ң=(A6O���C�r��x�;�İ���>j$���?������>'�_~�T��z��>&0��#ߓ��s�áA"�;�RS^��G�ܳ� �$to�|J�-hU�<t��7�7��賚�� 1�P�߁?�6, �8��U��%U�{�-�ܟR ��'�� ��"*س����J���Sq��� �����d�,���?2�ЌjK~����`��t>�}R�)m��cӳӫ��?���#��{�}?���� B���ӱ�(�� ���jr����MzX�7ďС��T��3�����__���A�_�� ���ѭRG���/(|j�b�+�e�)| ;j9§��c�~ʭZg@�T�[�K��Z��w���3y�~j�Jg<�g�kB�Sok�=�z���o�Q���[���w����{������ ?����v ����7}�)��������$���q6L���������������:Un�����,��W�Մ_y{�jV����[���IW��^P/��Zp�v�/c�B�7�I�L� � ��}DC���A>[v}]�c�r\��`\v��d��J�;�UY��U�Ve�:/?<�9����z�Ͻaj�8Y��,f���I��-%��cd�?�P��W���� �[����B�χ�s���1���y=����u�(E�m�}���'}�۟��/�� �V�\-wI=1;��ge�-|���|O������"+?v�p��B�禿�Ƚ7<��7v��EFï��/V�Gq ��� ؕV2Ș-��!wB������.Oc�_�OQ�f�W��rw}��: e����?����S� �}�Ի)��Ժ�����|��=T�m��ߣ�;�{�\z�a��D�W�<�*]Uu���\=N��� [��ѹ{&�Ǽ����;~���?��"◈��W��|��s4X(���!�ݍ�jOm��k}��:�_����������B�� �!�Q��4��y����u�\�����w;c��H�6�9���"���/���� ~~.��s��R�b�8<;�G�g >��1O0�R���T:��1�ߊ��'��ꗷ��b�M��*+|��%r���flQ�t�<�tF���c\���L�~�[Z�y�AM}��[��X����ʤCm�㵻[�����{}�$���Ugu�(�诣�v�`a���'��G�z�ß��8�T�~M�����_m�C�N�9�g����T�}'����T/=�`m��z�~���綾w�_���m�.1@�D��lV?��|�Y�dC�������?^T���}=�aٵ�G�3� >u���+ʟ9,$x���Ov )�۵����z�WՏ�//�)���O������� �W͍��oƏ�}�܈ �:(��Jt����FՏ�_wwaC��-q��W. �L�:�ڞv���Z���Q��g���l ����@_7�iS���������w!��.};~L@d�<kO6�1 3|nl��g�~��]�� >T��lU���V��/߸��ۻ��a�?�SP(�/�|�֮�����v?����}��}�ǻ�aO��v��+K�c�U��?���[�Y�ݤ-P�h�ԇ)����oX��N18��o�-a9�Gs��>�x?�� M�?�;E��D~��ߗ�����="_"�G��K��}����/���Ρ�!�'�8?��ޫ��@^����)^t�Ea�p�;�28�MJ�V��O��.3/�??�RW�7��_������0R���&ah�}~��-�0�Mҫ�<�2@���X�i�:-E�#��P��L��z���c�}9���-?m m�"���='^n��Y�:Nv�����cό�ca0|�+�t;�)hT��QC�i\� ��!��T�웼�ٿ�A�@� �I���e�&%�CD�A��%�w�M�N���0b5�آ�v�����7���4�õ>p;,�HO�� �%�Z6۪j+_�5g�ί���j��wT�;4,�`��Z�NZ?,a��X @U�4`�JC�Rʩ��v8����y�b����ӯ�(!�$'�r���Y68)h�e��y���X����f$��mU:�DwL��A�mY��*�u�ڦ/��j��3pj��br��l�<��Ih �� ��G�@���r�_�o��q�Sw�8��/�2�-���Rb�(���� VfƤ���3Q�����2��_�9~5~�4���܃^ ����[�F.�vnv��86��f����MZ ��;~����B����z{���P.��K�+~j��`�{}�%y�u��>k(1ہe�~�ߤѢ#'�G��KI�XӅ?� ��Lt;^N ����������%�0Yg�vx��!~;���Bp��@���"��njW����IPS��'�]���)O{���<�zt�"ьݙXV@Ѐ�^�G��6��m�ߦ���_�7�Z{�D$��2�Z+,�i��!nV�q��pᏄ�b�ߟ���:�����S�X#JC�f�ȹ��a��?6*ۂ�7��D=�{��Ⱦ9v0�֡E�w��nG�~����Vw�l%eY���V���^�5d��ŭ�-�ء~}z��>�z�$�d~�`�[o�(�;�?'x������,�E����� 6�/�t�}���=}�>�������w�^��>��Kد��A��cD��wC���N#Y���^ȿ�����k!��ע��i��@�Z�z¦�ߩ�K�L���Й����e��H�<��0Y��`��(��o�^Ra(����~Ժ���� ��f�������d���F6m�3��?&n��~�+#?4eZhW���{x�Z���o𧲥����k��7\T���� ��Qq=tIEND�B`�PKCA#]�2,�99Ocomponents/com_sppagebuilder/assets/editor/dist/images/633069b738e98959d5e7.svgnu�[���<svg width="324" height="74" viewBox="0 0 324 74" fill="none" xmlns="http://www.w3.org/2000/svg"> <rect x="109.347" y="52.231" width="105.307" height="21.7692" rx="2.23812" fill="#E4E2ED"/> <rect opacity="0.7" x="193.947" y="60.3633" width="14" height="5.25" rx="2.625" fill="#FBFCFD"/> <path d="M204.447 66.4883C206.38 66.4883 207.947 64.9213 207.947 62.9883C207.947 61.0553 206.38 59.4883 204.447 59.4883C202.514 59.4883 200.947 61.0553 200.947 62.9883C200.947 64.9213 202.514 66.4883 204.447 66.4883Z" fill="white"/> <rect opacity="0.5" x="117.029" y="60.105" width="31.6374" height="6.48445" rx="2" fill="white"/> <rect y="52.2305" width="105.307" height="21.7692" rx="2.23812" fill="#E4E2ED"/> <rect opacity="0.7" x="84.6006" y="60.3628" width="14" height="5.25" rx="2.625" fill="#FBFCFD"/> <path d="M95.1006 66.4878C97.0336 66.4878 98.6006 64.9208 98.6006 62.9878C98.6006 61.0548 97.0336 59.4878 95.1006 59.4878C93.1676 59.4878 91.6006 61.0548 91.6006 62.9878C91.6006 64.9208 93.1676 66.4878 95.1006 66.4878Z" fill="white"/> <rect opacity="0.5" x="7.68262" y="60.1045" width="31.6374" height="6.48445" rx="2" fill="white"/> <rect x="191.841" y="26.3623" width="105.307" height="21.7692" rx="2.23812" fill="#E4E2ED"/> <rect opacity="0.7" x="276.441" y="34.4946" width="14" height="5.25" rx="2.625" fill="#FBFCFD"/> <path d="M286.941 40.6196C288.874 40.6196 290.441 39.0526 290.441 37.1196C290.441 35.1866 288.874 33.6196 286.941 33.6196C285.008 33.6196 283.441 35.1866 283.441 37.1196C283.441 39.0526 285.008 40.6196 286.941 40.6196Z" fill="white"/> <rect opacity="0.5" x="199.523" y="34.2363" width="31.6374" height="6.48445" rx="2" fill="white"/> <rect x="218.692" y="52.231" width="105.307" height="21.7692" rx="2.23812" fill="#E4E2ED"/> <rect opacity="0.7" x="303.293" y="60.3633" width="14" height="5.25" rx="2.625" fill="#FBFCFD"/> <path d="M313.793 66.4883C315.726 66.4883 317.293 64.9213 317.293 62.9883C317.293 61.0553 315.726 59.4883 313.793 59.4883C311.86 59.4883 310.293 61.0553 310.293 62.9883C310.293 64.9213 311.86 66.4883 313.793 66.4883Z" fill="white"/> <rect opacity="0.5" x="226.375" y="60.105" width="31.6374" height="6.48445" rx="2" fill="white"/> <rect width="105.621" height="21.468" rx="2.23812" transform="matrix(0.968735 -0.248195 0.23319 0.972454 85.8164 29.3853)" fill="#C4B9FA"/> <rect opacity="0.7" width="14" height="5.25" rx="2.625" transform="matrix(0.968536 -0.24901 0.232443 0.972642 169.839 16.2222)" fill="#FBFCFD"/> <path d="M181.432 19.5649C183.304 19.0836 184.458 17.1692 184.008 15.2891C183.559 13.409 181.677 12.2751 179.805 12.7564C177.933 13.2377 176.779 15.1521 177.229 17.0322C177.678 18.9123 179.56 20.0462 181.432 19.5649Z" fill="white"/> <rect opacity="0.5" width="31.7313" height="6.39445" rx="2" transform="matrix(0.968737 -0.248186 0.233199 0.972452 95.1094 34.9521)" fill="white"/> <path d="M96.0696 23.3833L90.8032 29.7304L93.7918 37.4547C93.9492 37.8583 93.9861 38.3011 93.8978 38.7277C93.8096 39.1544 93.6001 39.5459 93.2956 39.8533C92.9912 40.1608 92.6052 40.3705 92.1859 40.4563C91.7667 40.5422 91.3328 40.5003 90.9385 40.3359L83.4548 37.1901L77.2287 42.5203C76.8995 42.8 76.4974 42.9751 76.0727 43.0237C75.648 43.0724 75.2195 42.9924 74.8409 42.7938C74.4622 42.5952 74.1501 42.2867 73.9437 41.9071C73.7373 41.5274 73.6456 41.0933 73.6802 40.6591L74.318 32.3655L67.4711 27.94C67.1095 27.7096 66.8234 27.3751 66.6487 26.9783C66.474 26.5815 66.4184 26.1401 66.489 25.7095C66.5595 25.2789 66.7531 24.8783 67.0453 24.5578C67.3376 24.2373 67.7155 24.0113 68.1318 23.908L76.012 21.9317L78.0186 13.865C78.1231 13.4418 78.3478 13.0588 78.6646 12.7641C78.9813 12.4694 79.3758 12.2762 79.7984 12.2089C80.221 12.1415 80.6528 12.2031 81.0395 12.3857C81.4261 12.5683 81.7504 12.8639 81.9713 13.2352L86.2067 20.3074L94.2907 19.74C94.7175 19.7089 95.143 19.807 95.5137 20.0218C95.8844 20.2367 96.1839 20.5588 96.3746 20.9478C96.5653 21.3367 96.6387 21.7753 96.5857 22.2083C96.5326 22.6414 96.3554 23.0498 96.0763 23.3822L96.0696 23.3833Z" fill="#F2B300"/> <path d="M97.9514 21.7383L92.6851 28.0854L95.6736 35.8097C95.831 36.2133 95.8679 36.6561 95.7797 37.0827C95.6914 37.5093 95.4819 37.9008 95.1775 38.2083C94.873 38.5157 94.487 38.7255 94.0678 38.8113C93.6485 38.8972 93.2146 38.8552 92.8203 38.6908L85.3366 35.5451L79.1105 40.8753C78.7813 41.155 78.3792 41.3301 77.9545 41.3787C77.5298 41.4273 77.1014 41.3474 76.7227 41.1487C76.344 40.9501 76.032 40.6417 75.8255 40.2621C75.6191 39.8824 75.5274 39.4483 75.562 39.0141L76.1998 30.7204L69.3529 26.295C68.9913 26.0646 68.7053 25.7301 68.5305 25.3333C68.3558 24.9365 68.3003 24.4951 68.3708 24.0645C68.4414 23.6339 68.6349 23.2332 68.9272 22.9128C69.2194 22.5923 69.5974 22.3662 70.0136 22.263L77.8938 20.2867L79.9004 12.22C80.0049 11.7968 80.2297 11.4138 80.5464 11.1191C80.8631 10.8244 81.2576 10.6312 81.6802 10.5639C82.1028 10.4965 82.5346 10.558 82.9213 10.7407C83.308 10.9233 83.6322 11.2189 83.8532 11.5902L88.0886 18.6624L96.1725 18.095C96.5994 18.0639 97.0248 18.162 97.3955 18.3768C97.7663 18.5917 98.0658 18.9138 98.2565 19.3027C98.4472 19.6917 98.5206 20.1302 98.4675 20.5633C98.4144 20.9964 98.2373 21.4048 97.9582 21.7372L97.9514 21.7383Z" fill="#FFC92F"/> </svg> PKCA#]���+�+Ocomponents/com_sppagebuilder/assets/editor/dist/images/7c5745799a668db0fe1c.svgnu�[���<svg width="298" height="345" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M260.141 30.253a4.229 4.229 0 0 1-3.501-4.878 4.229 4.229 0 0 1 4.904-3.51c2.343.395 3.872 2.53 3.491 4.88-.382 2.357-2.527 3.895-4.894 3.508Zm10.054-.072c-.602-.547-1.206-1.09-1.816-1.63-.14-.123-.192-.231-.132-.426.17-.556.256-1.13.276-1.71.005-.184.077-.275.237-.352.672-.326 1.337-.665 2.004-1 .368-.186.485-.44.343-.816-.482-1.271-.97-2.54-1.462-3.805-.137-.349-.322-.431-.685-.335-.784.209-1.572.414-2.353.633-.17.047-.291.033-.419-.092-.413-.408-.864-.77-1.337-1.107-.11-.079-.168-.166-.158-.305.06-.822.098-1.646.186-2.466.034-.31-.084-.453-.344-.497a277.625 277.625 0 0 0-4.062-.652c-.361-.055-.541.103-.63.446-.187.733-.386 1.463-.566 2.2-.045.185-.126.282-.32.323a5.18 5.18 0 0 0-1.549.602c-.169.099-.289.097-.451-.014-.626-.425-1.26-.838-1.894-1.249-.408-.265-.706-.214-1.018.164-.821.997-1.64 1.997-2.457 2.995-.295.36-.288.526.044.86.533.538 1.065 1.078 1.611 1.604.145.141.189.272.154.47-.094.549-.22 1.095-.229 1.654-.004.2-.061.293-.235.379-.692.333-1.378.68-2.062 1.03-.323.164-.435.41-.308.748.486 1.292.984 2.582 1.486 3.866.131.334.323.407.666.315.784-.209 1.57-.414 2.353-.632.163-.044.289-.049.423.083.41.41.866.768 1.334 1.11.116.086.174.173.162.331-.059.745-.102 1.49-.155 2.234-.035.496.088.663.588.745.627.105 1.253.206 1.881.306.672.107 1.343.223 2.015.322.423.063.601-.064.705-.47.191-.733.387-1.465.567-2.2.04-.163.111-.242.276-.278a5.202 5.202 0 0 0 1.581-.61c.19-.111.318-.078.483.033.625.422 1.26.836 1.896 1.248.363.236.675.195.941-.13a939.31 939.31 0 0 0 2.5-3.048c.307-.377.292-.547-.07-.877Z" fill="#EE8F41"/><path d="M111.361 10.477c-.649 1.294-.881 2.56-.59 3.554.424 1.45 1.34 1.763 2.064 1.57.812-.216 1.476-1.083 1.128-2.53-.246-1.026-1.215-1.99-2.602-2.594Zm20.904 4.472c-1.746.15-3.372.873-4.493 2.046-1.048 1.1-1.331 2.243-.72 2.918.568.627 1.849.777 3.313-.37 1.087-.85 1.771-2.6 1.9-4.594Zm7.354 10.861c-1.595.334-3.12 1.07-4.203 1.936-.985.79-1.349 1.716-.927 2.362.247.375.779.638 1.516.246 1.271-.673 2.75-2.401 3.614-4.544Zm7.88 21.239-2.826-1.795c.05-.077 4.912-7.877 2.975-14.236-.845-2.77-2.311-4.497-4.353-5.128l-.149-.044c-1.016 3.396-3.293 6.257-5.573 7.466-2.14 1.133-4.616.56-5.882-1.367-1.14-1.739-1.116-4.612 1.634-6.812 1.762-1.41 4.334-2.579 7.027-2.823a7.52 7.52 0 0 0-.783-3.49c-.816-1.63-2.224-2.84-3.976-3.455-.228 2.87-1.357 5.399-3.164 6.815-3.01 2.355-6.232 1.773-7.857-.02-1.492-1.645-1.884-4.686.779-7.475 1.704-1.786 4.061-2.86 6.609-3.076-.525-2.085-2.081-5.728-6.652-7.19-4.744-1.52-9.189.63-11.769 3.146-.058.055-.114.11-.168.165 2.016 1.061 3.398 2.688 3.848 4.559.828 3.463-1.146 5.914-3.524 6.546-2.302.614-5.158-.514-6.136-3.865-.456-1.557-.298-3.32.396-5.08a6.237 6.237 0 0 0-2.842.875c-4.174 2.524-3.644 6.528-3.638 6.568l-3.312.481c-.036-.253-.835-6.253 5.217-9.915 1.891-1.142 4.221-1.578 6.5-1.273.397-.5.837-.988 1.321-1.457 3.278-3.198 8.971-5.91 15.127-3.939 4.783 1.53 8.176 5.46 9.082 10.512l.018.101c3.152.7 5.727 2.663 7.135 5.48.848 1.695 1.177 3.473 1.128 5.207.198.047.396.1.592.163 2.178.673 5.086 2.496 6.566 7.35 2.39 7.84-3.114 16.635-3.35 17.006Z" fill="#FFC624"/><path d="M129.235 169.969c-27.029-6.212-52.594 11.354-65.9 33.299-1.867 3.078 3.283 5.891 5.144 2.822 11.934-19.677 34.768-36.373 59.273-30.743 3.494.804 4.986-4.573 1.483-5.378Z" fill="#B0D1FF"/><path d="m77.183 214.714-8.715-.012c.006-3.998-2.736-7.239-6.124-7.244-3.388-.006-6.14 3.226-6.147 7.225l-8.714-.014c.014-9.672 6.676-17.5 14.877-17.486 8.2.012 14.838 7.86 14.823 17.531Z" fill="#36F"/><path d="M164.438 173.277c27.031 6.211 52.696-12.437 66.003-34.381 1.867-3.079-2.955-5.885-4.817-2.816-11.932 19.679-35.196 37.448-59.702 31.817-3.493-.802-4.986 4.575-1.484 5.38Z" fill="#B0D1FF"/><path d="m221.021 120.683 7.43 4.555c-2.089 3.408-1.438 7.604 1.45 9.373 2.886 1.771 6.922.448 9.012-2.961l7.429 4.555c-5.055 8.246-14.82 11.453-21.811 7.168-6.992-4.287-8.565-14.443-3.51-22.69Z" fill="#36F"/><path d="M152.539 161.594h-15.062v-17.852h15.062v17.852Z" fill="#fff"/><path d="M167.319 64.526c0 11.503-9.326 20.827-20.827 20.827-11.503 0-20.828-9.324-20.828-20.827 0-11.502 9.325-20.826 20.828-20.826 11.501 0 20.827 9.324 20.827 20.826ZM87.397 122.358h-6.969c-4.117 0-7.487-3.369-7.487-7.486V86.704c0-4.119 3.37-7.487 7.487-7.487h6.97c4.118 0 7.486 3.368 7.486 7.487v28.168c0 4.117-3.368 7.486-7.487 7.486ZM212.55 122.358h-6.97c-4.117 0-7.486-3.369-7.486-7.486V86.704c0-4.119 3.369-7.487 7.486-7.487h6.97c4.117 0 7.486 3.368 7.486 7.487v28.168c0 4.117-3.369 7.486-7.486 7.486Z" fill="#FFC624"/><path d="M86.293 127.285c-1.394-15.899-2.928-57.18-2.185-63.503.496-4.21 1.065-10.785 18.792-10.785h92.408c9.669 0 13.76 2.604 13.76 21.199 0 18.596-1.487 47.976-1.487 53.926 0 5.951 0 8.554-14.876 8.554H96.381c-11.529 0-9.72-5.187-10.088-9.391Z" fill="#B0D1FF"/><path d="M82.21 133.98s29.62-7.69 61.12-9.2c38.316-1.836 70.014 0 70.014 0s-1.148 12.397-2.296 16.234c-1.148 3.838-8.321 7.675-28.406 7.675H95.984c-6.313 0-9.756-1.565-11.765-6.789-2.008-5.224-2.008-7.92-2.008-7.92ZM130.314 102.74c0 10.834-8.783 19.618-19.617 19.618-10.835 0-19.619-8.784-19.619-19.618 0-10.835 8.784-19.618 19.619-19.618 10.834 0 19.617 8.783 19.617 19.618Z" fill="#3E64DE"/><path d="M126.076 102.515c0 8.494-6.886 15.38-15.38 15.38s-15.38-6.886-15.38-15.38 6.886-15.38 15.38-15.38 15.38 6.886 15.38 15.38Z" fill="#fff"/><path d="M202.745 96.976c0 13.093-10.614 23.708-23.708 23.708-13.094 0-23.709-10.615-23.709-23.708 0-13.094 10.615-23.708 23.709-23.708s23.708 10.614 23.708 23.708Z" fill="#3E64DE"/><path d="M198.095 97.034c0 10.266-8.322 18.587-18.586 18.587-10.266 0-18.587-8.321-18.587-18.587 0-10.265 8.321-18.586 18.587-18.586 10.264 0 18.586 8.321 18.586 18.586Z" fill="#fff"/><path d="M112.312 100.788h-2.302a2.482 2.482 0 0 1-2.475-2.475v-4.721a2.482 2.482 0 0 1 2.475-2.475h2.302a2.482 2.482 0 0 1 2.475 2.475v4.72a2.482 2.482 0 0 1-2.475 2.476ZM180.187 110.457h-2.304a2.48 2.48 0 0 1-2.473-2.475v-4.721a2.48 2.48 0 0 1 2.473-2.473h2.304a2.482 2.482 0 0 1 2.475 2.473v4.721a2.483 2.483 0 0 1-2.475 2.475Z" fill="#201912"/><path d="m118.131 160.581 53.318-3.264c4.113-.252 7.589 3.016 7.589 7.137v57.768a7.152 7.152 0 0 1-7.152 7.151h-47.755a7.15 7.15 0 0 1-7.114-6.424l-5.562-54.505a7.15 7.15 0 0 1 6.676-7.863Z" fill="#36F"/><path d="M159.639 196.181h-27.038a9.075 9.075 0 0 1-9.074-9.075v-9.186a9.075 9.075 0 0 1 9.074-9.074h27.038a9.074 9.074 0 0 1 9.074 9.074v9.186a9.074 9.074 0 0 1-9.074 9.075Z" fill="#FFC624"/><path d="M230.547 193.417a5.616 5.616 0 0 1-1.979-7.725 5.616 5.616 0 0 1 7.76-1.98c2.71 1.618 3.572 4.997 1.968 7.722-1.61 2.732-5.006 3.603-7.749 1.983Zm12.476 4.757c-.481-.966-.965-1.93-1.461-2.892-.113-.22-.126-.378.042-.592a8.61 8.61 0 0 0 1.166-1.982c.096-.227.228-.303.464-.322.987-.08 1.975-.178 2.962-.272.546-.05.813-.309.818-.844.017-1.804.026-3.608.026-5.412 0-.498-.193-.689-.686-.745-1.072-.119-2.144-.245-3.217-.352-.232-.023-.376-.099-.475-.316a14.397 14.397 0 0 0-1.12-2.013c-.098-.151-.128-.288-.049-.455.472-.987.915-1.989 1.42-2.959.192-.37.113-.604-.188-.782a341.238 341.238 0 0 0-4.711-2.766c-.42-.242-.72-.136-.995.247-.585.816-1.182 1.627-1.759 2.449-.147.208-.295.288-.552.246a6.885 6.885 0 0 0-2.21-.002c-.256.04-.403-.018-.551-.233a136.365 136.365 0 0 0-1.741-2.46c-.378-.525-.769-.607-1.338-.288-1.496.839-2.991 1.68-4.487 2.521-.535.303-.608.512-.357 1.087.4.923.798 1.847 1.218 2.761.112.244.103.426-.034.655-.383.633-.8 1.251-1.082 1.936-.101.248-.217.335-.473.355a155.7 155.7 0 0 0-3.051.282c-.478.048-.733.298-.74.778-.02 1.833-.029 3.666-.025 5.5.001.476.203.66.672.712 1.072.12 2.144.242 3.216.353.223.024.381.076.484.305.311.706.701 1.367 1.116 2.018.104.164.131.297.04.488-.432.89-.843 1.793-1.267 2.688-.284.598-.213.861.366 1.206.725.432 1.454.858 2.182 1.286.779.457 1.552.922 2.336 1.37.495.282.776.21 1.101-.241.588-.816 1.185-1.627 1.762-2.449.128-.184.254-.248.474-.212a6.93 6.93 0 0 0 2.254.006c.287-.046.429.058.58.274.57.826 1.156 1.642 1.743 2.458.336.468.744.567 1.229.295 1.523-.853 3.042-1.707 4.562-2.567.562-.318.627-.537.336-1.12ZM27.844 155.788a4.228 4.228 0 0 1-2.868-5.276 4.23 4.23 0 0 1 5.302-2.874c2.276.683 3.526 2.991 2.857 5.276-.672 2.291-2.99 3.551-5.29 2.874Zm9.984 1.177c-.53-.617-1.06-1.233-1.599-1.843-.123-.14-.162-.253-.078-.44.238-.53.396-1.089.486-1.662.029-.183.11-.264.28-.32.706-.24 1.407-.494 2.111-.744.39-.138.538-.375.443-.767a399.092 399.092 0 0 0-.979-3.956c-.09-.364-.267-.468-.637-.417-.805.109-1.61.214-2.413.334-.174.027-.294-.002-.404-.142-.36-.455-.763-.872-1.19-1.264-.1-.092-.146-.187-.118-.323.16-.808.3-1.621.49-2.423.072-.305-.028-.461-.281-.536-1.313-.393-2.628-.78-3.948-1.153-.352-.099-.55.036-.68.364-.279.705-.566 1.407-.835 2.113-.07.179-.162.264-.357.28a5.22 5.22 0 0 0-1.613.406c-.18.077-.3.061-.446-.068-.57-.5-1.146-.988-1.725-1.476-.372-.314-.672-.302-1.03.037-.938.888-1.874 1.777-2.811 2.667-.335.318-.35.485-.062.858.463.6.923 1.202 1.399 1.791a.471.471 0 0 1 .096.485c-.163.534-.355 1.06-.433 1.614-.03.198-.098.284-.28.345-.729.247-1.452.507-2.176.768-.34.123-.482.352-.396.703.32 1.342.653 2.684.993 4.021.088.347.27.444.621.396.804-.111 1.61-.217 2.415-.335.165-.022.292-.014.408.135.356.457.764.868 1.186 1.267.106.1.151.193.118.349-.15.729-.284 1.465-.428 2.196-.097.489.003.668.49.813.607.183 1.218.358 1.828.536.652.191 1.303.388 1.96.571.411.116.603.011.758-.379.279-.704.564-1.405.835-2.112.06-.157.14-.228.308-.241a5.262 5.262 0 0 0 1.646-.411c.2-.086.324-.037.474.094.569.497 1.146.986 1.725 1.473.332.28.647.276.952-.012.953-.903 1.907-1.807 2.857-2.713.352-.336.36-.507.04-.879Z" fill="#EE8F41"/><path d="M93.191 297.064v16.875H.906l-.703-12.744 55.195-86.484h16.963l-18.369 31.465-31.728 50.888H93.19Zm-15.996-82.353V342.68H56.014V214.711h21.181ZM190.75 267.973v20.918c0 10.019-.996 18.574-2.988 25.664-1.934 7.031-4.746 12.744-8.438 17.138-3.691 4.395-8.115 7.618-13.271 9.668-5.098 2.051-10.811 3.077-17.139 3.077-5.039 0-9.726-.645-14.062-1.934a34.348 34.348 0 0 1-11.602-6.065c-3.457-2.753-6.416-6.298-8.877-10.634-2.402-4.395-4.277-9.639-5.625-15.733-1.289-6.093-1.934-13.154-1.934-21.181v-20.918c0-10.078.997-18.575 2.989-25.489 1.992-6.972 4.834-12.627 8.525-16.963 3.692-4.394 8.086-7.587 13.184-9.58 5.156-1.992 10.898-2.988 17.226-2.988 5.098 0 9.785.645 14.063 1.934 4.336 1.23 8.203 3.193 11.601 5.888 3.457 2.696 6.387 6.211 8.789 10.547 2.461 4.278 4.336 9.463 5.625 15.557 1.289 6.035 1.934 13.066 1.934 21.094Zm-21.182 23.906v-27.07c0-5.098-.293-9.58-.879-13.448-.585-3.925-1.464-7.236-2.636-9.931-1.114-2.754-2.52-4.981-4.219-6.68-1.699-1.758-3.633-3.018-5.801-3.779-2.168-.821-4.599-1.231-7.295-1.231-3.281 0-6.211.645-8.789 1.934-2.578 1.23-4.746 3.222-6.504 5.976-1.757 2.754-3.105 6.387-4.043 10.899-.879 4.453-1.318 9.873-1.318 16.26v27.07c0 5.156.293 9.697.879 13.623.586 3.926 1.465 7.295 2.637 10.107 1.171 2.754 2.578 5.039 4.218 6.856 1.7 1.758 3.633 3.047 5.801 3.867 2.227.82 4.658 1.23 7.295 1.23 3.34 0 6.299-.644 8.877-1.933 2.578-1.289 4.746-3.34 6.504-6.152 1.758-2.872 3.076-6.592 3.955-11.163.879-4.57 1.318-10.048 1.318-16.435ZM297.801 297.064v16.875h-92.285l-.704-12.744 55.196-86.484h16.963l-18.369 31.465-31.729 50.888h70.928Zm-15.996-82.353V342.68h-21.182V214.711h21.182Z" fill="#FFBF46"/></svg>PKCA#]���Ocomponents/com_sppagebuilder/assets/editor/dist/images/5177696f1319ef80cb4b.svgnu�[���<svg width="284" height="205" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M208.159 157.751c0 7.904-30.601 14.312-68.349 14.312-37.748 0-68.35-6.408-68.35-14.312 0-7.905 30.602-14.313 68.35-14.313 37.748 0 68.349 6.408 68.349 14.313Z" fill="#F0F0F0"/><path d="M203.134 160.996c0 6.112-28.441 11.067-63.526 11.067-35.084 0-63.526-4.955-63.526-11.067s28.442-11.066 63.526-11.066c35.085 0 63.526 4.954 63.526 11.066Z" fill="#BDC0C2"/><path d="m182.766 84.205 1.769-6.488h-14.45c4.719-15.334 7.963-24.935 9.732-28.801 3.473-7.406 7.405-12.845 11.796-16.318 3.277-2.622 6.979-3.932 11.108-3.932 1.638 0 2.883.327 3.735.983.59.458.885 1.146.885 2.064 0 .524-.426 1.573-1.278 3.146-.852 1.507-1.278 2.785-1.278 3.833 0 1.639.623 3.048 1.868 4.227 1.31 1.18 2.982 1.77 5.013 1.77 2.359 0 4.292-.787 5.8-2.36 1.507-1.572 2.261-3.506 2.261-5.8 0-2.948-1.508-5.668-4.522-8.158-3.015-2.556-7.012-3.834-11.993-3.834-4.718 0-9.764 1.475-15.138 4.424-5.308 2.883-10.387 7.241-15.236 13.074-3.539 4.325-7.242 10.42-11.108 18.283-2.884 5.833-5.243 9.83-7.078 11.993-1.769 2.097-3.735 3.539-5.898 4.325-2.162.72-5.963 1.081-11.403 1.081l-1.376 6.488h17.104l-17.104 66.549c-3.997 15.4-4.377 18.413-5.295 21.166l2.838.07 2.996.052h6.203c4.85-10.354 10.1-25.941 14.884-44.88l10.813-42.957h14.352Z" fill="#D9D9D9"/><path d="m105.298 134.787-18.01 9.233.402 6.061c.146 2.014.496 3.56 1.048 4.638.733 1.429 1.849 2.186 3.349 2.272.882.054 2.703-.5 5.463-1.661l.713 1.391-16.957 8.693-.713-1.392c1.688-1.213 2.807-2.736 3.355-4.568.536-1.858.673-5.172.41-9.944l-2.62-50.03.715-.365 39.819 32.383c3.784 3.061 6.504 4.816 8.159 5.266 1.251.34 2.685.174 4.303-.497l.713 1.391-24.664 12.644-.713-1.391 1.015-.52c1.98-1.015 3.23-2.004 3.749-2.967.346-.684.326-1.402-.059-2.153a5.144 5.144 0 0 0-.939-1.276c-.166-.2-1.023-.947-2.573-2.242l-5.965-4.966Zm-2.704-2.127-16.596-13.665 1.18 21.568 15.416-7.903Z" fill="#DCDCDC"/><path d="M191.613 135.995v-34.679h4.865v40.171h-4.446l-.419-5.492Zm-19.039-8.343v-.549c0-2.162.262-4.124.785-5.885.54-1.778 1.299-3.304 2.275-4.576.994-1.273 2.171-2.249 3.531-2.929 1.377-.698 2.911-1.046 4.602-1.046 1.779 0 3.331.313 4.656.941a8.951 8.951 0 0 1 3.399 2.694c.942 1.168 1.683 2.58 2.223 4.236.541 1.657.916 3.531 1.125 5.623v2.406c-.192 2.075-.567 3.941-1.125 5.597-.54 1.656-1.281 3.068-2.223 4.237a9.298 9.298 0 0 1-3.399 2.693c-1.343.61-2.912.916-4.708.916-1.656 0-3.173-.358-4.55-1.073-1.36-.714-2.537-1.717-3.531-3.007-.976-1.29-1.735-2.807-2.275-4.551-.523-1.761-.785-3.67-.785-5.727Zm4.865-.549v.549c0 1.412.139 2.737.418 3.975.296 1.238.75 2.328 1.36 3.269a6.739 6.739 0 0 0 2.328 2.223c.941.523 2.066.785 3.373.785 1.604 0 2.921-.34 3.949-1.02a7.61 7.61 0 0 0 2.511-2.694 15.563 15.563 0 0 0 1.464-3.635v-6.303a13.944 13.944 0 0 0-.915-2.772 8.528 8.528 0 0 0-1.517-2.406 6.544 6.544 0 0 0-2.275-1.7c-.889-.418-1.944-.628-3.165-.628-1.325 0-2.467.279-3.425.837a6.672 6.672 0 0 0-2.328 2.249c-.61.942-1.064 2.04-1.36 3.296a18.04 18.04 0 0 0-.418 3.975Z" fill="#DADADA"/></svg>PKCA#]^��lOcomponents/com_sppagebuilder/assets/editor/dist/images/f057f8b31082c0ecd133.svgnu�[���<svg width="443" height="284" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M252.666 104.234a2.606 2.606 0 0 0-5.001 1.467l5.001-1.467Zm-50.231 115.348c13.378-2.494 31.834-11.291 44.006-29.622 12.234-18.425 17.855-46.078 6.225-85.726l-5.001 1.467c11.302 38.529 5.631 64.513-5.566 81.376-11.26 16.958-28.373 25.099-40.62 27.382l.956 5.123Z" fill="#B0D1FF"/><path d="m236.64 91.576 7.593-.009c.003 3.484 2.399 6.301 5.351 6.299 2.951-.003 5.342-2.824 5.339-6.308l7.593-.007c.008 8.427-5.779 15.261-12.923 15.266-7.145.008-12.945-6.815-12.953-15.241Z" fill="#36F"/><path d="M296.517 240.281c17.688 16.461 44.629 14.343 64.229 3.582 2.749-1.509.089-5.875-2.653-4.37-17.575 9.648-42.077 12.299-58.114-2.625-2.286-2.128-5.754 1.279-3.462 3.413ZM56.712 264.967c20.864 12.189 46.687 4.222 63.455-10.57 2.352-2.074-1.2-5.752-3.545-3.683-15.036 13.263-38.363 21.215-57.28 10.166-2.695-1.577-5.333 2.508-2.63 4.087Z" fill="#B0D1FF"/><path d="m155.072 271.176-7.592-.011c.005-3.483-2.384-6.307-5.336-6.311-2.951-.005-5.349 2.81-5.355 6.294l-7.592-.012c.012-8.427 5.816-15.246 12.961-15.234 7.145.01 12.928 6.848 12.914 15.274ZM320.549 271.176l-7.593-.011c.005-3.483-2.384-6.307-5.335-6.311-2.952-.005-5.35 2.81-5.356 6.294l-7.592-.012c.013-8.427 5.817-15.246 12.961-15.234 7.145.01 12.928 6.848 12.915 15.274Z" fill="#36F"/><path d="M168.523 269.625c23.678 7.535 46.16-15.09 57.816-41.714 1.635-3.735-2.588-7.141-4.22-3.417-10.452 23.876-30.83 45.435-52.296 38.603-3.06-.974-4.369 5.551-1.3 6.528Z" fill="#B0D1FF"/><path d="M79.514 157.035c.382 1.203 1.007 2.133 1.793 2.577 1.146.647 1.908.286 2.242-.275.376-.629.263-1.573-.835-2.265-.776-.491-1.967-.503-3.2-.037Zm15.764-9.919c-.998 1.156-1.573 2.595-1.56 4.009.014 1.323.534 2.209 1.325 2.258.735.046 1.626-.639 1.843-2.245.16-1.191-.476-2.699-1.608-4.022Zm11.192 2.307c-.792 1.178-1.296 2.565-1.445 3.763-.135 1.092.201 1.892.857 2.037.383.085.874-.075 1.096-.767.384-1.193.256-3.171-.508-5.033Zm17.831 8.462-2.855.598c-.016-.078-1.724-7.902-6.799-10.692-2.212-1.215-4.176-1.401-5.834-.553a6.586 6.586 0 0 0-.12.063c1.431 2.737 1.75 5.907 1.062 8.047-.647 2.008-2.54 3.156-4.502 2.723-1.769-.391-3.501-2.199-3.122-5.244.243-1.951 1.137-4.244 2.669-6.034a6.547 6.547 0 0 0-2.61-1.701c-1.501-.522-3.115-.421-4.582.26 1.603 1.93 2.435 4.194 2.169 6.177-.447 3.3-2.811 4.895-4.916 4.764-1.93-.119-4.024-1.778-4.058-5.138-.022-2.15.795-4.254 2.254-5.937-1.596-.982-4.782-2.309-8.523-.443-3.884 1.936-5.351 5.98-5.431 9.119a5.655 5.655 0 0 0-.005.205c1.904-.563 3.755-.389 5.173.506 2.622 1.657 2.882 4.387 1.782 6.227-1.064 1.782-3.532 2.815-6.18 1.319-1.23-.695-2.204-1.891-2.841-3.411a5.427 5.427 0 0 0-1.241 2.274c-1.07 4.113 1.695 6.289 1.722 6.31l-1.774 2.314c-.176-.136-4.323-3.394-2.772-9.359.485-1.862 1.674-3.551 3.282-4.746a13.258 13.258 0 0 1-.062-1.713c.102-3.988 2.005-9.142 7.045-11.655 3.914-1.953 8.422-1.564 12.058 1.039l.074.051c2.391-1.48 5.192-1.82 7.784-.918a9.456 9.456 0 0 1 3.869 2.563c.152-.091.308-.178.468-.258 1.769-.904 4.692-1.535 8.567.595 6.258 3.439 8.171 12.274 8.249 12.648Z" fill="#FFC624"/><path d="m197.087 226.3-9.399 9.158-10.854-11.14 9.399-9.158 10.854 11.14Z" fill="#fff"/><path d="M147.292 156.741c6.993 7.178 6.843 18.666-.334 25.659-7.178 6.994-18.666 6.845-25.66-.333-6.993-7.178-6.843-18.666.335-25.66 7.177-6.992 18.665-6.844 25.659.334ZM132.583 241.421l-4.349 4.237c-2.569 2.503-6.72 2.449-9.223-.12l-17.126-17.577c-2.505-2.571-2.45-6.721.12-9.224l4.349-4.237c2.57-2.505 6.719-2.451 9.223.12l17.126 17.577c2.504 2.569 2.451 6.72-.12 9.224ZM210.681 165.328l-4.349 4.237c-2.569 2.503-6.72 2.449-9.224-.12l-17.126-17.578c-2.504-2.57-2.449-6.72.12-9.223l4.349-4.238c2.57-2.503 6.72-2.45 9.224.12l17.126 17.578c2.503 2.569 2.449 6.72-.12 9.224Z" fill="#FFC624"/><path d="M134.888 245.168c-10.536-9.074-36.592-33.902-39.973-38.299-2.25-2.929-5.892-7.378 5.17-18.156l25.87-25.206 31.794-30.977c6.034-5.879 10.17-6.741 21.476 4.862 11.306 11.604 28.241 30.842 31.859 34.555 3.618 3.714 5.201 5.338-4.082 14.382l-60.109 58.565c-7.194 7.01-9.219 2.673-12.005.274Z" fill="#B0D1FF"/><path d="M136.416 251.825s13.808-22.806 32.546-42.901c22.794-24.441 43.691-42.568 43.691-42.568s6.821 8.434 8.438 11.527c1.616 3.092-.527 9.848-13.06 22.06l-54.077 52.687c-3.939 3.839-7.039 4.955-11.469 2.917-4.43-2.039-6.069-3.722-6.069-3.722ZM147.435 203.088c6.587 6.761 6.448 17.582-.314 24.169-6.761 6.588-17.583 6.447-24.17-.314-6.588-6.761-6.446-17.582.315-24.17 6.761-6.587 17.582-6.446 24.169.315Z" fill="#3E64DE"/><path d="M144.657 205.521c5.164 5.301 5.053 13.785-.247 18.949-5.301 5.165-13.784 5.054-18.948-.247-5.164-5.3-5.055-13.783.246-18.948 5.3-5.164 13.785-5.054 18.949.246Z" fill="#fff"/><path d="M189.132 155.45c7.961 8.171 7.791 21.248-.38 29.209-8.171 7.962-21.249 7.791-29.209-.379-7.961-8.171-7.791-21.248.381-29.21 8.17-7.96 21.248-7.79 29.208.38Z" fill="#3E64DE"/><path d="M186.264 158.312c6.241 6.406 6.107 16.659-.298 22.9-6.406 6.241-16.658 6.108-22.899-.298-6.242-6.406-6.108-16.658.297-22.899 6.405-6.241 16.658-6.108 22.9.297Z" fill="#fff"/><path d="m137.86 223.539-1.437 1.4a2.162 2.162 0 0 1-3.049-.039l-2.87-2.947a2.162 2.162 0 0 1 .039-3.048l1.437-1.4a2.163 2.163 0 0 1 3.049.039l2.871 2.946c.827.85.81 2.222-.04 3.049ZM177.86 163.538l-1.438 1.401a2.162 2.162 0 0 1-3.048-.04l-2.87-2.947a2.162 2.162 0 0 1 .039-3.047l1.438-1.401a2.164 2.164 0 0 1 3.048.039l2.871 2.946c.827.85.809 2.222-.04 3.049Z" fill="#201912"/><path d="m189.842 264.186 2.67-46.462a6.232 6.232 0 0 1 6.957-5.831l49.976 5.953a6.23 6.23 0 0 1 5.45 6.924l-4.921 41.314a6.23 6.23 0 0 1-6.291 5.493l-47.727-.805a6.23 6.23 0 0 1-6.114-6.586Z" fill="#36F"/><path d="m224.924 231.944-2.786 23.392a7.906 7.906 0 0 1-8.786 6.915l-7.947-.947a7.905 7.905 0 0 1-6.915-8.784l2.786-23.392a7.905 7.905 0 0 1 8.785-6.915l7.947.947a7.905 7.905 0 0 1 6.916 8.784Z" fill="#FFC624"/><rect opacity=".2" y="271.093" width="443" height="3.909" rx="1.954" fill="url(#a)"/><path fill="#fff" d="M240.832 24.016h27.125v51.059h-27.125z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M237.574 7.47c5.69-9.851 19.916-9.851 25.601 0l36.231 62.798c5.685 9.852-1.428 22.168-12.802 22.168h-72.458c-11.374 0-18.483-12.316-12.798-22.168l36.221-62.797h.005Zm12.803 25.848a3.696 3.696 0 0 1 3.695 3.694v18.473a3.694 3.694 0 1 1-7.389 0V37.012a3.694 3.694 0 0 1 3.694-3.694Zm0 40.64a3.696 3.696 0 1 0 0-7.391 3.696 3.696 0 0 0 0 7.39Z" fill="red"/><defs><linearGradient id="a" x1="465.801" y1="275" x2="-24.756" y2="275" gradientUnits="userSpaceOnUse"><stop stop-color="#B0D1FF" stop-opacity="0"/><stop offset=".496" stop-color="#B0D1FF"/><stop offset="1" stop-color="#B0D1FF" stop-opacity="0"/></linearGradient></defs></svg>PKCA#]��"���Ocomponents/com_sppagebuilder/assets/editor/dist/images/ed8841a7709fb2582a09.svgnu�[���<svg id="empty-page-animation" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 283 205" shape-rendering="geometricPrecision" text-rendering="geometricPrecision"> <style><![CDATA[ #empty-page-animation-u-base_ts {animation: empty-page-animation-u-base_ts__ts 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-base_ts__ts { 0% {transform: translate(142px,169.895636px) scale(1.100066,1)} 100% {transform: translate(142px,169.895636px) scale(1.318514,1)}} #empty-page-animation-u-subject_to {animation: empty-page-animation-u-subject_to__to 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-subject_to__to { 0% {transform: translate(131.7304px,90.202618px)} 100% {transform: translate(131.7304px,80.202618px)}} #empty-page-animation-u-page-2_to {animation: empty-page-animation-u-page-2_to__to 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-page-2_to__to { 0% {transform: translate(112.177002px,89.138252px)} 100% {transform: translate(102.49877px,93.454967px)}} #empty-page-animation-u-page-2_tr {animation: empty-page-animation-u-page-2_tr__tr 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-page-2_tr__tr { 0% {transform: rotate(0deg)} 100% {transform: rotate(-10deg)}} #empty-page-animation-u-page-2_ts {animation: empty-page-animation-u-page-2_ts__ts 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-page-2_ts__ts { 0% {transform: scale(1,1)} 100% {transform: scale(1.156065,1.15607)}} #empty-page-animation-u-page-3_to {animation: empty-page-animation-u-page-3_to__to 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-page-3_to__to { 0% {transform: translate(160.265px,101.293801px)} 100% {transform: translate(200.265px,101.293801px)}} #empty-page-animation-u-page-3_tr {animation: empty-page-animation-u-page-3_tr__tr 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-page-3_tr__tr { 0% {transform: rotate(0deg)} 100% {transform: rotate(16deg)}} #empty-page-animation-u-main-page_tr {animation: empty-page-animation-u-main-page_tr__tr 1100ms linear 1 normal forwards}@keyframes empty-page-animation-u-main-page_tr__tr { 0% {transform: translate(142.410248px,90.202599px) rotate(0deg)} 100% {transform: translate(142.410248px,90.202599px) rotate(-9deg)}} ]]></style> <g id="empty-page-animation-u-base_ts" transform="translate(142,169.895636) scale(1.100066,1)"><ellipse id="empty-page-animation-u-base" rx="83" ry="11.5" transform="translate(0,0)" fill="#eef3f4"/></g><g id="empty-page-animation-u-subject_to" transform="translate(131.7304,90.202618)"><g id="empty-page-animation-u-subject" transform="translate(-131.7304,-90.202617)"><g id="empty-page-animation-u-page-2_to" transform="translate(112.177002,89.138252)"><g id="empty-page-animation-u-page-2_tr" transform="rotate(0)"><g id="empty-page-animation-u-page-2_ts" transform="scale(1,1)"><g id="empty-page-animation-u-page-2" transform="translate(-109.177002,-89.138252)"><path id="empty-page-animation-s-path1" d="M108.679,45.8275L71,57.0913L84.2308,101.35l5.3699-6.9222l14.4673,8.7912l1.788-15.6772l7.021,2.9918l2.324-7.3895l8.78,5.3354l2.877-14.3704l8.971,3.6953-6.175-20.6563-20.975-11.3206ZM136.72,80.786l-7.735-2.6358-3.003,14.9959-9.133-5.5498-2.186,6.9506-6.418-2.7347-1.855,16.2688-15.9853-9.714-5.2826,5.964l8.4056,28.118l53.8263-16.092L136.72,80.786Z" transform="translate(-2.01048-.031902)" clip-rule="evenodd" fill="#ececec" fill-rule="evenodd"/><path id="empty-page-animation-s-path2" d="M129.654,57.1481l-16.148,4.8274-4.827-16.148l20.975,11.3206Z" fill="#dcdcdc"/></g></g></g></g><g id="empty-page-animation-u-page-3_to" transform="translate(160.265,101.293801)"><g id="empty-page-animation-u-page-3_tr" transform="rotate(0)"><g id="empty-page-animation-u-page-3" transform="translate(-160.264999,-101.2938)"><path id="empty-page-animation-s-path3" d="M171.326,61.8806L132,62.0557l.206,46.1933l7.104-5.126l11.399,12.516l6.139-14.535l5.892,4.851l4.314-6.4337l6.918,7.5957l6.815-12.9745l7.564,6.0765-.096-21.5595-16.929-16.7789Zm17.039,41.4504l-6.678-4.7115-7.112,13.5395-7.196-7.901-4.058,6.051-5.385-4.434-6.371,15.084-12.595-13.83-6.751,4.232.131,29.346l56.18-.25-.165-37.126Z" clip-rule="evenodd" fill="#ececec" fill-rule="evenodd"/><path id="empty-page-animation-s-path4" d="M188.255,78.6595l-16.854.0751-.075-16.854l16.929,16.7789Z" fill="#dcdcdc"/></g></g></g><g id="empty-page-animation-u-main-page_tr" transform="translate(142.410248,90.202599) rotate(0)"><g id="empty-page-animation-u-main-page" transform="scale(0.969182,0.969182) translate(-142.410251,-95.202599)"><path id="empty-page-animation-s-path5" d="M93.4645,26.7918l68.4405-.0596l29.357,29.3062.094,107.5496-97.7723.085-.1192-136.8812Z" fill="#ffc802"/><path id="empty-page-animation-s-path6" d="M191.262,56.0384l-29.332.0256-.025-29.3318l29.357,29.3062Z" fill="#f5b401"/><path id="empty-page-animation-s-path7" d="M141.449,114.74l-10.141.009c.028-2.75.268-5.056.721-6.919.453-1.893,1.21-3.609,2.27-5.147c1.09-1.539,2.528-3.1663,4.316-4.8828c1.393-1.3022,2.65-2.5304,3.771-3.6845c1.121-1.1837,2.014-2.4264,2.68-3.728.665-1.3311.998-2.8542.996-4.5691-.002-1.8628-.321-3.4445-.959-4.7449-.638-1.3005-1.578-2.2902-2.822-2.9692-1.213-.679-2.729-1.0177-4.549-1.0161-1.515.0013-2.94.2982-4.273.8908-1.334.5629-2.409,1.4509-3.227,2.6639-.817,1.1835-1.256,2.751-1.315,4.7025l-10.959.0096c.057-3.7257.964-6.8607,2.72-9.4051s4.119-4.4536,7.089-5.7277c2.97-1.274,6.289-1.9126,9.958-1.9158c4.062-.0035,7.534.6735,10.416,2.0312c2.881,1.328,5.08,3.2776,6.599,5.8487c1.548,2.5416,2.324,5.616,2.327,9.2233.002,2.602-.526,4.968-1.586,7.0978-1.059,2.1003-2.437,4.0678-4.133,5.9025-1.696,1.8049-3.529,3.6099-5.498,5.4159-1.696,1.509-2.847,3.151-3.451,4.926-.605,1.745-.922,3.741-.95,5.988ZM130.41,128.588c-.001-1.597.559-2.943,1.679-4.038c1.121-1.124,2.652-1.687,4.592-1.689s3.472.559,4.594,1.681c1.123,1.093,1.685,2.438,1.687,4.035.001,1.597-.559,2.957-1.68,4.082-1.12,1.095-2.651,1.643-4.591,1.645s-3.472-.544-4.595-1.637c-1.122-1.123-1.684-2.482-1.686-4.079Z" fill="#fff"/></g></g></g></g></svg> PKCA#]U����Ocomponents/com_sppagebuilder/assets/editor/dist/images/8489e1515cd6e8d6e6fc.svgnu�[���<svg width="57" height="46" viewBox="0 0 57 46" fill="none" xmlns="http://www.w3.org/2000/svg"> <rect x="17" y="13.5" width="40" height="32" rx="3" fill="#A3BAFE"/> <path d="M40.0463 26.3997L17 38.1585V42.5C17 44.1569 18.3431 45.5 20 45.5H54C55.6569 45.5 57 44.1569 57 42.5V38.1585L43.3303 26.7673C42.4078 25.9985 41.1158 25.8539 40.0463 26.3997Z" fill="white" fill-opacity="0.5"/> <circle cx="48.5" cy="20" r="3.5" fill="white" fill-opacity="0.5"/> <path fill-rule="evenodd" clip-rule="evenodd" d="M20.0007 6.5C19.7834 6.50004 19.5721 6.57086 19.3986 6.70173C19.2252 6.8326 19.0991 7.01641 19.0394 7.22533L17.9554 11.02C17.722 11.8372 17.2841 12.5815 16.6832 13.1824C16.0822 13.7834 15.3379 14.2213 14.5207 14.4547L10.7261 15.5387C10.5173 15.5985 10.3336 15.7246 10.2029 15.8981C10.0722 16.0715 10.0014 16.2828 10.0014 16.5C10.0014 16.7172 10.0722 16.9285 10.2029 17.1019C10.3336 17.2754 10.5173 17.4015 10.7261 17.4613L14.5207 18.5453C15.3379 18.7787 16.0822 19.2166 16.6832 19.8176C17.2841 20.4185 17.722 21.1628 17.9554 21.98L19.0394 25.7747C19.0992 25.9835 19.2254 26.1671 19.3988 26.2978C19.5722 26.4286 19.7835 26.4993 20.0007 26.4993C20.2179 26.4993 20.4292 26.4286 20.6026 26.2978C20.7761 26.1671 20.9022 25.9835 20.9621 25.7747L22.0461 21.98C22.2795 21.1628 22.7173 20.4185 23.3183 19.8176C23.9193 19.2166 24.6635 18.7787 25.4807 18.5453L29.2754 17.4613C29.4842 17.4015 29.6678 17.2754 29.7986 17.1019C29.9293 16.9285 30 16.7172 30 16.5C30 16.2828 29.9293 16.0715 29.7986 15.8981C29.6678 15.7246 29.4842 15.5985 29.2754 15.5387L25.4807 14.4547C24.6635 14.2213 23.9193 13.7834 23.3183 13.1824C22.7173 12.5815 22.2795 11.8372 22.0461 11.02L20.9621 7.22533C20.9024 7.01641 20.7763 6.8326 20.6028 6.70173C20.4294 6.57086 20.218 6.50004 20.0007 6.5ZM8.00072 2.5C7.77763 2.49988 7.56091 2.57435 7.38502 2.71158C7.20914 2.84881 7.08419 3.04091 7.03005 3.25733L6.68605 4.63867C6.37139 5.892 5.39272 6.87067 4.13939 7.18533L2.75806 7.52933C2.54122 7.58304 2.34861 7.70781 2.21095 7.88373C2.07328 8.05966 1.99848 8.27661 1.99848 8.5C1.99848 8.72339 2.07328 8.94034 2.21095 9.11627C2.34861 9.29219 2.54122 9.41696 2.75806 9.47067L4.13939 9.81467C5.39272 10.1293 6.37139 11.108 6.68605 12.3613L7.03005 13.7427C7.08376 13.9595 7.20853 14.1521 7.38445 14.2898C7.56038 14.4274 7.77733 14.5022 8.00072 14.5022C8.22411 14.5022 8.44106 14.4274 8.61699 14.2898C8.79291 14.1521 8.91768 13.9595 8.97139 13.7427L9.31539 12.3613C9.46924 11.7459 9.78746 11.1839 10.236 10.7353C10.6846 10.2867 11.2466 9.96852 11.8621 9.81467L13.2434 9.47067C13.4602 9.41696 13.6528 9.29219 13.7905 9.11627C13.9282 8.94034 14.003 8.72339 14.003 8.5C14.003 8.27661 13.9282 8.05966 13.7905 7.88373C13.6528 7.70781 13.4602 7.58304 13.2434 7.52933L11.8621 7.18533C11.2466 7.03148 10.6846 6.71326 10.236 6.2647C9.78746 5.81614 9.46924 5.25409 9.31539 4.63867L8.97139 3.25733C8.91725 3.04091 8.7923 2.84881 8.61642 2.71158C8.44053 2.57435 8.22381 2.49988 8.00072 2.5ZM10.0007 20.5C9.7907 20.4999 9.58597 20.5659 9.41557 20.6887C9.24517 20.8114 9.11776 20.9847 9.05139 21.184L8.52605 22.7613C8.32605 23.3573 7.85939 23.8267 7.26205 24.0253L5.68472 24.552C5.4861 24.6187 5.31344 24.7461 5.19112 24.9162C5.0688 25.0863 5.00299 25.2905 5.00299 25.5C5.00299 25.7095 5.0688 25.9137 5.19112 26.0838C5.31344 26.2539 5.4861 26.3813 5.68472 26.448L7.26205 26.9747C7.85805 27.1747 8.32739 27.6413 8.52605 28.2387L9.05272 29.816C9.1194 30.0146 9.24679 30.1873 9.41689 30.3096C9.58698 30.4319 9.79121 30.4977 10.0007 30.4977C10.2102 30.4977 10.4145 30.4319 10.5846 30.3096C10.7547 30.1873 10.882 30.0146 10.9487 29.816L11.4754 28.2387C11.5736 27.9444 11.7389 27.677 11.9583 27.4576C12.1777 27.2382 12.4451 27.0729 12.7394 26.9747L14.3167 26.448C14.5153 26.3813 14.688 26.2539 14.8103 26.0838C14.9326 25.9137 14.9985 25.7095 14.9985 25.5C14.9985 25.2905 14.9326 25.0863 14.8103 24.9162C14.688 24.7461 14.5153 24.6187 14.3167 24.552L12.7394 24.0253C12.1434 23.8253 11.6741 23.3587 11.4754 22.7613L10.9487 21.184C10.8824 20.985 10.7552 20.8118 10.5851 20.689C10.4149 20.5663 10.2105 20.5002 10.0007 20.5Z" fill="#3366FF"/> </svg> PKCA#]�U�+j+jOcomponents/com_sppagebuilder/assets/editor/dist/images/25111c477863d51f6425.svgnu�[���<svg width="171" height="125" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M133.878 80.114c-1.351-.445-2.516-1.506-3.089-2.596-1.059-2.013-.999-4.407-.913-6.68.148-3.935.334-8.007 1.548-11.706a18.014 18.014 0 0 1 1.512-3.416c.78-1.344 1.794-2.607 3.162-3.344 1.097-.593 2.456-.79 3.623-.406.286.094.56.223.817.39 1.542 1.002 2.047 3.002 2.289 4.825a36.542 36.542 0 0 1-1.506 16.129c-.779 2.363-1.886 4.733-3.858 6.244-1.162.87-2.44.936-3.585.56Z" fill="#FFB5C0"/><path d="M126.905 89.895c-2.34-2.381-5.597-3.662-8.896-4.174-1.773-.275-3.691-.349-5.25.537-1.559.887-2.507 3.038-1.55 4.555.569.902 1.627 1.36 2.644 1.681 2.46.777 5.32 1.24 6.792 3.358.839 1.208 1.123 2.85 2.322 3.703 1.172.835 2.9.549 3.98-.402 1.08-.951 1.588-2.417 1.702-3.852 0 0 .612-3.007-1.744-5.406Z" fill="#F03D5F"/><path d="M141.033 84.643c-1.14-2.836-.43-6.193 1.318-8.7 1.748-2.509 4.408-4.256 7.211-5.477a27.678 27.678 0 0 1 10.439-2.281c1.41-.029 2.859.059 4.151.626 1.291.565 2.411 1.688 2.642 3.08.343 2.057-1.238 3.896-2.764 5.318a70.268 70.268 0 0 1-8.618 6.855c-2.451 1.653-5.142 3.193-8.094 3.332-2.954.14-5.639-.874-6.431-3.15" fill="#FFB5C0"/><path d="M125.364 116.723c-.032-.008.046-.424.213-1.169l.706-3.15c.281-1.332.596-2.922.787-4.704.19-1.777.225-3.76.11-5.819-.143-2.058-.503-4.004-1.125-5.67-.612-1.669-1.515-3.028-2.478-3.958a10.09 10.09 0 0 0-2.579-1.84c-.69-.307-1.071-.495-1.061-.527.01-.032.412.094 1.14.356.71.287 1.716.822 2.738 1.765 1.032.932 2.004 2.33 2.658 4.044.665 1.71 1.047 3.704 1.192 5.798.117 2.096.068 4.094-.15 5.902-.219 1.805-.572 3.401-.896 4.73a64.014 64.014 0 0 1-.86 3.121c-.222.731-.363 1.13-.395 1.121Z" fill="#17282F"/><path opacity=".2" d="M125.926 114.306c-.015-.006.034-.188.142-.529.128-.39.291-.88.492-1.483a172.195 172.195 0 0 0 1.728-5.475c1.4-4.64 3.094-11.126 4.626-18.362 1.527-7.24 2.572-13.86 3.124-18.677.152-1.202.265-2.292.348-3.251.095-.958.178-1.784.219-2.46l.128-1.557c.035-.355.061-.542.077-.542.018 0 .023.188.021.546l-.037 1.564c-.012.68-.068 1.509-.136 2.472a72.77 72.77 0 0 1-.278 3.266c-.466 4.837-1.46 11.484-2.991 18.74-1.535 7.251-3.286 13.737-4.773 18.362a101.681 101.681 0 0 1-1.878 5.438l-.579 1.454c-.137.329-.216.5-.233.494Z" fill="#17282F"/><path opacity=".2" d="M129.939 102.004c-.032-.011.154-.561.521-1.547.384-.977.994-2.372 1.857-4.044a58.174 58.174 0 0 1 3.378-5.67 57.219 57.219 0 0 1 4.941-6.4c3.78-4.337 8.017-7.505 11.366-9.23.81-.483 1.627-.755 2.307-1.061.348-.14.663-.29.966-.39l.842-.249c1.012-.292 1.572-.438 1.58-.406.041.125-2.255.624-5.534 2.41-3.267 1.783-7.415 4.949-11.163 9.25a60.879 60.879 0 0 0-4.934 6.328c-1.411 2.027-2.536 3.949-3.447 5.58a64.127 64.127 0 0 0-1.985 3.956c-.417.958-.664 1.485-.695 1.473Z" fill="#17282F"/><path d="M53.67 105.314c8.712-8.616 8.755-21.84 6.383-33.312-.396-1.915-.533-3.982-1.739-5.515-1.207-1.533-3.543-2.321-5.128-1.213-1.316.918-1.653 2.69-2.217 4.203a11.437 11.437 0 0 1-3.778 5.09c-1.117.847-2.568 1.497-3.893 1.037-1.82-.632-2.41-2.893-2.726-4.811L38.8 60.069c-.316-1.918-.646-3.875-1.554-5.591-.908-1.716-2.515-3.18-4.425-3.377-1.91-.197-3.983 1.24-4.047 3.181-.026.808.272 1.591.355 2.395.084.805-.136 1.748-.853 2.1-.727.355-1.586-.056-2.255-.519-2.31-1.595-4.08-3.857-5.759-6.12-1.68-2.262-3.332-4.59-5.488-6.392-2.156-1.803-4.925-3.049-7.696-2.733-2.77.316-5.403 2.51-5.634 5.323-.232 2.82 1.814 5.29 3.904 7.183a43.403 43.403 0 0 0 10.361 6.96c.678.324 1.412.675 1.764 1.345.636 1.206-.357 2.682-1.546 3.318-1.346.721-2.921.839-4.385 1.27-1.463.433-2.969 1.37-3.292 2.879-.448 2.093 1.542 3.864 3.384 4.932A37.184 37.184 0 0 0 23.55 80.62c1.498.274 3.06.472 4.366 1.267 1.306.795 2.287 2.4 1.833 3.866-.456 1.47-2.144 2.204-3.667 2.183-1.523-.02-2.982-.595-4.48-.885-2.804-.542-6.173.223-7.469 2.788-.851 1.686-.591 3.786.275 5.473.867 1.686 2.267 3.027 3.717 4.236 5.07 4.227 11.156 7.285 17.628 8.355 6.47 1.069 12.228.671 17.917-2.59Z" fill="#E0FEE9"/><path d="M55.29 113.843c-1.203-4.499-3.132-9.727-5.84-15.252-2.699-5.533-6.16-11.352-9.987-17.314l-2.851-4.403c-.94-1.443-1.87-2.875-2.867-4.218-1.984-2.697-4.096-5.138-6.173-7.393-2.078-2.256-4.13-4.322-6.065-6.239-1.939-1.914-3.78-3.664-5.525-5.187a68.995 68.995 0 0 0-8.765-6.569 63.712 63.712 0 0 0-3.22-1.917 1.463 1.463 0 0 0-.236-.118c-.004.006.07.057.217.15l.656.41c.578.358 1.43.885 2.509 1.594a73.024 73.024 0 0 1 8.673 6.642c1.73 1.531 3.557 3.288 5.484 5.208 1.924 1.926 3.966 3.995 6.031 6.252 2.066 2.256 4.164 4.693 6.133 7.377.99 1.338 1.911 2.758 2.851 4.205l2.848 4.402c3.825 5.957 7.285 11.757 9.992 17.265 2.716 5.501 4.662 10.697 5.891 15.173" fill="#DADBD8"/><path d="M33.641 72.66c.024-.001.04-.303.047-.85.01-.547-.002-1.338-.031-2.315-.057-1.954-.227-4.65-.426-7.622-.199-2.972-.33-5.663-.357-7.612-.016-.976-.021-1.764-.017-2.31 0-.546-.011-.848-.036-.85-.025 0-.06.299-.103.844-.047.545-.08 1.337-.096 2.314-.039 1.957.053 4.66.253 7.636l.529 7.61.145 2.308c.036.545.067.847.092.846Z" fill="#DADBD8"/><path d="M8.219 72.283c.004.025.36.005 1.003-.051.641-.052 1.57-.133 2.719-.195 2.298-.144 5.48-.232 8.993-.174 3.515.063 6.693.256 8.988.462 1.149.095 2.076.197 2.717.263.642.07.998.095 1.002.07.004-.024-.346-.097-.984-.21a47.445 47.445 0 0 0-2.711-.378c-2.295-.271-5.483-.505-9.008-.57-3.524-.056-6.716.072-9.016.281a41.47 41.47 0 0 0-2.717.312c-.638.099-.99.165-.986.19ZM14.526 93.258c-.001.012.119.04.348.078l1.005.156 3.7.534c3.124.452 7.432 1.126 12.191 1.876 4.76.752 9.079 1.386 12.213 1.773 1.568.195 2.837.34 3.717.421l1.012.088c.232.016.356.018.356.006.002-.012-.118-.039-.347-.079l-1.005-.155-3.7-.534c-3.124-.452-7.433-1.125-12.193-1.877-4.76-.75-9.077-1.385-12.212-1.772a130.597 130.597 0 0 0-3.716-.42l-1.013-.09c-.232-.015-.354-.017-.356-.005Z" fill="#DADBD8"/><path d="M25.624 100.034c.008.003.045-.064.11-.196l.275-.58c.236-.506.559-1.246.946-2.167.775-1.839 1.765-4.414 2.819-7.27 1.055-2.857 2.02-5.438 2.755-7.29l.877-2.193.236-.598c.051-.138.075-.211.067-.215-.007-.003-.044.064-.11.196l-.274.58a65.136 65.136 0 0 0-.946 2.167c-.775 1.84-1.765 4.414-2.82 7.271-1.054 2.856-2.02 5.436-2.754 7.29l-.877 2.192-.236.598c-.051.138-.075.212-.068.215Z" fill="#DADBD8"/><path d="M133.25 44.526v68.596a3.37 3.37 0 0 1-3.371 3.371H28.503a3.371 3.371 0 0 1-3.371-3.371V44.525a3.371 3.371 0 0 1 3.371-3.37h101.375a3.372 3.372 0 0 1 3.372 3.37Z" fill="#DCDCDC"/><path d="M32.528 114.118h90.292V43.53H32.528v70.588Z" fill="#fff"/><path opacity=".2" d="M127.817 75.933a2.89 2.89 0 1 1 0 5.782 2.89 2.89 0 0 1 0-5.782ZM29.44 67.833v21.981a.355.355 0 0 1-.355.355H28.6a.355.355 0 0 1-.355-.355V67.833c0-.197.159-.355.355-.355h.485c.196 0 .354.159.354.355Z" fill="#33535F"/><path d="M59.34 80.795a7.295 7.295 0 1 1-14.587.3 7.295 7.295 0 0 1 14.588-.3Z" fill="#F03D5F"/><mask id="a" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="44" y="73" width="16" height="16"><path d="M52.042 88.24a7.295 7.295 0 1 1 .006-14.59 7.295 7.295 0 0 1-.006 14.59Z" fill="#fff"/></mask><g mask="url(#a)"><path d="M44.751 88.24h14.59V73.65H44.75v14.59Z" fill="#FFBF46"/></g><path d="M49.53 79.107c.277-.022.527.283.56.682.033.399-.164.74-.44.763-.277.023-.528-.282-.56-.68-.033-.4.164-.742.44-.765ZM54.168 79.012c-.277-.011-.515.303-.531.704-.017.4.195.733.472.745.277.011.515-.304.532-.704.016-.4-.195-.734-.473-.745ZM54.964 82.39c0 .086-1.36.155-3.036.155-1.678 0-3.037-.07-3.037-.155 0-.086 1.36-.156 3.037-.156 1.677 0 3.036.07 3.036.156ZM50.088 78.27c-.018.086-.364.083-.77.15-.407.06-.735.169-.779.091-.044-.07.26-.327.731-.4.47-.074.839.078.818.158ZM55.485 78.623c-.055.07-.37-.095-.776-.216-.403-.128-.756-.167-.763-.256-.01-.082.387-.187.855-.042.468.143.74.452.684.514Z" fill="#242A2C"/><path d="M112.414 80.185a7.56 7.56 0 1 1-15.118.311 7.562 7.562 0 0 1 15.118-.311Z" fill="#F03D5F"/><path d="M104.852 87.901a7.562 7.562 0 1 1 .007-15.123 7.562 7.562 0 0 1-.007 15.123Z" fill="#F44337"/><path d="M102.246 78.435c.286-.024.546.292.581.706.033.414-.171.768-.458.792-.286.023-.546-.293-.58-.707-.034-.413.17-.767.457-.791ZM107.053 78.336c-.287-.012-.534.315-.551.73-.017.414.202.76.489.772.288.011.534-.315.551-.73.018-.414-.201-.76-.489-.772ZM107.877 81.838c-.031.04-.344-.182-.885-.46-.539-.27-1.336-.57-2.251-.556-.914.018-1.709.329-2.257.586-.547.266-.873.47-.902.43-.021-.03.26-.298.799-.624.537-.315 1.368-.684 2.355-.703.988-.016 1.834.344 2.364.675.533.339.8.625.777.651ZM102.823 77.566c.026.032-.024.127-.149.237-.125.108-.332.23-.592.277a1.138 1.138 0 0 1-.656-.073c-.154-.072-.225-.153-.208-.19.04-.082.396.036.81-.043.415-.074.738-.28.795-.208ZM108.417 77.933c.013.038-.07.112-.237.165-.164.05-.423.067-.679-.025a1.324 1.324 0 0 1-.556-.371c-.112-.129-.152-.23-.122-.259.066-.067.37.193.779.336.407.149.786.067.815.154Z" fill="#242A2C"/><path d="m90.365 101.327 1.751-.868 1.709.95-.285-1.934 1.432-1.33-1.927-.328-.824-1.773-.906 1.732-1.941.235 1.367 1.398-.376 1.918ZM83.22 101.327l1.752-.868 1.708.95-.284-1.934 1.432-1.33-1.928-.328-.823-1.773-.906 1.732-1.942.235 1.368 1.398-.376 1.918ZM76.074 101.327l1.751-.868 1.709.95-.285-1.934 1.432-1.33-1.927-.328-.823-1.773-.907 1.732-1.941.235 1.367 1.398-.376 1.918ZM68.928 101.327l1.752-.868 1.708.95-.284-1.934 1.432-1.33-1.928-.328-.823-1.773-.907 1.732-1.94.235 1.366 1.398-.376 1.918ZM61.783 101.327l1.752-.868 1.708.95-.285-1.934 1.433-1.33-1.928-.328-.823-1.773-.907 1.732-1.941.235 1.367 1.398-.376 1.918ZM88.997 78.394c.113 5.5-4.253 10.05-9.752 10.163-5.5.113-10.05-4.253-10.164-9.753-.113-5.5 4.253-10.05 9.753-10.163 5.5-.114 10.05 4.253 10.163 9.753Z" fill="#12C245"/><path d="M75.604 76.09c.377-.032.72.385.765.93.045.544-.225 1.011-.602 1.042-.378.032-.72-.385-.765-.93-.045-.545.225-1.012.602-1.043ZM81.936 75.959c-.378-.016-.703.414-.726.96-.022.547.266 1.002.645 1.018.378.015.703-.415.726-.962.022-.545-.267-1.001-.645-1.016ZM83.022 79.228c.016.015-.065.118-.226.292-.154.18-.411.408-.746.672-.349.243-.776.535-1.318.722a4.668 4.668 0 0 1-1.826.286c-.662-.025-1.272-.204-1.795-.414-.529-.204-.964-.469-1.323-.693-.706-.472-1.08-.839-1.059-.865.032-.042.454.263 1.173.677.366.195.8.432 1.312.614.508.186 1.087.348 1.707.37.62.03 1.207-.074 1.716-.245.515-.162.935-.421 1.287-.632.34-.234.613-.43.79-.581.184-.145.293-.218.308-.203ZM76.054 73.849c-.017.087-.494.056-1.06.148-.567.085-1.011.26-1.054.182-.045-.069.376-.393 1.006-.49.63-.1 1.13.08 1.108.16ZM84.073 74.314c-.055.071-.478-.18-1.042-.35-.563-.176-1.053-.205-1.06-.294-.011-.082.524-.198 1.151-.003.628.19 1.006.587.95.647Z" fill="#242A2C"/><path d="M74.89 78.511c.04-.007.103.096.113.284.011.187-.05.453-.216.689-.168.236-.4.38-.579.431-.181.053-.3.027-.305-.012-.015-.086.367-.214.63-.6.276-.374.271-.777.358-.792ZM83.863 79.427c.007.04-.075.1-.23.113a.871.871 0 0 1-.567-.177.868.868 0 0 1-.335-.492c-.032-.153.002-.249.042-.253.087-.007.186.288.478.495.283.22.593.229.612.314Z" fill="#242A2C"/><path d="M91.219 78.511s-.009-.067-.018-.2a277.535 277.535 0 0 1-.063-1.02c-.017-.158-.05-.33-.079-.516l-.095-.603c-.026-.216-.106-.436-.162-.674-.217-.956-.664-2.086-1.37-3.283A12.298 12.298 0 0 0 86.3 68.72l-.533-.397c-.187-.122-.384-.235-.58-.355-.198-.113-.386-.25-.6-.347l-.639-.306-.325-.155-.342-.124-.693-.253c-.235-.077-.481-.127-.725-.194-.246-.055-.488-.142-.745-.168-.509-.072-1.023-.177-1.556-.18-.265-.01-.533-.035-.802-.031l-.814.042c-.137.01-.275.008-.411.027l-.41.063c-.275.045-.553.077-.828.134-.544.148-1.106.258-1.64.482-.553.177-1.072.449-1.605.704-.26.142-.509.305-.766.458-.126.08-.26.15-.38.24l-.362.272c-.5.343-.937.772-1.395 1.185l-.625.689-.158.173-.14.187-.282.377-.283.378-.248.405-.247.407-.124.204-.105.215-.418.868-.333.91a13.126 13.126 0 0 0-.635 3.88c.018 1.334.233 2.646.634 3.88l.333.911.418.868.105.215.124.204.247.408.248.405.283.378.281.377.142.187.157.173.625.688c.458.414.895.844 1.395 1.187l.363.271c.12.09.254.16.38.24.257.153.506.317.766.458.533.256 1.052.528 1.604.705.535.224 1.098.334 1.64.482.276.057.555.089.829.134l.41.063c.136.018.274.017.411.027l.814.042c.27.004.537-.022.803-.031.533-.003 1.047-.108 1.556-.18.257-.026.499-.113.745-.169.243-.066.49-.116.725-.194l.693-.252.342-.125.325-.154.639-.306c.213-.097.402-.235.6-.348.195-.12.392-.232.58-.355l.532-.397a12.303 12.303 0 0 0 3.134-3.495c.705-1.197 1.152-2.326 1.37-3.282.055-.239.135-.459.161-.675l.096-.602c.027-.187.061-.358.078-.517a186.875 186.875 0 0 1 .063-1.02 4 4 0 0 1 .018-.2s.002.068-.002.2l-.022.59-.018.434c-.015.159-.046.332-.072.52l-.088.605c-.024.218-.102.44-.156.68-.21.962-.65 2.101-1.354 3.311a12.333 12.333 0 0 1-3.141 3.539l-.536.402c-.188.125-.387.239-.583.36-.2.115-.39.255-.605.353l-.644.312-.328.157-.345.127-.699.257c-.238.08-.486.13-.732.198-.249.057-.493.145-.752.173-.514.074-1.034.181-1.573.186-.268.01-.538.036-.81.033l-.824-.04c-.138-.01-.278-.01-.416-.027l-.415-.063c-.277-.045-.559-.077-.837-.134-.55-.148-1.12-.26-1.66-.484-.56-.178-1.085-.453-1.625-.711-.263-.143-.516-.308-.776-.462-.128-.082-.264-.15-.385-.243l-.367-.274c-.506-.347-.95-.78-1.414-1.199l-.633-.696-.16-.176-.142-.188-.286-.382-.287-.383-.25-.41-.251-.412-.126-.207-.106-.217-.424-.879-.338-.922a13.278 13.278 0 0 1-.643-3.93 13.26 13.26 0 0 1 .644-3.928l.338-.922.423-.878.107-.217.126-.207.25-.412.251-.41.287-.383.285-.38.143-.19.16-.175.633-.696c.464-.419.907-.852 1.413-1.199l.367-.274c.122-.091.258-.161.385-.242.26-.155.513-.32.776-.462.54-.259 1.066-.533 1.624-.711.542-.225 1.111-.336 1.66-.484.28-.057.56-.09.838-.135l.415-.062c.138-.018.278-.017.415-.026l.824-.04c.272-.005.543.022.81.032.54.004 1.059.111 1.573.186.259.027.503.115.752.173.246.067.495.119.732.198l.7.257.344.127.328.156c.217.105.431.21.644.312.215.098.405.238.605.352.197.123.395.237.583.361l.536.402a12.336 12.336 0 0 1 3.142 3.539c.703 1.21 1.144 2.349 1.354 3.312.054.24.132.461.156.68l.088.605c.026.188.057.36.072.52l.018.434.022.59c.004.132.002.2.002.2Z" fill="#00B84A"/><path d="M122.82 48.035H32.528V43.53h90.292v4.505Z" fill="#DADBD8"/><path d="M35.443 45.658a.61.61 0 1 1-1.22 0 .61.61 0 0 1 1.22 0ZM37.469 45.658a.61.61 0 1 1-1.22 0 .61.61 0 0 1 1.22 0ZM39.495 45.658a.61.61 0 1 1-1.22 0 .61.61 0 0 1 1.22 0Z" fill="#fff"/><path d="M66.948 41.63s-.618-1.397-.733-1.705c-.314-.838-2.334-6.45-1.85-7.3 2.24-3.93 3.976-6.724 8.394-6.724l7.801-.053s7.393-1.505 12.602 15.306l-26.215.476Z" fill="#00B8FD"/><path d="m50.489 43.039 10.214-2.202 12.01-6.317.046-8.62c-1.803-.497-5.25.753-11.458 3.916l-9.222 4.76c-3.158 1.63-3.941 5.797-1.59 8.463Z" fill="#00B8FD"/><path d="M73.478 59.722c-.147-.484-.047-.796.66-.559 1.558.523 2.95.353 3.29.05.341-.302.029-.88-.478-.831-.41.04-1.115-.1-1.642-.228a3.994 3.994 0 0 1-1.224-.517 19.295 19.295 0 0 1-.855-.58s-1.437-1.038-1.887-1.873l-4.93 2.114.794 2.47s.258 1.453 1.668 1.913c1.409.458 3.65.286 3.65.286.41-.27 1.997 2.025 2.477 2.835.473.8 1.052.91 1.238.415.127-.337-1.282-2.85-1.775-3.641-.27-.432-.808-1.269-.986-1.854Z" fill="#ECC08C"/><path d="M70.14 61.973c-.005.018-.123.013-.29-.07a1.248 1.248 0 0 1-.516-.504 1.249 1.249 0 0 1-.16-.702c.018-.187.075-.29.092-.284.044.006-.06.453.204.91.25.465.687.61.67.65ZM71.699 62.033c-.006.018-.117.007-.275-.078a1.238 1.238 0 0 1-.481-.494 1.238 1.238 0 0 1-.151-.673c.015-.178.067-.278.085-.273.044.006-.044.433.203.872.233.446.638.606.619.646Z" fill="#A84333"/><path d="M50.198 42.704s15.65 17.986 15.631 17.69c-.018-.297 7.016-5.556 7.016-5.556L57.5 36.562l-7.302 6.142Z" fill="#00B8FD"/><path d="M59.69 39.17a.575.575 0 0 1 .11.106l.292.325 1.051 1.214c.883 1.03 2.094 2.459 3.425 4.044a544.105 544.105 0 0 1 3.39 4.074l1.015 1.246.27.344c.06.08.09.124.086.127a.547.547 0 0 1-.11-.106l-.292-.325-1.051-1.214c-.883-1.03-2.095-2.46-3.426-4.044a526.178 526.178 0 0 1-3.39-4.074l-1.014-1.247-.27-.344a.566.566 0 0 1-.086-.127ZM87.375 41.242c-.032-.009.172-.429.187-1.152a3.545 3.545 0 0 0-.202-1.236 3.56 3.56 0 0 0-.82-1.287c-.38-.4-.788-.744-1.117-1.106a3.41 3.41 0 0 1-.701-1.093 1.898 1.898 0 0 1-.127-.867c.025-.207.075-.313.081-.31.034-.003-.138.465.148 1.136.137.33.376.692.704 1.036.326.349.736.688 1.125 1.097.393.403.689.879.842 1.347.157.468.199.917.177 1.286-.02.371-.096.664-.164.858-.067.195-.126.294-.133.291Z" fill="#242A2C"/><path d="M66.267 27.402a1.498 1.498 0 0 1 .228-.108c.151-.065.378-.153.677-.247.3-.09.675-.184 1.121-.229.444-.039.967-.03 1.51.141a3.496 3.496 0 0 1 1.545.994c.455.494.766 1.164.928 1.892.157.727.24 1.515.148 2.327-.094.805-.36 1.636-.865 2.345-.507.709-1.19 1.232-1.872 1.66-.685.432-1.375.785-2.029 1.13l-3.475 1.824-2.35 1.217-.642.324a1.508 1.508 0 0 1-.228.104c-.002-.005.072-.05.215-.132l.628-.35 2.326-1.26 3.457-1.854c.651-.347 1.342-.704 2.017-1.132.673-.425 1.337-.937 1.826-1.621.487-.684.747-1.488.84-2.273.092-.788.014-1.565-.136-2.278-.155-.712-.45-1.358-.884-1.837a3.407 3.407 0 0 0-1.482-.975 3.804 3.804 0 0 0-1.47-.159c-.438.035-.81.12-1.111.2-.3.085-.529.163-.683.218a1.54 1.54 0 0 1-.239.079Z" fill="#242A2C"/><path d="M61.411 40.818c-.05.014-.18-1.031-.873-2.086-.678-1.064-1.58-1.61-1.546-1.65.01-.014.244.099.576.356a5.018 5.018 0 0 1 1.754 2.709c.1.408.107.669.089.67Z" fill="#242A2C"/><path d="M84.414 38.865s-.11.046-.333.09a3.334 3.334 0 0 1-.987.042 3.624 3.624 0 0 1-1.483-.487 3.396 3.396 0 0 1-1.37-1.54c-.315-.703-.448-1.597-.188-2.483.134-.44.398-.873.825-1.144.21-.135.484-.207.746-.153.265.048.492.224.65.432.594.87.693 2.05.35 3.114a3.7 3.7 0 0 1-.885 1.449 3.369 3.369 0 0 1-1.521.86c-1.15.305-2.43.03-3.252-.757-.82-.787-1.142-1.949-.976-2.964.077-.512.291-.987.596-1.374.157-.19.35-.356.582-.446a.939.939 0 0 1 .717.008c.442.195.713.63.763 1.06.05.434-.075.844-.237 1.193a5.697 5.697 0 0 1-1.242 1.657 5.9 5.9 0 0 1-1.275.902 5.48 5.48 0 0 1-.911.38c-.108.036-.192.054-.248.07a.357.357 0 0 1-.086.017c0-.003.028-.014.082-.033.054-.02.137-.043.242-.083a6.018 6.018 0 0 0 2.137-1.317 5.67 5.67 0 0 0 1.201-1.639c.155-.34.268-.731.218-1.132-.046-.391-.304-.789-.694-.956a.805.805 0 0 0-.618-.003c-.203.08-.38.23-.526.41-.284.364-.488.819-.56 1.308-.156.971.16 2.087.94 2.831.779.745 2.005 1.01 3.107.718a3.22 3.22 0 0 0 1.452-.82c.394-.391.676-.877.849-1.387.165-.513.227-1.05.172-1.566a3.272 3.272 0 0 0-.16-.75 2.166 2.166 0 0 0-.33-.662c-.145-.191-.34-.34-.565-.382a.884.884 0 0 0-.646.131c-.389.242-.647.653-.774 1.065-.255.85-.134 1.717.166 2.402a3.32 3.32 0 0 0 1.314 1.509 3.615 3.615 0 0 0 1.445.502c.85.093 1.311-.101 1.313-.072Z" fill="#FAFAF9"/><path d="M85.592 21.351a3.54 3.54 0 0 1-.697-1.386c-.042-.167-.07-.344-.019-.507.052-.163.206-.305.377-.29.175.017.294.18.388.33.275.435.54.881.72 1.365.049.133.092.273.084.415-.008.141-.077.287-.203.353-.138.072-.313.032-.44-.06-.126-.09-.214-.223-.3-.353" fill="#A84333"/><path d="m86.342 21.025-.772-1.616c-.076-.16-.154-.326-.16-.503-.005-.177.082-.37.249-.43.144-.055.312.005.427.109.115.103.188.244.258.381l.365.709c.099.193.2.389.24.602.04.213.014.45-.12.62-.136.17-.395.247-.581.137" fill="#A84333"/><path d="M82.913 26.027s-1.074-1.393-1.17-2.128c-.097-.734.803-2.036 2.733-2.33 1.036-.156 1.643-.445 1.983-.679a.622.622 0 0 0 .226-.753c-.253-.615-.71-1.757-.675-1.91.09-.394.346-.386 1.014.59s1.437 1.967 1.288 2.416c-.148.45-2.5 1.842-2.5 1.842l.643 1.037-3.542 1.915Z" fill="#ECC08C"/><path d="M89.294 40.34 81.888 25.83l4.768-2.672 10.018 15.88s.528 1.015 1.267 2.203h-8.398" fill="#00B8FD"/><path d="M86.58 23.16a.386.386 0 0 1-.083.057l-.25.152-.96.559-3.443 1.962.027-.088c.72 1.469 1.656 3.167 2.6 5.013 1.404 2.73 2.62 5.231 3.473 7.053.428.91.766 1.651.996 2.164l.26.594c.058.136.086.209.08.21a1.25 1.25 0 0 1-.109-.197l-.286-.581-1.04-2.142a348.66 348.66 0 0 0-3.512-7.03c-.943-1.843-1.873-3.547-2.582-5.024l-.027-.059.054-.03 3.472-1.913.977-.527.26-.134a.372.372 0 0 1 .093-.04ZM66.946 41.63c-.035.02-.45-.69-.792-1.64-.346-.951-.482-1.762-.442-1.77.044-.01.246.778.588 1.716.338.94.687 1.674.646 1.694ZM83.257 20.24c1.165.459 2.61.063 3.38-.924.77-.988.802-2.486.074-3.505 1.672-.423 2.715-2.352 2.376-4.043-.338-1.692-1.85-3.012-3.535-3.377-.645-.14-1.329-.156-1.956.05-.627.204-1.192.647-1.458 1.251" fill="#242A2C"/><path d="M83.023 16.458c.005.018-.218.057-.571.242a2.52 2.52 0 0 0-1.117 1.203 2.464 2.464 0 0 0 .187 2.353c.123.195.282.374.466.53a2.47 2.47 0 0 0 2.145.53 2.472 2.472 0 0 0 1.89-2.09 2.477 2.477 0 0 0-.852-2.2 2.522 2.522 0 0 0-1.529-.598c-.398-.014-.616.049-.62.03a1.989 1.989 0 0 1 .62-.09 2.52 2.52 0 0 1 1.6.574c.281.233.55.549.722.948a2.593 2.593 0 0 1-1.797 3.577 2.607 2.607 0 0 1-2.766-1.134 2.593 2.593 0 0 1-.406-1.307 2.554 2.554 0 0 1 .24-1.168 2.517 2.517 0 0 1 1.19-1.212 2.007 2.007 0 0 1 .598-.188Z" fill="#F03D5F"/><path d="M84.287 11.858c1.209-.068 2.321-.984 2.62-2.157.298-1.172-.24-2.509-1.27-3.146.498-1.397.01-3.087-1.158-4.002-1.167-.915-2.924-.988-4.162-.171-.947-1.66-2.972-2.63-4.858-2.327-1.886.302-3.507 1.856-3.888 3.728-1.697-.7-3.805-.25-5.066 1.085-1.262 1.334-1.595 3.463-.8 5.119-1.846.16-3.381 1.982-3.224 3.828.157 1.846 1.977 3.384 3.824 3.23-.377 1.225.096 2.665 1.127 3.428 1.03.764 2.545.797 3.608.08.678 1.095 2.017 1.743 3.297 1.596 1.28-.147 2.437-1.082 2.849-2.303" fill="#242A2C"/><path d="M80.775 25.552c.06-1.422.137-2.708.137-2.708s3.176-.4 3.314-3.643c.137-3.243-.186-10.71-.186-10.71l-5.848-2.808-6.29 5.068.986 14.893a3.949 3.949 0 0 0 7.887-.092Z" fill="#ECC08C"/><path d="M83.883 14.045c-.051.055-.354-.2-.79-.217-.434-.023-.758.204-.804.145-.023-.026.03-.126.171-.229a1.048 1.048 0 0 1 1.272.057c.133.116.176.22.151.244ZM79.063 14.045c-.051.055-.354-.2-.79-.217-.434-.023-.758.204-.804.145-.023-.026.03-.126.17-.229.14-.102.375-.198.646-.186.271.013.498.129.627.243.132.116.176.22.151.244ZM80.697 17.315c-.002-.027.27-.066.71-.108.11-.008.216-.027.236-.108.028-.085-.017-.215-.069-.356l-.314-.92c-.437-1.309-.75-2.383-.701-2.4.049-.018.442 1.029.878 2.338l.301.925c.04.137.11.293.05.47a.277.277 0 0 1-.185.166c-.072.02-.134.02-.19.02-.44.008-.715 0-.716-.027Z" fill="#242A2C"/><path d="M80.911 22.844s-2.125.061-4.207-1.377c0 0 .989 2.362 4.152 2.173l.055-.796Z" fill="#E89533"/><path d="M76.399 5.864c-1.037 1.434-1.012 3.547.059 4.956.471.62 1.184 1.125 1.963 1.097.779-.029 1.533-.767 1.368-1.529-.305.953.506 2.084 1.507 2.102 1 .018 1.85-1.083 1.58-2.047.08.346.165.701.364.995.2.294.543.518.895.471.489-.064.773-.589.885-1.07.334-1.435-.195-3.011-1.25-4.041-1.054-1.03-2.58-1.522-4.05-1.421-1.47.1-2.877.762-3.98 1.74" fill="#242A2C"/><path d="M76.81 7.008c.38.926.664 1.909.654 2.91-.01 1-.341 2.025-1.051 2.73-.71.706-1.828 1.03-2.758.662.223.876.142 1.868-.402 2.589-.545.721-1.612 1.066-2.404.632-.717-.393-1.027-1.261-1.125-2.072a6.736 6.736 0 0 1 1.834-5.431 6.737 6.737 0 0 1 5.382-1.974" fill="#242A2C"/><path d="M72.8 14.734c-.433-.267-1.023-.047-1.367.328-.54.589-.634 1.541-.22 2.225.415.683 1.303 1.04 2.075.834" fill="#E89533"/><path d="M72.7 17.15c0 .018-.145.039-.368-.025-.213-.06-.542-.232-.667-.596a.712.712 0 0 1 .287-.836c.2-.132.353-.127.355-.11.007.024-.13.06-.288.197-.158.129-.314.403-.206.7.099.294.365.46.556.542.196.084.333.104.33.127Z" fill="#A84333"/><path d="M79.33 12.691c-.04.126-.514.08-1.078.105-.564.017-1.034.099-1.084-.024-.052-.114.409-.42 1.067-.443.657-.026 1.14.245 1.096.362ZM83.873 12.601c-.05.045-.147.015-.26-.013a1.056 1.056 0 0 0-.396-.025c-.17.016-.356.046-.498.044-.143-.002-.243-.032-.261-.095-.018-.061.046-.142.167-.222.122-.078.3-.166.55-.192.252-.036.524.083.627.219.11.133.117.244.071.284Z" fill="#242A2C"/><path d="M79.942 18.145c.245-.146.551-.214.819-.116.268.098.47.391.407.669a.668.668 0 0 1-.263.373.853.853 0 0 1-.676.166.66.66 0 0 1-.503-.46c-.06-.231.05-.502.264-.608" fill="#E89533"/><path d="M81.534 18.49c.007.018-.104.093-.313.138a1.415 1.415 0 0 1-1.458-.608c-.116-.18-.14-.311-.123-.318.022-.01.082.102.211.252.127.15.334.335.608.45.274.114.55.13.746.115.198-.015.32-.05.329-.028Z" fill="#242A2C"/><path d="M74.952 20.038c-.019.001-.007-.226-.109-.61a2.523 2.523 0 0 0-.924-1.358 2.48 2.48 0 0 0-2.956-.006 2.47 2.47 0 0 0-.994 1.972 2.468 2.468 0 0 0 3.95 1.97c.568-.427.824-.98.924-1.358.102-.385.09-.611.109-.61a2.027 2.027 0 0 1-.05.625c-.085.39-.332.973-.916 1.43-.29.223-.658.414-1.086.493a2.593 2.593 0 0 1-2.578-1.008 2.606 2.606 0 0 1-.508-1.54 2.609 2.609 0 0 1 1.06-2.093c.206-.152.43-.272.661-.35.46-.173.94-.183 1.365-.106.428.08.796.27 1.085.494a2.52 2.52 0 0 1 .917 1.43 2.03 2.03 0 0 1 .05.625Z" fill="#F03D5F"/><path d="M83.87 5.527c.002-.004.029.003.082.02.05.021.126.056.203.13.155.14.33.45.261.852-.063.405-.473.793-1.01.895-.546.114-1.159-.09-1.71-.409l-.603-.348.66.217c.228.075.39.285.447.512a.92.92 0 0 1-.092.698.975.975 0 0 1-.594.42c-.24.064-.498.055-.74-.015-.593-.185-.976-.667-1.27-1.098l-.423-.619.537.521c.307.298.375.741.289 1.104-.083.37-.34.679-.65.822a1.57 1.57 0 0 1-1.66-.203 1.972 1.972 0 0 1-.7-1.232c-.008-.068-.01-.104-.005-.105.013-.002.031.141.125.383.094.237.268.592.639.878.354.287.98.442 1.542.162.279-.135.497-.405.57-.737.074-.326.005-.715-.254-.962l.114-.097c.29.422.662.872 1.19 1.033.426.132.941.02 1.16-.333.212-.344.085-.878-.27-.995l.059-.13c.537.316 1.113.511 1.616.414.5-.085.88-.433.947-.793a.91.91 0 0 0-.207-.8c-.14-.15-.26-.171-.252-.185ZM76.095 10.741c.003.003-.01.022-.038.057a1.294 1.294 0 0 1-.137.145 1.84 1.84 0 0 1-.652.388 1.853 1.853 0 0 1-1.18.02 1.961 1.961 0 0 1-1.16-1.002l.123-.018a1.94 1.94 0 0 1-1.46 1.546c-.794.182-1.752-.24-2.125-1.072-.328-.748-.113-1.63.41-2.134l.101.11c-.356.3-.805.443-1.228.445a2.113 2.113 0 0 1-1.152-.314 1.743 1.743 0 0 1-.69-.81 2.028 2.028 0 0 1-.145-.903c.04-.561.282-.963.48-1.186.203-.226.356-.296.356-.296.01.012-.132.099-.317.328a2.017 2.017 0 0 0-.27 2.012c.122.29.35.558.654.746a1.99 1.99 0 0 0 1.082.282 1.803 1.803 0 0 0 1.132-.417l.101.111c-.476.46-.673 1.283-.371 1.963.335.758 1.226 1.154 1.95.99a1.812 1.812 0 0 0 1.365-1.421l.033-.206.089.188c.232.493.66.818 1.075.958.42.145.823.104 1.124.01.305-.095.517-.241.65-.347.133-.108.194-.179.2-.173ZM70.305 15.934c.003.005-.077.073-.253.15a1.703 1.703 0 0 1-.808.126 1.681 1.681 0 0 1-1.114-.544 1.802 1.802 0 0 1-.439-1.497l.134.06c-.27.355-.643.682-1.097.894-.34.158-.707.24-1.063.227a2.168 2.168 0 0 1-.978-.268c-.583-.31-.909-.89-.93-1.382-.037-.496.14-.88.3-1.095.085-.107.162-.18.218-.223.058-.042.09-.062.092-.057.01.012-.114.098-.26.315-.14.216-.29.586-.24 1.05.035.46.342.982.888 1.266.534.296 1.268.336 1.908.026.427-.2.782-.508 1.043-.844l.188-.245-.055.304a1.683 1.683 0 0 0 .388 1.384c.296.345.697.495 1.027.535.335.04.605-.022.78-.08.176-.06.265-.112.27-.102ZM86.836 9.61c.016-.005.088.198.064.54-.02.335-.167.813-.532 1.197-.368.383-.84.55-1.174.586-.34.039-.545-.024-.542-.04.003-.027.209-.005.525-.069a2.087 2.087 0 0 0 1.078-.584c.336-.353.489-.789.535-1.104.05-.318.02-.523.046-.526ZM88.62 12.666c.008-.003.047.072.074.222.024.147.035.376-.06.64-.092.254-.32.566-.707.649-.188.04-.396.028-.592-.05a.813.813 0 0 1-.464-.452l.146-.05c.023.09.041.188.037.287a1.162 1.162 0 0 1-.732 1.04.973.973 0 0 1-.58.025 1.126 1.126 0 0 1-.44-.242 1.056 1.056 0 0 1-.352-.612c-.026-.168 0-.26.007-.259.015 0 .01.093.052.246.041.15.145.366.365.541.21.176.559.301.897.167a1.03 1.03 0 0 0 .627-.908.866.866 0 0 0-.03-.241l.148-.05c.138.353.57.487.883.421.327-.059.54-.322.636-.551.1-.237.108-.452.1-.595-.007-.145-.026-.225-.015-.228Z" fill="#33535F"/><path d="M79.72 17.003c.02.003.032.067.006.165a.66.66 0 0 1-.217.327.66.66 0 0 1-.362.153c-.101.007-.162-.018-.16-.038 0-.044.224-.065.423-.235.203-.163.266-.38.31-.372Z" fill="#242A2C"/></svg>PKCA#]o�� � �Ocomponents/com_sppagebuilder/assets/editor/dist/images/3be2d24ea2a358822a5e.pngnu�[����PNG IHDRoh��� pHYs%%IR$�sRGB���gAMA���a��IDATx� �$Wu狟Ȭ�z�^ԭ�%�%!!��d�Yl� Z3��I������3�K2ی=Ɍ=�y�1�{�j���5�1z`c $������kUWWU��ߍ{�nފ��ʭ2�~_):"nܸq32"+~q�='B��W�)M�,��ˉ��3|�)I�$�$Yy��G�B�/:�Q?��Ir���#�$1���Q)��L'�<*�B!��@"��V\����u��$ϐ��W�-s�k�t�|��.�z�7-�|lj��<-CV��i!�B!$�7җ��3����J{��n��FtG�5���+V��+��t���B!����x#�����:�&�J1N��P[}VG���:�~�Z��E��n��B!��7�SR����K��G��<j]�ʃ��B!��I(�HWqb�jH�Oz��.�/ޖ�$�왷��� Z�!�B�o��Db �5� ���@��2G!�2�P���H�?�a�ګ�8��[�kA�Ղ���T?*��!k��B!�2P���[�ԍ��y��vY{�-f�~�i�#�B�(�HS��7�qBf��־x�N],��H���B!������n[�o!p�<H!G!��?P��"��}��Y��-$��%�G�ZI!��zP����#��$l�P��LKIn���G�B!��P��c�=���D�(k9�H;P�����hrݝ�!�B�:o��E���fH�*+�-��B!�t��uB|�-B+[�P��Z�!�B���ǹFr,[�P����ƙ[��B!�sP��Q�h�ъ����=(��'In�K%!�BH�P��!Ҩ��o�kd�x�q�B!mA��h�"o�'�ws�B!�������P�u�8B!��A�6�P�����CG!��oE�*@��;�\qoM�?x�B!��eP� m��[�a`B!��\(��y�v�=o�E!�BH %!} �k�����p��P����17J����B!����oXѶ[��V�������/LKbnI���v!�BY�P�� �֧P���R-�+%!�B�#o}\$�٧P��'G!��uǼ�"p����� 7B�'w���+oB!��u��*a�7��{��>!���n1�G�'_u���n!�BY�P��s��Zk�=b�6��6B�ǘ}�JI!���Ǽ��4 ɩ��h{������iY�K���&�BY����Ҁ$��p#����B!kZ���Gn�h`hydh�#�BȚ���.�#I��F��A+!�B���u�4���,H2���6H�CRI^G+!�B��k�O��O�ڀ�m-1-��%���ۅB!d��d�H���d��ҏ��p��*�B!-o�AI�0���ŪB!-om��E�F��`&��O���.!�B����$!ϔ��V�QB!dP��d�h�� Y��mr�@7JB!��=���sρ)+�>B�FȚn�w�;�B!��>��I�4�0��F!��E�qpL�M!��>�� �=/��Ƿ�<!k���LG!��~�c���m��y[��+��G!��~���:�{~�& 7B�-{�8��B!�����������-oD�H����+�B!�-oN�10 !d�4�ɟ_�B!��"o>��=�$���J�v2!�B�jB��I���(�[!$F�$�B�*B�&Y*X�v!�����*�B!=f7kq�'��۔BH3y���>"�B!=d]G�4��� b�ۅ�"m��#II%A$ʣB!��e֭��6����h�'�BH�Y�����#o�p#�t��p�B��N�Y��Mb�6!���AG!��������=�ƛ�W�r�BH��+�{&�27�HG!����n��W�������`"���1gJ�9e��"!�B�ºo�/�0��o�u 8BH�P�6�鹿#�BHWX�� "���r 8BH�,n !�B:Κo_��_8�'� 8BH�7� �ʭB!��!֬x����^�V>Ҩ!d�4ns��՟m�;D!��kR���7�2�]"IS����4M7� ��ڛ�B!�M֜x�p+UL��M��#�4d���c�f 8B!��˚oK�MvKP�B iU�)N���[�B!�E֔x+W�ҢpS(�!�hW�)&�����B!��X3��K��#��:!$�S�MI���o�-�B!+dM���{�7#7J��#�t\��LI�r!�BV���/���\5�f�p��c�#�<f�T�`oB!���!`���T�6�"*�Ω�.�_t��e'f~n~�^��끮 �M�:!�Bi��>�t�v#K��7 �A$���L����cn��ę]�Z����䪃+�r�v\���R�m�N˒�J{L���0z#ܖH���7?v�B!�4` ��=�ej~��=�#�P��-�3ɽV(}EJ����M��Դ�V�A�!�Δ��{���m�t$�� �nJbnL~��B!��:�x��o�Ո�J�$ �Un����H�X�C�"�VJ&��v��t��j ���R�*��O!�BH'�Y�[J������搝�Z��P���{�g�go�S���n�dZ&�W%7��B!��2P����{�j�ƹ�:p�$9d-k��e�Z��:&s���-���p�$r0�͏]/�B!9�x�u��f���ֺ�������V���������V��O�MI�[��xW��B!d0��p�I�>�p-���V��K��r�U�,��� ��G�ٟ���B!����o�0έp+!9d��[(�:�r��[�}]+�����#��ry?�B!$������H�z��9pu��Z�>!���(غ�r�R�J�A�r�^�eJ~�c��B!���O/�8έpFJ)���td��N��37�����o�B ��'�/��;$I�A�Ʋ��l��r7J�� ��ʠ ���U�o��N�A!����ۧ�~�V�u*ভ�͊���)�?6�fYo.�+��B!$�/�d���C2����l��也�]���D�@7O�ܖ���U!����˧�/���2�qw�}�|+dz 6k^ĭ�0}!����'�Av��c �i1�-���-֤�[K�-�L�$!��~髧���.��p.�m7Y����ͭb�@ Z��n)�L~�c�!�B�%%�#|Z�5��SnX��M��=nk����u��^��@��Zn���o_;�B!-�7O7k�]2����%����OMY�XK�[�d�<0y�ֲp[�B�:�/,op�\�� �nZs}�O�p[�XK�mRM��ŏJ��>����ŏ!�B�}!�֪�d}/�-�*��=(��w�|�'o�kW�#�R�>�o^�O!���X�'���.�G�PZk[�:��'�0w��Q)�,��znL�M!��7V�ig�F�l��p����oN�:ȇ@�ijX�Wy,ܺn&�&�B���6Y���d�.����O��Wo�p#+��RM����#��zn����_��B!��u�����x�F�FY笚��ƶ�M���pG�W}�-�2��-�t�B!d]�j�dַ�-��ɶ_Gk�V���"R&�!�n1�̿���!�B�<���^��4�c����3�?���n�����b��~#�B�=�����n��U\�&ɼm��$��f���wō�S2[�7!����x[�AJ�g�t�$�"���4�w�[c���߸[!��f�x����AJ�A7-I�*+�nBzHG�QR�5Oe�#B!��5KO���x���m���hs\��n�d�ik���1�?�O;$�BYs����B�"Z��%�|�i!d����V�H�5�k:!��F�xcj��X��3�;�s>����H?�\�6+�jz�[;�3���7 !�B�=o_��7�Yhuk���InA`!���ަ�P�u����7�,y$!�BzC��R��PP�IC�ۧnB�ȤX�Q�u�[f��K!��1�.ކ�r���� �I^G�F�@��[���y3�o�B�ڢ�� �;�2� �ۅ�b���p�S��B!k���7&�����p#�pG���+�K��%h}#�B�]on�rw���-nd�q��)+�"J�)h}#�B�]o��u�j5y�5W|�v!d ��v�QY�o)��o�BȚ�+~J���*�!!�W����Nʉ��2";�R�t�e�LH��-O�w���]��Y6T���Z��B�z�T���Ҍ[N��X�I~�Ͼ-�C�����FH��s�5W|�v���.�?j��_�����˭pK)!�gbQ��Ż�D��R�u�D^c@vHI�B�3Uk�(O�#1w^7#&�O��-��ɫ>��ҧt���nw �t'�.����a������$)_-Ɯ/��6�V�Q�u�Q�M�P��Bi@�3R-�Mr�� !}F���o��d�G�t�� �?��:1���I&��~bA6[w��>���.I�Y��� �o��4����%��o_�� �[Hg0r���?x�t�W����7��˅�~e>�&'J� ���~��r<2!����%��GBH��h��� �['��0�:� ��6_��p#�Έyʊ��t���\!��BJ�1����'��)��2�����Q���d�5�|`Z:�����_��#Sò��dtC�6��c�H�99s�,.���7~[�%�NB�''eqv^N����O5��y\���n�d5�x������@%�,&ի~��ޱ�WM�3��&g]{��L+��L!���ͱ����}�ay��Oʉ[�Ȍ,�ߞ0�Y%:&t��2b� i{���>t�t���D�E��X6��&�B!�����w��E-pd��xcR��aD~煗}�-�!�'��E*�VX���~��r�!�B�z"�O|S�u��ŕ�����G�`F�! XR����t�� 7D�L*?WXa�y��Q�B!�x0l��7���pqq�d��i>�!�m�v�=7NYk�>!mb�"@�t���k�)/?2�۵�q-ǵB!���G/��co�vS��|�w��Ҷx�; �0�6IRzkG#K���$/��H�F!�Ҙ��;W���K��̛��Ҷx+^��qn/���K')�On{�۟O�F!���^t�<���oLv�;�T�m��/=�&��� i����x~���7^$�;7!�Bi��_y��\�Ø�!=�=˛����&�v՞ێJ')���Gg�+.B!��<��a��*z���c�H�hK�1PI{T������^�[Z��C!�B��o�.ߔ��,W!=�e�v�o�Q������C7K��J&s7n�� � !�BZ�>7�ܘ !=�e�V6r����xZ����ן� %�B!mp��<5�|C��|⺝BH�iI���7�6b� i D�쒻$�O���E��B!��ƾ�����m��eBH�i��V�X�6�xtɈ����lB!������f ��� -�7�vk�$In�xt�Z���7�GwIB!��N0��蹊n���X��eR�ۭ%In�x2��W?<)�B!�{�!�Ċ�[iQn����"]e��B!dU0�t"]gHVJbe�Ҝn�B!���Kt�uVdy��o���n!+eZ�J�!�B!��Ȋ�[�,��b��k�!�B!���D�L���n)!�B!���o�2��� !�B!��I�7&�nZ�!�B!��h�e#7!+a�X�{�)��߬)۹c�\�g�LNv.j�{�o�������ˠ���/~�n=���p��9W��ze��~���ן�{͜7B!���JS��{n���O�JX7V7���lBo��WˁW�T����'���wtTB!����)����>!+b=�u�E���M��ݿ������effV��������+�}�Vg��2D�?�'B!�B�MYޒR�*�L��u9�m�丳 ̯��J�����]��!F��3_p�=��U�e�>��k�����V��^��q+pv�Q|���/��q��m��3�����m"��=�w��M ��6�N8i���h@L]�>c�����\#/ɵY�����:8w8o�����ʱ��/|�+�{�#�����;n���g ?���V�X�qp�=�}v���!�BH�hJ�Y�OH�0¤��{<�C\\��,q(��g�?7�B��nW�@\��[�%���_X6�u1f�������*N �ЧO{��P�a?�w���X��.�`��ˬ �}�qh��AX%Y��wݎ1f*�~�~��o�Eೃ˽� ������n�8\�����Z�73�m���x���~~������<)����'�pB!����K�i�1��B�e�F���������!�V��ec� &0.n��n�IX��o���m�A������eL7ZQs掭��{\�PG��������4,�*d�A�A�᳁_��7d ���oy�g�:Ϲ��e�3�Щ�7����ь��<��|�C�ɾ?��Ϣ���݅B�B!�t��c�*Ren�P5棲N��>,E/�@�$?���}�/p���'�vXq &T�@��Y^ (�"���R��<�[㺙���|��X�,p3D�a1��[Қ��v�c�w�?�m*�B�d;��{��@t�`�����S�?���Y]�_��L�tD� �3!�B�. -oCU�j"�Y�J��:�@ǞX����1X�[�~<ZH������`uA<��H���XԿv�(Z��ѐ�y}в�:�~��ɱ`��8y�b�<�����m�m?-E`| �S�S����V�L�B!������VM�"�YIn��Lq�� ������ ?�~,8�$� a?X��m/�7��Ppi�N���J��q�q�Q��}9�3�t��jG&���:^.ϕqI��E��P������� �V|�y>B!��y�7�w��dJHST��[�����������ϻM*꺧b˿�,,��_�B'���o���YP��*�b}h,��O#/�B�W��8u�L�W&���&��L8&*���h�˗{�F�*�i�.����1cp��nx�0W��z�=!��@�z�� !�BzB]�ɪY�g�IB�b���?pH�1p��+���¸2��������Qa�1l����!��* ���?����K��Cd���#MG�N� h�Ia�|����N�Ă�`|>���D�T Pq.�7�ԵT���!��ܧ��-L�1�ﲢX�>/F��bmB$����_{5��B!������{��DiH�$�[�(�毮�!����lÆ�&d��_*]b�9�=����Cߕ;���~X� �Ԋ����N���Z4ڡ�i�8��Ϗ~ ��3�_���{���u��^s�UYٵ�v�ϑw,=��m��A�7=g�9=���+8jD�W)���1�!+���[�<����'B!d�s졧�so�BΖ���>�v!���o_�� ��n! ���=�=�m��[����ݛE[�5 V+�#X�!�Bچ⍬"�n����<T�@�i�3X�ԭ�� !�B�Z�P����n)q�[3�R�BVX����g���җ\K�>B!��f(oI��ҭ)��~�� �0�+�E!�B�Z�0U@)I�ҐD�CB!�B!]�P�ar�f`n7B!�BH/�ow�� i�u�ۍB!��r�[%�2�n�e�B!��+��&M�[HCe�B!��+r���4���!!�B!���+ތ�m��ȡ���vT!�B!�,o_z�MV�%SB�RC�IB!�BH�X&�Leq������CB!�B!=b��dR��dc�_p��W!�B!�G��+i���B!�BHY�6�p�[#JIrP!�B!��,o�4�%�LB!�BzJ�x���i�!G9ލB!��k�š��nD)$�p��T���-J/���v�U���22\�vA_��nӉ�ڵ��P����t^ݥ�� �[Ы��o.��=��@H?R#ު�:%I"�c�� ɘ����=*����'�K79{�.y��/�=�m�V9qr^�i��|����9�(�<o\�m�Vy������-G��N��3)'x) �1�z��m|��ƪ�r��r��))�Z{��k�𗞒n365"���"睳IZ��9y�;'d����mN��3��I�6�I��Z�ۯ.ʓ���M&F���K۾���Gd���ۜ�-c�.�]gm�V���7���};-�m��ð�]o�O�̙�9���փ左�ʓ3_�y�t�����+۾�遣2���6�{���Ȏ��*�?9+G����<qL�IutX���,�^vV��Bi��2r���Bed\�wA�������ʐt���߰g�����~��rihy�K�J�[���E'������4��z��'�H0��ge �Q�,���`�ut�?~���C��7����8vb^�?!����ɱ��qeE�[�����O>!���_��p"�����T�gƮ��r)ۆ �n�å;��}� ��9��#?/;N�L����zT��G�ۼ��9�=�2���V$�;-g|���=� �������?s��s���?:'��O�I����e�E��zO�l�������6s��o{�H� ��y��C{�Q�bĤB S)�W����~�-?�����9���;���~G:���m�F/��-���h�Z�0>��19�ǭ�fHF�l��Yy�Sm�7�f��C�ś�0*��k��֖����'����I�9��|yx���j�����\\��Q��g[���a#�xN�v��x#k��'X#��}��֩&VR�Tk,n*�2Q ���4��m�����3��� 6�y�U�a�}w�S�'d��b*��T�onX.��T��m���q���e�rكd���L<�������Ź� ����g����~W������1Z��Q���|nM������q��E�|�} ,��2Y���Q�6Sϗ�ȹ�(ݾ/��ێ��5�6]�港����.�,Y�M}aW>='�R1���l�o�j?�`)�Q�m?:/CSI��KNw���l�����j�u9��ϻP*�^ #��{),����ؐ5�^�C2���d�R#��[�g��V���\�i!�8�eN�d1ˌ<p�O��P�^u����B�!�>��Y����L��c�`]�����sd����I{j��3V�A��7˥�T�UGҹYH�[uċ:��k��E\hmK�ӯg�Z:F�k�uZ.�c��d�֒ۇ��V�bB�7�k�~?����K��9!�ro �aa��dx�b��"鄰�H�x�F�m���ǪN�XCWd}���>���͗�"�Tw�t��m?zZ6�J�9�}~���Vz��26>&�#�}���m�����b���ׂ��Y��Q_��g��֨o�!��&�`%��AB+[�sKitHJc�a{���F�J�8-`[uъ��E��-�9e��J�h�t��W��������jy��e� �2�t*�JU[�qm���<��)�1.N�����8k�Z��J�,{���@�->kX�G�څp�|��<�`�du���RNś�4q�mRE��3-s�A[�pӺ*���p�<r��U�Gfeh�`�gnW�ѡ�A ��<ě�?n��9�L�Y�D��x-�z|EH>������JƇ�<i�4N�7�vn"����ݬx+A�����ԂT��zr�-��A������X��f� P+�����8SqB "n����y�{�폖2w��0�oV;�I;��7�wc�`�M-q&�q���HI_��*Y*�e���f��u�]%q��[�cC��JT����;��JZ���b��jR+��y�5N�ط�"O����2����E]%���T2�y-d��V��k�қ�-�]%KC�jeqѽ��W�U�����B�*��B��� d���7�x�g����G�i!�ďN��c�L�H���x+��ntȹN ��}��dun� ���tv����s���}},n�x~E�nJ�vd�T�32پz[8Y�ִ�`Յ%�I�Eb��u��E��ͤ��7�u�'�%N�)M�ZBWI<L���ؼ��p�* N�>-�fg�;��:t�'gN�4�ֺp����n��}&��?��~t��7�u����X�t\\�����[}�E�v��˳��'O:Q<f��A8v��zj6؏6��U���ɢ�;1?>ڗZ>t�'N�p�ũ��`q���ٲ3�}�p�k���J�'onll�T��jb���#to��mȊ�ě}�-o�e#��m�y-��H�}�X���%���yg���t��6��oS�Urr�;�+�һbś�@s��K��h���;���~���֩[%��t�$v��G�*�=�*�c$��7bRʷ�卋+%K��,:��Sk1]%�]%�ǒ�$����F���Т��c�.c�2-� 韌���f�h�7���f+�6�f�؞8B��7�29��:�U�m���ʼn��O�U�W����Q�JI�~8�fqK*nL[i�JԲV�'�ę �l\�V����tl�Ҙ��s���y�sf�]SU�Ћy�f$Į`�s�k���Ѝ���g'����xCD��Y3şR\��R��ƙ�o|�,Z�nV��x�^��6����ߝt^ǝ2O��z8^.�'l�0n�-��X�.�Ur�+�ps_r�fےR�\��rq�ԛD��$}w�-�{���w�y���U�?8o�[�^����JH;d� �s�U��KD�(��H�N%�M�]D܆1�>��%�� 8��f]��<p�,YQW����d1��\'�\%Sw3�������D��@��AI��䰷������%��咈�:�%V�ċ8�G�w�q�t�FRWɓ����I����6��mh��L�q-hGFF\g�y�GX�^�\%Ӽh�* p�B� ��~��#[��8�*9�ﳲ}�a��:m�Y�j�\$�b�V7R��GoIaq;g�ٺ�ǁI{ݦ�&�â��_��g�y��*9s2u�v��dz=�J��:�s�|��2�JΥ}�!;-���M<D�*��+2�Ux-lܸ�͏�ǵ��*�Cp-�.�鵠y�慐�Ȓx+��Jb�0t��� +�.� �@%p���d�Y�ԅrԕ�=ҽ�C�����K �87J��l�N��q�by붫d�Q˛��j.5�w�I-i�h��z".��պZb[�O��J"8� ����d���]�뮒!�Rm��eQ&�>�ca���#�P�'y��Urx�`��U�{�U��@���L�]+��qv�I��i�>:�I�����MV�m�9D�+�F�9+܆O��A��Z���7A`���-=��,o ]%e��]m'�v���\&����ZҬ�ZHǺU�@�)��nU�BY]-}P�j�RW��%j��d�B��4p�T\yt���$���7�*Y�v��m2/5@M����V�M'G���}`y+r���<Y�k��UR ]%���������>k�*)a�*��YWɾ���xC�7j�z$�B q���,j.���S!�8k\�J945�"O�9��.���@�� y��>���vN�~��z��p���.\�6��ی6�R8��S'APs�nD�*�9�[��wN1���+�y���/t�Dİ<W�ЅҬ���Ur��)��U��� \����>;�� �\%��m���m�U2,7C�m�m��M2L��Zu):%ډ�`�M�s�T�8�mr��FŮ��m�s��q������/��1����*�ύ��;s����a�¦ջ�Je���ߎ�N�NH�d�-1�TG,�Q�߰�)$�<a%�í��H'+�RAV��J��R�Υ @.!+�6Q�V�m`@w) ᶚ��{�*Y��<oI���-� $�x6��!0I�*�](G�%n���=��,����Z�U�{,�J�ST�]%C�Hҍ߮r ���F� ��1q�`����%A����M�U�{��dyxp\%!ޤ���$!�,�M&f3 �����B q�Js��<�&�E,�7͙$��!�u�p��~��JʼWɚ�E�t������8u�\ �1nj����t[�*)i�8/��z�s~�\%A���G�\��dP�Z�&k\%M辕�*)�mr��� Z�~�/�J�}��|[^j��O�H�Yn�R���U�WI���&[q�\�h����{!��):��mR]%KI��s��m�U��&�Zg�m2A���yxLR嘷:8�gD,��:�r�E�tQ%��dܕ��t�}�A�c�0�M*.=�ߦ�W��J��/�o�7�w��V�ɔT�֊8��X�\.�ll�����X�D��y*��(���"W��%j���jF���* �����p�D��]%k" �J��mra�22uQӮ��6RO��K ��9?6ο�J�AЕWE�5�*��&�J�5�Ur�MƮ��fg�R�U2,_�h���d��:�m+�V+�$,n��W���]%m��7z�6�T+%��z$鸷T�U�K�@2��B����'�����nø� �J"���/����ߵ�6W�ꦮ���~p�I��}����k�ԸS��H�ƾ�C+�W��UX�}��QM�[�FW��1���2v^] �������Rdb. �%�8��7�Jv�Jv�%WI>���* 1�9䭘r��i�qb˅�?m�r���f�Y22/z��%��3 �q��z�T�E9ߌ�Ϩ��o� {�^��q�gb}}��)�%�ԺSfQ&}��̭2W]rÉ�b�ز^Zޜp;�|��У�͌�p �F�L�%��K��~*�Z���ݞ� &��� �pڊߡ�]��� ������. 7�!$��h��y�M6�ɋJʼn/'� �f=��8�;�.X����X���¥"�z*mG],{ۏ] W��%��\m$Au!�{�����p���v�M.���P#↓ڄ�i5i�m�0כ��]/��K��{�3�\%�\��E�aX�--�����"ڤs��j���J��/+ϻFzm����amK-n��E�� a�?p���Hp5��M͵�XiXޑh��͝�-h/ ��V��u��-qq`���m��rΖ��J�G�\�n���<k)b����y�����K��}����)#��d���'&\�~j~/J7!��t�J"7~����4�6�����ۥ��*�C���uH�W�Wɼ��oGZ~��6�xk����������fVx%���Ie�tN�l-h�ȹtj��T�@3v�>yb�Y�0.n�v*�z����\%As��".�6�&-q�Ȼ�b����R����U���dh�o9n&�f�5�ָFc���D���mj��,n�M���Jv �J�A��-��A"iH7�͊��P)�b��k(/��⡜�P ƶA���vr>��9g�ߢ�D[���dH�x��4��SV�;e�A\J#��H�f��i���w���m�UrpƸ�U�;�$H���&g[���xKZ�%./Yw�-o��*��U�{�U����� �14��"yj~I�URAW��dt��{ I\�� �J�x��,������,�HWǽ�s����X�W�*���O�M�,�&EI���AZ�j6����u3`I�*Y��W��ӭh�n#��,c��c3��ay�5��ۭ�rͺJ�$���p��M�J��qJ���6Y䞝�lW�;���$3����I����ޣt�*�7`%�q���&cWɼ�PPx������0ۥ;J^s���\�E��ay��dX^���B3��+�F� w�Z��*����w���ka�o��]�ڄ�9���%����R��'�� �p�������IgyK҇��)!�0� �7+�*s5KI�H�o��*�G����2o�K\DI�F��� Be�,o��*9<p7�Jv��MRj����[�$�\�7���rK�sm�U�{��mhxp,nt�$d�»�t�ХQ�]�6�pV�a)���M�JY��L�!5"S"@�-K�Z�n,�_W�<�6�R�.3o\ν�P�"L:K�,�7�Jv�Jv�<���O��=�J���Y�>hI�+c��*�=�*�=�*IHkP����迁�cZ����0� ) ��GP] 1λU�Q%��e�[�: �+�Id�d}W�Վ6����FTXn�Kϡ+�B���ַ[ފ\%k]��#�d�*9�>5p��u��+�,�/]���jF��n�Z�6?����G�T�h�Y���^�Z�~�oƼ�J�4�`\ލh��\%�~CW3�d�*9k�I�M*r�\�h��g<SF/��iW�Ռ6 �v�K�l>���$�M��7����4n_�\3Af������q!:�M��3X�$K7�1��a���I0_.��g���E#�Ύy��d�H-n�B= ·��%c�cgfm�K*�����;�Q�پ�tt�]%�� �JV�4!��Z�&�F��r�_�/�8"$�js� �}s�aSfyKe�Yn���Ԅ�� ��(�hs��1tZ���J�l�P��/>=��&7���̱�4_d�O����xK-��]���=s����Ԇ�Ƶ[�h�ۙ��*Y.'21jW��>P��B���ɰ}�+Mf���~D�&�]k��n��'�/��ʦ4|����m8��3W�����\ek�)O-��U2���\j��V�m���7v�U�j-t�m��UF�3W�n��ı�elS�'��Cc& ��MԃH�������>�$sQ;|��:+�<�i�����-�^���h�D���簦�������)�o/� "�x;�08c'H�091,?�C?*��?��t��V�\��݃a�l�<*�<�/�!�ls3ُC�*���zq��,��]Vn�ev!u���Y�rS����;�g���]�'�%�y��ar�<��W��D�ٛ6�ʙWL��9ϒ'%}�F���=/�oX�?ve�� �G��+V�mٱ!�� ۶�����v���p�.���ֱ���壶|�ny�z����+`Jrv�H�=kL��W���Ų�f+ֈ�t�}h��c�b���rX~��|�ddjܼZD���c2Wy�[���9�{�FKu�ӈ�������ra���$۷m�vشaX���/��N,�V��I������q���ܺr�����9���6��I帞�D6��Ρ���CK�y�x�a���!�r�g�l�8"S?1+���ǩ�Y��θe��a�[Tn�)[>��ܚ2g*s�s[Ak���E���o.~������Bz?YY:'C���S�v�ߎRiG@���V^^�0n3��n+���3��#�?�������?�tQr������Z>#}$�u��b��Q>�cX*ɐ$�6���͠�����1�ώ��Ӊ�8����v�+�7���x�VO��5��`'}yP�����M��LK娹��C{ݎ/�O�G%o[�P�^�fP? �Zv�x/貲@�eBJ��#�$�G���y} � e�q�o�x ��e#9��P�j�&싯�7�I=<n�O�U�n��-�Py�[e�y?.�`�M��y�SVt��/������>!�p����m��^�MI/�ĵp�%��Z8kǤl����fh��f���`\x��x�n^9�{n!6�߅�x:���m���z�k�s6� �ʋ�G#KF=A34TG��>��=l��`�f���|=^^��>�Va��2O���}�P��|FkF�?+��/'�z!1��%�S �q�-���F���7��lj�\��$�S#�d�X2K;�;�,qQ;� E���`B����II�������:n��t���Dz�5�b��k�{ҹ��������QOX-��c�"�HP�����2�{.7�H�\2N�=)�_��(��E�3����} �7 >_)$e7�|��-G����]��n��F�H�����4����&�>I�fh�[&\�lߪI��O�oL�1��&�ج�&ߪ�Ǯ��5w��������cB!�����J|�M��}��V$��-K �����E"�.^���B�Z�=� �$(���aꈷzA�xA� �X�m�",<���.���P�łI˴�I�Y+���[�C��Dfx>�8��a!j�s�f?�C��?�S��B�[sP�B!���=��I���a���&�阻�>5K��� �p�����z�/m�Z$U� �1�*!��kVMH꾨�� ֽ�q�XW��e��E�_�}ķc�X����}��E���7ZaS^�f�7<f|a�,�F�C����c��A��Bq��ԻU�ʲs��d��~�i��v!�BY5"�Jnyl�Q�� ��Ib�YO0i�%u\2c�����D��b2<O�>�m�T�U�x0V��L�T�1�lYj�� &�ṽ}��}�]Y��NB`�Z&jt;�{�2a�s��c:����'_I[�����]A�L���L��>��SOcRk1�Y ��@B��&�����B!����'.�+�6ݤ�������}��"�+�]nq���%�48IR2x��V|Y��Z�˔��.���//��z��Z$y��_]���ºY{��j���+�{d���L,�ck���LhjyX�mz���u�ko�K� X=�֝4(u0AД~$��{?w�!Zފ)Ud����>��;�t���m�pބ��K�B!}O��W7 �R4 0RL3�4ӆ�h����q�}�)��_�{ ���!A:)'�����UT ]z����e�W�v�v�\ALE�]X˵.��˲����r�,k7v��>u��/�+� ,-zA��k`��.u����Z�,wAV�]�f��B�˾!s���;:���S�7B!��H3�y�"z�&Ǚ�.���\o{�%-�\� �ZQ�>w3�.��}BDȢ>�֤��G�r�k�=ŕEku+9c��U!��{�[Wa ��v̳m�x�L��rm�=;�%-��.�z��c��èX����8h�7��E�LPb윖�h -q�6^�x�U��-�j�C=-�ük,�wC^�b�_�㋔�1oF�R��XvV�{�B!�M�3��dEn�����5��s�5��(�C��-�رu�^�����"�Lo�j� ��?<֫K�LP�p �uiq,c�xA �Pp�h����I���:z|���zj���Zz�X��V��,�n��B.<Fl���� �"a��yA�Z�b��IY~�wV70,R���B!-ҋ��yb�H(�%*�ӌ���X9�,qE���y8/��v�}�z��;���A���V*K�T�v,�P�DҾ}��52Mq]X�l=�u��W�J,��m�˵ ��O<���÷�Č��朱z�<t�9���������d(�ěDV�`��ɻ���B�X�]��t�p�\�?oYVQ�-,1rLH! �!�B� Ou[���_�zn��H� �~Eַz.���`��Zߊ>C�1�d�:�W����Swɴ@V� B��)HXF�;t萖�u?e�U��zF�c��W�nG��k�:�3��'��v���ㅗ3s�̱j�k��w�t��[�4PJ삙}���X$F��"b��3��6��B�.�YϚ��ڎ.���q=��&��~w��B!�I:%��@E(���%�oz���_N:�q@�ğ���p{�{d�*�7N-n3OL�Qߖ�l�$�on��[\*�0��u�$,�27y�db�Z`m��>��%z8��-��E�V���]ޚf�m�$3��a��ֽ(Lt<���a�/�-f��]3CBK�P ���P�A�y�Mc��Z"�KeI��B/�R&��!���s�H��)3�f{2-��D6!�BHE�� V�\�䭇�(O6ǖn�EU��'��~�Ͱݸ�p -py�(������k[U���%K: GW���*�t�"L�'N��p ��/˶��_Vq��E�@d��BQ�s ��q��-{�>5�m3�_���Nǰ���"腬��K|�21�O��$�5.L���45D`8O�7c2M����p_�(_��pA�8�.F� !�BH�\��%OD�1� ����n���~�h��o���7��RX�f>c�^#a�����Z�P���D� �X���x-'~6n�h�ʦ�I��v��� ��o#�uj,y�v��.�D} �˕��ZW�^x���*�� �� 6��x���n���ة����1t]-v��sB-���8��en#�_�v@����� �x���Ѕr)U��'�7B!�,'OP��N�U,�H���r,R� ,xI�`$Eb*�R�E����|�F}39VC%/���z杓z}�4P!�qb��R���qB� �B{�5��7�n�����^�9W��M�.���'\F]{�L�a���@�mgBO룿��;�6����7�/j��b.�L���B��!�`̓�1L���&��췇n�Yz��-o. ��Q*I���:�ο��@&n��u�\/�psb�_i�����I7�z����W5r��B*����V�V���9z�t�R9�m[�ed�����?9+U�6����R.���y�ϧ���j����ɉ!��<&�p��?1/ݦ�B��=��\c�eٶu\��������Y�=�#��6��H|��~��4# 㺡Kd^��Ϡu�����)Z.d��Hl�����CO����vEJI:� Oԕ�y`�'�|'D� Ŋ�dll,kԋ�����,XZ�h_�Y �}Llɋ�چ °O�~����<�_3��*���.�A.<W'LpR�D���>�7.�w���5�G�_��$��UK��VR� qAK��-������a�6SSy�䢋��,� ����1}����ey�f��c����w��?�������M��e����w97�(�|�A�~ꏤ�,�Α����.�*���i#�_�ns��9y���c��� ��mO}TJ���_+��g�|-��h$�V"�Z&�E����>5�V,xt�ۋ�c��n� ����+�{ѹo��g���J��:cac-L%�He�CQ�u��� �����ú�(���2������=���3i��K� M�V�ߘC��V�@$.�DA���2�҅��D#m�0�����I�2Nc��cg4���͓Y��R���W�\�\��R���ղ�:,�ݸ7�����yyb�$�v����W.Hu�`ZSn��rj�"/�ȑE�&fsI���QkOtU�.��W�����gHƏ/Z+�����Ӌ2�p�l>�7�MLiRNm�'GN�NY�������� yh��噓�훱�Y�[/Id�1�6�)�6s�������V�B�y���z+i��U��PX����(C��.���Nj����Y�A���y�����}�F}w�]���R���s�S1�e�2�/�PGT(A�h�3�͉�n�*�|�J�E����M�5Y���v\���� ˴-mm��.<��R&��S��i �1}Z��5 �.{7K�g��y>W�;� ��s}k~�8���/P�e,)4ԅۥY�`���!�=��m��i!�a��Uaø���ȶ�I*��ݢ�uXFΟ�ѱ�p;+]<!#�&exh�a���0�I1�_!����}γ7ۗ�J22<"�@u��R�|� �M!EԳ,5�o��<�z�����3ua�x\OX7O���+��XִE��ǎs����t�<>~���!-@(�J�T���?,XCŒ�T����N%-Ӻ(��5�e�^x��ߋ3��r�� ȶa�1��K��jڎ������N���h�©N��p���;%"q�uW7�S�Xs�a^� %�[��h�8]�.��=����#[��ެ�̦KLJ�����3��X�^z�)��X���a)�����dא}Xvb�߁ŭt樵^�ܖ�j�?��U`q;�a��N����v������C�-��&/���1!�A��h�P(��z�Ƃ(O�� �z��\���7��,a�F� ����F���[g��4qΊDg����ɹK鼄��e4��O1Q1�I|�Hl{�!�2!�u�غ���LI�1e�q0Ǥ��zz,/Բ��ڞ�c}��ݥ����Ɏ�*�/� U�O�4k��yA�ղm���%�1��}��������U�&�č����o��c����!O\�� ���: ��]w��y�0H��/�W�}Bz� � ��y�nճ'�=�[u�`XX�U2)�>~��@�]4��-�aq�p[=oUz{jn^����G���Եt�Ԥ\�g���'��v5C����n(���o ,N�CgQ_bAX�nH^:���,o�H7�ި����9��G��s���b0� V7{��D���b244dT��X���!�\C*����c�.OOO �v]= ,=~]��m��X(�c�U�Q��i[�����VԹc�z��`L���7 �"��^�?�[�r�j�� ��x�v��Z�=�����\iT��:6�p�c�j�DžLԭ2���S�w�E��^Px�ɬo�t5�-��W�!�Ϭ��7�u`��#N��*���Wdr4�D�O��,�խ���s��ᇭR�ڟ���E2tF*����*�eM�O|�U���Gd���8�ӟ��\�iQ�� K�BG�J��ũ�%O���B)�;u����u���qD�y�K��\u�� ��"�RϪ�6]/�?���Y�ꍝ��i��G�?[�^������?[��kf�\Q?��YR|%>Gn9� �}<�NB�`m]%+t�`����ÇU��6����-A��.]�bKTl�~��P����hm`�~�_�������W��9�����9Q��}j-�ZO��Ӻ9n�&��]�z0&.����$N�A�!8�w&�R�oT�aY�đ)�k�6��z��1~���}� ��7�zk#Nv���6'[6��џ��q���7���Q�>���W�T���$猻��`vvV*��,VF��-U]%'Ʒ�u\3�Z� X� ��Z����yY(��;*,n#�.�!���<9c�1�����~�ѧ���9y��ɺ�������Cߗ��y2>6�L�6i$P��� ������m����"��"�H��G�cw�p{P$�]t�i*pH�y���\�����h?�sW�R5I�>�[і�T�?LNy�U��N�X��F溏]V��{�(�������̷��]�wm���_R���dՋ>�bN��a_��y�Y��y��x]E�i���95"e�k�A��yᖕ�,7���v�(oa0�X��X�}�@��XIۡ�5{BQ҈�2]'�ɒ�d��U"�*�=�U����`������w���n(�B�tϷ�����Y{��Ǣ�<\,�²f�[�B�/�ub�ׇ\�����Qo���E��^,b����6��1z�>*�n:�ZQ�X�2�� �Th�}���M2J]W�U�=����� 3�2P��Ecb_&��^���7��H�g�~���ojETa�#{0R��s5�pYŔg'�L�$> J�O9M!��7�6M;�snup��S�p�Z�b �R��1oy�&?^.���ߐz�<uViyk�=�W � l?����� 9S?\%1-ZK��Ȉ��>r냫���1Yr��d���o?�\%�w�Z�� �o�\veCv�7n�C���Gdxl�������OK���"�Y��Ht-�!H?�\%7^�^K����++��s��=�w?��n� x���S�����4r�҇��*U��R�5SW�M�[a�u*�~�ma��qn��a�E"�����^��f^Y�F�T�>k�ZI�uq^,iq��PlA��u7�G����9���� �$��c{ ��\��ch;�y��}�~x*�v�]}�_�~�Bз�P��I��8��M�.C�ҧc�̚��p���Ei 2��a�� 5�8u��ՕRQ�G��(���m�t�lF�e';p��5n�C�����OHǩ�*�É�I�<_:-�@�*�~��RD�D���>2�Ů�'�5���Ąp��h���-l�/c9���&�������K�0<\�* �p��h=�[')r�����li�;/Ƹ��▷���}�'ɪҌ�(O0�.���踱�c���������k/.������C!�?ϭ3����ť�Q�{B���s���9��>�J��c�� �v�ܩ��hr��>s�w�h{�~&����ZG�о�#��DZ�l]�r`E��b��:^H��{Q��l��t�5/��9ˣZ�UO]/E����� � �T��R�)�1C�I��¥һQ�X��$s�TwJD��e��@�%�ۤ]�z��ZKm���Uj�B3�[S��%B:]%�� �JVK�2�Ure|��]w������'qAN��u!d�(z� ��L�hy�y��y֪<�W��U�y��W��S`A�?S\��1�>K�_�U��%.o[*��$ݞ���V�d��I�v e�o���6kr^\Z��>��[�lsLZ��Mh�����p�1�H�vm�.<��X�_c��ϥs4i*H!�4�f<~O��`�.��D�/h�j#U��tYۺ�� "B.���.��*�4ѷ��N��7+�JXTa�0q:O:���C�U��-����yHH�l���W<oyTI��K�ɼ���h��~�6F�\�_a���6 Wɩ�/�* F�s��^ �U��Xq���M"w2VU9�mn���n��#.�d=�a���^��"�H��),E�Vb9�)��pE����[��F�i����"������r�g����}/���-W�� '��e�M-\VD%�bA`��̋=����a�h}����f��o�nv���BQ�a;���A=�� u�B���N�~*��P��x9]ӯg� � (5� 4� �GGG�/C#R���\���e��3Q�Z�2$��ł͋;�1M�ׇ�W=焟Zbt��qL�E�������6���|/\%�edt�%ᆻ&� ���f�BW��]cǼ(�r��:����6t�x֯{N�<{w>L��v���W+�$,n����ק2�<ׂ�u8�VS����լ_x�0|��5�M.���$,n���\��kaxdYy����H��y�0�/k�H�n��4K#kN�}@�n�������*�R���Ɨ�-���#DR$L����;~�)��ay^?MEu�� +J5u���E�� /�Ԓ��e�n���Pw>�o߾]�¹rl�6����m���mʒ;dVO��-=nP�~��oS¾{��*��"�q��ѻaf�;,�e.���> �h�Lsssκ�9-��;��*�:��y+\v,X�0AL0�Mǻ9+\�;N��[� �0o�7� ^�$]q�L"�R{���M�U�A���݃���e�]%������?�V~�W�wƴ�z^��V���Rtl�J��Y��,O��QOX��E�'��ƙ�֦FB���B�^�nl�Iy� �x[�o=�V���u2�^�! ���J0��R1ɢ�:��^��̉&,�"� ����Z�|�I��ֱ�I��e/��֭[Ka==����oϵ��k9��[��c���6�R�$��.�����[�7�n�> ��u�� Z�0�5.L����D���Н O&|>/�Н2n��R�j�C�+�;�트��G�����c���Y��dX>�M�Wɰn��^�Wɰ< VR^�h�+t��)���JX�* �e���mr����a��\%��t�E��-����{��k������C�g�p�$��� �V��С�U�-��4�oò 9u-Ԁ*E�H�� ۸���aپ��x�Ϲ��Xl�)"�G?S؇<���xX�?��J��?V�� &O?���[Q%X�s� �h� 4� B-�o�ʵ�Lm��PL�,h��@�y��;N^�X�v�}�UDbY�ź�F�T��|`mi�5�c��ƻ�:k��f.,,d��.�a�L��o4���&7�SΏ�s�T�C�0�@�B �}� �lL\(�P/�wIYr�����_k��d^g��c��=�.�]�xk��{k��U�\j�*��ڭ��g�6t��qO�l5R4�*�#�sU�x�[j=WI���J�.�Io/����x �]%C��H�Jj��\%�r;�I�Ʋ���K�|�M��\o]�㜳� !ݤ���z�m䅶��UO�ճ`iYQ5#�@�V�����<�Z�O<��!�@���-�~�g���I�n�>��\�L<�W�R��>���MWn�B)\�-[��uX�tY�a]����&�j���v=^��W�R����J`aCYp�u!q/,3WL-�⬤eX���|�5m����eன6��zS��k*�F����4�\�V� :���i�8=W�ɽ1נ%�-sɼ5���K���ʌ'l����뽭'�e�7�vz��b��}vvPH�,�J��b� t���*Y8W�� @�,�*�O�=�-n<[#��F��9��~I�I������j�8[�ò<�Tl��-Hq�F}�;Vl3u�Vq���M��.o�<�U^��ڏϑ1���1���_|��c�m��}��|*�&��Q+�~Vɑ#G�`��J� ��k�noű�Jz<��`�m��.̏M����6�ڳ��>O���%ꇤ�M�x� '��1�}�O�c��bE��"��2+���a[�ċDg�,Ln�b,�Z�4�� ꥦH���&�sp�T�DžXS1��1 �{��Zܼ5.{�n��;kC-nj}s_�5�u=Y��E�1mD�\&�� ���`��F$�*��[�4\%�9�V���b1�0X%�7���m��CRޕ?,�A�F�~���Dy�Y {c}��dy{Ipv+���� )���Ú��x��ԋh�Ceq�KmR��-T��{u-<ksE��v�I�+��+,��o%�H��l�ښ�Εa)>����|���p�k�MN.�� W[��{���xc�I�m��F�����ۧ����<Z����@���V�6�W?ו��H*:����s�,:�qb�"�� ��'O�ն��a3�%_��Q�$*����v��r0�Yf�ټys�\�v;wupX=�C��s�b��ʩhʄ�c،�O6��C���-����?'^0f��b�*��N�}4�|^�e@�!���?�n=1��adJu���鸸M)�q�Fw�8���ǿ%�0S4�Iz:|ɂߐ�:kk�[ѓ]'��}w�-�!�*�mj�%��9�Mx�D&�j9\��ʫ��?��6����p%��-y�6��ӧ���6�k";>\7�_p5mT7�]X�m�T��� ���m���y�BX^t-�B���v���ҵ`�0���?���H8ެ���V����'LZ殅��02��|q�;�Y�ۍ��_�T��K�Uy�Ա*ի�e�Tt��z��(mE"+n+v�� �6������g�kW���居3n?�����/��i�l_v�g�s���X�S5�&+p�Tś� (��c��%�6mr��ǎs�t��ݎ2=~��YV�c`ٷ�����D�#��xq��щLLz\GY�����bX��vu�����2�eo��`)��M�sM��e@��x��'w�0&.�L��87ǘ89�w� �Z�t�w'�r A>��"Mb��#�}��&v���*+d(�ж����R���nR]%�� �J�ŭߡ�d��Ǟ'�g_���}iu#���9�sg��,9���آ�-����ˢ#F���H��� ��&Ɩ°oE��z�/n/�s���Y+����%O� �P����X_�i���/V4�E�Y� � �P�?�eZc��.'�0�����,:X��"X�p�U��7���F��8��zL�%�5L�|~'��,MY��%ou3^�e۽�3�0�|%�K*>⥊��D���?*�ou���y Be����'�A�!��R����/ItY�D��}�x�v�_Wa�Z���}J�2�dS��b!��U�G��(�7��5 ����� �Lay�Z���T.疷cfn\%���*� ��(S�H-y����!�&�U�1���Np�D&�J6*/��B�%k\%�^.C���?;6Ε� <y�蟖�J��X�lkm�tʸ�K$&u��W��k��۹Jn�`ٵ�}Zv��BeqYy��XXϮ���h�_�����Fz�i`E*�H�����N8�{S�'2��1f��-�GQ��}����1 -]E���)yyu�� �k\^��� ,�=�EX�X��Z�V);7vn��g�2�%���*��&�QA�e-�3]ς��� 2��%�_�-m+ܦ�Զ�}@)�WR�^�N ��u��I� �>Wh��eV9X�º�{.Hm A^<�<xzl��9���r��m���`q�9άcj�Q�[�N "Q˛ � ��ĩ���di`[���Nc�\���4/�@�x�P�5��)�,�YWɰ��=.,�F<P�U2t��\(q���� v���q��!2����w#�d�*Y�n��\%�q��vs��[̊\%]#pM�ͺJ�\#9��ay��]���r;�P�������_���p#]���Ir���".��-|+}�s���4��J��m�;v� �P���*�c�"�H���q�p�Z���z���|���lG�7�6�'�h�e{���^��|�h�CDA�� 娋e�aG� H��͉� 6��}�|}=��P_��@�u���3��rD�t"�NE���S�A!�Tĩ+&V|���~Yӧ/�\5C4q�F��®����k��`<\�2�@&���p�z+�#O���K��}�pò��%Q�G��~[��jͻO����{>w6O ������mB2�*�]�*�=�\%�k5���*Y�r�!��=���s���t��9��#GH�hV�����5�D��� �`"Z���c��.^�ۨ�ߢ}�-|a��آ��ژח<k]Q`��c���3���4�JVL�q�:( �J�(ZC��c��ɓ���I�M��q�~�k'WW���4�������2>6@ۺME�.�9�:�n�tX���~SϜ�j��,ݱ|���T}8��Ã�Օ{,oY�w�DR��[�24� � /\�x38\�R �>����%H%��M}M�^ڄ��:k��'��!�#�{k�NR�y:U��|�_��ɮ�6�J��d\V3�dU�0�`�D��J��$�z�H�_�M�U�"UR� (�*���&��*�O�&��H�D�j�;��N]����5Z�ۍ��Y��L�p����y~!�A�R�ڑ2O��}2�.�^�y�~��ogvܴ���\���=r�ӷ W��<��vmUK9�Y�8��?��rm����,�ż�� W&�w��W�I��#��������V�R-���z��zaX|usGs���v/�h��m �`���۴m���m�b�V}��o�m�#v����+�1Jv?̱�R��J��`�TJ�ѯ�����M�5b���и9�x*) �m��q7���`UC�!�'Wwh��|i�g���R������a394iy�[�տ��p������fW7�y�pn,����! } ���\pQ�w�xWJԮ�0V<Y �^/V(��ID���R�9����U�m*u�,V�ԩY��qK�u��gvf�-������j�s'�*�g<2�Hw�d�G��~���ё��5�5.,�ps�1˝o��M�����N�se��I��������:wą����X'X���$X����Z�J���ҵ0ᯅ���dp-�kAJ�����C�/='`,�N�us�n�H�52R��}\:��ϕ��������k��{����(�Z�X�]jBV�F�+��J�mFԭ��G�X��J��Vh�Č�߭qctdX������kb�������,� �Z!}�eW<K���S�9v�Ļ��j�@���Nܢ����`�`&�F�ǼM!�V7�����&vr��^F��fV���7�����њ�Q'W��q磫dנ�dw��de�<��(:B�������ea�p���u��d^;���[�9f�휹c�LN�p#��<�#��}�O^�C� V8/�*\(Q b.��J�9�`�ӆ��V� �df�+��X�ib��(o�V� Ƴ���E�o#�e�:� ��� 8�do��^�^ �7��C����?���v{\n��j6$��uY�ְ�s��߿�[LL���3��,n��r�0�-�/��ÖϏ�ێ�g6��%�1}[��O'���ѥ�W�q�t�Bi��^yu�,������ZX(�#'6�sI��|��wͬX�YJ*Ay�>@T��k�texY�}%e�S&\^��Pj&�4��Z�Z�ö�?�iVf�q�V�嘞���I�ň�^��E_^����v�!_w�ө"W�.q���9a���ѳ�k�\eɪ[ N�\e�ayE��[��h��Z�����#��h��w����:1�E,��S�B�'2���+jK�4r���d|l0^Z�I�mq�0?���3_}ޕ�8�Nb�b��i�h��pp�,o�]#���� �@������>��Ґj"��C�*b��r����6l8oB�����%r�!��J�� C��l�7����m���c323;/�b朳6�y�cfv��_��M�l��'�zu-��n�:.7��:�P��=z�'���+�o��-�}�mk�< �ގ7#��a�������z.�y��탿��O�d�y�����?~�ɯ\z�Wc��FY38.�A.8�F +�g�������s����c��:ĝ]�Ϳ�o��+��|��;��&(U��C�������]g N�q����A� ���n�Bu�F^$��4r��F��sc���2��ճ�2,[X0t�$IJar�J;K`m�9��[��$�Pb�!ڂ�ݮ.D��ƹz>�k?L���2V��7I�pu_[k�!!͑� �F!�͊��j���y� ,�y�,o{�F�ض�~^.�!d ���wC�a�h�����D�O� �@͍���Y�ɕZ�\��m�T(�V���F!�� K�D\=�Z�tҲ"��f,n�������I�<on|���5!�r�!��Z��B� +m� �Y� �`yS�IXڼ���s��V�,� �Ak���/�����Uื�Ƚo���W�*�Zc�!��Af%��y��z,���%a�ylj�5S��m~y��ŝ�nq�ѓr��Ǒ�h�89,#� \*a��b�D��n2$���<p*��Җ�2�J۔�kf��ޚNJ�w}����\B!���I�D���W��c�\�JF���(E���;^�~�6Y��ڵˍ]���+�hò�R��o.�?�p���s7����T*Ԁ�F�I�!@����87Wɛ�Vbyk(ު%9X2�f!MQ6r���%�B� �H�@6r_��^�0�S 4����-��uS�=��Sn�s�6!�<}���-?�Ϯ��S��>{�����<��&�7�J,#��&� Q'��Ǽ�5;%a�I_�?�%O��팦�^%�oN��0n5���Q!Ma��>X߄B!I�KdH8�-o�SdU�<�֬�d,2�ض XIX�Qp�<��3_�_z�����|��RX�c|�|��o!���#3��k'�b>u�W县�{9u���P�>I`}�.Q[��D�w�mV7+���#�20� �F��8���$��E}n(�n���^!Mc-�7!�B��"kU#W�p�"��-������)j7^����J��������mo��?�^��C�;��m��ߔ��xofq��O��l��~�+'�U`m���{�[��ۧ>�Uy�+�/�BV�p��M�ƻI�F��ƴ���$�� �O<�[F}X�4I7\)U���4���uY�#w��-o�OY 72m!���Y��'����%�ql�� ��'��b1��H�ebp�n�kW\vQ� ��o�y�K�q��C���}+����*33��>������e�����r�a��2G�%O��*�y�9|�p�-pZ�D�o�4��pj���d�� ���[� ?́���R�q�� ���E4X����T���ᒼ��nB!�����i6�G�%,/�H<Dǵ �<ȸ�"+[�V��x�f�ۧ��9U�>9�F��+���_:a���/.9i��{�W˵W�ǭp��o���� +��B�E��o��_ȩ���,n@��̈́��4�&�>��AL � �`�C/�t̛�5�\%][ޥ2w\m��k�~�丷��ți}#�B��z�%C�VѾ�<^�]�\!�}bq���t�[e�n���%�z�p��qkA��n���β`uSQ������2!���Kv9�6>6"/x��Rv��)g�}6����0���\�7La]M�9�+nVĹ&�ۤN��'�NB�}@�V���_�����0�o�B�#L�$+I��]������Z�En����� �&��s�\c-hp������]q�Ŷ�*�Ї�ĕa,���r�/�"�ϝ�$���F�\%YQ%!ފ������J��nu��ȓV��:��3�G�tn�>a7�o��.m:���7x���0�P�!�A�d�.!+��BE� ��&�&�B��Ȫ��"]��d^�E�؊Ʀ��孇}��jym��a���D�&6�8I7���7I��a,ʯ��JW�I���r���~���v�ǸA�A��S�A���\y��R�d��3��!ϛZ���Ʋ�ˊ8�n����mn�Z�qoa�� \%�8Q�IS����)Zcj�,� !�B���X��*��5_E���:����-mY����<a����b�K�V:]ƶ�~���v�NR/ e=�x� g}۹s�Z�v��aQ�&X��D���?���h�p��rq2D��`9���I�4-�\�è�-p��>�[!��4�L�s�ld [枘SϘ�1lE��bqg \"c�\�1�T��ÅQ%Cw�_|����8�̲�F]'!�4�� rd�s$�Ƅuu�Ę7�&���E.L�yx/׳�)ME�T*��j�!+�,�G�l�B!d`�C�ȣh<]�U��r�^$���L$˼m��_r���~\�9kK�vp�D����X~�GƾY��JѥV8�8K�I?�� 7oy3��[� �����{7m��M�Ҷ2�V�C��s�d�`��}3��:xH!��� ��0��� \�-�����͈�f�W#̥}�w@H_R$ܔfƻ�Xѕ`�[�\6��2���O033S�e78��qu}�'�`��x��[�`e�9ߌ�PF�)u߰��~���1"dE�}��^t���7,!�B�����h�(yy�zB��E��t[X�a�Y.VJ2�aˊ���@����س��'�t7�Ν;���9�\ƿY��ం�o�[��np���0��#t��D��Iu���Uө�%J%�[��^+|�:�BYEbQ�Ƹ�F^Z!���Y��r��v��0mA=����Q=BH:�͏}�I�Ɋ���Ѵٍ�q�F�ym� �t�0)n�'a�ü�p+o�:�2������ !���#���f�9�EV#1��"���w�x=�y.�E��F�� Y�X��D���vc�\)�: ��/AʀӧO'p����0)�����x�0a7�V�t�����TzG�X�1�d[L���&!�BȪ��z�Eb��(je�^�EV�X��H�1��B��֭[8��[� b���D�&C��K0A�Y��/Vb�k�%�ֶ$M)�i�eEK�JIn/F�l�m��]�?�^/Y�T�ı9!�BHJ�|Td��+��$�$}�2F�PR�M����3^\i�֑�qpFj�Ke�T��U<�I��@�V�. ��MB�T�A�a��o^�����):�-t�ԼovQǽ�;� 8/�L��[ߜe�Z� �NC*�p]�~bri9��{>w�0�d�L/T�*X1��,Y�5�إ��K!��en���+���OPN��r��YZQmgE�qsJ*�L ̲e=�6�[�4צQQ��3��M��*�Z�=�w1` Y� `ɕ�=c3��AKt;D��w��X4h ���Nb�D�j.]��}�T�wIX��>5q�%˛����������� x�����%9笕�M%�B�2Ecۊ�f��Y��es �����������üoy�m�b����'�&}��'y���_{�D�Nj��]�v��8np��<t����C�7X� �.��yk����@��.z��y�I�AKr��T��V��={�����B!��U%o�Z�p˛�s����gey�M��<���Dfg��J��CB�<ssbE[�u�V�}�v�Bˉ9+�� �|o��{K�1��4�{�D�*ܼ��emNj�7?%A�x)�:�V�F�|k#��_�;�>�<o�BHc�,g�Q�<�o˳��AB�ꆓ ��}B]�U.l;t��T��e��v�M�u��Mb�[�ܸ7���\]*]�Ç�|��n����eQ��<it���6?wۼp3�ۅoWZK^��N�C"{}�B�-yV�"7H]�:�� �gՋ�W����[du�yBj��� 7�� ��u��{C��kyK�2K0��aܛ.�n�F�P�[�ix��%��+r�0�[[�4��>!�BH����<laY�,UOt5s,�3�ݢ��1z�e��"��<�2�7K��7�PZ�&�c߲d���#N:kۉ'�:�X�Z۲�n�&iE��~K�@% �"�o����G���5�~�ɻ !���'xBwEP��"�'ܡZ��<r�r��ۡX�-x��Rˑ#Gd˖-.��o���m�7;W�ѱo�7$�V��,oX���V�Y�4I7P�F�T��Y�&m�m�K i��#e��B!���L��"�T�T*�܅���8=A=�_��,Z�s�����(��ɘ��r�A�: �:���p�>ߛ�������-��1� ".�gB�)q� �ld}k[�!ٴ=�!!ma���܁�!�B�J���K���"G6�>�k+`q;q��y���%�,�"N�u�z��Z�0��Y�nE\&�.sX�0G�m�&aq�2�h��ַ Ҥ �$�o��* :\'� i{o}���A,�B�8y+tS�gݪ��H��z����V\��ݲ��,�XII9r�H�e�� I�~��n�V��0h \'}�w#�} U�L�J������"��7�G�-�i@ۖ7�Pq��\�0��}w�-�B� ��V�rP�&Y� �c�Ʋ��-ܯ(�J^�v�7IH K��qo����:�@�D��2� h ,o�pp�D����$��c�w�D�p+4�w��%���A�i!�:/w�UB!����7�L���yo& @��eQ�e"*�C���DAJ�9(r��:y��6j7ljY�?�[���L��E�D^�2���IW8z�?~���M�6��͛eh�#���X\����,�9(���Cn")j��qo�����*�jr�!Q�Z�4�dhy�p��1pb�9�\�[n�%�馛�.�_w���r�������U!���0��$����\�\+�O�:Q'���b�ka(��<X��߈\�v��?������n���>'?��'��EyJ:����?��|�+_�ÿ;vLfggeffƅ���w���:I�j���y��c�����q7?ꖟ~��t��ޙ��r�7D�ĸ�0ߛ&�˚.c�t���� 7���t�F���L�^������:�Y:zg���n�ǽAHG�_�[�Eok�����w����/۰� ��� !��Ω�&ٌHʳ��ֲfƷ��d�����p{�vYt�����Δ�'d=�;E>�7O��|@�m�ڲ��ΐo~��Ku�E��w�ll�4A���?���:uJ����� s�� 6 ѳ����GNȉ��@���i^*N �eltH&&����d떍�� w�ѓr�%��Za�n&����e�nE�A��|{�G�t�;3:�ql.A���\o�x�qp�p3� �1o�)��ݤC�&�;p@!���ƛ��0�[l=��P�]3�m�%mE��<1����K�M���yw�p�cOȕ���L�����&m��o~�Y� Ҭp��Zxd~~^���9~|�͟>rR�|ꄳ�=a�'�<&OY��ѣ��w�l���"I-oa��!�ªEm��$�Eۑ� ����7k�s� .�Z&�e���b:*ޘ6���/�#��{�B!]!/�(�r����E��0�\(4뉯zn�a[�FY����=�� �F\t����>4��ĵ ƶ=���8-ma�Nwo�m�o�����9+�fS��I;}�1�M�"�v�̝�uQ��$�MZg�.cސ� �.(�:���>���Hҍqop�� e�X��}��4M�[�?3�3˛����"��LIE�`JB!�3��&���Hd�s��ǭ���,/g[����w���x�e�S�vt� �u�皪?<4+{v���GZ�yb-�ꦢ�,p�2;;oE�̞:m\jY{�V������#Gg��vj�����l�E �-[�8!gn�$��u}�)|�s�+��J�}�,i7�%!�0�� �oF�Ȃ�q�F�[W�]]��(�!���P�u1/(�>P�Cv��<��Fֺ���q�"�ϼc/�Kg��|Xdӆ�h���#_�'i�s�-lE".�N�o��>��̝��!X ��Gf���m2g�,,Tdq���ɭG �6oޜ�(]�-H֍y8�M�M*a�X���0��3�I�ַ��R�|ׁ)!�BH�� �z��@#�Xh�E�lԏF"�H6�5�c�Zސ`hhvE��Y���]j��'�@���JI��~�Te�謠;iEƸA�-.V�@�Yk��; ���.9~��9v�Xͧ��'DUv�ܙ�uR�Rh�I%���⦁K ��n*�0� sM�������6�"�h}���.�]p�BH�4r;����H ��H��\dI=V��d�-o=�y���V�F�/N�Ym�|���Q���2�r"塲�㌏����Iٺe������CC���-%�#���S���`n-o�7�{�87kys'������9�n�ÅR�i�n/�M.'i�ׇzcַ��}B:˒�ۏ��B!���2�J�4?q{����p���F�g�+{y�0�oM�֩�{�E"��Y�ɤ.3M���ϓ�DZ�AK��ooy�W; �!̆G�V8;��q�s�r�pe�eb|��v ��NȭG�� n�PKfjj � ��I�. ��$�~���>y��i�ll�@�a뛺M"ڤ�yt�p�KL3½k��o]� ���9w���G!���PD�zc�� &q�<!��O|̸~^��<a�Yk���5m�S�E�\q��~�EM�G�7�}�ˤecdd$7H� ���+9�YYZe�Z�0A�A���}�F9s�f7��}��פu�299�r�cc�^ٴiS�:"N�m�*��2@#N�����-?����_��n�6 ����6 ��K Xb��ztUfs�[w8mv�7N����P�B!+���c���q;�\%��H��=܃0��֏#X�VŸ�R\��'�Q��s��_�T��6�&!�v�ر,`I�&��!���7�� V�m�4a��+6�~L�N;��۶np��ճ�q��Ǐ�9"N�����1o@�&��%F�u��K�.�+I�p����p�r(�k}+i��zK���彟;p��d��t���~��{�-����'G�_]�CNW�NΛ����B!d�K� ���c�>Z_��^`�"��Fe�e./}@���h߰OY=��g�-;��0l p����c���Gnڀ��\"|�_����ǎs��4�[��!��o�J�O���̹���* O?�����Q+��d떍��e��'�Kvm�P��r�Mǚ!��'��n4D�D�[�m��$�LNNfoN`y�e Z���~� m,pX���r�.���� �ݵ1o Ǿu��R�_��E�Y1�Z���`�arB�߳K�*��*�~��w��}��]!�yV�f�@�YOº��39cڊ�b�=`�eaH�f�ND^y �ir��otV�m[�&cOȂ��?y�̟~���'�Y�:��}����^؇���%k�K�emdxȍkC�I\+84�ƿMz�&�_� �$�~̛��$��C��M�����c�P��1H;�I7D����T��M'��x��7k};D�[{7eo�$w�����/ʇ���w�v��/�5���FY��̜��J!�������@"yc�BB+Z(���j]���[t����FY� x�'ߋ��gȗ�q�<j��#����닯l-2e#��2�TH�l|[�D[����1uK�1�(��$�6I��� ��f˖-���eAK��B�I�t�=�v�r�>e���3��/��qa��*i���Q'58I�la��l{Q_{2l�]�?��Z��� �[�9�����13{�fC��&C���O���_�w���=禇�Ġص�� ���z-o��� �x��0 �c�Ǣy3n�q{��+Z�P�c�j����m�n�瞽q��@G�u�,p�t7�O>�V3�M�2u���Mǽka���G�7�A��$��6X�K{�W,]��o};h{r@ȊhV��}��u����[�AN��s��h^ip���o=t� ���+.��N�2�O�N�o',c�}��m����+_V�6�����/�,s��g�vm�z�k����W�6��/��ցW��Z�f������m_��kk�٨oiݧ];�ąm|��t�� ����O�k�B!�w�Ee�[Q�x[3�ۯw��c�ֵ"kaX��[�E�����Z����{K`}�pS��������Ç#Q�����ܹN>���,f��f4���M�np�T`u��$RX�j�NQ�{"�@R����s�dt�&Y�pSdh�k��/>�<��.���8�����w�7�w��+�����'������Na�Ђ�n}����o}���[�H����^���~�O\���u��c�m3o�Ȏ $Q�ڻ��+�q!� �Ю����g�>h7���oY�Rq��g�9�M'RqL������)�!du�By�,^qy=1�S|��x��������& ɀp�$��0�-��� �ď{3a�I+ܜ��s.�6��X�&�2�`��_v��p�_�vM�D�=sx}�����w�4E+�-���K��yK�� 8�)�Z�&2��Ⱥ�C�h� �;�;��~��w�9D�Ǭ�B9�B���z���o������}�V�� ��������?���뛂6�7m㯭�����t�x9�ʗ!��աH���O B�Տ���<��X86�s���+e�>!�+���.N���f�-WO�c�n5i�s��\�y��e�M-oZ�}�eR�oA�Ljy�A��hŅ��fgG�ԥ]�<Q�q�ד���X8���"�_�� 9X�Bvn�jMCG�x�w����m~�n��Cg��5,vkT Q'��8A�eX˾`-jy���ڟ����)��6xk!��D�}^��e��BH�HD�.�qy�>Eۛi��N���5J^���wԺ���%AK��>��#Y�n7�M*���永!�$�&!�0���[�\��p��bRj^�H��dO������EH!�n�5ܞ����ke��ދ1u!/��^jU��|u�0m%��_�k�u�w��S��jEl��5�%�ܾz�?9!Z$. !�t�"qV$��Ƭ����sq�����5���eŲ�G�z�Dɰ}���7��Z�\��#�օ���&3�I$��鲺LB���R��nڞ�x��WH�ㄾ�Eo��9$d�nJUJò�@�@�����rmI�sh �#<�Du��J�B��D�l%-���~���D�ˬŏBH�fs`�1�sW�Ty�1����<�ۥ�$!�`�r�=z4�i��M#N�m)��D�1�����eEƼ%��D��ħ ��s�ɹ�؉_/�aW%�w��[�x�ws�ˤF� ���n~�w���$�Z��ȓw;a�m� ˙ZĴ�z��u՚�vU���M�s+`��8���.���z�B&�����(ñlq{yB-���3�?�� HJ,����%�� �:�Mkys�:� ��0Y�&�F�X�N�>�ꍍ��1om�� �n>I�K�� ��s�����*c��:�ݟ=�Qۿ���~؊�}�O���^�ܓ�.���Z�L�����'(W�3?�J���)7����MX�`��H�h7�ʗ� 0�����.���_Գ��F���ڈ�(�_y.��-�r#��.�y��-h7�?;;+���4��M~�ƕ��Ww��E�DeSo[��1mno�� W� �ձl߸<���V�/͂;��ZNY���v"����ɡ4 ����s�A̱cnj�7D�D�� �8|�0��:�[�[Պ���a�78*�x7p�J'U�5�k^�@�Uy�pY^%�<u�Zn[�?FC�C�Y�}.��D�«����z|.�x�!8�5�N�����y���(S����@&��!?�,v��?�/�u��1m^��\oq� D�%t�|����ñ ��2I!�G#Q����z���v� ¸<`��x�x�[�8����؇Z����6HRg�ˎ�-�l9�KT������i����~i{q���M�O��}�`�ڲ����gi_w>U�,k[j�M�^�zqY�l����%9m$5mT�l[j7�9fR�ͷ)���$����m$5m��-'�6�]�ٖȖ�\�q^^u��r��)$ϖ��S��ȑ#�n�`̛Kҍt��`���&�<�h�jy�˺�h�7Xސ�-�8�\oiƂLP�j� �K������*딵hqC�k Ʋi�ɗ�/�V��� �u\�pɱ�a��{��)b�� V�ş�پ����e��X?B!ݥ���,g��+rK���"a���� ��үc�T*�}mt�<���MR*�����0˽��n�B��c�;O/��O��W���;�uTv����x��6 �}�v��ɺ��<o�4��%V�eW܃>�qnn� s$��6�ID��� 7M��*��mëyUC�#x�{?w�U���d��^\%�iC�X�~�K��a�Ҕ:��Q`�^��npE�T�BV�<�Ƣ@y�q[��cH�%/�C=+���>�ø,n�Mi��'O���N��������[�ю�""��n����������M�3p[���d_V8�w�tŰ�YіX��nB�Rb�\'���nqQ'ayC�M� .A���Z��Y���M1ey�T�YG�7�`چ��p�]*���>�������sɰ��K_r�gXҾ]�c�k�$��#�B���^X$Ԋ�r�(���X ���m$c\w%��V.��n�S3k��>�75ۻ)��T*ԃ+�;2.��=*�j73D����Ƽ�����eX�y�D]'���/4>U�Q��@��:� 8�_.��WD���{5)�8�pP\/x�g�l{r���)ܦ�Q����]V>:1%W�䗄BY���<o�a�>ye�p�Z<���b����v�ʵlٸ8�;wɎ�_l"8ɩ�S��>g��L:*iiYjˍ �JM�l�)��k�pL[��S[Vw̛�/�S;~-���1o�>a���mY��li��^Q�e�w���:�y�ck���<-����F��Ï��g_|�v/��ʏ=ZE�+��<o�ߵkW&�t��4h�ZްlE��h�H���g�7��˼��[�BUn)� �|�5�z��B!�D�� ��E�����%�Ȳ��Fh��pk���<�a��ӈeS$�i�4������yŴz�^[�֢�?� ϛ��9ᆀ%��1o��!ڤ�B��#}��Ȉ��!�����I�H��0n̛&�V�{?5���%���-�K*%y��a(�!���@�{�<AT�*Bhd����bQ�����tyֻ�z]#<L=���++8U��Z7>�����9N�8���#��_���V��%_��&a������Y;���Q�ٺm&Lҭ��e�&s"�^M}ay��������v��B�/Y���K�TӶ�.C�.��"V�b-����.�O�Y��7c�z�Z�v�E�lڴ� �#G�����MfW�� ��͊8�N&�w�vV7���d8�M#Nz��Į'pцmX���x�ɤ�� �x���\.ɫ֒�$�!��_�ky�������,h�q�\�c�J�"�K��Pۋ��:�p��l�����u��h��X��1Q��%n̛�`]�º����*�&-N�YW�/���M�UR|�7X�0�M]&�����7u��$�N&������'�����Ȼd @�F!���Ʋ���u�իw�$���D��EYQ`��qp�h��<����Nu�gj�nd��1zH�-Q�d&�`A�T����jyC��p,�sc̛w���J\�?ς�x������c�B�>iO�-2�P�B!�G�8�"T��c��W� S��SW�?yV�x=g�L�@\-�}:Ӱ���Tw�?�-����Gǖa~��Q7G�c� �`�C����*��77�n�����\&5�$\%�&�� �>�X�ݧ}'��_|�f{�+ �!�ҟ �p{��Q�<��8J��d�p˫���2>n=��k��պ�j�:]�%�[��eNs�)G�A��,`��c��F�ܵkr b̛�C�=���%*�41�&�-oX���˃�6R��ղK�=%�!�ҿԳ|��H�E��Y�B�@$E�a?�>��y�2o=���X�G}k�c���Z�?\$[��\+�2 �TSSSH`T@i�7D���m�_�� ��#i�AJ���G�tuC7Ko��N����Է��m�N��sn�=�U 7B!d�( H��c˚FEn���ua�H�'��rvW�����w�V�t�~�ރ Ēp�h��{��3�<o��2�M>��#��`u�4�H�W�'�<�4a�m*�`yCn����-����mRyNj�f��Q(�!������"WDPO�� �[��J�-Z�ȕ3<~3�V�i���6�&Yyk]�[u�6��A�ǎsV7�6L���G��p˾�Ç�7 V�2�w�;���7.��y�.�qp&X���ܫ}-�bU�b�����P�B!�A�Z�eEu �Y�B��pRw�"뛶Y�Bi�D��-�a{:/��u�U9ϻ��cVR�4͠�J�5���N�o��� �K�]�6 �I8� Q&�8�tƾ���`S����?�bQ��^�!}�����Q�C(�!���!O�Y�@^��x��I-^yV���"ym��$>Fޛ��^w�)ۡ��UX�Z�j�S@�m9��9sK�ۤK���Z� �!�0��AK� �IMЍe�b�5�z3>PI��B-��6����k?�-�gP�B!�G,���\y�*o�F�z�m����ֹX�}�v�Z�S�0�w��}�5p���cǎ%vr� KP�ݘ��f��F@�n̑&�Z�X��m�� �H`E�[��M#N�y��sc����)�6��BLbAZ��:ay��:��/� �z���\=�O�Y~Z��I�����IG�tZ�Z��M�69#ؖ-[�.��#I7�(�'�4��&SqH�F�D�nm?��9�@%�"@�M7�d����ݷ�&��\i�Ͻ��P��R�Y���y����vA?���۔K��������8���en�}��|��Ћs�Z�Ĺ����}f��4��ح�b���jUp��(��4�)|�4�ۿ�)��v�n/�6v�#��[)�VJ�h��Ǐ+�2�Ƽ��t�[�RqAL�ۤۦ�M��h��] a�I��?��?����H�X�>��@�7�{�]V5���r����ǯ?*'O�I�y�>S�;g��ʉ��r����{��ۜ�s�\u�9�m븴ʣ���w�{D��c�m�^��s�����2�ݣ=�6l�g?�,�`ϔ}`k�A��_�'�vЮ��^��]�>��Z��ݽ{�\���? G��ɣ�yBƞ��t�� [�g�iK}��qY��CR�?%�f�܋ں�p-��7�������Z���Ɏ��.ax�8�c��,tQ�so���G���7�HX���s��^�4�^��f����1o�����m�~�np������:�y��'k8��ky3p��6 ��@��]� �X�X7u���$,q'�ŚZ���ߧn%)H�=P� �ۻ>�����P�-�}�̡��;n�_���c�(g��`�^�� q�ļ��O}E��o�)��{ϒ��{oh���O�[����ǥ�L����OȎ�k��r��}XD~���ns�e;���i+0�P)-�=���/�����M �~��/��?��k��^]۶N�o���r��ɖ����|������t��<p�����v8r����x;�����9���K��'�6�w�/�'6� +��6�I+@��#�O�/��1<d�ϛ�����x�\�z�zֻ8�H(��(��zQ��c�_����W��=-UnE�v�C�79��~�H�'��MT���;w,��Z� �0�mrr��XX277��NZ��E���C�n*�47����yy�<d�en�B�O�R��3��W|��Ǥ]��X��n^����'Ov��NN��]��>���&�k�d����^�K����Z��ɉQ���_+�ݞ�@�����=c���ڿ�/g�hݺ�K^���� ?�|)u�9�V,w���["{����.��3�)�R�~g���~�l�H:�J �Q��E����0w�-�*����:؊pk*`IǞ�W�q��C���&g��lj'��D�ny��y{�����J�$�@-o��m�u�z�p���l�,o���87%�O�1��&�x��ܫ&nd%lY�Me�~���Xv��]F���{�8S�����Z�A������.��۶J���o�����D���^��W���\'{��R�,�s��V��R����s��˯��s�u�m�8`��ɍ֍C�����\�?����+���̫߮�dS{�(i�BN�.������'�6�/+�m����?ƶ!M�� ��7��2郖 Aw�-���jy�V���:�MA�nu��KY3pn�!�`B�FVҜ��p���$�������g��W^v�n���}���s�noy��|���Ox����6o��Ôt�*y�l���#mј��1hq@���,]y�Lb�Xo�Zh���bq�ܭS�f-��v�&頏� ���&�I���-[�G@�7�(F���Ç'�f-p��ݷ�qoH���}��-��!��2�ǀ)��&|�#k%`I�01%������a(��J�8tZFKp1*�A��*y�Εq+�L�,D�o<�ʳ�������o�U��o�pK��-,.؇�������?���U�YXX���_>���{�'_�l$Ku}%�c���t�{q��9}z��U�eW����4�^�4��'�B뗮kݰNѾ�����x��F^��q�f]2ϵ2�������P��t�J=-`I3}췀%�f`i�V��UM��ްs7���Nu#�&�vu�x7�6X��$m�4`��G��$Y3Kb�� ����()��J�4�(���zX*��rjvV�N��",n/�%�iSje9y��<���:u��#p�|�K.w�U���A�xpY���Xu��������'���>,��6ɞ��j���睛�qB_g�{����Z��z�U��z���0/��7��;�����>���vr�{����7�VB�*yZ�ّ��.Ve��L��<y�0�H^�<��zǫq2l�H�u]����0����dp��'N���djjʝb+A��0]Ƽ�ܹ3Ѡ%n����%��f�~1j���`ܛ�}�c��2�馛�y/��䘷�j"�K��p#+��J&�aXr��(�Jv�JE]%�%W��FM,r9�)� �_8�,^��������W���_)�5�1��6�~�?�U�_}?Iύ7f��0� Ӗ-[�0�$Rؙnq��yS������vs�6��ȓp��.c�"g�Z����܁��Oz���Y ���ז$�w#��d�vS�?�o)駟�ZWɊ�������<WIexh؞�rC�s�%{n�����O�J"�)�Jڣ�U2p=,�߯j�*�t����pK��<�8�nU�֭[��U���Ru���Z$�A ��H���c��?c4��a��j0�=x7�X�K,�1$1�H�� �%��.�Kժ��ں���o�x�~'nd�<۽���ϓ������y3O��T�J�!C���A�(�9�I�D�̵W`$��C�ݔ`�����"v��p�WI��4�IW�l�� � K�$����7D���$�� U������7l�d�1Q7�;?X~��%0�D!M&�Dy��S�����?�S?�������P��9SI��K�e��H�@j*y���MV��#�GC�' n�T� H[�5s�ۻ���?7��T8�r��������(m?�c��u�cISI���w���~zqr�[f* ���0l_���o� 5��Cfye9��s��.@q{˗n�;o�i* R����o�z�rf�eD-5m�m�L�ʲ`'r��$2G%�̙E��{�Iܦm�ޓ �̮T����&m'Awx��s��#�&�w �1I7L'C��{��M4�$��F<��C��(�H�]����I �$�7E?PS����/{� 3 ����;�#/M%�ݶl�j*9>L����$��e֘3e���+��u,����̟��<��^���N͓3�r���6m��f��N\.�\�4�D�L$��!U��ӧ��I��$n����O�Y�LP���&U7�N��q��j]�����S��0�\��6�����0���LZ�0�|��Ք��T��e��MBq��W�f�a*����lX0Î��& X L%��_�r�SG�>L%i. S��X����gSɿ��י;N�����`~����XhB9H2�Q���/��0��BSI,�\����s���0=�}.�f�{��S�7��9���� ��i�n!�&�S�W����/.�F���"��n�G�� �ڄ�\��F������ �Mb�����[8�ɭ�-�7(o p�y�u�V�sI��A�Ú~n��p�J��x��I������_>��WW�S����̡ SI`R�MV�J�<`�P'�ƤD���� gOE3�J�sR�M����.]�a* LJ�I(n?�w������3��;�e4�&%��}�+��?�=l��Jj��Pe*y��v��I�6��J���L%��6 ���vY�22i���MJT�G�Ȳn���2����+�cB��˂qT���"�ƍ"ϛ�KLT�B�I(a�tҝ<y��� �H�uSyc�7����?a$rrR�KV�fH�K��h�w���eǕ�)�L%�6;5���T�c+f���ペJn��d1g���Z������uS�n��:&�#�Ț����?�����%��F�i6I�7$�Ƅ,�7��p�B�4��=|�����*��o�-Cq�AJ#N����40�D��P�"�V>�}Mސ�{�mސ#pJ���m�1]>n�*9 ��)Kp�t��t��� J��MЍ:��d1gʘ�W��2��^�rש��ˑȲ>���CNb���C�`�o�� ����W�\�(Ay��$��6,P�m>oH��[�q��$� �����j[x;����;F�L~�����Te�{�G|�B���Q��M�:��~k�q�c�SɃ˝��L�����?��-oz��$u�T2�aVi.�V��6��r�܃����O~�a�C�`*��6 ��� ]���=�X؆�Ž�n'�f9L(Q��&A�~��}sa*��g+���9m����':&�0����^D���o}����tL%oݺe>��O�m�J��%/ �0�̕k��jS���А��T2m��.�cq{�+a*�m�;�~�o��T��0�d�M�nA� bz\�7�cU�XjU�n���s�'�~���\t�o��Q2�L[���z�_���K�Fe�9NLC%�2$���nI�I�[ʛ_7�:��lҏ�B���梹���� �~iG��@�z�!�EJ;[�&s��^��"�%n�~�J6�>8F�������w��F1z��du� s���Ȏ9��uQK��;�����a+k7�C]�JI���!�@�.=�5�2~s�Y������1U��H@yqC�7��������\oP�a2������8 �I�K2�$��$�g��4� ��7|�ܧ��{F����Tr|PS��AM%��J��|9�,`IJи��be�2�,ۯj'�[�׳��7��8u���O�\����77l3Ut�?@�� p*a�ID��K0w��F�7����!P H��`]pPފ��7���{��>��0�O�Q(J M%a�S�D��W�J��7�n�c*�s�P')��˗�yg��SIY�h�מ�`n���˾�n�Ư���L%e9L%� �v����A��w�y���~���,��$@JD�|�s�|�L%���`v��&�&�!��]kfܐ���7C�ȥ������\�M�� �d?���h���?��u�j�;�V�J�ri*)M(A���O���41U�B*����d�<���H`�~���f�#�~�Sb�W�EU�~Gb�n{�ʕ��;���$�"҆�%�獮�8IsI XB�F�7��mL�mh7����(oć���?�3F��`M%��m���Sg*y�L�TRA�͓�i@��-��o��1I�M�(p9s���m�e;9���+U�:*�D`�d�s� �@�FG[����>���s�G�xs$MPޘ��@�I�r���2Oܺ"N�l�ްN���i��+���̑7 ��%����B!���ペJ�j*� �T�����)�*�&YIR^+�V�>KRY�`�n��&��c��+���M��'S����I�yqC����ϱ���$.l�d�>oL� I�q�iK#Ne�?)f�lR�Co����{��4���F1�(3��_X(L"'%�dj*y�ҥ`j RRs��iOJ�Ii*�����Tr/�M����{�l^�a��g��i*���&A����-�yu��L%'%�d���fh��&�4���]����m25��������6Y50�)3Q,[�jY�Ic�f��.�c�1��g >i����˔XXN4&��#*o;T/�;�́�!ϛ����d��$��7���ߍQ%y��w#<q3����w$\�Ĕ&�f�� p~�%o�u�s~�F1��J��|1ZM%LJm�m�L%��>Q0�Tr|�����4Ě�6��d��!��UuI�+ �_u�^��"VJ;Y^F8wO������U��Z��A�$��<���ˁ4=z�`�7Oܨ���'O�[��\��1��7m�AOR�D�?Tם�-��f��������wٿM�6��ö���!5��Tr�PS�����Q%�� ]�M������Ld9��me$ι|����Ωk����Ӣ1 ��.1urE���~�Y�*��u��'oE��رc�S8(o�y��O��l�t2���o[�x�w��p����=���&���j�����'p �Q��h��jS�I�6L%�she���#GM���MJ��2SɅ������m25��5bRNs�m��4���h��n[Q%i*�g���b�Vf*���&����=�ua��TR�M�2SI��k*9�h�U���7����(�M�H[� 9�H�^u�٤<G*h9BYvMWe��?�9��N��3J<�y^�r$p�d�����ln'����2X ��0��S��0���ud����DWD�bn���[��Qy����d��2������y�(fP��UreYM%G�i4�|��f�L%���J�Urx䂋�S�\m2�IQ*#V��\}W<�봽��*�YӬ�MeJ�]}&}��d���5` Ս���ѣVnf����� ʛ'n�y�{���r��8� n��� � �I�F�o��1*yK�h�����Q�����-�q��j���ҮD�\^^2����튩���e3,VVw�Trqa8"���m+Sa*�lv~�i*yț������[���1�e���0?6W��ZTIט�*��ñ���\m���7x���8W�����;��1i��ܱ�K�YE��Ը\ݢ��1~��`�F�C�f-�[��mN5���t[0��yނ�h�<�7v5�n�6 ��&E���ۂ�$|�X�@%0�� �I☤�AK*������t����n��y����{7zG��5�7~�Zmg>��%��q3n��,�/y��湧W���4�����?�������?�}�wY�����{�y��k�����.�0�>�����x1��P����N�ݧn7�N2�V#E|Ξ�hx�b� g}3%>No�,��k����w����6���^5ׯ݈��D��*L�FU���`Nޱj�<���'�5/^7[�V�ԋ��ll㹵���,G�0[��#fa~0R�wac}#�]� X���Y���ڭ�@�>e����|��wz�g.�4�|� 3�76��2'O�;>���f�Y1��۟�4�+j���F+kC}g�ms��M�� �������﮽�̱�,�Ϊ���L���E�-����y����Z�M��<y�m���ݜ9~�T��sw�WZY �7��9Wlw��8���7�2Q.��w�g�5dy��˺�a���q�s:��Ȳ��q������w"m[�w\��xY�-��ƵwԷ�6lW�c�f���mْc�M|��oV���N���˲���/��8f����m_������w�g������'��[�0�$�^u+>�f�ن�ɛ9y�C��Pk��I$�&QF���͉���t2ԏɺ����V�[�5w�5�Gܔ�� oHѸ��L�� &67�o�3�������l���[��Bs�Nۻ��Ż�w��1m����M껐#g��dU�*���T/BWvL�UF�H���[��'y��jX��E� o;��v&��q���A����C�^��b�ǀ%��M"Q7�2l��χ?��7��Y�n��7���9(o��7��-�K��4`I�����/1[���E)�NC���&�(�F10�M�0>Lӳ�@Z߅�A߅��#KM�H�<���sd���Kˮ�k����z���k51(�-r�� �*�:gp��GU� n�3;r�H�������V+�{��$��'hm,�8� ��d���$prB�-7�T�y���7�wh �B�P(�z��I�X��EH�ǪkV��R��d/��bY�M+ܐ��*�}ʧ& n�{K}������O?�WD�-��$�� U+y�+_�#X��8Y+��f�6F������[M �Ƀ��]n7�O�B�P(S Ihї�J#r�$QK��m�+����>)�#�!���"YF��V���6��\ς逫���Ӑ���j_l+#�f�� rHԍh�X��!e�'p!Q7� I���B���͐*��X�� �/&��zm�ŏT|וo�*o}�C_o��6�����P( �bꑚ7�Q�EpL�7D�S�ȕ���e�zej^�dR��q2,۳`������N �/�ʕ+y����\o/^� u"� o��gΜ k�o�{��-ԧↈ��=�����$q����L�ˠ�O�ζ��3��Q( �B1��5h�:����%b�i��vR��ԯ-G�rן,AS2��omJ)ݨ�T nsc�&��~�ܹ��$����G}�!�����@q�D��4�$�l����U���Wox����z���Q( �B1��0��OMsArd*%|r-�0s改>唸�Ye��A1it����l>K�@��k,a��f0m�f�L� �$�T�@���eX�� K@�|@�����a?��Y0A�I�X�iR*o��WUކ@H�m�;ԌR�P(��D/�&�(ˢ9�P�p�"M�������IH�R���M�x�?(���#��m3 �F�3�f�X�}O�l��D��P�<oS�<o k$lф��\Ɉ�H`w~�=���!��E3�?4 �B�P(&r�T��-��U�_��ܱ*RXuN�җC�G�^���ŭw�1h��* ��h�9I�|ޠ��@%�l�9ޠ�X�T'O�,"M��$�&��$}��q�86�MBq�� ���:ߩ��f���f�%�N@�P(��C���懹c��\��<��e�E�L���_�7.sɺ�b��}��Qun7Yb�k���{(nP�����$n�7n�l����a���^}C��"ڤ'l�s�KD�IԱ��Z&�6��X�6�{f�P�ԌR�P(��F����3��(�9�\�\@y���Wv�\��s$���:��*`d�a�0�\�$ӟQ� kL��%�ŋ-�&�4����v���p�7,��<o�{�B�(oX�<T7<�´ p~�2XI��� X��m��*�GaF�7��Q( �B1q�%ɑ���K��uK�%�J����εsj\]�J0�"PW�]� �Zɟ3��q%�#����n7b�����$����1뉛�y��*��M"` ��u9�ByK�Y9�,U�~�M�69�h��z���G]��r�( �B��T����#^4gd��\P��z&�)k�YdY�*8N���.��O���PQ�����L/]��=is.\@�n7��%�@�[P����"Mb�AK6�-�z���ꛓ�[���*oc�'q?�*�B�P(���P��d9%, ZBH��'J���F�L����#�m���̏o���d�di�8�I�*ؒm�h�T0�\]]E��@%�6 ��I,A�I���\ʛ'l�n$n!�[l���!X #L�{c�nl�W��=T�_~�}W�m�S}� �B��{��T�WMn��/�i�T�r}�"mD.�[/�̜�[�*\-�� eC��A�59o�iܤE��-4��!�T/8(o�G�ID���#NZ,a�7D�m�� ��6��a�-�p���f���pь�~�;�>����u3n4���v�Y�n�ᙋ7ͭ��7�Ι��Kfll��3�n�vk�?u��9x`~�껐�4�x�����ʂQ(�+����?g���)ci�mW�)�]?E�v��Ǹ�킲4L1\i���I2�ͨ\�{4���[(����C��7���x0��{�GB�4�ĚɺaB _7�&dⵁ`3iJ��m�}�0����~��닟0�����;O|���5�l6h��#�y�Ο,�q�u���m�;hř�_6������0�ƽ_�W��� �A�w���Ys������9����5��ɧ��_�������o?ջ��/����w����.(���0�9�L�\9BU�W���7��Ϯ���L��;O����1&i$�F��Q?�)}�ӄ�W�����%Pގ9|���&���Էs���T�I(p0�d����%�T��T�lҥ�?�p��?�ʿ���=�~R�n�o�O�<o���Ϛq�Ps�|�{�S���=-�73n�j�}������J�9�i�_�A��^:g>���3n�q�k̭+f67��{�=��76��6̑�k�?+�egn�m��Wھ�m3?��v�֖'��.\�a�z@�������6�Ƒ�8Ӿ� �&I%o�� �#'ZZ��rH�����ifZ�J LI�Y�Um1PG�5f%`ɮއ��U�0�� gH�m��@��ֆ� ` ��y�-��� 9ތ����� �B}���* ��ߍ��������/�=���j�0�:�`�����,�������N���_�I��t|����]���f�&����߹����<F0f���λ0?��5͑�G�4 �~FJ��v�VE��6s�CҲ\��K���$sR)��$������K��p/���nO�mL�H�&��$�7��7:�n��wM�n0���L�nP��� ��PN��7&�f��o�{˙G��m��Ko��4Z��čP��v�=涃+�`�ә�W*�k_����0~��a��6O���&ț�\r�������w�L6»�@�]����ȋ:��c�b�HV/��Y�:9E-U�r�p��㺮����������ƀ�z��M�&��^y+�s��a��% sP����}?i�tE]�LrA��L����,چچ`%q�h6IՍyް ��'�lrB𡯷?�௹�ǀ&�������8�������S3����5Ӏ`*鉛]�����߅�xwAܖ�ٛA��[���ϛ/<y�\�|�X�7G�V���9a��Q(veAE�(neM�:@��-U���.���뗸�i! �|��rW�)��o��\��� A�'nP�@��->���a}����}ފ$��LZ� �$H���F��۴@4y�k����W�L%�ܝ/0+�Z_�D0ts���<��o��:�k'Xł�������,�Z�1��f0�|����ɻ`&�wasn�-L%��������k�«������}*l���7�̼�K�c�A��P��H_���ٲ= Mꝋt��k�Գ�?^N���W?�������P�����}2���i�nl��1I��AKB�����tnii)�x��$u3h �L�t�țX�I�KBu�o=����@S�7�/���p��$L�666�2�>Y�<�G_77�V2.@q;v�EE��n��5&k�55���iO9N� ����.HSI,[[��;/����������/_3?��>f>�k��(��2Ǵ,����ɲ�YΜRcBqI�Ҷˮ�o��ZY{���У�A|�;b�ij2�GSH��S��%0��B��L@D�F��I���|����N#MB�����v-��rP�6�@T��7C$nzM%��h* �m0m��^�J�����fX��9�8�bܰ�<�v�T%K�1Q�)liYj�IT�Ŵn�o������nDu�낼�ɚ^�c�(�M�T�X�nq >o�w��ٰ ` �&}�� $�7#��̋��0�d�&�'W��Jަ q�m�`���L�dTI�`��Y09����BX&Ib$A�`1���I�6ɨ��ۦWW�_*A�DE�<�U��]��h�e�ޅ X¨��L%�߹�����/��O��oV�me��?x,�Y*�@J������V�d1G���Lۓ�^�vr�ɵ<'5s�Y�C��>��� ���wmҬ���m�]QuC��Bu�~��F�I� 8}�t� (pXb�mAu����w��\�8\�n�$~��V(�Jަ!����g̿4�U���+�uMJ��2�8,��&-�dj*��)�r4I�&����ͬ�d`&x���LZ��2SI,�c�6 ��-E/3K��.�LY�S��m �j��3���!UU������"`"~�]����~䃓��Ay�z�j�y�r�J��7�m'N� s�ˀ%�_���hq�0��ϛ/g;�ʛ�@+~{J��Jަ2?��'$NM%Nji4��z������r���M��IB��������U��&˓�VWP�^�n�j����,m�J��){cQ�F� K0���Oh�'Pޠv�l�/�A^�p������o�~]�7G�m}}=��մ���D�X�U$ �]b��z}�mrJ!#S��8���E�M'�+��� � �����<D|1�9t���/>>�7' ��]/|�Y�Q%[^�b �H�f�4jV�|�=�6y��Mm3��Y�.���|�ۚ�h��U2�-�ӧfs��BQn�`>�t�T��GVB���vΜ7 Ű(�S�/#HuIQ���$5��2�ĥ�r�(sה��<�z�w{��{��N��:�S����o�%p�f�T݊kPޠ��ɘS�NE��-��������P�H�N�n�qsH�.�����t2���TC��5s�]�f�o���f �1���ܾܱ5�,ׯ_�OlyyyGy{i�T��ꁶY\\ ���u����Ohi�S��:����Aq;~��=!��\������WV��7n�9�I�^�Bi��-�t�@���y�f�.{�2�$ޅ$��7�u��]�;���).����b���k����ra����}ު��ѵ�b���Bؿyk3k"�|p �(PF�rp���XY�� �K1��bZ�Qˑ�2�p \��c%g� y܌J���Iz���)G�ɢ��ѣaME�7?�kx� �7������G,M&�:78�. ��&����oA)q����Ĺ_�?�p�W?co�㼹��L�M%�#���%]�FS���tXqo�Kf�צ���K׳�0�DBn�^{X����������)��$2)y��SrG�:���,�][���#�[Z����Si��aZ ��L=[C�w<�P0� �$��a2 �7O�E���/:��D�9�@�Ξ=�廆 � �����C�7^�+n!97�'��1XI](y�gX�sw�/>q���O�;�\�_|�L�5���cs��@SIY��lQ>Ԗ���U�TR�#P ԭf0����>M%������T�zŲ��s�-c��NJSI٧���,�{��r�������'kO�?�/O�}U��@Y$��xJ���I�"s���R�N�R�dYY{l��5��%U@���� �.�;�bAA�\��ԸI�鮓O�y�-؝�iK�8q��$�Bu��8�t�w��$H[4��#97r�yW�Lz�2G�gx�h9�+X ��m#�8�<�غ��~�����8y#l�����F{wՙ�<��TR�c�����'ouM%e����k���j��*SI�� �J�kvW��2��ߛ�-��,,�=�av�����ϚJ��vs��m�/�)�:&�o}��B���ϖ�sםG�B1,�%3U~e�������T�:���TrJ�a}���&�d��9u�63�h��[��ҭ�fݺ�ӲlwS��F �o0�\[[�nT�Ae�s�ꛅ��T�M2X ��tC�0�q�k��\b�7~�tz�W���~�L��Tr:���Tr|PS��qםG�?۰f�wݱf�a���:ur*\)J��� RFڪPF���Q҃��-���V�]��X�0�����}�Y���<i[Y:`���2�s���i�5��^`Z�AO���9Ú�n<� �J@�iۘ���B�K"�$�h��.�p=�Q�k�&M!���M�+�TR��V��~" ��{m���7�#q�c*���&�1�4�m����$E�,3��}ڋh� nHP�.��7z�;�s ŰHF��)`��N�e��d�Z�^���eD1��1��Wcz�o�Sy�Y]8h^v�^���gͧ/<�]�f����>�~�0���?0vi���4�i�\$Y�t�R�D�D�&��$R�"L�9sf�����f��=��V���@�&�q}�{�Uɛb�2��c���&��$���v�I(n'�~q�_�Tr��MBq�|S�,�<�2S�I�6Y�TrR�MV�J")��&"��?x����J%��+��B�uL S�8I����%��:u�E����zW9u�8wL�5�E���XH��S��|���o��3�����(��}��^�e�GO��n\�ͧ�����{��&���ÚG<�c7F�$��~l��}J��1�$��9���y$�"ObM�IS�4I�b��^S��4�J�){k����oL9���Pe�W�\{�8��˲^Q,s�iyJ(Ӳ�|�st#��2`�0���e}$��ܢy��ä^�w��va.���L���9aw����&$�61�$?��9 n���I�a> mO��P�H�@���K@�`6 �SJD��>"N�V�W�U�cèL%ey� �4�`Z�[�&����SS�]�6)L%iVJ�.�3����j�����^G��c*���& �oP��G>Q����U�M1��Y�2=V�ϲT5�2o,�"�9%/� ���'�u�ٓ `69��%��^"YYX2�k�m��'���V+��1�*�\�|���ѣ�B����o }�4�T4���8]ib��@�@���4�T��JNJ��a" ��m25���quL%w3�dj*I�R��Tr/�M�]x��<�m�7���h�����2���h�PАiz�J~�k���3�P� �"7Zꥰ� d��ݖ#q�"�[ K��]���eq�]�y,q�*�|^ɅŮWf��.>e�;v�|��/��ͭ��mnl�ӫ�̑�C�Ϟ9_=)�4_�g����I���.���W w�|�;�b�7�7(pH�t pT�mғ���$@���\o���lR1r���x�����T�J�Sރ��o���w}�W_���8╵�<��`^����N�2%n���J9�:5y,#DU���u��֥�)#yr�L��2`�<>J��^g����jo����y��qs�O ��̗���|�����W�p�YL��T����9rf��H��n^}sL�!�-�`�����@E����$m y0���T�� ���T�M1R��-���/7� uL��G;�)�P�v��d0�����2�ȋ�����o9>>��5F�b���y�vO�v+�'����Ai�Ǫ��Tn��֭8��7��dk��^�߶S��E_�f���B�l_a�w����i8�����g�*�vYyg��A� %��.&k���B�[�E{L�R�Sf��5�k��fz�*�O*2i��w�ʞK�m�eu0�$ݽ[�vq�S{+Y���g�\�7����}G�0/8~2�o���O>�y�������L���(0���<o NG�-��I��Ξ;w�HG7O��P�@�h6 �c1U@���$R0���_8A�f����;�x�9և��^F����U/��s}��mnu��`�$L(Y38��q7o��Q��P�0ڟ'(nw<��b��<n�h�a�������[fI�J�$慽L%w;�d�.�Ĕ���#K#&�0����Nr�gb�M%'!ڤB1I�2o������X�\:nW���mK�˴��~��~�4��H��5z��7���� Ӝ_0 n}���/�$��'��;�y��0�d���� �ɤ�������|*o0��I�M�y���.�d��M*F�J�4�üIM%�5�/��TR��&�jU/�3[�թ2���U��� aU���� ��aoo`���'��I���[�3K~ron~�T���� ��Nx�VD���fm��G�� >o~� X�<o����-�z�f������>}���z�o��)���|�ܽp�|�����93�h��8k��L��O�=��ο�E��Q>o�f�q�4��Mk��f}��s�����������:[;��.F�g��F���2�%��^m9�zҜz�7���:fe�n�X�-�hh��9�]nKŏ}Yy� �\��-*�ޅKw�͵�m�f��˭��3i5Z������_��k���w�;����˽*�F��y�^,@�|�i���]8��h`��B?���r�z����!k��տw��l�BG�|C�ñ��j��{k���"�Z]�{�?�b� ��2�I�Ԭ2m+m3=���� �c)�KۮEr�n�v2|�o6Y`T�&�L�Mi��A��|ޠ�ň���ŋAu�B���o��������9s�!M��<��f�Qy+�\i�n�Mf`]'�Ji���)���y�S�1/�r|�A�+əs����ǎ!��m��7��Y���H�e�/����Cf�ur�̿���V�g�L�����%�zh� ��|�<y�z,�0��UV^�sg�Ɠdž{�Ǐ��w�MO��~�!���7Ļ�M���]~h��a��bґ����pU�_��L��OۭR��:9��^�l��%�A[�g�mM��� �ɾ�iș'n|�XR��p�B(���V�e��%����9�nH�I]8�~o��t$�em+yS J���&�Rs�s�i���BX�w_�4@��bvQe�����,1U�R5�u�vs �s���%ee �(ѷ���I�2�ѝ}��&��v�D�'QN7;�<�[ p(�F�l2�oV���� $.*n!A7�(����tL&{ʧJ� �B�P("$ѡ��і�eY]�T���H�#���K�������oh�U�d7�9���l+F8�N�����ݼ��O�8���f�&�~���I�֭[��P�AK$�q�&�!/L'�oM&+ �,Q( �B13p%�k�T�R%�IK �l�n����ヴ5H��Z�P7�^Og4��ݛ�/m�vXB��7�'����uҮ9��8�C}C�����'�[H@}����"�f���4�ʛB�P(��A�D��s��+8 �I�̏.%�eAIl�`*e�n�G��$Ť�B������HwcX����b����(�C%�'A�m�yg}�Q�zf��� &��6 ��������&�1�����B�P( ŌC���|�r��JBU��5�`[U�R��ک�'�lɞ�)�^\Y��B�C��&���$*�OTݰ���� � �f�$nH��6�h�0�45�ޔ�) �B����I+SЈ4HI���F�,�~��傛��\&0�<oX�]e5C�w��MW���t{��NN��Ũ��<�d��ѣ!�$��'q��A^u�\Cy����8����h>�� ]h9�~����F;ͪ>+yS( �B13(S�Rr�+/+�ɳS��;�W]35���0��z yƻ�T%)�^��j�\�m p l n�pA13�f3<��g���-*o@���7�b2�� K�~ p�Ê���) �B��� �! XJ������;Yn3 �eYΧ.��6Lt�mM1S.m��'���R�=<�*|ڰF��K�.Ay3�T2��miΟ?���~o���6��*�!]@$n�o��n��87&�F���o�&�V( �B�l�\nu Y���6|�r��)��B�%�檈�$x]�p�c����2���LB����n�_��0�$#M���I�M2��a������T�`.�h��<�c�I��-��M�o��M* �B��)��ieuS3Ȫ�"U&��~�~��q)��OU���U�e69��zV����y�pL�VK��+W����5�7�H?7(oX#M�7�>o���;h����>f9��o^��Q�uA��oK0�����UyS( �B13ȑ�~�T�� HRf���D��R��˔���%֭V�/0J���TE��1���^{�i#CC?�]�M���$�aJ�7G�D~o���!Q7 �0�Dz�nI[$q4��5ɢʛB�P(��AΗ �'`IN]s#��L;y�*�CzN_���3� c�LJ�k�{��]��C��y�-��I�I����ݰ ���̙3��nKKKE�n��&@"��'�o�2X �ʛB�P(��B����(���s�ʔ=y]i^�����d�keN�h�d�!�n7*o�Zf� N1`IH� �C�I�ĉ�^�1ҤmCys1]��i�s�*Q*MT��\�XUyS( �B1S�c���:Vv��9c�Yd�V�f�5ˮ1y�G��w[�;��Ew�Qm�=� OuW�^���T����s�΅5�=�y�s�w��5T7�M"X �����P�>�������P�M�P( �̡*2d��$i�2�2��se�Z)9��ked.�7"U⪶�����{H���*����4���q�С��1`�T�b���wC����>}:c�� �X��nP�b�7�|o$lV���|��C�����) �B��9�5��E�L�Z�FI*#�.�*����-�+�#m�{�nȌÛ��^��u�3���^̘U殀K<q����� �`6) �a�̙3���7���Fx��&A⠺1]��g�Gj{�M*yS( �B1S�% �ˢP��O��^ʝ��#�e&Se'y��)}���9I��D��yV�9�ǥdm�@��7G���x�Pސ�1�ofnn�!��7��E867��[�s+\���W}� �B�P("R_���L���~z>�3��5r�խ�V���h!���c�� E�����0@�(o�.]*��6�@���$��l2�L�t0��� aQ���'l�,7�<o�J(O'b�"N*yS( �B1�H�p��:�$�E�2�-E�v����R�亶2W�7�}��F��d{R1mJ!�&���;�BT��6��|�KΜ9���Ơ%����$p���B7��� �þ�y��8��M�P( ��"�qҀ"9�*�$�SU,G��|���T�\{i�A���,-H Anh�goL�_`��\�I�nL� ������ԩS�@�7,�2�a�&@��h��uC�I���H���J� �B�P��"0��_\z,=�V�����i�2���s�`�M�Jb?��ۘ����Mȡ�F�X�l��u���@�;�`�8$���&���$�L�mqyްy� �$��׀%����4 �B�P(�}�:�2^Eg�ٰfqq�2�]�D �䂖����4Jyd�ǁٌ��ܵ,��I�',���7�M"A��#G���t� >o��~�e�oʛ'p�K� ��[��c�n�. ��ESI �}衇j8%o3��V�\��n �B��uT�1v�c�3.C��\ o�V�\+S�$��-w�~�lS��2͔mN��v�L���o��fLѧ�&� ��� nm�y�~o$pŭ@y#�#@���T7�����(���>&%o3��f��u�Q( �B�A/�,G*�V�:e�i�\:��[jbYڇ����Po4"ie�X '��7O�څ<o��������3M@0����3���y�{��ĭ� \�<��#����u��0�����P( �b��K��E��K��+Ӳ�2�-�c�]#-K��*�\̰�[�37}B9�D�I�i���ŋ�_ � f�'N�I��2��� n�6�mD��nA}�)��"y�L|�X[S( �B�Pt��/�ep�^AAr*m����Oe/w�*@J�/{��6�М�LI�ثq�PP8@y�r�J�x�=�H�@�����1U��Z�i��'m�M&��d���߷��) �B�P4OL��ip�*߲��(g�~T�{���2�LM2%nv�ta(��qҜ�F���)��$�zs�5��Ыo!�$r�!pɩS���7u#e��٤���\V�I$��&i*�<oNL�p��V�M�P( ��!�����͊����2��ܱ*Ȫ����s�b����3��}M q۵h�����!m� �&�*������ɓ�f��{������[Hҝ+ $�o4�d�@+1�� �f�&\��) �B���T+I��H�ܗ"mI~�2S�r�I�f[�$��^J�R28ܬ��f�y���#G}�<�������gϞ G4�4����|�C�n�xC�����7���I��֦�lR�P( ��V���ȑ5���b���h��K�$��\]+�gD��ɾi����.�U��B�9�ؤ3�i�U�M^y]�ʛ��-�FBm����8�+o��'��格ݺu+|0�����aa�I�w�Z������J�o�����R�7�B�P(3�^���Z��XR�������PV���"��F�k��Gx��X���i F�gIB��+o!ڤ_��Y(o��s��q�� ʛ4�d�(oL� �&�M:I�dz�^�J%o �B�P(f� c��Hҕ�:Ĩ��6�f3Q.����GJ�����Nn�}UԺs� q��$#L�t�رc�b�5}�x^�* �� ��$�%�2�o� �'p]J��0Iw�� %o �B�P(f���rQm&U@��m˲:D*�H)ۣ�c�D�/��;�d?�%�C6?0+�C\T1!(r�yWD���[T̂ �<oH� �@බ�,�7`ii� n�}#��[P�v[��������W��J� �B�P��T3I��RS�2U�꺹k���,�u^/�9JX�ʟ:�]ҀJcS ,����&��6,�k6�P�B��.D���$}��`�� �ګp�{E�-�$�Q�ۤK �B�P�R2&I�L�֕�9uL���� &RI++���8��v�Ԋ6rL��4tFuC������$R\�|9��!M�M��c�7���ti��Ɉ�"ϛTފ��P�`:i���[~��M�( �B�P��AA\IH�:�hu�����_�M��B�&����I���O����y��m�h�h���FՋ�p�ĉ���XBxW�G�mǟ� K���T����?m髦�M�P( �̠�G�����R2WF�r�e�k��t�m�O�z�Q�e��������7G[��=���41I7�h��Wۊ?�&a2i��� ni�7,$m����T�$zE�T�P( �b�PF�ʈ�Tƪ�*�-W��\�#�[]ů�� �f���%B{BtfL�dI��+W�� ���� �a6y���P>o4�D�I,P�@�@�2 ��1M@�$l�����*o �B�P(9��+%��q?E. e�n�2�/�W��$�+#�e��ͤK�����I�� K�0%��$�@yC�n�o0��pl��$�շb;*oAuC�I*�L7#�@�6 .U���E����7�B�P(��4�GnI뗡��V�_W�W��� �=�mr,9�F͟l?�u�d�*�'pKR�Dy��0���&ᕷ�W���ɚ|�߭��L��z�Z��p�&Z��) �B��)� ZRf&I5. ן�+#J��Z�oM*rLIP���Vy�~�:�\�bA{��g�ED��M&��7ˀ%�6�$�^ys��F�I�o4���;g6IN|�P�*�Ԛ*@1r�Zms��-���i��fe��Q(�i�$7�~Ό���*�<�\p����!��~Y[i?�T�~a��6Ym�U�39�/c��n">Ie���� ��&�=���Auy�m6�m(o'O�&�V��1X �77�����tk &�v���J�K�&c���%AK��)F��/����ϙ��y�؟�|e�|�[f��as�یB�PL�:��@u���H��y���Jۧ��3��̪�e�U�T��0{�Q�'����jo�hHe<���$�t������T��%A�H�"qۑ&��8�D�؆�Pq#a�.�A�h>�&P��{衇B]�}�>"%o��*��g�0��+��;m� �������4O=u�|�3��{N��8�B����U9�ꕩc��*�K��V�7G��Q�jcF�{ևIS��K<�'o�8!U������I�=Y�'nD.-�KKKm����6O�;D���}O��amj�P:�V (n n'��f�����Sw�i�����=q�( �4!�H�S�1Y����-���:u��Uj���~P�l2V�4 �'�C���W��FeAԐ��Kd�I�6/ԉ�&��� č~o����Iܘ� *�'iE~7���ɾ%�U$�t��矾�e�U��v�(fǏ�Dn.� �B1-� *R��&��4��`JY�VJ�R��K���ʖS˶���ա�hɇQ�=��&C�W� ��s���D)�8�n�;�#��K�ۃ��`%؆����nm�ͫlPں�sIF���F� �tT�jM�(yS�g�^S�6���|�Q(�iA��Zj��4(ID�#���yU}�mq[.i�^��t���=s�:w;�'2�G<�dhZp�������g�#G���h6�I��'n~o��u,���1M�&���[��}�B[ r�s���d�����X���6��]�a�58����b����� �b��K)�k�D�L�3��H��JRfF�F���$wOi��9&��/o��]�܈ک�17�k��{�I�O�`:���l��o�O?�t0��C��S�NY����"` �7-�m��0 �u#x �&�P��}���4V�(Ɔv���F�@��V�e��7�B1e�Ev��Α<��u.\�l�W}�^�+M9@��,&�Q�եQ��r�Qc�^�mR��G��I��� �ɓ'��4�Ȩ��Wՠ��[d����I[�2B[v>X�1��>*5�T�0XW("@� �b�Qe���e9���_N^3m;G��s�v�9f�=��_?�0�R����j69v����/_�l.^���1I7�h�܆�T7l�l2� p2I7�QuC������t�$N~�.YwAɛB�P(��A����+#[e��Ӗ��j�L�cY/�6n��I�ФgT�k��k�����g�}6�M��y��.� ���|����4��M��$ݞ���6Է417H�����Cx �P��dU��lR�P( ��@*`)�"P�R�r���1 >ҏYd���Q��)�n��� �q5�lr���M���TW�\ �)*o����0��S���ٳg��H��<oT��%1��낸E�ɠ���6~��~o��) �B��Y�R�ruz��S�z)vi��2�~}��(����Op���ZE}�_���:8FL�1�$P7�8D�,�G5�7�MbKR7(oH�ɂ�EJ\h��0��v$n�-$�߫�K��)��z&,��O~���Q��?g>�{���������.5p���LJ���Џ�g��� �� �̰*8I��L���0�ב(#d�XN�+��C�~`al�mБ��Y0D[�#n����i�$QO(oDT�`: �IF����5�&��8}�4R�m(o pH�I�oT��&�E�n�m��A���&�V����x���.��>~��'>�g����9�Ƈ~已��黾�2��g����'��G쳏�~ڧ2��T(����(�r�K��4E@�17KU5y��^J2s�[J0s���uҖ�G0���s<�Xj��K���i�i��_��H�շb�jPݠ�!U�MBy��J*oP�q�Pܢ�ȓ6��t.�c��[����;U� <��a "3n���Wk)|��ޯ������o���������w̉㷅r�^��) ��95��DQ*m�9em�ZUX�S�d?d�: \z_��o�t(.�펒|�d��!� �lf�$���Qy%�x�� 9��ߓ.ô^ysVB����E��٤��_ޫp�u���|�h2Yg�E�(���gy��W�� lP�@n`r��|�?~��\���{"B��eT7 ԁ��w��_��@�>�{��Mo��7�6�fX��}� �r���_��w�hdM�/}�ۂ�#��r�͠�����_��|�7|����R���k^��p�B�P�2����\U�2,%Y�b��%W�eir�*S SuG=����L���d�*�9uw��_ŕl+F��&��6I��%"ڤ���H�L'}��B}���W����/ Q&���P�@����:���S�� ��'=��k���n��#�2�����|��}�yJ�|����y�K^�ؽ�ܝ5���k� U�*�����'S�B{��?��_���c��8���S���}�W>�&�������o|M � _ �'"1�%p�v���'������U* E�����fr�q]7�I�4�9��6�� %��?�_���az������mOR���6}kr�u �^ys~�0���}�m�|�<qs�{[ZZ y�e2�f��o.�x�)B}�{�g���7������S���q���#ABp�������<�#���۾��AO�N$�\ �0�ϙOb�7������W��K Abp��� �)P���q��a����ˊ_�����ׂ*�'A5j��&O3��P(��:�i�ze�n@���M��5��)x,�Cw���Z�h �~T�M�<����W�!�A@�,$v�ٳg-T7����ч��ߛ_����!�d\@a:Y8� �M�)� 8T�` S��F"�r�Cձ*��1x�45$��L@�^� "�h� � s�x��� �YN!�B!C��O�f�}��G \�Q}�%HXD�D?y �B��PfVH�H[]�W{��#G��"O��RT��E��fB1Z��;y�VF�hi{j69z�� ���\oL��ɺ�f����H� ���y�:��@�PSI*n�� �i>�|߶�|Rɛb�A20h �2��J]�~�� ��A3����e> �k"�H �����A!{�'p��ݿH��ӓ���3;,P�p�Ps� ק�s�o���$B��3R( E�� I�2�cY��LK�a=�zi�Ȫ��Q0w\g�2(*��C ����B}ib����I{��y� ~o�M������f��r�l;${1h�y衇�߹�F�TL3`>�UJ.(�`$U� a(I��^����W���9�H���!T.�։��g�ȁ8A�z�/�j s9��o?��CA��h:�Q�^��;��A�n�<y �B��QE��:EY�I��A��2/y<���UD��c�d?Ǎ����lo���6=ڏtl���+W����˗�W�Bm��� ���J��*�GՍ���;*oF�w���h���/y��+<a!�O�w�7���$m2 I'��k��#LQ�����$�?"D�����Ǡp�8ȚT��W�2��o��_ ��u�G\)c�K��+�_���ʀ�;��l�g��:a �B��*J�$i�\�e;D� Vև���4�4�d.]j�9V�01��h�}\�U썃��&Gm��W����$��%�;��V�e���U�"ϛ���d�y+ډ&�P�,�Iy-���}�a2��e���xE�I�W�ܯ��Yo��V�sм�|�.]�b�߸iN�u�5@��HOz�Č��O]����0��Lչ+Y��La �T��nڟ�GI��q����?�����I��q�P>v� s���LS�PL�Է2�3y��L2�1]r� i"��qr_��f�?q�?V�[���an��2�VVB��Ĺb�h��f�<^-ʋ~홮��n�8#�c;����<V��+�>G�mדǍ����;�mӶ�z�ʎ���b�o��ulI���v�1^�]\K�iK��6AB߬������ٗei�_l[q�t�w۾6��}�E��ϯN�}�y�OQ�����9�v� ����|�B�'p!ڤ���H����|o�{�ɤ�h6i:�n��q�~+y�G�o�MQ��!�[���^@ɛB��&�����~/�+W/%guH]zn��"oT�Z���-(y3c"o&%T��]�fR�VFƔ� Kް�IY��0�4�������z�� 8s�L8ϫm�j�[z=�U7ö�S�3u��M��2���&�d� �B���:��X���<j���YR�/�V.�[U�%@�v�mR�멌&=]�V�y��b����4H�#M�GM'�����Νf����dݑ���t�)�X#��7,4����$�g難�M��2���x�Ofs�) ��7r�<Rb#˫H�)KQ滖���2MQ��ܵʒs����M�FHj�����n;%l�'Y�OJ��ǎ34�D�y�K�[�n����� �J"�s�-&��H���d��7�B�P(3���d�\1GzRV������Kە�9�����mw��E2\�'y��!={�@��ԬW�B�I��M2��$��� U� Y7����Z��+mΓ��J2A7�3���?\J� Vh�I�B�P(3��ȒU�<��^��'�����\Y�_� ��`��V�O���**Ǩng�d?�� {{���*�&���Z�r�����?����[�oV�zX�I[�i�$������t&&� p�6�$��@'ϛ�T��B�P( �����&�&!K���:�)5o��I���T�p��'�]�����L����٤_�_�+o����� �7��YOڊ7��G�Pޠ���,--9,$m��9݂�(����v�`:_�5o��7�Ph6�F� M�IQ(Ӊ2�*�G��U���m�S�M�����d�\��170&�����h`g+�g1��ݧ���x ��̀%^}��B�I�M�o�2I7L'�>o�<�H��1�7��r���� K4���d� :�R�����F��?Z�ҒQ(�iG� &@J�r>jeu�����|������Ȓ��n�aO��>oN�5�J/4�sU=�$G�H�.\����L'm�����a����-&�v2�$�$q� qX�o�T�X�(yS��WZ��Q+f�._1���@�P(��Ls*�S5�Wɺ&�e�u)q�)uܖ0�Dž=%ޖ۱�;X���!�q�¡C�,����&���cǘ�-,H������ ���n���:-����9T��oXG���>+yS $f>��/��z�L4���M��SϘ��o3 �B1M�$(]�2?�\Y��c��$,��ْT9Ҙ�V���䓇=Qw�j@9*<�m=�%�H���Jq~n�f��G}4��f� qX��A�c["U��'-��#��M14`:ydm�<��3a ��ܼy�<~� s����y�P(Ӏ2?�2��sR�:j[Uݲ���`�ݺQ�k��'v� ��Ш�j�(�h�Pߨ��l�'�R�N�*8S h �&e{0��6�7�Nz8*nT��7� �*@1?~��/̛�@~œ�5O�t0�_q��z���r��9����W(�iAN�JQ����&a9�WWcK�n@�W�)-ۍ�%�ӹ!�pj �[�VR'w�0����!� ���#�d�^lL��=�Z�V��l��q�4 ���y� (�čy�q��nb�b�Ià%�7��T����x��=��`F�����s\���;�<a� � ��$AD/Җ+���ʟ��}I�����Y%n� ��+b��3��iF7���]L[1�<o�4�$݈4�D�0��K�U4����L&A���h�&�~ZR�z�[V��Q�32@ y\U���)F ��-x"�P( Ť��l����$Ci�2u�礤.��Lu+냼VJ��~�R�N2�ah�K��}��yi�Ĭ}��'"Mo�'^�a�ԷӧO[,���Wm��$.�{��b��@�@���E�I��V8�2W( �B13Hɒ,OI������9� #�F:�:AIR�W��� o[�[f*P���:vMr�&mk'���Z�G�צ@���y�-�:P߰0�d�If�Է��8������� f�N��8���J�J��[>�T����k�B�P(��aɲ\= �_�FRE"UfzY�\�4xI���!x�π%��T@CЭN �Sl��}��k��V0�d����+p�+���Bu�>�M�l`����&�@q����Dꛩ5��o��qvyG���faM�J( �b�QGM�d(%J sU�c93Hy���ܯ2u�j�&~ye��Q������J��w�3�T��S-��*��8o���5'0%���g͛��q�x;|����7�J�&uN�8*�:u�ŀ%���l#&��j�f�T7d-n��h2 �ͤ�xk�/���~����_ݳ�k�Η��^|�Q( �b�Q���{m�)d�T��%W^vˤ]Y{�,�cf�?q�?V>����Y\Z(F�E�c�b�p�ٹV���ZE��#�e)���d��m9�]��?i�G����:�թ���j��t��)�֓��j���D��ro�}��]���}���%�Yϱo��V��$۶��F�w���.��Y�o��8�aN[1���>yͼ��'��y�-4�T�}���.\p'O�l#�\8���pN4��C��M"UT7���y�{��Ml��O���`��?�N�v�O�Q�P( E��e~g�J�֭2�쥪�]�N`��{�7PI0Cò��1=AL3���93?�f�M�4A�yB������ n^yC�� ��f�!I��3gl��X\tH@�H����lR��ۦsq�+ڤ*o��~�i�w�8��6o��so5 �B�P�8��e��eY���6˔5���c�s��KU8�S�nX�M�؏��v��C����-|$P�`*�ƴ$o�F�Ʌ���#������ e�����-��1ǛL�M�i�����7~7[�qy�\}��Q( �B@eH}��"F��T�~q�"����l'�G�*7y��'��7h�B��U��q;r�H����7����,���VQ� nH�<o nH�F7D��3I��1�۠��۶�����}���xݯ�8{�3��Q( �b�QE�r�H�:&�)��I��)w<Gey�O)�S(݈~f� ���-��Q9+���l�̙3�[��V|XHЍ5 8��A�����[p���[�w�>o��~��_���ɏ?c���/��P�7�B�P�,�F9����唴2�TU^f�)��SԪ����UxS( D�7�<o&�4���$q�ĉ��!�۩S��>�h[,a�I,��@'���_cq�R!W�m?b��9�����!m�B�P(����dݺ�9����L��H��YNQ����'�)y�3�ﰵ�enݺen��'Q����$���&��J`6��^}�n t���cPݐ�m}}�&mvE����%+a�;#"N2�de����C�I;�o�����F�P( E�:� ��l����uS���/[J��kt��͍7B�N�D��χ5�ނB��V|%�l2l#�$�tc;F��HԍH�X�7�M��Qq���u0�a�b�m�Z��GH�_�1ܯ|�?��߉��q�y�w��( �B1c(3-L��ruˎ�E�L���2�dZ�+�$�)�N��&��L��>mڗ�Jd�Wl�'���f˷�J���:w�W�k�en{1����~��i �X˫!��n�uض���ֵk�_:m�ﭟ7�e���5��O�_o<f���V<��D[��b-�f݆�aqq����7ÿc�����k�����j��kÚ�c]�?X��[ޫ�W��MƜ:m�@F��>"N��a�ߛ�&q!�$�7�;w.�o���7�4I�I$�FG�`%Iڀ@�h2�L��8%o��C��R��hi%p �B��1�|�@v�Ԫ��_F�ʶ�H\�2.����1G芥���Q���O�q�JXZίmK���~���C~Y�>��?`��s÷�ek�� ��>Ѻ�u؎�p����G\܁��K���q'��ʺ�K����Іi�MO^�lt�Mܷ~�u�|��'���K3n>e�����{��{}���_�?�'|�4�[��ι�����,\��>�5��'Ss�+�u������m��'�v��@��v�F��X����Y�P����V�eI�[=�M�=����_��y{�n��$S��a���I`A�n7D���$*P}c�7F�$�#d���p�X��,�Ӏ%���_�c���� ��l��~� s��g��ï1k��E�P(���mK�-E/ǵl_�a Ui�0�#���z%/��˞����8�]f�W��}�Uǚ��{�)��G�O#{xgY���麝m���i]j�Vfs���_�y���e�<���I�ܢ��W��|{��櫛��?j?i�V��u�Ϻ�r%۲[9:�mSЕd�ø%���v�;ٰ��Ν�354��������1u�"M4��Yq�1ڤ��b���e�+��$R�F��%eri���}����i���µ��0����2���6[7��B�P(3�2��\�I�OV�s&�/K)Ы~]r'���@�rĴ/|� ��s���0�+��C�1h�>\ٲ�?��Z�{���a�\��qB�z6��M*��5;g�t�Mۅ�{-4ͧ6�6'���i��e�J$q�b�C�܂ͷ�)pI�K���A�m�V�^�r�ku����srH^��mS��\�r>oAuC�I�':^H'O�41`���[$n��T�ⶓ>o1-��)B�H�:\ݹ�V�6�_�������'��g���m��_j4J�B�P��R����(�iȑ�^�A����F��u��������*��^vXώ����4�NR�Sl�W�d+�uK�n��X1���&Y�O�n��X<f�ƖP���j}�ܿp�9G�I6�nZӥ����M����Z�Dg�U��E����H"��?j�ץ秳~��_m�D �_���Zhݫn���h�H�M ` �h�q��{{�G,L&�����oۨ�1�d��$|��:�Fń��M�}������8���m���"T8,0�\y�As╷��{Ẃ��A}W �B�/���2�h8jh���b�/����o��Pן�͆5[�����v]T��d���к���v��1�˵;�[m��&�� ���Яؾ?�#b4���O��^X[3�'�c��^c/om�I�u7Epۄ,QeġYK��wKw��uxW]κ��N���\�|`��'=`y��_���������_iV���7>a�"l&[]����vzfYK�-�/��v.�����PyV�u� nN��j����em�����<ט�.����m�cǎYO�¯B�w� >o��8(�q�c�=�`�I(p()�>��U���w���_���ƿ�o7 �B�P�"�6��6�)��y�M��bm��!���>mծ��Z�s|����n�:���:&i8��v �9���V���r�1۱.���Ba?;u��ߓ��W����~E�h���~9g�c ��k̙N��f<&�����S�B��ΰ�nw�f��ܺmw�i'u�� �X,.Yß,<��v����^� �ntȏ ��X:=�D�t����oܼa��24g���/l=k^�p4���_6��]1�s��Ν�l�d��5I��v1Ѱ}��F$�;�˴���L\!���R�����v��Z⏘�N�����rij+O�VC���@����䱨��8r�H��F��%X��6�}O��dqү�qO�B��LJ�7������$�E�R:�jʌ������?��q[�-�B�P(f��7M�݁���hQ)��W��B�T��!W �~P�iEv脂��ZGp�c�2ש����jwTB,�[�L"'��!v$m[G����;,�2����Z�J��v��5sln��n��֭��#���s�k��Խa����ߞ�����0�����&�1�$��7�M"E� E�_9&���-%n�X���$B}�f���/�����o�B�P(f�G��.�q�&L&�ə��b��F���L�@�:̬sr#9�i$h��G@�1��!�3EG] pq�oؠ��U��ׂ66b:Z��;p�@P��ۈD���z,�MQ2�$�D�ɀ��}��L� �$�P�<9��G��[�{�\��B�ι�2���k|��O�F�P(���h���.v�����\��`r�@���L� �3s��ъ̅�"��q�5X`�O��u-c�_8���&;~n��Z��o�����е����d v�#�u�|�|��ǿ|���?\�lR�د`����UG3I�=�k#�dZ�t*w4�������y��t�ɹ$�ƚI�ӾE�%o���8�ξ���,6�c���3*�B�P(�6z���4�G�Wߴm��ޞ�.��:�aSD��9���9�!g9�v��ř��;�I���e�z�P��u��4b�Bd�v��Gx?7`�7�b��СNC� �B��b�$9�����"U�T�Μ9�����>��$����� � j�hBY��v ��)!n�s E���8nַ�5�y�C����e�n��B�P(�����V�����.,)�<���k���ht����T���[0�lɱ[�L|Y�m���j��摾�ZT�:}sѴsj[�U�Ae�q2�n8'p�����]�8��ܯ��E��Cߨ��Gs!�I�W�J�P�2��ƀ%�{��WޜWނ��I+�.|J1�d؆�r�!]�ޖ��B9�tZ"�M� ʛ_ۨ��L��R�K;`�� ���B�P(�08j��k��F�n?k^$�E��`��5�=�쳖3�8�`���ӧO[D��;�0��c���P��/\�P��q�G��ɂ�u+++la������C���!Ʌ�͛7�0��6�S���(���F,gYccc�.,,����|Ջ��F��w������0�[��nnܸa��H��T�>,շ�8��k���ύ U�A,�ӧ��؇�$�����2ڤ�^פ�$�Af�� �Cܮ���_Q�P( ��v"�@�@�x�1*��27D�'aVݓ���3�"�a��L��D���[�w��\ߒXa��$"ֈH�[(C@�k���tH\<b�����|����O<�6������H�� 1ax�,�u\]aJ�9ܽO RZ��h�l��v�;�ʛ�DAC�e�V\P��Q$57�}u�}��5�eV�DZW�]��p�$��g�ޫ�������aN�8s�Њy��-��7��Ҝ9~h�80o>�� c�v����*�m��0��C��і�U�-���o$o^#�+�$�oz�}��L���^�t �Bo�����ʼn�6��f��I� ��4�k�6ib�nG� �I��o�,A�,�ފ@J=�?��) �B�PL!���H��>�45D8�&ٍ3�6m�W�T�P&|b,|��.(r�����1�߈��� ZA젺Aqö'p���"��#���r牛���5ˣ?����W����?[�l��O[�l���3�hxBx+����Y��憙k6=1��ۛ0����x�g=\ua�)궶�<��ꪋ���K��"̒��s�Ϻ�Xw�o�l3�˺؟�kSB�C����&�}@�m6��.����Z�]�u��,d���5��F�����������]��1��.�o���̟��n����9}��e^��C���@�|� O�Ar@��~kk3�����诉k�Ǻ��������E]���y/��ݫ.�)���6����Qw�����f����}C[� �&����˘\q2�[�8�~�6钥Hԍ$�-�D�P�Crn�~o��q��OR��M�& �B�P�<:VI��ae:j�{�;߹�)��� ����a� n�\1�n0��[0�D�t M�x.�8�I�m�\e��Ay��$���k�=�na@��v�z���m~a6'� WO���a̿�Cc�~ ��_`v���?�1�}���ѩ�����ܷ���յ�u�_<�7b�V��H���a;ú%���-ֵ��c�]��j��p8,��u�}�m���ɣ���g�^�du%��~�yѩC���U��τ��on���xޮ]ه�n��$u�~ͺŽ��u[��!�v�I�D�w��u��s��a͠Ca6�I(nT�Qշ�͑��D��d�Qu�"Aw�ݤ�7�B�P(3�l��Tޘ(7̜3inDaAFߕx���n�ȅ��W�,���\�@�ؠ��7�.]210B�1E�Iv$��H�M�^u�7o�,* ��¤�m=�]�n$pm�á&��v��E��-T��yr5���(7��ŭP���P��ź���O]�^� ��m�m���Xwc](M��\��źQ���!օ���mƺ.�9�j7֥���J�Ȍ*E�NP��D�W�@T�zՅJ�8�7[�-sh�ChP���� ��зE+mʗTĺPʨv՝k��ꢿGY���^u�c]��s�y��[�.�/��F|?�.K���w�P�l�7,��)S�o��I���C$m4��CA�~��4 _7�M��1hI����&~w�* ��:�7JS( �B��m�I1��e��8^@�P��a@�k�ϛ'n��$�Ba��cǎ䎂OM��!H�8� Er�� �IC�g*q#��-�*`��Y�6��A,��"��\�5� �� SC�ȋ߇��f�PI:�3�g�MQ=�L�n����6�ۮkc]��9Q�0#d]��gDF��]օڈ{�ul��1ad�[�.�m�ڝ�# �DX���bݭN]�Y7����h��jy��4�/����n�3�C��m����on�m.�.& �>oK��]u{��]|?j�E����n6��cx��M���q.iwP �>�و`��%�y�dM��J� P�e�I�v`�Q&CL&1��Ti_��7%o �B�P(f $OEA:x"iC�&�8{�L���9���$(o(��0Z\��C����Ā%�us^}�!��7�K�ƈ���-��H�j)nĊ?�}������A7��t��;�.��y��i`����.�-Q7>������ۮ+����E�vU]��]��O�d�}`]�i%�|�3�|]�����a�Q��ԍ�=yy��-�e�xw�Ys�zg9v`�<���!`��ҁpn�>���.ﵬy;>�F��튿�|�m�n�~����w���-A`2 ���瘌�yނ�?W>o�=�oL'|(7��$Ks�.��lR�P( �L@����sc_(nT�,� ]�'l�8 �@�h�H3E �nQ�y�¶���Cl7b���>�4����������5�٤�V��u�@S`{�m��o]4�����o!\ )�B �Bg��M����ݞ/��.� !��@���; J3��b��s1�ot�Q7p(�ݎv٩�>�T�S������n8��ň��.�}H���s]�Ѯ|.���ۅ��h�����\|.�n�9t��h}�%����{��X17o�0G/����9�Y90"N�}9|����:>hx����k�3�j�����`��i�X3�}�w-���6½ʿ9�����~���N<C��͛���D�_wn��s ���:�}����t�ˡ,N��&����d�s�L��@��#q�E��L��j��Yi�Y�(T�P( �b�!��1B��H��'���d��r�`�^�M�� D�S���\oP �Ug�,q�ʽ�hA��VD��y�B���h>�c�IZTy�b~���~�M*�0�dM-�*B��D��`�I� db�I� d�&i2&�ϛ;w�C�|�P��F |LЍ`%�������HO@Bg:*�U�I�B�P(�*p�V���器��5�@� �����'K 7?h&q��U0�b�n� 1lCy���I�n~AbnF���y�栢��KL'-@�%�TހA�)�0��2� 7��ғ6D,�"7bmm����PްO�74 nL`"K�L[7��⤿��6Y�o�4��Q/��٤B�P(��A�*�H�i�̜���D�@�"�#�����ߛ���=��@�`: G������}����Y�m2��&1(�ɤ� j�7�@F�4��@��m���.����5��� �Oۈ�D���K�f@��� ���'�m!��_9�6��x��I���:ֺ��Ayc%a��V��) �B�� pV{;�R�. �~�_�Itc��0���F�7"�y+�0I7��1Iw��.�#�$��2����٤�f���0��$.,q�|Ҙn���b�F۵U}S(� b��&�y�w�o�ɻq�J��`��b�"?$��"L�k�PJ�F_�P��}�WɛB�P(��E$q��Is�ƙr*p8� 4�dp�@�Am҂�$i�$R��!��A#�bH����!�d<�X�ׁ́��t2*o0�tq�0���[�v.ЂB1��d��ȯm�M��!`�ŋe���M�4�&a6����+d�&���dP�8I��u�>�� �B�P(f� WI�I�@l���I�I�0�NB?�1�Â�tL�M3H�ca -�o,G�P��7���&CS n؈&�;Fy4��J $�n��B��� X0�b��5��7���� n�7���%L� N��>�7��`��?�@��n��wT�R��ʛB�P(��B�4 )�~Ӵ���1�rE"�(����� "NZ��� Qw��Y�@&Y n�l?�#E�'p.&�."D�5:�c�=�Yk���f�$� �,��ի�E��]����{��F���� u�*K��f�[@l�\o�|+y��ް�-7����) �B���%���`P��E�H�,s�A���L�>f�H�+|�B�(���݀yg�A��nT�h2�7�#�$T8l3�$�I�AW�6�� ��MU����c~�A�I�㤊��y� @A��t�Pe`:M�i�좟,׆�@��BG�mi*)v��M�P( ��"M��&%U��F�ɈP7�Mژ�)�ž����_)CD;��s��pH������'�/'�y-l���t�������=��~cӜ�p�,�7��z�(&�nm�Vۙ��<d�xO���t��,�����2�Yc8GD��9�B}�nP��)��bc�I�6�P( �b�!S�@��a���|g��+D����� S(ά�t5����*�؇���mma�=�Q�"f�/_��!���H�7m2�Y, �0`I$sa� ▤�&��'���6̕g��sO��j(�� �?���Vk8|{0�$A�i<�JN��"b$�Ȳ��F��4U�u��*?w5�+a���HB�D�B�P(��b�C�*mr0�[W7�2�24?�F����(g�I6lSQ��Xc���0��]�9ݼ��4�/�?�� �X�8 �����_�m�-���cM/<��+�9J�S�/<����9�{�=��5�w��!E��v?�E���`6)ˠ��9s�~ofT+�4 �� ����P��/�*o �B�P(f]ʘ��J�L���ꛋ3�f��q�@��a�~0~�WD�4�t���d3�PޘA�H�.�ǘ�-��5P~nP�"��?~nH�wk�0���J�S��>M{�z� BHp��1F�d�n,1�4 �hLր�~�'$�2�� 78��8Q��6��x���f� �B�P(i0NscD� tIܨ�ф�!�8i6�``^����3�L@�\o�f�§-���t�e�t2���`��[0�d��&77[}��i���jA����{��$�%���?>�>���A��T!$n�7�>�2&����~_�D [��wK��_�B�P(��I�a0��&M�O%�$AK,皧� ��<�h� a�{�}a�7�L��� �m���-�����arn��ZP���(�,� �\17(e:�@%�zշPf�lč����Z�v@Տm}m�s����UyS( �B1s��Cu�H��G�Ilc�EU,�pb^�p�'Xŀ���-(p�Q}`�u� R`�ʕ+�Q�s �2��_�e��VҕT�/�h>Y�3]U�aR��O=cN����]^>س��P(r� �%i�;%�BbnÜ�1������¦p<� (&����0�l�7&0����y�*'ZԐY�P( �L ��'�b�%ˀ%\ �7#��`�v��A���̨����0�~lX�7&�F-�d���_�ē8�|o1�$��X&������'��K��?�+` R`����c�~�-� Q?�C?n��n��S����H��W�'>��@���W���|�E�c�?�^��W�h����T��}���۾&���= �N?K��I��ƀ% p��[ p����$E�à%4���2\��^�v�L���,Q( �B�0�I����EHn�z?��á��Pu����1�d��p���3��+n ���d�!A7��!��`���~��f�1�d�'|����b��[�2j[T�B�L�$�h6�f��]G�5�=�z��˼�%/0���2��Ꮩo��������?�l=��Yޅ@�P��|����̿�j�;<)����?�;E8����� ��'���)ySԂH�]�,�~c����AI��&��=��7G��ic�76��-�۶��>o �B�P(f ��&41�����1��K�Y��B0����h:��w��(n..1v ����TR�#��F��0��ߛL� ���%l+,�.��!��H}�@�~�}��|����X�\=%��}^9됴g����\(j�}��~y"l3��cxJԿ/�o��0�<�? �K=�N�2����I�Da�ElCu�,m�(���o�0�D:|����A���("��ꆵ���Xbb���>��P( �bf r����K�5U7�.�H�<���fe��M��-�N��tP�"B�n��ЧF~o�yC�`6 N�$.\ëo�,�Nv�o��A�M�p��'Iw@M^��z���a ���]��&��| �M\�~k�O۵�7w�˵�+S(R A7r�q��9��s�%��h6Y(nXs"'���j����-���^bE���>+yS( �B1sfJ�5o H�`�ܩ<�tŠ+.a��b�>o�����̽.��l?�%X #qy�p�|߰F�I�=��VD�������&i۾e�6#����?�\C-[Y^�y�K�1�<V�dH�C�S(���D`��c-��`ns7�� M�#�<7G�jF��'�#NR��o�����٤B�P(���L����6!�Ȱ߱>�-���Yy(om����w&�2|�0x�� ��H��d8�ׁ�&�&�y1QwW�r7��ذ���M�鍯 �X��瞻=�ꨌ V�Bw��d��aA�֥ w�=wu��r$!`J���`'��(u |�� �Sy÷�$�0�ĚI�=Yc�6���������F҆ $,�7� ��) �B��)��g�i��ni�7�3��|����sa�������w� ŎCe�0` ��d�!M@�␒� ��@b6���s.�Kty���!qZ�Ċ�h q��g����W�"(r�6�z_��L���K�8"�$�;�"��x�m_��<��!I��b�:/A��?��gB�I��HШ������o|_����h�#N�l*<����T���F�-q1E��I"��i��B�P( B�%���f�h�0�k�i0Q$I�l<։餕�b�ɮt�/.�~oE�.)@���� �b�����?��_�-���(S�|�TqM��F`F)�LD/�_�A�H�*f�� ��䡣kkkA�F !��" �<c��%���-7,!y��7�m�6��`R�'a6��R��Z��eI��7�B�P(3��q���&��B�|��X0�}ߺr�1�$Է�� 7*p�X$pUؕ+WB�h>���[P࠾y�ֈ��y��P�@�"�k�f�K��O����7�b��y{��>�m��z�(��ߍĉ \��t��͉�H��[@�p<���m���o0��[X�Jԭ>o �B�P(f"�~�$n#�1�7g�qc��k I�4�݊�$-�I<0�f����Ô�:i:�� u����I�~o��a�F�d�����B����O7�70�iU���'i��4������ �����d��"��V0� (yS( �B13��!L�T�0_�)�ЄD�(9��Yvκ�TP�J< �[��uH�"̳�I�c���Q��D���>��혨�Ť��D��" CS�~ E��}���č��|�7���V�|��o���~n�M���'����D;�[Z�K�V( �B13�؈%Fw�� �8�b48����)��5l$p��a��6�M&�� Z��-Q�C��t �n$n7nܐ���D�ŵ�����;&�v-3�l ����olcB+����?Ui2�7� ��Ɣ!T�p>~;0�#S���� %T��߱J� �B�P�H�I�d��%ǚ�s��d�f�~&��!` f陵"}�� D�D��\��r�1mI�Wߐ*�H��7�8'�F2����[c(P��� m ]P�O�B9�7yTv�$��g�1�q�ǂ�Q��շ�I�M��) �B��9H�I��F�I���yU�H�̀%&�|N�f�Yy�Kd���_��L?��$ �� h f����ؗ����$�5�ꛣ��xu0?�4���t���H܊�X�rL����.�7|��8N�p"�*�q� ��b�k7�cW���T�) �B���d2*n�x��|�;4c���Sb�8l� �~1h���MbP���cPwss��kwl�"���$M��nuuՊ�oLڽ��\�oL�� ���VR.a0�D��9;W��-�7�憒7�tac�m���3�u9r�y��]���H�����[8N�I|o�2I�0���8!T���wG�y�J��P( �b& �@qC�Ils `@�&�M�����aP抁��D��y�L>�T�0ۏm��!h �x��$qC�H�B?�F�42��H�|��d�5\-�,/ϛ�.�0 Ŵ�K7͑�����w�I��IDV�U��� ��p�K0I"��I?�S�_�7�XK_7lS}�?.�Ჾ��P( �b& �ߚ4"�DQ' N���. �3X��9?��L��']L�͋_��c�؎f�r�?���`�P��@��JU8D�� �&��y��ȁ@ސk��B_��B����l���n�������B?�?�d��ȰX��F�9�m;�&��~#�&��A1X�K����$?�ĢJ�7%o �B�P(frV�Li�7 nc��2��A�b�&�F���E��p��,�Nb�:�0�D����-D���$I&��|��N���BA�;�`��am���I�u�$�0E�~c�+jF��L��7̩����``~7|�19w�^��Z�x���B;N�@Y*;�@}c~7N��#���o6%m�͉�I�t���)�B�P(3�nV�R�\L0y��$e��P�0����2�Ob;:��Вȡ/r;.� q���r�q=O�X�./�>�D��z�G�V����'��߾�~�σ�)�(�/{�9k�,��A�Ν;gh2 3hN�0%�[̩X(o1]@�oc��a�Z�l��A��>�b�n�yS( �B��* .E��a�e͞8K�7�'0�� �[4�2��0Hdd;� @T�B9�6,��kP�� nHPyc�V��R���~OH��BiC�I7Y�� 7��9I���>�o�3H0�&�c�� { 5�T( �B1��aS�3�� pa�f�tE�'���5T-����-f�1c����҇�aȃ��b8r��a���� /Y]]�/��\�{� '��Qy�K@�-���ŕBQ~�F�-J�@D�g~G��&M���Ũ��Pە&@K�ɤF�T( �B�0�"'�J���u1x�����9��Yw���.�b,�C�/f����G������!�<������ ��P("��lj�"�?�sӜ�yT���?M����� ��Ayc��V����&��ǩG�n%o �B�P(f ;b`T�p���1���f�1Ú$N�9�#b&���1K�X����-�$.]E�7�p�� @�7���d���Dʮ����B������B�lj[�"�e25��@�IL�0I�P���&�M��lR�P( ��`�n�*�Է�G3��* Z�7&�&���B���@!�R�L��ްFԻ@��a� e(�~��c�8�O���~��&0��t�V[�F*���"=7�$|7~ҥ�����|I��~oa��n'�p��wQn��n�v��*��P( �bf�mA�,|O��5Qє2.a�]�$U7������ �Ʋq�п��4ɲ\����D��� �6��ač�f�M����oT�>���z���ͫF��q\�v�w���%�R�7����,ta��7wN�H0�'{ ki� $�q�5��P( �B��uP�0����^Jܰ�g��c�vvc �I��cp�, �k\�t�!mr�������b��h���ް�ɺ�rl#� �����ūg>w�g/_Y7 Ŭ��/]��~D�`��o�0��.R� 0��wm2�/��ꆅ�=~s�ߨϛB�P( E��a:�M�fE �"�w�P���}��$s�af�v���l�����~����<���1m���&�!�vA�`:�}$�f�h:� R��F�7��U?�_>��_|��M�P�Zmg�|����������N� �ݰ �I��f�F �n��A��#-�&Aܠ�aM�I�����*��ؕAC�* �B�� �)*n��[��2u��~+~��`�o���� @�n7���� )@�08dڀ4i7L'A�b����ɧLn����w��&n��y��p���p�?����/<�������/n�ƪQ(�1�Z�+�77���>���{��d�!�[Lq|��u�r�����&�P�Ҁ%�Pa6�FH #ڒ���1e&��Yw��)yS( �B1+ �*��b�ܮ(�$q���p�=�X7*�@�O���q�vL`�&��~0iI�d9��q=D�C�E�7� ��%x�>�[�F������c[]��~�����ܖϷ��yfcc��z�m�Xc�o�vܐ)GY�Nl��m֕H���A!r�L�����W`�=厥}����W���?�.N�+�NE�z�2�o���k��5�OAF�M���؎� ���w�P�Y�t����.�A��6�x=�����6��xS�I3�=�s"=�a�ɔ�����V0@ �&�O'kd��8��L'�lR�P( Ŭ��s��q1ۍ��LL`�@��Ay�3��S0�,�0�&1 ��>|k�:@j�7���r/�z�j(c�7�B�7��a� �GJ�>D�AL��[���i�c�9��m�m�c��%�q���8���c�L���L���rq�1`vq;ԏu�6c�6�>�A=��v�e�v�B_�2���a=����z�M����Ľ��ťuH��1#������P ;��};�3��[��i!�'�΅}����p-LI�R���3p�ȋ(+|7�BP�L��o��I�}��J���I'��������9�⤐Kh�{$�pˠʛB�P(��AT��əN2h �<G�N�(�ƨ�4���$���[0���o]����0�]1���i0�P >��N�B�kĴ�����Y�P��� �������F���m**V�1x�Q��uX.�E��PA$��?(tQ�"�wE��� ��ю�{$*&�yL^S*Y&�K攰 �*�Q�=�=y��+�J��Z���Q�>$ i�w1�Jk��TEK���J+�2I܌�,0q��D���"7!���նbR��G<�@ڀ������0ف�?��qя�ȱ��);�J��=����b2��e~G.� �r�v��.���O�#0]� n�AJ� �B�P��JI� Q��'���a�Ds'Τ��A��~oM9��>oX�l?@�7�c0���$p�Z p��P��o҄�t|�v6�Nb*��Iڰ�N�Se4��훝hPy��"�]|.E.+A�\�3��$c�Ӻ��$$E�<����V�ˉv�k��M�+�7�y���qN���W�Ƕ�*+w�u�Y\� �B}*�(M# a"iD{�Q]4�m��I����ɜ�f[msB�㤌�*�c� �ߗPϋȯ1�[h� @��8�⨞ o2l�dR�3��I��;D�I1�TJ��=�B�P(�u3�d:C�5\$n�Y�a��>p1u@P�0��~F�Č>�\�F ��� ����f�lK���M�R���8�,���#}��*Ҧ�r_m���<�tH���d.���s?��2�K�h�id�x�⸼\��$U�b�$�؆�f�F���I�.�_�Lҷ�ڢ���&��$O�M|�m�M�>L/�6�g�e�����%�o'}q���]��3U�B]�߭�fT��yLiU��w��v$n� O��Ru�迣6�L%�vL�c^��>���I,�6�% m�f�����]VF�D[0���#K�?K0���3H�퉻����P( �bf �7��5dt7��s;�n8���$nR0h tL��O�C�#h��ٷ�<�����^�m�|!�$L'�\�Ⱆ�[@�>H.1��G��:F�4��0h��MD�B=1¼���BȨcR���dEp���R� �V&�eR J���`H��l��]��ԄP�[�cq_���1��a�T�Jۑ�.LR��뻌�X�B�+�M�st�3H�۹P�8��U���v(p���w(ql3*n�I[$lk������ p���T�BU7�>��0 sI(�~� �&�]�m���s��E2j�+�K��2I�I���ce��� @T�e4��) �B��Et���A��ɺ��s9#q��Ai:�7��c�ym��C�� p�ąz�A9�7枊�[8�� ��·۸>�#�y���3`P��h��h��~��B�<R=� ��$v1�E[���ŀ'U Aڂ@p0/U�B �I�:� `��%�d� �'����D�*���ejdr��u�^�[��ڥ�m�U<�6��R�-��lX֎�e�r���h�ž�tT��"|ڊ�9i߄�,eG7�K�����0��oh�P�����HBM&�7"��jU7���$nr����c[�7&����7 �٘����� D.N�d���M�P( �̀�$�;�D.�1���9�0�N?���))*o~�0`c�n��4K��� 0��[���o�T�AI�C�� �Ɗ�/|�8��P3�zH#Q��u �� �m+~3�_����/�2�����D��Ų��٩�t�V�0CN�qI�RS�vj�)�7��$ U;C؊~�&�i�D;�9Jڗ��A��NX���/�h�*�o����ěO��♠��L�E$��� ���B'�|G���f����!�*�mN�0&����U7�K�d��/\�%������9\�'��|6P��� ��o�o���"$ �P�#A+y�PL�-�ʠ�M�P( �L�3���'�e��$�[ᯂYu�oLԍm�c@'M�8��Y|� �d����+������w�R� b��b�I'C�����n�ì�� ��B���MB��!�cyA9H�:�{� >&�jE[�?���^�/ � �k��|��I@�-�/�Ie0��E"Y?n��j�(E���h�D}��ź�%,H"�7�%����<&�]F��NJv��%ϴ �Be �i�t;5�=ޑ��D-�cmF���g���T��%A�-��Ȓ�G�&� �$�~0��6�)L��A�bj�}��9�I�P�a.M����[� �@n�%Uڀ8�D��P�,�*�>o �B�P(fbP��Mg��|�$�C��:��4�d�{*����� \�>N�|e@�m"�pr�$��z���W�S���DBoÄ�|���dDJ�s%���/�H_9>Y���o�,K|�v�'� �K�S��vs��!��6]�,ڒ�q��^b;;�K��i�5�+���[�F�\�>�+��x'��gIF6520�1E�"ar�2�$�ܰ��Rm� ����XCm+�,�5&J���3-��$�F�4S�f�8�f���l�7��O��ߠ�/�V$R�M�P( ��@�5aAUrf\�T�h1�\Q�ȓ�Ơ��=@���h>�5@�"}�`�� ~0؆z���4���t�_ ?�mS�� �gT�b�C_"ۉNY���R=1�*�ϭP�b_���0L�M�H�\"���/Q/�o����*�M�.�-�~��ium�}���TPڔj%��K(��L�|�v�3ke��Ҩz�eE��*ʿ���X��ߟ~�(�9$�Y$�9���%n���c-_Ce8���]� R����� ��B7�D7#�I|��LQ��E�� N ���[��1 m� 3h��������BɛB�P(��D$�!��_�~�2G�I�La�A��}c]�0s����T����0�d1�ێ��F���eJi�Z!�Ô�� q;�q�L��nB��H��F�I���\�d.;��I%O��H�ˀԌ��$:�aylϘn�����c1�}[(U�l�}�Q2�2��6��}�Xcv���VA��}X�|�sK�mĹ�9�F9����&���7�����l'�d����?�����:�!�� ���֑�%�[4�t��%��|�!��1HIWSL`� ��&�DN��L�ߎLP�}k��$S�٤B�P(��D:`��+��&O)�Kv#}r~�M� bV?q��ͷ$qaB�J9��P��hGo��㕅` �H�H��ۈ��ƨ|ŽB5��"�@�)�Ҕ���Y�X��$��1�4,7��],�ҤN��2��.=&�I�紝�1۴�I�v��t���%�E��7D2�T ]�(�K,�I�ƈg�<'�`�{�z�K����&�4���!�C�4��g�2�Pys��3��1P��N��"0 &7�D��g�����P#K�-�<�qC�|�@��[|�E�I����ɔ���������Q( �B��A�f�1C.�%S҆m���B�Oغ��R�7�1 �C�I 8�p� J?���S�ղx��E8�<p�CpO��y q�D)}�8�6�ɜoi����Av��B�����~XKR���������.���dB��:]�o&O�RHb꧄��戟�?﵋l�DK�+C�RBkb�B�_��҈w@�-��u��Q����{���~�D����� ���S$�6By��-�K$�61�O���$�NX3 G$m�!������ @����=�\��!Pɽ���Q�O3I��C��M%�I"��yS�I�B�P(3 �*a�7�W�M�P�4�lH�I�9;��_�� �*�I�\"*�/|��E���5��iJ)�À��Qqs�l�H��8�$�)�Ƕ�`]8�r��2�[f��pR43&�B-s�n�e4[���q�����#�!�>�3�X�y��}�M؊<e��K�sޏ��g�E���g��t:Q�ɾ�kt�3�%�̈� �Y<c��$|�p,�]l$,��-��O)��G�������ꊀ$E�6��|g��oP��#K�P��f��6|EcJ#}H �V�d �=y�m�V㤋%��7�5�6(�؏�I�D���a��F.aw��Jm��P( �b&!"�q�p�� �\M"iw�NP�Hޘ� �y��� �3g΄5HM#� �0#Pʾ��T�خ?�`�J\bJ�0�.��m$����E��~�^i|�ח�+#�+�%���ș�M���k9�M��QL�G�g;i��?�J$�����,O��{@[$<�ܴmi�(#F��%��;ΓύJ)�G>{Y_���TZS$o�C����FB��F�j��$l��+W���L8��@p��F�}�/��&� � șKb-�Q'M%1)Ô "������mm����dqC�қ�%o �B�P(fIЀ"H ͛ʔ7l�� q��cF��\L�[X=��k�NJ�,�1��c�sa>�����d�@� �Y�NT8Ҳ�nL��u(d��xٸ���H���Z�^��%I]���P��Csl���[/Ӵ��r�ry��5�� �i}ij����[�丕���i��MK�J�MH����lJ/�Yp�C:O�QU�խ�)w�H� ���<7ko�P���D�U��Y=�����|���s�)��ɴ�D��9*Շ�")i�}d�����65Iڞ���w�?6nr�#č#�$'m����o[vn����/H��s#�/�� � ~V,�%6V���"lJ���1ӑP�6���@$N�;�U�}O~t�� P�![�P��m������n�t�_'n���R� �~�?�𐽐~��f�H �j���h�T)OҤ^)U��q_�������L��R�"=�a�y�x�E0�"�pl��5W�8P��G�焳����t�Q����]ꄗ��XG�yz�>?/�烶�ܜG 5�5�X�>B�<�:����ke�k�!�J��T#�w��k�E��Qk�5<+��-�V�,UI]�c��ً"���Vл�&Re.I�=j�"m:J�&�։���.e3G%|Z�g����� �-� ��˾��,M{6S�$�tfq#��x���!ycC�%NL��+u�*�@$N���Z�����Æ��M������A?l�L mz�<Z��C"�6r�����!ױ��W$o<�h�_�E2���hq�DN�������a#T���˘��c\��"�J�-ʒ��]m���p;A�o��=��i*���� 澮m�VLJ��$�6��q���EȈ�6�t�n���9����v:�"a3�6lm���QP(I���S:�6�Ya6�mhى��C�& m�{'�� �1Rs.��b�q��m�[�F>��Y�H�9��Yɜ�AA�S�������q&��Ԣ8W:v.]�J�>m�v���Oҷ�L^b�i�I��O*�����eօ�� %0=Q��$����7�7y~��i��&�T*��� 5����I������ɋ &vs%�;\����z�t��i�G��Eus���ؠ�{���5}zU��u�#����yvuzy��9��Y*���B�;��i}@��˾r��u��Z�H�� �q�IR鵮O���qJ��,��My�2 *��L�cKg��z(�/����v~���&Cނ � �iQ�&�?� p(#NKZ��y���n���fZm!{KS_�!kN�܉ A�Q�Ա��96�J{ޟį샦���hs��n}.��o���b'gdnn�U�Ʀ��'���^�I����m�H�$��NoWg�>G��Q�Ĥ�o�ણ��_D�n<��O魾O��v�2�K>���yb�{���w!됴�n/�ߕӈ�\e�6��$kIt����%�&�1Ć�m̭�qӑ�=��PR���)ޭ�p�������S�Ԣ�nsT�|�qgFN�j|�*�b�6�Q�� �ৄyh�dw���E8'nl��5�V�o+ޛ;@�歼��|�@��;�o���6��.T����\$N����)���=7��()������T�hg�ɕD5�e�4� � V�J3���J&�v��ǻ��۲ S�|X�Q}��<Z�K=���>��]�z�>W��RE}�8�>�9�Ǟ�验��z>Hv�u��\�?���g���|�OV��ſ~�P��� ��!��\��S֧nh�J�l��M�_~y��A������H��+]Cܞ�털 z!n@*�u\!@�]��N�*t�8W��d�!n�[�_#� ���ŒX�f�<6�,�an��:�*�u��$�}u]vo�:9���Z�'��MI�6��Ʊ)}��Y��*D���p�>J�L�QR�i3|�r���TW�{gW�T,O�*K*��� �����\��T�G#���zv�I����\M�r;յ� �� 䈰�Ry=����,fiS�S�OvP�Z��}n�Gç9����#.��ɳ�v�}��n_ɘV>�1Aj�R�5y�*�ضi��"�����F��z��A��١'�{��9a z�Q5I��Cԇ�E�y}�?��oG��27�v��'�W��dA?%P��*����)=�j�N��H��8Qڤ���k<ݍ"Q ! IMsfrH��i�mK�R!��� ��k�,/}��d�I�VR�Ԇ�0�k�mjlE��}m�M�0�6��W��O���"$���p��i�]R�Rӻ�?���$iF�v�{�-�܍cח������#V�z��Ե���أUީ�x�5��_�N�e�f�k��_<V�\�|dZ��� ݤm`��;���ޭ�q����$%��nE�]l7{�/���5fb���E�V��1Bނ � ���C���s8�{��F�o]���FH��d��%)\m.6���I��m����[��A��Æ��6�Gm�%��ؽ� �7�B��P@R��MM�p��N,:1hNT�������<���${��l��\ڂ�Z��J�F%�Ϯ/��=}�~X��Ʈ^f>��^���3��N$v�̟�ۥ����|���꼫C�w��˜�WU���q.�4*ƨFr��h1�II�Bw��)�h��t{E�|�=�W�m��,���ky� �ৄm�/��E��/rg6pKMj��f\@�Ƶ6� x�v�u�sOQ 9C!"��t9w^"H*�c8I5��FZdN�N�D����p5˒�-u8�s����%w�-R@�N�t.r��K[`ݓz1����νަ����3'�<�~[�j�˻�Eo��ux���+}�)�njQ%�WG�[�;s��،���L��i�:���gaB��d�m�!a�6A�ͯ�(9J]��Sz��G�#3�U����MO��t�.����d����;/��c����}��-�-� ��}��R���#q�Jz��~ ��� 5,�Ŗ✍$�9��Խ�|A��U��u�m���J�$u9�p9m��R�Fo��^���P�4)˅�9 �8����8ȯsS�D�+�x'emw�����Q �p7��}�ܹ�Wߜ���]���g'`6'���5'}�yQ��ID^]ҳo���*G9���+[6�#����{2�H��( m�i���s�wEGޝ'���H�P���K�<���@O��g��I����j� �&� � �)���6�3]_я�;o�?lS��\y��?���\��M�ɑ|��C@HARS�Z)Eܤ.&���OG�7�#����X�4��6���H�j�e�wA�[%��8���C �D¢ |����=�y��".*+ r��0o�J#ȸ�+b1� ���}���I[^^������bI����99��G>������q'1�n]�\0WEO������V�u��d��^�9�q�؇{~�٪|y/�9�eQ�|���Dش�Dശt^6��N��&!>!lNܔG=���`�H��}�� �&aӺ�s����KB� n:"qؼ!y?ޱ����c��8��7�Y~AA�I8.�<��s'&$K�'Y{C���D�:�81���U���p��'J�zl8T)�Em~Q��QWQs�8��g��>N 8@-Nꖨ]�.�m�.���}O�פ9��RC�y�åc��R�W}��]��>�ag{����Z��i~��� �v�c_?u�6לK�D�$)� ���6�h[кw���6��x���"h��m��]<�7Ț��T%S%��&�.���-� ��Хp:v�Ƒs'n�|�9^(��˽H��8���@ظ��8T�}ӦU�76 I\��ʡ�6�.� ��6�J^/��8$ṙ�����L��۲c*��!qy���H�|�%��N��(��Zct�u�" 9��"��AzH_�y[����mT?����=�2�� AT]^w�J�{À���t����������D��'�Ú7$�䃸��S�~��:�[$k��p��k���E�J��o[�5����� nzw n:J]Y��wK�Xn��Hٺ�M�MG�u�Gb�#iJ��pg&�7 �� � �q��|��{8p|��@��T)Owf��q�P�Jm. �͆SG��U8��N ���`W��� "s� !�s�8�/�����% A� xIM.�H�,vM��.�� ew��8�$~FƆ��k�� v�%�;w�D��vy��]=w�{}����wi��w���i>]"۟�_��]�vll�C�ܪ��9��k�w'#"c�K�Dؤ�K�mԂ�;Wұy�m��Q�Դ5�$��@Mx0���p4�س�.,��u4,�� � ��I;<����s�M^���,>7���l%p@�͒ �.�D� ��&�aO��&]��V�B�d6��i�C�k��_o�C�M�����҉���\�ǯ�ؒ� �Cr��H�(?]s�ӑ�|�gI!%H��ϟ�I^�I��:z^����=�C����" ������x�z��Xy�a7�>n�6i>�)I�@zVeV]�>�u�~�z a+'$�\G}L( �G�OW��(�Zv5I�{»�#1�\}����$n:�.�j�z��D�%E]:Y��LJ��W�Bނ � �����^�O�92!/;_�uԆi�6����9�o"q� y�(����\G9a�j���7�:��!�om�E��;�'u�. ʼ��6ۥK����=�q��{��Č�l�@�s�"{x\�Sk�2�s�D\ֻ�Pu�)ql�[ ���Fp�K���������qQ�͟�z�+��y�_�Y���������7B�|knX+Z;��{�xl��к�9jl'�S���G�n���ֹH[�u���1���o�7��!AY\��{�t;7�������k$s�>����^�� y� � � �ئ�ݽMv�Jʸ LS��j�ؼ��IB)h�k�:��n霍kI"�g=mt���Ũ�����N<Vbwd8KJ27�&�{@�<��|���S�.�ӱ��{���+�"��I� �N>����9����������� 7�c�/�s!A��0������?��꼴U�3��ԏrJg�5W����eO� k>8?�|Jźz���/���@�5��[e�Z�S�Wk'�4A뷤˃��B�J�'mz�+27ǣk��\]�\�΄�xn&]?����ᶱ���(�Y����-� �`���Է6YG���k���D���x{l(�Y�XR�FIzł�=��\$.i��7mfq�������y�8KI9VZI>8H��;��L=��l�w�z<��F~{,0�u=ޝ���c���������j������ �I��K]�WD��^��Ws�����C�c�T���m-� �p�^�U�Kx�n�l=�6@��w�P�r�i�.��c��.�J��U%� \�=���!oAA �.}~1�q ���<�]�U�+���6������,5��+}��Z�979�DXp�y�Ģ���ɥ�q� 4(��$���`��}�<aG��Wi���˹�'my]�EPu�rRG�~�� u����p�{NZ{}>�PNs����Z�HO{?^�-o{7���9&����N�8W~�7��X�4�O_�8��u����l�D��y�xo�5�^��Y�?���]X�oy���ZU��� � ��c3k٭H��vo�T�L]�:��Q?�%�B�f��\�{�6�� ���� N<��#��qg��}�z8�'�6s�?�����6��y�pAy�`��vN�/��W���Ne�-��=ӧ:�쭰�R���^?]��V�y���P��~̺��#y���TS��9V;�Ϻ�3�f^h�9`�ɯ�>�nw�R<�/���؉�����9�ӟ��0[5�k�H}��.�ˎm4l8u�đ��ㄤl��!eC��j��ޡ�����q����쪒zqR�_���r>�o���[AAC�[۔�E��G��x.І��u/v���NM���SB��p�C N`�A� �p���$�I��0�y�S���>Zu�{J?�p��:����i;���zyW��i^�����*���P�ӹ$J"&��ޖH��0 u�� y�`���xv}�^�NqW�.�5�ٵۥ�~�%�<s�h"h�K�z�z�PpY7�Ցu�z�\eQpW�Z�G �"��|)�6��G:�p���Z4聸��?��'ߏ@$oAA�6E�]�EǾ�����lHQ���l�V}���Z�6�"nڠJҀ�Ju�6�n'7��M�wJ$�#� �c#�M�6ܺ��s��o")H��,#B�9'�Ҕ�T�k�8��E����y�7$BՇӼm����1�L�ߔ(��Q/���U�:���X{���1�x����C���Y�c-?��S�I�9�~�\�5�k~���g�k��u�L{h� =�T͝�i��Z;H����g�~:q+=뚰�`Q�����9ud�nz�x�D�L���ws'1o�"��?*L��~"y� � �ա����_ڷu����7��Lv�@��d�lj���%���v�z���o�A���;^-q��Q�Yj��t��8:It�Tgչ���9���݉K��%����?���0�ݸ��v|>v����c5�5L��\� R4�1>�>Vm$��xk��ږD����Kj=ߥ�� �I�VY�TϏ3�7��H�~��d$oAA N�*L�i�PK��<-�����(O�8D�����U9�H��)ò�� �rB�w��fS��6��甊���]�PΤu����6��#vD�@�Q�����o �K��$ejI���a��E���c��/RI�AF�(�X�#<+_9� �n��Q���z\����1�a��������I�j���a�V�OW6_g:��Z���������M�=�z/�=�SL�5]��]#ms�B��y��w���v6�� !oAA��F��Z���?�&���ۿ̟�p5����Mm(OzlD�zJp�@pa���7��IGŒt9��<n��;����.�nۘ�sk<��!*HA���z��-uN�S��AZ���k�G����i�`j{�|� �!�{3"��T?=��D�v�3���w�2ʋ�1��@Θo��1�T��h8��N��<H�:A�̱��"��/��t�$�#���x����{a�k�i�v�:���G��� ���M�-�G'i7���Hނ � ~/��/��;I�⿹��6���K�I}���I�N�#�Yƥ�;�xv.�udC�%R���U��t-�J�e����7�5��<w�46�"����H�_'��'3����h\�%�y�s�n�z�O[��Q�>a7� +:ꇷ�ޖ��to��:�D�ay�N��]�2z�6��{�L+U��ɦ��|�~����@;KE��9�]؋��t��.��#=н� w���@�ƫcI�.*�7��Ӿ��Œ����� � � |õ9_��q;[��Q$�M����%�J����L��tuJ�r�p�R�������w ��qi�˦�y����%!��3��l�~���w �$��Se�q"N���+r0�h,R �s� �-����1��F�$V���M>'e\�l�(���^����yH��>l�]"t�]~�ku< ��\mt�[��}�3�6��u�6J�Wk�� :�z��E��Cg���Ǎt�6�<I�:_u���C�O�UV��]�U*��s��ŷ��RiA��U�W�]ܦI�t�45�)�(5,�G]�n�b�Y�QR<W^����3�7jd���fx��NNp�B7��g�������s��T��@��C�^��5���:z�9��E'��]}�<���6�-���/���Na�/�֥��>my�>�>����ǽ��9�1ю��g��`4�3��̡�}- [c�������W�v= ��l�:i#�Kڀ�_�_��_$r3�[�~�/�%?R��kAA�w>�1�P�t7�-NԊ)��[�Ν�uX���oz�q=j�6��C����+�h<��� ,��jÎt�BܰM� ���G77��m�Q�{n�g�l�!L�����z�}k�j��A� CN�|NP-�_NN��FoSG��En\U��#A\+o'�&�7�Hs�h��y�.όy�~�e��z��G�4�ےq�8�g����e��kv8����q�4��;�����! �%�K�����w#n�O#� � ��8?z�����j|����ﰍ�����������ݱC���Y���w�������k�7ҹ�k�W�R?� �s�r���q�}�>�=����;�����룷�\�Y$��͛����xWe�'��\R�zP�Tw�\�G���;�������DZl�5�N�t�������I���]0�U䮮�ؼAA�v,Ot��e��2�1'&|�_j^n�9�lJ���R9wЀS��tm���&[iH����C�M<��ڹ͝���� ��4<bb��A��}�Pn�;Oy4o��Y���ڃ��.�P�#]u��E�Z��i?H����T�R��}���S;:W��U�φ�&�=��\#n�W����6w���S�kI�y��T���9� �v�;�8��ĭ�{_�6���a��qGڜ��^z����F���!oAA?�N���� r�tw���H/�JT*W��t~�2|i�ϵQ%&�č�.��čé�V��\�/b։����"k��������6�;I�;'#Y'��9R�g�A���Խ�si�ʵ���C'�̓HKW�DRcu�"e��R��TƥW:z^����ӪRUyt��Q���\�m��3�s�-|�[�0ύt����i;X�H�z�C>R����J��ötlT*/�o� �;�w}���$;�6AA�cptU����N��Ǘ�r��u����}�B��.T.��[8���^*[���F8F|C�vv^��p�(���܀���<�ò�r�Ow��}�$��.���>�M�щ��ww���+���3誮��W;��5����v��wW�({Ȼ����i���m�g,o�I3חuى���휌t�BՏ�?��~r����G�n���AA� ������ᄭ��u2g����<�c�����aީ�u/~���,E�ύ�DN�u�~goG{�N��m�HX��8� �0v��ݸ*/'��h�2H:wyk����z��#�~;��z�4�;x���cA��y����gU�i=�N�dd'��}��w������J��]�+Dm2� ���Ń��A{W��ި]�;F�~�ͬm\O�����(�f��,W@p�к4�|��Q��"Ut-�� ���K��6JMn]S��=y}ľCŮ����{�\x�i�����������mS����i�~�1F'��G�����ӞH��f&ly�<s�����̾\m'���ۥ�w���Sw�n��ԈY�!q��0���.��d����pH�5D�AA�Q���Ve)/���x���3��K�Xd�_�J�m|׆��� ����� �Ң.q�<ޖ�c�:)q�e;!��/o��G'�>&���!�:�|��y4i�E���Zd���r7��t������i�27_L�iヸz|����ci�|�@Y��N��aq �\�x��R����x�H1�����N����ν�j��x�/j�� ��AA��8-��Q��B��ꗝv��^����y'1���0�ܨ�A�$E�զl�\�xW��y��L%��)p#O���^ڢ�>6'�_^H��x;a|E�vs�i̷Kb�T���R2]cg�k���x��A��ۭ�;�5�:ֹ��~#I��y��;%"�>��m�/A�[A�����q�Ǻ����6�w�|s��ޭ<:~�z�;��_�dO�9�nc�=��ȍ����_�.��N�I�����c�FG���e}�v����-q~Ew����z��:��y�R�n�vg���x~i�j_��ugJ�W��&�[Z��&<�� � ~n���o���:�6�9����s���~o����<�x'o^�kO�r���y��]?�j|o>N�{����>7^���}����nnZ��~o��7~�v۸/yv������͝�A�_�g��\������_��P�������9&^��e�2AA�ώ�#@w�8#hc���6�c��27l�:��y��!3���� x�\#!��/"�ۄ�����$f� ��������M;�NB�����o� �Hݑ��!��6�3�]����K��Ɇ<nI����ݳrr�j\�w��[�}��iAA�o�o@w��ov7D�o��+�3�"��ƞ��1�m�;btׇ&�9��/_���>�֗1ƽ���k��vm�oG_=� a������/����{λ�/�AA��W�M��I���q�)���7ۛrcl����ٜ�d��3� ��R����m$B/��#<w�>��g�{w��Nb��Y�y{�����xV<�q�_'��w�}�6�^�hk.� � �s8�MNۨ:i[�|#�#lr0�C�7Ƹ%-]jrs�BbvR��igߵ���#G���xM,��om���g����c��܍���6�\t����"e�5x���M��ks�dAA�gq~�㹤�����r/��JVv�n�}��j3����ܩR��U���w�2:Yc��O�}��L���y��v�f}�~������[Ʊ!iߺf<}[����n��� � � ��V�3�7�~������)���i�K��y�Z�7c�<w�m�p�G'�����#qFj��{džP���I��LtAA��8�cj�Gl��vWK{�s\�����]�r��<=����a��1���D���=o�8vSB����;�x�Gܱ��<,���9����Ώ��k̛�ާOs0���#>Fog$>�� � �!]�x�"D�`�~)[ġq�K]V�B�ƕ�\H��8�5r�W��7��qά/������M����L(/�n�{���X��ݑ�U�� ��OAAAAAAAAAAAAAAAAAAAAAAA��%�?��P�RIEND�B`�PKCA#]��^_$_$Ocomponents/com_sppagebuilder/assets/editor/dist/images/8fb9524d6857eaa198ee.pngnu�[����PNG IHDR��>�� pHYs%%IR$�sRGB���gAMA���a#�IDATx��ml��y��9)ʲz˛U,��bI�7ju�V�&SHҡ��U���k��R�C��5A���ښn�X��κ&�ֈ)�C��~�c@u��q0[-�g�}H�%�<�<��xr^(Q�|D��u��}GUT}��g�O7�1���۷@e�=,��ɲ,��j���XВ�.���\Q�v�m��J��AgΜ�?�=\�t ������|��ߝh4'C��z��5�� �!p�6���)��R����<�+��� Ow'�r�:J����6��E11::z$���R�y=ݜ �,�΅����ut� '@o�h�-�UN�,��7 �M�r�@����Ng�*��!����ƃm�{���:B����U�k�F���:D��8�n�N���N�J���N�J���N�jG0�����;�N�����l6�*v��ox�b�?���p�6���o���+6�s���ٳgcyy9��'p��{�rAs���}����� �*W�.����'p�Z��?�\���� 0�v��U�����'p�7�r�-O��O�P�����7��rU�4w��{��-� ��X�{�� �v8WM(ǚ�^>TFqgQ�D1l�"���n����Cј�?���@��� ���4�G�,��se��V|���lD-�y��L ��O���s������e4�S":�<��穷��D}m`�ć_�h�ӡu�M�fy�]Z�h}k g���>��Y e4��t@��و��Be�:R�O�Γy=m�(�b!z��w<(%�ɠjƛ��p��,N�� \�,��{�J*���.�l����:b�g^��*� VUj�����."m��(��ۧr2P��1TZ�:�EV��\�mR�A������ѪnV\Y4���c�v� 4Xk8WO��j� ���v�\�rn���Y�c��!�s�I[V�M�8��G�\Y�G�UOה�&t�� �CRX�I��n���Va�F��1{��M�sX�yMR8�]\\�/lB��z�jx�z��g'S��'P[���+��f��6��7��U'@[?���g �c)dmێ��ԧ�y��&FFF>��O��ѡ���7�� �ل 8��j��6)dHU��ŵZ���?<7�N.1:::���C��]�pA�n�� �Er�l4���ܚ`yyy:�@��")l�,�r�(��6�� ��bǎ���9��f}hh���'-)lޗnrEs!�ͩ���zl���Dz����D�� l'�`��H�M�`&ҁN8��t�N�e"��`�H:I�0�'�Su� ��� 0@6N�/--�68��t�[N���C��o�y::D��CB���SIt�� ��V����û �&p�6'�Չ�KKK��a'@��CB)d�H�N��CcI�H�CB�ᬉt��N�>��K/��H?]$p��!�&ҁ�8�����=a"���O��9��� �@��} O�����M��2X��(�ۯ�����.&ҁ����,Ϊ+������t��*p>yb�\aZ��1�53��[ÙZ�U�̟�U�Hz�����qU�j:�����p&ҁ^2p�s~��a�����S��/<~`yy�Lj�J?LpY&ҁ^3��"=����2�ǂJHU�����OU��W��L�=�Bg���z«6L�ϙHzA��OQ�/�6����#k�s�L?L'��V���M�N� `�MX�l�2$d�&�:pf)tN֢�P1tLQ�Bو�O|n�2�`�L?T����W_QO7���9?h4����&�k>p�y��"�R�)'�6*抢�h�Ι��⚆�6�z��3��Z�s}.O�� %S^�@/87�8P�-�.N*�۫�-����UOQ~ӕ��tw,]Ǭ���?�S��^,*�J�D~��{��F�n�[(孔6�3��<�У��w-l���t�j%hfC��\����(o���k*�rUO��K�D�ڛ&a*�rU��v��'�522r`���V���U=��Ձ��W_���l��Is"����JsCCC�l�4x&^t�իca�[y]��=g�|`yy�H����������fј(���Q+Nj2&�"Ƣ���d��Q��HoJ�r!���j͡��Ѭ�vd>�Q�DO����h~iii� ��f%`.h���(����b���͟���'����V�H�u�ٻr�l�z9�i��յ#j�X���j���k��������t�� ��6���&.M6���k!ss�\��Ʊ����<��l6O�Z��.X����b��C)l~TճZ����{ʢy�Z�`v_1����'N�̬��8�:���4�Iw'מ[�z�{v! ڦ���%��s,O� 8�����t��uUυ>gm���:�t_͍���?����q�H�/--��>&p���W�yN�{z.��S�� �de�f�h�yw�p�3q��N}{~z.��� ��rUO�߸���[@���T���㏌�>%pB�V=�ZωuO�z^�~�jn�5�~�J��J�6Zw��]�2���y�Ѕ������z4����ik$����cɹs��c47�[�ѥ��O�㊨M?~b�X� �:̆�8x~��S1P-�(��O<2r4��� ]��~i�Q��펶UQ��g��=M� Ԫ��yM�Cќ2L�2�*d���z���UOa��@O8��V����k��1����^z�� w�c4��KKK��CZBE�y�r�|��F�@�8���1��ѷC1�ĉ���CN�A�z��;~���('�-�O'�kN�q�R����]ͩ'O�� pB�X�zV��w<(��P��L�=C�>S�c4��l�b�#SPq��J�.)��ӵ/=�ʭ���m�N���tݓ+��)l��f����Тe @�p���1�Ul��y]?�"��~���/�6���x�\ķ��#�q��U����}���L�өc4��J��T�Z�e��}%d�rӍ}�{�l�h_{�_�j!�VI@� �0��]���Tz�?���V����Z �e�ᗚ���ց*8�+�y#U��������`��!s3����?iģ���i��.�x�v��/�u���rE�W~~G�u��\�\s�5���y>�ɥ���+T9��8���dC��>�҆�n�uo��O_5$�!�g�ej}�jdj���yh}����E�y]��7]�E��k �~�~���� T�� \��٩��{逸��cӏ��/���A��g^z]�}߭Щ� T�� \���٩���>�s�����S�|��m ������?=�i;�7~��Bo�C�*'P='p�6;F�u��Z�uo���h�w�%��\Ѽ��F|����3M��m��_��?5�8r�}9�*q�p�r=U4�|��R�<��fn��v��MF��u��f^��3�q�+a��?�?���"~�dž�Ӛ��>T�� ܰ��h����7�v��K3����+uB�f��r|���zۭ,���������耍�6�6m�I�k�CJ���2��q�dT�� l���ܶ~�xu����ʡP'�e?sa"�xf��_�њ\�O��Ж6��Ne����ز��dtQy�{�p�Bg�s�]wv~@� �'�rZ@W ����e��մ:���FR��s��|�fއ3� ڍ3ܯ�K�P;`��r"�1��ڄ��;GZ�?��f|��涞m�C�o��G�_kwy���+��t�@� ���������ǵ��3g����g�h���r�{^����H��:�����͕�P'�%��x7��y+�|�e>[}3o�[�������D/�[�/�+��Ek�=��=S�*J�'�cN�M���HU������x�7�[�֪D^����}2o��C���R�u����Q!7-�����.8�-)��ި�2Ƽ^3_������{n/ںEQ�Ϥ6��_h�*�U��o�oǎ�m���<�U ����b�,+21+�5�����ܾ��2�۷:�0�q6��כ�lUW���|.oo����N`Kʨ�^���������|Pn��y�JK�rUе�2�`Q^��eU�ϼ^����Ϗ@ ��֔�� ��ײ�Q�H~�Ǎ�t;�d����8��t��߁6q�xT��O��0����H�Fj����4��j� �.S�z^�ܧ��c�\�zE1����v�\��@� �����Ƅ��іyR������9:q�?��n��ňg�U�iu�n8���v�e�$��ךq�6��b����[o�ž}��HZx��3SƩ�,����N�/M�Qk]Y>W=og�o��\�:��J�m{">�s�q뭛o�4�>��G�x��G�+ڈ���*���G�n\�\��誵c)���ʹ�ym��+[�s�^�y���ܸ�"������n(�ϯm��f��O�nO��� p7n�����.r`|�/-�Z���k>](�7�_�e�Y�4_3vk�O}�ƾU���W�x7CgQ�sԁ��-��P���r�~�`ވ�����~���>���w�cq��^���q��Ֆe!p]'p7l�ĮzTL>](m��[ �y/̯_�Y��7�ϭ�+��̞~: 5��g7�S������eZ�Q��(ƣ�V��|5l�:_�{����X�|R��r��1�ٿ��� ���s歓:�(k��2�ؚ������)[�94�S��e�(�Y��|����۶�2y������>��f=�LKؚ�|,:虳�>w������m{����n��a�햪��2N`���A_k�y�6Hyۣ����8��=�2�5��=����_��f���ᏼ��ҵn��݆ ��>�ؒ����\G����n���{��y���I#��g���3gV�.��g/�����n6��n���.8�-*�����UμWf�ws�[n����ZW�����7�n��/ ��Ȏ:/�|_��������=�>?6V\T�\���D�\T�� lI��zy!U9Ǣ����f�C皕3�k�!��?U�B�3��g�ymg��s�sUrc+|�꣣+4��˝���J�&�KQFG��lF��,�GS��htX�9L~�7?a(o4uG�ʹ���c-���y��G��� �_�y3�~|�gw��Y+���Z9 p[W��Q�Y�\��u���c-�X}>�=�o�r��_�y���V~�ҥ�-�Ώ�@� ز�Ν3�ekG[�S���d��r�\�7j?������~�Y^�y9y���n����c-�jP��l~�Xx�s��;]��g�r��=�q��j��T�|����^�e�ш�]�ik=�����[�'?ߝ�fQ4 ��8�mQD���&�"�^��~�l����E ��8ˈ=�[9����������J;}����f��ra3W6?���m�T+������D�C�Xc������R���]u=oߝ6��b�#SP'�mR[�T��햃�}E��nϾ�l3����4����)p�@Eh�ۧ(��:m�v�k3O�+�.7(ba�l�@��R����́'螲�͛�@����*�x 蚡h��8�mU9���-Ō�&PE=34t��2��|�qg���J1�E�XO7�8�n�����Lo��3��iϑ�����O����s5hޓ�f��5Pm��6�9�����;&�͝�~���� �6�b�#���*8SHA�d�d�{r�J��},�̢(�j6���-��gn��:t��&Pe� ���ty }q��&��ވ��W���'ƒ�^zi"�ˏ�e�������7�|�B2(�rv[�cO��5U��*�㩲y:�Mz_�W:s�|��s���D��w��e=��twnyyyn��}��E�Nm��?~b���Jn���f�%l��˕J}O3�C�s��@yW�h��ϥ뫩�>���X���IU��w|h�,� .�t�l|��O���b�ػ��7�w��U��#,�ʫ\�3U7�K�s:���������k��:ݽ{�Ln��u�g�7/����Ş��4.��9>>�z=FR��o>�c��ϡ����Ù�桀>��V%+|9d�?44t&V:ӱ6�z̙T�<|��7ߚ��SKKKǯ7lf�3�B��t��9_����b+l���q�̙x衇b��_~O��y-r+]�zE�g U�P ��t��gr�|-d����S�R�<�:a�Cf>%h*��})`n43727����<_4K'�j\x�u���١C��ԩS���}�?���3���f���`�t�wT*p�.m�Aߨ��t\���y(̓/��R���Cf����O+d�*�)d��?�27z��F��E���dhde�^x��r����#G�����7_�����eٌ��@zI�Z���_{}琙��GR�<�B��)T��m���u,=�?U0�����'MA���74��Ldn���M�/\�Ş�m>�C�6�n2��U�y�����x �y��<Y���7<�݆F��6Dte��>99SSSQO-��^�S�;v�#CB@O8���?�'���uʡr>����[f�Bf��fK"�8x~��SB���Z�G���Ǐ�6�/4��� �T�)u`s�3�'˷k�g��y�%��Z[Ù�C���b��-���<���/z�� �6�B�C���n�:k����ɃD�O�^�j��=F� �0�s&��py(� ��k��C?���Y��y���f�9|��~�����'TD�I���0��Z!3����c�Vy��{5dn� �;�����W�އ��b����+�G��N袼3��|�O �9<L��I?��x����.�Uy��Gvޝ���r�+r�3����_���8��6��kz���L��O����)��~_י�M϶�v�Ş�P��*�;PY't��>�W�'�c�"��a��p���K�tή��|8���bϛįk��Щ�T�� r�/�y������y]�'vJ���n�t=ֵ���K���:�M����8��N)tΨv^��b?u�;PIU;i����`�}���5��^�ЯC?픫������Ӎz(���V��,�y�=�z}[��9t��{�رc�:��k&�H�� +m����U�,��䠙��k�G����u�����[�y�����N����6��g����Z���lё��������b��n�@�@O����<��������E�\��>���[;4�ˡ��ɓq�}����c��~(:L�z��D���'v��U�<�u��\��!�(ʣC�#��*l��^�����b_=�}��~_t� �+W=�M��'�o���YNE���=l�j���|����sC�G篳�Y���'&&Z-��G�����t�T:�¶S@�@_Z�n��+g����/M���fY��bo��X �c�_�I�"���pO�,�/�j�6��Rٜ��#���S�Z��:ŞO��{��@ ���XW������d>|x<��s�=��9P���e '@�t��8s�=�ړ�0���� �g�8��b�s�a���:@�!uvv6Ξ={ɔ{�����f���Zh��G�y����/ĥ���5g�u<�h�g7���Q<�@9�j��|{|�\��N��h���k)�$��<Y+a�ޙ@�14��T����6�� �$�����@��AGC�z�� PQǎ����|7��4��,��;Z=��&����ׯۜ�&ptǦ�3����_3&с'pTL�kӺM�����m��͵�k&��� �E�[�$��u��a�&�GN���y�V�z�i�������7w_]�y8����� ��m�p�Сؿ�Z���6����ݑo�O���|=V&ҧ���7m��op�걲�&@_S���N�J���N�J���N�J���N�J���N�J����,ug~t� 'm%p�V'm%p�V'm%p�V'm%p�V'm%p�V'mU��YF���P�gq6�OyC���T�lD���m.`U*p��b�P�����E=`Unh(��3�z,`@QA�u�<���d@����p����H)NW=����q�Gv4`�U2p�n����I/˯�:N���Vٍ��Bgj�?�c�Z���oP*��s��<]J_�=�D@��i�< �w\��'�O��͈���>�e�MPn����.��> ��?4>��q��IEND�B`�PKCA#]\����Ocomponents/com_sppagebuilder/assets/editor/dist/images/d82d034e6dce7362d5f4.svgnu�[���<svg width="267" height="266" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M111.678 62.63c-.434.865-.59 1.711-.395 2.377.283.969.896 1.178 1.38 1.049.543-.144.987-.724.754-1.692-.164-.686-.812-1.33-1.739-1.734Zm13.978 2.99c-1.168.1-2.255.584-3.005 1.369-.701.734-.89 1.5-.481 1.95.38.42 1.236.52 2.215-.247.727-.568 1.184-1.738 1.271-3.072Zm4.917 7.263c-1.067.223-2.087.716-2.811 1.294-.658.528-.902 1.148-.619 1.58.165.25.521.426 1.014.164.849-.45 1.838-1.606 2.416-3.038Zm5.269 14.202-1.889-1.2c.033-.052 3.284-5.268 1.989-9.52-.566-1.852-1.545-3.007-2.911-3.429a2.506 2.506 0 0 0-.1-.03c-.679 2.272-2.201 4.185-3.726 4.993-1.431.757-3.087.374-3.934-.914-.762-1.163-.746-3.084 1.094-4.555 1.177-.943 2.897-1.725 4.698-1.888a5.03 5.03 0 0 0-.523-2.333c-.546-1.09-1.487-1.9-2.659-2.31-.152 1.919-.908 3.61-2.116 4.556-2.013 1.575-4.167 1.186-5.254-.013-.997-1.1-1.259-3.133.521-4.998 1.139-1.194 2.716-1.913 4.42-2.057-.352-1.395-1.392-3.83-4.448-4.809-3.173-1.015-6.145.422-7.87 2.104a4.081 4.081 0 0 0-.113.111c1.348.71 2.273 1.797 2.573 3.048.554 2.316-.765 3.955-2.356 4.378-1.539.41-3.449-.344-4.103-2.585-.305-1.041-.199-2.22.265-3.397a4.17 4.17 0 0 0-1.9.585c-2.792 1.688-2.437 4.365-2.433 4.392l-2.215.322c-.024-.17-.558-4.181 3.489-6.63 1.264-.764 2.823-1.055 4.346-.851.266-.334.56-.66.884-.975 2.191-2.138 5.998-3.951 10.115-2.633 3.198 1.022 5.467 3.65 6.072 7.029l.013.068c2.107.467 3.829 1.78 4.77 3.664a7.253 7.253 0 0 1 .755 3.481c.132.032.264.067.395.11 1.457.45 3.402 1.668 4.391 4.914 1.598 5.243-2.082 11.124-2.24 11.372Z" fill="#FFC624"/><path d="M123.631 169.278c-18.074-4.154-35.168 7.592-44.066 22.266-1.248 2.058 2.196 3.94 3.44 1.887 7.98-13.158 23.248-24.322 39.635-20.557 2.335.538 3.333-3.058.991-3.596ZM111.885 243.241c15.578-10.062 19.074-30.506 14.756-47.115-.605-2.33-4.354-1.172-3.751 1.151 3.871 14.893 1.231 33.623-12.892 42.746-2.014 1.3-.132 4.522 1.887 3.218ZM130.885 243.241c15.578-10.062 19.074-30.506 14.756-47.115-.605-2.33-4.354-1.172-3.751 1.151 3.871 14.893 1.231 33.623-12.892 42.746-2.014 1.3-.132 4.522 1.887 3.218Z" fill="#B0D1FF"/><path d="m88.82 199.198-5.827-.008c.004-2.674-1.83-4.841-4.095-4.844-2.265-.004-4.106 2.157-4.11 4.831l-5.827-.009c.01-6.468 4.464-11.702 9.947-11.693 5.484.008 9.922 5.256 9.912 11.723ZM131.019 241.064l-5.827-.008c.004-2.674-1.83-4.841-4.095-4.845-2.265-.003-4.106 2.157-4.11 4.832l-5.827-.01c.01-6.468 4.464-11.701 9.947-11.692 5.484.008 9.923 5.256 9.912 11.723Z" fill="#36F"/><path d="m150.019 241.064-5.827-.008c.004-2.674-1.83-4.841-4.095-4.845-2.265-.003-4.106 2.157-4.11 4.832l-5.827-.01c.01-6.468 4.464-11.701 9.947-11.692 5.484.008 9.923 5.256 9.912 11.723Z" fill="#36F"/><path d="M147.171 171.49c18.075 4.153 35.237-8.316 44.135-22.989 1.248-2.059-1.976-3.936-3.222-1.883-7.978 13.158-23.534 25.04-39.92 21.275-2.336-.537-3.335 3.059-.993 3.597Z" fill="#B0D1FF"/><path d="m185.004 136.322 4.969 3.045c-1.397 2.279-.962 5.085.969 6.268 1.93 1.184 4.629.3 6.026-1.98l4.968 3.046c-3.38 5.514-9.91 7.658-14.585 4.793-4.675-2.867-5.727-9.658-2.347-15.172Z" fill="#36F"/><path d="M139.213 163.678h-10.072v-11.937h10.072v11.937Z" fill="#fff"/><path d="M149.096 98.772c0 7.691-6.236 13.926-13.927 13.926s-13.927-6.235-13.927-13.926c0-7.692 6.236-13.927 13.927-13.927s13.927 6.235 13.927 13.927ZM95.655 137.442h-4.66c-2.754 0-5.007-2.253-5.007-5.006v-18.835a5.02 5.02 0 0 1 5.006-5.007h4.66a5.02 5.02 0 0 1 5.007 5.007v18.835a5.02 5.02 0 0 1-5.006 5.006ZM179.342 137.442h-4.66c-2.753 0-5.006-2.253-5.006-5.006v-18.835a5.02 5.02 0 0 1 5.006-5.007h4.66a5.02 5.02 0 0 1 5.006 5.007v18.835c0 2.753-2.253 5.006-5.006 5.006Z" fill="#FFC624"/><path d="M94.915 140.736c-.932-10.631-1.958-38.234-1.461-42.462.332-2.816.712-7.212 12.566-7.212H167.81c6.466 0 9.201 1.741 9.201 14.175 0 12.435-.994 32.08-.994 36.059 0 3.979 0 5.72-9.947 5.72h-64.409c-7.71 0-6.5-3.469-6.746-6.28Z" fill="#B0D1FF"/><path d="M92.188 145.213s19.805-5.142 40.868-6.152c25.621-1.227 46.817 0 46.817 0s-.768 8.29-1.535 10.856c-.768 2.566-5.565 5.132-18.995 5.132h-57.946c-4.221 0-6.523-1.047-7.867-4.54-1.343-3.493-1.343-5.296-1.343-5.296ZM124.349 124.323c0 7.245-5.872 13.119-13.117 13.119-7.245 0-13.119-5.874-13.119-13.119 0-7.244 5.874-13.117 13.119-13.117s13.117 5.873 13.117 13.117Z" fill="#3E64DE"/><path d="M121.518 124.173c0 5.68-4.605 10.284-10.285 10.284s-10.284-4.604-10.284-10.284c0-5.679 4.604-10.284 10.284-10.284 5.68 0 10.285 4.605 10.285 10.284Z" fill="#fff"/><path d="M172.785 120.469c0 8.755-7.098 15.853-15.853 15.853-8.756 0-15.854-7.098-15.854-15.853 0-8.755 7.098-15.853 15.854-15.853 8.755 0 15.853 7.098 15.853 15.853Z" fill="#3E64DE"/><path d="M169.677 120.509c0 6.864-5.565 12.428-12.428 12.428-6.864 0-12.429-5.564-12.429-12.428 0-6.865 5.565-12.429 12.429-12.429 6.863 0 12.428 5.564 12.428 12.429Z" fill="#fff"/><path d="M112.316 123.019h-1.54a1.66 1.66 0 0 1-1.655-1.655v-3.157c0-.91.745-1.655 1.655-1.655h1.54c.91 0 1.654.745 1.654 1.655v3.157a1.66 1.66 0 0 1-1.654 1.655ZM157.702 118.927h-1.54c-.91 0-1.654-.744-1.654-1.655v-3.157c0-.909.744-1.653 1.654-1.653h1.54c.91 0 1.655.744 1.655 1.653v3.157a1.66 1.66 0 0 1-1.655 1.655Z" fill="#201912"/><path d="m116.204 163.001 35.652-2.183a4.783 4.783 0 0 1 5.075 4.773v38.628a4.783 4.783 0 0 1-4.783 4.781h-31.932a4.78 4.78 0 0 1-4.757-4.296l-3.719-36.446a4.78 4.78 0 0 1 4.464-5.257Z" fill="#36F"/><path d="M143.96 186.805h-18.08a6.068 6.068 0 0 1-6.068-6.068v-6.143a6.068 6.068 0 0 1 6.068-6.067h18.08a6.067 6.067 0 0 1 6.067 6.067v6.143a6.067 6.067 0 0 1-6.067 6.068Z" fill="#FFC624"/><path d="M133.801 0a133 133 0 1 0 133 133 133.147 133.147 0 0 0-133-133Zm103.444 133a102.95 102.95 0 0 1-20.627 61.919L71.882 50.183A103.445 103.445 0 0 1 237.245 133Zm-206.889 0a102.95 102.95 0 0 1 20.628-61.919L195.72 215.817A103.443 103.443 0 0 1 30.356 133Z" fill="red"/></svg>PKCA#]�n�F?F?Pcomponents/com_sppagebuilder/assets/editor/dist/images/e11f46472e94d88f5420.webpnu�[���RIFF>?WEBPVP8 2?0U�*��>�D�K%��'��j�� M�-�SUgb�����3��������h~�.?�?��������[�s��_�?~b���w��_����X?�l�+�_��u�1������k��d�i�#�������~���_�?��C�k�Q����G���`�������o�t���k~1��_����_�?P�e��?��n����?�=5�=�c����/����y�������>��|��������_H�W�W������ܾ�s�������{*c=�1�ʘ�eLg��3�S쩌�T�{*c=�1�ʘ�eLg��3�S쩌�T�{%�j��Ύ��t0�����S*X��]����T[.��TP�0,�-Q�S쩌�T�{*c;i3!�Z��NW�.#�)K���3��r��Se�.�K=̾��[g>ou���1.[hu{|��>;��;��P��l�"���+"߁y����.#�?��R��� ��{i BR�R�K��:uS8�i@�f��/��sTȆw3\���EjQ�-�� �����.xU��r�O~V{d�s��P��K�E ���}��4����\���%z~��W�te.�63_Ҹ {�����O�VG���3�r��J�)`͚p���u�R�טX� �b�Ulq�u��-�h�XCok�;"�_�E�����s��0M���l*]�u]A?�&e&;�',�2"���U�.ӊdj�q�-�Bv��k�?��)��[���"�p�k�0��hbA*v�u#�CK?h��aC�j�D}?��_����QL�[Y�4U*ܯy[�{�]���D�4ֿJl����?��m|0��'����'��WD,�(�V�IM�j���~_��m|����9R�R���3�r��I�ڹ��"���ra_7����F���!���>�b�r����p��p�xSG�������(��O�;��:���� Y:H6��g�h�s��{VS7C��|Zڑw�k�́�����{�@��a9\���v�K,�7�Z=�'��S&��ҋ��ԇ���+-[>w��\g�/�K4W�#f��k�9j;���k��E��s5�3�Y�P4�F{�� F�86��V`�=�I=�I�Gye_~;��<���J�y<�0�q��Ư?��$�Y%�2��_��En�W��?�1t�K=��G��..��^Ƹ#�NQE�r�|��_|sm ���lƁ��d�嬖���x����`L:ۧ�G�Aǡ_�T6f�]���;bX�}�-&?��/�)3}��{�����c0^Y+i��Q���s?�*����}��l�cCש�r�se���%��sƑ���zr.�c�N'M��i�_��;�m�� O��zb��w)�;��)i�)���x��M$V��.�$�'�⑭g��R�ဨ|T����L��v�������n:_ҔA������ؼfN�F��f��N������� ��v>;=�o+�W}<���p1�8�S=���T%��)�;�8���W���~�࿁�+ˏMN�)6�����Y]j�P�z|����� ��;n�Ȅh�6�?��V��_,f ����:���;-U[��n`�&���J�X{�ȁ"7=�ZV$ ����x,5{IB0N�? 㓻J�Ŝ�;����Ģ\ �ӥ��M�wZ�FAȜ�Bp���f�]��eI�?�Q~7a�L���af[�,/��j�B6�CY��R����\�!Ƨ;�3���O��RL��c ��~�rTs��MZp����Ƴ��og��$�v@#�X�5"�[�A�!��D�^���sd��#�Ha��k_� ��sb��~�Hm���)�P��s�=�=�Ѫ�\�?a~��K��{)�#�"��,�^�(�\�, ���f��$�w)�F�%>����ę�MQm]v�K��5��9���Dw�� B�r54J�_jy0]{*"GP 6�1�D���.OV�Se,�7���]�/{|L�ݹ�j(����u��*W/�� ��[y*�{c�n�4�XIS�+�g1d��ց%b��:8�pr���2곭���"*c�|P�;�L�Oe�`����أ���2�B��m9�;����y�͒=ЊןY��&0Z2���C2��A�n:��c|E�čG�����%�E6tu��d�_s���L�T⭙_敍f�ˁ0ޝ�#JV(z�����0/�Ƈp�����܋c�����GBhS�G��P�[0c�T��S�]���c0�/Y]�ܺ�|����ך��#������A/a���.��2��h��5+(�qУ�x՝��\�?�Շ��`���Ԗ�¢Y����T�rQ�:��AO��u��Ӥ���D�f!vJ,n?l�+�N�k�q8�?x�ԏ>��E�6�c���m�ێ����a�A<>��u;n����!�\�#��_��]0�����k��u+���Q�.)� /���"��v%���{�E��� ���K�Zh��͌Z�ˆ��?q#�A¹���Z�ɮL7F\�Ǒ��J��$c���j �X� 4�K�i���"�]��b^Ɖ��榖[%���� Ts˴iPJ���x�4T]�$�N&�aUlE���|/&��I����b1�����M��Lvq�l��`��۶#)��ܩ��(�Q�?zjES�*K��Bidu2��I���ʇ�y���8��wiJ�r@j���m�x]ˍ���q7�H���:��2�A������ږ*I�"0&�s���Ϸ�o�>߮}�\��|]p��~�7dLZ'H��XUM�Ld��� �kK>FN@�do�V�:���y��6�gc2�˙=��)S�۔u�x�"��SN)�Ϟ��|4S0і5V��T�c�[�ПW (�\� .��ѹO�ҪA(2�s�n��s�F�T��=���ֵ�P�=NQ-ۻ�`�Y��x8�/ڕ�1�$��=MUI�Ĭ+7���;o�Nˁ�|�rw��ʼJJ=�<���hsU��/����A���[F)�d�=P�M�n3GN�Dm �U�}n����) �"�#�n̊�A]$��BK=֪ll�=���igka��0�|��݄��w2�I�q�����!ƻA�QN�H����s-L��0�|� <��r|�Q��G��С<bQ.6`rfU�I��cl]���ZYzj �s���������2;�e@.e�����ed��*�'��:^�>��>�^���'�z;[�y{[���!��&qv����eH_}1֪��.a�fQ�>v��iK6u����i6�C��@�ur" ����1�O%��~�;DGhʅ�@O�PV&��������3ލ�����r�2U���ݴ`�u����p���t��k�s���d��ʌ{�ǥ�����wH�A�]w���k��Z �.�r �6[E�o����bJs�_$��I �m��C��_��W��ٙ��*g�(�C�/��ʵ����s������u�Q�R��g�fa@�� ������`��Г�,&ut�f�.�}(C�`��o�'z ���Ѩ�$Cc�P�j��b"�상Jݗj���l��$� V���������{z i1ZK�X(KѴa`��B� R%�7����#�i��[�.$uôZQ}f?��vu�`IN9�RayY�ZD�����I���g���Z$��N[/2������p4 +��}� p���0�5;Nbe�ȹ�� ��o�"�e��8�1������VϘalb1� �%�Ϳ�^�7c�hE� ��WQ�Zis@�{��y_]z��^�l6��t���༾ROnI��*��5�|��'�q̳뺮�v@�<��M���$�p����\ �y��}:� F;S�To�|R#>dK�p"�� *=��~�$>Rf~�2@hx2�=�q��ѿ�0����!��$�kL0pb��p�_�����3�U��`M&�� i������|Oe�K����0I����� l�;��ޱ�!!A9����}����Y�q=���2�D�kiL�,�&D�� �#�u iC���'�9���ɪ�}��/Z1�ܱ����Ч_x�!j3��E5&D0�H����<�a2��昽F�g̩KRHq@.�Q����1x͒wȾ��C����~ �Ox�K�d�tN3����(omZ�9�H�Y������R �<�<��/����k��Gh�������� �<gf~[� yU��B= ��&���l��p�?�7��Z7�ٳ�GP����j �3$Ϝ9�C0�vr��{\�wZ]�{Y����t>�HB�_$Ri���p��x�+W��?����,>ܩ�� ��}،�{�c��.�D`0;[�*Ś���[(��c15����!��;�Iשv���p@�[����}���Qa}h���$���D%<��:6�@:E�F��E�[�!B㟊�tۈ��_6�2�)XGyܒW6sa���>r���Z��{?�°[����(j�����į��3bˤ�s4!�$�m��!:J����ytr�����OyJ����k{����N\6]ˢ��*��9U�%7�xSV�N�M�w���[e�I���T�I�g���Kŝy,� U&Y+�6(3����m�d��.Lc8���O:]`���+���k�{�W�]��ߏl����19-(R��+o�lMU�oU�Y��c���q�uS�-xTXT�F��D���eNk4�!dIF���[��\&��UwJ!�q�k̑׀z���/��U�5� �z��$G�d}��~��^����Ld��2ؖ�>��3x��`k���]?l�%C�O����)�ɺ6�X�����rՙ�+V�Ϋ�=�e���_h<cV�~�uw����b����/Nw,�= �?��_y>{���{���w�[�����{��\��^J�ަ�o�?�/�P� 6���/�pC�wQ A�= �lUg��(�Z���$�-�p< _���:���ԉ�e���t��Ȓ��ш��٧a�C&㢳'(M!:�[��le�Y�@=���w�@��0}��bq�|���e���l��Rў0��g������2\:��~�M�|iWD�;1�&_���H��c���J�W�:<N��T@j��� 3�dGv�E�@`K�x�����.7�Z-GF��4��n��P��C���>ƺ�+[b7ô9M��� ��ˮYͫ:��� �������p4'(}x�����yz���I�,�!ķ�gyqۦ�q�N���V��j-'2�>M v��&�����M�cc�;��'Uںz&ZR@P ��h�k��ʳ<Ήr���F�8�ڲ�J����C;�v�ә<�ع�V� mCMC�wG������X���v���Ȃ�r�m~K����fZ��wM�I@I��� ��0���~��� ���^��u� h�K��}��\C�/�\��v��)�Ϳ���;̃#��5��e�w�X=b���ĕ�J��������.�ICy�(����=:�����'P"p/t��!%f�w��dw�ʴ�a�'-C�3Wo>�l����O�ۏ�x�-�P�y��gn�)R̎��4N�@����Ғ��k���O�#���J�B�wr�T����+�d繾�Z����9l&�^�}��� "lCo� �Ozͬ�+$�ф���P�m%(�]��u �RY פ��sb�%�֘��w���~�o0)�Nj�Q��3G�l/��xQ��B�5=� /ĜSW,�Ѫ=?��Bz`�ϴ�g��9��(f.Â֠Ә�M�?�+d5���1Q�F�J�6��U ��v��BVK�'���˓A#071 !-�9�~��Re�P�;�I�ز��\F�-5a�"��Uka���qR�A��>c�1G��D��y<���:|�R�|�P�;�9*��2B(0w�i���"�E�Jt�%qU�`���p�ѱ�ʵ�r�J���N�o`,k�#��#%!�g�zH╦5HV{]��HV��m+N-�у��]���m��R4+Bv�T�;vމ���R�ɗÙ:/��pU�+C�3�Ky��8�����ð��D�m��r�����Op���W=ʧp���k�$�RF13�]>n�ټ����M��g�������\{� U E�$F�<���<r�E�>}����VpS�œ\MŢ^ �e{�dd·��R���Z���aM���Q��(��r�y�Y��aG���pl�z��]ޔH|dyn���v�#�N6�[�p���Z� Mt�w�+!�o�j~�'����f�P���9,>�n �`��F�^��,�|L����a[}i~2J�2���14�xnąNu9�|��yL����u��{)�8��G���X E+{�B"����a���M�D@�'���@�K�m'�E���%��5g�<�P� �죐nEh��3��/,�p�#P��5F�sMB$t����gV;�c��������v��ȝ`㈄�(`-/{͊��{�:��Vn�B-�����(�N���G�"AtDV�-U�`��� 6d�g���m4���֓t D�!B �A�"x�������:X�k��-���(4X� �ȷ�=C��a�4h���{:A�{q5Z�|�l��ԐGC����ð�9C�^t{��U%�zC��r�%��S�=�$d˹�R[۰��)鯼�Rwa�tp�pl{Y^hв9���Z���%@ݖ�9*I큁�s��R}$��� ��&�E�I~N4_��_�+^6@��r@v��V���@�[�1Z �wJh������ҊA����4�ɖ���'Tz.���c�؟��}�e��4�+t?�R2��#�bmW� �����I����/&�� �>�����lC��à�8���Y��-�/�9ɳWK��|5\�ǻ�á���=�s�b!�|X�# � Y/wrAt(��)���b�~��=ߵdǘ�5��"q�>����3�V��v7rל³p?V��"46� �)Ʀ2��@]y�����4�d��^�m�XC�O6�= ���{��mh�K�bm Va�"O7�����/�>XGF��-� �n>}�_ߋ�s����"E�!��OZ^8�3�����eN�����RL���R�(���!|q���T"O����"ot�-@������Ə�wO�[�7����sy̛�#�5��ֻ�ҹ�V�t���,�l��`���ÏU�.�^��_@7�ݱ̪�zι���@� �6:���au,�|8��:��*_%�ud�J#�y���]��a,��,��!<]���ڂ��'y"�LNnm�yzU��5��,1���dr\h,��b�a'c���������o��G���MH�� ?��"�� $���_sr�5bJ��r����ݷ� �����P�R�wR�m�I)'�����&��4sE8�a��"�Io}6R�>ծs�/��Ԛ<�gs�{�1�1־���#���6\H����Lݳ����e>;pκ�C�O�㠪���m+��@~"o�X_�)��:� �I��`�����-��+-��t�C�=���Z�HW���+�ܶ��껰�|��S�佣�-C��wz��f҇�[��TpJ}��FI�+Z��}�G�*�o�kOR�%��qD����]�'q� S}K]�я'"!>�at�5 ��8Fa�r�y�Z�0JZ ��m9L��g��x"$�k~)Igv��������[0��8�� ع� �W��2|`q�K�i���0�a�Ą@��W�M�d�x�6-2y�%W�ڇ*s�H�$�S�Mb�C�����>��� �LF�u���V�;!�T.?�IQ�[|]���,����p-[��6��X�����G*�y� ��(�&�(5�ث��C���| DWO1�LVM�0��q�?w�v��Y�<�t�&aҝ�۳^������F����\�^·��#�W��?���V��+�x-B&"�ބt,_�_��|�(�J�*����G��/�SbU�|���Vw��F�*��a�ib��m��� ��k�tD��->��ǒ" ��d��r�����Œo�*�+��W� ���\�P��oq?p*�}wҫ�G����b��y/��#E��4``q�kX1 :��xCWQ �j�[OtH�y��V��f���ٵF_([�����FL(^2yy\Z��� � .�Bw� ��눡���n��J�{x3)��WDǥ^��s�B���=�S���� "��[��+eb�R��qt��e��A-���R��W�qt����o6D����o���I�zLyv"����@FQT��/�a�pd~rl1�gx��K�-+�o��yޒT��~�g�<� �W�:p�_�+ӂ���G"�?.g6�`�*lO��7����(9�x�b#���N�>x2��T�1�0P��[��Bn���E~�Zd���|?7{.z�e��b��k*1T�֛�l�V\Jx�����O�E([J/j�������-�bɛs�E`(̀�^��G�<��f�������2�\��!�KG��,JJW(ibK�B\��3���<(!���)���� #Ƙ�'$;�tB�KG:�2J�DoMY~�P�v4��ژO/���Pso��Ex�C��774"����<)����Y���E��-�(U����A\�xTERB�u� �S��m�89�B�o��h�v�s;f!���ˍ\[��환��W��Λ�]�� Og1��Ȏ"�=*c���kiG����[��u���.�)yD�V��Ȕ��3�+o�PTE�2��3�L�=�b �':om�A�W���ˡ*l�0M*3�h9�~���d����O~WЋj��<u}^/�f��UހL��Y�ٱ����G�Q��æ ��%!�r���p��]*���~f���t7�(�<�t�����s[�i��D2qv>M�*"u'���;gO�;��HG���8%����[�%��<�>4����jӉ8-��2!e;sw��H_�QԿ�3gM��V�j���_�^�ni|\�Ԑ�f����7��KהO9��h;�7�����^�ܥJF��Z��u�ei���1���R4�Ŏl��e�$B ��Y&i��C�O�4~I�� �G��8�K ��:k��|�D#n ~Ա��t���ҙ�D6���o[��4�Ơ�<Wn��ԕe�I� g%���ԛ�Z��=v�E#�o��ҕ��YTN�[<=�۪ T������1�Q��A� pd0a�B;���rA�-*O�rR�S�T�k�>�`���^�K�x9������|su���5���X��`����9�ܳ�s9��V`��W �\��eV��d�]|���@����~�����e�_��l 4��a4� U�G$�k���3+[�<NM�<B?v!Q�24�3NoȰL{�{Hp�>�o?�����kH$�}q��+5K.k/��4��2���ı�⯊��a���G)������D��-P,;��if�w1xUH�3���:�j|�ł���� �:2 T�p��ob�tꀱ�ݦL~��'mu�9E�DL{��n�{��l)4��D�J(�7� �u����!����74�}%����� :�W0�I��&���T�# эX�h��jI�4���W��χ��geJ1�"���j�W-���6�a�8"�J�EE�[;�ރ�m����U7���|ò�N�f�ٚ�Mő��d>���f�K��~* Vބ�V�mj�j8q�͚dY8�B5�v2js��@ ���,WXW(d��j�I2v�9��P�{>Qw�;��;8,;��O����҆g�ٹ�q*w��y�"gͻ��G��1D�������P+�"��� ��8EYF�w=��B����`Cv;[� /�t�+~j���a��/�7ա>lH����l1��#s�d�l��)a�%�h_�L����r�V=5��(�]�� B���PE�+��� �r�[���g8>�M�i#S�Ή�E�%�(`����Z��R��Y�H?�������H}ֳ���h� mpˇ��W/~Ύ>s���@[|��UL�,�X��E@��^m�����sB��L�W�����Fi|�=�a���w9��#4k��ъ�đ^�ը�3"lzu��(�)���� ��\��o67��ړ���:��!D����V��߉��aU�Ov�m��^��=&I�R�L��~?7�R�G�u*P�Ӫ��'� 8��F���Nǀ��-�X"�J���<�Y��a�.�Y�_�n�=�T�i��[k@}r-��BOa�tYv*��ׇ1}�r�/����� �MG%���E�43p(�:߭��$��nouFݧ�`KFXу0_�oj�'��#?�&0��H���"�����S�_�l��3A�3��o�J�K_��(ߘ�D��1:Ć�����b�YӲ��9�0� 8��@��0~� �Ԭ-�!�z�v���)i����mx� `w�^�f���5�O��i��:X4���G� ��orc��w)]��;�L�|�: ڱ0%V3I�na)�d�kl�~W]E�!�W��>������|�m���1�� �Wns3�kq��� J�,��E~PU�@����T M�E7�B�D�OAn�����F�Ղx�y�W�'9�&&u�%�&~;5wē���"��c*�ap�ԗ�\_���Z��S#��kcx�29u��g��0$�:�J�ͥ !���Ծ��QvE|�����F�zN�L1��g��rek0�n>e��J�)���.�=(�ш��;����n �i]0"/��1��U�K�w�����X��ޞv��<b�}���: �c� W"*��"ݖc�֜|�CCK��v�pәK��lY�N�mts��!F���v9�;C1?����7��o�sh*$V�g���]A*q��\�?f]$�.=�'1��`���Xb!� �]��<U�k��R��B�:('. !�:@{�30[}��O���p_*so�}�\�{ĵ�L4�3��8MN�y,w��� />]v.�!~zX�Z�Q#�4��բ���v���o���u�J���\�3�#B1�2,�O��\��am bKJ����8�5%u��o ����г�W�{�H��j�2e2ܭ �U)q��@�]��zG;4Fpƭ_d����n��� H�`���m{���*�?�C�ߕ�.ђ�}��bۑ���N߹`[��nUzß�9�$z�[ɗ����~k�C ��y�Y\�>�h�Q�G&-��Wn�e�&���|���7�t&F;�V�t�?6�wq;G?�iF������Y��8s�h(HpH;W�㓃��s1?T�J�'���#t���l;�s;���S1�xd�76g�t��ʫ� ,:BPz+��_�C@��ݶtӝ�-��M� ���y���0�2�՜��QTd��iwa��9i��N`��?��a9 Ɍ����{D��`J�A��k�k�%���11o��nƱ*GK��~�R��B�Pة��C��X Ank�eӝ�f�팦�V�w��\~�v��ܑ�a���^FSGux́�;�=&]�3Զ��1��OX%^:B�( (��k���1d�鍾�*P/��矖 b��\M�â7>o}dK�`@-���߸мsB�oQ�Ҳ�s~S��@H��Y��"�k��X�Kmm=(D���$�; >��k¤F���92;z]h�س7W�#���#��_�4ol=�a��'��7o&l�u��n�q���LG���"��Y�ݩx��UT}\��3ڇ:��xP,g����5��)�;$<��)7���M���W�E�u ����T�-7}S�N08����-�g�1�oEG ��/1�`��}�c�g�`T��\�}v}�F�5�#�^�E`��H�K��;a�,n7?�gt^�ۃ�\I��B>B���+4�4X�}���@�Y}0O�^3��낺�ZE���E"Y�>q6�:P�_ ����u���dN�D�$�@���<^mYR`�ؕ�3���'L���L�+�2��"!��<=I߈%��+��1������/�k� �Oe[N�#�9\ARUԙl; ��||+�..�R�@��+�L�x�| �MިsbC_:�\�tP�)d�P����EV��t�5f�&����`%"� Ko����g��)i�ۜp\K%{�C!"�+��Z�bĮ�/ �HX ����ǭ���S�WU�c_C��� ��=�g�;d��Ze�.����� &v�B�Q���/�������eνۯ��nY��;�'oag���� �A؇)�+��:�F<��l}b߬�ֶ)�E#V<ɞ�u�5�S�z�8�d��Tɫn���pm�(6j��k��E����ۙ�Qڛ�^.i;��qߗ�r7Dc]�dPn}���Ȑ�A�x�ýpV��S>^�:��e�%lߟ�e]�*���QP}�X����5������VW]�d�r'���B���Ȁ�o�z+U�a��<1�̹��*z���Tѕ�c�=D+= �@�����9�Y�/ِ�.���}M֧��M�G�et�{��H4��'x����$Y[a�m��}*Z<�����[r�[W��_U&v��HA�}�����l��I� �������"�h�ε�}5�7��ԗ*�<0��H�e�h�ɩ�U����ʇkm~�2C��O8��Ō���Y��YA�嶽V �ȍ�SE�����=�{Ny��1�Qe����V�J��$=I��$GL��D������ݣ�bC�X�T��c�G�g��(eX��+yF�r*:Ix��v�J��śJ�Y]��:r6�P�<�|�g+�(kP��/����I���ˀ�8��7�"��VN:�+q��XV5b~�[`Y@�. _�~�g�YY�v���zs�7�F���TJ�'IZS�SZvW%��q�~șK0<@��T� �E���h���2h\c���[/_�Q���W�� Xy��M�'�c�=�5�Tf ��&X?S��ׂsG� 70�v}�D�ٲU��&�X�o��y<%}�C����qS����zy�b~���C)W�7�P�]���IL��]�߲����������Ӎ q��۠��a%��:.�L<����{�|����#��( ���i杉���S��x`А�6)`�����Ur6��UL�֚�U+�]8��S&wVSd��Q S�c�8@�'�e ��h��G�)�Q6����̪gr҇_�� ��! �(�t����j�{�=�ȅ�����!#>��7քN�yA�3��nۀ����|���>f/^���׀�g�s��`�F�Kf�j1�GgQ�2j���T��Y�������I��`�b7���0dd��R�X ����ë��?�l �J��'"H�?�n�b:�P���*롾�2':" �)#�ca���<r-?�����l *�{��׳��C���l�R�)k~k�B�'��A�2"%�"�$eR@�X2^V��f@���`�&�|<����v��,�L���-֞��Ws�uo� L��%�iw��X|�bE~O�Cg#�����i�*�B��&��7'���N�G���~lȡ9�czu�āk�oA��z�9y6oU�pt�q�r��]�!�r�[�~��o_�� ~�J�ֈL�g&4�H��B)iti�2=K2[Rqhu�K�V5<ʎ��GSEpRq0U�%S�B7���m�C?21�{4�|����a��Y2��e32c$�WN@x��b��J�k��9�^[�&�|čvü��iՐ���g�Z�jKJ�f�Ơ����c�t-QuD˲> Ȯ��%�C��A|e2�D���g���ğ���*�O���v)�zV/�lPX* �IoHA�&3p�/B9�������?/qWbB��u�W�i�h�ˤ�q�%K:&�����|�l]V��Ҷ. u�l�2����p����ҝ���:��zk�#V�ē���尤飹N˿�P(�.�s�nM��c��4��a�.&��F��ߓ����&��[7~4�RZ�1ŵ� X�$8���Y\�,PJo�k�&�-�-NI���L s������I��}�"\�N�cItҺVe@��d�aA:��K���W�1o6�51/=Z��V��[X�u��w7ML�a�Ҳ̫��������'�˓T����M8�,Y�X���P^����N����К�^[OY�c�w����<�����b�nK�ݼ$�L��� P��=�.dO_ȑp5Y��#�WWҖą)/��S��q��D�Q���:�3t��B�?Bŵ���.�X(�d�W߿��q@�._���z�v�Ğ�oU�յ��/k� ��ִH|t;ds�_�����!=�$�&���!�x�L$s� ��6��P �]r&���]�p�N��cʡJ~�����V�9`��#�իNWrdΊ��`d����v��� r��l'�~�u����Yψ*�&%4{��9��NP��zݿ�B;�#S���� �\,�����QІ�a��=���<O ҋ�@ޅ3d��ݍ/r�ㄼ'~#�R� U`BX�c�υ�`��*{�3��*Rj�ZB\d�-�n7� Ugͻ`II̝,���o.=���p4��d}����o�iR,6�n5\�&�@���f�QI�#�=�a�u��G�&WI�;7��@��N�"ݖ�3�r�^'���E�<mr�����Ǵ`�z�ڡm�^?��(�~�� ��}7����m��|S^�P�Q��"��[N��if�v`CF%���B�c\���0hO���) �;x��a:Ti��YPPk0#�Kh�aB1<���Q���f=8�}����K�'�·�o� � ���;Y`t� �Y���& ��HQ7���ܨ�+K��>�5�F~qf50/35��ȁfIU���h�8N���Q�9����-%TL�y���� jm���RI���9�����z���i���3�t��Br7$]��VL�� ��6d�d�$J�~o�2l��,\�**/�D�E4¦�ˎ� $llk�ż��`#:��b�T<�R�N���==���+������c�seZ�H�u�+fC� `��/�ڙ�Nk���zK���/&(�;R�̊"�A�̚'̃��iI�1�[���5-� %b��RZ~0����˦�ӊ�8b�h�-�����9[�>oӉ�0�)9mt^(�� �d��,������!W��8O�'u� `�.r�Y5<��y��ە5����If��� � �歆�, ��N�����R�뤿E��1T���i��s�`�������B?���FaZ�E} �� ��pء$)��&DuK��(���%�]��C��Z�M��� ;�Ԧ� �tB�����>�m��-�ղt!OڡB�E��Dh � ���Wc�y��� �x�$x� ���/z+Ah�B0��i3S��}��f����z�#h�vFb_��a�q%�?�V� ��I"���XD�rÑӀ|��m���ż"�#����h*�'��+ ��R����u(\��?#C��ǶNZ�~��Lo�|�;۬K���%���FEۻ�+[<��Ȫ�ds�&t�Ю�c#FP�tқ��#-:\"#� U�3�o�8VHFt���k�!�9f��T��Ta��P��Jŝ�o���Td0PKCA#]KU�Ocomponents/com_sppagebuilder/assets/editor/dist/images/23a8aff50d9e39f0a80e.pngnu�[����PNG IHDR�;�,_� pHYs��sRGB���gAMA���a�IDATx�=]�Er��~����0��,B$��Т��.t�5!��{#�����y-�%�� �G�^g�H��$K��E�c��a���^{����53=S]]5�}�O��)ivf����{����g�hDt��G�.ܳr�u��c�9�� @ԃ��B��_kt���+x&�cM�Q[m�d���B]� ����'�|�5���d}|U]t�Y�$2*���5S��w8����x�t�mЙ!+GIg�t�x��]M{Y^�gPt8��'k<��� ���ʔӹ��rE��2 Ǫ�0L�Z���>iGz�L�=ꧠ���e���_|�y�X�С���W����6V��0�:�M��MI��|�����H�ֳH�-�q��� ��P�d���-\+����f�$g�����J�,��������g���~�^��^�S����q��t��L�N���K�P\��K*�S�,Xޡ�Z���CҲ�����o��k�c��y?��!�.s�I/�=��2ƣ4�&��mMހ�������N���?�ޓ'O��+�#�{�u 1(R��8C�Li��Z���^�I�Ni�u2�/W�s$/n-iPM���-^R�Bx#�xRW�Ig�v��E�ɍU�@�[�B�`��s��ܥ������pVx�R����?�p�B���ol|ǃ\���w�Ξ��h!���ڂQW���Ã4���A�o :��M&�8k��y�r�^+G�z.����=��ȥyd +Hd(�06f����5��'����An�94L4`�����p���� |`/�)���1=��nw���4���ZF�4�Dx�k�5Ё~��[m,�ҞI?����x�v�֚L��g�Idp�S���X�9fT��pQ�I���i�*=�">.n��76n��yu��:�Ύ�Gb!D�2��(���:ԋ3�g��@S�&����d�3��2��fg�h���4Y���f��`Lɣ6,4K<��t��ʊ�vFy�CL҈Ł0b��i 4��[Ј����Zf|���i��TkM@[(t�f]i�u��y���;*�ZDЯ�kr4yv���&�Ue��A0-�Y�4l���s$\����i�-�/=%G�Y����X�r���F��p�����...��z�.���;w��[Б4�놇�all,CŰ��z���[��D�մ��&���? �p��{�'q$H��ҳH�F�I�< �3����t�А�P����<Ycx>.����F fpN�.w �mp�Μu����^{����;;;*��J����]���3���u��� ͠��&�O�F�������VOk��"�EߒY3�h�%�!$��9^%�-Ѿ�e���el�L�$�����&}�B��U���43��8��o���R&q� �g���noo�[�p�)�%�T$ O��@�:���<���v֤�$��n9>.�C��L�H��*$V\�$��h���}�!i���C`6�Gvo븡�> ��f��Q�57�د�$���u0ר2^�3�i|n�,jn���Ag��R�:�u4�&1��u���C���A�&��Ȃ����ђD���0B�M²�$\9u�!JZ(�G�a��T�b��(���u~;33���m�ו1��f��N�uIH�)4v(�@��U�-Y��/\��.e�8�7iք));�IK��+������@n_Ɖ��2b�]��"��u�q优�Ѹq���Q2'x�rr`�N�-mp9 +\�o���#���Q��?��N�A*4+�}j�׆���� 4����d��J����B��H&���Ɗi� �����f����('����~��3���d�'�+2B�y�<��O�|\;m�x�H&�pf�E�R�P577��P�e����D�b~����uhY%=��� ���htB�f��^��T�H^����R>V����jm��k�Hy6ņ�%�e�+��JU�p�wl������J��y�8hr;�\�3�V8M�#B�&;@�l@����9;���:���DΠ�����$�:/��D�9�erV�>\×�;���%M��k(����c������)֓2Q#y!7�nrY��pC�5�� �����<sf��n,�0�$�R�����3R �r)����̴�k R%��K�)���l�� n��Xf�@ �dûJ� �.=Lu5�i�ƽ�ʋGEY�ܸ��2���҅6��t�)�eR���;���vvv�������5����L�-����#{����1.d���Y��� �A5 U �32 kf��|lh�xf����h�`{Ԩ<q��%�����$���8u�D��@���H�v�~ �� Oz�0���W�t�|����\��O�]��FMG�[~�싥�02�e�Q�#>�y�N?k��;�& ���i�+�dhV�30E�ڤ��B�fX��}�f �aK�Ś-���� ]32�Am� ͜���O��(����oL3�| ���( ��:p��A��� �m�E�a"��| F���w�@F�%;���������Q�2��^�m�>�r24�GM�VȨ�7x]m�-�5S����}�}yI�d�@F=�Y{��+�Q@�s(\ښ��Ƿ�0�5���o��S���֑�"��������w�-�ys ����K>9��<�k^f��uv���|Ӄ5�i8"���&&�assS��y��+YhP�a�u��cMR��w�Y�S(J�S#��h ��N�K�c'�J�����8��om죭�nD��� �'�RmO��xO�t����?����h�nzj�s��9�K>u:4���ia����8Z1;�KVF/`�a@4��k���h!�v�F[���&�WǙ�i���� �"C�qk_$�F�F�aF�j�$�� �����G�/(����� �_ot�mr���s�ng�k`蠲� |8� ��](��>���A��%MD[���ʺ�� C�k�h�M�t����P24�Rf.7/�dQ�T�I�Q?�2��}I���Evh�k뙡����I�nP���:����y䛭�DG̰�� ��N R���<����<�,�w.��!�"�z�ryTp"b���'�֫U`$Sc;��P�iV/�m<a�=�h3�/�^f�"�,W�3(@�3W& ��u$�|���sqT�r\�1�^!��!���[[[k$������4���J�uᑬ�d���~p%�F#��Q'cm��xԍ�E�%-�^-e����R�����1:;אd�>�,��y��P�ڶ�p�^�XY�2�t������Ӑ��l|J:D����r��寮�v���o����́���}G��i�kN��?CCC�1e(�fh��� 6�[}�8��e�XC�2|�{��r���i�]^.@<�'/�6y���O]�v' ,`�*I�[[�@� 7w�`jj"ۿ�%6Q���=�[���e�֡;�Y��vy�=�#t٢��U�d�ވ��xY��D3�{1��uޠ�(%n)����xK��_��/(��������)��, ��/Mb����}�`LfN��s$����*�Ht���e�L*�}wh�&���#�������~��#�{����k>CK�FQ��s�V��g�t=!iJ~�{N_[�s��^T�M�z m�9���w��ў�)���y�7�A��L\ѵ�Eɷ���pē�e`<�E���r:(�Ew�:���^��i�{��!��s�L�n瞠�:��A�{Y.�RZ��D�����������a����NQj�O��<#6�G|�hJȇ��{(גH��x�<kv#��%��i+Q�\'BT^�ڤ &�r\�����ۗ�*���A�@bq1�d�z�7!|�p1� =�^Q3�Pn)x�w�fv �_^u�d�ak6��h2j����D���6��P�� n�8s<�����U�q�dYs�VC^γ�J����h�ƽϾb��j��C���H899���y#�����V�.������p�H�[�%=����@+4�Y� g�\��^��hʶ�(k��=�5�p\)�l[7F��p�:�"3�DE�#�"ʒ:�.�:��o���sb���xk�nr/�1cwUS�����2>�����{�7�-�`�;߾=ٙ���5jd��3�w)���y=m�Fc}5|,cJ�h��Q�l�.��D����q52:��l���s5t�A�k!��s�+_��c�j\�q��+'���:�����@�\�YdD�Wz��]zqz��ްv��;�D��67�����c�(u�����z�Я;{��=�� ��g�仞�_@��)�đ�Yg��cH:�Гm�h'i�Q�]B9Cf�g�91;:W@�d�G{g\�"{���XA�(sU<�'+u-���}<�*2Ah��!�:�Ƈ�o��v��f9#��C߂��+,Y�~���٨=`������!v/ݺuk��}�;wn� �,�,����w?��_����o:��{cܗW��2L�N�^}10�D��u�U{��x�>�t��S�W(��r�����W���C�h���}�]����~pzq�^ ^�G)O��]/�U����%�O�ѿ�B�������Z!��;+eBF���2Y[N#�+E��N��LY�e꼼�g&܊_�_�U>��]9A�L�X���ߟ^�����N|�wVF�C�7�����k׆|���666K�9O� {Y.������ϟ����G}t�̙3=�R*șط;�y≫nu��na`v��Y���xgf�|ggg}��̜���h��������}��.Tp �7�h����B~���W2��S\>66�9_ⓣ�p��t=���&���9������t��oa�Dџʈ7��c�����.W��'�q} �TB���r�c�Ǔ?�0桌xو>�Wt�>�~��c�������B��<篿W�@>>A�pdຕ�C^���R�T�ta�x��u�=�����m��c��|��@�p�掺_�������=����C=ˍ��,��r�P�ƍ?;x��O�?�u�С�'N�5B���v`��S�N��iG�V�?y�L��ꝟ?���ԩy��Tw�t�W�e#:TG�ּ��/�C��<_U}�o}Qps^�.�K�d;.b�7�/�{v�uY+��w\���c��%�>�tl�F%'��'S�N� �"��W��9j<��K>� N���iϝ��zI���̗�A�k�3̟A���zk��ŋc�o��w���>��c?Y_� (��*��w�}��}��ϖ��v<��'{e�_/��-ȓ,�DF{�����O��8E��W�j Y�9VN�h�U�c!��@�D�!c=D���16���|JB(�֨�U�t><�3�|�KKo|x�κz��K��{~����_�Qj�������Zh��P�J��7y��o���&㣃�}f�P��������1���^P�K�:�B-d@�3Gw|��裏��k���AȆ�� 8p�7o�|套^z������z��o�B-@�&����{��g� }¥��Ya�_3>Na��7Ba(�--��dI%�ǽ����%��^�o�a����O=�I��� ;[hA�_�Qv�7::��l�.�����d߭�}�:::�a�����Ν;?�4;>#���.��B%�ք?�=��C!d�k�_nlݨn}}}��}����t�ʕs�|���~�x��_^��o���R���B��=~�766����X�!���ޥK������o����f��̎��)Λ�m�c�'av�Q�_�!��[�k�� ��E��z�� m�{�rjj�1�Da�/_>y��?��ë�h�ٶ���r����pۇ�[��� �/�[�k���B�V�'QU9y<�LY{�����ү�x��$c�k;20�=�v�c�]��zǎ�����uk|-�����p||���%o<Y���2ot����k�y���o�c�g5w�9Bmv?��s�w<���3C{�'z��|�w��w啳Z��X�)MOLL�I��o�������u��w{���m�hӡ�<�R�C���B-ԃ+i�^1�w��5��SO=��%�Mx�3I��A��Av��B�K���˗/ѵ7��^xᙳg�.����ϣO��q�����&{-�-���3/R��~��W^��'W��֯_�N��:��;�Zhap��C���ꫯ�����?�5�qZ���>s9�q���[h�.C��0%S�� ��w=�=zt��yw��Z�m�dXO>���_|1���;W�^�_/��C�<��M�Ю�ZhAڛ#c��;�I��mzcܦ���]���o���S���p�~��B�}� {�=�Zh� �/�[��Ay0IEND�B`�PKCA#]jֽ�/�/Ocomponents/com_sppagebuilder/assets/editor/dist/images/99334ff86cfc1d71b00f.pngnu�[����PNG IHDRr8F�x pHYs%%IR$�sRGB���gAMA���a/lIDATx�kl\��g��I�R(ǖl�X��`m���Y��@44�!i�HBڭӤ+���|Y��\Z`���[$�H��+:�"�mQ^� P�M�ƒ��n\h�ڒ,�%Y&uϜ�R���9�9�����ΝÙ���@����IMm�-�1��Viɘ�\6�nb;�wEݶ�m�����+"�8}rBr��ӧk�m�W*�Z�����,�soR뼏�nQ�gQ�w������CCC�M�6�{K� (Ѯ��z�"+���7i��@Ǎz�yW䏻?��)�d�ɓ'�FFF���j�+AW"<&1� �<6��˗/7�m۶(�+riw]E٫Nq�k�h�#�G��7(�$- ޣ��SJTw&%�i��?������j Y��B��$�Z�p�3�ۏ��Jԏ(Q�Bb�+��7F�H]����l��^"!�x+�R�N���s��NE��u���2���2��畠7��^�a�(�~����-��+Qo!����g$�ߓ��+A���QH!w��'T�O�i��ESm�驓^D�;iJ��PB^��;(:J�OA'%������T�d<�B9<3���>��NKy�'BoJAɵ�S���^2\QxM�GS l��R�)�BA/gΜ9`�>!3R��<WB�.!���2%$N0"��B ��>�<B4M)�w�!����ze�BI���?5a��=�R���Q=x�����-[��`���FYQ'��BOҁvK�Q"���i!~L��<�G�F��n-8I��0:�%��á�Zf�����y(��B�|\E�����"qT�L f�\�|y2�bn���7��:2�U�� E|`���$�1B���q�#Q��4+[̄"���剼E�F9rP"~T�٨�7��$�s���Km��d��R�(��x^����*J$c��)!�������C�#2r%�Μ��yGPs=g���&���w��GrBf� KÓOMX�h��gϞ_YY��(yiJ]��Y��)!��I�tqG�2��X�R�Lnڴi^&Uk"��>��b���ӰɄ�EY'���#���+���kg�O1�����ׅ�IM%?��l�b�P��m��p-��B�b�����)�傑y��%�L�Xr�x���Ǐ�Ƨ��x�k�$j��/�!&6�m�x`��YT�� ӪX���Q�� "st� D�5!F���b\�P"�+��B�Ȣ��&�6a]�k*Lp�Q���#r��C'ƪ"�9�%2�5��Q��X�ܝb��a3$j�s!�p��)!&Rǚ�b� 9Gђ^(!�Μ��!D��h�l����&��/iM��>&?��hܲ,N�4c��X�\EZS�dH��"���Qǜ!F�q�b����! ʘ�<�/J �b<�Je� ݞ���i��P(!���8��୷��*5B�GM###�G� 9,�b�$�5gS�����)!y"�Od!��Be�9�#�h|��V�%]��������B�6L�ˍ�V�}�>��C���~'����HBTl6*�Xx�]��(����Ν;'o���\�zU>��)9;$C�F�TH\��h�����\�*�.]���{o�w�+���RV���-�ߝk�EՄ������]"y�VQ��˖�����^qG*dB(!G��f�I�*���͙�&�n�MD�%�.6"g4N�ϲG�y��p�� �]�|�m�����X��Ɇ��Ib�=*W"X���f7"1/+�J%��g`!w� I��G�*"Xr������ dxxx�u%�^�IF�v�� I �9*σ��h\�*��G�[nYs}�}�,�CAnԎ�m!$qtT�� �!%��yHtz��!���[eqqq�z=��.NP�x�ʕUϣQ��������cްT��L���5�5Zvv�XR>ܨ�!%BY51o��q��z��/^��7ʠ����_Uo���Ɋ��U��>������X5)(��V�P�i隳�t)cT�U$-�:��woTQT��}��5���;��+�\z�;�Ӿ�˂�����Ƴ�mD}��gඛD֯sD<��C�e������<�J� Rjb8�����57�|����7 c�8C�o��;D�U4����<�yB�l�z+��8�{��{�� 뜭��_So�;��y��z���|���M?9a- �+��Cw�+�1��b�WăX%��+���3d�d@_iSI�ܮ��h��M�V�]�;��ܭv ;��<x[𨞄3X��<��`t��3�n�i�eQ�GFFV�㹂��YE�&�S��\r���t��$т��IK$Ws�����y�q�!b�� �;%*� e����$��*:�+����<^���B�٣��~2D/�1 ��~D��D�w�2`��(||C�"�A�O1����+��������S'Gâ��xk���F؝rX������G�2�_vt�1�����B?�D7�I��ι/eW[�x�h1��� ��W����Rl�bZ$!�A���]��o�2D�3z�xT�`��ǃ��y�b/� 9l�<v�"��O�.�Bb�mJ;($U�(C8���JP����+❍A�蝄W�;-��Y��*�y�UwP�m��ϼ�^�Y�lB�^)��۶��m՝�@��,D�QZ��O�nG㺼�ͺu�ډP��q4y����%n�<� (�̽�~�J/�ۨv.W��P�^+rs��(�&��y�c�)'(����<�lD∲{uuz�Z�����Mɀ��9��-���OG麄5�:Ύ͏g7��P���(1(*m�!t�� Cg"D6�Z��~�E��s�~��{g�J���mFD.��;%r�J�o�ٙ����6W[���W�m��o��,���K���`|��+�O�K�m۶ə3gMe�9�6���FɈʃt_B�s�i�Wϲjeyy9���R{d�Hn� ���K@!���YÎ�nؘ����w�X�2�;3%�)?q�<��%�D�x��r<�w��{?oR^xP:�<+�J�8�و��0"� D����M=�<�=�$����gx���4��Α���4�l�w\F������z��2rC��z�HLz�\�+���β b��Nk%��u4���T^����#�e�����v�F�ϔ��#<Z=�jC�ʯ�k��8�A扣�n��VA|o�ٳ��*!?.ѹ����a0A���G���#XA����� vϛ��%��h�7���)(���pD|X2"�p� "�jP?���[���W�"v��1)ѩ�3"r)��b��k ��9�4�1�ṽ͗�o�Rì������={�d�� j;$h���x��u��o�����+�lm�h���IRP�1{!w�5)��8ج>ÿ�DKz&5�E:��� ����p4��Z��X���۫�m�DcP�e˖��;D����Zs<{��{A��t�:�<���M�6��K��� "�$a��<���BR2�rqi�����1V�����k�j��%�uID��ԛ�9s�L; E�6<H-7�d���H�[�8�gaa�-�xlm���$�E�z�α���ׄ�{-?*Y�CB$��s�W4$CV��H�8V��t� ���1��Q�V�Ӛ����`1+��4* �- �Z�:�D�B�� -�O�m�*Gt�?6��{�Ys=lD�x<�8�u ��p .C���5a;K#rL2�+5)m�p���̖�Qa��q{�=i�KB�M���96���u�]�ӧO7%��#"��O�ND�8�0�8����,xm����� !�ޥ�:w"i��///�J�x��W�@��Xvm�-L�_��T�q�,����b��u�'ϼ�1iTT~D$���m�� �����0"v��>�-Y5iV��APO���m"�T��m7��݉�z��{���I�Q>y�� ��1^��INA�P�n�ж�� ��[��݆��*��d�<#�@[���HƬ y^+�^l��[��9�ꥠ;�8����b�c`T��0G�zE��(̈���/n� �8���U����oN)y��9gq�Avr�E�V "r���4�hO���h�Q�%9$nW�ڐ�`�0 Ϩ�[S���iQ�]�d'@��je�4���бZ�q&75:��� B��"_<��'���܈�ȹN����\ 9D��R-��R�� R��w,a�����ߟM�w;��&%�����I�MJA.=�W��@8۳�S����0��!Gb��T��I���2-�D���A���s���0-a(���etX��9&����澄j:�JВ� *�m�Y!&�0���K��<�NNj�X��)����t��#چ�Qdž�Q�6)~t���~��f�"�aSӬ`1��b�����T@{��J�b�:�!�8j��F���CZ��ôV2,�N�گ�����1�R�Kn������p5�htKvb'5q{�F����g˖-[�>}z�t9Ɯ�üqMn���'\W{bs���Cդ�0�YT��'�d�~�q���h� Τh`�di�`G5ʄ"�V�Q�O�y6̘���!O�NҶ�}�[����2�Rb`�j�MS�T4�[+iD�Yp�vN��9���.�VR���%U&M�T4m!7y�<�\�0��$� u�h�p,�'��PC�x��*yD����B�X_܋7"7nw4�ƙ��K���seG����u��7;��n�^��6��?.�伐��r��ɂF,�>OKX�I�,�6Y.�hM-s�9�Q��"~��AD�qW� �E9a�8^�Z�h��wHdY�"n�_~��S�j�fyBH�4��Orª�(]���51��"�-� ":?�{G� �hA� #.����G�rD�A�QAD�t��0p?�R~��mxb>m 6�O�F�GH,�H|���˹����yCl�6w'X��m����(G��d4�znD�������6ag�N�r��)vp�A�O)1ǂu!��TG8��^L9,ޥތ��lN�o�z�"��w:vNM9z���Q�:1��̲w���wgyyy7"I!�ДT�t��d'D+��p]=�����"�$ɲJX*q���S!Ma�yWA*�eB8�<�N0�"*�3 1��Sl��I��kW$Q`�����Dž�b�ON�~��Y8�64 ��V����TK�>kC��j����D%�gx�8��[�=.7�*EIa1�[mat'�)�%��y��;Y#_&|Q @i���A}�� �Ø-�Bq����1�VQ�?�i���A~�J���f�EI{�߅�K� �:"�;��&dM�~�q�f�*�⌑P(��Ub)�KSm��ܚB�F�M�\ِ�J4z���,�x���M?qv_��ޔ& M����j�F��A��.//O��prT:~iHƤ�t��rJ�;�y(؉*��N� �e�&$JM�wA��yD\aRJ�3��+��;��]�x���E��L3"��߇ W�h:k��~t���w]D�Q�"����L��D��F��# _ZZ�V$+��j5����* ��'v�v�7A������o��yA�ׁ.WE(��q���o��I�i�m��Q����,_�N�Jc�H�����;�&?A��������o��1���)�^Z��c�9��۔b�T�^����y��9{\}i�$#�neҋk���ޓ\wg����~XL����X1�����Ĉ[<��&��bGw��&����MHb�>}zJ��[u�)��TGϚ�$[RX�.�Μ���i��ۓ_���-J�L�JT��ȉ/3OMX{�$��:��|MSl��DCJJ���p^C�I�~�ERB�磈�1!�1D��:�#���j�m�J�n,��ҋ��~JKg��g2�>ɤ#�_2�2������b$�X�q�sGf��(�W�R��S��^���e�N�^Wde����W7�T�/�kK\��x_Ht�([e�#8y���M7�T�������< 6l��A�w��j����yy���dz��^�3�ʑxC�L��s�T��7�"����@07WL�?7:��G�ggg�+�W�>�NvO�<\? ��x�\V�V�7m��*���,��V����$��kО��A��p�+BL�������@m:�O�_eDO���Ր��<�����l����q�ɇ���_̛Y+/�Ss���.�QwZ�/��)ZtZ\톐@T|��t6�5�aD����s"�<T���͓`� �=*$�����a�w�솝a��5�������D�_�z��CDߺ��'��6�x��^��H�810��\ᆐ����T�sŀ�]�d�Bi�k( �&�!K��օ���◊�ˬIk�b:� �Z&=I���V!$���+֬�e�H:�0'$�[n�|"i�h����&�F�$a��PM��+RIF�D#���^yC�e�=�h��h�K�¨��,�j�]Ą��B�Ms�� $���H�b+�WΩtd`�#�.���Dr7z��BF ��B"�� *�:��'�-Bba�5x���Z,$��i!��@BN��D�� !�1𪘴XHXh�/1,oL���� !���#��1'�'qZ*��O,Bоosn9�f��R!$~br��|�r� ����!$vbr��|7�ݒf����:t^t}P&?I��0BH��.�>� �Z�G'7�sBHb$"��kּ0+-o !$Qr��v-v~�%��vS� I�D� �E1/��#�BH*$.�b^(�dC*B(�ņ"NHv�&�b^L(�dK�B��V��:e�"NHv�.��,+����|�CB� !�3�P�� f긑xS!������+� !�S.�|�b�&!�����9D�IP�ARSYb{1�R!�`�A|gΞR/��ՄE���]���\_��R�k�-�%c��cL��X�h����?-���|ծ�+��l���rp`ή)!?���#��R�.��2�����zB�y�hk�*���/7�$'�o����yFHf ���� �!�-�b�ϗ]RP�FUV�ο0ڔ�c��7:?J�%f*��l�������m��/ �T���p�spF�Fy��!:�o�; _�]���-�R*,ۚ�X+����B��s%0���;nEʳC"��/��O����4�Қ,���F�5�;�W�dhMH,��={[�B'�)���N�5,U����F����O ?'�6�/�v݄�� �����8x���њB�X�?Z��������O����I!�j?��FR #䚿��wUD�`C���-���1[�<�����'��'^X7)�pB��U.J�w�1JW��y��)j�N�O�҇�D�CRP� �)�G��-�S��%�,S%�XREJCrNa#�n�(}��N����4Q�od|�[Y�rN�Ò��Һmy�U*!�5�� ���/��s������F���]��Kv���M��c k��Al�S��ו�?�N�M�ؗ/.ʛ�6�#w����}�y�����T��.w�BB`���:���SǶ��֜=�D�f9���$MkI���ݢzl,b|\�6�j�x�w���7iG�B|�����Ễ��ځ[�����k�������_u~����A>����|,u�y���M�P�v��F��=��BBcI�ƈ�ǮIΡ�G��y!F�D�&��&9'�5; !���Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��Br��BrΐB2�����W}�%/��/rB�kZ�-wX���������BH�<r%���ퟨ�#��ז���B2�;�} '�}R(�d���!�|玪l�EY�BNH�l�?�Wp��*��TU�P� ɐ/��ނ�Ƃ��;h���P� Ɉ~I���՞��w+���:�$����/�Ғ��y��ޥ�_���ā�B2�/��ˎ���G��P� ɀ~I�S����9֒��ʿ�i&= ���L���F���O����Q� ��������O��)�qo{��Lz�Z!$e�%9�܄��6� 7w�/��j�d���-�[j�rM\�$�����$$A(䄤�_������o�G����+Hz�)�8���G,uT�_�����<�W~á_q�c2BRį�b�^���/���?W��=7,��P{�D��$����nWܐ��IH��Kr�B��VѼ���[S�t�G��? �_P��D��SC�ѽ$(䄤�_��ŗ�[�jʓLzU�5ޱ_�L�-�dp(䄤D�$��v�~5�Hz� "��rx�(��X�����Mr�O� ��>�C��Z�����E����`���� 2�g><�!$���G^V�qT%=�����O�QE^o�H ��r��?Yi'c��7��~��;sQ9���w���@�$g���^�~�Kz�1����B�?�gW� L�^?^��߿&�A��v�ʣ�w����Kr��5~I�8����}����g/}����#�w����Kr�ǽ�%=�aM��G�K�~���{��(GQ�;GH��%9{5�I�W��I�AKᄑ�u8"����^�h�ϓ'ݡ�� ~I��4Z��o~�~�F��W_�&���uྭ�(P� I�~IND�o4� �+> ҝ;�'=��⋗���>B������f��9_�+���Q|f/��{�(t��tX Ԩ4��+��.�$(�fs\m��Br�gwD��t��I��DB>l6.�G�֊��{�ׅ� ��Q�'�ٿ�ӔE'0�%�;?E�IF�f��8b�b<~I�_�'���A��/|&�E'�L Y��m1�N ��4�������B!��,�/��E=����G>�46�w�x'5X��C!7����{�em��_���"�E'M��oB�|wF��A��|z�#2�'�h���i3Ȣ�G���C�}�BO7 ��4ʼn�5��Jb~I�,����bA��1%L��}�5N8LZ+�`Zm;�W~XmB��8���Y�E'�$=!��rxyh�$?k���p�z�Yt6���?Z'$^(����j;�^G�'��_�3+��Hz�"��C�_z�n�'z�]�ksВJ y~�W�Cm����j;����������,��n�'��JФ�>�_ �O%��F��<_�'�y]ms�D�M!���%�>� @Hz� ��Ǐ�o�q-����S�Ớ/yC�;�N��� �?� PT!��$����cG0��aZEOQ?��?�q��8V�!aUK�ĵ&�`��~ �ُ{}odK�E�B��V� �|J�����f���ck���.��/ɉ���)-,�7HIOtb���.���3��qĂ�I2P�� ���D�{:����.!���|�V�-�Ѓ���~O�QE y�NO��Q�!��==�f��qN�i��o�ni I?�ŗӭ� �~ ��kщ������N2��JOF�š)����8>9�a�Ԥ\�$%�Ty�]����"�z�$���O0��O���v_�\U���)i@!/& w;(�$��� UY�E��,:�d�����ڑ��հ|�+�E��@��~L���c�X=�v�,zE�ܣA!'d�:9_y-�}��$=Q��y��c��|j�m�\���r?�����G\g���#'$"�I�W[�����&�w��5�"n=�<��c��=�o+#�(P� ��o��X�-�~Iϝ;�'=!��A|���}�ڪ'�O�ueLT.�}YN�}E�lo�N�@��B"$�ҫ� ����IOx�/]����j����?i�7=����~���� ~�Wߐ�����.��b������[��~9#rB"�����{I�~<���5�'��Z�nN8�����k��Fā�������8Ν��7���ʥy��PN��W��)"4�H�x��ˉ��[�vD���,�{� ����t"ZFm8�����g����>�+�{���+�H�j5y�g�رc233��v�TT�避���֖�x�\k!���4������Ey�ǛW?y�d[�A�ٔ��������l~��U�%�BNk�R(���V�C�!�н�Ê��_�P� !��:<��4��7��2==-sss255��r��e$�C)䄐�S]w]�������C�ڛ�^��c����I��Br��ƇVϟ?��m�#:߷o� W�3�Jr���{��J������I���D�G%G�9���{F�^=��#�N�B�;�.חP4 9!$�T�}d�|����,G��!*-t�h��BrϨ�#�{��b9,'C)䄐�S�x��?aAT�k�;�C��rBH�Y�1kP1�=�����)1������s 9!�����z>�O� X,(U�a��d�d��R�o����~��a���'�f�)� 9!�x#�8��Nt2�ޣ�<�d(��R�>yB�������I�P� !�`8%!��d�]kJ������rBH!X���X,��= ):��R�3rM�d(l��k�)䄐B�D-yt2�� �Ē�rBHa�V�Dm��^���'2��BN)U���ǏK��Z�H��mU" 9!�0�x�٦m�t�gWl�Q� !���� ��*QR��(�pXb7�����L��r]{�#:'�s 9)�m�31���L��N�v�[�GJ�R�I�*���RbrDމ� .�T�Ǣ���Ѳ�Y!���C�M�ɻ� \{N!'�chdd^�f�c$��c�MczT�tU" 9)�3֢Jx>/�����z�gֵ�a��PLX�P�U�(䤐�^)/y�ɻ��y�U�(䤐��цJ{6��Sk��`U���rRX����^y�Xwsm�|���d(���D�ն�P�Ia�a�i��BJ�����̻�k���{%C�%������v]H)X^<.������<w� �&&&���#rRx�#û-�ݞe����.� ϐ�1"'�`��Z˪�m;�ѡ�\^��fY��x��&ƃ�; �8�|�T�ޱsj�mېR�Oٓ+���S��Rh���V��g��C��(/,,��n!x?(�4�QH�L=�����kkqIq��\��l��P����!�Z���tL X|���o';)�t��oG*�ev�]��輈�Ka!f����l�{�M���7�l�wλ������rRJ`���)%���lk_Ųv� -�K�C%��-i=�=~m��ŝ���=��r��A���:~oJ��$����ƫ�P�Ւ�eU�}ޖ�5!fbY�6��E�j�b۳�;;h0%�|�v 6j����ݻ�D��r=z����}�B���ll*�iǁ��ccc�~\wC�:|�}���y�{!����Gpϝ;g�ɓ'�;Y+�BH�@l��!�����H�������Ç�Q9z�h����E�RTV�2�;2*{����v�$(䄐����Qk����y�I!�����!��_]�Z*�B!$U���z�n���J�BI��D�%?x�`g4^B!�S��K�!!��������f�JM!�d�j-9�8t�P��2%�B2娸�<33c�Ra9!�Ȭ�*�WK�Ѵ���!�d̴�%�{�8#rBH�i�3������ϴB1��[K>==��ׄB�1��h, �R1n !����ӳ�����f���B���֒c�6BH����kj�نO!�bF<S��k�.��BH���Z�� !���.�3B!$7L�3{�{j�"�Q���������IEND�B`�PKCA#]!�KZYZYOcomponents/com_sppagebuilder/assets/editor/dist/images/1924b8a0608a4b4c1b70.svgnu�[���<svg width="135" height="152" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(#a)"><path d="m84.826 15.926-39.11 6.246 2.067-11.942a9.817 9.817 0 0 1 8.12-8.024L68.947.123A9.802 9.802 0 0 1 79.155 5.22l5.671 10.706Z" fill="#DDA45C"/><path d="M79.155 5.22a9.796 9.796 0 0 0-2.766-3.236L49.407 6.293a9.809 9.809 0 0 0-1.624 3.937l-2.068 11.942 39.111-6.246-5.67-10.706Z" fill="#F14D64"/><path d="M106.343 20.635c1.583 10.401-14.908 21.548-36.833 24.897-21.925 3.35-40.982-2.368-42.565-12.768-1.582-10.402 14.908-21.549 36.833-24.897 21.925-3.35 40.982 2.367 42.565 12.768Z" fill="#FBC875"/><path d="M106.167 19.772C103.959 28.998 88.85 38.02 69.51 40.974 48.2 44.229 29.6 38.919 27.12 29.068a9.583 9.583 0 0 0-.176 3.695c1.583 10.401 20.64 16.119 42.565 12.77 21.925-3.35 38.416-14.497 36.833-24.898a9.282 9.282 0 0 0-.176-.863Z" fill="#DDA45C"/><path d="M29.217 37.665s3.807 5.363 10.916 8.086c0 0-3.76-2.681-5.458-5.195-1.698-2.514-5.458-2.89-5.458-2.89ZM97.18 35.427s7.23-3.152 10.863-9.723c0 0-3.397 3.876-8.918 6.193-5.52 2.316-1.945 3.53-1.945 3.53Z" fill="#DDA45C"/><path d="M83.436 69.097c.005.037.178 1.568.585 3.944.614 3.567 1.743 9.023 3.665 14.245.965 2.612 2.126 5.17 3.571 7.426a21.038 21.038 0 0 0 2.412 3.123c.892.94 1.883 1.772 2.995 2.429 1.055.623 2.093 1.083 3.114 1.386 1.019.304 2.019.449 2.976.449a9.278 9.278 0 0 0 2.668-.388c1.448-.432 2.661-1.173 3.648-1.994 1.482-1.237 2.493-2.653 3.17-3.77.673-1.117 1.005-1.945 1.042-2.037a2.488 2.488 0 0 0-1.39-3.23 2.48 2.48 0 0 0-3.223 1.392l1.479.59-1.476-.598-.003.009 1.479.589-1.476-.598a11.869 11.869 0 0 1-1.345 2.298c-.546.733-1.245 1.461-2.013 1.962-.384.253-.784.45-1.204.587-.42.137-.86.214-1.356.214-.461 0-.973-.067-1.563-.243-.589-.175-1.257-.46-2.006-.903-.853-.502-1.715-1.272-2.543-2.28-1.452-1.762-2.767-4.243-3.847-6.96-1.63-4.076-2.754-8.666-3.45-12.207a92.913 92.913 0 0 1-.753-4.344 68.57 68.57 0 0 1-.21-1.55l-.01-.079-.002-.017v-.004a2.483 2.483 0 1 0-4.934.559Z" fill="#F9AF85"/><path d="M81.507 69.386c.01.078.305 2.36.981 5.708.678 3.35 1.73 7.759 3.301 12.147a4.43 4.43 0 0 0 5.67 2.677 4.443 4.443 0 0 0 2.673-5.68c-1.36-3.785-2.337-7.837-2.955-10.905a92.833 92.833 0 0 1-.832-4.754 31.282 31.282 0 0 1-.036-.26l-.008-.059-.002-.011v-.001l-2.475.322 2.475-.321v-.001l-2.475.322 2.475-.321a4.433 4.433 0 0 0-4.963-3.836 4.44 4.44 0 0 0-3.829 4.973Z" fill="#6372BA"/><path d="M80.207 121.969H54.283c-3.256 0-5.92-2.669-5.92-5.932V70.442c0-3.262 2.664-5.932 5.92-5.932h25.924c3.257 0 5.921 2.67 5.921 5.932v45.595c0 3.263-2.664 5.932-5.92 5.932Z" fill="#6372BA"/><path d="M69.398 72.409h-3.865c-2.374 0-4.316-1.946-4.316-4.324v-8.148c0-2.378 1.942-4.324 4.316-4.324h3.865c2.374 0 4.316 1.946 4.316 4.324v8.148c0 2.378-1.942 4.324-4.316 4.324Z" fill="#F9AF85"/><path d="M69.398 68.007h-3.865c-2.374 0-4.316-1.946-4.316-4.324v-2.004c.131.01.263.018.395.024a4.33 4.33 0 0 0 3.92 2.522h3.866a4.329 4.329 0 0 0 3.913-2.504h.403v1.962c0 2.378-1.942 4.324-4.316 4.324Z" fill="#D49270"/><path d="M69.398 64.225h-3.865a4.33 4.33 0 0 1-3.92-2.522c.252.012.507.018.762.018h10.936a4.329 4.329 0 0 1-3.913 2.504Z" fill="#B0775E"/><path d="M73.58 61.721H62.376c-8.722 0-15.86-7.15-15.86-15.89V29.499c0-8.739 7.138-15.89 15.86-15.89h11.206c8.723 0 15.86 7.151 15.86 15.89v16.334c0 8.74-7.138 15.89-15.86 15.89Z" fill="#F9AF85"/><path d="M69.89 49.493h-1.745a2.289 2.289 0 0 1-2.28-2.284V30.2c0-.624.51-1.135 1.133-1.135h4.01c.64 0 1.162.524 1.162 1.163v16.98a2.29 2.29 0 0 1-2.28 2.285Z" fill="#F57B8D"/><path d="M68.565 49.493h.905c.852 0 1.614-.402 2.11-1.025-3.015.594-4.088-.856-4.088-.856V29.065h-.286c-.737 0-1.341.605-1.341 1.344v16.38a2.71 2.71 0 0 0 2.7 2.704Z" fill="#CF6B78"/><path d="M64.33 36.12c0 2.45-1.202 4.436-2.685 4.436s-2.685-1.986-2.685-4.435c0-2.45 1.202-4.435 2.685-4.435s2.685 1.986 2.685 4.435ZM79.075 36.12c0 2.45-1.202 4.436-2.685 4.436s-2.685-1.986-2.685-4.435c0-2.45 1.202-4.435 2.685-4.435s2.685 1.986 2.685 4.435Z" fill="#431615"/><path d="M76.68 50.776s-12.945.874-16.567-5.443c0 0-4.12 9.41 4.024 12.432 10.866 4.031 12.543-6.989 12.543-6.989Z" fill="#232453"/><path d="m62.964 50.978 2.214 4.167c-2.019-3.818-4.782-5.487-6.024-6.078-.35 2.977.219 6.93 4.983 8.698 2.528.938 4.556 1.063 6.183.701-2.308-5.547-7.356-7.488-7.356-7.488Z" fill="#F57B8D"/><path d="M60.948 46.49c1.758 2.71 6.527 8 15.428 4.301-1.82.078-11.416.257-15.428-4.301Z" fill="#fff"/><path d="M50.237 37.607c-.754-2.598-2.17-4.656-3.721-5.637v-1.448c0-9.302 7.596-16.913 16.881-16.913h9.161c9.286 0 16.882 7.61 16.882 16.913v1.002c-1.693.578-3.347 2.507-4.322 5.128-1.453-4.671-2.144-9.172-2.144-9.172-3.518 1.116-7.48 1.613-11.374 1.748a1.15 1.15 0 0 0-.592-.163h-4.01c-.204 0-.396.055-.562.15-8.029-.296-14.644-1.735-14.644-1.735-.194 4.095-.804 7.447-1.555 10.127Z" fill="#D49270"/><path d="M69.252 29.269c-.591 0-1.18-.008-1.76-.021v-.183h-.286c-.225 0-.437.057-.624.156l-.146-.005c.166-.096.358-.151.562-.151h4.01c.216 0 .419.06.592.163a67.51 67.51 0 0 1-2.348.04Z" fill="#D66876"/><path d="M67.492 29.248a83.566 83.566 0 0 1-.91-.027c.187-.1.4-.156.624-.156h.285v.183Z" fill="#AD5763"/><path d="M45.236 33.218S43.704 12.6 57.529 12.6h20.444s12.692.05 12.692 20.617l-4.558 2.243-2.035-9.635s-4.21 2.373-14.79 2.373c-10.58 0-18.053-2.577-18.053-2.577s.074 6.283-1.554 11.25l-4.44-3.654Z" fill="#8E431B"/><path d="M86.995 18.148c-3.748-5.524-9.022-5.547-9.022-5.547H57.53c-7.446 0-10.436 5.98-11.611 11.498 5.635-2.238 12.294-4.047 19.528-5.151 7.788-1.19 15.185-1.406 21.55-.8Z" fill="#692F16"/><path d="M51.229 25.622S58.702 28.2 69.282 28.2c10.58 0 14.79-2.373 14.79-2.373l2.035 9.635 2.865-1.41c-1.637-4.972-1.522-11.47-1.522-11.47-17.048 6.102-37.615 0-37.615 0-.133 6.281-2.509 9.478-4.2 10.966l4.04 3.325c1.628-4.967 1.554-11.25 1.554-11.25Z" fill="#692F16"/><path d="M50.36 38.059c1.093 4.296-.038 8.294-2.525 8.93-2.488.635-5.39-2.333-6.483-6.63-1.094-4.297.037-8.295 2.525-8.93 2.487-.635 5.39 2.333 6.483 6.63ZM84.68 38.059c-1.094 4.296.037 8.294 2.525 8.93 2.488.635 5.39-2.333 6.483-6.63 1.094-4.297-.037-8.295-2.525-8.93-2.487-.635-5.39 2.333-6.483 6.63Z" fill="#F9AF85"/><path d="M48.653 38.021c.635 2.538-.118 4.915-1.683 5.308-1.565.393-3.35-1.345-3.984-3.884-.636-2.538.118-4.914 1.683-5.308 1.565-.393 3.349 1.346 3.984 3.884Z" fill="url(#b)"/><path d="M86.813 39.02c-.636 2.537.118 4.914 1.683 5.307 1.565.394 3.349-1.345 3.984-3.884.635-2.538-.118-4.914-1.683-5.308-1.565-.393-3.35 1.346-3.984 3.884Z" fill="url(#c)"/><path d="M61.167 62.5s-5.433 1.74-5.433 6.583c0 4.842 8.275 6.052 12.52 6.052v-2.648s-6.411-.734-7.087-4.34V62.5Z" fill="#F14D64"/><path d="M73.73 62.5s5.433 1.74 5.433 6.583c0 4.842-8.274 6.052-12.519 6.052v-2.648s6.411-.734 7.087-4.34V62.5Z" fill="#F14D64"/><path d="M67.466 73.456s-5.659.093-5.552 6.724c0 0 4.771-.513 5.552-6.724ZM67.466 73.456s5.658.093 5.551 6.724c0 0-4.771-.513-5.551-6.724Z" fill="#C03947"/><path d="M69.993 73.456a2.53 2.53 0 0 1-2.527 2.532 2.53 2.53 0 0 1-2.528-2.532 2.53 2.53 0 0 1 2.528-2.532 2.53 2.53 0 0 1 2.527 2.532Z" fill="#F14355"/><path d="m78.606 49.989-3.747.239a.836.836 0 0 1-.884-.78.837.837 0 0 1 .778-.886l3.747-.239a.836.836 0 0 1 .106 1.666ZM62.697 46.923l-3.066-2.172a.834.834 0 0 1 .962-1.362l3.065 2.171a.838.838 0 0 1 .2 1.163.835.835 0 0 1-1.161.2Z" fill="#8E431B"/><path d="M46.207 69.661c-.001.048-.025 1.501-.203 3.724a79.53 79.53 0 0 1-.708 6.025c-.533 3.386-1.388 7.138-2.67 10.28-.64 1.57-1.384 2.985-2.21 4.125-.825 1.143-1.72 2-2.658 2.553-1.279.755-2.468 1.24-3.567 1.541-1.099.3-2.11.418-3.036.418-1.902 0-3.469-.5-4.555-1.001a9.675 9.675 0 0 1-1.227-.67 6.145 6.145 0 0 1-.283-.196l-.05-.038-.004-.002-.692.88.709-.868-.017-.012-.692.88.709-.868a2.48 2.48 0 0 0-3.494.35 2.49 2.49 0 0 0 .349 3.499c.123.1 1.034.834 2.618 1.564a15.868 15.868 0 0 0 6.63 1.456c1.347 0 2.81-.173 4.344-.594 1.535-.42 3.14-1.086 4.78-2.055 1.496-.884 2.745-2.082 3.798-3.44.922-1.19 1.699-2.508 2.371-3.901 1.175-2.438 2.031-5.107 2.682-7.755.973-3.97 1.475-7.893 1.743-10.847.267-2.952.296-4.93.297-4.978a2.485 2.485 0 0 0-2.447-2.522 2.484 2.484 0 0 0-2.517 2.452Z" fill="#F9AF85"/><path d="m44.353 69.55 2.396-.074-2.397.056v.019l2.397-.075-2.397.056v.03l.001.098c0 .88-.104 6.244-2.483 14.825a4.442 4.442 0 0 0 3.085 5.468 4.43 4.43 0 0 0 5.456-3.091c2.617-9.439 2.807-15.617 2.807-17.202 0-.211-.003-.34-.005-.386a4.436 4.436 0 0 0-4.568-4.3 4.438 4.438 0 0 0-4.292 4.577Z" fill="#6372BA"/><path d="M42.841 119.302H25.438v-36.88a2.299 2.299 0 0 1 2.296-2.301h15.107v39.181Z" fill="#DA4A1F"/><path d="M42.841 102.742c-4.176 9.797-11.123 12.461-17.403 12.503v4.057H42.84v-16.56Z" fill="#B33D20"/><path d="M42.841 102.742c-4.176 9.797-11.123 12.461-17.403 12.503v4.057H42.84v-16.56Z" fill="#B33D20"/><path d="M42.841 113.174c-4.176 3.58-11.123 4.553-17.403 4.569v1.482H42.84v-6.051Z" fill="#A3321F"/><path d="M39.616 117.422H28.505V82.463h11.11v34.959Z" fill="#fff"/><path d="M39.616 117.422H28.505v-.428h11.11v.428ZM39.616 115.251H28.505v-.428h11.11v.428ZM39.616 113.079H28.505v-.428h11.11v.428ZM39.616 110.907H28.505v-.427h11.11v.427ZM39.616 108.736H28.505v-.428h11.11v.428ZM39.616 106.564H28.505v-.428h11.11v.428ZM39.616 104.393H28.505v-.428h11.11v.428ZM39.616 102.221H28.505v-.428h11.11v.428ZM39.616 100.05H28.505v-.428h11.11v.428ZM39.616 97.878H28.505v-.428h11.11v.428ZM39.616 95.706H28.505v-.428h11.11v.428ZM39.616 93.535H28.505v-.428h11.11v.428ZM39.616 91.363H28.505v-.428h11.11v.428ZM39.616 89.192H28.505v-.428h11.11v.428ZM39.616 87.02H28.505v-.428h11.11v.428ZM39.616 84.849H28.505v-.428h11.11v.428ZM39.616 82.677H28.505v-.428h11.11v.428Z" fill="#9DA09F"/><path d="M39.656 115.645h-6.853v-1.227h6.853v1.227ZM39.656 111.302h-6.853v-1.226h6.853v1.226ZM39.656 106.959h-6.853v-1.227h6.853v1.227ZM39.656 102.616h-6.853v-1.227h6.853v1.227ZM39.656 98.272h-6.853v-1.226h6.853v1.226ZM39.656 93.93h-6.853v-1.227h6.853v1.226ZM39.656 89.586h-6.853V88.36h6.853v1.227ZM39.656 85.243h-6.853v-1.226h6.853v1.226Z" fill="#3D3F41"/><path d="M39.624 119.296h3.217V80.121h-3.217v39.175Z" fill="#F46B31"/><path d="M39.624 119.296h3.274v-19.234h-3.274v19.234Z" fill="#F25B1C"/><path d="m109.602 107.484-11.888 3.741-11.718-37.382 9.26-2.914a2.754 2.754 0 0 1 3.454 1.807l10.892 34.748Z" fill="#DA4A1F"/><path d="M105.226 93.525c-1.546 6.334-4.97 9.41-9.79 10.432l2.278 7.268 11.888-3.741-4.376-13.96Z" fill="#B33D20"/><path d="M107.976 102.297c-2.595 2.99-6.378 4.922-11.109 6.227l.847 2.701 11.888-3.741-1.626-5.187Z" fill="#A3321F"/><path d="m97.572 111.262 3.07-.965-11.716-37.376-3.07.966 11.716 37.375Z" fill="#F46B31"/><path d="m97.572 111.262 3.124-.983-5.752-18.35-3.124.983 5.752 18.35Z" fill="#F25B1C"/><path d="M93.138 77.455a.844.844 0 1 1-1.612.507.845.845 0 1 1 1.612-.507ZM95.848 76.602a.844.844 0 1 1-1.612.507.845.845 0 1 1 1.612-.507ZM98.558 75.75a.844.844 0 1 1-1.612.507.846.846 0 0 1 1.612-.508ZM95.48 79.54a.845.845 0 1 1-1.058-.553.844.844 0 0 1 1.059.553ZM98.191 78.687a.844.844 0 1 1-1.612.507.844.844 0 1 1 1.612-.507ZM95 83.4a.845.845 0 1 1-1.611.507A.844.844 0 1 1 95 83.4ZM97.711 82.547a.844.844 0 1 1-1.612.507.844.844 0 1 1 1.612-.507ZM100.422 81.695a.844.844 0 1 1-1.612.507.846.846 0 1 1 1.612-.507ZM97.345 85.485a.844.844 0 1 1-1.612.507.845.845 0 1 1 1.612-.507ZM100.055 84.632a.844.844 0 1 1-1.612.507.846.846 0 0 1 1.612-.507ZM96.864 89.345a.845.845 0 1 1-1.058-.554.844.844 0 0 1 1.058.554ZM99.575 88.492a.845.845 0 1 1-1.612.507.846.846 0 1 1 1.612-.507ZM102.285 87.64a.845.845 0 1 1-1.612.508.845.845 0 0 1 1.612-.509ZM99.208 91.43a.844.844 0 1 1-1.612.507.845.845 0 1 1 1.612-.507ZM101.918 90.577a.846.846 0 1 1-1.613.508.846.846 0 0 1 1.613-.508ZM98.728 95.29a.844.844 0 1 1-1.612.507.844.844 0 1 1 1.612-.507ZM101.438 94.437a.846.846 0 0 1-.553 1.06.847.847 0 0 1-.506-1.615.845.845 0 0 1 1.059.555ZM104.148 93.584a.845.845 0 1 1-1.611.507.847.847 0 0 1 .553-1.06.843.843 0 0 1 1.058.553ZM101.071 97.375a.845.845 0 1 1-1.611.507.845.845 0 1 1 1.611-.507ZM103.782 96.522a.845.845 0 1 1-1.612.507.844.844 0 1 1 1.612-.507ZM100.591 101.235a.845.845 0 1 1-1.613.508.845.845 0 0 1 1.613-.508ZM103.302 100.382a.845.845 0 1 1-1.61.508.845.845 0 0 1 1.61-.508ZM106.012 99.529a.845.845 0 1 1-1.61.51.845.845 0 0 1 1.61-.51ZM102.935 103.319a.844.844 0 1 1-1.612.507.845.845 0 1 1 1.612-.507ZM105.645 102.467a.847.847 0 0 1-.553 1.061.847.847 0 0 1-.506-1.615.843.843 0 0 1 1.059.554Z" fill="#fff"/><path d="M42.841 80.12a150.205 150.205 0 0 0 43.016-6.233l11.715 37.375a173.033 173.033 0 0 1-54.674 8.034l-.057-39.175Z" fill="#EEDECA"/><path d="m97.572 111.262-5.941-18.954c-8.04 9.649-22.558 18.322-48.744 19.151l.011 7.837a173.016 173.016 0 0 0 54.674-8.034Z" fill="#D8CABA"/><path d="M94.63 101.874c-9.157 7.634-24.854 14.333-51.734 15.48l.002 1.942a173.016 173.016 0 0 0 54.674-8.034l-2.942-9.388Z" fill="#C9BBAD"/><path d="M76.743 116.45c.367-.068.732-.136 1.095-.205l-7.69-38.594c-.363.067-.727.134-1.095.198l7.69 38.601ZM85.941 114.496l1.087-.264-9.834-38.049c-.36.084-.724.168-1.09.25l9.837 38.063ZM44.581 119.311c.373.002.749.002 1.127.002V80.096c-.379.007-.754.012-1.127.016v39.199ZM90.489 113.335c.362-.098.725-.196 1.082-.295l-10.88-37.717c-.36.094-.722.186-1.087.277l10.885 37.735ZM83.076 74.684l11.912 37.372c.362-.108.723-.217 1.079-.326L84.16 74.38c-.359.101-.72.203-1.085.304ZM67.478 117.897c.367-.047.734-.094 1.104-.144l-5.498-38.976-.075.01c-.345.047-.687.09-1.03.134l5.499 38.976ZM81.356 115.535c.366-.077.729-.156 1.09-.236l-8.768-38.338c-.362.076-.727.15-1.093.223l8.771 38.351ZM72.114 117.237c.368-.057.734-.116 1.098-.175l-6.597-38.805c-.365.058-.732.114-1.1.17l6.599 38.81ZM49.09 119.274c.37-.007.745-.018 1.12-.029l-1.087-39.249c-.377.016-.75.03-1.122.042l1.088 39.236ZM53.642 119.116c.37-.018.743-.037 1.117-.058l-2.185-39.24-1.116.066 2.184 39.232ZM58.231 118.835c.37-.027.74-.054 1.113-.085l-3.288-39.195c-.373.032-.744.064-1.112.094l3.287 39.186ZM62.847 118.431c.367-.037.737-.078 1.108-.118L59.56 79.208l-1.107.119 4.393 39.104Z" fill="#A7968A"/><path d="M31.79 106.848a1.913 1.913 0 0 1-2.381 1.272l-7.8-2.377a1.92 1.92 0 0 1-1.27-2.387 1.914 1.914 0 0 1 2.382-1.273l7.8 2.379a1.917 1.917 0 0 1 1.27 2.386Z" fill="#F9AF85"/><path d="M26.751 107.269s3.933 1.483 4.816-.371c.984-2.064-2.212-2.789-4.89-3.633 0 0 6.403.876 5.693 3.284-.71 2.406-2.98 1.909-5.619.72Z" fill="#A86C51"/><path d="M21.781 105.796s-1.686-.356-1.482-2.138c.203-1.783 1.919-1.695 2.218-1.618 0 0-1.776.03-2.026 1.542-.25 1.514 1.29 2.214 1.29 2.214Z" fill="#FBC6AA"/><path d="M32.537 103.068a1.913 1.913 0 0 1-2.382 1.272l-7.8-2.377a1.921 1.921 0 0 1-1.27-2.387c.306-1.007 1.408-1.577 2.412-1.27l7.77 2.375a1.919 1.919 0 0 1 1.27 2.387Z" fill="#F9AF85"/><path d="M27.497 103.489s3.933 1.482 4.817-.371c.983-2.064-2.213-2.789-4.891-3.634 0 0 6.404.877 5.693 3.284-.71 2.407-2.979 1.91-5.619.721Z" fill="#A86C51"/><path d="M22.527 102.016s-1.685-.356-1.481-2.139c.203-1.782 1.918-1.694 2.218-1.617 0 0-1.776.03-2.027 1.542-.25 1.514 1.29 2.214 1.29 2.214Z" fill="#FBC6AA"/><path d="M33.535 99.596a1.914 1.914 0 0 1-2.381 1.273l-7.8-2.378a1.92 1.92 0 0 1-1.27-2.386 1.914 1.914 0 0 1 2.382-1.273l7.8 2.378a1.918 1.918 0 0 1 1.27 2.386Z" fill="#F9AF85"/><path d="M28.496 100.018s3.933 1.482 4.816-.371c.984-2.065-2.212-2.79-4.89-3.634 0 0 6.403.877 5.693 3.284-.71 2.406-2.98 1.909-5.619.721Z" fill="#A86C51"/><path d="M23.526 98.544s-1.686-.355-1.482-2.138c.203-1.782 1.918-1.695 2.219-1.618 0 0-1.777.03-2.027 1.542-.25 1.515 1.29 2.214 1.29 2.214Z" fill="#FBC6AA"/><path d="M34.704 96.154a1.913 1.913 0 0 1-2.38 1.272l-7.801-2.377a1.92 1.92 0 0 1-1.27-2.387 1.913 1.913 0 0 1 2.382-1.273l7.8 2.379a1.918 1.918 0 0 1 1.27 2.386Z" fill="#F9AF85"/><path d="M29.665 96.575s3.933 1.482 4.817-.37c.983-2.065-2.213-2.79-4.891-3.635 0 0 6.404.877 5.693 3.285-.71 2.406-2.98 1.909-5.619.72Z" fill="#A86C51"/><path d="M24.695 95.102s-1.686-.356-1.481-2.139c.202-1.782 1.918-1.694 2.218-1.617 0 0-1.777.03-2.027 1.542-.25 1.514 1.29 2.214 1.29 2.214Z" fill="#FBC6AA"/><path d="M102.697 101.473a1.914 1.914 0 0 0 2.381 1.273l7.8-2.378a1.92 1.92 0 0 0 1.271-2.387 1.914 1.914 0 0 0-2.382-1.273l-7.8 2.379a1.918 1.918 0 0 0-1.27 2.386Z" fill="#F9AF85"/><path d="M107.736 101.894s-3.932 1.483-4.816-.371c-.983-2.064 2.212-2.789 4.891-3.634 0 0-6.404.877-5.694 3.285.711 2.406 2.98 1.909 5.619.72Z" fill="#A86C51"/><path d="M112.706 100.421s1.686-.356 1.482-2.138c-.203-1.782-1.919-1.695-2.219-1.618 0 0 1.777.03 2.027 1.542.251 1.515-1.29 2.214-1.29 2.214Z" fill="#FBC6AA"/><path d="M101.95 97.693a1.915 1.915 0 0 0 2.382 1.272l7.8-2.377a1.92 1.92 0 0 0 1.27-2.387 1.914 1.914 0 0 0-2.382-1.273l-7.799 2.379a1.919 1.919 0 0 0-1.271 2.386Z" fill="#F9AF85"/><path d="M106.989 98.114s-3.932 1.482-4.816-.37c-.983-2.065 2.213-2.79 4.891-3.635 0 0-6.404.877-5.693 3.284.71 2.407 2.979 1.91 5.618.721Z" fill="#A86C51"/><path d="M111.96 96.64s1.686-.355 1.481-2.137c-.202-1.783-1.918-1.695-2.218-1.618 0 0 1.776.03 2.026 1.542.251 1.514-1.289 2.214-1.289 2.214Z" fill="#FBC6AA"/><path d="M100.952 94.222a1.913 1.913 0 0 0 2.381 1.272l7.801-2.378a1.92 1.92 0 0 0 1.27-2.386 1.915 1.915 0 0 0-2.382-1.273l-7.8 2.378a1.918 1.918 0 0 0-1.27 2.387Z" fill="#F9AF85"/><path d="M105.991 94.643s-3.932 1.482-4.816-.371c-.984-2.064 2.212-2.79 4.891-3.634 0 0-6.404.877-5.694 3.284.711 2.406 2.98 1.91 5.619.72Z" fill="#A86C51"/><path d="M110.961 93.17s1.686-.356 1.482-2.139c-.203-1.782-1.919-1.695-2.219-1.618 0 0 1.777.03 2.027 1.542.251 1.515-1.29 2.215-1.29 2.215Z" fill="#FBC6AA"/><path d="M99.782 90.779a1.914 1.914 0 0 0 2.382 1.272l7.8-2.377a1.92 1.92 0 0 0 1.27-2.387 1.914 1.914 0 0 0-2.382-1.273l-7.799 2.378a1.92 1.92 0 0 0-1.27 2.387Z" fill="#F9AF85"/><path d="M104.822 91.2s-3.933 1.482-4.816-.37c-.984-2.065 2.212-2.79 4.891-3.635 0 0-6.404.877-5.694 3.284s2.979 1.91 5.619.721Z" fill="#A86C51"/><path d="M109.792 89.727s1.686-.356 1.481-2.138c-.202-1.783-1.918-1.695-2.218-1.618 0 0 1.777.03 2.027 1.542.251 1.514-1.29 2.214-1.29 2.214Z" fill="#FBC6AA"/><path d="M65.446 16.49c19.323-2.952 36.256.085 40.912 6.821.12-.894.12-1.788-.015-2.676-1.583-10.4-20.64-16.118-42.565-12.768-21.925 3.348-38.415 14.495-36.833 24.897a9.559 9.559 0 0 0 1.239 3.426c1.416-8.124 17.135-16.626 37.262-19.7Z" fill="#FBC875"/><path d="M36.799 18.944s-7.408 2.606-9.578 6.76c0 0 1.84-6.476 14.547-11.078l-4.97 4.318ZM100.494 14.312s-1.271-5.578-14.366-7.753c0 0 14.257-.551 18.959 10.62l-4.593-2.867Z" fill="#FBC875"/><path d="M15.338 127.197 0 134.767l10.994 4.766L8.351 152l16.492-6.853-9.505-17.95Z" fill="#F57F38"/><path d="m15.335 141.954 9.508 3.193-2.857-7.692-6.651 4.499Z" fill="#C05823"/><path d="m119.662 127.197 15.338 7.57-10.994 4.766L126.648 152l-16.491-6.853 9.505-17.95Z" fill="#F57F38"/><path d="m119.665 141.954-9.508 3.193 2.857-7.692 6.651 4.499Z" fill="#C05823"/><path d="M15.032 141.954s46.917-7.303 104.307 0l2.78-22.686s-54.485-8.827-109.877 0c0 0 3.338 23.235 2.79 22.686Z" fill="#FF911B"/><path d="M44.568 132.622a.762.762 0 0 1-.57-.207.792.792 0 0 1-.252-.547l-.45-8.594a.79.79 0 0 1 .739-.837l.376-.019a.762.762 0 0 1 .57.207c.166.15.254.332.265.546l.166 3.167c.004.075.043.11.117.106l3.482-.183c.074-.004.11-.043.105-.117l-.165-3.167a.768.768 0 0 1 .207-.571.763.763 0 0 1 .545-.266l.376-.02a.716.716 0 0 1 .555.209.762.762 0 0 1 .266.545l.45 8.595a.764.764 0 0 1-.208.57.718.718 0 0 1-.53.266l-.376.02a.763.763 0 0 1-.57-.208.766.766 0 0 1-.266-.546l-.193-3.697c-.005-.084-.044-.124-.118-.12l-3.482.183c-.074.004-.109.048-.105.131l.194 3.698a.764.764 0 0 1-.208.57.76.76 0 0 1-.544.267l-.376.019ZM57.831 124.872c-.283-.381-.699-.562-1.247-.543-.548.019-.954.229-1.22.63-.256.391-.37 1.005-.34 1.843.03.838.185 1.447.468 1.829.293.372.713.548 1.26.529.549-.019.951-.224 1.207-.615.265-.401.383-1.02.354-1.858-.03-.838-.19-1.443-.482-1.815Zm1.527 4.574c-.59.673-1.443 1.029-2.558 1.068-1.115.039-1.995-.256-2.64-.886-.636-.639-.975-1.559-1.017-2.76-.042-1.201.232-2.138.823-2.811.599-.683 1.456-1.044 2.571-1.083 1.115-.039 1.99.262 2.627.901.645.63.989 1.545 1.03 2.746.042 1.201-.236 2.143-.836 2.825ZM62.79 129.459l-1.395-5.728a.604.604 0 0 1 .111-.531.605.605 0 0 1 .488-.238h.349c.232 0 .437.075.613.224a.905.905 0 0 1 .321.558l.865 4.932c0 .01.004.014.014.014.018 0 .027-.004.027-.014l.88-4.932a.97.97 0 0 1 .334-.558.905.905 0 0 1 .6-.224h.697c.232 0 .437.075.613.224a.905.905 0 0 1 .321.558l.879 4.932c0 .01.009.014.027.014.01 0 .014-.004.014-.014l.865-4.932a.971.971 0 0 1 .335-.558.905.905 0 0 1 .6-.224h.292a.58.58 0 0 1 .488.238c.13.158.168.335.112.531l-1.395 5.728c-.056.223-.176.41-.362.559a.964.964 0 0 1-.614.209h-.697a.904.904 0 0 1-.6-.223.973.973 0 0 1-.335-.559l-.906-4.792c0-.01-.005-.014-.014-.014-.01 0-.014.004-.014.014l-.906 4.792a.907.907 0 0 1-.321.559.923.923 0 0 1-.614.223h-.697a1.003 1.003 0 0 1-.976-.768ZM76.467 124.22c-1.07 0-1.604.791-1.604 2.375 0 .791.144 1.388.433 1.788a1.38 1.38 0 0 0 1.17.587c.438 0 .814-.145 1.13-.433.316-.289.475-.62.475-.992v-1.9c0-.373-.159-.704-.475-.992a1.617 1.617 0 0 0-1.13-.433Zm-.558 6.147c-.827 0-1.515-.335-2.064-1.006-.548-.68-.823-1.602-.823-2.766 0-1.202.26-2.129.781-2.781.53-.661 1.232-.992 2.106-.992.79 0 1.488.289 2.092.867.01.009.018.014.028.014.009 0 .014-.005.014-.014v-3.144c0-.214.079-.4.237-.559a.764.764 0 0 1 .558-.237h.278c.214 0 .4.079.558.237a.767.767 0 0 1 .237.559v8.886c0 .214-.079.4-.237.559a.763.763 0 0 1-.558.237h-.153a.803.803 0 0 1-.572-.223.864.864 0 0 1-.237-.573l-.014-.098c0-.009-.004-.014-.014-.014-.009 0-.018.005-.028.014-.613.689-1.343 1.034-2.189 1.034ZM84.077 131.078l-2.09-6.49a.56.56 0 0 1 .087-.5.498.498 0 0 1 .454-.222l.418.015c.232.008.444.09.633.246.19.146.31.332.358.557l1.137 4.611c0 .01.004.015.013.015.01 0 .014-.004.014-.014l1.651-4.527c.083-.221.224-.398.424-.531.2-.132.416-.195.648-.187l.334.012a.499.499 0 0 1 .438.253c.106.162.119.33.038.505l-3.709 8.733a1.07 1.07 0 0 1-.436.516c-.2.133-.421.195-.663.187l-.334-.012a.522.522 0 0 1-.438-.253.483.483 0 0 1-.025-.49l1.04-2.201a.244.244 0 0 0 .032-.11.249.249 0 0 0-.024-.113ZM90.974 130.141a.806.806 0 0 1-.56-.254.832.832 0 0 1-.22-.585l.08-5.536a.74.74 0 0 1 .238-.547.72.72 0 0 1 .556-.209l.752.04c.213.011.39.1.53.265.14.166.2.356.18.57l-.498 5.514a.835.835 0 0 1-.28.559.804.804 0 0 1-.583.193l-.195-.01Zm.276 1.133c.213.012.39.1.53.266.15.166.22.357.208.571l-.019.362a.766.766 0 0 1-.266.546.72.72 0 0 1-.555.209l-.474-.025a.79.79 0 0 1-.738-.836l.019-.363a.792.792 0 0 1 .252-.547.767.767 0 0 1 .57-.208l.473.025Z" fill="#fff"/><path d="M15.342 141.956v-.004l-.007.002.007.002Z" fill="#F9AB1C"/></g><defs><linearGradient id="b" x1="66.56" y1="12.812" x2="67.014" y2="152.002" gradientUnits="userSpaceOnUse"><stop stop-color="#A56451"/><stop offset="1" stop-color="#A56451" stop-opacity="0"/></linearGradient><linearGradient id="c" x1="66.56" y1="12.812" x2="67.014" y2="152.002" gradientUnits="userSpaceOnUse"><stop stop-color="#A56451"/><stop offset="1" stop-color="#A56451" stop-opacity="0"/></linearGradient><clipPath id="a"><path fill="#fff" d="M0 0h135v152H0z"/></clipPath></defs></svg>PKCA#]�щ��Ocomponents/com_sppagebuilder/assets/editor/dist/images/40037ff8fe697e1ffd3e.svgnu�[���<svg width="1153" height="635" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M487.115 550.118C394.371 551.257 38.577 622.315 0 635h1153l-278-55.918c-44.441-8.719-234.124-30.893-387.885-28.964Z" fill="#C1E4C4"/><path d="M648.379 79.516a14.684 14.684 0 0 0-12.481-2.176.77.77 0 0 1-.975-.701 14.308 14.308 0 0 0-2.732-7.742 14.278 14.278 0 0 0-13.059-5.769c-.057.005-.114.012-.172.019a.767.767 0 0 1-.854-.828c.116-1.364.128-2.747.028-4.14a26.683 26.683 0 0 0-14.916-22.135 26.662 26.662 0 0 0-26.624 1.85 26.72 26.72 0 0 0-9.227 10.745.765.765 0 0 1-1.196.252 13.232 13.232 0 0 0-1.087-.847 14.682 14.682 0 0 0-23.086 13.559.772.772 0 0 1-.252.654.774.774 0 0 1-.679.177 22.171 22.171 0 0 0-25.132 12.787 22.176 22.176 0 0 0 2.493 22.043 22.19 22.19 0 0 0 17.839 9h103.581c2.086 0 4.18-.445 6.138-1.343a14.72 14.72 0 0 0 8.532-12.016 14.74 14.74 0 0 0-6.139-13.389Z" fill="#F0F4FA"/><path d="m400.218 591.332.119.001a4.667 4.667 0 0 0 4.663-4.549L419.667.116c.001-.04-.01-.076-.01-.116h-9.324l-14.664 586.55a4.667 4.667 0 0 0 4.549 4.782Z" fill="#B96333"/><path d="M536.748 22H409.252a4.666 4.666 0 0 0 0 9.334h127.496a4.667 4.667 0 1 0 0-9.334ZM537.579 75.333H408.425a4.666 4.666 0 1 0 0 9.334h129.154a4.667 4.667 0 1 0 0-9.334ZM538.408 128.667H407.592a4.666 4.666 0 1 0 0 9.333h130.816a4.666 4.666 0 1 0 0-9.333ZM541.208 182H404.737a4.666 4.666 0 1 0 0 9.333h136.471a4.666 4.666 0 1 0 0-9.333ZM541.208 235.333H404.737a4.667 4.667 0 0 0 0 9.334h136.471a4.667 4.667 0 0 0 0-9.334ZM543.342 288.667H402.385a4.666 4.666 0 1 0 0 9.333h140.957a4.666 4.666 0 0 0 0-9.333ZM543.385 342H401.319a4.666 4.666 0 1 0 0 9.333h142.066a4.667 4.667 0 1 0 0-9.333ZM545.668 395.333H400.335a4.667 4.667 0 0 0 0 9.334h145.333a4.668 4.668 0 0 0 0-9.334ZM498.033 508.181c-.08-.05-.177-.122-.296-.197-7.637-4.88-94.206-60.18-94.206-60.18a4.667 4.667 0 0 0-5.025 7.864 17254594.06 17254594.06 0 0 0 87.435 55.854c-.205.358.494.449 1.078.695.194.083.374.183.506.315.81 2.135 2.143-.532 3.776-.494 2.367 1.295 3.7 2.629 6.231-.695.205-.162.405-.322.589-.483.922-.808 1.427-1.644-.088-2.679ZM544.35 500.171s-91.903 52.128-94.688 53.706l-.064.038c.034 1.042.05 1.897.024 2.825a3.1 3.1 0 0 0 .046.61c-.002 2.65 1.331-.017 2.516 1.798.148.852 1.482 2.185 2.587 2.56.124-.069.269-.155.433-.263 2.462-2.778 5.128-4.112 8.578-4.848l.69-.392c24.527-13.91 84.482-47.917 84.482-47.917a4.667 4.667 0 0 0 1.757-6.361 4.663 4.663 0 0 0-6.361-1.756ZM452.859 513.284l-53.358-11.186a4.668 4.668 0 0 0-1.915 9.137s35.317 7.404 48.485 10.163c.232.049.456.095.682.133 1.581-.198 2.914-.198 3.038-1.734l.012.007c1.198 1.529 2.531-1.137 3.475-1.666.017-.188.065-.39.127-.573.181-.55.545-1.03 1.238-1.372a5.75 5.75 0 0 1 .302-.716c.116-.237.256-.485.425-.745a4.536 4.536 0 0 0-.519-.499 4.664 4.664 0 0 0-1.992-.949ZM548.908 555.376l-54.296 7.388-.425.057c.814 2.512-.519 5.179-2.152 6.815-.018.18-.064.369-.147.564a2.863 2.863 0 0 1-.363.608 3.499 3.499 0 0 1-.066.525c-.04.181-.099.364-.178.556.2.1.408.179.62.243a4.64 4.64 0 0 0 1.967.152l56.299-7.66a4.667 4.667 0 0 0-1.259-9.248ZM494.749 585.207l-95.356-32.695a4.667 4.667 0 1 0-3.028 8.828l87.173 29.889c.231.079.568.093.804.154 3.135-3.706 4.629 1.261 6.864 1.994.203.067.412.097.629.085.496-1.462 3.163-2.796 1.188-3.873l-.001-.005c1.976-1.584 3.309 1.082 3.539-.979.082-.092.33-.317.541-.433.093-.194.199-.388.307-.56a3.282 3.282 0 0 0-.344-.659 4.638 4.638 0 0 0-2.316-1.746Z" fill="#B96333"/><path d="M541 586.784a4.667 4.667 0 0 0 4.664 4.549l.117-.001a4.666 4.666 0 0 0 4.551-4.661l-.001-.121L535.667 0h-9.335l.001.116L541 586.784Z" fill="#B96333"/><path d="M751.509 45.67a.555.555 0 0 1-.586-.617 16.53 16.53 0 0 0-5.866-14.558 16.562 16.562 0 0 0-25.828 6.247.56.56 0 0 1-.394.325.55.55 0 0 1-.49-.131 14.007 14.007 0 0 0-19.031.196 13.996 13.996 0 0 0-4.377 10.568.556.556 0 0 1-.874.47 11.817 11.817 0 0 0-7.818-2.091 11.83 11.83 0 0 0-9.674 6.793 11.811 11.811 0 0 0 1.048 11.776 11.814 11.814 0 0 0 9.668 5.03h64.935a12.026 12.026 0 0 0 11.283-7.881 12.007 12.007 0 0 0-2.059-11.833 12.01 12.01 0 0 0-9.937-4.295Z" fill="#F0F4FA"/><path d="M417.696 141.243a34.007 34.007 0 0 0-21.009 2.583 1.562 1.562 0 0 1-1.334-.008 1.54 1.54 0 0 1-.838-1.034c-3.225-13.522-12.325-25.116-25.06-31.465-13.414-6.687-29.106-6.637-42.375-.147a1.548 1.548 0 0 1-1.37 0 1.542 1.542 0 0 1-.836-1.081c-2.028-10.066-8.923-18.57-18.514-22.619a31.503 31.503 0 0 0-31.106 3.81 31.08 31.08 0 0 0-12.458 24.721 1.54 1.54 0 0 1-.57 1.189 1.558 1.558 0 0 1-1.286.317 25.467 25.467 0 0 0-21.785 5.824 25.268 25.268 0 0 0-8.59 20.172 1.543 1.543 0 0 1-1.176 1.57 32.046 32.046 0 0 0-15.509 8.955 31.81 31.81 0 0 0-7.583 31.034c3.226 10.935 12.08 19.343 23.229 22.041 2.512.602 5.055.895 7.568.895h174.027c9.661 0 18.996-4.119 25.494-11.507a33.545 33.545 0 0 0 6.573-33.054c-3.907-11.399-13.615-19.852-25.492-22.196Z" fill="#C9D8ED"/><path d="M552.28 460.316c-3.429-5.305-6.39-9.888-7.934-12.435a4.668 4.668 0 0 0-7.982 4.842c1.615 2.66 4.61 7.294 8.078 12.66 4.372 6.764 9.652 14.934 14.248 22.36.066.109.156.221.258.329 1.387-1.405 1.387 2.595 3.267.095 2.12-.167 2.12 3.833 4.383 2.592.148-.022.276-.039.385-.044a34.9 34.9 0 0 1 2.423-.03c.077-.14.137-.287.165-.402a4.662 4.662 0 0 0-.541-3.532c-5.132-8.46-11.574-18.427-16.75-26.435Z" fill="#B96333"/></svg>PKCA#]G��m%W%WOcomponents/com_sppagebuilder/assets/editor/dist/images/c8e141c0f0b135b048ec.pngnu�[����PNG IHDR��J�O pHYs%%IR$�sRGB���gAMA���aV�IDATx� ��y&�G�]�'hH�H�DR�!�k����W#�����o-h Y���@���'j-P~;3+�ϣ�,xHjf�}� �[S�6�4� IP$�8G��]g�����U}Wu�G�+�3�������������������������������������������������������������������������������������������A�¢��w���*�� �S�:����|.s,V$,AX4ŗ�U=�{�9� �G�07+ XX4A�@| 2H���/J����.�X1��ES|�[�.¡�sX�b���EK��]>� ��d���a b���wR���ao��|�Sd��|�U�G���aN�DѩH�Ŋ�H ��V� ��t�ҽG[)�y+\�9�Qf��c���`%� N �v����V�/M"��#�=��~Ϲ��2�f�`%�N�%�IRJ ȯ�6O�%�f)�,Q�;����P%��$4��W҉�R3tU���l�U��J����6'd�Ԍ(� ��E��D�@"���9��+��)���2�QX�hX��!��!���U�8Ұ�jF�w�͎/�l�b�a%�6���غM�x�y����f�`%��%�6@��0i��sS�j��:X�XzXc�`V8�]_s��H�|4T�B�:X�c�a%�%#��u�S��y[%����y��&ٶj�V�X|X�Xd���c�fއ��ug5�?U�D۫:X�X<Xc I F��q�fHN �6+���A!A����x��!bh��=A��-K �+s�0����(5C+Q,,A��s"�3�U4^��W�r�QN P�dG�:X��?��1KD�>�@��4^lI���ʡ�6�[��$v����U=�+A���H �+8uC�J�F�Y�4A$)=��_�L����DQw���g���EK�a#ډ> �G }��\����e��� ���:I�5À#��0s,�ª$R@�CWM�J��\����D��[b<#F~�o��� Q3�s�/�`I�9V��ZT�WU��lKR�����T6���UZ��/�O+S�AU���.�U)AH��RIa�)D��,�h���f)����;~�ZU3\�u��u �ҍ%��*���� Ux�������M��q$o٦�\i���4������|�d+yW��A��G~�����Z�ǿ�;H^d���/��+��<����q-�b�� 9��;�y�wI�:����t�P�S��G��UA_��5xƳ1hFd�l��=Z&5}|G)Q�.Ci��Z ݂p+����=5ZS3��� 9���GlK�աb8��/;��a����9�1}�I!�No(ĩ�,5��#2��h���`��vҷ}+?6u��͒dvN&��B��x�o�����r[$�fPoF�ݼ!W�Ö憕/A8�h���%��N�<�9���6��(��g��%��`�z3)��Ǩ�ԟ|.mIaX�A��a�S��n$��4y�g1�K%���Ќ7�#��]��fXRX�x�`���� ��sO5�Q׆&h�LА��5��� Q1I@���j�%��NJ':R�5� W�J&�U�0�� �Q�4��yЯ��{�� y��Vj�%��Ŋ'�2����;�vGM�]<BPd��] zR@ӱp;"9`l�⟁[��˨fXRX>�|��)���Y�h3����{�\n �����9��a��� �U1���E�\Ͱ��X��=Q>e�c.�'~���f �h%M;Q� p� Lߚ�"Z=zj �~#����S3�)�iL�%�i�3�%��u �L �%�X�R�Oҡp�Ap����1O9�>��4P��������ƤfHd�����u�O�XLe�u�Ah��>��2�.�$�01r����~�:JTXI���*���O9���h���0�x6dM��!��F4�pV j�� � 1 FZ�a���.��O'�6��(@�z]6�p. ��=$I������D��)0l�4u��O���G> ,��� ����f4�洦j/��{�~8�J 1p_E�ʡ�[�k1x�\nOq��IY�Z�hO���ב�M�������%K ���Aj/ �O������0�3�I���3�[�Da�KU4����[r��ǡͱj�{���$��cӴ0�k�H�26I���;6�F~TȂoE�x> !�ԡk Ju@� ��C|5cmi�ɷ�F)B��)r��'����E�ͷ�9o ��ڝ��i��\O8�d!�Buf�A �?�K���8� b���Rv�g�$l� ���=��|��~��O@�b�H�xu'��g�qk6=�ѹub���D%���T`�ZB���\V·���j�9��ײa�Ak�N&�5j�N�b���PX[T�v�c�|��f|�AZ���t�A��q���(�A�a��������*�o��y�d�J��0��ڀ2)��5#�Z�r��b���DG%ϟ��)�o�j�x�J�)Q\�9��>�ܖ*aѼ��i�j���V?|���Up�o7�XU+J�N�$D��K��܇ȕ1��\$W$�q��byF��Cr;"� �s3�L⽴� �v�z�55c.p�B���� L�x���fyd�a�!)b�>O����T��j��4�p��e�I��5) <E߃�q҂>�1�נ���G�\7�W'-p�"�$����cj�J��/DnM�W^�3d�����X(���:�A��VQ0R(QRp?]�n�Hˤ =�H��c�aCS��0��A�I�����ƪR1���T��)��O�H�J�R�#�E��|�JQ߂h�B=�;��d4A����p���j��]T���U�p���B%�� a���!�}�.�J�=GP1�Q5�����o��5\����X5kRr�A��a��?@���T8��D��v�tࢰ����6~,�����2i���mCQ�Z����⊗�"� 5����-�g�ԁwn.��u�g�:�ϩ��mĠ6�����'K�����Z����a���Ǫ[��!�)tQ�CĎ1��&ud���q�!��P���;M��� � �J����h�Bޮ����u�����ʥ�{�]���V#'���Alsxg| �����^���?[a���/��2cթ��_��s3|��!��(#XH AwԁLk�4�ܑ4�VD��-��|A]�s�z��k�I��Pە��@�d/E]�$�?��}9m<� [�����/�|��YXx^�㰌X�ΡV�' ɛ�}M#�_�ċg�#�`'_] 1D��V(y|" �hm�,�h��+��?��_������E��P��6HA�Om�l9 �%&�B�J����u)�O( �K��㰌Xu6��O�- ��5QI�_����!$ W(�B�5�C83��H�BAh*P��J�)T8�$��6��,�m w�2���L��_9�O�"9D�<s�l8���;�6���%5�Dp"W��ZJ�&q/,p'>�_?ˈU�b0|��1����� ����7�]�Uu ��E��' �!��HQR�^0������//g^�J]1�U�Э!4L�������v��Ex�P;@Q=Z�3c�*���|�gaqm:к�ۖ��z��ͦ�k�f��d$�I$EB��� �06���J���v]{פ���������$"?�����T��t�24YNO��H���ڱ�oϦk;T�Anx(!�Ā�M�`���i�n�4e¾R���t$g�3[a�¸��0,V���gvB��E^DEj��PQ!�#/5�Y�!d�� �)�BR���"�MG�F�[oFjAt�h��� ��G����ᒄ/Y�z�W������FL�ζ到\�6��?�;N7ނ�����Zrp?n[��]A�m��vP<�������>m�a>�ǔe�"L�<1�����R*�Q&4��R�g�a�A$k�� �N��GG�j=����3n�e��\r�Z�`�]�I�H$�B������u/ :C�S�f+up�p��1�P�DT���������=6�c�Gn�����h^�ϕ A��6��b�Hڮj�D����_�O_e1 {a��l:��bU�w>��_�舄�?�DļR�Bs���Q���4Ѽ�n�a�=�n�Є�ĺdw!�oHL4 ���*%�B������?N &b@���$�����>p�%ƪ&O�@lX�!��AT$�""�7`����9��S�H|�GU��h�G��-\�[�+�'�OzvB{�<��P=̀�r�������E|�����2��RO�ð�X��'#�2�/^� �B��A�%��>@��v���f�Gi��$�;��ţ��y��2�i��;7 �f�����?m�#��m��!���o� �!�7�YX����seCV\�S8���ԴsK��TD� ��)�.��Y!��j� �=�J�T�&�`��4M�����ߜ',C�p�(WU��9P��!(9�|����)�+9�4�_FU$��Cx��=I��>Ms>�H�Ć~����{�\�I�6�d5F�hr��Q,לS.4b R� ��' ��i��q���KD*#��@)�u�-�j %���] �X������X��R�7�ٯJ |��$��2na �E|��?rZd�FO˦)�r���*��C���!1�t%q��Tr����ĭ�����=�Tmj�PHA%�M�G���@��B�|R@9n�Tzhor`X�yVŠp뉧""��%�p�Ņ]dچ� Rb�GD�y@%�! �6 [ߥDRg�������@%�?{�밎�M�F^z�뱩r��<��ȭ����[[�!�b4�x���]���w�O]���O�X��%��}�z3\Cn��RgF(�vBֈ3P�A#��~%O�yԱ�Կ$�2��xob��&�����nK+P�:�u�ZO���?`Y����)�!�� F���[�>o���D!z����t���`iUuD�f��� �A��B�[���ێ�/���������cd0U�m$ �#�]Su !�!�k}�dI1�p��v$�T������H��[7%�f6 P� �"%���z�xD�. [���?�����=O�)}����;���m�fq3%�4&DI!���O��U��h�1�Q���?I��L��t9q�����oߟK��t}\[�j�� ��}Q���̪B�"����;�i����=��A�?���_�T�uR����!'¼�t.̓�SG4c����:!�'�"�%y�� ���ٹ=ED�K��EJ���t!�]y��:�ˍ�ܲ:{���w�Ii�X�'??��?�w�H�� X$�z�`���0�MM�`(�̤��_R"��:@ӹ�#��G.GR�t��0���B�R���҂6 ��Uv�\�b�7�'��V;j(Q[��c�g�4Fh ߢ�Р �ܚ���7��\���2X �ų�}/�2���`��Ç��g�7&�j�� ��a�5�!����U�҈����@D�Mb�N(-w��U0~�#R�q�oY3�C�W�&�LD��F�E�3�p/������m19K,�Rx#�s���D�_��ݝ|h~�:{y����W?��: �"�Jj�ˏ�\K��i���*��~�����t�y����G��X싓������)v�����q`P�H]Ȧ�}%�R)!�ԛ��� ܠ7���7�k���b�Q��B>��}1 !a��� >`?�m=/�G�-�[���G�6��Z�<���r�;ߕ��i��= ���ܱ骷�p`n��ܻ���g_�V|�ј��������OA���/���&���[g�ue��l?|�R Bπ�U�h<Cj�P\�Jٔ�y�����b9���m�����C,����r�r�h`M%���J�ӳk��i��z�H��Q�E�R:�R4�ѥ-���������>}3<�{��d��<���7`�]�x�@Xp�e�b��k{cɁ���-y�'�v0�%��鮍N%�{����a�`�B�P��[�w>��ȣ��Cx���0���C������(��%� z/���W*7S�5%����3��P��-�< � paD��B�y�(��#�~8or`���}��?8+r`�������Y�_�n��CZ�R%�Y��m �(��ƾ�@]��HTGpikxI1�F����Z��ю0B�Y�d�Me�d٢���<��/_�S�p��H��X�^TU3j���G����sS�1��% $��R#��e��ɇ��_���n����+��"��*�G��^�Ek���̈ ���%M���!���W���D+v�p�о�<�:R��%�u�P�J��8�{�Mc�{2�=b��0UE���V���ճ�dMrw^˟���J$b�* A%����.�76~��Szx��ׯ��|�H�I �U��Gu��1ی�J}'t�j���m�ҍ�vrɕ)B���~j̅�O�5 ?q}2yLL�� 30��lt����2����De��� ��M}����ծ�\�� ���0�����͒;ˤ�]����u�'���������!���|������1=7l.n���� ̶�����`�E+��ԌM��"�_z���u���;Q� �H��/w�@䡓B�4՝����)[18���3W��5YqF�v��ן+ָ|���3��<�$~<:�93�s�'_ޞOշUj��$��r�ݴ�A�����!��W���$x8>�y��ŏ�m2^��W`�_��1�# �0I�L�fa�0�== �<����|�c�hE��S3t#�x�Daz�%G@ im]���r��f�$]U�4�h&��6r�j��o�ȟdj��Ǧ�ɣ�>qOa ��&�T)��ěN�r���W��N���<�{,�@�JQ�M��r���G��6����뷽e$��.-���0_��"�M��my���Yw:�j�}6yƨ���pB@�3ȝB��1*1�u��J��6K}]��rYXMU�@�@A�Uk�3�=��XnH._,�\8?��o�;�MH�L�p�0"�^��{��ȗ2�54Bz`0�~u�%h��������f����w���bܹ��ī���d"�_���pk������eOn��w��ttE�()�?�߱�t�<c�T����w����\uN��m�h���p0�y�|��!~�/�}�wV�)�*���_�Sw�Hͅ��C�Q�ᑒ���b"R�|a<؋%4 &9��.�ߕ�z?��/4��{F{~��`��y�+���dW��'��7���O~�=k���=_āZ ��0Su��iwwK=��$�,1 y��`��0(���L��WX�"%)��6$w�m&w���}���f�����xۅ�xJ��S�u�I�`�M==���5������"� �C���\[0遁;T���s�*W���tƹ߬Ԃ� ��:���C�A��Ƌ� #T�H�~���v�U~��li71o89Jh,H�R�B5Ǝ{r�}w�|��7�x�c���n�nO�Y��?ͫ�,���|��0'��|u���?ҕ��B��� �i��~����`��|a�vsw{J��I�K �Eg}�_e�/؏>�/Q����k��S����aR� �w�1�/'�"��c4�]���b1���BU�!��Eor�)�ƾ�mQ�܅�r�\ �Dvy"o�l��R*�] 0��45L�m�e`��d½b�p4��j$ �a!������X���]Qʟ��0t8ju����0]���M:�H�;����#4��<�!�FXԢ89j����n?A$��M$zΤB� O��j��B�茘����T�D�q��4�&�]�.�������,~���Ёy8�W�ZS�,�z|�8��\���8؊��1�x��-��@σ�%�9��Nd���!����k0������:P���J��ұ�,!��}��r���g�d]X�x?�g�M_"�m牘�p����a�:4fy^�EĜ�ʵh���WF�>{���ï�8K ���u���C���ͤX4��(��"�N+��r�:����A7*�Fbhh�# �?9�OU3�Cb��n'tl��o��:��[k����5��~��`S #�䎝,�sqqb#[�a4��-��ޤ���g���"-���*עij���Q��g���ӿ�^��ڪ�)�js66�BI��eb��,���5"B��(K!�u�E�v)����M�J�(� �?�@~y��(��J�~Po[n��Y�)��pu�p&��h�d�� ��W�N1rh�$#&9�b'X��® aĬ�ʵ(�X� ��p3q������!%=pܘJAS��{,�X�� �`x��K(튅P ���86�9�4I�+����˜�$���Ӫ��{��87R����TI ���OB`$�:��&b�Ʀ�wE2r`S�M���ތ��\x�C�1X. A�Ӊ���8@>��"�����#/25�ī�g�5aq)=005�u���q҂0���"�'�6��.%�`I�O�=��%��%��օ��Α(/i�" ��+a��ܴ�:1�X���!�Q~ft�'S�I��FU,B� �OK����7�G�'�dT��Lj#���Xz��<ݢs��?ӹ�4l�8�G��>����3UM(1<~����ӣ-ߌWnev!խ�T�j��%��\�������6~���t�o��Δ�N6J�]����<Hscc_��L��\��`�S�x � ��J�]b�%�u4�L��8Ӷqam��5ˍ?��c%��!��ݞ�B����^dͥv &1$1$݇[�$�����O�P��Ч d4����#��V�~��n��x)�=��;����6"6��A��%�LҽWU3��A$��`lt(a�jFhL��F�� �'�'���_��|����Gk_�Zp�`�Z&]�EP:zK0�-�$�W��&`s.`��������"@�(��3j?WF�pd��859VJ~�JO��X�bO��;�:�f���OU���Q(j��Lr[ Ű>�)�tg���11��o��N�\�W��-�O�T�V�ɹ���ak+��͙ �J�T�g_����,�:�t]�9�!���\�5`1]�l7t T��"6G:��/�G�2l-�7F �ҟ;���Wo[7��#��@�N��Y��o�s�Z��I���$4<��4ui��$��%Q!�����J��[�=eJm����;�#&�GS�� �� �j��<�b�}��3L����r��k���IclA[�`)��|`Vҧ��?%��[eAr+����r���L8=���S� fv�k�T�J�={��ߴ� ���8�I��z3R��0�A��888�;�M�[�;'��gMϟ���� =�~M���r�K��lM��5������ �{l�1�#,&�Չs�t�'�,v\([<eSo��TTJ�����9Yd����QJ���E�eHRס��-��~!n�8��+]�#V!��6���f\*w��ӥ�B��[�!�Y-��,S�%w����g�N�>� �y3b�����5�˓9�[-j!�}��Ir���uW�ԥt> K�s5��+���dJP���³��4%��Q�"� �ʚ!Q8Ԏ�`�2ɚ�S�8}���t%� D�'Ċ�+�jF�W L��Jl��ӧW"�J5.R� � ����90\�,hϿs�]a3�=g-A0;U)�Y��_����l���l�[�����\�#�s�$w7��s��f����'UJ�訌RbeO��##��� ��K~`�C�g�I4{)U�g�-Ig��y����+�Q�o�����*�:U8�ԍuݥ�o�k�o�\W�uFĴI��%Q��lK�-��6pkrl�.j��3��W�Z�Fr4��z�;��q�?�N<L �_�+�M5g���w���9- 3ܽ��&n������H����\��T�����|q����{6��˥���Y=�q��gيPԆP ]�W�N�١.���_X�On۵��3^j����3`�����6k=t0�_嚵��Hv�&=q�Kq���߳�a���ʇ�R=VbY*��c��G3��j�א�N��tt�%TEz�gͦ껶 �IjsO���j��(�T���"9p�$�B�B��j�9�֍ރbޞ|i�J;�$*�����m��\�~�k�A�� v���#�|�I� �{�,�z�1J;�l\素tXu����@��X��I����t�Fo���>!&ѹ'�<>����J3�U�Ѡ���ut�\�(�ť��ׅaC��n��V�n��'�ɿ�C�\�&�f#>}OZ���C%��&`�|�[_Z遡��y!�8��!ձ�M��!%J��� ���ݮF-2�d���u!�qu d �O��BP�DU����7z����[�w����S{D2YR���o��VzXXD��5k�`���{ۚO�e�h'�L\Z���l�u��3�� ����ա�%a ��B�\���P�����B�}9y �D�/��\U�ЀFJPc�DU�I����l���Wɧ˂��p��!#��n�{hW�Y��=�N��|O��e!?лȐ�i�Y4���{b��돛���eu�Z��0��},ܚ�Ͼz�%pj�����>���F�E��4a��Υf�K��D2<!�1�7'�@P2��U�3����kL�X�=]�����54�����T)l_w}�h1�t�>X�Tw�u( �%0߄`�l'�� Fl���A^ ����Xąi�W��Z���ihol�L�Kt����'R�#=0xx�g3Ǝ�ݏ������ �h+ x�C)��[��%�)���:�� cAP��Ӈ���Ej�v� �S9�~w�}�'�3�+ا�ԯu3��:�W��M�h��E��[����q�I���*�5fj���aR�D|�̈́�C�G������3PA硛�lEV3��Q���Em2��0���K"5�7�H/glsä�#��qޥ@#xj��6�@hܚ��G���$0v��6�ՖG��/���BA��FF1}c��R�Ky�I ��ꂶ�XXs���rz O�!K(G�ꏴV9-"H^5��]o��b��<te�Q�(�E�E��=�t���Ʀa�����A��~2��K�-�G�?P����Zp`=�Xh��eS36�R=����e�i�B�T:=!�<|�UA2fD��"���f����~l뚱G�ļ::C��pD�4�-�{��ѵ�ï�o��I~��7��ӽ�:���A<���7\�muY8���T���oMH�`[�@���:�ԒC�$���1)���N/l�n? }o�U 9�@a��11�9}��+�g���:)Vk�H��a*I6]1F\r⒈0t����!FC(/W俛oC��-B˦|?��͞-�I�}���R�=�@�I`�`kA��b���ܽ���v�on~�lͅ ��C��%�Ey�e��H2/4ɧ�t~F����y�o� ��n�0r�Q ���&eq�������|\j���Z��s�A � ��s�N�9~B��85P.�z���D�)aG@��Bʧ@����Z��,���C-�n{s�}뺊M��L���ꤐ�hh��� �c�}OS��"�.�䰴���^G��gkCh�\t�c-��l��{Űm���<a�B6�3�� �1ҧ����hD� =W<T�)\�>���o���\���ޣ��,�M]����n���$�>TO���b����eĜU��d^ X@P��x*C>7{����Ggy��ے�{K�HF9�N��wSZ�)��DQ5�<����)��f8�ۼ�dB�:���o�=�%Bh ��� �^B���w��{�~�6��H��׳ؗ��m�gZJ�@�l �����JSM�u�8l�#��((�U�C�7�}M�r� ?��BΈ��@�j_��m�hӽt�5l�u�*��Zrxr&7��ߥ����Z��;�M�� ���}��;�| ��<� ����Q1�/Ci��>����� U��Ũ�n$n@8VH���g5xIm�و�{�6I'�Ҧ0R(ՒǮNv|���}�_��蕩ޓ���X�a��ՙS�&d$A% ���W�/��G�=���V���g�l�%lI�`߿hq�Y2�/C�Ե��C����'��;�n(o�7�ˑ�QD������D��d��%[���0^�:S�%"�ߣ/v��+��5�Xt�|n�gG�-���:�)��VM��kU%IA���l`j5���PwF#����l���P� �4�U�r�"(x�B���x)p0�뱷?��WfJ�[5����{����^�@#�g�%ک�H`�^ki�^"�Z �ӕ�P>E-�<�G�p�J2I ��"����lŠ��^�Ii�å��hl�$F �o��$+����_-m�'^����?�X<{q�I�]R��>��tH��8�1���{������S�<�F.Nl�S�7t ��vn0�U�M'���aӡ����JG���9�4ϬI!KI!|��q?�d~vy#���[�#7� .=�ݩ%%�{o[�$+l���p�IgWK"��~�_�ED:�!O��< �T��YA���$)�i�:��=P)M���ѯ�7w?�&�b���s���_���}.�\Ю��15C�q�D@��[L��Ϣp*��/��B�D�&�Xco�`އ9�B3u��Ogz����J����U5,I,ju��ڿ{����/^�O]�H�hg05#�믭(�&���1���I Ƴ��yP�� CV���>�<$���X�G:��K�pe����ߢ����$1Op�A �X�Xx05c��ؘ��u]!8�<�<M�@�7�a��702�L_<ì���Q�>cE�5± �7y�py����w�{w��z�/�+]����&���7N��WG�Bϱ,A,f*����:54ñ��!^0��h�]���GM.%����{Ъ<Q��\H!���� �䃲�����(O�N�;�||`�%�o�2�c�u�0�I/�9�} 100�$:�`����m��B���Լ�gƛ�#���0M��E�VV!��j���B�.jSHM�d�Y$c\�V ��Jf'��n�_�9�kem��$�'Q�RE��mu���O���>���(CU1��[�cGRNuٝ�g.N_�w�p�u )p0rx��Z b1pi�����!tn53%�#��W��v++0��IQ�-X�J )�-��(�I!56�+�fH�ֿƮ�,�D�"5b�����`�h3n�<=��Z��J�\��o�u�]�tz��y��Ap|ɬZ��N��_.�/A{C"K�67��^�}�D*hu�&7 y��nUB�ј~ΒB� ��\�������N�6L�b"�ֿƯ��Z%�N ����/��<����� ��[��������|a�6�����w�z�Ɂ��"a��f_�����l�M�сZ�����(�"��X0���#�`�v%���*,2��Fk6��c�T��Ias�vN�T��.NLL�x����dn��7�n*�ܨ�����A�k�_^����0�i�wuq�L�9�"*PG}i�~Y!O��f��|�Z;@ �\F�tJ.:/��Qnx�rz�IwD S�IA�?߷2�uP�� F��w�V�]z����y��p��W���[ny���g*�6���L&�ՌZ�\�U���y-�)�ֆ�Zb��"�TM eS�E_���b�Bj����LIar���X E��3���D^5*l��i��ӡp1�LC�kd��uk\��6Z�:Z)���e���&�/�&>�2(<+c������W�Ǐ����>1=�!ڎ���iz�+�2"(�����J�q�f�!��h�vP���")�s��"��(m��`�k@"1�F�@�#�020}n��q��;�a�;�0�2��0zz}���oW[#��'�K�o,����ת��P�p~� ȹ990C%�d���6�4t���q�����"U \�n�䁫R�es�צ��=�)q��Ģ��D��?�C)&���/�ե�*�G�J�<����\��G%F�^J";(��3���u�9�O.*含С�H��Wa����.����r����5Xu ��YC��'I9�z.t071��2̶���8��,Vj�8SG�� ��L%�;O�8�{�$5�c�p~|ӑ���S}��&�P`�5�k�.Nl �f��*$�o���^O\��U1�e��(k?>��𬔭�0R��3U��K��,Qif���õ*�9.��BT�)j3��:={����}��O��ʮ�#k�&���0�]��B����Ժ��uZW��̏�oH�N>�L�"I#�Å��p=R ��]ұ��u$A<���z�g�F��o?S3�uMASҸ�t�{6?CcX#�*A�t0�˹�@5�6�C�]w�.M�?V,w_�0Z�;C�m�z�;9�YZ�v��LRV3j�d��0�?�(o;?��?�P9��T����L�,�T鶎�3 ���ip��m%�e3Q�@�y3���@dEA����pޒB��+Q��*�KW1�$�i-bu�?�8 ccp��c�#oQQ�K��Mf��w]y$8�K�� R��*�� *���>p��+S_I����1O��Z��j�T�fL��C]��D'e��o����%�D&\������f(��h��9�8i�6����Z�0B����D뺮�(������5�������r={���z��l�Oa�#k�F�SH5�f\�jFر�*�ckc���}Ca��D�t���rTs�u]�T~>�*K�ȍ����D��U�_.�JDg��:�+A�`���eS3�&�j�S��܇P?�e� ��@Q}��H"�!I��FL�� *9��Ƕ�Ɏ�K8���l�`N�N ��{߹��K�k�#?S9�#���>��U��D��LvԳ��2؛?�v�G.L*G������s~O��^HT�p1y��ṱg]����8t(С�鞇��:�������&����c�w�����t�b%;���H��뿵�{��]_H'kw1+�V�7v�لc�&Dk_}���d��T��U���am~�C���z��B!5}_ť^!�d��t_n�vp��&%�]?]�:Zs��ۥ����fJB�y��1POƽL�(��s���%�T=*�Hel��s�_Ϥ*�N������'��V�c�Y��Cѱ�&:���@-�Ù���<"U����l"�E�C�6*%�c����v��QQ`ޅ���"���u���� W]�g��n��R�_���v��ʨnJ�f��D}�o���Cө�#W�6j��uT�((��ˤ�5���(2�`��90P;�Ϡ�ѱA=���``�@{��Ȥ�Dk���`�>�'�z���([��%���E�%#��(x�K��&��\�u �i��o�q##O,y.e�"?�ᄇ���-�yf?��N��~�L�Q3����I�2��S��=�#*���Gn�y{O�P5C5�7�(�M���rK�N���1�t6��+����;O�<� ��'�̔�� ����zz�X����Л)ޞK�u4�r�=��3��#zo ��+�<����Bf�{byT�Χd�U'"��j=}��;w�1��ٳ���]#��ka�&�D���P�3��7�(ϔ��M�`t4APO�N�d�0�$M�u�%�Wd�}���@�$'DK�=��L-}tdr�Ѹ��F,A�Xu;n�J���k��u$��=8�B|�"*T�?3�%���^�^;tK�[� �Ao��)��ܱ>� �2��`וC�5Y�P��f�{ތ����p;O�n�y�w9AՋ��ߺ��w��x�����P#4���� �⺷�e,����I�*�ޔF�O<���#q� ���c2�[w�.�4m߁zAJ �d�A��p�l�$E��AL'%-��)LTz��4�{ �3��p���jpo��\K?�Ta�`t4APvI��y%�{����(҇�c�,� ��k�39J�}R�tG2rabࠪ0Q}Sϕ]��_ط�קּ�v]����32�1�Wai�M^C�u�VPoQ>�!ƆXQ��NH����<K8A������a��O�\ R9�rl���Brr��t-7��X�u����� ���4B�/#b����z�{Z��PgQtEy�u�%9�g։+��m�X纹�➛�.�J�g����T�j�ݟ?ts�Ei�-RC`݅q�ohHn���\͌����5���\rJ"���>���5�I�(���b HS9�.Z��QKn�3i��O7f�?��_0&A���_�Rqu����T�8X����I��I����<̙z ��8�/���T7䆮+���"?)��Ҟ�z.��s��]IV>AY}hDJ�J=O��L&�Bj�DM�aԪ�U�[�<T<��͘����Q���*���<�rlt��4u����+\�/�(�b�D�a��;O�U��A�נ���P��.��dB�ZE�2B$4y6P��]��t5;tc��+����a�Wk�(���E7��6e��#���6��c��g3JX0(�v�g�{D�J��(pys37e�͜H9��R�R�TH�{����-����y����b0P;Dǭ���f4342��ah�P�Ra��7b�X�,y��vjz_��1��z_X~X�d�/�� vY�܂��W1}BU<��ׄ#E4$����� �ST͈�!Zz�X l� ��f�]�a�� �M�v��嘚T�W��w_�'��"B�� �.�6P�.u����a!M*;�.\S8�G�>��'%��t9?,�Tp?$Z�0埫CB�&��IT����)�f�N^T U��P���C ���ʽ?���'�d��r=�Ӆ���&��W Y������_�-3"�+�e��~�:�3�ΐ��A]T�����#0��e�I��Er�3RB��eO��r���˖���f�s�7��:��P������T�e�~#נT�"��ކ�d97���$�f��]\����'���f`�._!=�]<�|̥nO�а���AF\p��0q�V�����3;Ā��(w�u$)��$-22:�NR�RQr� z�վ��@�bd��j<O(e�qD������eq�g��t��1��(J�} �Ef��@�5� {Ax� 6�K�15c _�L������,�!Q����ޒ��`��˙��z�(�#�`$@]���]�� =7���blR5�a@~.�D~S�o��=)�F����S <�i*M��_*f��] �֟$��n������ĩ��ڎ������*6�p�����Г��#�m�y�v��;�;�zSOAjt�7�P &�=��ߢ��AZd�K��v�S3ռ$ �����J�T��,���1�#,Y��R�p6Q*&���kޒ��=U��:&˽� �b!I��H �X~�ȕ�MO���.�^0�����S��},R�֑. �^�c �v7�F3��w�?�]X!X*CG���7�QgQ��D��>/�� h�,�2ps�N�`K�E�g��ώ`,���G&:�e�~_�w����t�� o�U�3�/Mɓ�6t�ߝt�Dd���"'�X�E!�Έམ� <++F���W�w=���x�MMWr#���ި��!�B�d����4�e~L�;�T���*<mҩM�R�]�B���Ǻ3���U&=���g��5=��|jf}>U\��*�Z8J��ٞ�o_Zi��۟I����ĴS��S�zn���M�FtF\���3'&*�߹\�r�T+H�M%����~z�i��(`�>���#�I8ϣ��k��ߢ�bGE��aE}z/��ӵ|:̛�I4��Lvƨ�k0f���"&Q�`+zK��Y|�N�N%�����ZS�V��s��g�S~�UA����9ʤ~�y�Jr4��6�F��S�}S��Eu*��C5��.a�u�囨����/DE�5"W��A:&��_j��%�uX1*ó��\G��-��ú�����2�e"&Ԍ�|m~�y3��a*>,�� ���v�|��`j�����4Ӳ�#�7��_��{��i2� �qS��l�N���0�+��f���:��h]H��QZ�7�°��!��7���-�"M���8"�&@%u�FEx�-�&�9U-�*�ɪi�ꗑJ��x�r�`����\�u��Z(��Wwl�:�oC����s�g J�\�[Z{�F� �z��R5�wbTo3���{p���蔥��nj(��/$���`�9Ҟ�/7�K��5,���i��KԠ�p��V��&��0%o�;�u��d����1q�VO�aְk ����S&[O���/��B4[�k�M!'��u��fn����D��°���D��E|��"n��$U3 �݁���RkΈ/�.�G��xǸ����$F�ADR�e�l]1}*Q\/�1f�+O�I�o�ˏ��o�$|��H�L̃F��tHd{�L��H��� ĊS1<)��l^�u��(� �2+�^�PS�F�fK���l 6�k���X������(�ؔ��5RtdWz���~�ɇ�6|�#<i��JX��@�ҥ��)�G����'��$��" �I�f�(��`n���@ҧ�)�"��J�+E!J�ȣ]� tK��b��:vc���ű��MU�C�om^�� -�ڕ�L:�]J��43�N��M�@"ye{L��j�B�Y���Tq�C+Uz`Xq*G��"����t����R�}�q���:�ϗ�y��/Eո��M��B}~b룼���qͥ��ի��z��d���hi]d���"mRK�f��hvќ��lTO��o����Cc�G���ř[��K+Tz`X��i��f�ɍ{s3$r�3�� C}"/wl'��l�6�ʲ�=�"�"+,[d�?u�8!�Jq#�z����Nm�dFfj�ZsE�빰�}�F�/���)'4���a� ��F�#J������c�Ϫ�� z�CU�5��r��K�&ETo�"���F��� u�8���T��RT�x�����W*ك꤬��3q�3wd�R6q��a�R�TF�H�wQG&1P���<(̞�H��M��/}s�J+� :M��*���tQ������m8�6������2�W�Fd�F�J�[�ҷ�� 7��CWz|O�/�I�@t*�t�HDt��A� ��?��y���<U5�B�݅��.=0�h�`𥈛���6S3X�3�?]��)(����@�~���?<@�b�.:E�oKX����`W��\��r-7Tq�#L�`�S�z!�(oK8�m�$UQ��LB��vM�� �I�ҡ�{�A-�Q �(PRXg$���쟯l�a��/E��)s4ʘʐ��R�)��ڀ�%E��â�˞+R�Fu��HP� ���=�T����L�D� A_r�_hDJh�O���N A�Tz��pVV<A0�9���[�1�+����խ�H�RO+���r�\f|{n�.�L%/M�b��x�VE:��21>S���s�c�$1i��|-�E^ �J�*8{RA]�/�*�� ���\~�� � 5#�>�4J6�(��utd�d��RS.5��D;Qq��?re�&雓���O����Ȟv*�q��c�?m}�D�.��<I��&ـ�V>�y�NI�}������L��;6�A�i��h����N#s72i���E�����0���>.Ҁ�������:"q ��~h�6�V�T���WjԤ�� ���vW5�Ww�e�ť=q���H�80r����ԧ�IF.FF�� ��Ϧ��� "�����&鸕��U�bpt���m�q1��� ^0��: SKL��/\ڝI��Db�zÊ�.�����" ��|�����T�V90�: ��T�ͽo�c���V�@A�3��jnzh��u�,�'�r��di[&9s{&��ot�(]t.v~�4�܂KV�ڰ<�%"�� ��ϯ���Ͱ* ���/��5X��XL��͌j5�i��6-�f����`'^�&��c}^A��/1)���th5�D�:�í�k���خTL͠���4�`5^�-����+�3͑�g��47&�� ^��1�\�����fu�ê� >��w�}��{�ڗ���|h����W���MU���T/"�bf)���YNIAE 3�}��V1V����ƻ����u���Jn8�+)s3IA��W�m�A��}@J��j��Цl�M��� fwp�ʟk��Z���xk�N����pL��@'���i�h4���T#'D�X�8���j�w0����?�w��m�M=�e��z��ދ�Eoa�C�H8�/�fB�ج:��mI l�B�����v�bӥ��7$oF�cW0tr͑.�2�))@�^�.�ɦ� Vc0TV� BE��s��F�h�%�z�7�e�w$7���pB8��9x"��L(�4�[y��z ��x�[�DX B���H;�?هa���n�t 9pvzFk95��)p�Bg����< ,Ah�n$�Ԍ����� �o�.�geh�rRho�B+��`�%ڍ$�����k�x3Z22*��(��i(��l �`�!� b�N$���l xC�G�_NkP/j�h��5��,��ɰ��� ��]H����v���}��������,A�J)�$�ջq3U3�"��8�Hg��$��B��֕�:,A��=tC�ܞL�_..�آ�Q�G�_��g���Di��J&�Jó�iɸ���,��a�)R)l�>���`��U�h��s�Z�[��aç�Ks��_� �*ܹ�@s�����t#�-������J ]�BRPAU��n �[���� ��4^2��ό�I:����ڎ�')���;e{~�10㥓�[��.���'=�;Aj��'���u���?��I���� T��BU��:��~��J�7�� L�#�� _�Z����Z>�����`+fS��v���J��� L�p��&�p��+5,.,A,"�mbq�>f���/��r�` b ��������ԭ{�z(� �V�?,1,=,A,1,Q� �q��Y;�j�a b�����֪zX�a�a b��Ec&a�5f����>��F������ը~���oԫp�z%�� ������K�8����H! �I�e+-�',A�9VYXR�,X�� ����R�E�7=BH�8�)\���-)t,At0|颇�@5�Ts�]�9 �%9]M�D��8�)LX�B��� %�^J9D�o��T��:@�T�@�A� Ә�K+� V�đH5�J y����.=U��}J3t�jI�������������������������������������������������������������������������������������������"��vSrQ�IEND�B`�PKCA#]M����Ocomponents/com_sppagebuilder/assets/editor/dist/images/344512fa3e835050e39a.svgnu�[���<svg id="eE4oWpbrRkv1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 283 205" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" width="283" height="205"> <style><![CDATA[ #eE4oWpbrRkv16_ts {animation: eE4oWpbrRkv16_ts__ts 1800ms linear infinite reverse forwards}@keyframes eE4oWpbrRkv16_ts__ts { 0% {transform: translate(134.5px,128.499947px) scale(1,-0.118239)} 75% {transform: translate(134.5px,128.499947px) scale(1,-0.861348)} 45% {transform: translate(134.5px,128.499947px) scale(1,-0.118239)} 100% {transform: translate(134.5px,128.499947px) scale(1,-0.118239)}} ]]></style> <g transform="translate(.000001 0)"><path d="M93.293,153.053l-2.0613-1.19c.2081-1.123.2081-2.274,0-3.397l2.0613-1.19c.2371-.136.3435-.416.2661-.678-.5371-1.722-1.4516-3.28-2.6467-4.577-.1839-.198-.4839-.247-.7162-.111l-2.0613,1.19c-.8661-.745-1.8629-1.321-2.9419-1.698v-2.376c0-.271-.1887-.508-.4548-.566-1.7758-.397-3.5952-.378-5.2839,0-.2661.058-.4548.295-.4548.566v2.381c-1.0742.382-2.071.958-2.9419,1.698l-2.0565-1.19c-.2371-.136-.5322-.092-.7161.111-1.1952,1.292-2.1097,2.85-2.6468,4.577-.0822.262.0291.542.2662.678l2.0612,1.19c-.208,1.123-.208,2.274,0,3.397l-2.0612,1.19c-.2371.136-.3436.416-.2662.678.5371,1.722,1.4516,3.28,2.6468,4.577.1839.198.4839.247.7161.111l2.0613-1.19c.8661.745,1.8629,1.321,2.9419,1.698v2.381c0,.271.1887.508.4549.566c1.7758.397,3.5951.377,5.2838,0c.2662-.058.4549-.295.4549-.566v-2.381c1.0741-.382,2.0709-.958,2.9419-1.698l2.0613,1.19c.2371.136.5322.092.7161-.111c1.1951-1.292,2.1097-2.85,2.6468-4.577.0725-.267-.0339-.547-.271-.683Zm-11.1967.983c-2.1339,0-3.871-1.738-3.871-3.871c0-2.134,1.7371-3.871,3.871-3.871c2.1338,0,3.8709,1.737,3.8709,3.871c0,2.133-1.7371,3.871-3.8709,3.871Z" fill="#ececec"/><path d="M54.5105,101.015l-14.9164,3.494c-1.2024.282-1.9456,1.512-1.6568,2.745l3.2893,14.039c.2885,1.232,1.5005,2.003,2.7029,1.721l14.9163-3.495c1.2024-.282,1.9449-1.51,1.6564-2.742l-3.2893-14.039c-.2888-1.233-1.5-2.005-2.7024-1.723Zm-3.8536,4.407c1.1627-.273,2.332.472,2.6109,1.663s-.4378,2.377-1.6005,2.65c-1.163.272-2.3319-.473-2.6109-1.663-.279-1.191.4374-2.378,1.6005-2.65Zm7.0218,12.193l-13.2486,3.104c-.5816.137-.9416-.234-.8039-.827l1.8964-8.177c.1373-.592.6252-.757,1.0894-.367l4.7732,4.012c.4642.39,1.0914.286,1.4009-.234l.673-1.13c.3092-.519.9234-.608,1.3711-.198l3.0909,2.828c.4472.41.3391.853-.2424.989Z" fill="#ececec"/><path d="M227.408,131.668c-1.04-.842-2.371-1.236-3.702-1.096-1.33.14-2.55.802-3.392,1.842l-1.813,2.24c-.595-.481-1.355-.706-2.115-.626-.761.079-1.458.458-1.939,1.052l-4.08,5.04c-.481.594-.707,1.355-.627,2.115s.459,1.457,1.053,1.938l7.84,6.348c.594.481,1.355.706,2.115.626s1.457-.459,1.938-1.053l4.081-5.04c.481-.594.706-1.354.626-2.115-.08-.76-.459-1.457-1.053-1.938l1.814-2.24c1.753-2.165,1.419-5.34-.746-7.093Zm-2.188,8.426l1.814-2.24c.601-.742.883-1.693.783-2.643-.1-.951-.574-1.822-1.316-2.423-.743-.602-1.694-.883-2.644-.783s-1.822.573-2.423,1.316l-1.813,2.24l5.599,4.533Z" clip-rule="evenodd" fill="#ececec" fill-rule="evenodd"/><path d="M125.914,29.5835L153.73,26.375l13.296,10.5459l5.042,43.7101-39.737,4.5837-6.417-55.6312Z" fill="#ececec"/><path d="M167.026,36.9209L155.105,38.296L153.73,26.375l13.296,10.5459Z" fill="#dcdcdc"/><path d="M149.51,63.0984l-4.122.4754c-.116-1.119-.126-2.0677-.028-2.8461.096-.7904.324-1.5229.683-2.1975.371-.6761.88-1.4045,1.527-2.1854.506-.5941.959-1.1518,1.361-1.6731.401-.5332.706-1.0799.916-1.6399.209-.572.273-1.2066.192-1.9035-.087-.7571-.29-1.3851-.61-1.884s-.748-.8574-1.285-1.0756c-.525-.2195-1.157-.2866-1.896-.2014-.616.0711-1.182.2581-1.696.561-.516.2908-.912.7018-1.188,1.2329-.277.519-.382,1.1765-.315,1.9725l-4.454.5138c-.15-1.517.072-2.8335.668-3.9494.595-1.1159,1.467-2.0018,2.615-2.6578c1.148-.6561,2.467-1.0701,3.958-1.242c1.651-.1905,3.094-.0768,4.328.3409c1.233.4058,2.218,1.0959,2.954,2.0703.748.961,1.206,2.1745,1.375,3.6406.122,1.0575.018,2.0437-.314,2.9587-.333.903-.801,1.7668-1.405,2.5914-.606.8127-1.266,1.6317-1.983,2.4571-.619.6925-1.01,1.4134-1.174,2.1629-.164.7374-.2,1.5635-.107,2.4782Zm-3.842,6.1421c-.075-.6489.09-1.222.494-1.7192.403-.5093.999-.8094,1.788-.9003.788-.091,1.437.0656,1.946.4696.507.3921.798.9125.873,1.5615.074.6489-.09,1.228-.493,1.7372-.405.4972-1.001.7913-1.79.8823-.788.0909-1.436-.0596-1.943-.4516-.509-.4041-.801-.9306-.875-1.5795Z" fill="#dcdcdc"/><path d="M224.151,56.4164l-27.046-7.247-8.512,31.7688l5.84-2.1897l5.486,10.7328l6.939-8.8347l3.139,4.4362l4.168-3.6112l3.329,6.5137l7.112-7.6356l4.057,5.5908l3.973-14.8272-8.485-14.6969Zm3.939,31.6643l-3.704-4.4872-7.422,7.9678-3.463-6.7754-3.921,3.3967-2.868-4.055-7.202,9.1678-6.061-11.8588-5.43,1.6418-5.408,20.1826l38.637,10.353l6.842-25.5333Z" clip-rule="evenodd" fill="#ececec" fill-rule="evenodd"/><path d="M232.636,71.1133l-11.591-3.1058l3.106-11.5911l8.485,14.6969Z" fill="#dcdcdc"/><ellipse rx="101" ry="11.5" transform="translate(141.611 167.669)" fill="#eef3f4"/><path d="M103.611,66.1694h37l6,45.9996h-52.4997l9.4997-45.9996Z" fill="#f5b401"/><path d="M139.611,76.1694h76l-16,91.9996h-60v-91.9996Z" fill="#f5b401"/><path d="M69.6113,79.1694h112.9997l16,88.9996h-112.9997l-16-88.9996Z" transform="matrix(1.014862 0 0 1.000001-1.99316-.000124)" fill="#ffc802"/><path d="M126.611,141.169c1.5-4,6.5-9.6,14.5,0" fill="none" stroke="#343d57"/></g><g id="eE4oWpbrRkv16_ts" transform="translate(134.5,128.499947) scale(1,-0.118239)"><g transform="translate(-134.5,-128.499946)"><path d="M120,128.5c0,.276-2.015.5-4.5.5s-4.5-.224-4.5-.5s2.015-.5,4.5-.5s4.5.224,4.5.5Z" transform="matrix(1 0 0 9.008922 0-1029.146477)" fill="#343d57"/><path d="M158,128.5c0,.276-2.015.5-4.5.5s-4.5-.224-4.5-.5s2.015-.5,4.5-.5s4.5.224,4.5.5Z" transform="matrix(1 0 0 9.008922 0-1029.146477)" fill="#343d57"/></g></g></svg>PKCA#].?o�yCyCOcomponents/com_sppagebuilder/assets/editor/dist/images/c0160f779b907eae5fab.jpgnu�[������JFIF��C $ &%# #"(-90(*6+"#2D26;=@@@&0FKE>J9?@=��C =)#)==================================================�����������0��( P�P K(-T�Ȅ�)KU,�Hd��L�[)@�$���q��<�;���X2-�[e1��Le�I-"БhHʄ�ad["�YYԀ� P��.I�z��{c��ߔ�Oy��|Xd�UA@!@,� �:�_?��]���E�|�E��ԇ�3����((�)E�}�s���E�1�g_���>����w�=�徧U/�y�ae�����vw��\�s�x�(@� �!@���}c�Z��Iq1�:�'���~5@��:{��:��Z�'�>'6���:�5�PBՀ���YB�-dd���$>��}?X�! ,14�Ȩq�!�o�Y� l�Ӟ�fw�<ޏE���N��Íׄ�,7�KxJ��e23IU6MS.)Y P�P�?��Y���%�Fu�(|�o<d.'/:����MW2�m��k5�m�!�b�\l�%)J�&@�� �}?X����P,�Fd>ϯ��%��������<k)ct���5�����d�Z�1�ʨ������e&�P!`H�������6�\���b�v<;{����y~q���7�L�^7��g7������g|pDT(1QJ���[-�l"BN����!@5˝�s��s���3��c},ߕ�s�}>N_>v�|�=.��l�7X��\���"oU���(�,�$)��E�P�D�V�L��9�+|�(�`>ϯ�����V��GG�:��'��<���}Z&��Lww�}yu�9�u�=|��d�.Q)��V����%�4�eM��6Y�ʘ�cx�8��w���!@�n!�}|�uM�ߴ�S/?~��Ý��/n��{s^����Y뷏��v�}]�:w>��Luϝ��LA�@2\S3i��mc.B�.F�:Ҹ$^W�������}|uW��ޜ~��b f�|'�_/�S�������=��[�z<�c���8_C��rnz�}|mߝ�8����o�<��r�ӓ����g\��U�;�5�5���J�=?�=XN~O�q�9�7���;��k6�<����v�;���������V���@���}��g��ݬ��W���w�~�8S\z��{}�\���Jr�z����==�10���rռ��近��C�_��J�A�}��n��9u��+���7n{1��������g���>��'zϟ_A���x��i�}^�|�\�k�]��3�ڈ��|�ܿO9�<{:L�[���N:�'�����`f���妩����?;��s��>�N����}��z_?��v�S��Ǡ�Ë���:O��p��s�z|�?n<�=u����w�yx������U�43�L�VK�"�&L�nN�G&9p5�ӯL>�ӏҺq���j���y��5ݛ�/l>��G�K���|_G����N���{y���~���p�^�7[��>_N�s��nc��y��w�]W����ߝ��]�5��_L��%l�,��z�����[Ņ��s���vi�]S��n�>�׀��ԻP|7�o9��K�:�~����O�<�]����o��N�ϫ��=�k��ϝ��ǣ�k�7;��������>�R��2)�Nz����8�OL���~�e��g��>���j��?9�s�����ؾG}]���~�׀�(��N>�5��Y~�ç���=|mo�{�O��O��=Wf�zO/��_G����7˷���Ӈ�>��}��>WY���2,�hm���~����:g�_���q�r������Q��×�fw�~�~���*R�� F�|S����x��z}�������Ϧ�|���}���o����}��w��#��^��>&uʼ���N@�Ƹ6s�@��p59���Mz��7R��)J ԻP|O���g�E���}��O���:k���|�gI���oWǮ�{�~]�y�9v��Og^�������@5י���Z����7��`*�k<�Y��鲝�(Py����}��s�j�ۋ�:�.m2((0|S����yE]��?N��߁5�5}�Qn�r��99��v]��<�q���}�x�����̋`d�P,!P&��e�Q�e�@+�S P�v�>+���q�dl��e�Y���q�R�S���Ro��Z9v��Og_5#N���^���$��K*\e��E�cR�e�51��R썶g��B����L�R�5��O?���d��:�ѻ��K�;�s�#Y����:�?~6]���������e�+�>ӿ��~~VZ�@�",�AJ�A,�.fVee���)�J�l�����w�?R�Ís�w�yqW��aw�7=w]����}}7�ӕϣ�Ǵ��ޯs��㞵V��� V�3l [���e�+��sٛ���%�&��)�J�.�!��dj�ʌL�-B� Lh-B�`R�@�Q�h��"�� f�@P!�� �@�@ BY `.E��h�ҙ� f�q�%�k��&$]�� @ �(5Vi�JP�v� (�ċc��E�=�-i�l���f��ո�z٫p6��) " ��6uޞ{3y�7��#�2)J�l�d����bbE�]Vn�� ) (,E"��e�&5�dR��v �,P&VBr�F ٍS)l,�)��.�Uf��j�m�\�@�`�11� � P�%DR,��4[�dR���!`E�V�{�}-i�l���d���`i� ٛ�i�6uޞ{3y�7��lM��k�e��-d�C�c�!@J��i`eg�ȥ(T�l�*l�Cm���j$�b�ZP FE)@����� �dR��Q���Kf2�ٌ��c--�Ql��a���2)JB�@�Ȧ@�1�j)�A@BP1)J C(B�*PdR��@@B@P R�P �P P R��!@P���*P 0@`p��������Y� ����TU���j��$ ��" E�" ED �6A�Q{qD�� G���,�%�H �� ���LJH]�Y��ip����&ڎ�~�C-�4���~l�g����4���~k�_����5y��>i�G�<��4y��>i�O�|��4���>i�O�|��5y��Hu��x�=)v��C�Ԅ$ꋖòh�����{A$TG�#����4���R��+R�Aj��u2�Sњ���"">!�7���������FO���1�Jt�Vuw��.{kթ]WI�w&9Ҏ1Q@D�@gكPNn�]�"�I��E�LJ��Z���L�F�!�����"/�lNB����qRv��x���Q,GF=I�j�T�V^ Q�h��P�QU"�*��Z�5L��| B@�p6���ϩH"��p\\�#T.����P$�G�G`Q������(6 ��N4�����$��S�4CV�q|��[Z5%����%�2:U��e�c��3��*8��hDh6� C�6�=C���:��G�_ ���ٷl��_Wat���s� x`� KA\ Jl[`YB�� ��t��P��Gݑ_��j�ݫW!ijdF�d^�U[>���n�:q��e@�Ie�A���Ƽ�.j�o-���KѯRA۩3����N�u�ź��X��i��.�zMӆ��=������Kk%��@�9#���7re(*D**���\��.Ll�$i� ��@^6S���nl�d�6���>z����P��m�vZM����u_���Nk���]7�����1Lͫ���P��Ԋ,Z�xur�z�gi�.V��w�sp��`�?R�q~�[��?�Nj���!r@n<@�h �3��� ��u�T��[zW�;��4��[�i}~���x=wvbW�\�*�鸫15�D����Z�ދELR�B)oabwe�ԢzA�S ��B�ܺYw���6Ę���;V�Q'�V�%PJ[kP� �+( -Ț`��&����m=xh�ٳ��Y���H�~����E9h#�3]Y�;M�O�+Y�'=��]�����Ӹ�K,4SW�#���"*�����R8"E7=:�k:5$�������ߨ$�(�oV����Һ��6�J��<i�^i˃U �������h��K�&R�3g��/]���{m��{;��0oҊ�������i�D6җ���:���i�Ijz��-.�բ����[[D�32uP��)̤��ȟ��9�I���;� �VfffZc�Pv�kJ�tpk�v��з��W\�el�7���4�L��\�i�M��*�F�陙p[V�n%���fffnV!�����M<6Y�����D �� KBj���n-E��ҟֶج6�n-z=�T8i�����.S<��D�r����@���Ǐ<x��ǰ~��mRcB�L*���a���w�;3�깤��{�B�l�P��6��(�_�(?Jc�P���cL۔*��� U���?C��K��/���@. '<8p�Æ<X�bÇ,X���*fffffv �@�_�����Y�N���7$zY��g��K�ѳѥ��dP�=�j'���o���y��A۟>|��?3+�\)EH}���P�{A�� G�� �������Lw������hh��ff�@C�����R@��(Gx��#x����xp�Ç1AA�R�DDDDG�4Z����ۍ����sϑ�G��55w�B�����$�n|���ϟ>|��晷-�dɟ>|���ϟ>|���ϟ>|���ϟ?q���͟8/�2t�0��ɓ&L�2dɓ&L�m���F(��8p�Ã8p`��p�ÃG"�Q��%H����)�>L�2dɓ&L�2���~���6�>!A�H?�hh�5��W;���[ܘ+��K�f~t��;�L6��S��D�""""8�1L�G,F�AA���K�'�����P~�~Q��z�����Pr.Pr+���WA�� ��X�*���D�����A�Ƌ���s��&L�2dɓ&L�2dɓ&L�2dɓ&L�2dɓ&L�9���*"""""""""""""""""""#��mQ��7��#x�����*"""6��x��?��Q !1AQR"2a Peq���0@����&5`����3B���#$%STbrs�E�������?��G�j���L�'K+�X�rJ��_�����z���䠭�kO {/k�Qasvm��wo*#���wTbS(`�E����D��Lve�Ȩ��ӳ�e�Q�L��b�%B"1�M�m�Q��g�˺��@��p�u�*�D͙7-�J"XLm;>�[�bGH�[2��L�M�m���ƒ��[�bG<1��țfT"#�� �d�.c�K;�۔a�xcC��<�;-�ɘ/|6�F\�4�wM�(Ü�Ƈ?�m�C���ۂ��l�e�qcn���s�ۿ�m�E���ۂ��l����%.!���j-��f��l���&�<�`����������^Z1 �F1Y����Q`n�Ʌ���S+4v��*2������K��F!��Vh�w�S0�F��.i��;[�S0���n,V���٣=��C+���z�l��_̹�P������0K58s� ��2�o��~Ҥ�JSq������Wq7<�˿W�����dmlP����kZ��%&�J��Sv��I7'2u���.W����^��ρz�>�|��}��^��ρz�>�|�����^��ρz�>�/|�����^��ρz�>�/|�����^��ρz�>�?{�����^����z��/{�����^����z�>�/|�����^��ρz�>�/|�����^��ρz�>�/|�����^��ρz�>�/|�����^��ρz�>�/|�9}�t<��8�&�ѱ�PI��D �c�.z�.��k\l�a��r5��� ���'@ sŜ�H��\M�������������;!�K�i oRZ�!�������v�}`�;3f~�&�n���WV��x'��iX81��ϙ�� ����x)�yO7�4�T�V�9��Z*zlt�Z3@�f@o̶��S$6t,9��C��,Xm�7\��Qoe��4�ұ�i��5P.�w�\'DlU�{/$�O?�*N��䞈��7ȡޠ ���s�О���>���ϙ�٦,$��c6pQ�骦d17{����}�'��"O��<ʒ��5;��<.��Y'o�EV��dQ�F�SH �<��B+�6�-�J���Ɉ|G ��82���2�*^�"w�2�9ȩ��Lѓ.�� �swʓ�?�'��~����13$�f�VCQZn����L�hcx�W�d�[U4��+˼��[z��WE�8nu��<�c-#�<Bć�p*) p���P;����XG6)�ͩ�\|�E��o%S �Q�ф80'r E'RRq�O���'�ϰ�&�ϙ�!s� G,��}�e�M��ZIO&��WS3��2>.XE�ɻ�qX���a9�4�EbX���Jٷw����N#�9������$>o�ϰ�'�Y���b�v���s_��>,�î2UU������c�P����)�r�۸?&�9�Ǣ�q��g:9C�mW��ۢ�XE�4Ӛ����X��N|�%�a����8�Z�\�&�AXC�3�?��3�g%�����Ͻ#�� { G���I��C�svl#"ӿ%��#ҤTQ5��/ TzOH�d���~���C����eSOK�|5�� -6���%3`[l��'6�N�J��������ĥ�qk����qX� ��otP:� 乫���}CPD� ���5��J�ѹ>�1k��$I)/� 9 ��G�}�U�o[N6xi+�.�c*�w.�L��I�ee+���+�1�o�PV���9����9s�+��iޫf�u4zI��R�ه^�'`��4��+[b,�<�C�s$��Sl��!*:v9�pk@ByvT���i�3 m.Ѡ����=�n�(��u �V9.h.I��5D�V�M�%N�a�Ԫ^." *��,hQ7�j����9˖�`����Zo-°�ؚ�1�@O�:_ ���i����5�~i/e�L�+��2/�.�tM૧p;2�<n!WC,��&��]m�,��8��ʊ�I����u½[��K�ɱ���)�P�H�.�p�%���&�)c�5ć�Kx%n6�I5D�tm�hI�"���:F?��N���䈁Tz.,��ʹC!��*`,�\�|ԧ� �~E� ��|��d++�9"w���Ԫ_����/� R��sF��Tdc��Z27�ި۔t�[ �Ė٪��J��(���ueE�p�����Q^1g" �3�?�旙$h a<ņ���#��ښt�K�\}�6m 滒�Ѧ����͝B��UR��c,{̜/{�&���=�j�c%�w�� �Ƞps�o�����*�c�"�Tp�9�����I�1Y�8Zn�����҅3Ah�6GU�Å�����xD;���?��M�*��UN6�Z��9�m� m�Tv&g9h�ȳ�E8)Bk�`S<X�P���H��|Nr$.hqyVPSR\.TQ�FnS�.WWŴc0����Si�N?��6�S��r;=���K�}�*ۖ�IBzB2�n,@iVtTD&��n���)f�<<���pܶ�o�4��PK��p)�i�"�CI|�6�q���{���>�B�}4�<�jx }�,�&�iğ+��r��/+�Ju$���eM<��.ǂN��� 3,6��`$'�Àت��*{�����S��"� ����C8K?v��A;� ���@n��h �����7s�P͡����:f�a52��J�۲��4��>����6�?t����'_ �w0�+���6�֪��LeL%�`�� C_f�;c���sR� �I ��g;)d�|���M��<���d�̆�:2��,J�A�e��i[�U�adC*��I]��=2��AȄ�Y$,�j�GJMak��*��^�Z��!<��b���?X��X��D,��Q*�Ŵ� sM�,�E��S(g.%:κڼ��� Ȕun�� #Uյ�U�ak͓曆��?���n0x�=v���L��/�j/m�R��vEH*"sI9�Bl�$��o<�n���CJ�0�<ARSQ� t`�����ۜ!s�&ԾKn���T��(�%q~��n���ul�z9�����Ĕ)p2G����ٸ)4t!�yc��i݆��GWM��%�(#���ydo$5H�ms��B�p(9�ڃ^��#�6�A�C�(��_[\���!nb��a6s-��������s'pUL��HhS�əlL�%IL�m�#��ő�K����(��9��x�dQ_�=�� f���qӐ�˭#��j-�����i^/t!�%����QO��s���� ��v��˙T�Q_DTKM�"�s�����U�*�^қ�!|Oqk]NJ�������f$�s����8��� !Tu�3E����,� h��IOl6���ܜ�*Z���n ���1E���_G� �>ՓO��b7;���Iãȅ^b�eW#��u+��GD&�N֕OKIk���E_0�$�css��W��A~��e��mK%m��u_U�K1��*�8,��*�[k�Ú�:��x��67;2nIMk�؛��K���Kv�Y��sՐ�G�֑�_v�QN�7��<5W���3���Sŷn`���Oe�g��F�\M�=܊�:�+��9��>kiV��9�����oZ��f�-���e��v%{�հ������&�ت���5��Á�_��U�z�\v_����ة�YX(�#l� ��u38�/�Y���* ����WV[ �� �����J���ON�Mk&|O,L0[ TOd�����x~ (����FC��<�t�MU {��#D\�k��B�-��/�&;a������j�g�m@ D&��8f|Ax�������S�N�q��� �6�7;����TY��fm�Vh:�æ?%�܊1��e�n.@�!�Y��[�����y9>BL�YAG0��L,�Ϩ'闘t]� \� hB���:���"�J���m<�(� ���|��X�zݟXO���H����qlg�Y�����6�4f=aZ� ��xM� h=� �0�f2��P1t�!�q5��K=K�(qMkV[����_5O��'ɒ�"Ҥp�'��W���Z%�Ϲ.9 v�����ځ��!D���Y��S?�4%��s���!��0�P�s����`�f���W�oDZ���ٽ� 6�EKQ(� ]�'��}#����w�W�')�{Xda�RPF]�Yai���"�]sV�X��PC }+�p<��2�(���4��I.� L���1�`��69�pk.I�ѕ36(k�|�6kC�>C]|$���,5���]P|� ]��O� �'5�J�9ۃ�(8 �)�`{�� �1n |����,�c�8�jkKC�q�A;ͮ�#q1�Ø7�2�fa���VC_�����@f��Ap��|�,5`32*:��W�&�-NԂ��O��4U`6����MI+�o� �]V�2|��4-E8��m{��D�g��i��� ��n �͖���\0���&HpFǹ�6i�����������(�O#l�4�V�f������f9��h�V��Y�ᕬ&'Gr ��Yw�[%���9�M��6S�T�e�2�kߎ?��ا�gW�pu��ŧ��6S�`k����ݒ9�&����H�חo��t�Ҳ7a{�C]��ML�I��EL6�h�@��t�~�h�&���`p;rl�l[���/`xX#F��/�ۙ��ii�\�z@2 �0�M�7�� .�PR��Xѵ ܐ-}�jp��ul����l.m˧�毓TA)�Ǜ|2�+�A���D�e�p������ ��,��"�1?��-���-�������P"�d�m��lVq��!�b��ϸ��%h����Sl�$a|v�!�>'ٝ�#k�;�}��f�� ���$o )�xmw/I ���Ӊ�dv|�nb�D(�lVu�d)����X�J��&3|E��.����i���W������/w'˛��)� ;M�_�(��̔Q���(���� � �!�� ���\\1F�_��������n�*�}Aݸ�,.�U1� �fչٷ #�le�vNj��#���ts��6�)�$t,�0Ñx�C5L�N��}��J��b�fss�(�d̵���jjrk�[��Y�� �JR�i���q�LtX���6��r����Q�$�g��v����m]��+�\���G��D;�_�*�(�Fg�S�;"c����,C�����T�=���;N;f7���c����=���b,� ����Kͬw��*�[�]��X2ƟT�ʦ�6�M�grk{�[P���Y��Zx���:y��h�G�<���x��h��o4�>LN��#���Y��Y��c���X��f�]�@���k���U��D%ES<y�kf?)alpCf�Y�kld��K�����ſ��T�I;�����������fҋ�Cs��- I?�e�.:S6��� @�N��rK��T��`K��UT����;g�#�q�7� �{�2�c��-�Aʮ�{TQT0.��N��(�0���n�V*]�穧��Ykm;��U�GL2���#3��^��L�B9Yv`ň���ąY�C7�f�P�u�SO;"ce�́ [0���Ę���喽�i��ӹ��[���sNND�0ɽ��}]6�R��,�湶nx]�YJ���*��7p d�!�~��c`u����m6qb�v��z�����F�"wy��U$�jzH��8��&<��i6��Q�g�И71����hrMC����7�o$�I� ��|J<��L��� cՐ� � ����3�����E�NC_l��ً��ly>>Q��(�g�<�^+�x��~�ʹ�/����$9!�HrC���/���R��:��y[��p��Ȫ��8�*+��#, ���'�U��,q�ˬ;���`��s)�`��v�U���� g���.�����b�Xɋ��gy}��v��5k�^�V�L% 6�X�������%��@X��; Na�9��FH������<g�/�@�'����삓�IҤ�Rt�:T�*N�'J��IҤ�Rt�:S��+�]C#%���p�*��(��Z�`Gԣ�Q�(��}j>�R��Gԣ�Q����}j>�R��Eԣ�Q�(��}J>�Z��Gԣ�Qu���]j.�Z��EԢ�Qu�z��Gԙ���I-ߊ�eӐ�[��m���������������sm���W�A5AAAAA aA vV�c�`88c�6��`ۧ�'�'�'�'�'�'�'�'�'�'�'�'l_l}8 ��M���_ x�����?lj}6���)_�g�]ôUN�dR��J� �H�6�G���� w�̜,��N|wrU�e�y<��O+o�U�O]@�FM��|��TҶc? e�,8}G�U�w���`��.m�iGS���M�v�[fomdžAi'=�e[cgo7��nR6ln�'�����M����+�eӐ���Jg4�i��~��4QG��P(rC��s?Ka�`C�#��k7��^(0�A�5�����`�[���g����6�Aޣc�vx��S6�<c����Lnx���ț�@0�g�sޘe1���*�<H� ț�@2�4c��0�c��o ��H���M� !��h���za��1�r�*#�H�l]|�c�я��d,�� #�H�"��.��}����o #~ѸW�`-�������9(�e�ۃu�Ap��x�����~�����o�v���i��y��M��7�o4�i��y��M��7�o4�i��y��M��7�o4�i��y��M��7�o4�i��y��M暚������6!1 0AP"Q�23@R`ap�q�������?�i����?b�?�?a�?�2c�7��?B��\��s�uι�:�\��8���x������?�0���������%�{J(Ǘ��=O&������������������������������������������������E���3�����U�O�t<�y Ő�1|~>O˒-���]��Z��={����9yE ���X�6��E?g�Q��ߙyZP��Qk���'I�^G����ɟ"�H���9�R�BJJג���8���E*M��MR��.x�#�+�,�n���#cq2؝��K/Ѣ�J_{fG�ER1q3�#�I] +d��&n)��! ���������ד�h� �A�d��J.ʼnN]�RQdS�MT�"��1��c��NĹEۢ��)��5!�����$W>��ٖ��_���<�+���>�!���;�D�i��J�1�r�¦۲K��v(�:!�k�/�r1ɦB �c���2�M����RHܿ[��瑜?9ufF&N/'��,r���K�<��gf���'iȓ���хu'4�����S)���aʘ���l��g�B�C>�g�Ņ��bI$�t=ԝ�I��e��%ߜ�t�;��)A���-řc);B���$���o��n�x2dv�c�i"�Hɑ&<���E;1K� �b�F;�.���G����}�XtT�}ٱ�tcIv��w�d�4d��ŕFKbx���<?�����ik��U��q=`c�۳��Ԏ�Q$����Q����66@�&㉴,�����JN������df���N�Z7#m_<.��c_a�L�Zՙ\��wz0�MQ��ѐƧvGc�Q�$�<O�<�n�I��MS1?�����N*j�����8C��/�|����vp�����Jrfo���Â�~�����iP�%K�#8>�ԺU���Iu��]�3+��7��{*2�z��$��m8/�0dI����=�m�hɅ˪bZ�!�"R�M�mиi�t(ף��Y��c�������՟N����|���~&����w���N����O���8�I4B{Ɵ� h�I4J*��r�[H���R�fM�܂o�����d���,�c����<��2p�U�Ѳ�6>���K��n��cr8|�Us���gk��p~#Ni������'�ɑV�dz1�0�qt�+C���c�ʹt����}Q��'���db�qN�N� ��P�%������V��:K�M�5�4��'�N�2��%oiV>��W��ڂ����#1ˡfY*/��E�C�u��� ���� �Ǚ�v�Q��~�/��8���E�,��tw�|R�Q2q[�ƻ���.�?�m��\S�_>�FI�R�v8��%�Xc[�;1�R}�=_rX���$�&�#I�cb�,��,�cfl�ٻ7f�ݛ�vn͙���6f�ݛ�b�,��,��,�������b\;Ԯ��8J"M��[���Ii=�Д_�dSD��F�_�/:������5�h�<4(�eƺ���5F\�/ߒ!0��r�J�(��(�SR��Q�_8_Tj��0m��ȆO��X溣(�l�>����b8Z�!�������S'�1��0�h�5�R)�ΑH�R)�F^BU��x1��������+�-���Yl��o�~�����+�2pJ6��4(��:�/3�8ʔ�W�i��_ l�[-��e��l�[-����Dz�,��,��,���,��,��,��{/���q���)G��5_��~G^����`R�_J�J�]��Y%EQG_���+�5�V_+/�����|����3!1 P"02@AQB`a#Rpq�3����?����V�m��#%%k�e�[/���[,��e��,�Ye��[�e��_[�~���f,qqM����Fn��o��r\&J9b��&�����������������������������������������������\����+輩6,-����Iz$�>+ˎi>H4�RC�?w�I�}�9G�e�G$�ِ�O�� t��%��l_�WJ���ĕy��1d����%َQ|���=}L�2=���(��EE} ��2zd{y0�iY$�x�4�pqt��WD�](B������LQ��]��O�2FZD�/!�WDq� ��:b�<4h�"J"����]/�EW[��2;���lJ�rMԨ�(O�X�����б�{3D�B^�$���τSK�Q�Q��?�]\z'��h��xJF�55FE���̍�U�䚳�w0����iX�h�v%����+b����RNj��y1J2#Z������$n&rS(�����n��c�����'�G�\+� �3��e�:�rKH�=Y�&�'����I㌗&|�X��|��.�2���cf���?��R$���� �](�5u�8Wܖf�E��?L�n��dC�g���G��ľplǎ��Ӓymp*nٻ|�M-P�Ӣ&��D�J��64���W�i!�28��8�zd;t��chr�YjH�����dN����H~#5Vf������)��y_"�Jf�܌y!\>��Q]15ْp�%�1L�%�^IQ��2���BT�-��1epTǙn9�2Owl�2�a'x���Q[d3f�Q�wW)�� 4�j�I�&d^�b��LHqd]��6h�W���U���+�%�������V_x��G2��r��2)]dy�� ��xX�yjcZ���]����f�%R%�R��v%�X���}�؆%F�9po$�]�����*�:J� ɉHԮ�I��f�D���&f���'�� e����9~�/�q��c����#ı��3ˎ�pf]�2�tG��4�����g��a�jO\��<LTa�X��o����q숣+fd� Y�<aÉ �"�I�}؎4BF\����7W��}(������oyﱴ���xx�+e[��1E.�q�,�H�rK��v<67��)��U��t�7tWܥ8�3bp�� %�\���3��I�R�M�G ��!�n4v\�2�4v����9� �be��](�QD�)Y��rq|s9>����UH�"/�)�n�x�BB���>ޙ���D�"�hmř"�Ċp��=�T��� ��SV���kĐ�&d���>�r}�.�a��$�מ�-�;Ciu�F��"5|�6�4FN<���w��yU���\0�ǒ�1w���~z��|9⛓i�4�Tl�_�tӳ�g��\/� ������ڦ)Q�iw���\4,P��y��(���Q���5F���STjQEjjjQEQEQEQ__����܆u}=���p������̶�d��Hx���C�e��#���Eu��R.���1de�юm��&%���Mk!%��9j���?5澖Y}/ձdIS7���?�sIp�p�E��hl� $9���ч=:l��Rx~Q�$e�qx�}a6Ye�;,�5�X�r9+�w���_��O�(��(��+�_a>K,�����(�~= QH�R)�E"�H�R)��="�H�R)�E"�H�R)���$R)�E"�H�R)�E/E��+�E"��w؋��_J�w�K���L�W��K�,��/�,���ֺS+�2�S(��])�QL������PKCA#]]��GTLTLOcomponents/com_sppagebuilder/assets/editor/dist/images/ab499a0ad1900e77012b.pngnu�[����PNG IHDR�-} L pHYs%%IR$�sRGB���gAMA���aK�IDATx���y&�g�cf�����ȕ��je�$��۸3,ޅ-C�"oAMG�;�F�A�H]ĝ�ĭW�X�Z�-$��R�֫[��}��iR&,/_H�0x�{�U�fVWV���U]=�3��ɏ,TU>�����3+����������������������������������������������������������������������b����"�^��I���!v6S��/�G3Ǚ���z�p,:y�0���{�_�q~:�j}�k�m�t�8)_�S�ʋ6�Q�.����9�g��2��`o����~�W�r�xх��C�I��X�� H�w�'�?�h��iP�=�:��ҏ��M-H�nȚ냐��*#�zӔˎq�CT�����C}g�b����Ƿ� x�2]�wc̰A��JlYt˚-ԣe����� c,�<,Yx��_�o�g�b�a �C`�"��m�=��<Mf�nm� �7��fu7X�YX��?�?�;��8ntsw@-c��sL��0~�����cB^Z�!W�*vs��%��K>��D�v�`�y�9j�����<����)���M:�ZN��p/�` c}����6�˹�m��� M��D����&�0Y������Ш%�5 K�ʃd��$�%�2!�,e�%�5KK�8�<,a�1X��axw�>~+�]\b�re/� lUƪ���%s �9��#1:�@m���>��ؠMe�Ձ�W�0�,Y$D�_���!O�O�Ki} ���3��$yz�$�I:���a c ��E�,����Z�hN$j� L8������ѐ��ʪ�� �%�F��� 2��PX¸��d���d��n0,a� X��JGH�<i*���:^l�6B|0�I9lf$鉑�pr(��"���cQ� �%�K@�f�dY�7�7��u�c��qZ9yJ��iIz��E��y7>a|�H�`�*�dS�^��^�����z]�Vہm%�AJzR��ad������ŊÒ����M���8�0�1�G+�4#���,���%���%�AM{c~�>���z{�zͻo�<d���H�0V�,@<h�=^AzYZ<#K�C��e��!��1]���8G���"M�F` cea�B@g�F"@SS��I� �a��7��-�n���K+K>�H"�����yYڰX*,a�,Y@�)i�1-M�Lo�"���&��ұ�zk�0�K��Ii�1�����ϋ���)�ȑ��\{��%����2�)8��I�V�=I=1���tfht�&/����ӵEb��:�0�K 0�idz���҉P���4H�SC���v�<H�I+���$y�K�%��Jt-lrN�VG�N�%��Ò�;������٪�T�c�dh#�n�աa cy�d!��23z�0uB$�0�aJ��Ho��Lps�|H���a c�d!���7��Z2���4H���m&��Z]����>a|�ړ`�,Yȵo��3�%�P?k�y�,a�KF#�3�2Y��t�Qd$��j$�H���8K���E�f�S�����ޔ��5�������"�ů#~E���m�]��Ui�O�0�Ò�lq�����I�@�I]��v�f��aȋ�k�6��K�`�B����>����z��V� �d�9Jn��'B�����HD,T,�0����kL�Ȳƪ�r�j�z[�a�����Ѭ{����]����#{��~Q�?ݟ����wa ��El�F�d��t�gjY��3m(V,|�!f ��1/�ӭ�E��n�.���G^�����cb�o����'��,�,|`l����;,%H"(��@�M+ 9�,BW���f�pnQ<�w{b�_�ڿy��K>V�G��Me�rM�Pi�b�@�_z겁F��X�W�9Tn��w���K����|Z��Y$�vdF��_Tg�c��b��i�h(��!TLB���|=�1s�.5,� ��8���$X����2��b�q����Y�:���&6.���uDj�q` DF36a�&]����ɤ�oB��dB�ʱw,���I��$�̒�>��F� h(�A* a��lVu eF���?��a��k�<\E������d5�f�$B�)X!0�I�6�s�'�F�c����5e!�э#`-㷾9+"�{`at)H�B�$�S4�zM�B�*��S�<[�d1��Ӓ@8y\�?���I%����A��dY��hV�NP� �)j{YFs%�r�l����uc��B@L/Cp�\���0���W����*'�y�XU��#�ۍ{s��=�K����Hx,��Z�1�gIw � ���Qq)�����c$N�R���y��q]1�GK��IJt�$ǁͮ�����'��9p�[-q�������YX&,Y���Scg��� �)E�e&ԸD��P, $rP���ox������A��,�3��\ �^�[C��3�8�98c-�%Km6�jr!4#��A�v �&\�O��d�� ��HpQz*;��2 ��[���^�ʹ�.�Ś�%�6�8��?FqP�=9�$�Z��Lf���iy�%�~�;m�tU��1ϭ�w����`�`i#z��$+VEAh��(��⦨���|T$�/\�[!��F�k�293��R�2������w,i� ة5��^ (�t%�@��%n���<�͐S��$ztU=?�^��i4��Ek���Z�$�9���M#�M�����:z��R�MX!����6N{9i��WqI1�����L؛�1v���A�����$ı��A�?�B��#�;�����xi��C)�?BTݩ�6rw�}��AXaH���ﴤq�`�b��F��#.�B �y�>ܐ�k>�@�F�B/��yX�{�Q��R��{��3G�K+�|���W�{��Ū�N��x��1������uz�4�s��>���i?��`���9�~Á1ZCZ>0H��Ak����N�U�W�+�h3z�8F�l�<�op��9Z08��3�q\�[�=��H�L�nl�S��$�L�9J��A�� �f-4�Qb ebjÆ�PdmT��.cA�Ԇ���i$!���;�K�`��rɹ�xX�=��#E,JC��\9�r�Ŕ�\\���k�ⱗ�8<[���M�=���&����<�Kz2��%��ˋB��)Tw 1��`Y�&gA+�S�I�T��S��G���� 6' ���ez�&t��� �郳�������+֤�=��w�?�����?���?K�ۘ�D���d�B T� �q �(R�j�c�e�{���I7lQ����fFy��ef��4-�#6W�y`��[�ݏ���oN����I�0�ߛq��\����C�,Y@��a�$�3?�����%h��ZgP�e��!4����ri��x ��q�{�@�R�I=�+c��e���s��0�8Ů�&�[�Atz�eAY눲��B�,@L�V��Q��F���0�.���p�#���g���.b�HI$Y��j+�52��X{�U�/ӏ��k`+'�T�> ��u>��j���RI��a���eQ��Q57��.9�_��/�Y)������I=ب<����5��0�(���_��Mhg�KA���<3a@�r�&���L�a��ݬ� u�F*�C��|ʏ� �(�q�.�S��ړ�6���1\��^�,Y� ���l��$�`�C��+����V�S���+Uי�6��(�ؖ���1S=�����j��{����Urs��<�S�4P��� yؙY�$T�c�-TW�2���$$�8 7�Q�7����t��qρ�_�c�}�4� ��We�%Be���e��<�;-G;v�d���>w��-]u>�w����� ��oP ��#-�f�K�?s?������1W�;}qN���GK����r��&�P��` ��߫�:4���h���!��L�߭RV'�k��Zd�EK����/͝�.�⚐��B�pi���&N!M��Yc� CDF,xEJ�x�R�����p�V�\!�f�/�ӸfvR���i��{���� ��mC�i�}Ya9)A�^%+�N�<˲PMe�t��Sȑ�}�ws�!�!Vp0V2�����gܭ�]pw;�0�s|9�L��T�k��Y��|���>��U����u7� ����%/��f�c�ujM�B�!hJ��x=�>[8j"�m7-�*ܱb����w�*6:�ǚ"L�C�<�c�Oo����{���)ݲ�8�wzà{�����t#0�3��� �jNJ!Q�E�}k�k�� A�Np.]M�����?��=�WE��m�D��I/�S0pf��p�;{�db�m�?cN���'-���:�md��v��fw- �^��"�u��=uQ�@_l킋l��Ch��ʎ[6,>�0�6�� �������]�����ރ��_��N�N�b��A6sC�|�Z��{�N_���"4�K,s��In}|+m��rp�;�77�Z��,���nQ�u$<� �0u��*���+4mC��u��ӼpY�E� [ZH�R�!L�9��vpk��lD`"�QGv&�p;��r ��oR8$)�����<�L:o�9���,���8~�m�����ĬI��S9�xR�5�,�Q�6�ݤ�g¨��bQ@�%�R�=��L�<P�H�,�u�&�E�� C�bQH0"#�l��@TDk_�G�¢.�_���T�p���'ّvA܀� �J�H� ��{�5�DKD���%H���߃ɍ���j� P�5y����װ|���:��i���㩓y��$��0�M�rЅ�|�^a�!��4�7ey,�:��b�MP�� ��N�Z�L�tJP��Ψ�Ar^*ֶS��u���E׆��+���(���� Q]�����4y�<�����دB��eX�!�cKҀ��G�M�$�cK�x�b�{�fe����ӄ�=����8휂��� 2�锔�E�I9�)2���TdR�q�:TK߃ʖG��ǰ!I��'g�X"�E�Yh �>k���`�"S�}D/떞�fe��oڧ�p��#f�,�3�IkC硴 �����̫�+0=�:,��x����' �{�����>��[�=����I���3�:xL���<k���_�fU@d�J(9H20�c�v$�3r�D�Z'* �L[ՅS����boꤑ>H��x�&��2�j"�a�1���5�dS�L�$���߁�균�S� ��� �-T��XJ,����e�����s����'��~��3��*�|pD�s���voin��Eyb�@#� �D1�����9jt�j]4��<Ao|0�O>��ܱF��ʅ� ���@�ޟ���_�P�=�^c�=��f(�����7�m8���!�|:�ʨ;�7��w�~��zº�y�}K!�(x]aU��uO5�t=�'W�V�h��t>H37�&��a`�s �O�kŊ�|��� ��UO_.U&F��'$�끠ɠi���ZѬw�^iy��j�9��ћ0;�.�������s2�����Ӌy�+�(�5Y�kxG>�=�����b��"�Z^RS/#rQ'ݲ�w"�Ngp�1�]̏��Kh�t����1�꣡,��H0�T��2���ʅSP�������w�O���K!�#�|�>�C��!�<�>Q��������Gq3��)�7���\�P��MjB�1$�IJ���d����Ƣ�I������M���ڷ����Ĝ c�5�Ac:�t�� �1h��@��j�Gh�� tb�L��L]=3� �(�k� 8�K'�j���O��w/>�Ҟ���n�����{�Y�$�]�d!~{���g��YT������vRlj=�A**iq9t�bn6.5IOL�alx�`��~t���,�v���}��8CCmYͯ�s����o��i��܂JۨM ���v�}�C`�S?�n��X"a�p��:�� ��-���5������� ������@Lo���zΘ����M���#O��Ua�͚B1��U~3��T�������A��p;$Q|��B��a݀�W���+� Xwd!��yR��R��9���v,_����25.�|q��T6���*�c�!�p��O�B<X ``BJݠ��Nu��=9T�����QE&���F�u��M��y�'��y|��蟗�� �[߀�>������J`]��p?r$NA�trnz� }L�"��"���@�L�WL.���u����da=Ty�|P�B�#�m��f�����6v3���:B߉ٞgk���b3� ���4���G���(��.�]3��*��:�K��� �M�B̧?}�dUG�F0+ih8FsD�z�� ~0_�;}e��r����;�*_օɎ��V�uN�=����N�/�g���*G: �?·��kZȴ�����O�<y�Th�E��f- ͼ:'����5,�\�4��`=�ߛ�Bu�~���<[]���{�S���v�<y��P�k">�����}��6 W��/�c-����n�]�k۵�����'"$��`����_�Ts�8z{���-6�����+��L�M�Ч����5X�����_:�]X�7D�ID&�+�IJ�X~�W�Z%fM�Զk�bl�ف��~ީ���V�f�V�i�J�U%�t]Zz8��-�{��*����{h9�����{63y�AA~a�% n!��R�ȺpC��j�*�F��r2#�GV!eeeڬ��B��̗�K��ě�v��<w�3b/b�}�_�ƤN�¶�R�Z��9��gk�d�F$#\�W�Y�Y�'�N"��MH�$�<N!�p���旣7����|�?C���Ů_��0� �?�#N+�D�'�2�t��*+i��#i�~��Xk��w�Ʃ�7���A5}o��ę�C��b���2��}��Q���~�!u!��� y\�;����JBwq wn�ڿip�q �����*�S�� �ྭ?�\�4X���o�]mY���<0<�殤N���{�,�%���� 9���Cb[�1w��+CaG�>_�(M��yO��@�!�-z��5�m篕�M�7����:��8s�� ��3�υMY�Ǐ����B|��]mY8��ܪ�;J�7����'���M�hr�-Nr�Th찜��GU&��7'E�u�L�~�r��f�8��0��4l�uѵd!� ׁm�+Po� �c��E�V�̋�}�ˤ�b/, �%q�9M���j:+ע��X�HNL����"(�%\�Et_0����{��_���hD!��U�5V{ڈ�%aUd.�� ��z�j /8��{��@N�o �XF����P�y`,�6�/(3%Q|%J�$4���=�90��� ��N��8r|b�z�^��p@-Gu�p=�0�����Z�����sd�+ɢe�B��ZIG��S3�v�(@Hަ��8���pL�i?r��i`��Q0�-fm��@h��21T���f�p�2� � ]I-YM`rKn�Meڈ�4�Ɠ"V�0��e�|ŒE+p�/B��ud�$�B})�S���8u���Ҳ�� �nzZ.� u��M�6ɠփi�}# ��"wA:{�����?��|��J�aŀ��]�Hב�R� S�3��c;fa�܊�G�J[J{h�p 1� Nt�{M~å�|��̰,k��q�0�H�up4�a�"�Ӆ->�ȭ,N����;v:�(~e����� J�~���G?�۰�(Ԧ[Z�3 ]5�·*�R��(�h�p�?g0�dF$�cy�C��_-3)�70�fxJ�5�0���l3��g��[&�,�s�wGA|fnb5$r�©�K(I�!���k���h̫��6�K'[���>Q��6� �e�v8?��~�o/�2�Ud!� ��ҁi��� �-�K=���!�e�@,�W+d���&N�K�Aw�luaZ-��;�+= �{~'1�\\�w��@�m@W�!uF�M����~� �Y�-F]0����v ^¹~}hHO��Źk�r�L��p����:wޞ�1���oGܢk��s��,�5���F�o�X�����E6hy� *��ɦ�s9O���:h� �����s��C����e�f^�m���V�=�s����z:��{��a�g�nb����'��(Vg��2�5nH�ۜeQ��6���&(����,="�Ȍʅ_�&S8y��U�O�,N��U�ԫ"�=�;�Nrz�����"�3��)�ݘ��JY%�B� �,L��G��!����M�?�ο��x��J�C�e�+,�t���1H�N�ut��!]&�o݁�ù�]����q����ު��[�z�,�N�DS�Ic�����±�oQ��yw��6�mc�rT�Q��E1aQ���~��௯qX&��,r����6t��`D�Z�0ɠ��"3�x�z�'��,T���3h���-K�aB=��X�ov�x�틣Gh�`iq,��K�5A@_Z#&�^�� "ɕf�� �I��h����WX-pko���pCjuض�A�F?Ct i�gU�F%��U�(hX:��u�׀D�\í���↰��Ϲ�'�{D,��W����~A|xƴ����sq�j����8�41S����)�֡�:�"���i@�W��J�C'�Vi�0����[pe�"��e�2������nT�P��]M=7��� R�ԭ/_�w��k��9D'���ˣ��kJ�?*�bzB�Z�-����Ы'Wۛ|�`��>ת�j�2�6�6L��G�aU��� 1���,���,eF����pl87��n0$�5�(�T���MW�.N��=�P�uށ�E�G�x%Ko6v��/�*����28����~�~�L�Y�͒���t:� �����h7:�,\FY;�4��3.L$��5���G��1C}��Bm�m�S{ovgN�0w�^� >�:�s�r�'�h��c�\�-ٜޡ96�?=�W;.~>�aP���M>A`�_��hІ��_���e;�y�L�uq��]p�ƻxǾ��HE�a��t?ډ�&1 ����(�X! ��cD�3�Ajl��V73FKIv���$��agܝ��c�.�`=�zي�/��b���H%���rJ��J��O4�,���z�t@rpx�ݿ_���E���,|���::f���7c���3���4^�M�2��)hh��&��z2�1�b��q��1��1�(���H�Y��W�]os�n�� , J�~����e�Z&5�M�2������^�n��&=��BZ�dV��z�b��5����4�!a��aR���ɢ���8z0��Ŭ��VF����#&�`�m�5�T"oC�3M>k�z��ZM�c�V�ퟄ4�XkäFx�,K���Ӟ�������CK�A�C>��Ɉ-��hبL�O��yY�f��-��Tol������3� �c�j}D�-zq��R�_Y����?N��+�0��0� �YX&:�,x��-�M �8m�qT_��=;�yrR��Ke ���LuQ^�4�a�b��,�K�G_<Ɣ�,�K4 {4�K���RRXG�� ��H���f yN��b$�������������:at�0)��ga��\7�M� ���hsԇ���j��z�z�2#-����[LO�����;�q���,�/�/�C�):f��7a��X���a�f��>�44!�-�aFa+q�0_���r�Z^u�m�_��Jiq��6LZ��_�d���h���]<;!?�v@��L�mZA}��MR{,�$�����q �z%�f�6���q���2�g���ū[a���0�p�IU0`o���w��hH��D!�Ư�~�P|��S�=�o��o�����0��tYL��lO@HoC�Ld����1�h��{�8�V����S9��e�ZqU\��ƍ&��Ჭ ��$��� �k��d��UI��B�J��x� Ǧ2�P�P�S�7�����Uu��56�휺"�E4v���j�U�Xä��AЙd�����X��~��6��z+�t�6��X�6A��K���Jke�T�7�t���t�!̅�v���mj��B�噂�2�e(cڃ֦��_Ko���k���s��"�9�9S��0��Ͽgt5��`�g٧�<��*B�o�`��'b�k�kR>L�"� Ib$$�A\�zu:�0,U�gV,@m�W/�.��/�Dw1g�=?��q|���H#��p�X�_����ԯN���}�^�~�������bm���4.�3��7�,a����p�{������]���/Գ�rA:�,İ)��q$�8�#�O'�������sΔFW7�I��K[�����Ftb�k�H�`���`��.=����`!�a���"eq�26/�)���O0C���Spy�\Q�Ǚ�凩ܙwƠt��"y��fU��Ð+@�^��b�wv�`�p��X�F���,]�V.{����Y��4���AV�H*gҙ%�S��A_y篇IT���U�[���`�l>���Yh#:n蔛VX��h �5vz�:�(�}[��Z@���<�$���lU0]��"� nI�2��g�"�ȹ�S�ft�<���Eؑ0)c�B�'�A:��� ���:^{���4B����˽���Y�bϠ��s}���.,T��j�U!`-P���u� -F&�{��7>Ɏ����"ӕ�=M�j>��~�^(��$r����ڦ�T�4M, ���YV��S9��_��C�+�(N'AXG��8+kYy�1��jy�@Ӟ=��H����=Zi��T� ��;�ƿH:yԻ�@�2���G���so ��߆ɉ�C�d�#�����ܺ�P�e�BNm�&��`�@���B����A_��M�c$�����b���Cu������B*�tP;O+����t=�{C�B����-Z:%��3�V���5�Z �CE��|�j�,m�eV����~REn]�o�4\��ϭkwD|��R%��B�7��w&�Z��E{Q�G�e�ؤ��/������\>���|��5>���x�q`N^EʼnO�'��o�z�?��� ÒERj�C4�AO��(x0G�Ȕ�������pm�k��L�BI�`x��à�"��G�/�~ZCI��}��+YG4(�A�L�Y�1�6���&��nYéb��=���6c�q�� �@���[0�'M��,�|�A @U�N ��ʪ�4OoS�iֳ�c�b��7��t��-Y�:v��O��������mYܦi[`�$���W�伭m-Sx��z�[�PL��/FG���y�P;?k�N$��3۸ļՂ��%,���z�d�,�ꚉ����;��:��'A��?�"�":�,�o�"d��ˋ,�X�!�P� a�r�f��<}�qR?����o�@,^1y���uyd��j�"-��c��Mq�>"�=��$��(�7}����p�mN�ta���ܷ�D!`c>0nﲨC�e��b�V}j�a�4�ik��t wl���N��:8��SwS����m�&2A#n���Q�1��E���[ϟm�ݜ��V>��7�w���!Yj�`CQ��QL `��LȂ����c�k����+���OM\���?�\�_$'�ύ����o6���|����y�|:�7�=���Y��8��n�ύ��V�i4��$����#W�F�/��;��|���P�߬��W8>��w���[Ie�{�džz�v��s_�1�-@@��b�xlbn�1�_Z[���+�k��O�R�-0[�;�����|c�ꮛ��OC�(�B��������bU��FG�oݺ��^g����GJ���!_��N���-���}�䲗�_*:�,�,����1��JV��h���\�#��D���o�s��\�> M0�X��ۉ���M�k�N�^Ȉ��壩M������N�d[����{���}z�%��l_����]��/�H�_��s'��w���c����r�Y���N ���4I;� % Ǧs�}�O�v&.L�>��((DG~��-�T��qU4�?W�9���m�d% S[B����?:.�l<*�ʩn*�GnS�����o<t�ɕ���C��Ҋ��r; �����}d �@�Y����~��u^�/�j���ьJ����i���S��f=�%t�.�l|b�2��&�0�zg�99o��P��!�,�z�S߯?=v��v����2D�U�=��Om=��%�)����q��4���0zv1� �o:?Vp�{���b� ��:3��Ɓk��n��PY�0�|�>*T��yJ����1��ne���\�N�˞z~����5��p: "U��ӓ0�4@S%f�G�n����֘4�7k^�N�3��*!w��8�� g�_������c���S�S��%�f�m���-C�X�e�xps{��GJս%�>��� � "rʂ��ӥޅ#����Ӽ~�M�A�P�٩���WT�&?�����H��# ������`V�� ��c�f/g�:_�{��o�|H D'�\���4���q�y8[-�]���.<EP �ѓ��y��㴮�5W�gz{s�7�hj�1�Ϳe�. �p.P|t6��S|�!�>9��!,��7�����n���X�~O����U��H�s<�ٖ^݀|�t#�J�aB��d��Q����/ޫ�c��S�%�Ib/���Hh]�vQs[n�x?��;�t� ~=�-Q��1�6���}RL��U��D��K�o)_<ܨ���A���-"�����'������WXA�F��X�ii�s�"��3[n���4��8] A,LUߜ�V������#@g�!b���dA]x�v���EK���'DTʂ�>�����֙2��8���:i��mC珠�ei�-�q��[P,1�WX�O�Hj����qrR�Z�c%>'b�.靺�7W=u5��`�|O��ra��� �Ң*�V+��w��;�7����an�#p�J����������ɟ��C��M�_�2v����������Z��]\���9{��ճs��>ɓ��� �.I�S^��kA4lmd���Jʬ+J"����X��d4�!f��U��f |��V�'n�O�%��]�^#��e~X��0v"�UJ�ҪC��{=0I�'S�o*]����c2e��w��PQ�K��ީ�sՁ��l�;�}䃝y�~/���r��!�Ze��VȪ�1�|q��(~�Dl2M�M[�G e�����[������Be!�8�q�÷�O���p:�$$:�,��Y�b�g�����5j;'���$��T���^g~�hء�۷��-f���c�P�N�4���Um4������$3F�Oܲ���B���M}���������۞�i�g��u�1���d5�$�#��� �ͭU�ʉ�2{�wn-��E$�������AW�&�h�#���p��S�wo�LN��?%��ؤ2�N��Jk�����Z�����-�M<�l�˽*<Yʕ�J�t(�o��b?��1}��8�iB�wC[<���$䇝� $�s�{���O��x��š�Qt �$z�2�5a#�!,�!�y7m��7�n�R��x�ޛK#;�o�����y��|\�$:�(:�ې�k����L_�;�4#"�q���Jl���3�ǟ�%�8'H@l��Ϊ�r�̎����B��+�N݅b��h�SNJ�+���TS��4�44G�@��K��<�x ˧T�?֛��k^H�IJDy��p�EnM�4���=1?P{�39w�j�V�^��L�Xt�8�O,�TY��-��X(�Ɣ ��^w�����������+��/�jRZ���T6�Gv��y��|]�s!!�c��R��ha~l�wfg_~���C-�.�FyV/7�%LH�?9��sg&$N�sN+��Ay�t���TBr�8����v���3�,Z�N���1�<8]���]��]�F9����+�<Ē�g�d����������[�?88�3�tHo�V��0������kn�x��IiK9��ּ^j:���}�1w��\���y���o�'���cS� ���n�e"�U�2t,Y���������>�@!�9 6�F�'�J�m�j' c(~������gw��d|��[?�7Z��ag AL�zX|����S�����`�l��!�-�k�7W7[>�u�i� �/����5]>�P-�ne�F��XP�Z����e����Y�?��ێB�����a(�`�$ѧ=�_����R�Q9J���W:�c�h 1��[Ι��/?χ����SU��������ravˑ[?âeqM��_qop�wY�tBT���1�]�dD#�i]Q�5�Ie8��٭|8��=��B�y�c 3��#�:˧��%�2t���<\����(n���C`�<�NS]��4G�yG��2������cs6�/>���� ���s<ҡ1\���x^���=J2�i.��к.�a�X��&�c����E�:.�n:l"�$)��_It[�B������I�/�͞VgYz@kH*ߛ_�?Z���'5��'�w�8��?*^�UHj��r�>���O-{�t1W�G�C�U���É�����M�����`�עOO�� �q`���s%�azMb�.F��ʩ��Q��2��ǎ�@���(.Xli>����L�V�Oќr��T�4�1�Dd�pq��r~&<^���J��{�$I[��b��a�9Y�Q�sЅ�58s98���a9�YDy�� &�d?(��4ʸXxe����{�{rP�7FB���SL�<�n��4P�N|8=.~�i����cJ����:e�)t+�Ť��S����GK��h��X�0��J���̱ڮp�|S��$?x� ��}n2N�x��c&tTM��/͓i�zˣ�n-�5 'M��f�k�W DiI?"����y�f����b���.�%.Ys��9��X�?��X���e�-��ʓ'�uUQq����|$E�4<���h��>�~���r0Q��B�λi��̏W4��Y>ǃ�[����Z>-M�\�Y=Y�-�in������'�v ���A)�p��__��9�2x��;u}~�ґ�N56���1�s-��[����3���,�}G/�mT�=��q-�ga��J��M�vx��w����ei��֗��2������Yk����_$�,iF���yD���Wf�<C�м�\���/MoSV��K,�o�;�;��|�r��+s7?>_+�{����OD#O\�ަt��˻r���ʗdž�?�'_��vtb���Z�1!WL[ � "�4����ӷ�덖.<�X4kT�o��m��d/ܑ��� )��}���Ű���i�n�+~7D�"�O\V�B��~,��5<�F�� �D�(� �D�~���=ܗ�ڴP2����&4$!�߁Nt�-��X�����+rk%a����� Ĕo�|AFC=��k��b�j����6x���튕�h+N&=6\8�R >.#SM�x��� �#H͢x�<k���[�8?=�)��h2�~���@$��ȩ\ �(�k�w�"���pE�eW�nn.`�MYᛦ)��2�4wm�`���$���n�U�E�ןh�[q��~�\�����P��?�~�]^'��t� �z��RL�����?|:�,�M2�x��(映��=�Pp*����j�*75E�ql����Х� ]�d�"\�ח6�Ӄ�l;b���~���6���iS�E')]:�GA��#Э7���w�s��Qje$A�:ʅ�{D�$��c�����W<·BO���@t�rqj_�q� ��[�o��C�����gjnc9�B�j �� g�6Nh,5n�v�"���*�&>�U,�!�/,�'� 3c��g2��B�&Խܫ5��-�^�?fTt�c�q�Eg���A&�M8g\/ڃ�z��8U��o*8�N}$"M�fmy�-T�0h#�c��LbY-���T?���I:NJ�Qu�'>��DK����ٛ�`oB�k,� ��z�<�B��Y��Dj� ,�����U8�m+�ݐwZ��/@�� ���8��9Ny����!K���t�[�T��8/;��}V������Z��0�Z�<��T��č��P�m����rt�#/+���i��>J���Ե(��(�6�n��Iʫ��� Z�,���|���:JGb�5�0���^7m��C�¯>�A='?1z�l���i�A��m��8&�5t{`S�+�� t���l��<z%S�6U@�M����gz�dH9���H}���h{L+��jҝ��&�l����I2)�tF0M���u�U!�Ud!��oÒ ��6Co�!2�L6rv���+@sh��$�T>�z�z˼�X:� �|�$�`�)2[�>�`��05���b���zck<�z�":�0M� t�X�(�PKSe��nR��P �����u�פ�Ւ�.�d������_Bo z��L�5�nz�l���r�<tU�BBX|�g�����͛^�1<���Baf�x���Kׯ�~꽷�-1x���26��ۆ1#aH_߯q�������2�v̏��0B�j����AE�)+�G�k�6PkG!%z�iiH �k�l2-d<Jc��P?ªx�a]=���+�BX�ƫ�7}|�w�����>��X�L�<�������<1;y���?��?HN0�P�F�Ѹ ��zG�����b�q4ur4�M���ӀY7CY��\s�����i�Io�� dJDs�1�49h�;VV.B���dUt%Y|~�������*ctD�.X4h!�FO�}�����ӝ�P�O�0��43��7=lq���N�:� �� �|Zm0H��WH�f����kmJ��"�;�a�D����}z�U��: ͯ�ά ��$�C?|x�W�{�l8�V#��iO�2�Mm�E.�tBVaAiߍ@2#�1��"ׄ��Rt������H�]���P=��D)} �9�o�%�NM�y��(�UA��,��#� ��IN��@�#ƹ'gc�#�жc S��t&�,lJ\)L�a���L�A������C�9��2e���;W/n'=�;%dU�X�u$y4?�n�4��X'�v�=w�,S߇@h[Ë^��|m8ս�5�x���u�� �$ߍ+O�I�T��%��X횿]\���0X�W�1 .�)����I$�QU�@j�k[��f�-W��|$�Q[�/�B��s�kVn=��4��,�C��np�9`�G�0�Z��u`�2L_��j�oM8�a*�0}�M��� �C��MoD=/�O)�'�ta�vM2ts#�>Ɨ�I.B�u,E��2�]��幛߃���:������%���{���U)��~ �?�8���)��W�w��gw�Տ>�3nFdH;|^�<��T�$ܣ�a�na}�!����j����^��)~�E'ܕ���3IP+&l?��:��L�ʍ��6C�1�s��.L����$�;��~���q ��?`�j���Ȃ?��"', ������kea�|��0����;������eng,ᕏ���w�����e�tW@yyҊM/�x} �gYZO 0hn,��:s���ِ}�[d�Y�U�#~ݯ��&�iҖC�y e�^�x��k���1��?�u��"�Uw��$e(�Q ��mK��ʓ��������~��iX���o��@&k��t���N��벘[h���c�4t�hN���J� -i���%���>��z)���ed�T�X|Z�Z!Z��Z)��u�K�UtY ��)���$n��աu7��B�����y�CGW��[�U�M4�K�ݑ�����u����"DW�š��1e�i����#A����'>�yH͢��)��A�uӽ�B�!���3�y=tݞ��~��~,�-�8e�"��#a]�]���it�d]�8��ቋ֪X�����m��,���� ��'e��j(?�TO��&'��(�+��+�L�.�o��9#~�Е���Iׅ�~���,X�K���ϳ?�Dt=YHz��\��n���5�I��9y�?(��s��6N��b]A��x��,����"�#�Е1���o�s�c���,Q�kY$�Z� K�ÒE ,at'l�bi�d��06�kp7s��g�r9����5K�ÒE|��X�~�FXt,r�{�y���o,Yd�%�Ά��i'\-�,Z'�������l���O�ŷb�,�KK�O��Q�Ý`���x���X,�,�� �Ӻ%kb�\�����2 ��[2 k��(��_���,�떬 �'^��V�,�;Zrc����?�Gl�/��d�fX+cuL��+�\yX�X+�A��u`X�llb�a�b!�-�#&wZפ�+Z�_�#�K�K�u9n,,Y�"D<�V�[-i�A��̫`q�`�b�!��;y�l-��$��`��º'q��%�B��9Kk�,��{2�Uض�GO�э"���� \�MX�XC�\�0 ;\��!B|�ѓ����a�b�"����#�d\�f��#��9�d���U���>Z�̃Y.r7c�DgEB�8<6���n7����Pep��` ]�z�vu,Yt��1�-�>�q�C�\��0|�"ωaZ���Uk9t',Yt1�� ��V�?-�J�R��T���r� v��.T1�j��E��,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,��ϟD�IEND�B`�PKCA#]��r��8�8Ocomponents/com_sppagebuilder/assets/editor/dist/images/5612aede402b273f759b.jpgnu�[������JFIF��C $ &%# #"(-90(*6+"#2D26;=@@@&0FKE>J9?@=��C =)#)==================================================�����������0�]]���,S�+Җ��>zo�G��� �jr;8��������+1Ax�g�����h����p��0E������LLNj_c=rV�g����n�~jXA����qɯ����1���W\ihx��R���,7��e=n>��7��z�e���������[l�;���vc�n.�-�DI15�Vb�Jb�)h��~��f*�������㉊�g���l�zk��~y��{���R�B�t�;W[L�敘����='���-J��Y� �yOW��>����������]-�0�ν~O�si賴�"�k랾�Y��+1��އ��@+S�z�N�?N�[B8ݼ=�>�E�|�:x�S��X�y����"�5����0 J{�����b�Ād�� �~��)Ϟ�1���>�GX��8�R}^R1_<7�&���������Me��ݾ.�)1hY 0ޜ>� M��K�c�j�-.9����-x�QˬLk�+gY��� L��- ��y���E& $�� ��7�^�9k{��S\�u�;l��M�5��,v�LD��j�ռ�be8�^�f���@Z$$��>��^- �[s;嫭9���]��[D���jk����a�˳���v�Mp���=�����c�I��>�6յpE��F\^�e���=�edd��LV����N'w?��؆[��`�~o��;�$ � H j�ҳc���ruos���O!�8��ɳ~�g$ֈ�J�8���{�o���Hؽv��f�goG�w{_7�I�@+F;W ��?.�ׁ�݊�q}?>%^~��:����\v4�sZ`�s|?[����S͉�����)oa���zHD�I$�@&+./o���yk��=]��k��H�=�O��\4�4�Y�Z��:d�b�:�&i;����H ��= ���j�KVҟ-� g�wy錒����wy�5�lՖH1˥I�H<Vg��g<s�)���c9�H�oa}�l�BI$G_77� =��ja�0_/1���ۓ�y����}O������ ��@�@D�bI���ͥ�Z{���[<����c���S;��Ըz{|ڀ$&"r���(VWD� ��[Zszy��ǘ�����{�N/V{k����=̬D� �xJD� �ȱ �q{9�5�W\�U���9�SXȶu������a�&��'$6 %&"B�6�����f@����Vr�jZ�Y]$�})���use������/���~f�z�+���N�x��II���M� ��/Y� �ҷ��/Y�xcMetX�H8�~�4��ܺ�Uh�N=3kY�v+�7|�ܛt2��� �.]2H )*�D���qۗɵp�Z5:yq���瞧��:֙Ǩ���� $ f,X �$� �bA �@y}>kM��iljZ�ʚc�bԏ[�a�������VbL�ىڀ$b�D��H� �-d-�2�vr�)^\�'��'o<3Ҥs������ӿ�ϯ�5��;���:� �hf �a �@c� /Y�a2�k}>KD��h�mmV�g+cS=s�^�6z����@ �L�\� +,\ʌ���O;/C.9D�a�u�]�x���v8�ƜZ[�{S��D�$� ��t�$�A$a��b����.X�>�ln��Utv�O<��W��G�<�?���W��S�4obum��dLV���W�� �-d �3o�j섦a$�o�J�X�.I �|n�~����5���x��w;���8g�Oo8�^�z�Q��¤g��%�H"P$�LfY�m0�M�����ɂ�g�����>w�[O������*�t|��~ï���~g����=m� (%c)�V@!�;6���H$�Ţp���� ��{&�TS����yվ�{����s������>��5 (H ���YKHRS�1Y�D�u�ʳ�}���ŢpNT\��dr9����k;d���=�FJN���{��&K2�� �b�ژ�Ţk0G?�����x�L^'T�E�>?�<��I�j9s��Z#%_R�v� �K�$�*c1'm��H�ן�������N�ʋ� �0�A$ I2�@�3v�Y�D�V������+1h�S�$ A� S�;h���@Rb�8 �*.HAPB` �TQ8��4v��ˮA�S^]��i��� �� '��0�d,H*c1�XBHIid2QrI �*�@�K�E�H�*AH$�KH��@$H��)P 0@`p������=�K�����.I�пO�r�e���+f#@M#����ƿ����Eh��L�o�bC5Pq�[�����F�F^86E�R5 *��P[�?�.��h?���f y%p%�!�%�����F���nݻv��S{k��4�� �dD�\�{]Ջ�^���@��~ ���B�DDB%���j��w��� ��A\*���G;�W��*��'AV�H�jA��� x`����8�.�@�lqٕݻv�۷nݻv�ۈo^���vwuA2���䎛�S1���b݊�6lٳf͛6lٳfҟ�8l�6�&B�ӴWb�"р�4!����d�ЄDDDDDDp��#JP(Q�AX��`�%S�jhzL�B�J-fsЧ�N�:��ӧN�:JOb�����EU8�gF~|�,�s�uk~[��Eq\��G� ��K7g-;;ˁ�)^����UECR�z{�;�^�\D�Ͼ\���%6x*rW7eHRr"��&��t��\$ B6M% �K�Z~=L���S=�ϨP���r�;�����{��]����\퓸���W`���:�������������&�ìq�P�ea'��ƍÿ���(�?!�3�_���A���<0�0�0�0�p�q��� ���� �ҧ�c33<�0*�3�H��Y����`�F�f����-`x�)�#L�̇�{NM��YɗY�8��y�y�y��a�a�a�a�a�a�b�Ъ`�Gk���T@���B�A�JPzw� ,,� n�,�� p�kׯ^�z��ׯX&R�~ʔ��e�����HXV����l7A:��+�/����m�C�#�nݻJ?��\�A�h(=2��\�n��n�5*��IZ�DlacJ�=Z�N�5jիQC�4ၚ� � 4����yث���;��D�\_�~�����DDDDDDDDDDD@R���K���UF���kc@�ӧN�:4hѣF�@a�8�8�8�8�8�8�d�xc�ovҰ34���'��KW�eg:T�W���?>Gaϳbf��ٳf��=���= Q�J��� 5]5S2��K?2�)w`b�Kh���>�&�`^Ě����� %L;Cu@�+����ژ�J��|�}���߿~�#���, �ٳf͛6lٳf͛6m۷n�۷n:�. ��9 ����2[]��F�};S����|_��|_��<@j �:t�ӧN�:t�ӧN�"��:4x�?�f��� @ ��3| ��D���.9u8X�s�pNDNBk��s�ؙ�9�lٰ�� ו�]�������%71|T���D�*L�hD�xye�Ye�@2%���a�_����PKX�]��C��$���� N2��r늞"1������8�8�8�8�D� ��^�E�|���~U�zgW;[N�e���hQ(?@hh�R��w�]QQ(��� OX�lBʺj�U^�P~�Ѩ�J&�X����E��\�ZҴ�lM� VM@�g�Q�q�q�q� P�5���fqD��z��q�q�����Q��p�5�N(�ZX4_@4j7C�?N(�_a `�s332��&^�A�*""�""""""�""""�7Ұ��DDDDDDDDDDDDDD@��J$a�@�)@?��a�@(!�8�8�`?�����������J!Q1R"a2APq� 0����#T`r��%BS���$&3@bs�U�����?��:B�,�=[�O�ʾ��:���'B�|�*�ǡu>Fbӕv�����P|�TҮjG�Q���˸7����L�\.ۘ�q@d]�s��I'xcl#���_���V�>jN��F3����1�F�����^����#�r�\��i�,"V@��[�oe��yqp"�}P�S�F�<��k�ͷ�g�Ҡt����γq�jy���H`�*��P��-)��@*5�A��~=e�"5_�����-��^��yJ�n�o$d�aW�~�����*� L��U� �ě#��:Ѥx�(�Н�9�m;��Ӳ�3{�xJ8թ5�zdD��E&������0e�'��)2=����X�bŋ,4���{�&���T������������M�yA�,����%^�ic)@������R�Q�wUsy���mD��ID�癀5�/�j5�ٔ�E�P�F����0�0��k t��%�Q��ܱ��S�-k@<V�+�e�t+p�u��)���e����ak>{�S .�ݗ��kܹ�hDf<����;KO���&�|���-��2���!�w�i�1]�����@&�4Xh`+�������%ƹE� �`�w��" ɖ8�<�`I�e�r����o�7t��C��a��;v�!�C��a��;v2���e���|ɜ�Ϙoh�t�Ý67�:õ.�-�k���_`&��O!��X(�WV���t!Y�B�K���>�AA��$H�"D�$H�"�ܽ�OK%Q�>�+a�t�G�o�w���)�U�N�ˈ�)J�Cd���VP�A��?ZU�`� ���&�����?)O�S�?)O�S�?)O�S�?(�����=�@��{�/ XOm���yq�^\Ѱ�)��}W�k tk��`b���:/�T��l"bxr�7 J��7�.�.�.�.�.�.�.�.�.�.�.�.�.�7��W�;Af�{@���:��\�O3*a��n6���r�֠�������fT�4�0�)VtsȉR�,�U ��v)��J��Gsv1�l�=��ne�����?ӷj��ODnu�L�O堧rt�AU�6a���(��b�d^_X ��� "`��P�IS�t�M�V���*��Z�%Z�;�P����X�i��q��X�G���vx�k��� ��U&7�3\�{�Tb3�0\ �|=٘�j,V�g0���8�t&0iR�������!���� �A��W�k�ɚ� �aiTU��Ah�����J���Sm�2���*L�k2�`4��'OJ~��e�Ȇ%6:�p!�yF��BIϐ^P[�Tc�6;Y����jl�n"5���x ��wZ:��\�,�lf���34� �ڣ8_T���@ζ�׃me�%���i|F?ܟ�z����� лjf���.��{��/��7��N��.j/���l�Z��¹D`#C��&#��#��CZ��i�H �����o��g���C��?�8 r����� �a����Ŏ��g������A�=�s��L�����8'�_��p/�����?���9�Q�5O�N����p�?�����)�6�� �c{{�]��h�Sau��h�E�.�v��]��h�E�.�v��]��h�E�.�{'-VM�*=�Xi�װ,-���R��O�� �)���˵jT�&A��?�<��},Sަ�z���QLԵ�l�i���ZUk�zF�R�M�uZ`��5,�<�|���56`��Skk���)C�/�;��0�N.R� L0�Ù��[�.Zqu�sK:3�Z�3r��S-U��K[��hP��զ�R�B�/q��p��`�^�n��/J�7��fp}^d�kϔ��8G�3�Ԍ���ל��T��]o�snZr�x�<*�NK��)M��O�q��=� �5Smv��V�lCaC>c�,�Ý� ��N5s����.�[-����@��p�^� �Rޅ�zC�eG� ����f�1\������#�g�L�o�^7J��J����j���/N�$نH)b*"�V v^[�~��o��0�hcC0�0�0�0�0���L����L�r(�3q^�+��T��Z�_X.�_Kvd�)�B���=�N��%�g��~�d��̗"�'�6d��Ԡ�O�m�}�1��uOU]^��4(��=Be��%�0J�Yi���a�Ť {1�ʕr������?%��m �#mh�F�6Ѷ��m�t��1�1���;��F*�>��>x�F�]M@v&2j�܍�}����!}�2�E.���� 6�:ʜ��G�M��M��6�ۀE�L^����S�7��x�°�ؼ=^�H�4i�˨��)q���I�S���UЭ�Eߨ��6���\�����+�)����qIj �ѝi�O�M�/x��ZyO)�����yO)�<���<5Z� ]�'��?�a��*ي��j/yO~��h �mc،l���{4��B����Ҁ�}����y�w�в��LQ�-r�둜Z���ʔ\������g�D�ܣ�˗7�LE�T]J����g�(e��;(��l ɘ�{�`,vخ�0�h)N�j ��O�A���w7��s/mŧ��s�y�}<6.�T�a�Tz~�0���T)I�G3��MKh-�I Ғ)�(�d&�m����]�r�����LEM(9=5%R��o�!����R�j�5M�lQ���`���ϛ\�\���m0�B�+ ��(��^����@8-}-G��"����1���7Y���?�m��~1���7Y���?�m���z�;��a�ù�s�癇s���ù�s��;ù�f�;��a�ü;���8�%A�"T<���ʭΡo|pn��-V���T���y�0���QGC�|&�ҽ�=eyJ5/ݸ���EG}R���}�P���:����� �,/�J�d���6�X^�z�ꇪ�z�ꇪ�z�ꇪ�z���������������������������o\=P�����Uj�ˡ�P�>�G_G#{�c�%�+% E<T�I�c0�|Ѫܔ���*T�؋��X%7[�ա�|j�}Y� ���V����`�3p�&����!��l^7�̈́�0W+�eLn����!`-��{�^a��L�0�P"0%������J�@�5���vf9KU��ܭ����фv�O�4l�3�}�q꾶���5�m�o^�@����m�oxKX�V8�p�üt/|܍ŗ�E�����)�E��8��)<�l@��&�%*�=!#Sh*���,g���s�1C��yb���E��$����9���Z��&>{�_�B�l���2�і�6��Q�ER�F��H�Q�{�r���?���~�e���V�!%�T�\):��e�ζ7���ݡ,I�����TT���ʢ� a0-��:1��1���?0�ٛ D�� �6?(&!���p5?Z]�����.�v�����f�ziS�:��!�J�;��[e�����V�?��m��P�<oM-�� ��~�J*����(q�P#Ԩn�>2�czDmv���2/�( II��l��ɔ�K��Q�@�W�� ����~#/������u���3�e~�+��_��fb?�3�ᘏ��xf#��+��[���fV�2�Y��̭�en�+u�[���fV�2�Y��̭�en�+u�[���fV�2�Y��̭�en�+u�[���fW��_��fV�2�Y�O6>è�R�����?�\涳���*s�U��G�㦧� �:�<�� ��pXe�K�7}ҝ�x����Ǚ��`��( �3~#C��q��;�w�#n#n��XwX۬m�#o�Q�����P7���:��:��'�cfO���x��9�&Қ�*��ޒ����o��p�Z��Y�4.@�l&?�c;��,Jh��A�x ��DwU�{rh�GPI�������� U��T�:��rt�'U'�e�WSJOT3���\��L#��R���k�>!m�u"`��:�]s�m��?��a^�=D�27����VCXF�6���CXF�6%�~��}����iB���:^Fr�-Q��j���D���Ħ�Gɭ{��$ݘ��W���J���i�m�V[j�I�ɵjE�������P�:�u��w��uc��M;�ȃ��Z�0��-yA�K�ڜ�Yo��(Ӡh�������������y� $����q{_�6����L�>oC(|�d �� ��7n �A��q� �bD�yv��$H��)P}s�(��XxyEZ�1���W(˴[�au�l.��'T��� Ur�/ ��J���.��S��%&qe9����&J,<CGs�?|V �|�l����ұl>� ��a�a\b�����b������E���b�rM��U��Eek�"�9�b,I{��v�AAAAAAAA��t��鶙w׳U�-&�K��z<����/�V*9ٯ T�Y��� �8�P;�6k肌��T���h��I�ٴ� �ēZԾf�i�:���a0T�KL�̈y ��1j���ɼ+��<jsz���w4���^�Իϙ������B���F�V�7�i2[Bo�{x��f��[|��Z�S�,-P�m�Sq���m�h9����O�9�T���KnL^%���BS �����rU����܈!�?�O�?���^�z�mصi�nG�����?~(�jh�b�sn-٪{[�=�`�Ui�̔��Ag��w�C~S���ذw�q@�^��(��8�A�]�>�/�N4�@��7���R�<;m����Z���8��������ˁ��N&����N%��b�� �J��W���7�,G���s�m,u�����?��X_^�W�{��cq�P�e��Ix��+�Ց�2���r��I�����}����^�}5���[�U���q� i{r�o��/����߯(و���>[���<>�yF���*�T�����+8�����aq�@�?��6!1 APQ"03`2�Baq�#@b���R��?���.��/1`B�섘�P^gc��IЖ�k�1��?�a M�!�K� m6�Q���Yh���4e�.�i�;>r�F**�9�V'~6�3y��R\�A���X<�%H�4҉�F6<��7�e�o~�K$���ʍ�U��fl;9�������d�NQ��3p��+��l��LO���"��E x3b��t�QEQE�0��!��M>�$��&�?ԑ8)ƇLE����$)^��3$%^��%n��Q8I��a[b��Y�)S��6��Tr�����؋�$8E/����R\3IB�\Ǒ�u$a���ݱI�X;L�k˄�m6�Wо��^�(��(��(��+�qO|L��O3�ڦ����]�t������в����x�o�EQEQEQEW�Bnя<fZ��7���\�� �5N��g3���s9��g3�υ��|P���pS\��I:blO��_db�CS ��e�Ye�Ye�Ye��X�"���J K��Q�{͋�Dؽ��&���S;�>�cA#bH�������Ln8Ԅ�;k��|��� �&k5kI��|�&Yj%��Oh�Ǩ������t&��mƗB��6#O�U?2f�)���c�ɋ��h<���F���[!�˘���|ӥ�$�Jؓhx�XQ�##(*d#�O�h� \�ZHϕ��~F�?8�&n�2si���� 4I�Y*���"�L����{b=^g��o����{��'�{��/���Bgqg{���7��r���/��2���9u�F�Ŋ��Ú����q���Ͻ/:�2V�B�*"�TF�4��P��&�V=��:�^=,qK*Y]#W�1���_��A�j*d{����ܹ{~�Gݓ��U�����_�T��1�դfw'�N�P�1I� L��_�~�~+,��,��,��,��,��,��,��/�!�슧|�l�D�X�L�R m�O/�LNP{����R�J�GFG��4��Q���Ǣ$�!�Nv�J��1�.��x�cRv̱�7J^��pP�1M���P��c�W$8ڨ�M}Y�Z�cP9j~��ni"p�'k6���H�m��i��m���^B�7���U�^���c��]'a3x���*Bʈ�3S�_������f�p߃q��n7}e�Qt��Itlro��/H�� ����B��H�����|f?�⛪h�<��O���6��d���J|��M�LrQfy^F���_��Rr��K��&>�tB͋���^bٟ�$e��RTM�ӟ�f<���l�`�\��κ���Sĥ.�(��(��(��(�����s�4v��;�}c���[.M��]�_Дe'nM��ט�t�$w��O4'�F������gf��62�_�H�R�$R)�C_I`����'�<R��½W(��L��卶6��i�ԯ1j\�Ӓj���#���ԗ3E�".��ݛ�����u_V�e� ��e��K{��F��97�6�����~�S�Dl���M�iرRhr���ݤ|��٣U�+��Ye�Ye��>�U���M�gij+�!�d�go?sM��t�cr�i�m<����ؑ���(��(��+�-QEz^�����d�>\*�B=d.���9�(Ř��F=� "��=Yݤ=,��ic�B�f�lfߦ�H�5�"�H�R�_�0r�5^��W�T���>�q�S��!��H��.5FL���f�[�&#qf�n~����[�Yl�[-��7�ƍ̶[�7;��l��n�T�,�q�V\����tvJ�q�u�Gk<k�H�F�i���!�����|�t9�N�|R��Q$�G�A����I�Y'�hϛ$ی��M�1e�8�0���O.�����q<1��"x�Ri��^����p�h_ԓ~�l�'�)3$[�b��`�k���v��F��"�W�`ܙٿa�^��/a�~�bvr�f8�$��</q��;UA'�\c��Ը�ż�®ٚq�5�~-��W����9�R9p��$�����4!1 APQ`2"0B3@aq�#R����?�+�J=Ǟ>C�Σ}ٰ�C��:���ɮ��� ��&��|Fs��|Sh���S5�[51�TiduA�tb�[�bi�_��(m�弙� r�Q��Ĩ� �K�)8���W�2��#v�8x�d��Ņ�Κ��hK�PDq�QHt2Q�M���Û^Ͽ���Ϫ���ff�Q��8Κ#�0�ĕ��T���^c����9u�}�VYe�Ye��|�,E'��]�E�H�FȽ�8��hh�hC� �#�&����Џ�7J���1�+�3�%挸!Z��$X������C�ulS5��4K�sW�\�7��������\���R�S�BGcY��9�[��\�OT|j5�F�Q��j5�F�P�C.=�^��}E;K�L�F�� ا�6�\�E�4�/ T��h�Z-�E��h�Z-�E�רN j���S6��!G�G��^����^�؝�籱�������������^��>ܕЅ͏��1icHkƊ+����JP�EQEQEQE z�Ul�"<�Xئ�u,�Ye�5(�2KK5�٩��pO��9�ܓ1�Jn#U�=��qEI�x0�ye���Y�D����]��9DQ�Ɛ��Fo���Fܝ J,R�˂I&�&/E�r�RLq�(�A���[�"���h���>*o��>I���4Տ�G,�FJb�dP�8�$ك����,tj��$( a�_�x��d���b¨X�+�f�q� �# ��.�/#�c�c��~ܥ%L�c�:���=��=��=����t�ɕ�ؗ�(�Q� O"#�����K#��ǹ�Sou����� ���.�[ߧO�d�EE:2�lô#����jM#ATa��QEQEQEQEQEQEW���]����I/$��nR��C͒��ª |K#��Z��g �ŖRm.Ò�*��p�vJV� �+���'!�H����!A���(�#�u�,�E��1;�|�N��*LԄ��鲪�Ucde�N6��3������d��� x(���SݣJ�+�1��ȭ�eG�L��l.K��|jԅ¡��Gb�S%���T~%�!�]"~E�S!��/ܫ��ٿ�9����l8�t� �*"q��'x�n]Ζ/�G��ϥ�U{��X� ��G�l{&O�P���b�|>s����L��,��ZR�k����p�q�o�����gE� ט�/�:�d���h����zE"��hJ�9�Ssos�I��hv?�`��l�bÏ���~��[�QH�v��Ԓ ��l9��Y�2�C��/�8' �#���4�`�W&I$�1a�*F��N3���S]Κ:I[x,���ףǓ4q�"ԕ�F��<PБ���Ǟo�y-�p+VM��/�q��~Ð�'B z�(ҊWf�TR)0�ubJ*��(����ٚ#]�(�\3�ʴw{`�h�O����䗢�~7~�hN<���F �)�8�wFN#.ES��I�/�)�L[I�zHf���$296���% �^ :k�Ї�_&�S%ٜ'��W|���*J�y�fp�k�-��wT�8�g�[k�˓����|�ѹ��e�*�6���PKCA#]���� � Ocomponents/com_sppagebuilder/assets/editor/dist/images/dbd27c27842b486c246a.svgnu�[���<svg xmlns="http://www.w3.org/2000/svg" width="104" height="104" fill="none"><rect width="87.692" height="87.692" y="16.308" fill="#FFF0F0" rx="13.397"/><g fill="#060C33" fill-opacity=".7" clip-path="url(#a)"><path d="M28.549 52.864h1.726c1.535 0 3.07 1.151 3.261 2.686.192.767 0 1.343-.383 1.918l-.192.384c-.192.383-.384.767-.384 1.15v.768c0 1.151.96 2.302 2.11 2.302h9.4v9.208h-.96c-.191-.192-.575-.384-.959-.576-.959-.383-1.918-.575-2.877-.383-2.494.383-4.22 2.493-4.412 4.987v1.918c0 2.686 1.918 4.796 4.412 5.371 1.151.192 2.302 0 3.453-.575l.384-.192h.959v8.249h-23.02c-2.877 0-4.987-2.11-5.179-4.796v-23.02h8.057c.575 0 1.343-.191 1.726-.767.384-.383.576-.959.768-1.342v-.768c0-.383-.192-.767-.384-1.15l-.384-.384c-.383-.576-.575-1.535-.575-2.302.384-1.535 1.535-2.494 3.07-2.686h.383Z"/><path d="M54.445 62.298c.041.159 0 0 0 .159v.959c-.767 1.151-1.15 2.494-.959 3.837.384 2.493 2.494 4.22 4.988 4.412h2.11c4.22.191 6.906-4.796 4.412-8.249v-.767c0-.192 0-.192.192-.384h9.207v22.636c0 2.685-2.11 4.987-4.987 5.179H46.005v-8.057c0-1.15-.96-2.302-2.11-2.302h-.767c-.384 0-.768.192-1.151.384l-.192.192c-.576.383-1.535.575-2.302.575-1.535-.383-2.494-1.534-2.686-3.069v-1.918c0-1.535 1.151-3.07 2.686-3.261.767-.192 1.343 0 1.918.383l.384.192c.384.192.767.384 1.15.384h.96c1.343 0 2.302-.96 2.494-2.11v-9.4h8.056" opacity=".4"/><path fill-rule="evenodd" d="m40.442 29.462 1.343 9.016c.192 1.15 1.343 2.11 2.494 2.11h.767c.384 0 .767-.192 1.151-.384l.192-.192c1.918-2.11 4.796-.959 5.371 1.535v.384l.192 1.534c.384 1.343-.576 2.878-2.11 3.453a3.27 3.27 0 0 1-1.919 0l-.383-.383c-.384-.192-.767-.192-1.151-.192h-.96c-1.15.191-2.11 1.15-2.11 2.493v.192l1.152 7.865-9.016 1.343h-.192l-.192-.192v-.767c.576-1.151.767-2.494.384-3.837-.768-2.302-3.07-3.836-5.563-3.644H29.7l-1.535.191c-2.685.384-4.604 2.494-4.795 5.18a5.21 5.21 0 0 0 1.15 3.26l.384.384.192.192v.768l-.192.191-8.056 1.151-3.645-22.635c-.384-2.686 1.534-5.18 4.028-5.755h.384l22.827-3.261Z" clip-rule="evenodd" opacity=".2"/></g><circle cx="82.248" cy="20.864" r="19.976" fill="#fff"/><path fill="#EF2C09" fill-rule="evenodd" d="M102.224 20.864a19.975 19.975 0 1 1-39.952 0 19.976 19.976 0 0 1 39.952 0ZM82.248 8.379a1.873 1.873 0 0 1 1.873 1.872v11.237a1.873 1.873 0 0 1-3.745 0V10.25a1.873 1.873 0 0 1 1.872-1.872Zm0 24.97a2.497 2.497 0 1 0 0-4.995 2.497 2.497 0 0 0 0 4.995Z" clip-rule="evenodd"/><defs><clipPath id="a"><path fill="#fff" d="M13.154 29.462h61.385v61.385H13.154z"/></clipPath></defs></svg>PKCA#]��j�j�Pcomponents/com_sppagebuilder/assets/editor/dist/images/8d9ef21e7df24b67faf9.webpnu�[���RIFFb�WEBPVP8 V����*�0>�D�K�����q��� en���/�j��[��an~k�ť�_xې/i�c��W����?�~���?۷����:�{���K�������=��Q�q�����g����������/�7�G�������b�u��������h?�|��C����/��w���?���;�S�����O��O�����?�����ë���'��������;��1�}�ڬ����?��}������ E?/���g�#�p~o���w��#?��B�1�w��������q�u�O`�߿�A��O�����������;����~�����u����0�ʐy-eU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M��V��aeU�}���YU`n�6UX۾M�<�ۓ����'99��Nrs�����'99��Nrs���yL��E�l���|�*���&�ʫ�wɰ�~� 6UX۾M��V��a�šl���|�*���&�ʫ�wɰ��BUX۾M��V��aewA%�l���|�*���&�ʫ�wɼE�BKB�U`n�6UX۾���wɰ���>��l,����p��pn�6Wn�0��w�K`J�%��.y��F4����M#e�USw��V��L�gyR%�l���|�$�*T���R�2�e�RжUX�o����k?jm����?-����3�;{��C�]?o�Y©��2�m��;a"D@�Q��4k6 ����4L��$�!%�[�۾M��V��aeUp|��M͡ɘ��os��aZ.���V"�������Ո�Ea^Mz�3��y� ���]����8�~�m/{�R=���A9�N�W#l�\��YK�'�"�I��Z���g�}���YU`n�6��Ion#�w�-�׆�ӎ�E����1-�\����_ho#�s8�5v���5J���͗lr$��G�/��&ۗ=�6ȷ��Y#�[�E˵�P]��x&c�1�y� ��i0A9),X�?7qb�Z��KB�U`n�6UX�����;v��$}ꃢ������.J����)�X�i�7s��2�'�#�7��tp+�4�4D��|&,�����_���/���`v���u��vVTS~�i��z�B|GJ��e�W<�[F=J��k�h�>�a�x۾M��V��ac�Q�ڶ,"g<%�(���V/I4M�,���\���W�殆�a-�7�<��]4?�=xӅU�����g�9|5gW�"C����駹ڇ��9Rڸ�d� ��J�jʺ�����omNzߩ����\4�O�� ���W`�UX۾M��V��I|2 �&��t�UF_�Ύ�G>�k�"}E>j�IC�)|�cֱ8�%��˲�T�*�b��M�s����B=Q�*��.G�ԁ)�p��=g5c���c+a�������L�1D\�x9�6G�n7aRP����8�7Q*�Ab~�� ��5�*���Ʉp�ڙ�0U �Zʫ�wɰ���k�__�Q��\�9C�+�<��#��|(��cD�|�ς�nP!dt ,��Ӕ��7�A�)�mx����SC���Z�'烓�ֳ�1�C��ω��@�z߇<�nd��L�n���Ŷ*����51N4�/�7oq=��,,ِ���wJn|2V���fEo9���,��S~HP�q�� -�P!'����o�"�o=]ʛ*���&�ʫ�w��1��֟�ə�w���5i�R�q{�&��l�X4�W�5�D��;����θe�ҙR���{�y�uo��F�8kun9�DA������Lw�.h+K�7��v5#+a�Ԡ���*l�KR���n�ZV��|$�RB;�jM���Nc�g�,b=��R�e��Z�b��A4T<�z�Ԟ��M��V��aeU�}��+ ۧф�{�D{NXT���E'$!%�l���m>gЭS�4���U���N۞��D��/��H>��0.���Dε( )y�N2Ј� �:qH;���L��!S7�/�D��h1F���ho#�s8}~$�K}����E���I�� $:����) BKB�Ue �Ϭ�r�l��k���ms�2�l�',�`}����3��e#�,�a�9�[ ��%\��wg7���wɰ���>��mW(�@�4-���1-���;q3���y����B7��6���Wc�����!�C�����n�*��oE��@O�h�k>c��Ble�~q�Bw�y��L����td��NR+� 0���k/��x��;B`h^�u��%�<��&�ʫ����(j+eU�}�,)���ָk�N��P�������w�q���@s�Q�Km�4�[��,�`����7|W���2sUv��=��w"��P��=�汩�>7vr]!��uzK�ڷs�*��e\�vtA1�+@Ǭ��hP/��|!�f�Z�L� sDm�&�ʫ�w���g�?I�O�~�����9^�� �g[���Z^��W�"��j�8�������?�_t M�"�kxY�ӟB�ʩ�C�n��~3���kA<?˺�?5�gcO�Bʫ�w��(��Zʫ�w�[ *߶t���� �E�zS��1 Ǵ`B���yCC�ҩ�����J�]���#T�o�HeW�[!v��w���}���YU`n�8v���&X�z�M�ɚ��[*���)l��m��ȉ��|4�͟K��<M|�1�E��/���`�F�1���}pv}T��V����E�]���Z=I��[T��T�QD]/��E�CIZ��Cy������%hb[�EHL#�J��s*3�6��wɼn�=P�t�ǪK�sI!�<��C�_P�����*�H���,�G�n+QǃFV� ���$S�T���77֕a/HL��~�C@�]���5wSEw"�J�pKB�U`n�6UX۾4!p��qaKeU�}�l*�9(���<?��M"]!��P�,�pB+V X�]��,)��ͮ/mH�Qa>�mH;�k���e�{T](�X���C�#�-��L2&��>*3 �4(������8"s�qɻ �vx���E���R�B��жUX۽���_�) -���������="��"���Xzz7̭��,eL���?1Q��7eO�����nۖvQӢZ�Yɠ(g%����%�������JYT\y]^�v��5�OY���ZJTQd�@!P��] �Lt� ��|�*�����-��<����Go@�^$�z��d��q]��/Z���f�k�Agap�Mv�Ci�^�W��2����,�raYoH��$��BLP�}70%X|9y12�� ��>�I �{c�yz��]��u}�yg���へ�A����7��J%����(gN������B��жUX۽��F'ͪ�>��Ʈj��P#�%x�:k���]�[!���G@z9C�y��Z���gw��r�_�?\�y���Q�/�;�.���� d�<G�px�֩A�2�8��u�ƿw���<�䟠����1A�X7@�0CMq�Ė�jB_p��U�����M`)ȥp�|k7w�l�VU���8 �3�4�x6��T�����H#�z��PV� L�3�-�V��agϻU�D?I�5绛���|���_Vw�e3i��_X�I��ˮ���A�8T���'c�/~���� ��ҭ�?� ��� '�b߹����"�Q�ͨ3�/�=��c��;hv~�.���;[-�?��Ύ�9<}��ݗs�](�_�A��P���_��$!8��C�4X��G� 0h�=��tz<�V��aeU�}��O�#%���&&��-YWl'}����=�,����Rp��ȭwiG��;��9g�̖EAK��/�u���F��"DL"����҄��%RI��b38zceT�i��r2[�G��)�Ъ�C���J�1�@��ѻ�VUtvm����ZtÓbJ��.�w�ͺ��'��L��7q� (���N���C��������9��-�V��aeUC���!���o!���ˑ2��"a�#؋���$G�D��j����2� �����ߡ�L��&u�}!rQ���c�O-�c5�ހ@[{ͥA�����z���*3���j�O��f�+h��Oob��[.�Ǜ�#4@!�J��5c�W�@�N�o�D��wɰ���>��l,�����E��q<�Ŧ���d y�����Ě�����l��I���N������auQ%e��+�CY�כs�z/z��0���|���B��ʇ���۬�'4i7H�r��Yrp�ri6�w�J��H�'�-���i:Q��+^p $WK�'jDOd�����hCզ�<�[;ʐy-eI��.�o#�s8}}����%hb[� �v�B�˧��*^�W�����^�,�� ���@�j������~����Dk1�'d��^uQ?�܂{� py˶Эm(R�č��K���kFh���q{�aiO��-�6穕N�>��� %��V�n��q��T��h[*���y�-��ff\gN���M��z�}����N,��#.U�=�ѥ��4}O�4��5z�T�z2Ceւ܄54zp` o�0�����]�;��� ��6T4#Sa�'&��H�^[�H)��0���KB�U`����+^Ap;�5nd��$2"���x�|�*�����5��K�#Q��\�h�n���P��&��NyS��(�C=\��J�ZH�~bt�h��pL/�ާ<rϠ��-}:�O�H<�����>��`K)HW�2�8j����~�������X$/�n}>-��3�Z����D���Ɇx۾M��U��i~<N]�J}2\�A��^Lo�Й�H�r}=D��q��5��I���2c�qp�-Z����at����cgd�Q=u�H�eU�}���Y31���$�-�V��a]��K%'��Y?�C:��qM�� Lw�:�!�v�_�#;r�~3��E��:�1��ZpC/�+��HB����Û|���l���7�_*ӌ��)Q�&m����0���x(��M%M�斓������˕q4��\M<wWO\SA�r�M��cF�Mft�N �Jad���e{����?(�̉û��̼q��Ϥ�\�l=�A��p�;kX���~�B����+A�v(��E�4 �%Y�[u��{^��w��Mk@(ִ����#o&ؐnM^��>,��"����\˕q4��\K@mJ� �i㺷�)���gK*Q��Q��W�GW�_����q� �_���[�4�~aD�k���z��{��~}Vr��cش��*�10��t>0�� ��9���؞���\�� �FF�d�{� ��o����=)̱;��uyK�W�Li����Ῡ�4�,h������j�&�$�x�t� W��$A-Ў'�!�?��%�{o��?�1N�������AJ�aM����F��=0�I�Р��8����PL�I-��-����m =�7"�_�۔�9ȁ��<��҃�{Hw��5J�!7@gNs�K��Æ��_��L��%��(�$� ��ַ�Z�bK��B{���Cݷ�A{�L�Fi�d��߽||{�M���g\!L���2�5���9%-�a`o73-��������W���E,����z�(9��FHd���jA�?2�V!�ag�]�R��� �Ma�SAA���I]��K ��84�ؖZ]�7n9�kֽ읋!R�ǚR7�� R�t m�b��"��~�S ��o�-����`:ꈺK�K��j���0_F����0��ԏ�����c!=�?V�c=*ʕ���z���p���ZR�! F����6dp����??��;�bt���Æ����y���g$�����ք���h��PN�S*�Z�H�\��2~%T���� �^��o3�v����~�՝t���m\��1�o���d�Up�<#G�6wxWU��|\� �#��<�p7�I闦6#��%�ġ�A������ ��?d�����d��[��6R�6�&�;����Uk ��e�\��0eR���=I������}���E�L������G��K��9��x� ,��Z�g([�#��5�$w�$�V��)Z�=��p�O�n1���U���,a�RA�W/�~e��\��`�E#��W��g!҇�,�;I,^��i㺸�Z*ۧc�ĕm(}�2!O�.�� 'ơ�=��C���5���4���u�L&��c����*�+"a�V7��Ոo��7`][U@����n���4�&{�d�q�y�a]��vÍ��%g&;*2�?(YP䯢 ���T˱B1�r$���<�1 Q �Ma�P����'����B�q��Uy%��B�5Z(#�'��d'Mo���5�j,tF��d��75� u� �֑T��E��� e�'C��fc1�Ŏl���Y�g��}�qv�4���&+��\Kx�u`n�.gMtl�J���r� ,8 -�#v�ٶ�G� T4�)V�G�َ�[���iW�S�e�b��#���`�G±�Tչ n��0�KB�bf_6Gw8�}u*�,Z�[���MoM4= Ʈ>���~�`�%X�O�b�d�I��� �Ns��x�#G�x��6$�j�,������ d/����wԧd�1 �If�M&�u�|�]�2�`��c/���V����J�� �����'m�憪�U`n�6ؙ��N���=�p�t��y��O�9�M����0�D�0��h���� )�]�dQ��7e�����x�k>��T}�ǭ��jw�S\�B���.8 �"G� �e���d0��"�]QaKԚ|*#�,S8!ߴ�"U��v;5�<�*���&�ʩ�M��|#�IO}����zz���5���#�cA� &>ަ)����0P���1h���@��3��\��hW� ��>�@�dj:�Ɇ =�K�T�vQ �3ȋ�)B�G5���s�nz2�m�FAЭ���:�=B�� ��ѕ��pOs��7^Е�bh5��[R��&@؈G�\�Z/<�� D���J~�=��hR����N�ķ ���R,x���m� Hھv,Ƅ�B��_t��D_��j�Lo�d ������,�{_��B݅]��3�� �ہ���� 6O�;ʐ�˕' �i%]�y�����}i�3Đv�LC���o ��cY�~�0��K�J ���s�ޜT���A{jσi�2: ����=���u�5 M�v�%{��X�fK�l� �����P�Ŋ��/#��/F�$+���T�{cK�II�g�{)��An��QW]~BV�\��F�˂�Ti��` �����MN���<�0����F�ɥ|�Y�0�x��5�\U|�H��_�9�r��?�i��_>��8���ʌ~��E�~������-M%}���S=�ٸ����ɏ���Q^�F֜ �xmIG�$�v�p����n$|?�)^Z�9��x��s�n�d�' �3@��� �N0���=.�{�����A��Rd��l4��p)��Ǟy�Lַ� 'Y\y�#\���t�Z� xwNe$s��;����' �C�H�6iŰ��?G0��PG��j��{Ƒ��t*���( �t�)r�d��!�+O��.mR�6��ߦ���j��]����Ql�_j �e��:;��� �ih@�n�o�I;�v�&#:�Q�7�E���(�V�;�"�T��5|�@�J]y����5���[�Ti�"���Z=���-��Ɔ�#\�s�js�:a��N�TW��d��� k��1.`�cQ§�(�<���eo�F��N�On�G�|� ���՚���У���<5F/3A��2m�B�rI�^e���E�p�Y^�\tHpz��\��U=o�r�C�e��q9���̍�\��dU=:�f�n%u9˱2� ~��yr�tV�6�:��K,R�Y�$r�u�����7C�5���}P�}�`��r�bǹ�y�M/Rq蟙C��U)Mn�R PÃ�s��ֻ̖�_�U��~BWDH"�;��_J�1 U���.����$�_�|��,�7�,X�>H hU�(C{�@�Y?Q-c9�q�� ' kŷ,�(�Z��n�]nd��:�&�,z|�w�ń�59�'|�m`�.-�1��<^�E�l��I̊f���h��P|.` ��Ш���w+����r��,�ݢ�F?З�~�]���)��'��� ���I�]X������/�� ^a��lz�"��C�W\�3�P&ܭh���'�%��l�Qt��_��A�~�5���Fvh�z��]����쟀�v�F��L��j�ou��J"(Vf>I^IE�/���d����V��C�j�%ԋt�����jB�X�g71���7-x�}��@wɽ���9x2���?^�p����{�y��K�Xݪ�:���(e-�:`��ς͟�=��hY����(R_;��F�mH�ό��WE������_5� �]�Ӄ��E{1�Qq�MY�H7����D��`5��u8M���M$'䫒p@`����+F1�� �z6����!��,)�śF�^qB�[H�0J��(�|S�rX�Rc�����V>�ć3���!��4[-~�_�Z9Ù��`^樾�m�[�W ����('�4�b��| "���C��WgDIW[e�yjK��vÞe1�*�����@0kXQղ����]m5�G���c�>N\��i��!vC�UX�,cq(,�T��Es�߬g�%%�jf�hW �Yp��O��{3t �����p��})��+�������-�<o��CyQ�1J���n �B�w���=p/?+�܈�>��"AܛNz)��� ٶTv����5���T��^�d�F?� ��o,��G8畝����6e�|�l`�O�`�ޣk��a��v�\D2��L�׃A�s6%ʌ�U���xhl�4E vA��=E�u 쀻"-;=wO��qj��-?�y�9}E�����tr#� 3Q��]����������Nv���:�ꭱd��9�%&:�elH�d34�e�E<ќ��S�����?;��^"�º"%B��PA�$��e�>�b�aN��Z|��S�lT f��j�H����[ɲ�5��~�3p��N���+��m }��O/M� 8� #(A�!Ͼ�4�~�C���tECb�A�l��KN�/�����b�֫���-+/q� PUc��S�i �j��V'`)%���d}�(��uCH�܄%�_:́x�����իx�sG��2^�+��/4�\����P2�ì������D���iI$6��8��2��H���qR>ܩ�P$M�5�'�����$�L�J�9��ח/�F�TNPZ��-��_��܊+�>��2�d~��z��p��Fs;��3�$�e!T��Mr3�.��\6��W%����\uiUG���@^B]W�u����o۩�^�α�_�0Q��;��(3Lꗽ;`jH�9wudq�]�b������?<�̢��5��r�r�_��?Zn�L!���Ҹ�A�=$@�!_�<�v.�_�-�?��-�ů��%�P�9�fMs2m���mi�<@p(ɮ��4�ݬG��\��7��o�4`�7q �f��?�C�]�q��[�M��Є�%��i<Q��[G�Π5 ��t�3��q��̖��g����Z]wI�����g�t�\r��: q��2����V��Ʉ���s,��J֢w¸3ä_�u�P=���P�$������;�WGFq�G)��* �f��{��pqUv�S b�g��J-�+����v��Sx]�?e�O�n�\�g�۔ۆTH�l̳�a�A�Q"|�Lrr�[��G��:��!/�a聩Db��#sA�Cr@$�/��Ʋ�B�@�~�hn-ՁR~`�/�1�Gd~{^6�üIq���N��8��mC�6�к忢ʫG��;itۉ]�G������o�oo倇�j�c����'~+�G��z�O��=�]�X�b���!��|[f]�I���X2U`��M��+���j�ױH�?�o��h� �M>���҃d�^��^@J�h����ɚ��X`2g|���A�B.7eb������u��J���)چ>���@%\`�@�A\���-":����v�zH��І{�+���=r-�^�&�|*ܚ�9��ơ!C�-0���n��]ܘ�f���!z.<P����rX ��!���:�(2�VԄ�����w�F���}�s�M��[�$�#7\U��?`ƫ����4��.|�R��G^�R��`dSrP�[(�/��G�d�'�y:�ߗ�C�ô��o7v1����hh��_�bw�� ��d\SY�̓��䫌�SM gʁ?��!���yW"���<�wW�X?̬�^���D�pG�Q�J�5��X}gM�[�T��RK$k���Hy�oܩR�t�E��f`���1�QS��+��8�R.�ι]z��PaT-�!�*�jY��}:�;�ܓ�}X��q���J].�%�X�-�$�@�Q�j+�����A��&��Aa*6�PyS܋yx�_%�(�*��Ma��pTADS-��R�t�1�e��j��w����Ξ鎼,�xA�#�G��;��NJ%�g��Ж��Vȱ�֟W�Pw�2�ԏ#/�-��w�rS��Ir�,p�� W|[`wu�މI�Tm�M���0��}�&�C�tZQ��H��� �3X� 駶E8�ǯ�Ȧ0��E"���b�&0)��8<k��:a�q ��E_8��k�9� ��Pc%��=�/���k 4��Ad5�@�0j��Oj��r`�}���T�;�A�@ ���4pM��'2��0Js��S�?-*�~Ɇ�S��y�{V���:����, ��/��j��vw):���� ?�/��b�P�iM�V�c�$�Ȳ�ʏV�TZ��X�d;>�{�ռ�/� G� ��"��{���U���̓�Sܧ��M�1Y�"ѕ��k�K�mL|Ëى �2����<dIO�=LqO��M-�9ѳ?I �8E���)�HGs��ջ���t �x���ڊ����g�����$���8���;�Д�s��a&�t��5�������ƀD�5��������N_�\y�71�ZR�V0��e�`���G�;��P y�M�@gp����_�U����*����/ޝ�NI�q�W2�Z�7.��5�S��.Z���JH�hSiUżRmlbBkL�ެ��`Zov�s��ߏC�+��F���6�,Y�Q''��_��������,+��ځ����]Z�U���}ڥ�I����Um�5��m���=S�V^���Nv���.������xR����� �1���4�3��J�>�l��)@�pϪ��6�a���W�7}���J�A�\+Rt_Zm}]���`�Q�����yʛ�3+�E�`Q�6�zI��ى^��O�X'~MR�І�=�P�(��%�����F��h���]S~ɠE����8�_��l�ʜ��g�NĞ=bD.ADs G��~\c���o��~��R%7�/��3cd���l��y<N4�4(E c��l�>t9S,��<���ߍW��-7~�?@X���8}� ꞕ� 匹�&n�"$�|�zj� ĝOWw�+��h*F c��q��\�ɴ3�#>�sT_����"��Db7jt �X�$v!�Y��f�tXι|�I��ʏ�*s|���ɾ������ N�b}�M���&HWYW���m���[�zo����hJ�Ӷ�5WZ_l�pB���I :�kU�k���#�0��EVe�<�����J�-���d+FB(��9��U �??h��U2��xHW�b�/,@v�j���6�{�he0�_�:]��ф�Y媱(��]M�n�3 ;���oN$�[63U\"��ޒ%�-�|*�V�zG�8�֢�P�Ը|�>��k�����D�PԳ�*��L���@�r��|ĠS6��w,��<����������@�2��̷����5X湊��G��k�nj�Q�x0(i�َ+�t�P�#�H�p�8�^�]���f� �+�g��P�%�"��SS��cU�b,a�F������O�˅�yϮ����%8<h�_�ݹ��f�����UT�Ie�i����8��v%7U�j�,��4�GG�B���E�9_�� �uΣ@Y�";D���K�(陵���W��0~�/�z���8@�$W!6ףd{��_��T҅3v���rj���z9u� �gm��u��>�1��w�Sg��F4B�&��v�y����t�T��;��9�S�����uܰi�,�m��<|4�ߨ�?3Í�C��v5��+/�����εzy�Pտ���h���,��@�xj�q�Nk��ɹs�%`��$Q.4�pw���`>��E�a�d��eU���<�#3Hc���e�h.Ջ��^�R�B���~��h85�.���,F�c�3��n��j[��v�� �17o;�~� �VR�X�I{���r�}�5aEM���B����M׳q��ٍiJٽ9?|)iwx$.�)&��W�+�Ⱦ�TE_���7�6�a��O���1��坹=g%e7��|1���KGq[���K�k�y���'�f�e�#��}il*����N��L�D��>�Y�<�� u%C���:��9"Qo+_j>�J��8��y���)#�n��o.Y�K� �}�h�{q]���اP�?��-�*9��.�/>��m�ؚA�]%|����^k��ť�2Ҡ���abX�O�D ����]�Ԩbb0�某�p��=xU������s6_1�_�[�0X�Zר2O|� r �|�C���Q�� ���T��w���_�\^tR�]�i�ft�.q� ch�cda��ٝ�jqn����_#T���I)ꗮ�3��bM�^���c������bd�g�k��.GU�q�*�f�������-�v� N����ӌ3�Mo\�i��!�I��~�I{d�<uoqN ��| J;[����\�7�z���ܮm���E�f��b�y8�ǂM�I�\E`yBj������a>Ϯ���K&�v/�a�|֫|$G���)e��f�Dm��ٮ^E���kc�_��p�|�>�����r}����g�A'V�W�vN��ݲw��N̥I�>]���}�7rߍ�Be�s��� 2�A?.|M��]�D�~����T=��#�䣏�#7�*���S�j�������JߜM Ɏ.%�EA@���͑>�v�� �u_ S7��[���o9D�%t�5��3�s�J��A��e #?ѻ���8�t���O�~�GW��� * W:��?C�֟b<����rN�(��/��X��uD��`*���Ɏ� [pF��'�?LB�F����Ũ�e�V��&-ԉ��N��#2g��i~ni��S�dw-���\ .ۈ��-�EU1Ze� �!�v�䟚�ߔk4�=U��MnC�["e&xV��l���l0�R�4ۻ�jk����g�*��J�"����ˣ�IW���a]����G�;�Q�����[��4�9�7��|���n���G��`�E�YY�e��ofq�3U�� �4%6L���ǟ���~Z�)��w*i��u>�TxQ�;�Ab��� �_�6G�v�dev��#>[c%�}��0���?�6�4��w���v �5�>n �u˄�(w�$��!ɖ�nM��zfq�}]����o��e�wf�ߣ�Ėq/R�=Y`^vk�=��#1ٴ�SnnZ���s�7kY`�ͻֺ��e�É�[#��3�?�(����i�����J�����.��癖T�8Eazw�1$J`/cN㒢o;J��+ۙ�+1�U �S�pV)��'-� 6#BѦ �ş�~=���:ٛ[�c�w�!IpF�9Zゴ��=G�A�81�O���9�4�ĭ�V��)�zѱj�F3�����)����(A�fmF���x��`ʂq���/���t3Fk�;7���w�2Kr�}���곑B_$��,��H�/f@� ��Yj��N��h�Zʧ�,��L�����;uL�W���vSR���c _�sO�N0��S�IP���eW�~ޫ���I�V*4r ��+�~q!�|�=d�/��LÒzgu�����Ńԫ�bp�D��E���u�C�}�������X�(7�@�7G��[�1� ��Z��⏭�[?�D^��1N�z�7Y������z��1���m��T�7I(�xB���ɯr�:NUu� �x<[ ��������8���J�x�9)X�yۺ�q�g���@���(�Н�wb)�R�~�9���"�D �1](ޅ���\��E_m)��<���c��qp(���;aT�g��"_��7��Å�#2�<��I��l�#�y�<��@�!vtz�w-�Z���v��p�ȕ ��u��$�ĩ��!��`a����A<4^�H�.+|�hu�t�*��Ѿ��:u&���l��h5e�z���^{#,�S�z8�S1s[�d��$�%N63q +��)�+}9�<j��-�����k����H���}V ��Sa4@�ڦX��%����:��H��y��z@b����W�r5 5,�[^Z�V���/�B<�Lv5ȹ{�*�� ,�g���B�KbH�>�Vt#��j���Po���{��ߞ�$��5K1#�[o؏|�dj�nH!�ē�V�d՟�f�>�X%AA�����(�)݂��?H$T�ZVc=gfa�c�:[��s��LJe܊5�kȴ���P$�i֙])ИL�����w6��L��P�g:r�@�!�=�jF��n��h}���e���Yؚ�<�GC���J����i�؟{;�(��H�P����|��0%.R;Q5��r�tt= n�m�hR@0 h-׃�[�#{hԋq�$�����w=�P���ӎ~1#��O� FMb�Vc��Z��,�$D���y��3���6��B��BX��p��q�� ���L�����w;�*ڑʩ���4d��Ww�l�����UYM��_������f#�01w�=@̀�=j�Q��{u��tC��R����e҉�ٻ$,@��Hi꠫FlLmY�Ba�'�7��]S.+�|�E��4��m|�3�H���Af��"�5<B~�6�c��I����K�T�(üuq���o��y.l�C�˦f��^��S�{�0��S�t�S:�p��������m��.��z�<IE�[&b�uaq~����|�4-�̓q��3 f��a�ſ���X��/;��E��c>*���,�[�2p ��i�C���S�q��!Z�C��\B&�=�7�>J��EuZ�i�.@Ź^A�ψ,-}Y+�LW����ރٳG����t�Ę��MO�{߰ � �f�{@�q��ku�x=�0�<E���T�P�����v�Y�^0o�����ʇա�Q�;%�3��6��sn@Lga"��D��~���Aq@�U���SV/�c�=�����~�{R��V��q�o솅p�V�C��t��K�p8с�V�ͧ��6Zo�&u�<����z�W7��p��1Qʰg��3���徆��'����Pؖxe�L�JР$�.���#�C0g�;:W�̾�ً8~i��#7Y2�r�к]��hR��)�=#�O�Ԭ4���p��>w����٥(�6�ςPl���Wp�f�t�Z:Ƒ��2�D C�>���.��4Ô<� ��}n�L��]�Er�kX�w�v���%�<[�;�l�Q��;�,��sF��;?Tvm�=��m/�fK�K� v#� W�va�t�^�P ��s=lTl_����5�F�e�X�?J^�l�VO��i���K4���]���d�WT��� b}���Y^Ws���%�I$=�tDӀ�� ��W��#�E>z���}$� d�c*����V�5c�(H�P, �gs�f���|}��4�lv5�8��QK$iq|�Wx�Ɏ��i�'E��vqjޜ'�Voh&�c��Sǧ�?����g�RG*�ax6*DI�&�]���0���f�Z���- �����VH��<�|�"�O�y����8�9��nţ��,�kb���/M8m��Θ�7O�a�+���U(���g71��i2 �]��(SPտ�O�g*f�ђg�~�1-��x��o��Z��@�̪�����o� �s�wNXeo^7���U���Y��w�=�f���AbM�>�4WE���;[��c.��O�sd���|�[dH�k�R5��d "�Ɯ4�(8��f"!43ċ71 ��x���;���q����!�CS3�{@�2$�R�8mB��qB�G��OrAB��|��6m��U�LX���Շ�����ԟŗh7��H�k�,��);�LJt%?�5�G%�1��^�^��x0���N ��Z��䁮:���@��@�Pz�:k��� V���0�ybI��墔�)6$�d'H(�)s�X�H�HY�l����Lr��N�`���K�!N��83�����\�Z���Ej��� �Lk�܊��|㑘 d9O#��o̫���C7�9�N��3~�l�U�v{\���;�w���w紽)ٛ#�����t�6�;W]P`�;�~����1Č���^�_��R���fq��E7�yM�W���*�!�D��D��%n �P�n�#�����i�u~<�@�Ճ/i�R�2_��06�^MP�&Q5�8:��_�^����~�����TOK43�,z�'�nUf.+���L���<�t,�u+0��3�Y<��@z�ǚ]d�r��c�ꢹ�����5Y����N3a=�0�<=>U�_���a�t��H9� ǘYM�q��}����`DWj���=36m�� ������i�s&��>uD�y��vO�c�@'�����fӣM4ٶ:�_��!P6�^2�"���[y@5G�W{�`�ĶA�n[K$1�ܺ�(o���[��t�@��h�a���\��1lޚ��=��d냮���B�N� �&6�a���d�����ݞ�7�=;v�Z�TG;gȮg��&<'w{+X63(���ΐ�4��<�1)l}�k(P�x�6]�@��ͭ4+.ud��DTzJq���<��9TI+pA1��[�����b�� "Wk�u�H��β���`�z?�=���˭|��W5�o�"|l����~��Fý9��k;/Cd�UQf�0R݅p<h���sb������{B��y�GDŅ�Y��ɸ�o����T�~�\�k|�ߞbL��B�Cj;�I@�X��_ڕ→L�!�㭐F�MJ}B�زǯq���۸%;�:��c[���t���@̊�[��q�������}zemV��^:�>�8�7ٰ���/�>�Z�������b��|x�C-`�q}��X�)>w2��T_y�[U�r�M5�#ܡn ��߾�Z)9�aԂ�l�V�EQ��Y�R^�l���C۔��)(RW6��eF�V��G�P�/%k���Ո�8�s���Mq�P�,��[,��D�<�I��h�t�� ����K�8��t�_�+]�9� A��t L�L����x��y��@�{=�N"m �m@�߾�#�;�T3�$0�� P��#kbPW �}x����L'���8�~�Zۛ?L�m�`Q9�`�V^p��)��?1��� �? 2C�����L��j��ͱD��/7�R����ݯ5��D`Y����f4vMJp@�����`�Ֆ柧��l��P��1��w�ׂc?KAj��F���a/L�#DK,;!R��h>�嬳x*�e���}w��� (�;�H���[��3Z��:�kIc�[p�gӐ1 ,m������͚Fx��.��i,�3o�[�S/վ�nG7�V�;Rl����a/���Z0`5ۻ�HQ�G���J u���yں`f�K� F P��N2�;9�`��r�����K�r1���C�)��ȋ�-zn�G9D�oS>��E�[� ,%����� �4��&��*ޭæl�OOV|2�k,��65NJJmz ��=|�ޏ�'�+^} Rϔ�P�2�!86U�����X����Y�`�2(L]����Ƈ�8��=��.�BO><*�_��.E��U,����6���0��Yz�I*����q�*И2V��κ& {�"�I��+B&�!`�} �>��S�~��zVЮ�.����i�H)-)�:,��ei���c;�u��Y~%�1�n�60{�S��A3�X\D���]�@�o���P�:2=����IE4z}1<�?��?,��Hx�N��z]�_� z93O�a�K��� �� H>�A����)�Շ��x��t��p׃�OA��k����l�ȯ�';�q�Q��=./m��ue�8�\ct�E+��p��Y�\I�Ӷ���5�C��{K 3Dӯ�º]�����#&��73�(C����(T�����p��z5cX��L���˧�E�Z�Rh����we״�Ub8t��sm���(�p�ǰx�烜r�5:곎�v<�DE���N�,�����YQ����R��]dI�a�8���m����̀����.�J�"9|y��{~���t&d���]h7���E?(�;�PiYt� �$g��qK7K( �'���^WK���M��?%�W(�l;�\�E�g�ja��J���Hu;\2X��Dž���;ʇ�Ɓ����[RLj�b��n"Sb�MF���y��M8���ɚ��.av�jM%�Pe�`y���w� O��HF���lP�ٛX�S�G2�tMO�9;�4�q~�`) j����+�~q�1j o���z�A�S>�;S2i#0V⒅s���: �+�Z��,`h���ϻJ>�����}�������~&N�A68h�v��1+k��P6�8�s�*�]�g�x=��O�z� �8�ի\��-\�;����1ތ�:�K+��xZW\���Q�5r�GW~�]C�R,1�s�B[�p_��N�~������k�4F4AE�ac�& p,�}b���� ���s�<�o�@[A[ 64"f�w���XY80�`v!5��g;��voR6���iA�X�� S���i��@�B�g���k�>Gw����yrr��a$���D�=��j5���;� U�r����� �U"�=O�n+0��!�����=�A"s��D����O]S�� UMm>Qӂp�K��vx��]O5�<�T!Q�����DwW�}�W*ޔD��x�| ����JɗF��oeU�W8/�m���h�K�Ǽ��T"=0H��`'�Xi�7������L�&��\�U+��c�z��&�5�4J���KX<ˑ��|�6����!�D�74���l�EU�>�h�8��K�����濿�����N�L��2�b� �~+*�4sx���qw��E�<�}x �_:��O���Mq�=�"��~�mmg�0F<oM���m��p���0`~sI��Rg�δ�eh��$@>�*�&T�ү�~��n��/p_v��c�U��\a@S�܁@�O� QQ4�k�װ�ûߙ䔚�w�{n��1�I8��=�c� �tjFM+f��t�HV��I��F�v}N9��j�cy͎�dBV�q���?6O���x��+��n�v$5_�:�|t�u�K���#��k臄�����ƾ�͐5�K�����F�}�k���pgn�Һ��z���7w�3�Ђ�G�� �ZV`=��s~�ƿX3W�`-�`�"�yp~��G�W��+s��&�[��c��Ĵ�`GB�>.JX]�4�o.�i��M��'t�����<c��|x��9�2m��d�K�$^�J�昽7T�eP�k�F�Eb9����>���ĥ6�R�~9���Gm_�����!h�{��J�����CpX��)W�$J[����B�eH��F0��7Ok��}�<u�^.��9����j��E��~ؑ_�?V�r�qM~�N<,�gآ��S���šV�AG�9�]c'��!��y@3�/BG,RmH���4��H6ֱ�lS���Q,��I�$}Ǧ ���q|r�� |��A��\��v;NӸ^9]8��a:�j�*3bG�h̆w�+���K]5�%S`U��Z�G�%�9�μQ����ka�N%���(�Lɘ��w��7B�T����AX"�6��#��@��B�|��j~]DpҚ��ޮx��t��U�>]"�Ӏ� 8aj�x�$UɈ3���nFebh�}G �0Hn�fuX�I�Z�'�C�+����=#��=^��f QX;��{���6;ߌ�d����腜��G����9���6SYG�͑'&K�g7y���z=y�hkK�G#�ʲ_����������1� ��W��S5�����h����1!P<Jvr1 5��^ys��]O��m#��dl������{�)h�N.�Y�� ��>��5�������@�'Q��f��[� �{<W�|4:8 �d���t�]�*VX��N�r�By��c�݂X��B~̡����hL�q����TV���e����l 'ѼY�V�7K�6W��GڐV�{S6�.��{v�JKFi�@o���˻��e;����s��KS�G%�����*�JBtO�Ҙl2�2%��� \��B�m%�|bn��V�}r�a^у%��`ǕB�ES��<���|�� �Ɋ�g�m�G?��zI0_]�-�ЯWh=����Swy�3މV����7</|ĉ�5�ڜ�����~�s �8a����2 ��U\FgMp^��G��vC�<�&�}o�K�$d1�[Uy94����cH>�u�mF⪄E�h?�S]y�·E ���̐�����:��m���l�Z"�&S���I�WԌr��\.rYQV�4�1{(C{*\ �����b�+�A���w����/L�͆�?yp�QX��>x�@���ƫ�Q&�_��Eo��vG��?�p�C��܈:<(��u(�d�TC_��O�n���+�s�E�V�ʞ�%`30,�;���*�!��!�1o�����~�Ag����*� 1a �t��_ͦ@3T�� ���S��d��{���.�&��jB�(�R�<�p�A��0(����S�7���n_����k�� ��{\V'��c��"�'Mׇn�p�r#�`�n��p�����O��,�+N��ϰ�i�l81��N�Z�\[ �*}k�z����yH���b�y��(��K���;�n[���oQxŞ#�� �"��^ڸF�q�cH�W�1�R#1^x��Xm��d����Q}�6�,N������xN'�$>��O~�3x�n�I��єVls.�ʞNʥ��'s������L�S�ecOɥ|�0���0\a�H"H]�RW��0t��0�\ʀ�y���1�&,���0������b%c)� �(3]O@O��d�l�q������l�$b9�j�lK'��\՚vq����&��9�O`"�@4���r�`����ɧy��*g���SNP��"XZ����I8��dM�1X�g��� �>J�䯖$�9�m��B9��Y.̮~]S�A��5��5�yXt��*T��I�YZ��*y�Y4gك�R�7�),��H��cT���q�ԭ� ��dǖ�O�����rAr�X��t�"�l�}I�V��f2�Lέ��|���Pw�a@��y�y��N,�T���#�W�Vo�X��>N31GqNb����}}Ʉ2T�×���5˂�C@����[h���1(.%�{�(^g#IV]�ox��8�V�j��m ��u>���?��ߵx�n� 72Bs��yOx�j�Y�k�� &�B�FFB�*D�:zv22e[f�X�`��F�uaY+-� /��)�F�{�^ s�E6g� `Qk�N��l�)W2�X-R*/��)�7W�f*n^�p���tb�_Q)}�d�P;ї�r��R����`V� ��q@3�����lBƽ�u+�]J�s��7��>��`W��}R���P��E2_J�Ss~X�K>Z|'�mw���h��a|"y�~���ľ:�����`��I�/��^{��i�V�j�@�v�[B��]��{IE��h�7�:b?w�B6��B.η/���� % -:6h�և5��@�=���6�g�`��2/��s����JF�%�~����%�|t� 0q�ٲar�+NU�v��߅��67pQ¹+��Ŗ��:���/����q�+���}��;��q��ǕX����'�L5 ��t�ZP����r����xP� �����bn�?��q����x'By�$��~��?�P�)�� K����0m�x։. |J����o�;*##k��t�� rS0��A��Us��ktOȠC%�r�.ɐ�X�J�P��k�/3���'�"���|3n�R��%c�`eZ�D�UG��@��^M�4,o��o��� �6�e�L��?㖭9�,]!h ;5����I�WO�YK����Ӟ�˵��|�U���?�r�Y�T�|Yq�����@���� a����Cҝ�+�-�����B�~+M�9@��W�Sxk��˃T��ג(7���ga���'\���[ 9�Q�>a����ZuaK1ė`)��t��љAF��S;66ii�#.�l��7%��NZ�����O�w��{��o�� w�� �,�W>@'8��e�3�U�W�ԘǤ2n���j��1�f媲��uMl�1��>�k�D�P0 �u��d:�4�)�(y�Z�_��*:�v n�=mY.b-� ���+��+��@z3� "��C �J2Ѱ|�&m�*��=��fz-j�b/R��m�4܌. :��k72���B��Z��7�ݨ�E��s[4�n�'��5U3j �e���M>M���"�cw!G�תv��xf�Ub�@���f�� �s�ԁl<^��} F���_�}�i�)?N;l�]���˃D��f���v�]8�E�p٤�����tc����.��5��K�5�w(�c������q'�C���f�uL�f�n�$�"�-��$����7�{]�|�#�P��'h��{S�V�����X�T {W�t;g0{;�Z��7��w@���ƛ`�[�8UH��\9��l��= ����]io�Hf�l��B�e�ˊj��6���՝(,�����j����/�M <E�ϩ�uh��6�> #)��dy�6��S2u}�fscXr�470��Ą�I�����P������w]&84 ߿B��2ӳ��1�\���c#՝��yA�=;�� ��=�0)�-Y5ķ8c�B���;w�}��Ƀ>)_csG�JaJ��э�v�f)�m{>Ī#FPtr��A��y���J�q���alѧ �� ¤qwOw(g�H�4�w��܌�H�k Fh�4�v��zCW��;8�Ά��j��ƌu|rI��>?/���"��17,N������e̘�� ,g7Ɋ}�WP����%���ě�H�Kb�ޑ�0�"��2\�#/%� ����K��O��ۼ�L�xT*f@\�4֗�,ؔ������NK~Y�RS�h�1(� "����J,T�q�4�����mۯ�h��\ա �4������� Z@��j�1����Bȼ �io���~@�7���v��TV��?w�ܩ�� �7���+��v�!,RPL�2���q9��9�� n�$K�Z� ��:r���w�,iihh}�X��ң��@�u�e��=SV@�{\�����Ù�i���<6�T+�a�3Z%��aJ�,���E`W>��0��Ja��$��o�3�iu,�}3��6�>��w�j�N� �'��:rj�mcX^niT&��)�q.�ȉ ���p���r����$D���#��g�J���a���X�6��[m�(�lT�$+q� �ׇ%�֧H�H%�OZ���I6.$�!:� �[τټ9u2�cVsvJ��b�}:��A-#���\'+-.�ܟd���tt�rmU�=�f�Z}y��':*��v��[I����g�K���V�I[Vp��j��$�A�^f���#A���#�7����D�Y��E�v�:kCo!��E�%v(øv�!�b�d�l�&Y��Q���V{�Q�٩Տ(�O�������#?m�2�ײ�����炭l��\]2g.��4<�-��>��O��C1{��ڜ�_k�Qk�p���3��*I��_Y�Xw���:w�=��l/�b����ssʿi&�-����n��J����� sdž��-VOg�_�Q~?HM����AE�.�*�9�̓?XK���͛%HZ5(]�a�\�Ȥs���%2�ٽ�ɿ���u�%�F�H��~����.ȵ�x�|]��ۨN�E_:������F�$LF����-ᅈf���V/#ɍ�on��%��+� k�hقwm� ��1���2Dw6���|/\mj��,������F�����L8���w�DPLýʝ��-� C��eB���0��X���fDP��Z�tdғK6�B��@v��<D�T�NI����v%x�^�cJ�{"�00�[�q��(M4�bμc���MQ�2��^1�n ]���>�8\QB%�X+m���i:*(>#m�H�@t.q_�~�¦ȼ�p�J��-��s�8Wײhˬ����PI��׀������&k)xcŪ��1�u8L����6$�e�(�l���L2ؐi�^O�m5����_@� #��e�K�\�J�s�9�-?��C�7�ʜ�?L/� R5�kY�x\Y�� �ɇ�'?%���������o�I֑,�?U��T���?`F��� K�{��ǩ�{��O4��2o�D�vB�sy�����7tIB�);O��|N0)�f4D�q���H�M�i� �`�&.ȕ���|�j�@���j���BT|o�(��#�y[��.���E�'4-Zm/�_���o��bh��T� ���� -�`�U拾C�p�*��L���Z�/�����\�o[d,8)��D�i�{�s����OK�.�}������@%j��.�Si�>���a�#����-v$�`��PO��7y�ى<�3��W1ܧ$������]?�UZ� .�8� ��[y���_>��PB���M[�9�i@�<��0F��t塾/7] R�b�8 t��_��]����Mv�o��ת.����r��V/tā'Q�3��LL��1�ִ�Sy{z���6J����a�j��}��d���}%f�pA����A�_�ɒV �v���_N�nz� ��i�3�H���2�<dg�w��������S�!El�k������j�)�3�v��P�Z��n��XZΡ�P�T�6��+�V�9� �>���Q"��>J����Ǜ����7D�]~G�>���(�E;�8|�na`sA��L���s!o��P/�����xq��t�%�#�}c����?���d���)�3d�WN��FzH��m�/3Fh�6r0�S�� A�{���U퓯KjN�vJ���>�� �w����w�^终}�S�~旵�����,����|4�҅.�#k�}v����d�,��#m��o�/Օ�m-A�7zȍ� �P�@ڏu*o����C_���?�{�~݀����E��Z0-�|�7aܲ���Ūe)��E�Ӧ�!�j�u���{XD����:�d�_���~���y���8D��iʀfh�c�1'�Դ+>_�..�o�� �a\�.�]_|Z��tk+��8�4�.i�J�д> {�ù��[q���mt�x�^Oo�O;�a_��ӊ�����7\�yE�����^�sm! )Ѫm?'�� ]W:NhK�ۜࡎX��Z�����z�q`�DV��Yۍ�?�b�z����+`���H��bˇ�v{5S�����ugX+˦�F����N�o(��&���Y��w#"6�̟��I�J�k��gpmx��G,��� �c�T�9c?����<y9�JN�K�E�l��iK��� �w(�"$wH��*�Zq��\�L-��o�\{z�[�)T������r�NέO'��Ѧ@�Iv[���a�,mm�E���]#�&�0�1M����u�y�e\9t�<U��Ԣh4�y��7K����xt�6�'��#7*��o�hG3 ���g]mB�|���f}�ډ^W ��<�R�y"Yy�R�T��mM�m v���>�F]�ۻ)V(�� ���L���w����+f n0A���v�-��G�WD��<�uB$7T>P#*VBJq����P�]D{p��C;>ݹ���$��.�zk�2R(G�b �PH����k�����0ݚ�GM�����%9mı��&�ElW�����K@��k�0��Jt{p��X��$�e ��!u!5��<���b18��D֗���D2�b��=n��WG�)xh�a�ң, MH{���sR�j������T�ѳ�����"���<阯\q+�>6��k[���?�z��}�������O�g��k���H�o����B_PR1<Ε7��M�G�(�+3u��4��i�S&)������T�N��"j��iN�!) ��W�R���(�@�Wv��1�3q=����T���X���%�E�e���J�7��r�����A�u��M� �/{�X������'���b `s�U��-� �:q�$E��F��e��)�I�_��� ��I�҄�pSH�v�^lyC�����F�����U�=���\8Z�e+e�5��j�ԇ���[)h^��[�A�爎�Ҩ-�l0}S����<�&�̪��Y�$���0���ǻ���\���z�_U,W&L<��UY7FCb���6��TN�_�(�`L���6�~�:�)��'ߔD�o��jX㳒���v�GҾ�Ni��E����'[��X���� �o�n�K>81�u���n�8Jo�+u�F�e���O*$����1��ƴ�G �����<#W�L{Zfu�xoq�miK�_���Z��{s��d�K��'��̻Ր7�.-b�uG�VO8}G���bDJ1�4�� ��aV�?]�/��lE���;�b�F�� ��ɿaf(�.yh"� {� �%�)��aD��jM0�A�j�J9c9�JNaAK�87p��B�tm�:v�.���D�cP��Y����]�B��P'4?{�L����ے�IR6�B�c6~����<㵂��"��_8IS6�e�c��{�d����uMa�$���ժ*an�S�f��B��+ �g^>sHJ�s�y����bv� ��,�EvUz66�3E��p'o+KC�Y@�� y[d����r���(��j�DD��y��g��_m.�j��d��U�n�� d���"7g� � \-�\F����Y^���1t���!P��q_�=u2�p�� �?,�����4�p����u?�'�;l��m�Tl+�~�àN����n� J�?V�%��[���u�3ַ���xd����)��J�L��rE�.�^7��<��8�� Rnӟ��U9��_U�Ym�7�Ws���&�����z��!x�("�s�yIj�A[Q��۪��Q�gYU�a�PԪ�5�-�e;w����+��/*K��XM'a�J�U�u_F}K�کe��kzC]�$OUE�Ҽ仞4V!���C8���ke¥��m��?O�f�_�!����q8UMܮ�K����?����*�<�_�O���UҺҳla&PF=SF)��x.I��N��<�2�z�1�b�[�&�;$�͟�H�#aƍp�ϱ��%{���&�w��S>�VT��1�薇����12������L�T�T�7I�S��Kfg�.#�P�)y�~_��+38Ee�7<X� !�P,��xb�:{I�[��&�M�rF��v(�W�Pl��Dc=gU��W���-lh?_(�����U��n�D���l�ƭ������F��36~].R�p�gF9�YE&x]�&T��}�F�d�t�^��&e��=1KYa֙�%?c����.Yqy����pw��zr'e��S`?�&_�Yi��%��<�<�~�9U�C�hħ0����*ְ���U}���N%�B�.�u��"��{;dD[�Js�n����� _�.�����ꆽ�=��Xt%d�����6�D+a\������4㢢�b͎��}ɪE��}����CU�;�xL���FE�ސ��V����+�w ����tU�0�u�_ʕHI���f�+��{� �(����c��U�p��ZY��~�I c S�gNI�D� fy]�&f��?����m���J���䱲�0�1�@�R����h\R$ٹ�x�ԩ��-�B�D;�c0����a�LAXb�dm�K�o�y�^O��q��C��j�,+~��{X=���[�M|>����]��Dl錝�:�,��A���Ց�C�hz�7J�!}�h<ݩ�C�(�()<M}���� #��ŌD�v5���qs���ڨ>��!�u\��>aX�.��*��cJ�]ʇ�cf��N}�(]k�Q����{���J��i�8�ٶbm�pΫ �bem�jA�T�a7۪�a�\7��,�]�2��:H%�EK;)�|a3��y�1��'�#��^��T��Lnp0N䴛;ko<��n�b�E�|\�2c�}�ڼ�x`������� J�c�wWd�F�}�dPg;r\�����%Q�r�ݹ�ָ ��b�s����>��@P��8��M��H>���Tdغv�9OK��b�����$��6���RJ��I�p�?K�34��^��!���k�R�J�o|B��ةK���)[Y��vJ R�WPR���#��na�Ҝ�d�|�'S(g& �_���rBuʜ;F"k߀0�_�.���x��|mS���G�S���kNM ��ׯ��|S���B�I)�*�.õ�G������0c4���&�.(�pB�%����!�vB�l��C�\̲_+����s�秏_'6��ɍ����46\�t� K�]h��b�i��ℼ��T�k���ָS��E��<n�)�W:��Z�|!$ИCزV�k���̟7(�EMT�'������7�H8�3a�N��k9�d����L٠���Ӝ[�Z�f��-ß4[�5"��wE����l)8�]�S�7X>vlwڎF�Y��)}���R�F�e1ؐ�@�<��ý����w���j���*�.�f��z���e��\-�c�f�0m�byw��@�����Ȍ�v��P��k|��w�*��Y_ݍ��ez��ߤ�V lt4@�1X,V��9#�@$�l�,u�Q�=��u�!8�ίJ&ˡ��Я���. �d55M �Sm�3X#_�_@�>��Д�N�����ɽ���$d���@3�+uj*=2�L��N��Ӵ� ��E�6"�=D��<�z$��� ��2��{M��G��h<�c� ���1��� �@��j�Gœ@O]?" \��6fui������L?2�6nċ���P"�=͝.o���I��l[P�]'L�(� _�?�����{���9�4�Q� ��(�A���ش�KH�H�0P�|[[ˡ�%Ǐ/�j<=��E"Z,�Yh�M�ZE t,��xo&��d���4I[��Qwj�n���Vj��.a�ɏ�Z��%�����j��#s���֞]<4խ�C�O88�^�g�}O�Ъ��{�6k���.���ɽ���>臹�$|h>�\S�7��M�v�'v�����D���dA;�@s�� =Z�Gil�f�\w��|�1���w�J��O�� gI�Snqҁ6��[e7B� 5�|���� ���yL<�_�0$��P��O�f�}G��g�����iEM��4��,p����T��G��|(�c8ǿ<� ��(�=���"v���APJ�lj�1�P`�]E��"J.��:fo���Oj � D�ӳ<q�˙ &����*�k��B��Z�7� �Ӳ���hՉ���\���Y3�9"gO�K���#!ƞ�L�/lM=e ���R㩥x�")�ks�o[��;��>�7 w�Ҁz?n!-�E�J��v�BL�i�8Q;�(J�oA�Q-^w�j�c�.�Am��[�w�/r݀�{�E�9�W��X��G_8�n + �����ǖ$ȑkTM�d4��ta���-�R`�g�]�OR�U�Ǥ��z̠8)[�C�Rn�l/\˼��Q%F�2�2b�)�G7�1�T� ���d�9��}��R� 2V�?7�\��2�UYg��=X����ިl��DžύT���6ҹ�P����<�Ndʺ/TS��Q�n�"x`C��s�f�����kl�8 �f}L����c �����m7�����C����O<U[�#��}��>�� �^��3t?LK�/�Ѽ��#U*��Vl���߷�k�������5�$D~��c��0k��;��Ŋ|U���~��B>m�exd�dU�4�',�(�d�� �M�L��>c�Vl�?P�6�D}�wR�����T/pqŘx��U�&�W�����H�.]� �nn�93��b�,�{���ZyJ(Ɗ��١�n7#�A@�����@ f�1ݩE�g����� ma::�ǣz0���a���f.2C��xA I�U� �%%�"xyـ���F��h�q���=�vzr?����Z4tj�$�4�0�⹋o�عG�Y$�\�Յ5B��.I&ǯ=7R{�Ʒl<�|��h�;�I�,ͬg�jEs�>f� ����Iz���.p=�w�` GwN<UQ$E / � 76���ݶCꪮK�S����5tE���ga �]#�&���Z�)�_��m�E��OI^\M}��o��Q�C%p�� B���+5��[�9��ZYd���8�v[ݺ�T M*GP���../��\��P4}����I�O�t�vlT����`��0���.�}��Ο�^���u�&�/��32Ʌ���Q�`����P�lUc%��c|��?li/ޜ*Ү�2%1?}��?� Č�G��N��P��t��Ua'���5֪�PCQ4 �À�L�샠~�5:b� !�<��-6��&c2�H�_�è�+�H�\����*�f�O$aq�-fֳ��s��C�!q��_���Rm�Rr�=a�����n�r"= �����c���X)K��p��}nH��l�G?�n�x� 3Dz���c��:��Cw�Zor�C�ƻ|� �|7�b��!�S#�Ǹ�PΊ_�I/oJo��({a��@S���h���W��vZ>���x ���m�;L���&�/:��a8 ��{��"�1�j��2R1x� �k\F����j8�\��S={���5|%�'pʒ�ӧFh�),s^j�խ|�<��WA��P��閭A���w^�AiZ�E�<��>��ɿ�:Eu��} m*�T�T�#�J�qh�k� 3�7W�ى�RV�*���z?l�^�I֧y�乢��{TWf��{=�܀e���Β���u{m{I�G� �p��G�<��ӟ���ߥ�G�<�pvS��� -W���O��El�e���!���N�x�QSN)�>*)��bN�TB�eu"/It�K!?d� ��a��,Tp9~�-��'�}�m��c�E�(b�'��) L�5z��`Y�L*5~F7$�0�Sˀ��Qh�J'27��VEr۳,�A�M탱�q��Ob��"2/�����J�9�9�;`����8�ΘHL��jk����,Ҧ��2q9��7y���zdQ��;�WÍ�bpg�nںl�v�2^Y@�}8��&�Z8�����=4=�&�i����\O����if!)�I�ޙ�v��s�rڏ�yA�ŷ�AD�S*Ҽ;�����sꇳD����J�o<����jk�<m���R�m/S��}���)f��`ߋMVTZ="�칼��1]vs�Ë\�����X�gsv�+Q'����l��?��1���=I닎�B�_�m�HI�.0�Q��۷�1���3�uZ�'�<���:jkW��,g��B�h����|��=ͬ�e^�&��}4�����rԳ�&�V�[�g�hD�����$�u����C�b+�s�0UzR @��� ��/H�n�>�������_��M4��bu`y�;{���Y�/wi�2�����Շ u6]p��e��vC�� 6��b�̝A}�� Iw�l�C��3W�G�ֶ�`���ɥ7@�[Dᩴ"�# �w�9p�HR����f�{�EqQ�ҩ�}�>~$Wb����d���`Cp�?E:�>~!����b's�5 �Lg�!#7E����U5���E�dx9ǽ��"��h-�{�Sp�Pr��FL������;��@Ӷ�%�4��xmX�l9���%v�;�ںO�R�u�_��'+m�\,��q1"*?�P��3`e1��k�lV� A�T�w���x����y_���/l%�}CnY"�Lܵ$NRíN��ji��SJed���N��`W��S�,��8�j1n�J "�٢m��)r��&o���F;v�Q�!B�(���� j�l<�e��,`��2��'3�d4���{�gWX��J;1[��?�Q2Ɯ�N����M�XW�M��@�9�v�̢$D!�^h��}��)��]��� o�ʂL� ��|KѾ��CK��M1,\~���ٳ����Ξ���LALI��zw�&Z�)�Y{�����E� T���rޢ�5�OWQ�3-F�� G�#w%���Y�ߛ;KJ�ހz�M��A�j����3�Z .�\�[�u��vGQ��B�7߱@`�}� 4��R�<ޱC�0"5Z��auq��~Yx93�F �I�dPqSD�0CS���m�@@X�g�˙����F�~4&�2�G�H�Z���*Ā��$O������'q��x��Tdx��oA/���gӝ�n�V@��) `y�m��s1����Qq���~�@��g����=�@�[`�v������~*�<���>O�B9�o�K��T��A�(I�o�?�9y��~.,g\�&ǐ�&TL�k�hZ^���N��b��Q�m\T:���k�b�K��S�=�$SͶ��O�_����R��6l%O�L{<��t�Ͽ^/9['?�����BlP��&*Xa�H��h����T3��,u�i�B�� q�zMxM�M���K(�I����Γ%oԓ���4�\;u��S`�m.+�%\*S�\�&)�+�`�����*�X+���4_���i�<^f�E(_�=q��{��D��Ac���ח;Bf��jfJ�>��e�U��]�G����T�r�I;��I{^h��Ef��;)��NX��P�S�ݧ�C�A�`�N�~d��0��uk�MA��sm�7� �bʂ�=� LB������}M�V���\.��=��+�+.�p���������alR�c��TQ;-L��85�6%xq�MD��%��0�`l��\;���ȏ��ލ���! q�����L�П9��Y*[�L���ƺ�ה�Z_덿RE��I�π�pI@g�PtgZ]}�MG*v��f�L+����*���-q��I��>���#��j��OAȔ'%�.�~>[D��:Iwk!{�:�g �#��e�y�K]�Eғ��\+���p}�&�C�_�l}er] C�;���j����UƖ�0P/hG�m��%Ud*E���}� n�*���M˄�r� �}�� ��.@��wsNݍ�I�]�������9Z�ޝ�hnWk[���ɡ�w��\A��r�w��"�ߠ�z�W�qs�\���5��ָz�ExU�g�>�>�.���R�e�� A�U���!�x�hu��h��Zke�i}kR��<é�v�����?H��Y����:�i�i�^[������00�p]~�x}�id)t��=�X�G!���%�#� �S�f��^��8S�Q�]�� 5��`=�Z#�\˗7f�C�}�F�`��v����B4k�P�Ք�M��n�J��݄�;�ź'�z�:�Db��:�&Eܖ$3+���^z�h^u�g��l*J*3O�kI|G[(j�2�/�t�f �*����Y��Wc7���D��/�E��'L1X���,�6�I~|�1���2hd���{H1[��T�c/� ��BX@�Ѽ�]�m�H�����:_��*���:��k���)���S�1� |�f�:��)�z�Ĉ�7@O��Ŭ�FAS��w��}EF6Y�4Y*�R��]����^k@�l�۷ԅ;�70!��·��Ö���C��?c���[��+*���E������������s�&�@���t�Qw��a4�i�P�r�������B�K��Þ{m���L�]@JT#&�:8x6���#���M<��]��00֮���/�ʎ�ɺT�[�B��:��4��VF�۸��%YIym�N����Zøm�)E5������͞�~�=���W�\c�O#S��k�oC@+�~,��:M x��ذ(ݽX�(��[�jR,�C� �)F�}�{YM�;v�E��笱}��^�rS���cчL�L��}����]���bɖ��G^y�-�����c��g&�1��]�odTV����O��}�JmM�Ǒ���Pe'JN�!�C�w�9&9�b�Xɾ�w�����}Z�ArzS�~��!c��-��B\_l��MW31��7��߁��O�{�&щB�'qK\���l��vr�p]�ڨ����K��l��8��5'p�GD��L��ܞz9��L��$��`^���w��m *ц�C��s*�+~�$Ε>i�W�@FJ��?_'j��n�²$�"����0gO��!����ҿ3�j��ǜk��9뒅b>�(B��G%�w���vj��P��)��zt�^v�EX���4�O�^fR�P��F_P�{4���}f�ؚ�� si��+r��3����M?o��p5�C�)&~�u�/z��p��~��8�ZIY�:� �1��<�2�F$��2�X1܉�-&y�A��c`�* % ���Sb�/km��H]�R�;���лbu u�<p�) :��E'��5|�$�+�+C��e������hs(�� ��dV5�Q���p,�IW�t "5�K��3ϼ�|�@NK$c� !B��/���mA�'u �ԙ� ��Wi�R-=|f;��gG��}!�9h�C{-#Q����E��]R46c�$�(��V���M��&�փI�o���F�ܯ�O���G,�mw�6Ԯ���qH�V�t �PE�q�R�A_�D�8�#5��c�n1�N.x3߶�����n̟����4�e��Z+~��}V��+���o����; �y3l8���ke���`�߹ō��D)��\.���(ME�8�K#�87Q6r��j�L+|ߑe�KR�x0Ci��� Ձ)haT�ze���he3�/�PKCA#]�Ř � Ocomponents/com_sppagebuilder/assets/editor/dist/images/2dc90216f51e02a2bfe8.svgnu�[���<svg id="ehankDmoGMg1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 76 95" shape-rendering="geometricPrecision" text-rendering="geometricPrecision"> <style><![CDATA[ #ehankDmoGMg5_to {animation: ehankDmoGMg5_to__to 1700ms linear infinite normal forwards}@keyframes ehankDmoGMg5_to__to { 0% {transform: translate(42.352352px,34.237131px)} 47.058824% {transform: translate(42.352352px,35.237131px)} 70.588235% {transform: translate(42.352352px,34.237131px)} 100% {transform: translate(42.352352px,34.237131px)}} #ehankDmoGMg10_ts {animation: ehankDmoGMg10_ts__ts 1700ms linear infinite normal forwards}@keyframes ehankDmoGMg10_ts__ts { 0% {transform: translate(42.84075px,38.87105px) scale(1,1)} 47.058824% {transform: translate(42.84075px,38.87105px) scale(1,0.359484)} 70.588235% {transform: translate(42.84075px,38.87105px) scale(1,1)} 100% {transform: translate(42.84075px,38.87105px) scale(1,1)}} ]]></style> <path d="M13,3.99609L53.002,1.19888l9.1712,7.97245l9.1713,7.97247l4.3956,62.8603-57.1457,3.996L13,3.99609Z" fill="#ededed"/><path d="M71.3447,17.144L54.201,18.3428L53.0022,1.19914l9.1713,7.97245L71.3447,17.144Z" fill="#dcdcdc"/><path d="M33.0604,52.3303c2.1661-5.3159,12.409-14.6357,23.6057-3.066" fill="none" stroke="#343d57"/><g id="ehankDmoGMg5_to" transform="translate(42.352352,34.237131)"><g transform="translate(-42.352351,-34.237131)"><path d="M28.9661,36.1916c.6334-.7287,2.1727-2.2051,3.2624-2.2813" fill="none" stroke="#343d57"/><path d="M55.7386,34.091c-.7287-.6334-2.4585-1.8812-3.5482-1.805" fill="none" stroke="#343d57"/></g></g><path d="M14.9733,80.161c-4.5217.5946-8.66982-2.5894-9.26441-7.1111-.59459-4.5216,2.58939-8.6698,7.11111-9.2644s8.6698,2.5894,9.2644,7.1111-2.5894,8.6698-7.1111,9.2644Zm21.0252,6.1747L24.8349,77.7669c1.1647-2.196,1.6922-4.7558,1.3434-7.4086-.8918-6.7816-7.1152-11.5584-13.8967-10.6667s-11.558345,7.1152-10.66659,13.8967s7.11513,11.5584,13.89669,10.6666c2.6528-.3488,4.9892-1.5202,6.8094-3.2131l11.1636,8.5689c.4517.3467,1.0021.4784,1.5261.4094.524-.0689,1.0216-.3384,1.3683-.79.6951-.9056.525-2.1993-.3806-2.8944Z" clip-rule="evenodd" fill="#dcdcdc" fill-rule="evenodd"/><ellipse rx="2" ry="1" transform="translate(14 67)" fill="#fff"/><g id="ehankDmoGMg10_ts" transform="translate(42.84075,38.87105) scale(1,1)"><g transform="translate(-42.840749,-38.871049)"><path d="M36.2573,39.3314c.0701,1.003-.7878,1.8801-1.9162,1.959s-2.1-.6702-2.1702-1.6732.7878-1.8801,1.9162-1.959c1.1284-.079,2.1.6702,2.1702,1.6732Z" fill="#343d57"/><path d="M53.5106,38.125c.0701,1.003-.7878,1.8801-1.9162,1.959s-2.1-.6703-2.1701-1.6733c-.0702-1.003.7877-1.8801,1.9161-1.959s2.1.6702,2.1702,1.6733Z" fill="#343d57"/></g></g></svg> PKCA#]zH.�!�!�Ocomponents/com_sppagebuilder/assets/editor/dist/images/2e39db9b3cb737b3c6b5.pngnu�[����PNG IHDR����� pHYs%%IR$�sRGB���gAMA���a��IDATx�k�e�u� ��@���|Hx\�z�EPDI-[�'�U�H��ݣ阰 �A�3��a"�gb>t��D�LL�|h��1��Q�ݲ��lE5@�aK��B�,�" ި�ՙ�v��+�9�ֹ��"n�s�#3w�k��+s�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B!�B9$!��1�|�ɭ�k�<5�U�m/_��>q��g`���y���>}z[!��Ȅ�&���K�����sKUb8�T�n���~V�&�� ۴�C�Lߟ���m.�m���~&�m�"��)� !d3P B�c�g��|���(}OYW�- ZY ��Os����b���߁PF�l���Z,���<����O�r�nί|/�)!��6Ȅ�k�*����g��)'B���T�K� b�2��Y��L�/�Ca�˘y>>���x�N��B�P B�)� .!g����[ĆD4���_o��셮���F����w�;��un3��+��E0?���N��B�P B�5Y���{�J��g�@<兩��Q�C�3iub�/��x���(�Q���0��!���'����a&�\�P B�Y��+�g��� Ҷ��5�'^[�~�FG���>m �(�8�F{'[���9��.?Nw�r�A�L9L���r�->5��tZf~��te����Nx�x�`���Gd�B����+���}�?�O�zJQ�۹^�X~�b�r-@�L9�TQ���=Y����0������`l�S��s��;>��i�$�W˄vR��R� ̫9�:�#ڧ���aZ���,?�0B�q��r�(1���\vy?#Wf��A\�����4Mˆa/~%�9�� �kI�C��.�8�@�O���b(_�AH�Y���K�kL��}�J�_��.q�˄��2!�H0��ȕ��"��3O�`�5#�33O���v��G�-ni��Z\D=�Q�� �uxQ��h���맟�P.!�B�8Ȅ�C�4����}q��"��S��K�%�k��~Á|�M��$�� ����L��Q��|�:��.r����P�Y�b��B���r�(sg���,�����T �-~�i�����mi��s˴A'�7⅃�t�AuN|��@�� Lҕ�}�c ��W�|��-4eԀ�+B�L��/!G dBȡ�(>(6&�t�\��o����w%����xg8֣�j���a�;X�x3��!�h���c�fT�vU���|���2!�(A�L9p&a�gAu��N}�p�;rF#���f��(C�:x=���'��xi�'(��5YuqБx��ÞQ��%����P&� (� !:��%N���wRe)M20t����s�+A�A��K\���լ��J$�1�����'�� _3̅�t3|H\�nΟ<y�^ eB�a����c��p���N��� ��Q�@:!2��L�W��i�|�2�0�N8�ҡ��D�a�������w�+���AG�rX�@&��e�]��|�;S~�w�s�\�+?/)���t�fM��^h�X]Xg�8����pb�q���1»$ʧsɣz+��8h|�ȏ�ʹ�(S(B Ȅ�=g���,��K�"��H|M���ρ��ϻ�:�]�b�� �:�E57�S��7@�}�ts_�<��V�Ƚ� �J���v��&2��[��n���)݇�����B dBȞ�����>�2][4�BA]�u����8vx�Ng���ĕ4tX#ՔS�AvIgf�a�(�u�����v:�8[ƙeQ�F|9�qn����O��9!�����'Lq�_�w��5'ʼ0���b�*�����U�C���θ���#V S��(�xv�G ��e�i��MVl�}��ɳt� !2!d�da��?>��g���@L�H�"���[�X?�����k����<�5mA��y�8db�@\�����g΄�щnLӹ�M�w䗂��Խ�;t�O�8�0�2!d?�@&�l�,�?��̓Y����y���"y�[������N� ��r�ch;�+.�#��t���l�(���}S�Ѳ��J?(n�lG��(�(��ܵ�L!a�:W�79���տ�W� !��Ȅ�����Y�|1�J,ӏ("�8ˑ���AZ�������2t�G;Oۇ���P ˧�z��43 \Jݫ�G���2�+�H,��< if��}v�9-!d_8!�r|���M��,�m��Kn[��>{��A\b>iv�l�k�H�:��y-���=JS���\�^tb�Q��1��\�?����X�p���Hޕ�� �^�L�x�3�2w�d���_���~���!��!t� !����2 ��υ[7E�t�[\���\l�sb[��s!÷ک�әws侊�_�����V8�2�S��\��;���?>��B�z���sN��`��L9��(<��s'B� dBȎ��3���e~㹗lt3VLۅBՇ�!��}�m��΄jD"I�A����s�#��FAWF_�u�r�]"�}�u�+�E ������0 b��2=������ϜB� Ȅ��q/��U������ʙYѴV���S�Cו?�l�ʖ�Y0�r�%8eE|�+��K�c�M���e���"�]^��Hć���s�]G:� d��,�B�Ȅ����o{,����߯|����b�k�Cl���D:���ı� ��n��O��x�ܠ&�Ub�|eh�sd�8f��������HC�@ƺ�ą��k�:����_7C.!����!+��^�o{ıb���x[�^���s]�NК�_rE`a�j7]:����`��o�n�}�ė-8&��su�1�X��C_�[���`���tyI�5 jؠ�m���϶}�����+>_�Ǹp�Z�w�|_���>#�r��A&�̒���ҏ�|H�w*�K�k,���-�]�F��1$�;� n���0 ֛c���|a�N�b�O�ש�/f�����_��(�a���D��r�>Ԥ���#*g�͐B�UA�L �B*����*�u�՝��ɫ��#*���NgZ1CF�_Z1�àHM�.y[?��ë�#��,�u��(~ׇL���QHÜ 7�cH��1 ���zWW���������n���ӧO_B�!Ȅ��,����KYx� Б�u��]�� F]Ѻ,���En� �1%���߸��h p%}��z���g�h���E���c�~�DsZ�!��Soʇu��c�E\c'8�a9D�YB�O_���qɄ���dB�!���f��XDz�)�S�%�3 ���DN� $�)5�)߶?�U��$�6�v����o�W��1'��e�ej/ �m!�o�x^�_�6.2�V<v�CGZ��8� ���f�s�AVl�����`yݱ�MD��o{Rm�1�z��^+/�K!dP BY?�Eƹ,FnA�U� ��*�s:E�"F��\�Ź�I�� S�6��w��|x<�o������z��V��O�6� �g�W�U���8�� c<& \m'��n�N{�t�W���Լ���s�ŗݥmz ��^�'�H��BȚ$!�Yƫ�� nvE�{!=:�������R�jB"��u$y�� ��Tt��ŋb{(�a���[����-��q�G��M(�륥�� Q���¥A8��_W���_�k !�����k���Eߓ�Ϧ>��� �P����vuF'@Ź��B��ru�/�����`��0�Q� W�D�0��}�A��A�� �7L����-v�����G�8-�?F��X~��\�_W�9��'Np�B�J(� �����cY<�_\���xӉ�m�h0H+�j>�l������ޅ]�e�w�2' gıbç�D�����9��#��-�/��Qݬ�m��e��1���FL^v�g�g�B@�L�5J��-�6����&a�A���w�Ϲ���|zQ��s�Cԉ]#�&W|$2}��㚒�C7�)�a &�#8g���p��LW8�X��������1��5����*��lw� ox�ݜ�A�L�5�$��_���4�?���(#�9�^�p~�/�n[�1�Rϛ�fbg����v�t�x$�V������%���*�L��R�o�.��S;v��0���~�=�s�ӴA$Ա�O�p� g)� !�bA�5���&��B�dc����T�ڸQ#�a�U~��Y�PWptkYRZζ��]a���@(�pO�4f�������U�ͅ�t��q�yl��㾧se�]����IQ]N��=����˥��2� -8._? e���q�2 �jD! :Ȅ\CTq��C��PU ���%�.�1H�aBj��Fڽ�����}R0���-��8�"�q��_4@�m�v�;ȻK7p{�ܢ�P C�d�zT���si̞s_&<Y��6�K-O��-��L1P r�aw�t���Ky�r����c ���o���P$�� ~wT���c�Y���ac!�8ܑ�W]9��\1s�\�>�ِ�R�%(�/g7c �+"�Tl�^\��� �?S^�����)� ! dB�0��U%rV#v��.�F^�f61�l,s':��\��#*��Ji8�F�oN4����X>/4��n��x�^���Ca��tŃ��"�k�y8A�D�Dt�:�)���E�c1פιO; �k�dBH�1Ȅs�s\��B$$ǚ�t�Z8��N�9��L�l�{��A�t]�n�o�d)�&!n�U���MA��5�5�HT9៖����új��6Nף�*�|ШY��C�����uʳ��|��H�V��ury�Ѓ����.��o\��Du�Y�$!䚇��cL|��_�[�E� ��n�j?u"Ży��E������,\~��E#��Q��j8 ��ֲ�W[��Xr����˪2@��(v����O���!N���Ev4D@��]��G��klyg��iPgs��.4�Oy���|�B���@&���Dyп�-6.2W|%2:��Y�9m�C�E7�&���Ǭ����v�4aĖYN�a>���o�O�2�}�oL;��}�}! �e�sS� l�nF��8ŝcs\��j]�+tr��t���1���XH ��1�@ ������}OɟB�52!ǔ�>?�?-.q���9�D�@D�}R0-��]�-m����r_�ԇ���d)�STV酮:U@�W8�7u�=���r3�3P�r� w B�(�m��9�%�݇zS�&��پрNj�l��iy�p� xL q=���� u���U�Q>�{�'B�5IBȱ#���{���R/��ӄ��⇶�j7�JO�ۥ4~p�gy0�& κ��nt���dUvu�6l��n�r/��/�c5� i�`6s*.�ؓ����(]�se��e��8F��L�ҋk\�蹅�cJiX�te��=s����>,��k dB�Y.?�0Z ��P��,�U#�R?{��m���A^�@s��w��늽9'Qٜ���1��`�Y��\������!*]cbp��FΜ �]O"�9q�a��;_������S�����7?��B�52!Lj�~��w�<y��`�H�a5��Wu��)�:xJd� '�R�ؼ�Ny'�H?ZP�L���y�oD�}k>�}A{ql��\����L�-V�b��}��lǁ�%7�`���/��1��;�{>?�E�B� �L�1�L��5`�O�(5�` TZ~2�~�8�e�����ILP�FxU��w_�n ����en�mY�R4�2#�ukĬ;��>1=</P$Swx�lP6����ܬA�j�.f��~�>ڗ��"4-Cg�+��~����~��։�v̆},s�y�^f��+� ���@&�P�Y�<��nM��P\,��ka�b�!u� S��@�e�n�z:tΑD��ۣ`�.,|WS�H���_T��d��*2�nZ��lѱ�2,�h"�K@ĉM#��<��U5�)����1�2�: �M]^x�)8o�5�4�$�Qw<5�XqY�^��O �ژ�ʘ����+�|I!�Ȅ� �|~�oM?#1���W�Bt� =��Z�]۶�s�;�T�` b��'�,�Ô�/���!�NKW������.z�7�ny�;5��A�NJ��0�镘�z�|�,�p� ��f���kÔ!فu�'��g,o@˷�lXPҾAi\��w��_�2�#����#����<�?�':��9u��Х}�YE!�n�� ��.��UX&aB��5BV���@�x��(��fƅGa���"�Ƃ;�1�c>q�����RWy��F�B��k�9Aы�Qw���u��8�ۜX�:�2;n��o��l����u�o��o}V!ǚu��!���Ay��X���`�>���貦A>Q^��c�i֯�6�}"�*��Η�sm�Ƽ���i�z(�q<�� ����e�9,��N<���}ɩژ�`�-��C$�Tyx��ػ<�z���C|�\��>�����9��A&䈂��t&dA�x]���4�E���^�2H�K��!��K�2bZ��!敠^Dzg�8��B7�g�q�(��;�iY�n�Әp��9�)����U���Ge�XoƥN�xtߛ��jt-L���#(����Y{M��^nj�k ��)����ܒ����9�P rD)q��V��w�%;���+n��:��i�<�)J���`-�Ta� bخ+G�G$�#�f�@a��:q�֍m��غP���2����s�}�q|��<Ζ�?��r���5����VL8 ��[����C�6�ŔSl/���D��P������!�XB�L�����g�:�îv�<�'��HLȨ�����%;Ne�'va ��dg��N��EA��LF�"Ԇx�4!<�ű�� ����z�7��ܨ�j�Q5:~�~�j<�D���ubԧ+ν�E��T�0i�SeQ,��a�+�X�ט��Ԇ��ey�G��B�I!G�Zq�ҥ���O��;��n�� m�V�Ќ��0 A^�L��"�������^P�gx��z�^4�F�K[p�/�8���I+�� �y�O��Q�;?��:ü�,����z���<}�wp�}!t��X�PIn�v��zDž���Ȅ3� r�(���fb#�z���Ul8q-m'lߖW��Ip������$���@�E!͵?�Byt$xt��p�-����w����v�''�Z�� @�C��1�ʮ.O��!����ψ�k��ʂ.1��̀�ױ�C�+�>�u�UH=WA�C�u���c܅���%"_Bȱ���#�4�ۖ�:�j��M�3�|Ⲻ<�i�p[|(t�T�[ߺ���.v,W�C�����JP�!萊���1�3�j1JE%��B�l40�l��J,��c�l�� e,*�OQ�iE� �_d�b����7q�s��� �}���V�G�O!dž$��#�o��o�������vi�ʋ �5�iii$�P0V��"�I-�H�:C�{R�v�xRХ^�Fu̒��8dD��գ?W'�z �\x�S��R���\��rHÄQLy�<�>��`Ѧ�6ѝơ&]��x�bc��빖Ow�S+oT_� �A��#@�N*?|�8Xm_�;�Ƒ��8� �)����&�tB�f���B-�퍠uN]K �g[�(�e�LHCNj�ygD��A�� V,�B�JJ�4w�+�cL�c�~_����J״��t�7pM��L��'A���� ��R�Kq��\�P���\SaZ�徑c/�BY�� �A�L���ŋ��[�ȸr� S/�@�DZ ��!�P�w]�<U(�.�Z6���Bmw�*Qӕ��Uz����q�W]]�t�Y�r�+:��u���:����r�4V�1J��q�{��i$T��9�9����5�Fe�*�/<��.�qmzO|�2�D�6��p�mz�)}�ZrLHB9�L�V��H7�~7��J�;���4S�g�O��%Lw���~�:��)�φ�����~�S{�݇�ʲ�:2�1���>�1��P��kHa.�~����ʰ�`�i�ipt�oHIpݍ���-2�0������sy��b�!G:Ȅr�8~L�뺠�q\,A�ؖ��@��I�]5�J/B�p01��>�_@�9�)GA�}�G�G�;k��i��KE��AY�p#P�K�ݽ�"�c�C3��5�wJ���� �( ���K)|G �= 먎�7�G�k��pŲ��GNp[�ˁ�Ź�5����jA�1���C�������r�>8��b��b�r�*�!�=D�� �VcW��-vO���wt�t�V:a�����x�X��OŲ'���9۾"��h���o�~��BQ$byDu6dA��7qW�O��5dj�S���MŰ�a~H���F�9��DZ�� �=(���]?(�������-mp���.�:���g�쟝Bȑ% !�P��Ol]����w���ո�[t��fA-MtS�nwq�4��_��B*ݗ��G!F�ղ{�9����=V4�zZQF�f�R�z�2*+����.w]���AC#�w��w�*��s�qۨ<2�Kh@ղ�Ջ/�?��.W��> _bۼ���{�lϼ��k�Ϟ={A!G:ȄR�8~@��Nj�|u��X@���$;�)|��ϴA����0�h��>�6.��,�_�ďq��UV�u�Y�F��tCWT��&��х��5��υ8^��3<��W�:S��X$i��)�H辛��o��\����ί���q���G���q�.SWi9C�?GX��n���9��A&�2��"(�����ݜu�D����IK0�u��"�UD�.�4sBs-�, *G���+��&�j?�/�2�� 1]ᴧe�~' }��/��y����ֲ)iV����17(G��H<03��M��c^ᨇ��uѶ���B��972!G:ȄBN�<� �H�h�Ԧe|f�<�Łʲ�]�3�\�6#���"u_�I.D�O~�TN�n���j�Ցs��\N���z\p�"W�[��Z�7�:�|L���}�_�̬��ԝq�Gu��s�!}��6 ��F���7��>�^��:��eWN��K]�j�X�ά����^!G dB_��W���;���dz`��6�<'4�,F��}�vu�̕k��r�^���^��F(C��U���d�?Faޙ6��+gJ65�C�9wީTWV��@��6�"q���t� �r%��qa=��t;���,�w�#�}x�i���ΩE��l��� S�Q�+����<����Os�!G dB��.^��n_o�n�{�N���q��;�j�l5϶��4�J�)t(Vd��EQ��&�@����H�8X#u���F ��&ؼ�G�T�Sl�%_�R�t�l@+�o���a��7 s�&Q0k�x1εo����t��0�<�a��в��މ6�9��E�=B!�HA�L�!���'N���|�8���@��t-���M��5��p� �nk�U����DZ�����cB!$c7ֈ�Z8���5?u�$�'K7��_r� �Ǎ��Ž:�a\ܹmԺ���e�u���H�Ly&�5�8��>=_�.���9�~��L���}�i�����lݿ���9�!G dB �y��':�CX�S��Nu���JV���/J�3��>���8�[���|>���0�������Q����u��q�u��*�E�xa���n���ʸ�]�`L.�C5$؉�i16xڦ�z[G���1��r��{ Ĺ9�X.LӉ�$�4�k=�~@!G dB /^�l~�n��у;��R���p��E ��_�P��r���n(�P@ �L?E"2k���)t�kh�sfW���}��n����ܝ�U���`���Q�&wq A���:�5���6M)|Ӣ)�OldΥi�a}�gt��F�9������{�r$�@&�P�u��{$v���]n�ٝPU/�`]$T���̼)n$(#���/��b���f���x}\�>>w��.~�d^�lb`��"�8£�|J��v�<�>k}��J�Д�m��cM��t�3���0*o���t�F�$���\S�w����ڹ�k�@UC�����r$�@&�p�u�-�cu1�(���D������ tf�Ou>�@� �nl3�L�H�X��`}���' _7m�x� 3t}YR}aHYP�qNv���%/A#¸�N@kpl��0r�M}�<�v���$/E�Ax"f�_�j�j_�&�S��IJw�gq��rO���s��C��.��V z����V!� dBp�e�v;��e_z�BvM��}�aF�&�9�i&\!���\Zu�$N` �w!A�#gԈP� p�Zl�C���O�L���Չ�&�4p:!���cż[��o���s���f��Jvd�S��u/�G ⺱QS��jw-k�Bײ�z7�7Bȡ�����ɓg�C�u���tya4}��D��a�~���^�EB��Ft�̠����;�w�]Ja̶��#�:j,��fgL�6\Y_�V�Ç4��'�:t�Նp4ᇎ'~pM�2yq5����p-�f���hR.�im7����m�l(�FO4Z��es���["���~(� 9x���h�A�g0BIzW����Ʀ����<b��X�s�, l� �-\8]���ŎOKcG�w��a5υ��"��v��o���sS�^��p����ĥ���&85p����j7�u}e��辚ފ��t��!4���s�e�4ϗ� S��>���7��~/��1�4�9!��B�L��}����*�! �4�xQ��� S�nf��͢s�h�t��:�G]�&l����#W�;�)ȯ+���i�>���1�e�RE�a��M}�����4���\�Ŀ��)š5��<ՋiY^[ƹV��ú�F���E����<�|\���z�A��k�q�e�4]�0��l�A�Ȅn(� 9@��}P�n�&�t�{���״O�]��5A脪w1��k����7A`��ll�n��qHD�������x�ڻ�"V�`��#�T��'��S v-�M���c�m������]g����t�/h4������G�����-��z���O���5-��Ly�o��uݿ��!�Z(� 9 ~���L�ت���@��\�U@� �<u�" /h\���= ~?]���E����N�yt�F��9���]�)��W,�H4����W'"�x�9�Xo"���cQ�E�t�M,��G��`>U�k<aZ λt�:<�x�j�G=��&|ɉ��ء���@Q����w��+�"�%��C 2!����`����l�[?��JЕ흷���XCa�\K�oJki�0�_(X�7����}��k�М��O�vbI�4eHv�����:NA'bg�@� ���Q�G�U���� �v�9ȧ�ɰ,�X�\���_� �Z�F �p���=���# b��G!����N���Q�v;y���n1:���Љts�J��l�E��;����(G�F�(J63��q�Vu�BOV��h�j�bB��5�+�?���i�>�?��k�t���8kY��&+�!���7�ru!%�&�z��Cܵ bw]z����Γ?n���s�/\�x�=gϞ� ��CdB�,����3 �F����]��ޙ�u�z#�F.����0�]�Mx���D��x��aWW���[�u�'7(-�ĢF.`Pf��Ňϣ��9*ct�1�����8���)W�1�nS#���E�)�4Hۇn�kˍ��5�+�cP뒷��5��-�õ�)�$8�ny��q^���$H!� dB�3�g{P��^����,/De��d�l|m�2��G$|C�]]�.�@|���X��EF�`�9y��b�54��Mn +<&,�a���\`,sZf'�|t�S!)�oQ�u���X��cC'���X����,�T���c�u��ù����0M,k����T';j@�5n���k����zG��!��A�L�>�[��[���;`Q�^Y�݀���l��pMt���5/���3��M/�$8��:t�I�����EzPn���#Q��A�����څ�t��ΕF�4BW�;��yE�� ���Sr���P�b��w��)�<~�i٨!P�E�&ȣFNk��Lcr���0.��sz���Ep��)�9�P ����=脁x�nu�&;M[M#r�P�Fº�u�G⻕����D�Q��9��]r�/�qQ�L�0��8���?���8�X7P�șny��R+vͺ9q�o/\�7���ז�W$� 6Lj��"�UlWF����-2!-���K�g�<�c��W�4nt�ץo��=]dBk�M���g������(�[ujU��bo�]�^���6<vX�����c(�����倬���F[(r�\u��sh҃4����(�<��(��u�Ge��V�!4Iܹv��izPF�7W��^�ۺ��N��k;(���p��Luv䰌�P!��.]�`=Bt� �_Δ����{Z�箢 .. ٺ~�w0� �\Ew#{3�l���mՠ�ە�-s�s֗_mh�B������.���9��%ƲF���;�� 7a~['Ⱥ��Թ�90!n}t��-mw]�}���7�$ų� E,�{ q�=:Ǫ�A�M<�\l2��������?��g�rh�@&d9q����<�չ��6��6I�+Y\�9do�u��n���~�MTD��f ~cHD�:�R��W<j]�Zgx�8�cji$s�l�{m�T�gʣ��P�σ�'����^�<�:��'Y�b�jO�]i�Zp/E@�&�ҕ\x�8��wo��X�Ɓ��k�T�PA�Oc����rQG���M���Bȡa��< !�_�jyk�(b�V�\�tQ��}$�w�͌�yҊ��5ieE���Ѡ�^� $��A�Hp�<��˅�5�i����w"������D�(��;/A�@K[�{1���l5���0Ow1_#d�s˛�v":E���ו��t�4�7��V�r��>w�z�zhe��4��/]���Yr8��L�q�8qG㶩�ݱ�-Ӿ�|W�VOtQ��k��6t�8�F4'B����}S��,b���=t�Թ�ڻ���F7� 1��.jشЎd��q�d��j<[��4M�f� ��f�er���D��_h��od����ا:�m�����P� �q"ޟw��ݵ3���jw����s"rx�@&d��|��bֻuF`�S���:a�}W�+b�����t߫sU���ż�p��"� s �X�::yn����t/C�(���0�˃q�ޡ WJiԋ`���aЮ�b��q��������C��@���^��:W��E��#�r�Z/�El#+��N�c��F��x�q�]/M��1��͂�C�Uu3B֣�W�ߓ��=���{V�m���\ ��]�i.-�=��w_�j]'͝`����_I.|`T�u[��^�˰�Q�F��c����2,�cK6� /Yȿ+�/����εBY�� �͵�%�f�.������Qo8Y���0Bt� �����W��s��k�E�oƕB��s��KE�/�w�ڲ*$��g�8yC"��Ϳl��ۧ �#p[1}3���V?Q��� O��dž��E]f����O��qõw^�������;'~`&��-����{��N�kzt,��b�<&�Q%�ˋe0�W�'O���L�!���} ?8�COQH���J�V��|�� �L�{�����Z� b�U��4�i��]I8v�� gP/Hj=�?��߾����LZн��6�m��)�̔'j(`��1��0��7*FE��A�;!ꄿ�m�|:s^��DzKp<"q��r35ߓ��]��Z�c�͠�>M��d�u�g>+��g�!dw���dG�iXd����jU�0����]�sbC�w��|Gy{��˶��VmWx!K�Q�ţ�|��(����e,����|"3A�j|cE4YH�����錣*�r����;�we�k��(�~��Pǡa�� � �1��U�A�5/�Z�k�K�.�0�,9X� ����<\�a�Τ$;ح9��M�@���.��g2����_�q,�Yԥ����#�Ÿ�b�����]��B��S�N��z�k���6D��'�|����s��z!�@����W�����cP �H3��ܲ�-���X,��Щ6�&;��_#�, ����_�R�%ۻQ���Z��u�.!�(Ȅ�1Y�|ډ��ה̨����i�0�� ^n`g$��"b�+e��,��s�:19�K��(����{{�� �Q�IP�&v�)��\E�w��� �3,ӌ�ى0/���X��Xe\���~��a<�N@�q#+\`�ں:�p"��W5�Z�k�T���,���Z�V����k�*s��3�L�C�L���{g��+�n��D��J~���u��F������0>�='�ҠLU�T��"�Ģ��0�H��(Z��X��9t�v3"�:��8~��Fi�d�% Y<vXg�Ų�tP��Q#���1�FAT.ȳ31�pip�a�ܶ��>]Ww�8y�Y�#�n�D��5e��U�7w�4d���b���SB9P(� �C�x�3�aw���"���6�tg����M�K��������?E�鹴��p�P��(6�:���X,�˅�1��{��[ �N,M��FN b�����kIt������� )B��*��� ePt�0�d�yp;�����#���ּ�:��^ �=:ڭ,�8��u��\/���2�2o=��c[B90(� �CrW�A�W6 �]6���r�s�ij[^���oL�CM�? R�:�i $��/pU����Q��|�w��r�v^#15����= 蠛�Lۚ�|yP���䣰�n)*�Z�7�|�!jh��g]u_V�ۧ�ܶ���I�ug�o�p}����?y��!�Ȅ�!�xf���_���NV�?@q�,+>�vi��:6Q�b�f�V��S,��p��4X�0���j��]�Ũz1�����pċ�&����ʰ��Ʊ�QHEr鍄�q�U��#0S��� ��Z3�lm�i���}K^ݶ?:����y��H?+I�{4p;l t�T���������B90(� �[�L�#��C�r�,���|wu7xL�Lc�+I��IO��l���l��:�5�8�5_�_Y��ӧza�lx�@>5/_��-�\d�B0r�?\W�wV]Y��B�k#R��S�A��ka�/�ucľ+Bk�%;�1 De;Ɇ��I.����5��E��v�'�]��z�; ����A!�I!{B�?>q�į�.\�}H�wCR���ИO+Ǻ�>ܡ��Ĩ��_�n��ٟ����[�6�2{aYv�~�u��q��gw��me�D��y������i��&<��� ��7ȍ7�����9Ѹn��\� 0St-�*sͫ�����-._u �v�a�-(��w����,��s���m!��;� !dO�:?�i�u��^�u��te���s�&%��|a���Hfʵ��K�Z�lӀ1#�_~�U��'�)��#�>��,̞G�����n}G���~TN��G�mo��VB0p�*��H+�U�92�˲ r7g�c,GSe�ROu>�Z>u!��H���U�~�Y��?xV~/�=�Gߕ�^z�ۯ���f�+����m��-�,��&7��"1����իO+��|�At��F�� U�}�����<t�C>'��}g]��C~�~�K�A��g�}�ksҦem�@�h�F��p�l�F %fM|����i�6��Q�`�l�\���������\���?v���?�>���ӯ�D��!"�x��)pѽ3:w��=���d�XZ�a �:'tp=-�~�+ߒ/���SJ��> o{�����s��f�����֧���ս�pN�1aY4p�wx�?��~�>!��;Ȅ�_��W���-*e�y �Ċs��ȁ^.tBĉ�p[�V�<�I�2J�J'J��bb��b�_|E�������?��\-�����ʎ�eP�Vf/fF��Czqc�N$��A��͠~V��u�X���%��/������ɏ���P^7�V� g��)������L�d tp��2�N�� ���*��gΜ9+��}���=�'�(�%�.����p�]�Cwj�f��3��+��u�W�E���QŮ)��_X�^���2L�f�m=o�;��ȕ+"kU,k�K Ŋx# u� ���-��ɯ�����c�IJ�x�/7ٗaP��<��`V���@��eI��K�:�-��|�oBȾ�Y,����b�&���{ZV�GQ6-2q��Y:C���Q����ģ�!]� ʃi,6 ��ni;F,�w���>�;�Qq\(���K��'�)�l#q�^l����)�W�f�eRC ��QM�� wB���ar�Η���Ǡ��O����卋��ٟ����?�_�⦠�ՄjD�81��`��P��^�ˬ5��#����[��-�=���@�(� ����(���9���x���9�]>F��*a�H �E©�L�F��xI(��,���������^zE�����b�Y��L�A�_����xK�1����Sq�ox�}S?pM��Ż���lq^�����@�+"��F^�r���ue�F���K��O��y� �ŵ�����{j4�ei7�����w dB dB��� ��)NpzG�l/V�5Q�D��V@�� �f��ۻƝHP��^������i'�q���̒�v7[�*��\]L�����I���#j�s+߸Q�.i�ƌ�=*cu��q��xM����ʌ寜�u)"�?����E��}YͧZ��8�S8�Et�a��{�8���]�b�}t������@&��4o�� [���.DA�0���N�V|8��uce��;TF�u7G]�&n�.o�֕�e����X�Wf�XG���)�g��o{�B�a�~��� �̶0�V �(N��w�Ctr�>Zw�:��cU��[��}S����� �G���%���5yG����%�(u�������2��b�)-�Z�'�������l:e��V�o��Gb���T�0t��5h�Oq���0�/��*�5�M�oW���E�g�B6�c�=v�o|���/r��>-H)u�Zx�eD�W+@a��q���"!��u�Y̦���#s�v�;��������0�o���w!�0��t�ƞ_���S� ����m;#°A�Q�`t�G���s�x�������e�������?������7�a�Hh �����Ῑ�����������?�CK~�ƛOsp]FaQ�5:7�\�y��q�p��m���vϟ={���gbAȆ�馛��ȉ%�D��ˈ�����C�:ʺ�+�D��� $C!��kʧ�p��.g�L�=��L���e}�GG�]��_�"Z~鳿 ���ߘMbm��[��G���.\��E�~Oۙt�:���1�j�IL�L 7y�+ߖ9�4m���I ���]����o}s�?|��h،x��W����� �2���G�1�z���9�j����� ���v������8��?U�B�W(� �0�A}�[�n��cZ�(���;&�x^^/ʽ�H��XKw)��^�BZ�����0/4j��g�sNo�/.No���x��E�O�1��,�F���Fq7��/�c�cz����1W�;�����Yw^D�w�1OH�}&7sCM��fCR>��Ɛ�/_�����M��|Z�!����~g!�q��!��>�^�ꗻ}���2�x�S�I �_ ʈ?��� ��-!��+Ȅl��@;]>�@5�ڽ@�q��Zt�psLWzAP����T��+������]/L���y������~m��?e��+��!%�x#���ߜ@V^FeL� bD/P f�m#��hڲUB�5R`��0H.|������S]��?��ơŵ/a5�z��X�i����f����0�"���ʷ����1�n|�K�9�N|�m�O�AږK�������ox~�ρz��3Ȅl�4 ��>�o���ᦺ�C;� ���k>�R����u]�2@�����O}�dDq�� ����E|sIKyJ��ϝ��a�A.���Sl�;��uͻ�߈@�%�k��~7�һ��I^^*�y�u&t�~/������2�+Ƚ���n�(=���i@_���_C��(p��f����ҫ�F�x,g�|\��_�9.�����P �a���vBƻF���5�9�w3�"��"�����E%5��j��W��&�\�g���8���?݄_u�@���8�ɔ��>��ͺ�O^��7�j���\W�a�m��?7��x-��s�Οz <3���� 11�����{G���� S�ޓچ"ҋ� �ȡ����S�k��o0�~���;^�]YĞ���F�b94������BȾB�LȆ��-��)�s��p��H8"_A<�uyb�t������5!á8��k ^�_��wF�,���n{G+�Bh����2g9��Z�ވߟ^�|+oJv 8�c�I@�'�"˸S�N@���Ƽ���s�h�������������+�& cϭ����X���tb�muZ%��,]=�\׳e��c�薷s���2������1Ă�}���ͳ�+�W�b�@ױ+\�@`5t�� �u ���e�eܣT)p���l����ڙ��7�^ޕ��g\����殖2;W6����>�k*�q��T묇q݁���2N�L�N�%X������O}�P>�G|%�`|~�Go�o���y[�-���E��]��ü���Гd�t��sx\N�{ڄ�G�{ю��w����R�-(��~�?g� d��@&d�<��[��\@����e�]l��>�Q� DYMS陴�X]:Αp4iT���)ؽ,����WJ���kI�� $��J�s�����~��[�P�D��8�Ʌ����.�z2r!�0n�$(��^�F��}���+#����z{�ү˰��9��V��O���K����vθw����/��Z����5�b�ҕ������B� dB6˖�A�=�`θL�CT��u^����+G+s �rCQ��sq�l�W���n�1�ˈL('~�(�7����_zi)֝@�*��o"7(�q[�� .���q�i0��n?j0Up�blpD���.���o{������ܟWS���u2 �f5-�n���c>~�����#��}"{u�?��c[B�7(� � Y�\y����w�Y��؍��+z�''l0]���tN�qʂt;�Ev ��n}��e�D����w���1���8�� �ņ������xve��ğ�Eޓ�LAٌs�R�ZbIjC+|�s�U���T!섺`C�o}�0.��o{���K�y�X��h�c?r���u:7 ���g�j�n{�s���`��8!M���Z���0B� dB6�[P����3n�����U�7�i즩j7�'��\�e�b4t���uj"A���>�74ru�>����0. ���k�BL�P���l�"� Fs[x k�iL����L9w����Ѯ�@��e��HЖm�X����%s�:q�p=o5�hƅ���b>�O�B�߇����u��=�6�,{-���Ȥ�jc�}Y�x��yBz[B�7N !dc����w>�?Ψ�7�9����"v^ܺ����-��u�N�ԥ��,:��,�u'�(�t�U$�՞ ���7ߔ��W�^M/���b֊{������s���uj�c�r���o.���L�,w�_�xq��/���]��ȩ[�ϔ~'��h(4�Y�#�E[Ԑp��,�:7 ���43��P����]fї_~u��]?�#r���b���Y��Y=̵�v�A(�g�]�J^z��Ej����?$o{�#Qj\�Z���8l$��0>>���g82-C%Z=���i��/��/?%��}! !dc|��_�|����Nd%���.WY�/�P8�yw�F�h��]�1�-�N %8�H�ৄe�44����*��t�2�E �)�x�|�ѥ�:����,P���x箝ָХK�B4lp���XOs��몭p �I����7ض��k#��S B~4�r����?{���B�bA�������v�~��B&�S ]N�]�(0�l��Ӫ���<)�����W�cmU!FZՆO�ϴtj��2��i>�˪Xn �\:��:u�� K���K�+��7��1�F��+��W�|�.j���Z'�����������\�j�gY�F��>|* є̠E]���?5�Z�zO�s�e��/�z��[��oP �Y��?^������4H��o��ჺ��P�A�},�.�ѱ�U�hrN� C�o-��O�%KQQ�7b��t�G�}b�u'J�|}�����]P����]�~�T��i����A�~�˫���K�N@�-���]�+v����}���kɋ��]#"&�9�FIPo���쵐iN����]#���/�k$���m9H��}��� �8��sP�.��q�!<xx��ԹQM��2&'�P���/�ް u�ޑ�r�ZW��5��|�3�,� �cX|z��6,�����?�Cy��(Ԧ�sn�|E�4�+�W�k,TX���2�eu��2�$�~�4z�8Ҡئ���+�N��REf� �U��հ� x�/���m��?5VnBȾA�L����Ht�8��.�6HHm7vCmi] ���ٗIg\R�j�sg��B/�M�@]�+� ���b�bb+!,�߮.���N0�V��[�^T{7�+�4�{s]�߭p�Q���<u.s$Fk:C8.WN_��;�o�q|]�c1��j~�`Iq���Y$!d��G����I�U'� ��uo_S��" �������+o;wѹY���|F�b���:(������5�۠,�ؚDD;�؋w/��)_#�\�����IJi�x���8�x�A}��Ũ�.`� t�xG�_mCG��\�̗#��^�yp �(]n�^��� �Z�:��0��/��M���{���bA�>B�LȆq ��YHUl��bn맄�3j��ۢ-��"&���eX���.��L6^�ZӁ�?VW�*�(3�X'5�H��"]�n8�P����R8�����o8�Q9̾�Ŷ���i��N��D4\[��:pb]ݶs���^�B�!�v��F�O7A,<.��ü�c٧M1�}r����DŽ�FXKKfX��O����}�:!��:��]��Ջ_#T�c�p�`n�a� ���:#4Ԇ$��������&0��P�c]��i�zQ��16�����ℑ�I�9��;�-�)��Նt0�-���O�p��a��r�q��/�Ϧ���S���M��z���c>n�h<���O.v�]������O�?� �G�dI�D'+���W!�Ƅ�H��1�8�XW��5���F�x��w}y"��rG.�������wY:���B��� ��IS �D���hDm��S��|���A��y���'�#9�\5| w�^�AO� �p��qbPͿ�Nj�A��{!���.,��oݹK����y�s�B� dB�:�M6�u�i��<Q(�C�L���7��XW���K�R��@�k-p �;\Z(��� �\!N���7�ʼn��B)�(�� D��Ax��L�e,5 �N=u�(���J}#�;ơ;��[oΗH<0 @����o�T�L��xxL�c�!�:�Xq���A �uu���s�B��X�7� ��R�w�Tv$n m�f��н�7��̕�������F��*Nh4!���]�᧴����)�,ݬ����q�;�؝�E5lA �47� �Ѻ����s{!��Аaj]oSף2 �pmD�$:��ZJ}�K��1��Z_Q/��!o���O�?� �w(<��]�u[��)�C��P g1Ptْs"�>��;�]Y�'p�m�.,�j:����}� �P����# ��m�i�:3�+��ap t�;���Ϝ�Ji�2#����)�|Z�����|� {����K#�����_�j{�u�qx��?�SE�Kfs�?�&���P �APh��w$��ߑ�5맯�S C;U�&H����q�X�� �Bݟ2+��Yl��i���!m��1��b�t�ϝ?(L�h�0���k��iV��k^�6&DA�xW����5���,:v��r�eCi��աw������x���щ�2 �&�eo�B�>B�L�ޠif�gƑ�t:q"�d\y�w���X��M���U�I�8M�� ����������ޝ���&�Ěz��#�5t�tS�A�Tu8m_�/�����z�ѱM勜,_KW\�%�ׁ)��7Z5p�}}!^0�u��(����u���&�WƉܽ�� !�2!�W��SB�ˋ8A6�TU;�s���>�H8 Vؕ���1y������;_>u!���DV\5S�騬��Dz(6�8���tԘIq�Hۀ0�5:��N�ƹ����]�f�!���z_�0 ��aB�c���4�������������� ������и�u;p��K}L�):���;緫BN���Dw5z�{wo�KDP�]�t�ˡ}zu�� $��ry15DԆδ|��W��K[���߶^����V,+��-(|] Y�+U�T�u���1"��]��u��s��G /�۶�ۯ���'`�}�ա@;������WM���#d�l�F��~j�%�N�qa]'��º�'X� (Ջ�d`��i�/'�q��3���Jk�Tb�Q�Ӳ��@��:脔�xF���-5�8�P/(�ݜ9&��4���wza������_S�pm��7��u ��w!r�U�YK�=,�Z�I���[$�����q8�v�Ѻ��?_��B�7(� ��� �F��qs���])tCQD��q�9y�,A�1i�8L��.m��P8G]����5I��j���xj���h�zA�/҅`f�k�a,� ����\k�H�<����4���Pۣ�.[/xކa �9����U�w̯�C� ���G��������;��%�F!_s.Ͻ�� !�2!��])p���,,wr]߲o���Z�� 1-Sx�1P��Nq���(�P���B̀5'�;Q�\�����#1(nl0�Sn�KJ�s����չ�辻r6�Wm�L+��t�&�^�@�Y��zwEסi@�s�n��J�@�M���4�=\kI���,�1O����^��a�B� dB6�yO;A(��@H^��+4�k�E�w�kYD�-X��Nd�Qb��q��z�z�>N�Ƹ�"2�U�?t���ʡ��]&K�� �m����j����0l�S��/G��}�y��&G\ p������M�RGeiסs=;ѩ�=�� �.�mu�%Y�� ����TF�؋��,c2!��8B6H~�=_��DL�P�����j�� �a��bY}������A�_�����>y�d�F"�� /9���D��&r�����u�^�5����P��`<j�ʡg2i ��:0 ���l�q��ח;_�Ĵ���%�]�w�#�G�K���6@�ٮ�IL�2�s&ҹ�X�~xn���j���9!��|�4!����&��!�X���B^�!��U�ô�wz��n.b�^���_/�]w�BlTQ,ˍL|mN���_O/^�K�.�mP�A��A��9��0r{CWP��X���B9Ժ��7����:�P����p��8G���G]�|9!:���I+6^�>P�c];�{���]�`y��e�6%_��nX�b<�d{��t}.��r}��q����]i00��X����BȾA�L����)�ŪL�o#�`}��!i���9��M��~�^s�4�E�� o���pl]�@�寈������^{M^}���tw�xP�7Šڮ����+t]�wЀ��Ƃݥ:�2���l�����B��Da���3�a�&�F�:G� ��z�kl��?�����1]�O�Lj���+��{�Y�+�����t��.���O�`H�P�B����� ��}��� ��ϡ$b���+�Q��H�aR�{�%N��ݻ]�,��~`!R�-���³./�t�H.bd$D�8���P��x'�g@�+;�1c�o�.-����ş�d⮎@�'�����~�g������]Ҷ]��跩�P����h2u�lhE+{ix�|��M��]'�zJC�MozӢ�#_��^������t� ���)� �_(� �,Ϩv#�Q��H8�$$�w�CxJ�s?E�X�N�#��#�`�/a���W��W���/��p�1M��X�ю�S'�"!*�(�r't6�j����Э�b��?*�λ�>�v�(`�w^�2��(��u�,j0Դ�Ց��0�;��t��7.�ڣ�c����Y�-闆�_��_,�r�n �)Y�B,V��k����T7�������op�!$��˓�GR�w�o�6�V��֝8�U��(H7�tS��E�@�v�~uY�U���G�RU;�^��s4W����Z�7,����Dn¥�!ebM5�H�c�3�p��V1� ?վ���:���^ǐNu��k\bw4,�VW��ק�������[n�eq���3]�F�u�A������gϞ��L�>B�L����� ���H���v�jZ��-\�=�S�~�R�9�H$�|YU�#��5_��b �EmA�Dg����8 ʢb��;�^����(�Щ6��`{tR5(�&t�� ;q�{J���i0K l8Fu��mWL�^��7���-^x�xw�(�"��Y�S��8t�Ed���M_��)!��+Ȅl��`��m G��~���(� -?��?��s�" ��� ٩h)"��]`ˤLxBV �Q��O�� �4���m�@��v e� �B�Cu�F���%w�{ �2=�ej{T�� Ƒ�&�@5~�w��R��z}�1{I�%���ɋ�N4���� ���1!�2!&?Ԟ�;\<}�-A�k����o�n��Zuyt¤��@<��ww�˽�Y���:��5/3��6��L� �4p�eU��0o]� h�+��P�A}�]�~?��Pt'Q�b�(Pu�O�VE����>���Bˬ�Aӎ������gc?)e(���+KJv�������u��k{��[!� 2!&?ӞO��ԂC#G� ���q�*<�Ջ)��8�����q��~J�L�lɅ��ޭs��l���I�X�.�4M_:��0(�q ��N.��.����KD?t%��R����i0�ҙ��e1�+�ՆmH��+a��MqeP)�d�k���(xM��!)�q��ֺ���3B�W(� �0�[���]�>~��F���K.4C��G�U߶G��|�석�νj��S76v=A㎢XMqET�Q��CJ31��w��\A,�/�.��*�:1�`ı:�8-�~�WG�� l���p(j��cx\��$��m8h�HF��. g��e�����c� �g(� �0�a����"�|�fh����,h���5(��N|K����T@��e��)�Pd _�'l@D�E�1��t������3�������XHv�\k�D �p��2_�)���SO�c��q�)����j��ԇ)��]7{�_�|y[!� 2!��^��.cX��7�Q���.����W��ἘG�4,�h�~0�,��pfg�����$��nFԢ@M��]��{[�y�wx|�g=��HpBEyrήw1C�e�u���)�&|1Q��?�s=]Y�;zYG�f? ^lc��8��I6���|�#t� �g��B6L���7~�7ʨ�SuY�LQ�{�@־�۸��,Uܼ��� ��|{Myݯs<��G���.l��p��Fq(��Ӣ.�]@�ls�z_���Q�/�pۧ�֩��|�5�"�J��������!_��L�|W�SB�*�z� ��X4H[��L� �F�&7*��a� (�<�4d�[5~YN��\���ǭ����S�r P �d��t~؞.��Y�N lډC�\�*"��& �C������:�l����KJ.]��9�B��Cĥ:�u�/t�M}����9��u�|5�d�[P�o�� O�<��+N�:5�V�]y�������߾���ks�1�k��`;g�%��Ձ����Y�L/�(�Q��k����wA'����" p����3B�wbA��E��� ��P��^w�Ӻ���� �Q�l�:��{�W�ve�8.y�2�t1�#��8�z%3��@5u����!X7�h�s������InB�Kû��8�sz�w�[�ֵgr(ӑ�}R�ˎ׆ɯ �!]�2�8�DR��N}OF����/�(I�g9:�(�Q�Ɛ�{|#��&�BȾC�L�0=Ժ� к��a\,p�$��:��5b���=��Y\�"BpY�L������#�����v8��bqJ���Z�d��}yIr�D�X���v�1����]OqVDu��4]��c���B�����u%A� ���Ҷ�x���s�/N��x{���k||Va��0��B;��e.��N�!dߡ@&do(��n���m��f�VuB� 9L�8�unRbW�PչAQ������FR;�(�4�q�U�W7�p5h�;�66�4R$l���)�0��T�qIq�K���"ٜ��{۰0��������n8 j,�?߾qS���T����>/\���7��eS�u�<c�/>v{�sB dB����mk��G�e�������J�&(�b�,TSqsK<�^��k�Uq�U/���4�%#��є`�"�����"ܵnS�2㾩�[6���H�K���w�S6E�%TcP2��v�κ�1�E\�x�=}O����e.��u��\�/��R��.�밡�l,��jav\����e.pB dB���g�^��m�lE#q�Ō�FdtP�U6 p��-�YY��^�2ઈ��e>���Ky*CZ ��+��*�S�)���68B͈B�ax���^��B���M3��o-K �4�>@�bY�� gQ�Mu�M�,���4��5TY����ٟ��"�)�凲E���z-/����`#*��q�?�1!g� d�x<?�>[�$���ucu�Ӄ�m�/�����Fg ݪ�P�*B��28�nX�"�ۙ�(.��8P���* ;�oKoF�5�\m��q�|" �([��+�k �i��T���U�8.��ŷ>���]8N�PP�~ė�/���m��JQ�x�e��A�에�r=�7������S�vi�?���1q3��k�q����ϜBȁ@�L��pO��Nu!����։�n:���¬���Rj�.�N�-��"H��-ӎ,��2�~���=��N��MQ���������dzv�ӳ�Ѻ�� �&�q�ѹp��`4�� ���q�ɰ���G*�Ͱ��mo���Ŵq?�?���aT����):s�i1G1 =��ey-u�(�b�A1ZX�X7�8�%,���0]����=zM5^��XJ�OI#rͣR�VR'�ʎi������Bȁ@�L��ȏ��Ccg�4/Q0�i�\�^h�*hD��n�4»,���-�h�ۺ�1/����a��v@�{�����8v��^l����V�vXf�c$H�C��ZDc}\p�,�q�n�b�2�r�s���{n�P�\v�� ��Η,�!��������4�:!Z��2�0����,~b/MJAH�E�}|>"+��`�!DBȞ��������,��y����->�ՅN�v���Җe�@���%���u�M'B�0��ʁ�AP�2ːdgΨ��L���+��~��ʳ�>[��f� (�����N)�����#�t��uw}D�WZ$���61�&rg]-Ӕ�D��ܫ�,���wr�g���G>rZ!���<�nj1�!�jn�B�>q�v;�W~(>� ���^㺚~�nr����.epP���\N�(�E��'=��Ί��R�8.�p� �8.�-�FJ����^��,O}l�5�"�3LȆ�/��+1�E�w��o��Srq�P�Q�4���_3���3�!�@&d���U��>���v��u���(M@�x4=��S�E�&)��$Q>N���M�FBD� ��uto��:���n0~���R/�Կ@4�~�UxPЕ�rq뭷.b���w��])��o�K^��92 ��ko��iÚPs�Q���\p�%�wx��w�\]�Crן�u�>�(q�J���v^!c� �C�W����<�ܢ �֝�nВ� ߅?��h`Z�"!���-�|��wG��?,��cn��eu�"�J��7pC�`�wZDM��/Ss���+U���%�w$��fK�넱HP&��o~s:q\(o���N���q*��)��w�g�y�72!j�RU�gs�)�7�9�a�pݧ~ⵙ ��/w���6��[6-2�c�`����Г�=���B90V>-!W��?�\�8�"q�-��xd|�`��̻db����o����4a�¡�[n�E��W�z����c�(�s�P���"������J�A.�ޔs�)s��Q�C�1���W�v��"��9��D���0�4�u��1t���Sָ�3�?Bȁ�B��s�vGa�u[|/����DX"��w��o#ν \2U�.31�����c^2�$7w���E̕Ad��q��Ė��K\m�_���O��Qm�pI ��P�z\)��V�8. �2op��d��q��2;a��q'����� �5lWu���\����X�{��O��-�k*����7k�� !�@�@&d�������[|��`��h��O��<|0wN��x]����j\V��S~��ipL����n�mW/()S��<�/�ה�P�$ g���ث��l8l����R�O��Y�_J�KX�^��Bi����� m�Z������>,�7lp�C������� g;�\�x��.^'��k��!�@a2!{̥K����S)H�af�3�֯�@���Ot��w{�;a������N����g���9ne]4u�f�n.�����\�5��o��������eçZ�_ ^B�Sm�{:(q�'�'����.uq���&c�G���o(�ui<�a����xM���*6pL�}�а���Mi^7O�kK�`>,���?��G?�� 9`� �ǜ={�B�X<�"A�������A�ɵ5�H<� �D7�6�B�.nHg!�2+�E��n_m�AX�3"��w\���㲅�<�s����F�[�� ���p��S]�]W�*K��߅l`)d�qhQBˣ�2E���\��e:s�t�?g� �p@�L�>���z���P�S��`0.派>���\,�AY��nFq��ˋ�+�-@Y���mn�a�p bM�o�n�d`F,;1x`�Uq���F�h�+��KP>�(���z7��iA�ݨi`h��rH���Og�l��Z�^�������ͽ]G>�Aޏ!�@&d�B�?�4�������%����� �#p�#Q�wla *�j�@P����/��S�F��)���Z�p3?�0�xN�WB�9+����6����5d�ѷ��pd� �Bk�����+� kt-hܻХg�6R/|��>/�����}��Y��㰨��� x�b��)<ۆnq����e��\�h�`K?KX�&��J���>�SQ�u,;�2�/���xC^a�8.�Ї���{W�ks�#~��2������ �c�p��ŧWR����Ӻ�,^2��R �u����WrH�@&d�(a���S���I[l����w�j����o��-K���wђ,�P��� ܳ�NJ@�4$*'��%b_U}X��Bqu�P���Җ����� �'�6�x�d�!F��lW6�{ZZ~�A�H;�l&jCC�\l,۰�p?��BȄ�S�E�.�,���Lѥ}E�ʆ�E�w�zGEj �;-�E��C]�DZN�&�J�hnSD�^Pfq�D�E}��9�-�䰋�;�c#�סL-���=�s�_Q��qi�u��F��L�j~e�\��:�#�r PsL��7�E�c��9����(dB Ȅ�5̢t��Lh��XbW�,��X�.<b�n�z�vV���i��$8QT�UxE��k�����9���.8 �x/�>����Q���Р�?6�8��!"&�w��;<]p�/��%!�_k��`�&n��X��C<n�Zcs�?/��C2!��#��8�6�q�0nb�Q�%��VՆFx�q!)*K�)`����Ƿ�"��b?��"�?["˘c�c�,/%��7�\�.�\�2�eֹ����+K!�c�͟�aa^k�WwM��"]����tt��G�rh�@&d)]��Ãۀ�ek���*ݳ�����-���t�9}Gg��E]Ӯ�e��AL�*���_82�/���3%; �����7�U����J��V�XĹ���k����b��.���9���j��#3��������zm��*����>���B94P ���0��`<�]>l��nB+�T���]��d�n�������6/�HnJ7��i�exEMEr �2b��w�t�-e��^x���';m���4z�*�u:�3��e���q�1]W��z�ڐ\�$�>o� B�"�X ���B9TP ��dWs1R]퀟�tywʹ���wE�n`��Y'u$�k�&�H\Cy�h�1W�c�n����pS���r�cG������>�P��&! �C7ٝ�.�(:�i�j�6.���,��<��yv!$�QΡ.�g��rz7BI!��c��qf�v 4�\���dg�0bĹw�Aji�e�~"bc����[o�uO�B��u��XK�9m�s��q���kY��"�_z�����,�{��g�ҥK��#n5��)ǻ��<�>��M��ᵼ�u=,���?<^��@�-���~��[!���r���h�{0�=�E�{h�0i�A��Ut�Z�N ���&����6�_�fq���� ;aV�E<� ���k=済�g�y����|����B(�p� �8�e0d�]b��_}�U��rʂ�[/z��aSC�-�2�k�q�(Sף���$�5>�Bq��s0'W��B���<"��C2!Cy(>���PT&7�>`k���n�����O��^�`Z⺹�V��5Bf?�q��!�#W���q�8~&|]uys���� ��H��{���X|o�� ��Fi����r9�m��Q���{se�y�e/O�]˓o���<�+9�0���֓+S��E�E�����ؤ�R<'r��������o��� $��@ьDZp�r� ��,D],j]����@W��݆��ɻ�n���//��F^�e;�n�]]����lם,C&ڟ�k��Zoߵ�P��p�8� �[�[���Mc ��B%Ȅ����j0h����:�>L�<裼���h�����h���� �H37�ǫ�qa�*oO�E$�:u Em��8��.���:�e���BpN��U8c/�����9q.q-/䃘P\�ʧ���{t��B%Ȅ�E~*<�P��{xk T���>m�?�k�jfz�nW&���tò�|�Kj�w �y��8^O��㝾ƺ��y�p���:���&v�][� �*v}~^��1Vh��r]n��5E������B�|?���}l[!� dB���g[|q.o!�c��E����ĄK�3L> ��yð����gʰ_�'�0�zm�����R����;��҃�������Ä$e��|�� Q�Ћ��Æ%擂��Ʋ`���2��$�͇��B-Ȅ �E>�?ΏB����ڸ]^ԇv���k?��ʠ��A~]ww]-�e����@��z�ozӛ8 oMq\�2���2����ⵅa�O����{{=R�r�)J'�A�؈���`0�>E J߸�E��=&�C�L���� η~�ein���ߺ�!�;a���3��E2҇.���8.�)�$p�J���^t��GWn��F�馛���b��\D�q~%��~wף��U����H�+# z�����Z,K-���1!� dB��"��y�⭨�j�'su��\�8Y�x��b���2����H�`P�3E�~�WTJ����x��q�9�_q\)1�@w��H�z4�ѧ���Xu�����7%�Ey���A�vL�i�=&�@�L�! ?8�bS��F�r���J0�pMcZ�野��F�3(��پ���m+�� 7��C:�$�7�|s����IV��S�Q��}wέqo�f�ܖ���O���0]w:p�Bȡ���C��>�s�a��a��j�-_�kZg��`v r��<��,�+.��N�V���)�����8.�X�)6�Dz�^~��N�6$��d@]��1�.�S��2��7Fy����y!�z(� 9<ܛ��w�N �ɡ��jS\�i#��>�{8ٷ��u�B]��Y"�20�A�t�S�8�Tg_l�����a�A�b[T7�O/X� �z{�� �pP_�^!� (� 9$L3Z<�������M�nE�Q��]�.~�"��5�7g|�S��;���!��E�8�B�@�l��ç\�m�f�o$`M�.�Α�y��-���yc� 9BP r��t��C.�b��zn��}��A��t���� C#�c�ĵ9�J�Sɘ��#���.qw�Σx��1X�l�zZdz�^�W���È��ۭ)�M�E-�r� B�Ȅ">������۸���O�9p��~ej��/B �R ����V��nւ}��o{*or�o(��L9�#�k{0_��1�zF��5�K��*�P�eL�m|�iP��I���#2!���^8M�[�y!�c0����3]<�]�U��N>��.�?��+����m��P�)�W^ c�'t�< �����u�ֽp��������!]�ϗ�,�{L����CF�E��G��s�Y4 _`��7����GSi�P��M��A�ダ�x�������\ي.�k�8�^�n.dߠ��u�ͬ��0}!������AZ��Ct� 9zP r����s3�X0c�"�.Τ��n9 �*���$^��P���Ϝk+�����H�۸봻֝���<\� L�m��&���3��g>��?(��#2!���"_��\.?HS��k�1M�N�Un�Y$L֑Cx�~r������⋋�A�i�9�פ�!��C�{��-�lhJO7x�@ۗ�!!�I(� 9�|�Cz(?ܷ�wu����Ĭٮ�Z�(�p(�����R������^ziv��.��aw�^L�E��X���c��ň�j���n�L�6e� ����͑�����:~4���r$�@&�s���{��:��~@Qs�F��ݭ˗8�Ax��wP/9�P�����e���A��ye���B<j�^���ȍfb�ڧW��ھ�� ��/��#2!��2�[y���Px���A��P�vN� �|�]�&�����^/}P�:u*\Nq,������{<@�i�P4���n��bg7HN�%.��i ����c�G"��sy�P��rġ@&䐓EMq�.$�� �3!u��H����u˾�{�N1|c<�5q\(����_2�(�������e "��J�$��)��Y�\�Ttt���O@(7��`�"��ogq��B�4Ȅr�{E�8 �ƃ��({�jc=Q|Gq� ���V�+���ˏ�ȏ�;�N)/'����k^��߭?�㋍+]�ι]�>�@w�;ݖ�V �Me��L?�ux/�mx.��t�ҽB9�$!� ��?�'��3�;���*�A߄��֏F�:i/z�����?��?,do9J�^#��Mޡ��d>�8�63�D�k9d��}�,Q�v�"��?���'��#dB�'O�,�Tq�M��@lx�F�OC&�뻒��(���"_����a�E��!���M�7� C+`^�&�H�l-&��.W;`Ϭ���Le�,�k����B�ȄΞ=���yU[\gynԭ,��@���n� �M]�ng��c��M7�$d�8"1����ڜ����!�16"�S���.� �n��k�8d�d�����ʦn�""�|Ke ����/!�X@�L������ǣ ������Y��(�`��F.Z͇y�8JajgJ���4��d����`�(�3q�5�5��. �S��g#���}�</��c2!G�jQ�s5������O S��ZDs�� �Jo|��~��k��V��\��B"t�z �={��\�q�˹Ӹ] �/ά���l���kTn�u҄?�D#�Qf���{� $ӝ\d�`�Ϡ��#�\�n�{9cõ��96!�� 4��5����dK�[]�O�F���eu��jgj�3��`}�8�2p!�Y!�;(� 9�L/)�m��]a���A�)U@z(LZ�����#4�qÇ��� ¸����a�&G�N�Ѝ�.n뿛�d�^�|ƅ��3���� �Sv��$�<e��>��,?�. �/�8���Z��؏ C,6�a�/���<���MoZ�9�{�^�W�)/.�e]��M�0 �����f� ��:���ɾ������5s���O~�ҍ�c�uB9�d�r��__D�֊� ��{�8�� n��s���0�c'�套^Z��x��"�203��E�y�M����_Ne�d���g��=���O;�o���nJ�`�P0Ca�TA�����x&��B9��A&��k��kg�ǯ�����t%�e��;�iDL�����or�fq��7��k#���y.1��:7�k�y������-��3Ӽ9�z��P�O3���� mB�8S<�7��d�5����`ı´ru����6�QDžW_}un�E�B �(�7YH�@Q3H4@ N�i�M���&��aN����Bq �d�L�h]�~�cB�?Ȅ~��~��P�|�����m�w�F�DI��,ox��\=GEv��;������ɓ'�8E���\D[hO�/�_�a3�34 ���~�6���W\ٱ�Sy���?~N!� dB� ٵ+����|J�\��sԕ���+n�1���(1�GE����Nx���N��tkU,��XMB���G�5�}b�S��U���(�;&�ځ��cB���ŋw��BC/ q����mVR _=������$�K��nz ʀ�w��]嫦�WNO����^��G�B�q�o���c�k^�,ȷ_}��{�r�@�L�1b��,"�y\>p�Q��!bL8����(ӧ�8l�xnp�:�g��x�^��6G^��MA�C4ܲ�ot��V��#��#��}��ɳw�}�!�\3P r��G>�\��cYg]�!��-����3En�� ��$�+%&��1��Aq��w8�J}��禧#���1�QFw��_���rP!�ȄC���×t����6(���z!\8���(����o^����<v�P�N1������oӵыb�t�C�8@o�G��Nv�)� �6IB9��گ�ڃ�!�������-�9�+����Eđ��A�����/�y�W�`��S�6�Ql�����'>�!�\��!����"��9eeG\��[<����.P�6�&G��Dž�"{Fa�/v�6���k���k�9��y��GqLȵ 2!ǜ�~�E$�g�HaJ-ﮙ}g�{[l� 79Z�8.��j��W�����0�q�-0�ƷG*����;a=���'?���rMC�L�5�G>��|n��/���}�p�qZ�(�s49�q\q�������k��x��n? �U��y e�cB� dB��H�7�GF¤-W�i�\@u|�8L� ]��~f�q�.ܧ�ѵ�c)|DŽ�2!���G���T��c0QGN��t���I.]�T>4�������jH��m¤���}-���7�����P r�QDrv�6��w��M�b�8.�����üI��}<��0 ��Q��;���)h��9&�tP r ��?��f1�,gh]�����G��(��QC{��Խ���B���n�_7��ؾ�GqL �@&���������`����}V�y�*'���*�_�uy��ԂW�~�7�μL��bQ�� ���z=(� !C(� ��)S�叇�r�橺���wlE�U��O��|h�ߐgfRY'-wM��فS~�SB�@&�'���~�tU��X8w�������a��zy��T�7��;wyV(C:u���-+.�k���B�*(� !�}�,F��_/�������x��N�v��p�¡�%��駟�MӴ�Au�֛��:���(��2��ug?��O�BY2!dAv�-"��nn]�0$�@�ź�r&�CDq�WqP���Z^}�Ux�f�((,o��}K�y]:lSU�ɓ'�~��J!d (� !��|�#Oe�QE�yaH4��P�Ar8Xu.�9�����Dh���E����� �s�E`�o�<��p:��l!�� 2!�P�����Y|<Z~�3��T�C><�81�/����>�^���WA\{/����o��m�}����ٻ��B��@&�t�={��G?�ѻ�<��"�b�������xG�����?��?\���~���L7(f�fWI��D�Y�/��(� !C`��v�z��+�9��-oY�믿~�|���<q\��IG3K��64X�M'69��F�7�?ř*!W�BV��?�ʢ�,T��o|�Û��t�m� !�"��s,|�ĉ��5.��?�8cX�4�ʭ,|��뮻��Ƅ�����6����/dq�9��D��������\�·�оjZ��tf���1bAY������/ܛE�vu�.^���L���]�g���O�y�m��w���I(� !;"w_��g�Xy�.{���\����J��^8#~>�i�rG���V7�ţ���SY�B� �%��_��_}�ĉ��mo�w��]B�=�Tn������(L>��a(�)c���C�G�+(� !WE���7�����rM�_�<'���;�3�@<BȾ@�L���w����\�s<r��h� ��-Goۻ���{��ԧ�B�� B6B/�"�`�9�*�1���+�)Ͽ@y�9.?q�įd��(� !��uB! ���B�5�9Οh />����p8�[�1.��WH���y������!��#�8d<��[7�pC馾����E��4(�¥K�.�|��O��=� �"�~��S'O�|Nȱ�1��r���_�/ )��yۇ���n�_G�w(���_���� �|~8���c8�C�,H�+�l!���|�;��3B�5���W_��1^x�� �{!}����N(��^zi+���J'N��.�����B�.`��!��ŋ���gdg����ȟ� !������3B�.����N�#^�!�3UL�T��n���~\�� ����7��k�_|��s)�N����f1����#�d'P B6F~(�˽����,� QXEY����yܛ>���ˊӗ�?��O|�!d &a��uk���Eń�'����Y���u�,���Qb�9���ű,߈7ߐ�*��J�q!��0~�1Y�,r?���ʵ%;g+��>��o}�!dt� !%��sYq6�#Nǯ��js��?�Ob�.��{>N�ty�g/^�<�6%��_���8L3����L�ޟ��Ћ-�m��,���}�CB� dB�F�����;�9/�wd�XA/�p�:�qu��*����v�{$�)��Ny���o���C��:w����h�,��ʮ�}��Y�E2����q8X����*�@<|��b%�Ǹ��J�?��'?yN�%$"_S~ �Z��Y?�?��7�q��-���o��?�?���4oLi�^�|��]�b� �Wn�{��9Ls"?-�w�(��_��%�p����1 �5>/���\%�yO�ƾ�?u�M7���ʔ��M���rZ����y�L���]9�W�j��4��n��9�G�P>7���uO/�r$/�K�y��k�\�qs��%(�+(������0 �'�6��j&�(����A!�@��e�F�Me���n�U�t-#��D���'W�c����9M�L� ��G��OS�-��f���ep������d���M<��A����η!��\��"�r���M�Puu���o�A_�}(�g���]K�ٵD� �ȇ��9��% \q[<��nq��tGvB�������2�D����ʛa��7?/��rޟ���*y��'O]�����p�/!�(�2�f6)��Wl���+����6��8g��=�.��Ɖc������F���+�-&;�����._������*�p�� �qT��^�O�>�W�`�Qc#�rB"��|_~}^ȡ�;ǣ��I���(&W�4Ń��~�f�z�l���+�9�'���hB�|b��"�G&{J�Og��%�P�D�������'E1�Z&�x�&̞��� ���'a{S��� _Y���-9����RZ�ρ� 'N��7?�r�Tn8+E/�+��S���GSL6�4��{(KH�^�7����Z�E[B@y�L���r�� ��|�;�)��e����2���������Ƕ�� ��^�ѬPW�4x�t����.���c�4�y!d�̽���p��A���s���K/=E���� A�^���)79�y B� �!� !;�����=r�8S�Ä�=�L'XF�9��S|�g~�g8O1��ٝ�dC�;�*�{z�^5YlڥϷ��.(o˓cJ>6v��=�;�(��� �O���~����+do�5]�/��J{�Yw^(�wAni~N��Қ=W����iٞ��B��P���d�8&�J����tnkRB�>?��]���ϊ{}5����� <���QD�#����|_��s��ge��"��{�^v7�=��g�=�Y-��c���ԧ�Y�h~���`z��ν����T(�wA��)7צcuK|���b��?��;��=B����)�d_�^!]��[���=O���g a��.�7�����_�e3���N�x��?� �a1�ꦛn:-��%���4�d���x���v�".������3�����W �@�%�;��˗/_�>��v3uM�gC7��Y������4 ��������7 �1�w�x�{��8��/��\\r4�F1�{LF0�bL�6�Mtgd�ˎ�U��o|�_��ວ���?r��٭'N<�WQ_5�d�)�m�rx8� ����)�98x��^r����&��WddQ�\%/^|Pv�������-�B��=�d�)�P�w�(��{J,t�/y0��v�B��"߀[�s�71[��ӧ��8/;gK9��]d���AqL��vߌ�([v���&���;'$��@�w���l�,�w��-B�!��[o}�"y�P�!��%����\,�x�q;�z]59�P o��J�M+z[6�nDŖr��H���@(ar���v呝@�|mCB�kAqL�l�ً����]w�9!dM(�7��˗�������8� �PRDr��=�WR�P��f�Ç�S%.���DY �ec����e�</�R��Ɇ��@qL��*2�^x���5�@��Kx7�Q��b���i:�ݼ�z[9�L"�8�W=�Q��O�~��}O�UP�@����D�b����\%�h����MtB��"���ƽ2o�(/�'��:xP9��q[�.�^|��{��P _�Z^_���(sA��-��i�z��U�&�*e��N�N�a%�/\�qɏ�c~�m��v^9$�^�]���~!dȻ���2�B��_7��ގv��$��~����a��\d���k�M���ɻo����RA!� !� �]�ק�WWnJL���-����9��'e�s�c*��H&�p��cF�5.�q�"�J�\�@�;IȎx��'O]�����q�<�G��a<�Ay��9���L�r�n��ɓ�'�m����*�Q`z^Mxၑ�������='��@����\�S8#{�v����x�S����{K���;��=B���g�-�G�zF���{�a���H6m�Pf��#DnP����&��N�n(����p�-��y!�2 ���Q>q�ă���i9��^(]ԗ/_�c��Q&�6ޗM���r48GqLց�.�����c�˖59.�X�|=��3r�!�T�]�x�) cr�(�s��K��q1{�v�?�,�qd(�wI�Vzps2��y� !nj)N�L�Z\��_��"��`��/]��(E19Δ�����p�������d](�w�qt���k��|����+�K(S���@���S������7lrd)��뮻���|�ĉ��'~�3Ð��@� ���L��\���Q�">U��\i�����L����p��v�˕7�m���X~��O��0=�ԉ�{�Bv�U0������`�!��������m��%DǏfq|��C��������e$�qp]�8&��I~�'��2(.ݖ�a��of�(��Wɚo:���i�V�i��V|A!�� S̗�_���r��3Vp`,�-���ŋ�h0�vy+]���t����������|��-�{J���@B!d�(��%̡��>q�ĉ��3J�� o7���%�k�{ @�.���7�geo8�E���ַ��4�%��B�>3�%�W���P�G6�)����gn��ƕ��P>?��p^V�{WuOqL!d���.��B�UB�|���(.^�����gddQ�x������|��B��H.N���7�t�i��M��frq�.�$�)� !�%ʳ����`\2呍B�L!��a��_��l�ͰA�I(� !�r`��F����,O��'�l dB!�(��^*�#�[B48�?�(� !�r�Lqɧw�b��9��+�r�y^�x��O���K��^._���jJCB�Ѥ�X�[��SY(�iP���5�)!W�y;������,/#9�u��mA�X��On]��E�?�t&_�[n�손c�4�V~>�i�.��Mo:ϙ*�~@�|Ș\��S�?\W�sȂ`��o���8Q��^x�,����>#�i��B�8Ȅ�}��_~�Ln�^����]�z���%��i�L�sJ�� 7�P�$�/���]�!��,�B���L�8�ַ��$F�Û��M7���YB�t� !W�矟�E�p��]��E���B!���c��o�ɂx!�_|���]�I��B!dP B֦��YI�I�3��o�"��(� !k����e���v�{XU��B4>s�ĉϮ�/�B��GY�2a��K�����M7�t�h��o}�,���N����{N�>�-��#����_��)�m��B�rMo��gr�o����ŋۼV 9��A&��E�w����8�F�P����=��o|c+��V%2�u�ad�(���^��$�����R��ˀ��U��7�ya�E<?��G�VHBȄ����9ap�uם��J��y��OL=*�8^�SYח�|&���,���{R┅de�t6,/Z����6�6C,!k��O����s�a�y^���}�w�G�c@oɆ�"�o��,E2��f*������B�! �ݳ'�������ӧk��F�i�1��sY��*��1Y��\�d(��4�÷����avf�������\�OȮ`�!dm����n�-�,�����cv� 7|fݗ����K%���Gd�Q���^�>��>�{V��f���u�]�U��y��;��0�|ַ\�|����o~���A�LY�,����N��.en��ex�_1ue��`��$�)�|V�R���*���n��B�)F��\ 9��˜��w>�~��2�1Ȅ��������� ��s���1�I��Sw�y�i!dTq���nO8y��{Cz���o�s��}P�������Y^c1Ȅ��݇2P����t�Moa"�)eʶ,��fV���\n��+��S⋋�+�=�:{D����!;"�'~^1/���,Ȏ(=#�PJ,�!ǚDžs��z(� !;"��삼ߣr�u�{�!d\�|�{J�� ��|��x25��&_g_�,@ dBȎ��?%;�{��<�e�c�C��B�d�[�ʋ�g˫���_ �)���@���?�LB���6~���]ȱ`'�������)�� Bv��2Pom���$���y}�.��E�[��5�еX^}�ӲM/{����8�ꈳǃ�w��� BvDya���;�?�X���Lw���d\�+�����Y\�-��\eo��m~Ed 9�\�|��.N���BpdBȎ���g�̺ۗ���"���^��7���'^YA�Vvw9zMz��|���dT�KOe���� i�}�w��'N|Qv]Dr���#G>wg�CF��s7a@�:Ȅ����������M,��C�����)�qFY�|]m�.��qq߾��o>��/>��qy��K�F�^���'}��O��O>���_v���M�8�C�Q'd2!d�\�xq'��E$O��C�[Dty�S$��,��@=��|[ٶ��%9�'e�qV��8���Q��4�:�r�����מ��C'� dBȎ�IrvIί�]�QLfY�]�EL������.�ꫂ ���;��6�4������P5�J{5)��6��+�}�W`r�W� L���rV#�;�+�,�Le��r<1���m���~��V�ߧ�T��ղ��s���gq�wͮG�U��} �,���ܔ�>�I����>���-���Ӿ�Ⱥ�Mf�f� bgvv��I�巖`Bq�=�cD�šۺ���qw����}���-�O&�����D��_��bZ��&�!�n-�gx��qpg��ȴ��{n6�I�li�ػj�^� ��}V�v�J�L2k0��mҊ}���-l��ڊ����=bT�Š"6���F]��';.�z����w_��,�P@'�~�}�<���_�A��~+4�f5"�1�s���RLa��sï�?�Ft����C�L�L��2S��2�2|�X([B�N<�``��wPp��}CDr]B�����n�j EFj��p]��+�g�Η��Ǥvs$[���g�1�9J�I�L�|����ϡ�.!�gК��!&�\�����E��"�#F��X��%!�ʏ���A��-1m���>#fuK���閖 ���+Zd.�Gz��@&c�(�҈�$��@_f�b�pJ�d�`r���Q�:��~2�i��y�q=}4��\7�hC�����8d:&i��w�PC�9�G���X(�� ��eN�h�'�Uc�@�V�x���� �����ͬ�<��ѿg]΄�� 2�D�$EF�?���EW��c@���q�Fw�5��I2R�ڐD�L���Ft$}��z�J���ce��B<�wR�X@�"l�F�Ҷ2"��-{6ITk^O�t:�)TBs��!h���'�����E�����F�' t��P ���|��%�+ErD @u��A��I]�_�^/��.���*��*\�T'#��v����;(aq�Q�>��|����y�q7�f07�)A�H2\)1�A&cA +ݤx"����Q!�p�!0��HR�P��|�z�EX��QH��v����B�*�J_О4*J��>i��� )������=��n(B"�d�q��P �qa�e�%��Z�/]�4Բ�aTlB�j=�#I��%�� jBu�;����PX�c��!�ɁP�Ⱦ6��!�q�1�NHt��+�0��D�k�7<"���nڷ7%����A�;&��XXnMe�M!�A��>�=~��X���4Au]��!>̃�,�}�Q���$��\*��*wt� i)��)�3�+�0��|K���p�ͻ�� ����/�=B溟X(��8P��`;����|=L��RgpWx��ZՂ~�(�k0 �u�Fp]1���1�� X�)�I`�"�O���Y���.�oG-7m2l��q:��B v��AI��{}E�� S����Y���X�!i��-�c�`[=�����q?�2��3�[P�P��y���_�3d��B�d���G ! (j5�]��;���q|�1�w��t)*f1k�AΌk��Ѥt�]�<ʜ_��CdRdܠ�ń���c�T~x$�xb�� �!a��W�����/��@<P�,I�øfH���BT�/K��MX喖���q���Q��d�0UH1G�� ���O��;N+�� f�(+� �܉kA�gn��T`VՉ��t �������Yw�g�&y��PI^(�����~���w�<::j�����>�8IP��m��%��,�� 7�.�0�����X��)�� ��1�ϣ�&���0o�v�;�Vؘ�t ��Dļ�C��Ϛ�=c���ڞ ����d�H������P7}�1�Y#��3$>����f`I~#�c(1�㉄����G����@��˗/o�3V�:�m%��P���%��æ2��-p�����a�Ҩ�&����Ua��B�j��3�b�A��pk��*Z����Gxd~��$(�Ͷ"��}��ni��VPB�O���A�vTh<U��H)g�z%�%���=c!)Hq5�I��"�+ʞ� =�;�j�EX���N@�L��0!�"�#�ǾW���A��u!��� Եm`\��A3��3���p��RX�"S�k�Aq|2���+谓��ؖ�>88��k������ �m�^�H2�BH�1�K )0:�������"���'�2����8!��}��Ex��ZS��M ��~����L%R��?��'�Dg]8HqQ+2�4W�g���{�@&�ar�#<�3˳�Dz��}j��ێB ����EV�����Vd�wؕ��YZZb���$7b$6G��o!P_�x>�w��W��B�-.��$=�H�h'� �Ov�&��䆊�5��a�E�~c]0bd� �O���N�RMz]r��~�7�u������Cb~ ��F�97�?8�b�]�m`�U�T�K��dOߒ��N�$���uI��U���,�8��쪐�Pq����W������x���m��+%��5F6�� ����&rk�����M6&;S]�W�C�K ���! �+ޤ��...>��x8�$2�=y��T�O�:r.Xq�7h�s��3M�\s�ʹ�v�Kc�駟V �a��#�'rޯ����WRЇT�F�d��7�� d��e��ee�F�f��m�p��h�H��u�`��i� �||���S�U�>X�wO�fs��OW��3�o�״/�Ȅ3̍�C�s�<�t��}Z�ʋ/-��ڏk���> d�jAN���9Ժ��ѿC��k��Y�L�;r�~�~�jE���QwRh�Z�����I�}`��ָu(=�ȁ>t�M �|�Z]�f����s���s�f��}��B�of��`A��V��&��5l���\@�ev� ��T�~-�wa��q�i� 2Ʌ�,� R�����˻*��ڊ,�6��u9����ش��ZH<�k.ĭ�*~�����[T����n�Je�2;��5+������m-�h��n,Ϥ�؝�:�K;�ti1N d�� wA��xiıOߔsQ�H�@�ª���{xp� ��B�R�+�u��f�d�f���\�z�����Z�ў�Hk3!$,�$~�����&) TۚTql|���LߒbV_�_X|����%i�?^�u�i��,---�=??�S@�r����A�L2Ʌ�� �IcR}� ��8џ�.!��� �Zw��n����ߣ&y��+WjK���K�/l����c�PE�b��2ɍ��,"��߫UjgR�C� ��j)�V�{xx�l���.�pSB ,�V8_�|� iq��v�B�(�In�lE���O�2�xuuՕ F'��IaA��ݻ����o٥&�D�Z�������S���]m��G�!9��.��{*��K��)Y�/*v�������������{BȄ�~���_��/�?�^����S�Xv���j��� d�+*�7^�xa3&� �&(�Y+�<a������~��BJ���_W�^u>�v�K�|�9� !� 2ɝ7n�����u^�:������/���ww���������˛B)=�A&c��� 2'�c|�a%��ິ���v��253㕴B����t��n�P�Vh4��B�@&�G�2�ڞ�(n|��g���_|�2#�rm1B��Q|���OO���w)� !~(��2��߿w:��g�l��n�Vk�J�jU���s"�*�e]�,!�.��T���ӟ�Zݣ(&�����̭�r�Rq�:�eU�t� ED�msZ��Ԕ+''{Ą�(P B�bE���,�՚�V��)�6�e?N�_BR� a;z���Cf�&�0!$ Ȅ�Xx�)�k2=]��Y��U=�(�Ix��*~U #mc�2=ݔN�)���- aBHP B2�+�[�� h:����� h�e�sz AM���YU˙n���4ua՜�����<�@&��_H�|� bZNN�:@U���=X�)���ʫLOM���/�33���E�V�����q��RH���{�ju4����6�,��@l:��ò n+h���̍�uXtq��#s� �*^{�*t�U�2qP B����Xn#2�P�,���ӵ�� X�,!�B!�B!�B!�B!�B!�B!�B!�B!�B!�Bɉ�n ��W�0IEND�B`�PKCA#]4�NZ%%:components/com_sppagebuilder/assets/editor/dist/index.htmlnu�[���<!doctype html><html><head><meta charset="utf-8"><title>Hot Module Replacement</title><meta name="viewport" content="width=device-width,initial-scale=1"><script defer="defer" src="./js/vendors.min.js"></script><script defer="defer" src="./js/bundle.min.js"></script></head><body></body></html>PKCA#]�f0ؚ�Rcomponents/com_sppagebuilder/assets/editor/dist/js/863.db6f7bbcd03da29eeffd.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[863],{4977:(e,t,n)=>{n.r(t),n.d(t,{default:()=>Z});var a=n(935),i=n(2847),o=n(7264),d=n(5791),r=n(824),l=n(4185),c=n(917),s=n(1234),p=n(6914),u=n(7230),h=n(1921),v=n(7602),f=n(5944);const m=function(e){var t=e.addon,n=e.groupName,r=e.isFavorite,l=(0,s.$)(),c=(0,u.x)((function(e){return e.changeAddonStatus})),h=(0,p.LX)(),m=(0,p.Kr)(),_=v.Eu&&t.pro;return(0,f.BX)("div",{css:g.addonItem({shouldShowProLabel:_}),children:[(0,f.BX)("div",{css:g.addonContent,"data-content":!0,children:[(0,f.tZ)("span",{dangerouslySetInnerHTML:{__html:t.icon},css:g.addonIcon}),(0,f.tZ)("span",{"data-title":!0,children:t.title}),r&&(0,f.tZ)("span",{css:g.favoriteIcon,children:(0,f.tZ)(o.Z,{name:"starAlt",width:24,height:24,"data-favorite-icon":!0})})]}),(0,f.BX)("button",{type:"button",css:g.favoriteButton(r),"data-favorite":!0,title:l(r?"COM_SPPAGEBUILDER_EDITOR_REMOVE_FROM_FAVORITES":"COM_SPPAGEBUILDER_EDITOR_ADD_TO_FAVORITES"),onClick:function(){m.mutate({addon_name:t.name,state:r?0:1})},children:[(0,f.tZ)(o.Z,{name:r?"starAlt":"startEmpty",width:24,height:24}),(0,f.tZ)("span",{children:l(r?"COM_SPPAGEBUILDER_EDITOR_REMOVE_FROM_FAVORITES":"COM_SPPAGEBUILDER_EDITOR_ADD_TO_FAVORITES")})]}),m.isLoading?(0,f.tZ)(a.ZP,{}):_?(0,f.tZ)(i.Z,{}):(0,f.tZ)(d.Z,{checked:!!t.status,value:!!t.status,onChange:function(){c({groupName:n,addonName:t.name}),h.mutate({addonName:t.name})}})]})};var g={addonItem:function(e){var t=e.shouldShowProLabel,n=void 0!==t&&t;return(0,c.iv)("display:flex;justify-content:space-between;align-items:center;background-color:",r.qo.base.white,";border-radius:",r.E0[5],";box-shadow:",r.AF.addon,";height:48px;max-width:290px;width:100%;padding-inline:",r.W0[12],";[data-favorite]{display:none;}",n&&(0,c.iv)("pointer-events:none;background-color:",r.qo.background.disabled,";;label:addonItem;")," :hover{[data-favorite]{display:flex;}[data-content]{display:none;}};label:addonItem;")},addonIcon:{name:"hr8smh-addonIcon",styles:"width:24px;height:24px;display:flex;align-items:center;label:addonIcon;"},favoriteButton:function(e){return(0,c.iv)(h.iZ.resetButton,";width:100%;display:flex;align-items:center;gap:",r.W0[8],";span{",l.c.body("medium"),";color:",r.qo.text.primary,";}path{fill:none;stroke:",r.qo.icon.default,";}",e&&(0,c.iv)("path{fill:",r.qo.icon.warning,";stroke:none;};label:favoriteButton;"),";;label:favoriteButton;")},addonContent:(0,c.iv)("display:flex;align-items:center;gap:",r.W0[8],";&>span:first-of-type{svg,img{color:",r.qo.icon.default,";width:18px;height:18px;}}&>[data-title]{",l.c.body("medium"),";",h.iZ.textEllipsis,";color:",r.qo.text.default,";};label:addonContent;"),favoriteIcon:(0,c.iv)("path{fill:",r.qo.icon.warning,";};label:favoriteIcon;")};const _=function(e){var t=e.addon,n=(0,p.Kr)(),i=(0,s.$)();return(0,f.BX)("div",{css:E.wrapper,children:[(0,f.BX)("div",{css:E.iconAndTitle,"data-content":!0,children:[(0,f.tZ)("span",{dangerouslySetInnerHTML:{__html:t.icon},css:E.addonIcon}),(0,f.tZ)("span",{css:E.addonTitle,children:t.title})]}),(0,f.BX)("button",{type:"button",css:E.favoriteButton(!0),"data-favorite":!0,title:i("COM_SPPAGEBUILDER_EDITOR_REMOVE_FROM_FAVORITES"),onClick:function(){n.mutate({addon_name:t.name,state:0})},children:[(0,f.tZ)(o.Z,{name:"starAlt",width:24,height:24}),(0,f.tZ)("span",{children:i("COM_SPPAGEBUILDER_EDITOR_REMOVE_FROM_FAVORITES")})]}),n.isLoading&&(0,f.tZ)(a.ZP,{})]})};var E={wrapper:(0,c.iv)("height:48px;border:1px solid ",r.qo.stroke.neutral,";box-shadow:",r.AF.addon,";display:flex;border-radius:",r.E0[5],";max-width:275px;width:100%;align-items:center;justify-content:space-between;padding:",r.W0[8]," ",r.W0[12],";:hover{[data-remove]{opacity:1;}[data-favorite]{display:flex;}[data-content]{display:none;}};label:wrapper;"),iconAndTitle:(0,c.iv)("display:flex;align-items:center;gap:",r.W0[8],";;label:iconAndTitle;"),favoriteButton:function(e){return(0,c.iv)(h.iZ.resetButton,";width:100%;display:none;align-items:center;gap:",r.W0[8],";span{",l.c.body("medium"),";color:",r.qo.text.primary,";}path{fill:none;stroke:",r.qo.icon.default,";}",e&&(0,c.iv)("path{fill:",r.qo.icon.warning,";stroke:none;};label:favoriteButton;"),";;label:favoriteButton;")},removeButton:(0,c.iv)(h.iZ.resetButton,";width:32px;height:32px;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s ease;svg{color:",r.qo.icon.default,";}:hover{svg{color:",r.qo.icon.error,";}};label:removeButton;"),addonIcon:(0,c.iv)("display:flex;svg,img{color:",r.qo.icon.default,";width:18px;height:18px;};label:addonIcon;"),addonTitle:(0,c.iv)(l.c.body("medium"),";;label:addonTitle;")},b=n(7579),I=n(3039),x=n(7894),y=n(3417);const O=n.p+"images/633069b738e98959d5e7.svg",Z=function(){var e=(0,s.$)(),t=(0,u.x)((function(e){return e.addonGroups})),n=t.Favourite.length>0;return(0,f.BX)(I.Z,{children:[(0,f.tZ)(x.Z,{title:e("COM_SPPAGEBUILDER_EDITOR_ADDONS_PAGE_TITLE"),subtitle:e("COM_SPPAGEBUILDER_EDITOR_ADDONS_PAGE_SUBTITLE")}),(0,f.tZ)(b.Z,{children:(0,f.BX)("div",{css:w.wrapper,children:[(0,f.BX)(y.Z,{header:(0,f.tZ)("h5",{css:w.headerTitle,children:e("COM_SPPAGEBUILDER_EDITOR_FAVORITE_PANEL_TITLE")}),children:[!n&&(0,f.BX)("div",{css:w.emptyFavorite,children:[(0,f.tZ)("img",{src:O,alt:"empty favorite illustration",width:315}),(0,f.tZ)("h6",{children:e("COM_SPPAGEBUILDER_EDITOR_FAVORITE_PANEL_SUBTITLE")})]}),t.Favourite.length>0&&(0,f.tZ)("div",{css:w.favoriteAddonList,children:t.Favourite.map((function(e,t){return(0,f.tZ)(_,{addon:e},t)}))})]}),(0,v.Zt)(t).map((function(e){return"Favourite"===e?null:(0,f.BX)("div",{css:w.groupWrapper,children:[(0,f.tZ)("h5",{css:l.c.heading5("medium"),children:e}),(0,f.tZ)("div",{css:w.addonsContainer,children:t[e].map((function(n,a){return(0,f.tZ)(m,{addon:n,groupName:e,isFavorite:t.Favourite.findIndex((function(e){return e.name===n.name}))>-1},a)}))})]},e)}))]})})]})};var w={wrapper:(0,c.iv)("display:flex;flex-direction:column;gap:",r.W0[56],";padding-block:",r.W0[24]," ",r.W0[40],";;label:wrapper;"),favoriteAddonList:(0,c.iv)("padding:",r.W0[24]," ",r.W0[32],";display:flex;gap:",r.W0[16]," ",r.W0[32],";flex-wrap:wrap;;label:favoriteAddonList;"),headerTitle:(0,c.iv)(l.c.heading5("medium"),";;label:headerTitle;"),emptyFavorite:(0,c.iv)("display:flex;flex-direction:column;gap:",r.W0[16],";align-items:center;justify-content:center;padding:",r.W0[24]," 0 ",r.W0[32],";max-width:336px;margin:0 auto;text-align:center;h6{",l.c.heading6()," color:",r.qo.text.neutral,";};label:emptyFavorite;"),groupWrapper:(0,c.iv)("display:flex;flex-direction:column;gap:",r.W0[20],";;label:groupWrapper;"),addonsContainer:(0,c.iv)("display:flex;gap:",r.W0[24]," ",r.W0[32],";flex-wrap:wrap;;label:addonsContainer;")}}}]);PKCA#]s����Rcomponents/com_sppagebuilder/assets/editor/dist/js/983.fba4576367ba6ebbdd37.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[983],{7639:(e,t,c)=>{c.r(t),c.d(t,{default:()=>p});var i=c(487),n=c(824),r=c(4185),a=c(917),l=c(1234);const s=c.p+"images/7c5745799a668db0fe1c.svg";var d=c(5944);const p=function(){var e=(0,l.$)();return(0,d.BX)("div",{css:_.wrapper,children:[(0,d.tZ)("img",{src:s,alt:e("COM_SPPAGEBUILDER_EDITOR_404_ALT")}),(0,d.BX)("div",{css:_.contents,children:[(0,d.tZ)("p",{children:e("COM_SPPAGEBUILDER_EDITOR_404_CONTENT")}),(0,d.tZ)("div",{children:(0,d.tZ)(i.Z,{href:"/",children:e("COM_SPPAGEBUILDER_EDITOR_404_GOTO_HOMEPAGE_BUTTON")})})]})]})};var _={wrapper:(0,a.iv)("width:100%;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:",n.W0[48],";;label:wrapper;"),contents:(0,a.iv)("display:flex;flex-direction:column;gap:",n.W0[20],";align-items:center;max-width:320px;width:100%;text-align:center;p{",r.c.body(),";};label:contents;")}}}]);PKCA#]��i���\components/com_sppagebuilder/assets/editor/dist/js/4.e21cee9be6286f430bce.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]��=�7�7Rcomponents/com_sppagebuilder/assets/editor/dist/js/359.9e89a7a1f094287933e6.min.jsnu�[���/*! For license information please see 359.9e89a7a1f094287933e6.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[359],{1736:(t,e,r)=>{r.r(e),r.d(e,{default:()=>x});var n=r(3871),i=r(9085),o=r(935),a=r(7498),c=r(7264),l=r(5791),u=r(7579),s=r(3039),d=r(7894),h=r(824),f=r(4185),p=r(917),v=r(1234),y=r(3417),m=r(3425),_=r(6511);const g=r.p+"images/344512fa3e835050e39a.svg",b=r.p+"images/2e39db9b3cb737b3c6b5.png";var E=r(8008),O=r(7602),C=r(7294),I=r(5944);function T(t){return T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},T(t)}function S(){S=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},o=i.iterator||"@@iterator",a=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function l(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{l({},"")}catch(t){l=function(t,e,r){return t[e]=r}}function u(t,e,r,i){var o=e&&e.prototype instanceof h?e:h,a=Object.create(o.prototype),c=new w(i||[]);return n(a,"_invoke",{value:E(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function h(){}function f(){}function p(){}var v={};l(v,o,(function(){return this}));var y=Object.getPrototypeOf,m=y&&y(y(L([])));m&&m!==e&&r.call(m,o)&&(v=m);var _=p.prototype=h.prototype=Object.create(v);function g(t){["next","throw","return"].forEach((function(e){l(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function i(n,o,a,c){var l=s(t[n],t,o);if("throw"!==l.type){var u=l.arg,d=u.value;return d&&"object"==T(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){i("next",t,a,c)}),(function(t){i("throw",t,a,c)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return i("throw",t,a,c)}))}c(l.arg)}var o;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){i(t,r,e,n)}))}return o=o?o.then(n,n):n()}})}function E(t,e,r){var n="suspendedStart";return function(i,o){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===i)throw o;return{value:void 0,done:!0}}for(r.method=i,r.arg=o;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===d)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=s(t,e,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===d)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var i=s(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,d;var o=i.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function C(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function I(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(C,this),this.reset(!0)}function L(t){if(t){var e=t[o];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:Z}}function Z(){return{value:void 0,done:!0}}return f.prototype=p,n(_,"constructor",{value:p,configurable:!0}),n(p,"constructor",{value:f,configurable:!0}),f.displayName=l(p,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,p):(t.__proto__=p,l(t,c,"GeneratorFunction")),t.prototype=Object.create(_),t},t.awrap=function(t){return{__await:t}},g(b.prototype),l(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,i,o){void 0===o&&(o=Promise);var a=new b(u(e,r,n,i),o);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(_),l(_,c,"Generator"),l(_,o,(function(){return this})),l(_,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=L,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var i=this.tryEntries.length-1;i>=0;--i){var o=this.tryEntries[i],a=o.completion;if("root"===o.tryLoc)return n("end");if(o.tryLoc<=this.prev){var c=r.call(o,"catchLoc"),l=r.call(o,"finallyLoc");if(c&&l){if(this.prev<o.catchLoc)return n(o.catchLoc,!0);if(this.prev<o.finallyLoc)return n(o.finallyLoc)}else if(c){if(this.prev<o.catchLoc)return n(o.catchLoc,!0)}else{if(!l)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return n(o.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var i=n.arg;I(r)}return i}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:L(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function w(t,e,r,n,i,o,a){try{var c=t[o](a),l=c.value}catch(t){return void r(t)}c.done?e(l):Promise.resolve(l).then(n,i)}function L(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,i,o,a,c=[],l=!0,u=!1;try{if(o=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=o.call(r)).done)&&(c.push(n.value),c.length!==e);l=!0);}catch(t){u=!0,i=t}finally{try{if(!l&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw i}}return c}}(t,e)||Z(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(t,e){if(t){if("string"==typeof t)return P(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?P(t,e):void 0}}function P(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var A=function(t){var e=t.icon,r=t.setSelectedIcons,n=t.selectedIcons,a=L((0,C.useState)(Boolean(e.published)),2),c=a[0],u=a[1],s=(0,E.hC)(),d=n.some((function(t){return t.id===e.id}));return(0,I.tZ)(y.Z,{children:(0,I.BX)("div",{css:D.itemWrapper,children:[(0,I.tZ)("div",{css:D.thumbWrapper,children:(0,I.tZ)("img",{src:e.thumb,alt:e.name})}),(0,I.BX)("div",{css:D.footer,children:[(0,I.tZ)("h6",{children:e.title}),s.isLoading?(0,I.tZ)(o.ZP,{size:20}):(0,I.tZ)(l.Z,{checked:c,onChange:function(){var t,r=(t=S().mark((function t(r){return S().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,s.mutateAsync({id:e.id,status:r?1:0});case 2:u(!c);case 3:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,i){var o=t.apply(e,r);function a(t){w(o,n,i,a,c,"next",t)}function c(t){w(o,n,i,a,c,"throw",t)}a(void 0)}))});return function(t){return r.apply(this,arguments)}}()})]}),(0,I.tZ)("div",{css:D.thumbOverlay,"data-selected":d,"data-thumb-overlay":!0,children:(0,I.tZ)("div",{css:D.checkboxWrapperCss,children:(0,I.tZ)(i.Z,{checked:n.some((function(t){return t.id===e.id})),onChange:function(t){var i;r(t?[].concat(function(t){if(Array.isArray(t))return P(t)}(i=n)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(i)||Z(i)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[e]):n.filter((function(t){return t.id!==e.id})))}})})})]})},e.id)};const x=function(){var t,e,r,o,l=(0,v.$)(),h=(0,C.useRef)(null),f=L((0,C.useState)([]),2),p=f[0],y=f[1],T=(0,E.uw)(),S=(0,E.NZ)(),w=(0,E.Ap)();return O.Eu?(0,I.BX)(s.Z,{children:[(0,I.tZ)(d.Z,{title:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_PAGE_TITLE"),subtitle:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_PAGE_SUB_TITLE"),action:(0,I.tZ)(n.Z,{icon:(0,I.tZ)(c.Z,{name:"upload"}),disabled:!0,children:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_UPLOAD_ICON")})}),(0,I.tZ)(u.Z,{children:(0,I.tZ)(m.Z,{emptyStateImage:b,imageAltText:"upgrade to pro",title:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_LIBRARY"),content:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_LIBRARY_CONTENT"),action:(0,I.tZ)(a.Z,{}),orientation:"vertical",customCss:D.proBannerContentCss})})]}):(0,I.BX)(s.Z,{children:[(0,I.tZ)(d.Z,{title:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_PAGE_TITLE"),subtitle:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_PAGE_SUB_TITLE"),action:(0,I.BX)(I.HY,{children:[(0,I.tZ)(n.Z,{icon:(0,I.tZ)(c.Z,{name:"upload"}),onClick:function(){var t;return null===(t=h.current)||void 0===t?void 0:t.click()},loading:w.isLoading,children:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_UPLOAD_ICON")}),(0,I.tZ)("input",{ref:h,type:"file","aria-hidden":"true",hidden:!0,onChange:function(t){var e,r=null===(e=t.target.files)||void 0===e?void 0:e[0];r&&w.mutate(r)}})]})}),(0,I.tZ)(u.Z,{children:(0,I.tZ)(_.Z,{query:T,children:(null!==(t=null===(e=T.data)||void 0===e?void 0:e.length)&&void 0!==t?t:0)>0?(0,I.BX)(I.HY,{children:[(0,I.BX)("div",{css:D.deleteWrapper,children:[(0,I.tZ)(i.Z,{label:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_SELECT_ALL"),checked:p.length===(null===(r=T.data)||void 0===r?void 0:r.length),onChange:function(){T.data&&(p.length===T.data.length?y([]):y(T.data))}}),p.length>0&&(0,I.tZ)(n.Z,{icon:(0,I.tZ)(c.Z,{name:"trash"}),variant:"error",onClick:function(){confirm(l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_DELETE_CONFIRMATION"))&&(S.mutate(p.map((function(t){return t.id}))),y([]))},loading:S.isLoading,children:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_DELETE_SELECTED")})]}),(0,I.tZ)("div",{css:D.wrapper,children:null===(o=T.data)||void 0===o?void 0:o.map((function(t){return(0,I.tZ)(A,{icon:t,setSelectedIcons:y,selectedIcons:p},t.id)}))})]}):(0,I.tZ)("div",{css:D.emptyStateWrapper,children:(0,I.tZ)(m.Z,{orientation:"vertical",emptyStateImage:g,imageAltText:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_EMPTY_STATE_TITLE"),title:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_EMPTY_STATE_TITLE"),content:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_EMPTY_STATE_CONTENT"),action:(0,I.tZ)(n.Z,{icon:(0,I.tZ)(c.Z,{name:"upload"}),onClick:function(){var t;return null===(t=h.current)||void 0===t?void 0:t.click()},loading:w.isLoading,children:l("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_UPLOAD_ICON")})})})})})]})};var D={emptyStateWrapper:(0,p.iv)("margin-top:",h.W0[72],";;label:emptyStateWrapper;"),deleteWrapper:(0,p.iv)("display:flex;justify-content:space-between;align-items:center;height:",h.W0[32],";;label:deleteWrapper;"),wrapper:(0,p.iv)("display:grid;grid-template-columns:repeat(4, 1fr);gap:",h.W0[32],";padding:",h.W0[24]," 0;;label:wrapper;"),itemWrapper:(0,p.iv)("position:relative;border-radius:",h.E0[5],";overflow:hidden;;label:itemWrapper;"),thumbWrapper:{name:"fgdz63-thumbWrapper",styles:"&:hover~[data-thumb-overlay]{visibility:visible;opacity:1;}img{width:100%;};label:thumbWrapper;"},thumbOverlay:(0,p.iv)("position:absolute;inset:0;background-color:",h.qo.alternate.backdrop,";display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:opacity 0.3s ease;z-index:",h.W5.positive,";&[data-selected='true']{visibility:visible;opacity:1;}&:hover{visibility:visible;opacity:1;};label:thumbOverlay;"),footer:(0,p.iv)("display:flex;justify-content:space-between;padding:",h.W0[10]," ",h.W0[16],";h6{",f.c.heading6("medium"),";line-height:",h.Nv[20],";};label:footer;"),proBannerContentCss:(0,p.iv)("padding:",h.W0[12],";;label:proBannerContentCss;"),checkboxWrapperCss:(0,p.iv)("position:absolute;top:",h.W0[8],";left:",h.W0[8],";z-index:",h.W5.positive,";;label:checkboxWrapperCss;")}}}]);PKCA#]��i���^components/com_sppagebuilder/assets/editor/dist/js/850.afcb12bdb6a46d25767b.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]8M���$�$Rcomponents/com_sppagebuilder/assets/editor/dist/js/245.2173dc39db785787996a.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[245],{4245:(e,t,r)=>{r.r(t),r.d(t,{default:()=>C});var n=r(3871),o=r(935),i=r(288),a=r(3254),l=r(8122),c=r(5350),s=r(824),_=r(4185),O=r(917),p=r(36),u=r(802),E=r(4411),f=r(1234),d=r(3425),I=r(2328),y=r(7839),m=r(1921),T=r(7602),g=r(6486),b=r(7294),S=r(7536),P=r(5944);function G(e){return G="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},G(e)}function R(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?R(Object(r),!0).forEach((function(t){h(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):R(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function h(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==G(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==G(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===G(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function L(e,t){if(e){if("string"==typeof e)return A(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?A(e,t):void 0}}function A(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var D="\n<div>\n <p>".concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_TITLE"),":</p>\n\n <ol>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_1"),' <a href="https://developers.google.com/fonts/docs/developer_api" target="_blank" rel="nofollow noreferrer">https://developers.google.com/fonts/docs/developer_api</a></li>\n <li>').concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_2",{key:'<strong>"'.concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_GET_A_KEY"),'"</strong>')}),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_3",{key:'<strong>"'.concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_GET_A_KEY"),'"</strong>')}),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_4"),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_5",{showKey:'<strong>"'.concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_SHOW_A_KEY"),'"</strong>')}),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_6",{steps:'<strong>"'.concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_STEPS"),'"</strong>')}),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_7",{apiKey:'<strong>"'.concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_GOOGLE_FONT_API_KEY"),'"</strong>')}),"</li>\n <li>").concat((0,f.O)("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INSTRUCTION_8"),"</li>\n </ol>\n</div>\n");const C=function(){var e,t,r,s=(0,f.$)(),_=(t=(0,b.useState)([]),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,s=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){s=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,r)||L(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),O=_[0],m=_[1],G=(0,u.O)({defaultValues:{search:"",filter:""}}),R=G.watch(),h=R.search,C=R.filter,N=(0,p.N)(h),M=(0,y.Sq)({search:N,category:C}),W=(0,E.Z)(),B=W.intersectionEntry,x=W.intersectionElementRef,w=(0,I.v)((function(e){return e.appConfig}));(0,b.useEffect)((function(){null!=B&&B.isIntersecting&&M.fetchNextPage()}),[null==B?void 0:B.isIntersecting,M]);var Z=(0,b.useMemo)((function(){var e,t;return null!==(e=null===(t=M.data)||void 0===t?void 0:t.pages.flatMap((function(e){return e.results})))&&void 0!==e?e:[]}),[null===(e=M.data)||void 0===e?void 0:e.pages]);return w.has_google_font_api_key?!(0,T.$K)(M.data)&&(0,T.$K)(M.error)?(0,P.tZ)(d.Z,{orientation:"vertical",title:M.error.message,content:"ERR_BAD_REQUEST"===M.error.code?D:"",customCss:U.emptyStateCustom,errorMessage:s("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_INVALID_API_KEY")}):(0,P.BX)(P.HY,{children:[(0,P.BX)("div",{css:U.filterWrapper,children:[(0,P.tZ)("div",{css:U.textInputWrapper,children:(0,P.tZ)(S.Qr,{control:G.control,name:"search",render:function(e){return(0,P.tZ)(c.Z,v(v({},e),{},{variant:"search",placeholder:s("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_SEARCH_PLACEHOLDER"),isClearable:!0}))}})}),(0,P.tZ)("div",{css:U.selectWrapper,children:(0,P.tZ)(S.Qr,{control:G.control,name:"filter",render:function(e){return(0,P.tZ)(l.Z,v(v({},e),{},{options:w.google_font_categories,onChange:function(e){return console.log(e)},placeholder:s("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_CATEGORIES_PLACEHOLDER"),isClearable:!0}))}})})]}),(0,P.BX)("div",{css:U.topPanel,children:[(0,P.tZ)(i.Z,{routes:[{link:null,text:s("COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_ALL_ITEMS")},{link:null,text:s("COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_GOOGLE_FONTS")}],onFilterChange:g.noop}),O.length>0&&(0,P.BX)("div",{css:U.topPanelActionsWrapper,children:[(0,P.tZ)("p",{children:s(O.length>1?"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEMS_SELECTED":"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEM_SELECTED",{numberOfItems:O.length})}),(0,P.tZ)("div",{children:(0,P.tZ)(n.Z,{variant:"primary",onClick:function(){console.log("install google font")},children:s("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_BUTTON_TEXT_INSTALL")})})]})]}),(0,P.BX)("div",{css:U.innerWrapper,children:[M.isLoading?(0,P.tZ)(o.g4,{}):(0,P.tZ)("div",{css:U.fontsWrapper,children:Z.map((function(e){return(0,P.tZ)(a.Z,{type:"google",font:{type:"google",family:e.family,variants:e.variants,installed_variants:e.installed_variants,category:"",is_installed:!1},isChecked:O.includes(e.family),onChange:function(){return m((function(t){return t.includes(e.family)?t.filter((function(t){return t!==e.family})):[].concat(function(e){return function(e){if(Array.isArray(e))return A(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||L(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t),[e.family])}))}},e.family)}))}),(0,P.tZ)("div",{ref:x,css:U.infiniteLoader({isVisible:!M.isLoading&&M.hasNextPage}),children:(0,P.tZ)(o.ZP,{})})]})]}):(0,P.tZ)(d.Z,{orientation:"vertical",title:s("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_ADD_API_KEY"),content:D,customCss:U.emptyStateCustom,errorMessage:s("COM_SPPAGEBUILDER_EDITOR_GOOGLE_FONT_API_KEY_MISSING")})};var N={name:"1tbj5j9-infiniteLoader",styles:"display:block;label:infiniteLoader;"},U={rightSideWrapper:{name:"idves2-rightSideWrapper",styles:"width:100%;display:flex;flex-direction:column;label:rightSideWrapper;"},emptyStateCustom:(0,O.iv)("text-align:left;margin-top:",s.W0[20],";ol{list-style-type:decimal;text-align:left;list-style-position:inside;li{",_.c.body("medium"),";color:",s.qo.text.neutral,";margin-bottom:",s.W0[8],";}}span{font-weight:",s.Ue.bold,";}a{color:",s.qo.text.primary,";text-decoration:underline;}p{",_.c.body("medium"),";color:",s.qo.text.neutral,";margin-bottom:",s.W0[16],";};label:emptyStateCustom;"),innerWrapper:(0,O.iv)(m.iZ.overflowYAuto,";max-height:calc(90vh - 180px);padding-right:",s.W0[24],";;label:innerWrapper;"),fontsWrapper:(0,O.iv)("display:grid;grid-template-columns:repeat(5, minmax(120px, 1fr));gap:",s.W0[24],";",s.Uo.tablet,"{grid-template-columns:repeat(4, minmax(120px, 1fr));};label:fontsWrapper;"),filterWrapper:(0,O.iv)("display:flex;justify-content:center;gap:",s.W0[16],";;label:filterWrapper;"),textInputWrapper:{name:"1r9fuqm-textInputWrapper",styles:"flex:1;label:textInputWrapper;"},selectWrapper:{name:"1u54jb-selectWrapper",styles:"width:160px;label:selectWrapper;"},topPanel:(0,O.iv)("display:flex;justify-content:space-between;align-items:center;gap:",s.W0[8],";height:32px;margin-top:",s.W0[32],";margin-bottom:",s.W0[20],";;label:topPanel;"),topPanelActionsWrapper:(0,O.iv)("display:flex;justify-content:center;gap:",s.W0[16],";p{",_.c.body("medium"),";margin:auto 0;};label:topPanelActionsWrapper;"),infiniteLoader:function(e){var t=e.isVisible,r=void 0!==t&&t;return(0,O.iv)("display:none;text-align:center;height:40px;margin-top:",s.W0[16],";",r&&N,";;label:infiniteLoader;")}}}}]);PKCA#]��i���^components/com_sppagebuilder/assets/editor/dist/js/850.d11644325d7e39e4733f.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]�VÂ�M!�M!@components/com_sppagebuilder/assets/editor/dist/js/bundle.min.jsnu�[���/*! For license information please see bundle.min.js.LICENSE.txt */ (()=>{var e,t,r,n,o,i={618:(e,t,r)=>{"use strict";r.d(t,{$x:()=>B,fK:()=>q,Bw:()=>N,J3:()=>G,DI:()=>W,Ql:()=>U,n5:()=>F,U$:()=>H,i4:()=>M,ki:()=>k});var n=r(824),o=r(4185),i=r(917),a=r(7294);function l(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function c(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return function(e){var r=!1,n=t.map((function(t){var n=l(t,e);return r||"function"!=typeof n||(r=!0),n}));if(r)return function(){for(var e=0;e<n.length;e++){var r=n[e];"function"==typeof r?r():l(t[e],null)}}}}var u=r(1954),s=r(1921),d=r(7602),p=r(7264),f=r(5944);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}var h=["children","className","value","onSelect","disabled"],b=["children","className","disabled"],y=["children","placeholder","className"],m=["children","className","width"],g=["children","className"],E=["children","className"],O=["children","value","className"],_=["children","className"],w=["className","placeholder"],I=["children","className"];function S(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function C(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?S(Object(r),!0).forEach((function(t){x(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):S(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function x(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==v(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===v(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function P(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||T(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function L(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function A(e){return function(e){if(Array.isArray(e))return D(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||T(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){if(e){if("string"==typeof e)return D(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?D(e,t):void 0}}function D(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Z=a.createContext({isOpen:!1,setIsOpen:d.ZT,selectedValue:null,setSelectedValue:d.ZT,selectedLabel:null,setSelectedLabel:d.ZT,onSelect:d.ZT,position:{top:0,left:0},triggerWidth:0,disabled:!1}),R=function(){return a.useContext(Z)};function j(e,t){var r=[];return a.Children.forEach(e,(function(e){a.isValidElement(e)&&(function(e,t){return e.type===t||"__EMOTION_TYPE_PLEASE_DO_NOT_USE__"in e.props&&(null===(r=e.props.__EMOTION_TYPE_PLEASE_DO_NOT_USE__)||void 0===r?void 0:r.displayName)===t.displayName;var r}(e,t)&&r.push(e),e.props.children&&(r=[].concat(A(r),A(j(e.props.children,t)))))})),r}var B=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=e.value,i=e.onSelect,l=e.disabled,c=L(e,h),s=P((0,a.useState)(!1),2),p=s[0],v=s[1],b=P((0,a.useState)(null!=o?o:null),2),y=b[0],m=b[1],g=P((0,a.useState)(null),2),E=g[0],O=g[1],_=(0,u.l)({isOpen:p,isDropdown:!0}),w=_.triggerRef,I=_.popoverRef,S=_.position,x=_.triggerWidth;return(0,a.useEffect)((function(){if((0,d.$K)(o)&&r){var e=j(r,U);e.length&&a.Children.forEach(e,(function(e){a.isValidElement(e)&&e.props.value===o&&O(e.props.children)}))}}),[o,r]),(0,a.useEffect)((function(){m(null!=o?o:null)}),[o]),(0,f.tZ)(Z.Provider,{value:{isOpen:p,setIsOpen:v,selectedValue:y,setSelectedValue:m,selectedLabel:E,setSelectedLabel:O,triggerRef:w,popoverRef:I,position:S,triggerWidth:x,disabled:l,onSelect:i},children:(0,f.tZ)("div",C(C({ref:t,className:n,css:z.selectWrapper},c),{},{children:r}))})})),M=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=e.disabled,i=void 0!==o&&o,a=L(e,b),l=R(),u=l.isOpen,s=l.setIsOpen,d=l.triggerRef;return(0,f.BX)("button",C(C({type:"button",ref:c(t,d),className:n,onClick:function(){return s(!u)},css:z.selectTrigger(u,i),disabled:i},a),{},{children:[r,(0,f.tZ)(p.Z,{name:"chevronDown",width:20,height:20,"data-arrow-open":u})]}))})),k=a.forwardRef((function(e,t){var r=e.children,n=e.placeholder,o=e.className,i=L(e,y),a=R(),l=a.selectedLabel,c=a.selectedValue,u=(0,d.$K)(r),s=null;return u&&c&&(s="function"==typeof r?r(l):r),(0,f.tZ)("div",C(C({ref:t,className:o,css:z.selectValue,"data-placeholder":(0,d.$K)(l)?"false":"true"},i),{},{children:(0,d.$K)(c)?u?s:l:n}))})),N=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=e.width,i=L(e,m),a=R(),l=a.isOpen,s=a.setIsOpen,p=a.position,v=a.popoverRef,h=a.triggerWidth,b=void 0===h?180:h;return(0,f.tZ)(u.h,{isOpen:l,onClickOutside:function(){return s(!1)},children:(0,f.tZ)("div",C(C({ref:c(t,v),className:n,css:[z.selectContent,{top:null==p?void 0:p.top,left:null==p?void 0:p.left,maxWidth:(0,d.$K)(o)?o:b},";label:SelectContent;"]},i),{},{children:r}))})})),G=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=L(e,g);return(0,f.tZ)("div",C(C({ref:t,className:n,css:z.scroller},o),{},{children:r}))})),W=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=L(e,E);return(0,f.tZ)("div",C(C({ref:t,className:n},o),{},{children:r}))})),U=a.forwardRef((function(e,t){var r=e.children,n=e.value,o=e.className,i=L(e,O),a=R(),l=a.selectedValue,c=a.setSelectedValue,u=a.setIsOpen,s=a.setSelectedLabel,d=a.onSelect,p=l===n;return(0,f.tZ)("button",C(C({type:"button",ref:t,className:o,css:z.selectItem(p),onClick:function(){c(n),s(r),null==d||d(n),u(!1)}},i),{},{children:r}))})),F=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=L(e,_);return(0,f.tZ)("div",C(C({ref:t,className:n,css:z.selectLabel},o),{},{children:(0,f.tZ)("div",{children:r})}))})),H=a.forwardRef((function(e,t){var r=e.className,n=(e.placeholder,L(e,w));return(0,f.tZ)("div",C({ref:t,className:r,css:z.selectSeparator},n))})),q=a.forwardRef((function(e,t){var r=e.children,n=e.className,o=L(e,I),i=R(),a=i.selectedValue,l=i.setSelectedValue,c=i.setSelectedLabel,u=i.setIsOpen;return(0,f.BX)("button",C(C({type:"button",ref:t,className:n,css:z.selectClear,disabled:!(0,d.$K)(a),onClick:function(){l(null),c(null),u(!1)}},o),{},{children:[(0,f.tZ)(p.Z,{name:"recycleAlt",width:16,height:16}),r]}))}));B.displayName="AdvancedSelect",M.displayName="AdvancedSelect.SelectTrigger",k.displayName="AdvancedSelect.SelectValue",N.displayName="AdvancedSelect.SelectContent",G.displayName="AdvancedSelect.SelectContentScroller",W.displayName="AdvancedSelect.SelectGroup",F.displayName="AdvancedSelect.SelectLabel",U.displayName="AdvancedSelect.SelectItem",q.displayName="AdvancedSelect.SelectClear",H.displayName="AdvancedSelect.SelectSeparator";var V={name:"1nbqis0-selectTrigger",styles:"cursor:not-allowed;opacity:0.5;label:selectTrigger;"},z={selectWrapper:{name:"1fekbq5-selectWrapper",styles:"width:100%;label:selectWrapper;"},selectTrigger:function(e,t){return(0,i.iv)(s.iZ.resetButton,";display:flex;align-items:center;justify-content:space-between;border:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[6]," ",n.W0[12],";border-radius:",n.E0[6],";cursor:pointer;background-color:",n.qo.background.white,";width:100%;&>[data-arrow-open]{color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;}[data-arrow-open='true']{transform:rotate(180deg);}",e&&(0,i.iv)("box-shadow:",n.AF.outline,";;label:selectTrigger;")," ",t&&V,";;label:selectTrigger;")},selectValue:(0,i.iv)("width:100%;",o.c.body(),";color:",n.qo.text.default,";display:flex;align-items:center;gap:",n.W0[4],";",s.iZ.textEllipsis,";;label:selectValue;"),selectContent:(0,i.iv)("display:flex;flex-direction:column;width:100%;position:absolute;background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";box-shadow:",n.AF.popover,";padding-block:",n.W0[4],";;label:selectContent;"),scroller:{name:"1a271a5-scroller",styles:"max-height:calc(100vh - 100px);overflow-y:auto;label:scroller;"},selectLabel:(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";margin-block:",n.W0[4],";&>div{",o.c.body(),";color:",n.qo.text.hints,";display:flex;align-items:center;pointer-events:none;background-color:",n.qo.background.neutral,";border-radius:",n.E0[4],";gap:",n.W0[4],";padding:",n.W0[4]," ",n.W0[8],";};label:selectLabel;"),selectItem:function(e){return(0,i.iv)(s.iZ.resetButton,";padding:",n.W0[6]," ",n.W0[12],";width:100%;text-align:left;cursor:pointer;",o.c.body(),";color:",n.qo.text.default,";transition:background-color 0.3s ease-in-out,color 0.3s ease-in-out;position:relative;display:flex;align-items:center;gap:",n.W0[8],";",e&&(0,i.iv)("background-color:",n.qo.background.primary,";&::before{content:'';position:absolute;top:0;left:0;height:100%;width:2px;border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;background-color:",n.qo.action.primary.default,";color:",n.qo.text.primary,";};label:selectItem;")," &:hover{background-color:",n.qo.background.primary,";color:",n.qo.text.primary,";}&:disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;};label:selectItem;")},selectSeparator:(0,i.iv)("width:100%;height:1px;background-color:",n.qo.stroke.neutral,";;label:selectSeparator;"),selectClear:(0,i.iv)(s.iZ.resetButton,";",o.c.caption(),";display:flex;align-items:center;gap:",n.W0[8],";padding:",n.W0[8]," ",n.W0[12]," ",n.W0[4]," ",n.W0[12],";cursor:pointer;color:",n.qo.text.primary,";border-top:1px solid ",n.qo.stroke.neutral,";justify-content:center;&>svg{flex-shrink:0;}&:disabled{cursor:not-allowed;color:",n.qo.text.disabled,";};label:selectClear;")}},6626:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var n=r(824),o=r(4185),i=r(917),a=r(5944);const l=function(e){var t=e.variation,r=void 0===t?"default":t,n=e.badgeCss,o=e.children;return(0,a.tZ)("div",{css:[c.wrapper({variation:r}),n,";label:Badge;"],children:o})};var c={wrapper:function(e){var t=e.variation,r=void 0===t?"default":t;return(0,i.iv)(o.c.body(),";padding:",n.W0[2]," ",n.W0[12],";width:fit-content;border-radius:",n.E0[14],";background-color:",n.qo.background.primary,";color:",n.qo.text.default,";","success"===r&&(0,i.iv)("background-color:",n.qo.background.success,";color:",n.qo.text.success,";;label:wrapper;")," ","error"===r&&(0,i.iv)("background-color:",n.qo.background.error,";color:",n.qo.text.error,";;label:wrapper;"),";;label:wrapper;")}}},3871:(e,t,r)=>{"use strict";r.d(t,{Z:()=>h});var n=r(824),o=r(4185),i=r(917),a=r(1921),l=r(7294),c=r(935),u=r(5944);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}var d=["type","children","variant","icon","iconPosition","loading","disabled","tabIndex","onClick","buttonCss","buttonContentCss"];function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==s(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===s(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const h=l.forwardRef((function(e,t){var r=e.type,n=void 0===r?"button":r,o=e.children,i=e.variant,a=void 0===i?"primary":i,l=e.icon,s=e.iconPosition,p=void 0===s?"left":s,v=e.loading,h=void 0!==v&&v,b=e.disabled,y=void 0!==b&&b,g=e.tabIndex,E=e.onClick,O=e.buttonCss,_=e.buttonContentCss,w=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,d);return(0,u.BX)("button",f(f({type:n,ref:t,css:[m.button(a,h,y),O,";label:Button;"],onClick:E,tabIndex:g,disabled:y},w),{},{children:[h&&!y&&(0,u.tZ)("span",{css:m.spinner,children:(0,u.tZ)(c.ZP,{})}),(0,u.BX)("span",{css:[m.buttonContent(!!l,h,y),_,";label:Button;"],children:[l&&"left"===p&&l,o,l&&"right"===p&&l]})]}))}));var b={name:"1t5pu0q-buttonContent",styles:"color:transparent;label:buttonContent;"},y={name:"6t5tt6-button",styles:"pointer-events:none;label:button;"},m={button:function(e,t,r){return(0,i.iv)(a.iZ.resetButton,";display:inline-block;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:0;padding:",n.W0[6]," ",n.W0[16],";border-radius:",n.E0[6],";z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;","primary"===e&&(0,i.iv)("background-color:",n.qo.action.primary.default,";color:",n.qo.base.white,";&:hover{background-color:",n.qo.action.primary.hover,";}&:active{background-color:",n.qo.action.primary.focus,";}",(r||t)&&(0,i.iv)("background-color:",n.qo.action.primary.disabled,";color:",n.qo.text.disabled,";svg{color:",n.qo.icon.disabled,";};label:button;"),";;label:button;")," ","secondary"===e&&(0,i.iv)("color:",n.qo.text.default,";font-weight:",n.Ue.regular,";line-height:",n.Nv[18],";border:1px solid ",n.qo.action.outline.default,";transition:border-color 0.2s ease;background-color:",n.qo.background.white,";svg{color:",n.qo.icon.default,";}&:hover{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.hover,";background-color:",n.qo.background.white,";svg{color:",n.qo.icon.primary,";}}&:active{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.focus,";}",(r||t)&&(0,i.iv)("color:",n.qo.text.disabled,";border-color:",n.qo.action.outline.disabled,";svg{color:inherit;};label:button;"),";;label:button;")," ","error"===e&&(0,i.iv)("background-color:",n.qo.action.error.default,";color:",n.qo.base.white,";&:hover{background-color:",n.qo.action.error.hover,";}&:active{background-color:",n.qo.action.error.focus,";}",(r||t)&&(0,i.iv)("background-color:",n.qo.action.error.disabled,";color:",n.qo.text.white,";;label:button;"),";;label:button;")," ","text"===e&&(0,i.iv)("color:",n.qo.text.default,";font-weight:",n.Ue.regular,";svg{color:",n.qo.icon.default,";}&:hover{color:",n.qo.text.primary,";svg{color:",n.qo.icon.primary,";}}&:active{color:",n.qo.text.primary,";}",(r||t)&&(0,i.iv)("color:",n.qo.text.disabled,";svg{color:",n.qo.icon.disabled,";};label:button;"),";;label:button;")," ",(r||t)&&y,";;label:button;")},buttonContent:function(e,t,r){return(0,i.iv)("display:flex;align-items:center;",e&&(0,i.iv)("gap:",n.W0[8],";;label:buttonContent;")," ",t&&!r&&b,";;label:buttonContent;")},spinner:{name:"k6liae-spinner",styles:"position:absolute;visibility:visible;display:flex;left:50%;top:50%;transform:translateX(-50%) translateY(-50%);label:spinner;"}}},9085:(e,t,r)=>{"use strict";r.d(t,{Z:()=>p});var n=r(824),o=r(917),i=r(7602),a=r(7294),l=r(5944),c=a.forwardRef((function(e,t){var r=e.id,n=void 0===r?(0,i.x0)():r,o=e.name,a=e.labelCss,c=e.inputCss,u=e.label,s=void 0===u?"":u,p=e.value,f=e.onChange,v=e.onBlur,h=e.checked,b=e.disabled,y=void 0!==b&&b,m=e.isIndeterminate,g=void 0!==m&&m;return(0,l.BX)("label",{htmlFor:n,css:[d.container,a,";label:Checkbox;"],children:[(0,l.tZ)("input",{ref:t,id:n,name:o,type:"checkbox",value:p,checked:!!h,disabled:y,"aria-invalid":e["aria-invalid"],onChange:function(e){f&&f(!(!g||h)||e.target.checked,e)},onBlur:v,css:[c,d.checkbox({hasLabel:!!s,isIndeterminate:g,disabled:y,isChecked:!!h}),";label:Checkbox;"]}),(0,l.tZ)("span",{}),s]})})),u={name:"1h0moe-checkbox",styles:"background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='2' fill='none'%3E%3Crect width='10' height='1.5' y='.25' fill='%23fff' rx='.75'/%3E%3C/svg%3E\");background-size:10px;label:checkbox;"},s={name:"ogyiao-checkbox",styles:"background-image:url(\"data:image/svg+xml,%3Csvg width='10' height='10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.99 9.241a.685.685 0 0 0 .6-.317l4.59-7.149a.793.793 0 0 0 .146-.43C9.326 1 9.082.76 8.73.76c-.239 0-.385.088-.532.317L3.965 7.791 1.792 5.003c-.146-.19-.298-.269-.513-.269-.351 0-.605.25-.605.591 0 .152.054.298.18.45l2.53 3.154c.17.215.351.312.605.312Z' fill='%23fff'/%3E%3C/svg%3E\");background-size:10px 10px;label:checkbox;"},d={container:{name:"av2t4k-container",styles:"display:flex;align-items:center;cursor:pointer;user-select:none;label:container;"},checkbox:function(e){var t=e.hasLabel,r=e.isIndeterminate,i=e.disabled,a=e.isChecked;return(0,o.iv)("position:absolute;opacity:0;height:0;width:0;&+span{position:relative;cursor:pointer;font-size:",n.JB[14],";display:inline-flex;align-items:center;",t&&(0,o.iv)("margin-right:",n.W0[8],";;label:checkbox;")," &:hover::before{border:1px solid ",n.qo.stroke.primary,";}}&+span::before{content:'';background-color:",n.qo.base.white,";border:1px solid ",n.qo.stroke.disabled,";border-radius:3px;box-shadow:",n.AF.button,";width:18px;height:18px;",i&&(0,o.iv)("background-color:",n.qo.icon.disabled,";;label:checkbox;")," ",(a||r)&&(0,o.iv)("background-repeat:no-repeat;background-position:center center;background-color:",n.qo.base.primary,";border:1px solid ",n.qo.stroke.primary,";;label:checkbox;")," ",a&&s," ",r&&!a&&u,";};label:checkbox;")}};const p=c},8460:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(824),o=r(4185),i=r(917),a=r(1921),l=r(6486),c=r(7264),u=r(5944);const s=function(e){var t=e.label,r=e.onClick,n=void 0===r?l.noop:r,o=e.showIcon,i=void 0===o||o,a=e.compact,s=void 0!==a&&a,p=e.icon,f=void 0===p?(0,u.tZ)(c.Z,{name:"cross",width:12,height:12}):p;return(0,u.BX)("button",{css:d.wrapper({hasIcon:i,compact:s}),onClick:n,children:[(0,u.tZ)("div",{css:d.label,children:t}),i&&(0,u.tZ)("div",{css:d.iconWrapper,"data-icon-wrapper":!0,children:f})]})};var d={wrapper:function(e){var t=e.hasIcon,r=void 0!==t&&t,o=e.compact,l=void 0!==o&&o;return(0,i.iv)(a.iZ.resetButton,";background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",l?n.E0[4]:n.E0[24],";padding:",n.W0[4]," ",n.W0[8],";min-height:24px;transition:background-color 0.3s ease;",r&&(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[2],";padding:",n.W0[4]," ",n.W0[4]," ",n.W0[4]," ",n.W0[8],";;label:wrapper;")," :hover{background-color:",n.qo.background.hover,";[data-icon-wrapper]{background-color:",n.qo.background.white,";>svg{color:",n.qo.icon.hover,";}}};label:wrapper;")},label:(0,i.iv)(o.c.caption(),";;label:label;"),iconWrapper:(0,i.iv)("border-radius:",n.E0.circle,";transition:background-color 0.3s ease;height:16px;width:16px;text-align:center;display:flex;align-items:center;justify-content:center;svg{color:",n.qo.icon.default,";transition:color 0.3s ease;};label:iconWrapper;")}},487:(e,t,r)=>{"use strict";r.d(t,{Z:()=>u});var n=r(824),o=r(4185),i=r(917),a=(r(7294),r(9655)),l=r(935),c=r(5944);const u=function(e){var t=e.href,r=e.target,n=void 0===r?"_self":r,o=e.children,i=e.variant,u=void 0===i?"primary":i,s=e.icon,d=e.iconPosition,f=void 0===d?"left":d,v=e.loading,h=void 0!==v&&v,b=e.disabled,y=void 0!==b&&b,m=e.tabIndex,g=e.buttonCss,E=e.buttonContentCss,O=e.replace,_=void 0!==O&&O;return(0,c.BX)(a.rU,{css:[p.button(u,h,y),g,";label:LinkButton;"],tabIndex:m,to:t,target:n,rel:"_blank"===n?"noopener noreferrer nofollow":"",replace:_,relative:"path",children:[h&&!y&&(0,c.tZ)("span",{css:p.spinner,children:(0,c.tZ)(l.ZP,{})}),(0,c.BX)("span",{css:[p.buttonContent(!!s,h,y),E,";label:LinkButton;"],children:[s&&"left"===f&&s,o,s&&"right"===f&&s]})]})};var s={name:"1t5pu0q-buttonContent",styles:"color:transparent;label:buttonContent;"},d={name:"6t5tt6-button",styles:"pointer-events:none;label:button;"},p={button:function(e,t,r){return(0,i.iv)("all:unset;display:inline-block;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:0;padding:",n.W0[6]," ",n.W0[16],";border-radius:",n.E0[6],";z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;&::before,&::after{content:''!important;all:unset!important;}","primary"===e&&(0,i.iv)("background-color:",n.qo.action.primary.default,";color:",n.qo.base.white,";&:hover{background-color:",n.qo.action.primary.hover,";color:",n.qo.text.white,";}&:active{background-color:",n.qo.action.primary.focus,";}",(r||t)&&(0,i.iv)("background-color:",n.qo.action.primary.disabled,";color:",n.qo.text.disabled,";;label:button;"),";;label:button;")," ","secondary"===e&&(0,i.iv)("color:",n.qo.text.default,";font-weight:",n.Ue.regular,";line-height:",n.Nv[18],";border:1px solid ",n.qo.action.outline.default,";transition:border-color 0.2s ease;svg{color:",n.qo.icon.primary,";}&:hover{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.hover,";}&:active{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.focus,";}",(r||t)&&(0,i.iv)("color:",n.qo.text.disabled,";border-color:",n.qo.action.outline.disabled,";svg{color:inherit;};label:button;"),";;label:button;")," ","text"===e&&(0,i.iv)("color:",n.qo.text.default,";font-weight:",n.Ue.regular,";&:hover{color:",n.qo.text.primary,";}&:active{color:",n.qo.text.primary,";}",(r||t)&&(0,i.iv)("color:",n.qo.text.disabled,";;label:button;"),";;label:button;")," ",(r||t)&&d,";;label:button;")},buttonContent:function(e,t,r){return(0,i.iv)("display:flex;align-items:center;",e&&(0,i.iv)("gap:",n.W0[4],";;label:buttonContent;")," ",t&&!r&&s,";;label:buttonContent;")},spinner:{name:"k6liae-spinner",styles:"position:absolute;visibility:visible;display:flex;left:50%;top:50%;transform:translateX(-50%) translateY(-50%);label:spinner;"}}},935:(e,t,r)=>{"use strict";r.d(t,{ZP:()=>h,fz:()=>f,g4:()=>v});var n,o,i=r(824),a=r(917),l=r(5944);function c(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}var u=(0,a.F4)(n||(n=c(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"]))),s=(0,a.F4)(o||(o=c(["\n 0% {\n stroke-dashoffset: 180;\n transform: rotate(0deg);\n }\n 50% {\n stroke-dashoffset: ",";\n transform: rotate(135deg);\n }\n 100% {\n stroke-dashoffset: 180;\n transform: rotate(360deg);\n }\n"])),45),d={fullscreen:(0,a.iv)("display:flex;align-items:center;justify-content:center;height:100vh;width:100vw;background-color:",i.qo.background.white,";;label:fullscreen;"),loadingOverlay:(0,a.iv)("position:absolute;top:0;bottom:0;right:0;left:0;display:flex;align-items:center;justify-content:center;background-color:",i.qo.background.white,";;label:loadingOverlay;"),loadingSection:{name:"1bcp2kg-loadingSection",styles:"width:100%;height:100px;display:flex;justify-content:center;align-items:center;label:loadingSection;"},svg:(0,a.iv)("animation:",u," 1.4s linear infinite;;label:svg;"),spinnerPath:(0,a.iv)("stroke-dasharray:180;stroke-dashoffset:0;transform-origin:center;animation:",s," 1.4s linear infinite;;label:spinnerPath;")},p=function(e){var t=e.size,r=void 0===t?30:t,n=e.color,o=void 0===n?i.qo.icon.disabled:n;return(0,l.tZ)("svg",{width:r,height:r,css:d.svg,viewBox:"0 0 86 86",xmlns:"http://www.w3.org/2000/svg",children:(0,l.tZ)("circle",{css:d.spinnerPath,fill:"none",stroke:o,strokeWidth:"6",strokeLinecap:"round",cx:"43",cy:"43",r:"30"})})},f=function(e){var t=e.backgroundStyleOverride;return(0,l.tZ)("div",{css:[d.loadingOverlay,t,";label:LoadingOverlay;"],children:(0,l.tZ)(p,{})})},v=function(){return(0,l.tZ)("div",{css:d.loadingSection,children:(0,l.tZ)(p,{})})};const h=p},3579:(e,t,r)=>{"use strict";r.d(t,{Z:()=>d});var n=r(824),o=r(4185),i=r(917),a=r(7602),l=r(7294),c=r(5944),u=l.forwardRef((function(e,t){var r=e.name,n=e.checked,o=e.readOnly,i=e.disabled,l=void 0!==i&&i,u=e.showRadioIcon,d=void 0!==u&&u,p=e.labelCss,f=e.inputCss,v=e.iconWrapperCss,h=e.label,b=void 0===h?"":h,y=e.icon,m=e.value,g=e.onChange,E=e.onBlur,O=(0,a.x0)();return(0,c.BX)("label",{htmlFor:O,css:[s.container({disabled:l}),p,";label:Radio;"],children:[(0,c.tZ)("input",{ref:t,id:O,name:r,type:"radio",checked:n,readOnly:o,value:m,disabled:l,onChange:g,onBlur:E,css:[s.radio({label:b,showRadioIcon:d}),f,";label:Radio;"]}),d&&(0,c.tZ)("span",{}),(0,c.tZ)("span",{css:v,children:y}),b]})})),s={container:function(e){var t=e.disabled,r=void 0!==t&&t;return(0,i.iv)(o.c.body(),";display:flex;align-items:center;cursor:pointer;user-select:none;",r&&(0,i.iv)("color:",n.qo.text.disabled,";;label:container;"),";;label:container;")},radio:function(e){var t=e.label,r=void 0===t?"":t,o=e.showRadioIcon,a=void 0!==o&&o;return(0,i.iv)("position:absolute;opacity:0;height:0;width:0;cursor:pointer;",a&&(0,i.iv)("&+span{position:relative;cursor:pointer;height:15px;width:15px;background-color:",n.qo.background.white,";border:2px solid ",n.qo.icon.disabled,";border-radius:100%;",r&&(0,i.iv)("margin-right:",n.W0[10],";;label:radio;"),";}&+span::before{content:'';position:absolute;left:",n.W0[2],";top:",n.W0[2],";background-color:",n.qo.background.white,";width:7px;height:7px;border-radius:100%;}&:checked+span{border-color:",n.qo.base.primary,";}&:checked+span::before{background-color:",n.qo.base.primary,";};label:radio;"),";;label:radio;")}};const d=u},9371:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var n=r(824),o=r(917),i=r(667),a=(r(6597),r(5944));const l=function(e){var t=e.value,r=e.onChange,n=e.min,o=e.max,l=e.disabled,u=void 0!==l&&l,s=e.rangeStyle,d=e.step;return(0,a.tZ)(i.Z,{value:t,onChange:function(e){"number"==typeof e&&r&&r(e)},min:Number(n),max:Number(o),disabled:u,css:[c.slider(u),s,";label:Range;"],step:d})};var c={slider:function(e){return(0,o.iv)("padding:",n.W0[6]," 0;min-width:80px;&.rc-slider-disabled{background-color:transparent;}.rc-slider-rail{height:3px;background-color:",n.qo.stroke.disabled,";border-radius:",n.E0[4],";}.rc-slider-track{height:3px;background-color:",n.qo.base.primary,";border-radius:",n.E0[4],";",e&&(0,o.iv)("background-color:",n.qo.text.disabled,";;label:slider;"),";}.rc-slider-handle{height:8px;width:8px;background-color:",n.qo.base.primary,";border-radius:",n.E0.circle,";border:1px solid ",n.qo.stroke.white,";box-shadow:0px 1px 2px rgba(2, 11, 83, 0.3);margin-top:-3px;opacity:1;",e&&(0,o.iv)("background-color:",n.qo.text.disabled,";;label:slider;"),";}.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging{box-shadow:0px 0px 2px 1px rgba(2, 11, 83, 0.3);border-color:#eff4fb;};label:slider;")}}},7264:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(917),o=r(7602),i=r(5944);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}var l=["name","width","height","style","noFill"];function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==a(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===a(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const s=function(e){var t=e.name,r=e.width,n=void 0===r?16:r,a=e.height,s=void 0===a?16:a,d=e.style,f=e.noFill,v=void 0!==f&&f,h=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,l),b=(0,o.q7)(t);return(0,o.$K)(b)?(0,i.tZ)("svg",function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){u(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({css:[{width:n,height:s},p.svg(v),d,";label:SVGIcon;"],xmlns:"http://www.w3.org/2000/svg",viewBox:b.viewBox,dangerouslySetInnerHTML:{__html:b.icon}},h)):null};var d={name:"p5egc1-svg",styles:"fill:none;label:svg;"},p={svg:function(e){return(0,n.iv)(e&&d,";;label:svg;")}}},7870:(e,t,r)=>{"use strict";r.d(t,{Z:()=>O});var n=r(824),o=r(4185),i=r(917),a=r(36),l=r(4411),c=r(1954),u=r(1234),s=r(1921),d=r(7602),p=r(7294),f=r(3871),v=r(935),h=r(7264),b=r(5944);function y(e){return function(e){if(Array.isArray(e))return E(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||g(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||g(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){if(e){if("string"==typeof e)return E(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?E(e,t):void 0}}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const O=function(e){var t=e.options,r=e.onChange,n=void 0===r?d.ZT:r,o=e.clearOption,i=void 0===o?d.ZT:o,s=e.label,g=e.placeholder,E=void 0===g?"":g,O=e.readOnly,_=e.isSearchable,w=void 0!==_&&_,I=e.isClearable,S=void 0===I||I,C=e.isInlineLabel,x=void 0!==C&&C,L=e.isFontWeight,A=void 0!==L&&L,T=e.value,D=e.caretSize,Z=void 0===D?20:D,R=e.infiniteScroll,j=void 0!==R&&R,B=e.wrapperStyle,M=e.inputCss,k=e.disabled,N=e.optionsStyleVariant,G=void 0===N?"regular":N,W=e.hasGroup,U=void 0!==W&&W,F=e.portalWidth,H=(0,u.$)(),q=(0,d.x0)(),V=m((0,p.useState)(""),2),z=V[0],X=V[1],K=m((0,p.useState)(""),2),$=K[0],Y=K[1],Q=m((0,p.useState)(!1),2),J=Q[0],ee=Q[1],te=m((0,p.useState)([]),2),re=te[0],ne=te[1],oe=(0,a.N)($);(0,p.useEffect)((function(){var e,r,n=null!==(e=null===(r=t.find((function(e){return String(e.value)===String(null==T?void 0:T.value)})))||void 0===r?void 0:r.label)&&void 0!==e?e:"";X(n)}),[t,T]);var ie=(0,p.useMemo)((function(){return ne([]),w?t.filter((function(e){return e.label.toLowerCase().startsWith(oe.toLowerCase())})):t}),[oe,w,t]),ae=(0,c.l)({isOpen:J,isDropdown:!0}),le=ae.triggerRef,ce=ae.triggerWidth,ue=ae.position,se=ae.popoverRef,de=(0,l.Z)(),pe=de.intersectionEntry,fe=de.intersectionElementRef,ve=ie.length>re.length;return(0,p.useEffect)((function(){if(j){if(null!=pe&&pe.isIntersecting&&ve){var e=re.length,t=e+20;ne((function(r){return[].concat(y(r),y(ie.slice(e,t)))}))}}else ne(ie)}),[ie,null==pe?void 0:pe.isIntersecting]),(0,b.BX)("div",{css:[P.mainWrapper,B,";label:Select;"],children:[(0,b.BX)("div",{css:P.inputLabelWrapper(x),ref:le,children:[!!s&&(0,b.tZ)("label",{htmlFor:q,css:P.label(x),children:s}),(0,b.BX)("div",{css:[P.inputWrapper,M,";label:Select;"],children:[(0,b.tZ)("input",{id:q,onClick:function(){return ee((function(e){return!e}))},onFocus:function(){return ee(!0)},css:P.input({isSearchable:w}),autoComplete:"off",readOnly:O||!w,placeholder:E,value:z,onChange:function(e){X(e.target.value),Y(e.target.value)},disabled:k}),(0,b.tZ)("button",{type:"button",css:P.caretButton,onClick:function(){ee((function(e){return!e}))},disabled:k||O||0===t.length,children:(0,b.tZ)(h.Z,{name:"chevronDown",width:Z,height:Z,style:P.toggleIcon({isOpen:J})})})]})]}),(0,b.tZ)(c.h,{isOpen:J,onClickOutside:function(){return ee(!1)},children:(0,b.BX)("div",{css:[P.optionsWrapper,{left:ue.left,top:ue.top,maxWidth:(0,d.$K)(F)?F:ce},";label:Select;"],ref:se,children:[(0,b.BX)("ul",{css:P.options,children:[re.map((function(e){return(0,b.tZ)("li",{css:P.optionItem({isSelected:e.value===(null==T?void 0:T.value),optionsStyleVariant:G,isDisabled:!!e.disabled,hasGroup:U,variant:e.variant}),children:(0,b.tZ)(f.Z,{variant:"text",buttonCss:P.optionButton({fontWeight:A?e.value:"inherit"}),onClick:function(){X(e.label),Y(""),n(e),ee(!1)},children:e.label})},String(e.value))})),(0,b.tZ)("div",{ref:fe,css:P.spinnerWrapper({isVisible:ve}),children:(0,b.tZ)(v.ZP,{})})]}),S&&(0,b.tZ)("div",{css:P.clearButton({isDisabled:""===z}),children:(0,b.tZ)(f.Z,{variant:"text",disabled:""===z,icon:(0,b.tZ)(h.Z,{name:"recycleAlt"}),onClick:function(){i(),X(""),Y(""),ee(!1)},children:H("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})]})};var _={name:"9jddly-spinnerWrapper",styles:"display:none;label:spinnerWrapper;"},w={name:"omed8-toggleGroup",styles:"transform:rotate(90deg);label:toggleGroup;"},I={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},S={name:"zjfq51-input",styles:"cursor:pointer;label:input;"},C={name:"1je746r-label",styles:"flex:1;label:label;"},x={name:"1nbzsgk-inputLabelWrapper",styles:"display:flex;flex-direction:row;align-items:center;justify-content:space-between;>div{flex:1;};label:inputLabelWrapper;"},P={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputLabelWrapper:function(e){return(0,i.iv)("width:100%;display:flex;flex-direction:column;gap:",n.W0[4],";",e&&x,";;label:inputLabelWrapper;")},label:function(e){return(0,i.iv)(o.c.caption()," ",e&&C,";;label:label;")},inputWrapper:{name:"pdux79-inputWrapper",styles:"width:100%;position:relative;label:inputWrapper;"},input:function(e){var t=e.isSearchable;return(0,i.iv)(o.c.body(),";width:100%;height:32px;border-radius:",n.E0[5],";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.input,";padding:0 ",n.W0[32]," 0 ",n.W0[12],";color:",n.qo.text.default,";appearance:textfield;",!t&&S," :focus{outline:none;box-shadow:",n.AF.outline,";}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",n.qo.text.hints,";};label:input;")},clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:center;min-height:40px;&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:(0,i.iv)("position:absolute;width:100%;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:optionsWrapper;"),options:(0,i.iv)("list-style-type:none;max-height:500px;padding:",n.W0[4]," 0;margin:0;",s.iZ.overflowYAuto,";;label:options;"),optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t,a=e.isDisabled,l=void 0!==a&&a,c=e.optionsStyleVariant,u=void 0===c?"regular":c,s=e.hasGroup,d=void 0!==s&&s,p=e.variant,f=void 0===p?"regular":p;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;","critical"===f&&(0,i.iv)(">button>span{color:",n.qo.text.error,";};label:optionItem;")," ",l&&(0,i.iv)("pointer-events:none;>button{",o.c.body("bold"),";color:",d?n.qo.text.default:n.qo.text.disabled,";};label:optionItem;")," &:hover{background-color:",n.qo.background.hover,";}","small"===u&&(0,i.iv)(">button{",o.c.caption(),";};label:optionItem;")," ",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},optionButton:function(e){var t=e.fontWeight,r=void 0===t?"inherit":t;return(0,i.iv)("width:100%;padding:",n.W0[8]," ",n.W0[12],";font-weight:",r,";text-align:left;;label:optionButton;")},toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&I,";;label:toggleIcon;")},toggleGroup:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&w,";;label:toggleGroup;")},optionsContainer:{name:"1fif7on-optionsContainer",styles:"position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);label:optionsContainer;"},caretButton:(0,i.iv)(s.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;;label:caretButton;"),spinnerWrapper:function(e){var t=e.isVisible,r=void 0!==t&&t;return(0,i.iv)("width:100%;display:flex;justify-content:center;align-items:center;",!r&&_,";;label:spinnerWrapper;")}}},9313:(e,t,r)=>{"use strict";r.d(t,{Z:()=>c});var n,o=r(824),i=r(917),a=r(7602),l=r(5944);const c=function(e){var t=e.width,r=void 0===t?"100%":t,n=e.height,o=void 0===n?16:n,i=e.animation,a=void 0!==i&&i;return(0,l.tZ)("span",{css:p.skeleton(r,o,a)})};var u,s,d={wave:(0,i.F4)(n||(u=["\n 0% {\n transform: translateX(-100%);\n }\n 50% {\n transform: translateX(0%);\n }\n 100% {\n transform: translateX(100%);\n }\n "],s||(s=u.slice(0)),n=Object.freeze(Object.defineProperties(u,{raw:{value:Object.freeze(s)}}))))},p={skeleton:function(e,t,r){return(0,i.iv)("display:block;width:",(0,a.hj)(e)?"".concat(e,"px"):e,";height:",(0,a.hj)(t)?"".concat(t,"px"):t,";border-radius:",o.E0[6],";background-color:rgba(0, 0, 0, 0.11);position:relative;-webkit-mask-image:-webkit-radial-gradient(center, white, black);overflow:hidden;",r&&(0,i.iv)(":after{content:'';background:linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.05), transparent);position:absolute;transform:translateX(-100%);inset:0;animation:1.6s linear 0.5s infinite normal none running ",d.wave,";};label:skeleton;"),";;label:skeleton;")}}},5785:(e,t,r)=>{"use strict";r.d(t,{Z:()=>v});var n=r(3579),o=r(7264),i=r(824),a=r(4185),l=r(917),c=r(1954),u=r(1921),s=r(7602),d=r(7294),p=r(5944);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const v=function(e){var t,r,i=e.value,a=e.options,l=e.onChange,u=void 0===l?s.ZT:l,v=e.label,h=e.disabled,b=(t=(0,d.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=b[0],E=b[1],O=(0,c.l)({isOpen:g,isDropdown:!0}),_=O.triggerRef,w=O.triggerWidth,I=O.position,S=O.popoverRef,C=a.find((function(e){return e.value===i})),x={0:"unpublished",1:"published","-2":"trashed"};if(!(0,s.$K)(i)||(0,s.$K)(i)&&!(i in x))return null;var P=m[x[i]];return(0,p.BX)("div",{css:y.mainWrapper,children:[!!v&&(0,p.tZ)("div",{children:v}),(0,p.BX)("button",{type:"button",css:y.dropDownLabel({statusVariant:P,isOpen:g,isDisabled:h||!a.length}),onClick:function(){return E(!0)},ref:_,disabled:h,children:[(0,p.BX)("div",{children:[P.leftIcon,(0,p.tZ)("span",{children:(null==C?void 0:C.label)||""})]}),(0,p.tZ)(o.Z,{name:"chevronDown",width:12,height:8})]}),(0,p.tZ)(c.h,{isOpen:g,onClickOutside:function(){return E(!1)},children:(0,p.tZ)("div",{css:[y.optionsWrapper,{left:I.left,top:I.top,maxWidth:w},";label:StatusSelect;"],ref:S,children:(0,p.tZ)("ul",{css:y.options,children:a.map((function(e){return(0,p.tZ)("li",{css:y.optionItem({isSelected:i===e.value}),children:(0,p.tZ)(n.Z,{label:e.label,checked:i===e.value,onChange:function(){E(!1),u(e)},labelCss:y.radioLabel,disabled:e.disabled})},e.value)}))})})})]})};var h={name:"1f3qfry-dropDownLabel",styles:"pointer-events:none;label:dropDownLabel;"},b={name:"i3yy6i-dropDownLabel",styles:"transform:rotate(180deg);label:dropDownLabel;"},y={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},dropDownLabel:function(e){var t=e.statusVariant,r=e.isOpen,n=void 0!==r&&r,o=e.isDisabled,a=void 0!==o&&o;return(0,l.iv)(u.iZ.resetButton," width:124px;display:flex;justify-content:space-between;align-items:center;border-radius:42px;height:24px;padding:0 ",i.W0[8]," 0 ",i.W0[6],";border:1px solid ",t.borderColor,";background-color:",t.backgroundColor,";position:relative;div{display:flex;gap:",i.W0[4],";align-items:center;span{color:",t.color,";}svg{height:16px;width:16px;color:",t.leftIconColor,";transform:none;}}& svg{width:12px;height:8px;color:",t.rightIconColor,";transition:transform 0.3s ease-in-out;",n&&b," ",a&&h,";}",a&&(0,l.iv)("background-color:",i.qo.background.disabled,";border:1px solid ",i.qo.stroke.disabled,";div{span{color:",i.qo.text.disabled,";}svg{color:",i.qo.icon.disabled,";}};label:dropDownLabel;"),";;label:dropDownLabel;")},optionsWrapper:{name:"1cmtbh-optionsWrapper",styles:"position:absolute;min-width:170px;width:100%;label:optionsWrapper;"},options:(0,l.iv)("z-index:",i.W5.dropdown,";background-color:",i.qo.base.white,";list-style-type:none;box-shadow:",i.AF.popover,";padding:",i.W0[4]," 0;margin:0;max-height:500px;overflow-y:auto;border-radius:",i.E0[6],";::-webkit-scrollbar{background-color:",i.qo.base.white,";width:10px;}::-webkit-scrollbar-thumb{background-color:",i.qo.base.secondary,";border-radius:",i.E0[6],";};label:options;"),optionItem:function(e){var t=e.isSelected;return(0,l.iv)(a.c.body(),";min-height:40px;transition:background-color 0.3s ease-in-out;:hover{background-color:",i.qo.background.hover,";}",t&&(0,l.iv)("background-color:",i.qo.background.active,";;label:optionItem;"),";;label:optionItem;")},radioLabel:(0,l.iv)("line-height:40px;padding-left:",i.W0[12],";;label:radioLabel;")},m={published:{backgroundColor:i.qo.background.success,borderColor:i.qo.stroke.success,color:i.qo.base.success,leftIconColor:i.qo.base.success,rightIconColor:i.qo.icon.success,leftIcon:(0,p.tZ)(o.Z,{name:"markCircle",width:16,height:16})},unpublished:{backgroundColor:i.qo.background.neutral,borderColor:i.qo.stroke.neutral,color:i.qo.text.neutral,leftIconColor:i.qo.icon.hints,rightIconColor:i.qo.icon.default,leftIcon:(0,p.tZ)(o.Z,{name:"circleCross",width:16,height:16})},trashed:{backgroundColor:i.qo.background.danger,borderColor:i.qo.stroke.danger,color:i.qo.text.error,leftIconColor:i.qo.icon.error,rightIconColor:i.qo.icon.error,leftIcon:(0,p.tZ)(o.Z,{name:"crossCircle",width:16,height:16})}}},5791:(e,t,r)=>{"use strict";r.d(t,{Z:()=>d});var n=r(824),o=r(917),i=r(7273),a=r(7602),l=r(7294),c=r(5944),u=l.forwardRef((function(e,t){var r=e.id,n=void 0===r?(0,a.x0)():r,o=e.name,l=e.value,u=e.checked,d=e.disabled,p=e.onChange;return(0,c.tZ)("div",{css:s.wrapperStyle,children:(0,c.tZ)("input",{ref:t,value:(0,i.sw)(l)?String(l):void 0,type:"checkbox",name:o,id:n,checked:!!u,disabled:d,css:s.switchStyles,onChange:function(e){p&&p(e.target.checked,e)}})})})),s={wrapperStyle:(0,o.iv)("display:flex;align-items:center;justify-content:space-between;width:fit-content;column-gap:",n.W0[12],";;label:wrapperStyle;"),switchStyles:(0,o.iv)("appearance:none;border:0;width:28px;height:12px;background-color:",n.qo.icon.neutral,";box-shadow:",n.AF.switch,";border-radius:",n.E0[10],";position:relative;display:inline-block;vertical-align:middle;cursor:pointer;transition:background-color 0.15s cubic-bezier(0.785, 0.135, 0.15, 0.86);&:after{content:'';position:absolute;top:-",n.W0[2],";left:-",n.W0[2],";width:16px;height:16px;background-color:",n.qo.icon.disabled,";border-radius:",n.E0.circle,";transition:left 0.15s cubic-bezier(0.785, 0.135, 0.15, 0.86);filter:drop-shadow(",n.AF.switchKnob,");}&:checked{background:",n.qo.base.surface,";&:after{background:",n.qo.base.primary,";left:",n.W0[16],";}}&:disabled{pointer-events:none;filter:none;opacity:0.5;};label:switchStyles;")};const d=u},7025:(e,t,r)=>{"use strict";r.d(t,{Z:()=>f});var n=r(3871),o=r(7264),i=r(824),a=r(4185),l=r(917),c=r(1234),u=r(7273),s=r(7294),d=r(627),p=r(5944);const f=function(e){var t=e.label,r=e.isInlineLabel,i=e.type,a=void 0===i?"text":i,l=e.value,f=e.disabled,h=e.readOnly,b=e.placeholder,y=e.onChange,m=e.onBlur,g=e.onKeyDown,E=e.onFocus,O=e.isClearable,_=e.handleMediaIconClick,w=e.variant,I=void 0===w?"regular":w,S=e.focusOnMount,C=void 0!==S&&S,x=e.inputCss,P=e.helperText,L=e.isRequired,A=void 0!==L&&L,T=(0,s.useId)(),D=(0,c.$)(),Z=(0,s.useRef)(null);(0,s.useEffect)((function(){C&&Z.current&&Z.current.focus()}),[C]);var R=(0,p.BX)("div",{css:v.requiredLabel,children:[t,(0,p.tZ)(o.Z,{name:"asterisk",height:4,width:4,style:v.required})]});return(0,p.BX)("div",{css:v.inputContainer(r),children:[!!t&&(P?(0,p.tZ)(d.Z,{content:D(P),isVisibleOnClick:!0,children:(0,p.tZ)("label",{htmlFor:T,css:v.label(r),children:D(t)})}):(0,p.tZ)("label",{htmlFor:T,css:v.label(r),children:A?R:t})),(0,p.BX)("div",{css:v.inputWrapper,children:[(0,p.tZ)("input",{ref:Z,id:T,type:"text",css:[v.input(I),x,";label:TextInput;"],value:l||"",onChange:function(e){var t=e.target.value,r="number"===a?(0,u.jv)(t):t;y(r)},onKeyDown:function(e){g&&g(e.key,e)},onBlur:function(e){var t=e.target.value,r="number"===a?(0,u.jv)(t):t;m&&m(r)},onFocus:function(e){E&&E(e)},placeholder:b,readOnly:h,disabled:f,autoComplete:"off"}),"search"===I&&(0,p.tZ)("span",{css:v.searchIcon,children:(0,p.tZ)(o.Z,{name:"search",width:20,height:20})}),O&&!!l&&(0,p.tZ)("div",{css:v.rightIconButton,children:(0,p.tZ)(n.Z,{variant:"text",onClick:function(){return y("")},children:(0,p.tZ)(o.Z,{name:"cross"})})}),!!_&&"search"!==I&&!l&&(0,p.tZ)("div",{css:v.rightIconButton,children:(0,p.tZ)(n.Z,{variant:"text",onClick:_,children:(0,p.tZ)(o.Z,{name:"upload"})})})]})]})};var v={inputContainer:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,l.iv)("display:flex;flex-direction:column;gap:",i.W0[4],";width:100%;",e&&(0,l.iv)("flex-direction:row;align-items:center;gap:",i.W0[12],";justify-content:space-between;height:32px;;label:inputContainer;"),";;label:inputContainer;")},label:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,l.iv)(a.c.caption()," ",e&&(0,l.iv)("color:",i.qo.text.default,";;label:label;"),";;label:label;")},inputWrapper:{name:"1rdjunr-inputWrapper",styles:"position:relative;label:inputWrapper;"},input:function(e){return(0,l.iv)(a.c.body()," width:100%;height:32px;border-radius:",i.E0[5],";border:1px solid ",i.qo.stroke.neutral,";box-shadow:",i.AF.input,";padding:0 ",i.W0[32]," 0 ",i.W0[12],";color:",i.qo.text.default,";appearance:textfield;:focus{outline:none;box-shadow:none;}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",i.qo.text.hints,";}","search"===e&&(0,l.iv)("padding-left:",i.W0[36],";;label:input;"),";;label:input;")},rightIconButton:(0,l.iv)("position:absolute;right:0;top:0;button{padding:",i.W0[8],";};label:rightIconButton;"),searchIcon:(0,l.iv)("position:absolute;top:50%;left:",i.W0[8],";transform:translateY(-50%);color:",i.qo.icon.default,";line-height:0;;label:searchIcon;"),requiredLabel:(0,l.iv)("display:flex;gap:",i.W0[2],";;label:requiredLabel;"),required:(0,l.iv)("color:",i.qo.text.error,";margin-top:",i.W0[4],";transform:scale(1.3);;label:required;")}},1731:(e,t,r)=>{"use strict";r.d(t,{Z:()=>_,p:()=>O});var n=r(824),o=r(4185),i=r(917),a=r(7038),l=r(8144),c=r(7602),u=r(7294),s=r(3871),d=r(7264),p=r(5944);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach((function(t){b(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function b(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==f(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==f(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===f(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var g={type:"dark",message:"",autoCloseDelay:3500,position:"bottom-right"},E=u.createContext({showToast:c.ZT}),O=function(){return(0,u.useContext)(E)};const _=function(e){var t,r,n=e.children,o=e.position,i=void 0===o?"bottom-right":o,f=(t=(0,u.useState)([]),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||y(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),v=f[0],b=f[1],O=(0,l.Yz)(v,{from:{opacity:0,y:-40},enter:{opacity:1,y:0},leave:{opacity:.5,y:100},config:{duration:300}}),_=(0,u.useCallback)((function(e){var t,r=h(h(h({},g),e),{},{id:(0,c.x0)()});return b((function(e){return[r].concat(function(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||y(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e))})),!(0,c.jn)(r.autoCloseDelay)&&r.autoCloseDelay&&(t=setTimeout((function(){b((function(e){return e.slice(0,-1)}))}),r.autoCloseDelay)),function(){clearTimeout(t)}}),[]);return(0,p.BX)(E.Provider,{value:{showToast:_},children:[n,(0,p.tZ)("div",{css:w.toastWrapper(i),children:O((function(e,t){return(0,p.BX)(a.XJ,{style:e,css:w.toastItem(t.type),children:[(0,p.tZ)("h5",{css:w.message,children:t.message}),(0,p.tZ)(s.Z,{variant:"text",buttonCss:w.closeButton,onClick:function(){b((function(e){return e.filter((function(e){return e.id!==t.id}))}))},children:(0,p.tZ)(d.Z,{name:"timesAlt",width:16,height:16})})]},t.id)}))})]})};var w={toastWrapper:function(e){return(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";max-width:400px;position:fixed;z-index:",n.W5.highest,";","top-left"===e&&(0,i.iv)("left:",n.W0[20],";top:calc(",n.W0[20]," + 60px);;label:toastWrapper;")," ","top-right"===e&&(0,i.iv)("right:",n.W0[20],";top:calc(",n.W0[20]," + 60px);;label:toastWrapper;")," ","top-center"===e&&(0,i.iv)("left:50%;top:calc(",n.W0[20]," + 60px);transform:translateX(-50%);;label:toastWrapper;")," ","bottom-left"===e&&(0,i.iv)("left:",n.W0[20],";bottom:",n.W0[20],";;label:toastWrapper;")," ","bottom-right"===e&&(0,i.iv)("right:",n.W0[20],";bottom:",n.W0[20],";;label:toastWrapper;")," ","bottom-center"===e&&(0,i.iv)("left:50%;bottom:",n.W0[20],";transform:translateX(-50%);;label:toastWrapper;"),";;label:toastWrapper;")},toastItem:function(e){return(0,i.iv)("width:100%;display:flex;align-items:center;justify-content:space-between;gap:",n.W0[4],";border-radius:",n.E0[6],";padding:",n.W0[8]," ",n.W0[4]," ",n.W0[8]," ",n.W0[16],";svg>path{color:",n.qo.base.white,";}","dark"===e&&(0,i.iv)("background:",n.qo.base.black,";;label:toastItem;")," ","danger"===e&&(0,i.iv)("background:",n.qo.base.error,";;label:toastItem;")," ","success"===e&&(0,i.iv)("background:",n.qo.base.success,";;label:toastItem;")," ","warning"===e&&(0,i.iv)("background:",n.qo.base.warning,";h5{color:",n.qo.text.default,";}svg>path{color:",n.qo.text.default,";};label:toastItem;"),";;label:toastItem;")},closeButton:(0,i.iv)("padding-inline:",n.W0[8],";;label:closeButton;"),message:(0,i.iv)(o.c.heading5(),";color:",n.qo.base.white,";width:100%;text-align:center;;label:message;"),timesIcon:(0,i.iv)("path{color:",n.qo.base.white,";};label:timesIcon;")}},627:(e,t,r)=>{"use strict";r.d(t,{Z:()=>O});var n=r(824),o=r(4185),i=r(917),a=r(7038),l=r(8144),c=r(3126),u=r(1921),s=r(7294),d=r(7264),p=r(5944);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function v(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function h(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?v(Object(r),!0).forEach((function(t){b(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):v(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function b(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==f(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==f(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===f(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var g={opacity:0,transform:"scale(0.8)"},E={tension:300,friction:15};const O=function(e){var t=e.children,r=e.content,o=e.allowHTML,i=e.isVisibleOnClick,f=e.isInteractive,v=void 0===f||f,b=e.isVisibleOnHover,m=void 0!==b&&b,O=e.placement,_=void 0===O?"top-start":O,I=e.disabled,S=void 0!==I&&I,C=e.reference,x=void 0===C?null:C,P=y((0,l.q_)((function(){return g})),2),L=P[0],A=P[1],T=y((0,s.useState)(!1),2),D=T[0],Z=T[1],R=i||m;return(0,p.tZ)(c.ZP,{render:function(e){var t;return(0,p.tZ)(a.XJ,h(h({style:L},e),{},{css:w.contentBox,children:o?(0,p.tZ)("div",{dangerouslySetInnerHTML:{__html:null!==(t=null==r?void 0:r.toString())&&void 0!==t?t:""}}):r}))},visible:R?D:void 0,animation:!0,onMount:function(){A.start({opacity:1,transform:"scale(1)",config:E})},onHide:function(e){var t=e.unmount;A.start(h(h({},g),{},{onRest:t,config:h(h({},E),{},{clamp:!0})}))},allowHTML:o,delay:[0,100],placement:_,interactive:v,onClickOutside:function(){return Z(!1)},disabled:S,reference:x,zIndex:n.W5.highest,appendTo:document.body,children:(0,p.BX)("div",{css:w.button({isVisibleOnHover:m}),onMouseEnter:m?function(){return Z(!0)}:void 0,onMouseLeave:m?function(){return Z(!1)}:void 0,children:[t,i&&(0,p.tZ)("a",{href:"#",onClick:function(e){e.preventDefault(),Z((function(e){return!e}))},css:u.iZ.resetButton,"data-help-action":!0,children:(0,p.tZ)(d.Z,{name:"questionCircle"})})]})})};var _={name:"1u43s6l-button",styles:"width:100%;height:100%;justify-content:center;label:button;"},w={contentBox:(0,i.iv)(o.c.body(),";max-width:300px;width:100%;background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";padding:",n.W0[8]," ",n.W0[10],";overflow-wrap:break-word;display:flex;align-items:center;gap:",n.W0[4],";;label:contentBox;"),button:function(e){var t=e.isVisibleOnHover,r=void 0!==t&&t;return(0,i.iv)(u.iZ.resetButton,";line-height:1;display:flex;align-items:center;gap:",n.W0[8],";",r&&_," svg{color:",n.qo.icon.default,";}[data-help-action]{transition:opacity 0.3s ease;opacity:0;};label:button;")}}},9787:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(3871),o=r(3106),i=r(824),a=r(4185),l=r(917),c=r(1234),u=r(5944);const s=function(e){var t=e.buttonSize,r=void 0===t?"normal":t,i=(0,c.$)();return(0,u.tZ)(n.Z,{buttonCss:p.buttonCss({buttonSize:r}),children:(0,u.tZ)("a",{css:p.buyProCss,href:o._y,target:"_blank",rel:"noreferrer",children:i("COM_SPPAGEBUILDER_EDITOR_BUY_PRO")})})};var d={name:"1dys5au-buyProCss",styles:"color:white;label:buyProCss;"},p={buttonCss:function(e){var t=e.buttonSize;return(0,l.iv)("small"===t&&(0,l.iv)(a.c.caption()," padding:",i.W0[6],";color:",i.qo.text.white,";;label:buttonCss;"),";;label:buttonCss;")},buyProCss:function(){return d}}},2847:(e,t,r)=>{"use strict";r.d(t,{Z:()=>c});var n=r(7264),o=r(824),i=r(917),a=r(7294),l=r(5944);const c=a.forwardRef((function(e,t){var r=e.className;return(0,l.BX)("div",{ref:t,css:u.wrapper,className:r,"data-pro-badge":!0,children:[(0,l.tZ)("div",{css:u.icon,children:(0,l.tZ)(n.Z,{name:"star",width:10,height:10})}),(0,l.tZ)("span",{css:u.label,"data-pro-label":!0,children:"Pro"})]})}));var u={wrapper:(0,i.iv)("display:inline-flex;align-items:center;gap:",o.W0[4],";background:linear-gradient(88.9deg, #d65702 6.26%, #e5803c 91.4%);border-radius:16px;height:16px;padding-right:",o.W0[4],";;label:wrapper;"),icon:(0,i.iv)("width:16px;height:16px;background:",o.qo.background.proLabel,";display:flex;align-items:center;justify-content:center;border-radius:",o.E0.circle,";svg{color:",o.qo.text.white,"!important;};label:icon;"),label:(0,i.iv)("&[data-pro-label]:first-of-type{font-size:",o.JB[10],"!important;line-height:",o.Nv[16],"!important;font-family:",o.I8.sansSerif,"!important;font-weight:",o.Ue.medium,"!important;color:",o.qo.text.white,"!important;};label:label;")}},3169:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var n=r(824),o=r(917),i=r(9787),a=r(5944);const l=function(e){var t=e.children,r=e.enabled,n=void 0===r||r,o=e.buttonSize;return n?(0,a.BX)("div",{css:c.wrapper,children:[t,(0,a.tZ)(i.Z,{buttonSize:o})]}):(0,a.tZ)(a.HY,{children:t})};var c={wrapper:(0,o.iv)("position:relative;&>button{display:none;transition:display 0.3s ease;}&:hover{&::before{content:'';background-color:rgba(0, 0, 0, 0.6);position:absolute;height:100%;width:100%;inset:0;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);border-top-left-radius:",n.E0[5],";border-top-right-radius:",n.E0[5],";}&>button{display:block;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);}};label:wrapper;")}},7498:(e,t,r)=>{"use strict";r.d(t,{Z:()=>s});var n=r(3871),o=r(7264),i=r(3106),a=r(824),l=r(917),c=r(1234),u=r(5944);const s=function(){var e=(0,c.$)();return(0,u.tZ)(n.Z,{icon:(0,u.tZ)(o.Z,{name:"premium"}),buttonCss:d.buttonCss,children:(0,u.tZ)("a",{href:i._y,target:"_blank",rel:"noreferrer",children:e("COM_SPPAGEBUILDER_EDITOR_UPGRADE_TODAY")})})};var d={buttonCss:(0,l.iv)("background-color:transparent;background:",a.qo.background.proBackground,";border-radius:",a.E0[14],";a{color:",a.qo.text.white,";}:hover{box-shadow:",a.AF.proButton,";};label:buttonCss;")}},288:(e,t,r)=>{"use strict";r.d(t,{Z:()=>u});var n=r(7264),o=r(824),i=r(4185),a=r(917),l=r(1921),c=r(5944);const u=function(e){var t=e.routes,r=e.onFilterChange;return(0,c.tZ)("div",{css:s.wrapper,children:t.map((function(e,o){var i=o===t.length-1;return(0,c.BX)("div",{css:s.item,children:[e.link?(0,c.tZ)("button",{css:s.button,onClick:function(){return!!e.link&&r&&r(e.link)},children:e.text}):(0,c.tZ)("span",{children:e.text}),!i&&(0,c.tZ)(n.Z,{name:"angleRight",width:9,height:10})]},o)}))})};var s={wrapper:(0,a.iv)("display:flex;align-items:center;gap:",o.W0[10],";color:",o.qo.text.neutral,";;label:wrapper;"),item:(0,a.iv)("display:flex;align-items:center;gap:",o.W0[8],";&>:is(button, span){",l.iZ.resetButton,";",i.c.body("medium"),";color:inherit;text-decoration:none;",l.iZ.textEllipsis,";&:last-child{font-weight:",o.Ue.regular,";}};label:item;"),button:(0,a.iv)(l.iZ.resetButton,";;label:button;")}},765:(e,t,r)=>{"use strict";r.d(t,{F:()=>a});var n=r(3896),o=r(7602),i=r(4999),a=function(){var e=(0,n.o)((function(e){return e.page}));return{getDynamicContentCollectionItemAddon:function(t){var r=t.sectionIndex,n=t.columnIndex,a=t.addon;return function(e,t){var r,n=t.columnIndex,a=t.addon,l=e[t.sectionIndex],c=(0,o.$K)(l)?l.columns[n]:null,u=null!==(r=null==c?void 0:c.addons)&&void 0!==r?r:[];if(!(0,o.$K)(a))return null;var s=(0,i.k3)(u,a);return(0,o.$K)(s)?(0,i.MI)(s,a):null}(e,{sectionIndex:r,columnIndex:n,addon:a})}}}},4999:(e,t,r)=>{"use strict";r.d(t,{Kt:()=>h,Lf:()=>a,Ln:()=>d,MI:()=>u,Ow:()=>c,X2:()=>s,ez:()=>v,j$:()=>p,k3:()=>l,oY:()=>f}),r(7602);var n=r(653);function o(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return i(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?i(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,l=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return l=e.done,e},e:function(e){c=!0,a=e},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw a}}}}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var a=function e(t,r,o,i,a,l){var c,u,s,d;if(t.id===r.id)return(0,n.Lx)(t.name)||"div"===t.name?(null!==(u=t.child_nodes)&&void 0!==u||(t.child_nodes=[]),r.isEmptyState?t.child_nodes.push(o):(null!==(s=i.child_nodes)&&void 0!==s||(i.child_nodes=[]),i.child_nodes.splice(l?a:a+1,0,o))):(null!==(d=i.child_nodes)&&void 0!==d||(i.child_nodes=[]),i.child_nodes.splice(l?a:a+1,0,o)),!0;if(null!==(c=t.child_nodes)&&void 0!==c&&c.length)for(var p=0;p<t.child_nodes.length;p++)if(e(t.child_nodes[p],r,o,t,p,l))return!0;return!1},l=function(e,t){var r,n=function e(t,r){var n,i=o(t);try{for(i.s();!(n=i.n()).done;){var a,l=n.value;if(l.id===r.id)return!0;if(null!=l&&null!==(a=l.child_nodes)&&void 0!==a&&a.length&&e(l.child_nodes,r))return!0}}catch(e){i.e(e)}finally{i.f()}return!1},i=o(e);try{for(i.s();!(r=i.n()).done;){var a,l=r.value;if(l.id===t.id)return l;if(null!=l&&null!==(a=l.child_nodes)&&void 0!==a&&a.length&&n(l.child_nodes,t))return l}}catch(e){i.e(e)}finally{i.f()}return null},c=function e(t,r){var n;if(!t)return null;var i,a=null!==(n=t.child_nodes)&&void 0!==n&&n.length?t.child_nodes:[],l=o(a);try{for(l.s();!(i=l.n()).done;)if(i.value.id===r.id)return t}catch(e){l.e(e)}finally{l.f()}var c,u=o(a);try{for(u.s();!(c=u.n()).done;){var s=e(c.value,r);if(s)return s}}catch(e){u.e(e)}finally{u.f()}return null},u=function e(t,r){var n;if(!t)return null;if(t.id===r.id)return t;var i,a=null!==(n=t.child_nodes)&&void 0!==n&&n.length?t.child_nodes:[],l=o(a);try{for(l.s();!(i=l.n()).done;){var c=i.value;if(c.id===r.id)return c}}catch(e){l.e(e)}finally{l.f()}var u,s=o(a);try{for(s.s();!(u=s.n()).done;){var d=e(u.value,r);if(d)return d}}catch(e){s.e(e)}finally{s.f()}return null},s=function e(t,r){var n;if(!t)return!1;if(r(t))return!0;if(null!==(n=t.child_nodes)&&void 0!==n&&n.length){var i,a=o(t.child_nodes);try{for(a.s();!(i=a.n()).done;)if(e(i.value,r))return!0}catch(e){a.e(e)}finally{a.f()}}return!1},d=function e(t,r){return t.map((function(t){var n;return t.id===r.id?null:(null!==(n=t.child_nodes)&&void 0!==n&&n.length&&(t.child_nodes=e(t.child_nodes,r)),t)})).filter((function(e){return null!==e}))},p=function e(t,r){var n,i=o(t);try{for(i.s();!(n=i.n()).done;){var a,l=n.value;r(l),null!==(a=l.child_nodes)&&void 0!==a&&a.length&&e(l.child_nodes,r)}}catch(e){i.e(e)}finally{i.f()}},f=function e(t,r){var n;if(r(t),null!==(n=t.child_nodes)&&void 0!==n&&n.length){var i,a=o(t.child_nodes);try{for(a.s();!(i=a.n()).done;)e(i.value,r)}catch(e){a.e(e)}finally{a.f()}}},v=function e(t,r,n,i,a){if(null==t||!t.length)return!1;var l,c,u=t.findIndex((function(e){return e.id===r.id}));if(-1!==u)return a?(null!==(c=(l=t[u]).child_nodes)&&void 0!==c||(l.child_nodes=[]),t[u].child_nodes.push(n)):t.splice(i?u:u+1,0,n),!0;var s,d=o(t);try{for(d.s();!(s=d.n()).done;){var p,f=s.value;if(null!==(p=f.child_nodes)&&void 0!==p&&p.length&&e(f.child_nodes,r,n,i,a))return!0}}catch(e){d.e(e)}finally{d.f()}return!1},h=function(e,t){var r,i=o(e);try{for(i.s();!(r=i.n()).done;){var a=l(r.value,t,null);if(a)return a}}catch(e){i.e(e)}finally{i.f()}function l(e,t,r){var i;if(e.id===t.id)return r;if(null!==(i=e.child_nodes)&&void 0!==i&&i.length){var a,c=o(e.child_nodes);try{for(c.s();!(a=c.n()).done;){var u=l(a.value,t,(0,n.Lx)(e.name)?e:r);if(u)return u}}catch(e){c.e(e)}finally{c.f()}}return null}return null}},653:(e,t,r)=>{"use strict";r.d(t,{CN:()=>f,Kr:()=>p,rm:()=>v,Lx:()=>y,dW:()=>m,N3:()=>b,es:()=>h});var n=r(3106),o={dynamicContentCollection:"dynamic_content_collection",dynamicContentText:"dynamic_content_text",dynamicContentImage:"dynamic_content_image"},i=r(3896),a=r(6216),l=r(7602),c=r(4999);function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function d(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==u(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===u(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var p=["title","alias","video","gallery"],f=["alias","video","gallery"],v=function(e){var t,r=(0,a.fp)(n.dR.TABLE_COLUMNS_COLLECTION_LOCAL_STORAGE_KEY,"-".concat(e));return r&&null!==(t=(0,l.Rx)(r))&&void 0!==t?t:{}},h=function(e,t){return(0,a.pj)(n.dR.TABLE_COLUMNS_COLLECTION_LOCAL_STORAGE_KEY,JSON.stringify(t),"-".concat(e)),t},b=function(e,t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e);for(var n in e)t.includes(n)?r[n]=!0:r[n]=!1;return r},y=function(e){return[o.dynamicContentCollection].includes(e)},m=function(e,t,r){var n,a,l,u=null!==(n=null===(a=i.o.getState().page[t])||void 0===a||null===(l=a.columns[r])||void 0===l?void 0:l.addons)&&void 0!==n?n:[],s=(0,c.k3)(u,e);return"div"===e.name&&!!s&&(0,c.X2)(s,(function(e){return e.name===o.dynamicContentCollection}))}},3:(e,t,r)=>{"use strict";r.d(t,{Z:()=>v});var n=r(2393),o=r(824),i=r(36),a=r(2200),l=r(2445),c=r(2423),u=r(8307),s=r(7294),d=r(5944);function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var f=n.tk.theme({"&.cm-editor":{border:"1px solid ".concat(o.qo.stroke.neutral),borderRadius:o.E0[5],overflow:"hidden",fontSize:"12px",height:"200px",background:o.qo.background.white},"&.cm-editor.cm-focused":{outline:"none",boxShadow:"".concat(o.AF.outline)}});const v=function(e){var t,r,n=e.value,o=e.onChange,v=(t=(0,s.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],b=v[1],y=(0,i.N)(h),m=(0,a.D)(n),g=(0,l.F)((function(e){return e.payload})),E=g.addonIndex,O=g.sectionIndex,_=g.columnIndex,w=g.tableItem,I=(0,c.s)((function(e){return e})).currentState;return(0,s.useEffect)((function(){n!==m&&y!==n&&b(n)}),[y,m,n]),(0,s.useEffect)((function(){b(n)}),[E,O,_,w,I]),(0,s.useEffect)((function(){o(y)}),[y]),(0,d.tZ)(u.ZP,{theme:f,value:h,onChange:b})}},2066:(e,t,r)=>{"use strict";r.d(t,{d:()=>C,Z:()=>x});var n=r(7264),o=r(627),i=r(3871),a=r(935),l=r(3),c=r(824),u=r(917),s=r(1234),d=r(1921),p=r(7294),f=r(9781),v=r(5944);function h(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?b(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const y=function(e){var t=e.closeModal,r=e.title,n=e.value,o=e.onChange,c=(0,s.$)(),u=h((0,p.useState)(n),2),d=u[0],b=u[1],y=h((0,p.useState)(!0),2),g=y[0],E=y[1];return(0,p.useEffect)((function(){var e=setTimeout((function(){return E(!1)}),300);return function(){return clearTimeout(e)}}),[]),(0,v.tZ)(f.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,wrapperCss:m.modalWrapperStyles,isOverflowYAuto:!1,children:(0,v.tZ)("div",{css:m.modalWrapper,children:g?(0,v.tZ)("div",{css:m.loadingWrapper,children:(0,v.tZ)(a.g4,{})}):(0,v.BX)(v.HY,{children:[(0,v.tZ)("div",{css:m.codeEditor,children:(0,v.tZ)(l.Z,{value:d,onChange:function(e){return b(e)}})}),(0,v.BX)("div",{css:m.footerWrapper,children:[(0,v.tZ)(i.Z,{variant:"secondary",onClick:function(){return t({action:"CLOSE"})},children:c("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SYSTEM_EDITOR_CANCEL")}),(0,v.tZ)(i.Z,{onClick:function(){o(d),t({action:"CLOSE"})},disabled:d===n,children:c("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SYSTEM_EDITOR_APPLY")})]})]})})})};var m={modalWrapperStyles:{name:"167v7r0-modalWrapperStyles",styles:"max-width:2560px;label:modalWrapperStyles;"},modalWrapper:(0,u.iv)("width:100%;height:max(calc(100vh - 200px), 600px);max-height:2160px;display:flex;flex-direction:column;",c.Uo.tablet,"{height:600px;};label:modalWrapper;"),loadingWrapper:(0,u.iv)("width:100%;height:max(calc(100vh - 200px), 600px);max-height:2160px;",c.Uo.tablet,"{height:600px;}display:flex;justify-content:center;align-items:center;;label:loadingWrapper;"),codeEditor:(0,u.iv)("padding:",c.W0[16],";flex:1;min-height:0;",d.iZ.overflowYAuto,";.cm-editor{height:max(calc(100vh - 300px), 600px);max-height:2160px;",c.Uo.tablet,"{height:600px;}};label:codeEditor;"),footerWrapper:(0,u.iv)("display:flex;align-items:center;padding:",c.W0[16],";gap:",c.W0[8],";justify-content:flex-end;background-color:",c.qo.background.white,";border-top:1px solid ",c.qo.stroke.neutral,";position:sticky;bottom:0;;label:footerWrapper;")},g=r(1709),E=r(3106),O=r(4185),_=r(1954),w=r(7602);function I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return S(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?S(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var C=function(e){var t=e.device,r=e.onChangeResponsiveDevice,o=(0,s.$)(),i=I((0,p.useState)(!1),2),a=i[0],l=i[1],c=(0,_.l)({isOpen:a,isDropdown:!0}),u=c.triggerRef,d=c.position,f=c.popoverRef;return(0,v.BX)(v.HY,{children:[(0,v.BX)("button",{ref:u,onClick:function(){return l(!a)},css:A.selectedDevice,children:[(0,v.tZ)(n.Z,{name:E.Ak[t].icon}),(0,v.tZ)("span",{children:o(E.Ak[t].name)}),(0,v.tZ)("div",{css:A.arrowUpDownWrapper,children:(0,v.tZ)(n.Z,{name:"chevronDown",width:15,height:15,style:A.toggleIcon({isOpen:a})})})]}),(0,v.tZ)(_.h,{isOpen:a,onClickOutside:function(){l(!1)},children:(0,v.tZ)("div",{css:A.verticalDevicesContainer({left:d.left,top:d.top}),ref:f,children:(0,w.Zt)(E.Ak).map((function(e){return(0,v.BX)("button",{type:"button",css:A.deviceButton({isActive:e===t}),onClick:function(){r(e),l(!1)},children:[(0,v.tZ)(n.Z,{name:E.Ak[e].icon}),(0,v.tZ)("span",{children:o(E.Ak[e].name)})]},e)}))})})]})};const x=function(e){var t,r=e.field,i=e.fieldState,a=e.children,l=e.disabled,c=void 0!==l&&l,u=e.readOnly,d=void 0!==u&&u,f=e.label,h=e.isInlineLabel,b=void 0!==h&&h,m=e.variant,O=e.placeholder,_=e.responsive,S=void 0!==_&&_,x=e.helpText,P=e.isCombineType,L=void 0!==P&&P,T=e.adjustSpacing,D=void 0!==T&&T,Z=e.customWrapperCss,R=void 0===Z?null:Z,j=e.onCodeEditorChange,B=e.hideErrorMessage,M=void 0!==B&&B,k=e.required,N=void 0!==k&&k,G=e.headerElement,W=e.headerElementPosition,U=void 0===W?"left":W,F=(0,s.$)(),H=(0,w.x0)(),q=I((0,p.useState)(E.zu),2),V=q[0],z=q[1],X=(0,g.d)().showModal;return(0,v.tZ)("div",{css:R?[A.container(c,D),R]:A.container(c,D),children:(0,v.BX)("div",{css:A.inputContainer(b),children:[(S||!!f)&&(0,v.BX)("div",{css:A.contentContainer({isCombineType:L}),children:[!!f&&(0,v.tZ)("label",{htmlFor:H,css:A.label(b),children:x?(0,v.tZ)("div",{css:A.labelInner,children:(0,v.BX)(o.Z,{content:x,allowHTML:!0,isVisibleOnClick:!0,children:[f,N&&(0,v.tZ)("span",{css:A.required,children:F("COM_SPPAGEBUILDER_EDITOR_FIELD_LABEL_REQUIRED")})]})}):(0,v.BX)("div",{css:A.labelInner,children:[f,N&&(0,v.tZ)("span",{css:A.required,children:F("COM_SPPAGEBUILDER_EDITOR_FIELD_LABEL_REQUIRED")})]})}),G&&"left"===U&&("function"==typeof G?G({device:V,responsive:S}):G),S?(0,v.tZ)(C,{device:V,onChangeResponsiveDevice:function(e){return z(e)}}):null,G&&"right"===U&&("function"==typeof G?G({device:V,responsive:S}):G),j&&(0,v.tZ)("div",{css:A.codeEditorWrapper,children:(0,v.tZ)(o.Z,{content:F("COM_SPPAGEBUILDER_EDITOR_CODE_EDITOR_EXPAND"),placement:"top",isVisibleOnHover:!0,children:(0,v.tZ)("button",{type:"button",css:A.buttonCss(),onClick:function(){X({component:y,props:{title:f||F("COM_SPPAGEBUILDER_EDITOR_CODE_EDITOR"),value:String(r.value),onChange:j}})},children:(0,v.tZ)(n.Z,{name:"editorExpand"})})})})]}),(0,v.tZ)("div",{css:A.inputAndHelpText,children:a({attributes:{id:H,name:r.name,css:[A.input({variant:m,hasFieldError:!!i.error,readOnly:d})],"aria-invalid":i.error?"true":"false",disabled:c,readOnly:d,placeholder:O,required:N},data:{responsive:S,device:V}})}),!M&&(null===(t=i.error)||void 0===t?void 0:t.message)&&(0,v.tZ)("p",{css:A.errorLabel(!!i.error),children:i.error.message})]})})};var P={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},L={name:"dkvrjs-container",styles:"opacity:0.5;label:container;"},A={labelInner:(0,u.iv)("display:flex;align-items:center;gap:",c.W0[4],";;label:labelInner;"),required:(0,u.iv)(O.c.caption(),";color:",c.qo.text.hints,";;label:required;"),container:function(e,t){return(0,u.iv)("display:flex;flex-direction:column;position:relative;background:inherit;",e&&L," ",t&&(0,u.iv)("margin-top:",c.W0[8],";;label:container;"),";;label:container;")},selectedDevice:(0,u.iv)(d.iZ.resetButton,";padding:",c.W0[4],";border-radius:",c.E0[3],";display:flex;align-items:center;gap:",c.W0[4],";background-color:inherit;border:1px solid ",c.qo.stroke.neutral,";span{",O.c.caption(),";width:max-content;};label:selectedDevice;"),deviceButton:function(e){var t=e.isActive;return(0,u.iv)(d.iZ.resetButton,";display:flex;align-items:center;gap:",c.W0[4],";padding:",c.W0[6]," ",c.W0[8],";span{",O.c.caption(),";}:hover{background-color:",c.qo.background.primary,";color:",c.qo.text.primary,";span{color:",c.qo.text.primary,";}}",t&&(0,u.iv)("background-color:",c.qo.background.primary,";color:",c.qo.text.primary,";span{color:",c.qo.text.primary,";};label:deviceButton;"),";;label:deviceButton;")},inputContainer:function(e){return(0,u.iv)("display:flex;flex-direction:column;gap:",c.W0[4],";width:100%;",e&&(0,u.iv)("flex-direction:row;align-items:center;gap:",c.W0[12],";justify-content:space-between;height:32px;;label:inputContainer;")," :hover{[data-help-action]{opacity:1;}};label:inputContainer;")},input:function(e){return(0,u.iv)("width:100%;height:32px;border-radius:",c.E0[5],";border:1px solid ",c.qo.stroke.neutral,";box-shadow:",c.AF.input,";padding:0 ",c.W0[12],";color:",c.qo.text.default,";appearance:textfield;:focus{outline:none;box-shadow:none;}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",c.qo.text.hints,";}",e.hasFieldError&&(0,u.iv)("border:1px solid ",c.qo.base.error,";background-color:",c.qo.background.error,";;label:input;")," ",e.readOnly&&(0,u.iv)("border:1px solid ",c.qo.background.hover,";background-color:",c.qo.background.hover,";;label:input;"),";;label:input;")},errorLabel:function(e){return(0,u.iv)(O.c.caption(),";display:flex;align-items:center;margin-top:",c.W0[4],";",e&&(0,u.iv)("color:",c.qo.base.error,";;label:errorLabel;")," & svg{margin-right:",c.W0[8],";};label:errorLabel;")},contentContainer:function(e){var t=e.isCombineType;return(0,u.iv)("display:flex;gap:",c.W0[8],";position:relative;align-items:center;",t&&(0,u.iv)("position:absolute;left:10px;top:-13px;background-color:",c.qo.background.white,";z-index:",c.W5.positive,";padding:0 ",c.W0[4],";height:26px;;label:contentContainer;"),";;label:contentContainer;")},label:function(e){return(0,u.iv)(O.c.caption()," color:",c.qo.text.default,";",e&&(0,u.iv)("color:",c.qo.text.default,";;label:label;"),";;label:label;")},characterCount:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,u.iv)(O.c.body(),";color:",c.qo.text.neutral,";text-transform:lowercase;margin-left:auto;",e&&(0,u.iv)("color:",c.qo.text.error,";;label:characterCount;"),";;label:characterCount;")},inputAndHelpText:{name:"75b851-inputAndHelpText",styles:"position:relative;label:inputAndHelpText;"},helpTextAndLoading:(0,u.iv)("position:absolute;top:50%;right:",c.W0[12],";transform:translateY(-50%);display:flex;gap:",c.W0[4],";align-items:center;;label:helpTextAndLoading;"),verticalDevicesContainer:function(e){var t=e.left,r=e.top;return(0,u.iv)("position:absolute;left:",Math.max(0,t-8),"px;top:",r,"px;display:flex;flex-direction:column;background:",c.qo.base.white,";box-shadow:",c.AF.popover,";border-radius:",c.E0[2],";padding-block:",c.W0[8],";;label:verticalDevicesContainer;")},arrowUpDownWrapper:(0,u.iv)("margin-left:",c.W0[6],";;label:arrowUpDownWrapper;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,u.iv)("color:",c.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&P,";;label:toggleIcon;")},codeEditorWrapper:{name:"1fcubuj-codeEditorWrapper",styles:"margin-left:auto;label:codeEditorWrapper;"},buttonCss:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,u.iv)(d.iZ.resetButton," color:",c.qo.icon.default,";:hover{svg{color:",c.qo.icon.hover,";}}",e&&(0,u.iv)("svg{color:",c.qo.icon.primary,";};label:buttonCss;"),";;label:buttonCss;")}}},8253:(e,t,r)=>{"use strict";r.d(t,{Z:()=>x});var n=r(3871),o=r(9085),i=r(8460),a=r(7264),l=r(824),c=r(4185),u=r(917),s=r(1954),d=r(1234),p=r(7273),f=r(1921),v=r(7602),h=r(7294),b=r(2066),y=r(5944);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}var g=["css"];function E(e){return function(e){if(Array.isArray(e))return C(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||S(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function _(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?O(Object(r),!0).forEach((function(t){w(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function w(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function I(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||S(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function S(e,t){if(e){if("string"==typeof e)return C(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?C(e,t):void 0}}function C(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const x=function(e){var t=e.options,r=e.field,l=e.fieldState,c=e.onChange,u=void 0===c?v.ZT:c,f=e.label,m=e.placeholder,O=void 0===m?"":m,w=e.disabled,S=e.readOnly,C=e.loading,x=e.isSearchable,P=void 0!==x&&x,A=e.isInlineLabel,T=e.hideCaret,D=e.listLabel,Z=e.isClearable,R=void 0===Z||Z,j=e.responsive,B=e.responsiveOrientation,M=e.showArrowUpDown,k=void 0!==M&&M,N=e.helpText,G=e.showChips,W=void 0===G||G,U=e.hideSelectNumbers,F=void 0!==U&&U,H=e.hasAllCategory,q=void 0!==H&&H,V=e.isAccessLevelField,z=void 0!==V&&V,X=e.customInputCss,K=void 0===X?null:X,$=e.customWrapperCss,Y=void 0===$?null:$,Q=e.portalTopOffset,J=void 0===Q?0:Q,ee=e.portalLeftOffset,te=void 0===ee?0:ee,re=e.arrowSize,ne=void 0===re?12:re,oe=e.required,ie=void 0!==oe&&oe,ae=(0,d.$)(),le=(0,h.useMemo)((function(){return!(0,v.$K)(r.value)||z&&!(0,v.kJ)(r.value)&&!(0,p.sw)(r.value)?[]:(0,v.kJ)(r.value)?r.value:[r.value]}),[r.value,z]),ce=(0,h.useMemo)((function(){return P?"":F||0===le.length?O:ae("COM_SPPAGEBUILDER_EDITOR_N_OPTIONS_SELECTED",{count:le.length})}),[le,ae,O,F,P]),ue=I((0,h.useState)(ce),2),se=ue[0],de=ue[1],pe=I((0,h.useState)(""),2),fe=pe[0],ve=pe[1],he=I((0,h.useState)(!1),2),be=he[0],ye=he[1],me=q&&le.some((function(e){return""===(0,p.BB)(e)})),ge=(0,h.useMemo)((function(){var e=le.map((function(e){return(0,p.BB)(e)}));return t.filter((function(t){return e.includes((0,p.BB)(t.value))}))}),[le,t]);(0,h.useEffect)((function(){de(ce)}),[ce]);var Ee=(0,h.useMemo)((function(){return P?t.filter((function(e){return e.label.toLowerCase().startsWith(fe.toLowerCase())})):t}),[fe,P,t]),Oe=(0,s.l)({isOpen:be,isDropdown:!0}),_e=Oe.triggerRef,we=Oe.triggerWidth,Ie=Oe.position,Se=Oe.popoverRef;return(0,y.tZ)(b.Z,{fieldState:l,field:r,label:f,disabled:w||0===t.length,readOnly:S,loading:C,isInlineLabel:A,responsive:j,responsiveOrientation:B,helpText:N,customWrapperCss:Y,required:ie,children:function(e){var l=e.attributes,c=l.css,d=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(l,g);return(0,y.BX)("div",{css:L.mainWrapper,children:[(0,y.BX)("div",{css:L.inputWrapper,ref:_e,children:[(0,y.tZ)("input",_(_({},d),{},{onClick:function(){return ye((function(e){return!e}))},css:null!==K?K:[c,L.input],autoComplete:"off",readOnly:S||!P,placeholder:O,value:null!=se?se:"",onChange:function(e){de(e.target.value),ve(e.target.value)}})),!T&&(0,y.tZ)("button",{type:"button",css:L.caretButton,onClick:function(){ye((function(e){return!e}))},disabled:S||0===t.length,children:k?(0,y.tZ)(a.Z,{name:"arrowUpDown",width:ne,height:ne,style:L.arrowUpDown}):(0,y.tZ)(a.Z,{name:"chevronDown",width:ne,height:ne,style:L.toggleIcon({isOpen:be})})})]}),W&&ge.length>0&&(0,y.tZ)("div",{css:L.chipsWrapper,children:ge.map((function(e,t){return(0,y.tZ)(i.Z,{label:e.label,onClick:function(){var t=le.filter((function(t){return(0,p.BB)(t)!==(0,p.BB)(e.value)}));r.onChange(t)}},t)}))}),(0,y.tZ)(s.h,{isOpen:be,onClickOutside:function(){return ye(!1)},children:(0,y.tZ)("div",{css:[L.optionsWrapper,{left:Ie.left-te,top:Ie.top-J,maxWidth:we},";label:MultiSelectField;"],ref:Se,children:(0,y.BX)("ul",{css:[L.options,";label:MultiSelectField;"],children:[!!D&&(0,y.tZ)("li",{css:L.listLabel,children:D}),Ee.map((function(e,i){var a=le.some((function(t){return(0,p.BB)(t)===(0,p.BB)(e.value)})),l=(0,p.BB)(e.value);return(0,y.BX)("li",{css:L.optionItem,children:[(0,y.tZ)(o.Z,{checked:a,disabled:me&&""!==(0,p.BB)(e.value),onChange:function(){if(q&&""===l)a?r.onChange([]):r.onChange([e.value]);else{var n=a?le.filter((function(t){return(0,p.BB)(t)!==(0,p.BB)(e.value)})):[].concat(E(le),[e.value]);r.onChange(n),u&&u(t.filter((function(e){return n.includes(e.value)})))}}}),(0,y.tZ)(n.Z,{variant:"text",buttonCss:L.label,disabled:me&&""!==e.value,onClick:function(){if(q&&""===l)return a?r.onChange([]):r.onChange([e.value]),ve(""),void de(ce);var n=a?le.filter((function(t){return(0,p.BB)(t)!==(0,p.BB)(e.value)})):[].concat(E(le),[e.value]);r.onChange(n),de(ce),ve(""),u(t.filter((function(e){return n.includes(e.value)})))},children:e.label})]},i)})),R&&(0,y.tZ)("div",{css:L.clearButton({isDisabled:0===ge.length}),children:(0,y.tZ)(n.Z,{variant:"text",disabled:0===ge.length,icon:(0,y.tZ)(a.Z,{name:"recycleAlt"}),onClick:function(){r.onChange([]),ve(""),ye(!1)},children:ae("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var P={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},L={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,u.iv)(c.c.body(),";width:100%;cursor:pointer;padding-right:",l.W0[32],";",f.iZ.textEllipsis,";:focus{outline:none;box-shadow:",l.AF.outline,";};label:input;"),listLabel:(0,u.iv)(c.c.body(),";color:",l.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",l.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,u.iv)("padding:",l.W0[4]," ",l.W0[8],";border-top:1px solid ",l.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",l.JB[12],";",!r&&(0,u.iv)("color:",l.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},chipsWrapper:(0,u.iv)("display:flex;justify-content:start;align-items:center;flex-wrap:wrap;gap:",l.W0[4],";margin:",l.W0[8]," 0;;label:chipsWrapper;"),optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:(0,u.iv)("z-index:",l.W5.dropdown,";background-color:",l.qo.base.white,";list-style-type:none;box-shadow:",l.AF.popover,";padding:",l.W0[4]," 0;margin:0;max-height:500px;border-radius:",l.E0[6],";",f.iZ.overflowYAuto,";min-width:200px;;label:options;"),optionItem:(0,u.iv)(c.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;padding-inline:",l.W0[8],";&:hover{background-color:",l.qo.background.hover,";};label:optionItem;"),label:(0,u.iv)("width:100%;height:100%;display:flex;gap:",l.W0[8],";margin:0 ",l.W0[12],";padding:0;text-align:left;line-height:",l.Nv[24],";;label:label;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,u.iv)("color:",l.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&P,";;label:toggleIcon;")},arrowUpDown:(0,u.iv)("color:",l.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",l.W0[2],";;label:arrowUpDown;"),optionsContainer:{name:"1fif7on-optionsContainer",styles:"position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);label:optionsContainer;"},caretButton:(0,u.iv)(f.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",l.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")}},7856:(e,t,r)=>{"use strict";r.d(t,{Z:()=>w});var n=r(9371),o=r(3106),i=r(824),a=r(917),l=r(36),c=r(3581),u=r(8710),s=r(2445),d=r(2423),p=r(7273),f=r(7602),v=r(7294),h=r(2066),b=r(5944);function y(e){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},y(e)}function m(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==y(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==y(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===y(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const w=function(e){var t,r,i,a,y=e.label,g=e.field,E=e.fieldState,w=e.disabled,S=e.loading,C=e.helpText,x=e.onChange,P=e.min,L=e.max,A=e.step,T=void 0===A?1:A,D=e.info,Z=e.hasUnit,R=void 0!==Z&&Z,j=e.responsive,B=e.responsiveOrientation,M=e.staticUnit,k=e.isInline,N=void 0!==k&&k,G=e.customUnitOptions,W=void 0===G?null:G,U=e.defaultUnit,F=void 0===U?"px":U,H=e.noRangeInput,q=void 0!==H&&H,V=e.inputCss,z=e.unitInputStyles,X=e.disableTextField,K=void 0!==X&&X,$=(0,v.useRef)("xl"),Y=g.value,Q={xl:"",lg:"",md:"",sm:"",xs:"",unit:F||"px"},J={value:null!==(t=g.value)&&void 0!==t&&t.value?null===(r=g.value)||void 0===r?void 0:r.value:"0",unit:null!==(i=g.value)&&void 0!==i&&i.unit?null===(a=g.value)||void 0===a?void 0:a.unit:"sec"};R&&(Y=(0,f.$K)(g.value)?O(O({},Q),g.value):Q);var ee=m((0,v.useState)(Y),2),te=ee[0],re=ee[1],ne=m((0,v.useState)(J),2),oe=ne[0],ie=ne[1],ae=(0,l.N)(te);(0,v.useEffect)((function(){re(Y)}),[(0,p.o5)(Y,$.current)]);var le=(0,s.F)((function(e){return e.payload})),ce=le.sectionIndex,ue=le.columnIndex,se=le.addonIndex,de=le.tableItem,pe=(0,d.s)((function(e){return e.currentState}));return(0,v.useEffect)((function(){re(Y)}),[ce,ue,se,de,pe]),(0,v.useEffect)((function(){q&&R||(g.onChange(ae),x&&x(ae))}),[ae]),(0,b.tZ)(h.Z,{label:y,field:g,fieldState:E,disabled:w,loading:S,helpText:C,responsive:j,responsiveOrientation:B,isInlineLabel:N,children:function(e){var t=e.attributes,r=e.data,i=r.device,a=r.responsive;$.current=i;var l=(0,p.jv)((0,p.o5)(te,i,!R)),s=(0,p.jv)((0,p.o5)(te,i,!R));if(q&&R)return(0,b.tZ)(u.Z,{fieldValue:{value:oe.value.toString(),unit:oe.unit},onChange:function(e){g.onChange(e),ie({value:Number(e.value),unit:e.unit})},staticUnit:M,customUnitOptions:W,inputCss:V,unitInputStyles:z,disableTextField:K});if(R){var d=te;return(0,b.BX)("div",{css:I.rangeWithUnitWrapper,children:[(0,b.tZ)(n.Z,{value:(0,p.He)(s),onChange:function(e){var t=O(O({},d),{},_({},i,M?"".concat(e).concat(M):e));re(t)},min:null!=P?P:o.a7.min,max:null!=L?L:o.a7.max,disabled:t.disabled,step:T}),(0,b.tZ)(u.Z,{fieldValue:{value:l.toString(),unit:d.unit},onChange:function(e){var t,r,n=O(O({},d),{},(_(r={},i,M?"".concat(null!==(t=e.value)&&void 0!==t?t:"").concat(M):e.value),_(r,"unit",e.unit),r));re(n)},staticUnit:M,customUnitOptions:W,inputCss:V,unitInputStyles:z,disableTextField:K})]})}return(0,b.tZ)(c.Z,{value:s,onChange:function(e){var t=(0,p.xU)({previous:te,value:(0,p.BB)(e),responsive:a,device:i});re(t)},min:P,max:L,step:T,disabled:t.disabled,inputContent:D,isInlineLabel:N})}})};var I={rangeWithUnitWrapper:(0,a.iv)("display:flex;justify-content:space-between;align-items:center;gap:",i.W0[32],";max-height:32px;;label:rangeWithUnitWrapper;")}},8122:(e,t,r)=>{"use strict";r.d(t,{Z:()=>S});var n=r(3871),o=r(7264),i=r(3106),a=r(824),l=r(4185),c=r(917),u=r(1954),s=r(2200),d=r(1234),p=r(7273),f=r(1921),v=r(7602),h=r(7294),b=r(2066),y=r(5944);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}var g=["css"];function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?I(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const S=function(e){var t=e.options,r=e.field,a=e.fieldState,l=e.onChange,c=void 0===l?v.ZT:l,f=e.label,m=e.placeholder,E=void 0===m?"":m,_=e.disabled,I=e.readOnly,S=e.loading,C=e.isSearchable,x=void 0!==C&&C,L=e.isInlineLabel,A=e.hideCaret,T=e.listLabel,D=e.isClearable,Z=void 0===D||D,R=e.responsive,j=e.responsiveOrientation,B=e.showArrowUpDown,M=void 0!==B&&B,k=e.helpText,N=e.removeOptionsMinWidth,G=void 0!==N&&N,W=e.defaultValue,U=void 0===W?null:W,F=e.required,H=void 0!==F&&F,q=(0,d.$)(),V=(0,h.useRef)(i.zu),z=(0,s.D)(V.current),X=(0,h.useCallback)((function(){var e,n,o=(0,p.o5)(null!==(e=r.value)&&void 0!==e?e:U,V.current);return(null===(n=t.find((function(e){return String(e.value)===o})))||void 0===n?void 0:n.label)||""}),[t,r.value,U]),K=w((0,h.useState)(X),2),$=K[0],Y=K[1],Q=w((0,h.useState)(""),2),J=Q[0],ee=Q[1],te=w((0,h.useState)(!1),2),re=te[0],ne=te[1],oe=(0,h.useMemo)((function(){return x?t.filter((function(e){return e.label.toLowerCase().startsWith(J.toLowerCase())})):t}),[J,x,t]),ie=(0,u.l)({isOpen:re,isDropdown:!0}),ae=ie.triggerRef,le=ie.triggerWidth,ce=ie.position,ue=ie.popoverRef;return(0,h.useEffect)((function(){Y(X)}),[r.value,X]),(0,h.useEffect)((function(){re&&Y(X)}),[X,re]),(0,y.tZ)(b.Z,{fieldState:a,field:r,label:f,disabled:_||0===t.length,readOnly:I,loading:S,isInlineLabel:L,responsive:R,responsiveOrientation:j,helpText:k,required:H,children:function(e){var i=e.attributes,a=e.data,l=i.css,s=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(i,g),d=a.responsive,f=a.device;return V.current=f,(0,y.BX)("div",{css:P.mainWrapper,children:[(0,y.BX)("div",{css:P.inputWrapper,ref:ae,children:[(0,y.tZ)("input",O(O({},s),{},{onClick:function(){return ne((function(e){return!e}))},css:[l,P.input,";label:SelectField;"],autoComplete:"off",readOnly:I||!x,placeholder:E,value:function(){if(z!==f){var e,n=(0,p.o5)(r.value,f);return(null===(e=t.find((function(e){return String(e.value)===String(n)})))||void 0===e?void 0:e.label)||""}return $}(),onChange:function(e){Y(e.target.value),ee(e.target.value)}})),!A&&(0,y.tZ)("button",{type:"button",css:P.caretButton,onClick:function(){ne((function(e){return!e}))},disabled:I||0===t.length,children:M?(0,y.tZ)(o.Z,{name:"arrowUpDown",width:20,height:20,style:P.arrowUpDown}):(0,y.tZ)(o.Z,{name:"chevronDown",width:20,height:20,style:P.toggleIcon({isOpen:re})})})]}),(0,y.tZ)(u.h,{isOpen:re,onClickOutside:function(){return ne(!1)},children:(0,y.tZ)("div",{css:[P.optionsWrapper,{left:ce.left,top:ce.top,maxWidth:le},";label:SelectField;"],ref:ue,children:(0,y.BX)("ul",{css:[P.options(G),";label:SelectField;"],children:[!!T&&(0,y.tZ)("li",{css:P.listLabel,children:T}),oe.map((function(e){return(0,y.tZ)("li",{css:P.optionItem({isSelected:String(e.value)===(0,p.o5)(r.value,f)}),children:(0,y.tZ)(n.Z,{variant:"text",buttonCss:P.label,onClick:function(){r.onChange((0,p.xU)({previous:r.value,value:e.value,responsive:d,device:f})),ee(""),c(e),ne(!1)},children:e.label})},String(e.value))})),Z&&(0,y.tZ)("div",{css:P.clearButton({isDisabled:""===$}),children:(0,y.tZ)(n.Z,{variant:"text",disabled:""===$,icon:(0,y.tZ)(o.Z,{name:"recycleAlt"}),onClick:function(){r.onChange(null),Y(""),ee(""),ne(!1)},children:q("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var C={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},x={name:"7k051d-options",styles:"min-width:200px;label:options;"},P={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,c.iv)(l.c.body(),";width:100%;cursor:pointer;padding-right:",a.W0[32],";",f.iZ.textEllipsis,";:focus{outline:none;box-shadow:",a.AF.outline,";};label:input;"),listLabel:(0,c.iv)(l.c.body(),";color:",a.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",a.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,c.iv)("padding:",a.W0[4]," ",a.W0[8],";border-top:1px solid ",a.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",a.JB[12],";",!r&&(0,c.iv)("color:",a.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:function(e){return(0,c.iv)("z-index:",a.W5.dropdown,";background-color:",a.qo.base.white,";list-style-type:none;box-shadow:",a.AF.popover,";padding:",a.W0[4]," 0;margin:0;max-height:500px;border-radius:",a.E0[6],";",f.iZ.overflowYAuto,";",!e&&x,";;label:options;")},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,c.iv)(l.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",a.qo.background.hover,";}",r&&(0,c.iv)("background-color:",a.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",a.qo.action.primary.default,";border-radius:0 ",a.E0[6]," ",a.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},label:(0,c.iv)("width:100%;height:100%;display:flex;gap:",a.W0[8],";margin:0 ",a.W0[12],";padding:",a.W0[6]," 0;text-align:left;line-height:",a.Nv[24],";word-break:break-all;;label:label;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,c.iv)("color:",a.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&C,";;label:toggleIcon;")},arrowUpDown:(0,c.iv)("color:",a.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",a.W0[2],";;label:arrowUpDown;"),optionsContainer:{name:"1fif7on-optionsContainer",styles:"position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);label:optionsContainer;"},caretButton:(0,c.iv)(f.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",a.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")}},4943:(e,t,r)=>{"use strict";r.d(t,{Z:()=>h});var n=r(5791),o=r(824),i=r(4185),a=r(917),l=r(7273),c=r(2066),u=r(5944);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}var d=["value"];function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==s(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===s(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const h=function(e){var t=e.field,r=e.fieldState,o=e.label,i=e.title,a=e.subTitle,s=e.disabled,p=e.loading,v=e.responsive,h=e.responsiveOrientation,y=e.isInlineLabel,m=void 0!==y&&y,g=e.helpText,E=e.hideErrorMessage,O=void 0!==E&&E,_=e.required,w=void 0!==_&&_;return(0,u.tZ)(c.Z,{field:t,fieldState:r,disabled:s,loading:p,label:o,responsive:v,responsiveOrientation:h,isInlineLabel:m,helpText:g,hideErrorMessage:O,required:w,children:function(e){var r=e.attributes,o=e.data,c=o.responsive,s=o.device,p=(0,l.o5)(t.value,s),v=(t.value,function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,d));return(0,u.BX)("div",{css:b.wrapper,children:[(i||a)&&(0,u.BX)("div",{children:[!!i&&(0,u.tZ)("h6",{css:b.title,children:i}),!!a&&(0,u.tZ)("p",{css:b.subTitle,children:a})]}),(0,u.tZ)(n.Z,f(f(f({},v),r),{},{checked:(0,l.sw)(p),onChange:function(e){var r,n=(0,l.xU)({previous:t.value,value:null!==(r=(0,l.He)(e))&&void 0!==r?r:0,responsive:c,device:s});t.onChange(n)}}))]})}})};var b={wrapper:(0,a.iv)("display:flex;align-items:center;justify-content:space-between;gap:",o.W0[40],";;label:wrapper;"),title:(0,a.iv)(i.c.heading6(),";line-height:",o.Nv[20],";margin-bottom:",o.W0[4],";;label:title;"),subTitle:(0,a.iv)(i.c.body(),";color:",o.qo.text.neutral,";;label:subTitle;")}},5350:(e,t,r)=>{"use strict";r.d(t,{Z:()=>I});var n=r(3871),o=r(7264),i=r(3106),a=r(824),l=r(4185),c=r(917),u=r(36),s=r(2200),d=r(2445),p=r(2423),f=r(7273),v=r(1921),h=r(7294),b=r(2066),y=r(5944);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function g(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g(Object(r),!0).forEach((function(t){O(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function O(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return w(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?w(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const I=function(e){var t=e.label,r=e.isInlineLabel,a=e.type,l=void 0===a?"text":a,c=e.field,v=e.fieldState,m=e.disabled,g=e.readOnly,O=e.loading,w=e.placeholder,I=e.helpText,C=e.onChange,x=e.onKeyDown,P=e.isClearable,L=e.responsive,A=e.responsiveOrientation,T=e.variant,D=void 0===T?"regular":T,Z=e.hasAutoFocus,R=void 0!==Z&&Z,j=e.isDebounced,B=void 0!==j&&j,M=e.staticUnit,k=e.step,N=e.allowNegativeValue,G=void 0!==N&&N,W=e.required,U=void 0!==W&&W,F=e.isDisabled,H=void 0!==F&&F,q=(0,h.useRef)(null),V=(0,h.useRef)(i.zu),z=(0,s.D)(V.current),X=(0,h.useRef)(!1),K=_((0,h.useState)("password"===l),2),$=K[0],Y=K[1],Q=(0,f.o5)(c.value,i.zu),J=_((0,h.useState)(Q),2),ee=J[0],te=J[1],re=(0,u.N)(ee),ne=_((0,h.useState)(null),2),oe=ne[0],ie=ne[1],ae=(0,d.F)((function(e){return e.payload})),le=ae.sectionIndex,ce=ae.columnIndex,ue=ae.addonIndex,se=ae.tableItem,de=(0,p.s)((function(e){return e.currentState})),pe=E({},"number"===l&&{step:k});return(0,h.useEffect)((function(){if(B&&te(Q),"number"===l&&null!==oe){var e=(0,f.o5)(c.value,i.zu),t=oe;t===e||t.endsWith(".")||"-"===t||"-."===t||ie(null)}}),[le,ce,ue,se,de]),(0,h.useEffect)((function(){if(B){var e=(0,f.xU)({previous:c.value,value:re,responsive:X.current,device:V.current});c.onChange(e)}}),[re]),(0,h.useEffect)((function(){var e,t;R&&(null===(e=q.current)||void 0===e||e.focus(),null===(t=q.current)||void 0===t||t.select())}),[R]),(0,y.tZ)(b.Z,{label:t,isInlineLabel:r,field:c,fieldState:v,disabled:m,readOnly:g,loading:O,placeholder:w,helpText:I,responsive:L,responsiveOrientation:A,required:U,children:function(e){var t=e.attributes,r=e.data,i=r.device,a=r.responsive;return V.current=i,X.current=a,(0,y.tZ)(y.HY,{children:(0,y.BX)("div",{css:S.container(D,!!M),children:[(0,y.tZ)("input",E(E(E(E({},c),t),{},{ref:q,type:$?"password":"password"===l?"text":l,value:"number"===l&&null!==oe?oe:B?z!==i?(0,f.o5)(c.value,i):ee:(0,f.o5)(c.value,i),placeholder:w,onChange:function(e){var t=e.target.value;if("number"===l&&(ie(t),t.endsWith(".")||"-"===t||"-."===t||t.includes(".")&&""!==t)){var r=Number(t);if(!isNaN(r)&&isFinite(r)){if(B)te(t);else{var n=(0,f.xU)({previous:c.value,value:t,responsive:a,device:i});c.onChange(n)}return void(C&&C(t))}}if(B)te(t);else{var o=(0,f.xU)({previous:c.value,value:t,responsive:a,device:i});c.onChange(o)}C&&C(t)},onBlur:function(e){if("number"!==l||!G){var t=e.target.value;"number"===l&&ie(null);var r="number"===l?t.replace(/[^0-9.]/g,"").replace(/(\..*)\./g,"$1").replace(/([^.]+)\.$/,"$1"):t;if(B)te(t);else{var n=(0,f.xU)({previous:c.value,value:r,responsive:a,device:i});c.onChange(n)}C&&C(r)}},onKeyDown:function(e){x&&x(e.key)},autoComplete:"off"},pe),{},{disabled:H})),"password"===l&&!!c.value&&(0,y.tZ)(n.Z,{variant:"text",css:S.hideShow,onClick:function(){return Y(!$)},children:$?(0,y.tZ)(o.Z,{name:"statusOff",width:20,height:20}):(0,y.tZ)(o.Z,{name:"statusOn",width:20,height:20})}),"search"===D&&(0,y.tZ)("span",{css:S.searchIcon,children:(0,y.tZ)(o.Z,{name:"search",width:20,height:20})}),P&&!!c.value&&(0,y.tZ)("div",{css:S.clearButton,children:(0,y.tZ)(n.Z,{variant:"text",onClick:function(){return c.onChange("")},children:(0,y.tZ)(o.Z,{name:"cross"})})}),M&&(0,y.tZ)("span",{css:S.staticUnit,children:M})]})})}})};var S={container:function(e,t){return(0,c.iv)("position:relative;display:flex;& input{",l.c.body()," width:100%;","search"===e&&(0,c.iv)("padding-left:",a.W0[36],";;label:container;")," ",t&&(0,c.iv)("padding-right:",a.W0[36],";;label:container;")," :focus{box-shadow:",a.AF.outline,";}};label:container;")},hideShow:(0,c.iv)(v.iZ.resetButton,";position:absolute;height:100%;right:0;top:0;padding:0 ",a.W0[8],";color:",a.qo.icon.default,";;label:hideShow;"),clearButton:(0,c.iv)("position:absolute;right:0;top:0;button{padding:",a.W0[8],";};label:clearButton;"),searchIcon:(0,c.iv)("position:absolute;top:50%;left:",a.W0[8],";transform:translateY(-50%);color:",a.qo.icon.default,";line-height:0;;label:searchIcon;"),staticUnit:(0,c.iv)(l.c.caption(),";position:absolute;right:0;top:0;height:100%;border-left:1px solid ",a.qo.stroke.neutral,";padding:0px 10px;display:flex;align-items:center;;label:staticUnit;")}},7579:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(824),o=r(917),i=(r(7294),r(5944));const a=function(e){var t=e.children,r=e.isFluid,n=void 0!==r&&r;return(0,i.tZ)("div",{css:c.wrapper(n),children:t})};var l={name:"bqovom-wrapper",styles:"max-width:initial;label:wrapper;"},c={wrapper:function(e){return(0,o.iv)("margin:0 auto;max-width:",n.V4,"px;width:100%;padding:",n.W0[16],";",e&&l,";;label:wrapper;")}}},3039:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o}),r(7294);var n=r(5944);const o=function(e){var t=e.children;return(0,n.tZ)("div",{children:t})}},7894:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var n=r(824),o=r(4185),i=r(917),a=(r(7294),r(5944));const l=function(e){var t=e.title,r=e.subtitle,n=e.action;return(0,a.tZ)("div",{css:c.wrapper,children:(0,a.BX)("div",{css:c.container,children:[(0,a.tZ)("div",{css:c.titleContainer,children:(0,a.BX)("div",{css:c.titleSubtitle,children:[(0,a.tZ)("h3",{css:o.c.heading3("medium"),children:(0,a.tZ)("span",{children:t})}),r&&(0,a.tZ)("p",{css:c.subtitle,children:r})]})}),!!n&&(0,a.tZ)("div",{css:c.actionWrapper,children:n})]})})};var c={wrapper:(0,i.iv)("min-height:136px;background:",n.qo.base.surface,";padding-block:",n.W0[36],";border-bottom:1px solid ",n.qo.stroke.neutral,";;label:wrapper;"),container:(0,i.iv)("display:flex;align-items:center;justify-content:space-between;margin:0 auto;padding:0 ",n.W0[16],";max-width:",n.V4,"px;width:100%;;label:container;"),titleContainer:{name:"vvxf1w-titleContainer",styles:"display:flex;justify-content:space-between;label:titleContainer;"},subtitle:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";;label:subtitle;"),titleSubtitle:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";max-width:480px;;label:titleSubtitle;"),actionWrapper:{name:"7ozw75-actionWrapper",styles:"flex-shrink:0;label:actionWrapper;"}}},3816:(e,t,r)=>{"use strict";r.d(t,{Z:()=>O,g:()=>E});var n=r(3871),o=r(824),i=r(917),a=r(7898),l=r(1234),c=r(7602),u=r(4185),s=r(7294),d=r(1709),p=r(9781),f=r(5944);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function h(){h=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function b(){}var y={};c(y,i,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(P([])));g&&g!==t&&r.call(g,i)&&(y=g);var E=b.prototype=p.prototype=Object.create(y);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==v(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return f.prototype=b,n(E,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:f,configurable:!0}),f.displayName=c(b,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,c(e,l,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),c(E,l,"Generator"),c(E,i,(function(){return this})),c(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function b(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function y(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){b(i,n,o,a,l,"next",e)}function l(e){b(i,n,o,a,l,"throw",e)}a(void 0)}))}}function m(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var g=function(e){var t,r,i=e.title,u=e.confirmationMessage,d=e.confirmButtonText,v=e.cancelButtonText,b=e.confirmButtonVariant,g=void 0===b?"error":b,E=e.payload,O=e.mutationFn,w=e.closeModal,I=e.invalidateKeys,S=e.contentWrapper,C=e.skipMutation,x=void 0!==C&&C,P=e.backgroundColor,L=void 0===P?o.qo.background.white:P,A=e.proceedText,T=(0,l.$)(),D=(t=(0,s.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return m(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),Z=D[0],R=D[1],j=(0,a.A)({mutationFn:O,invalidateKeys:I});return(0,f.tZ)(p.Z,{onClose:function(){return w({action:"CLOSE"})},title:i,headerCss:_.modalHeaderCss,contentCss:_.modalContentCss(L),wrapperCss:_.modalWrapper,children:(0,f.BX)("div",{css:[S,";label:ConsentModal;"],children:[(0,f.tZ)("p",{css:_.content,children:u||T("COM_SPPAGEBUILDER_EDITOR_DELETE_WARNING")}),(0,c.$K)(A)&&(0,f.BX)("div",{css:_.proceedTextWrapper,children:[(0,f.tZ)("label",{htmlFor:"proceed-text",dangerouslySetInnerHTML:{__html:T("COM_SPPAGEBUILDER_EDITOR_FILL_PROCEED_BOX_TEXT_MESSAGE",{proceedText:A})}}),(0,f.tZ)("input",{type:"text",id:"proceed-text",value:Z,onChange:function(e){return R(e.target.value)},tabIndex:0,autoFocus:!0})]}),(0,f.BX)("div",{css:_.footerWrapper,children:[(0,f.tZ)(n.Z,{variant:"secondary",onClick:function(){return w({action:"CLOSE"})},tabIndex:0,children:v||T("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,f.tZ)(n.Z,{variant:g,disabled:(0,c.$K)(A)&&Z!==A,tabIndex:0,onClick:y(h().mark((function e(){var t,r;return h().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(0,c.$K)(A)||Z===A){e.next=2;break}return e.abrupt("return");case 2:if(!x){e.next=5;break}return w({action:"CONFIRM"}),e.abrupt("return");case 5:if(!E){e.next=13;break}return e.next=8,j.mutateAsync(E);case 8:if(t=e.sent,r=t.data,!((0,c.$K)(r.status)?r.status:r)){e.next=13;break}return w({action:"CONFIRM"}),e.abrupt("return");case 13:w({action:"CLOSE"});case 14:case"end":return e.stop()}}),e)}))),loading:j.isLoading,children:d||T("COM_SPPAGEBUILDER_EDITOR_DELETE")})]})]})})},E=function(){var e=(0,d.d)().showModal;return function(t){return e({component:g,props:t,closeOnOutsideClick:!0})}};const O=g;var _={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},proceedTextWrapper:(0,i.iv)("padding:0 ",o.W0[24]," ",o.W0[16]," ",o.W0[24],";display:flex;flex-direction:column;gap:",o.W0[8],";label{",u.c.body(),";color:",o.qo.text.neutral,";}input{",u.c.body(),";color:",o.qo.text.default,";border:1px solid ",o.qo.stroke.neutral,";border-radius:",o.E0[6],";padding-inline:",o.W0[16],";width:100%;appearance:textfield;height:32px;:focus-visible{outline:none;box-shadow:",o.AF.outline,";}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",o.qo.text.hints,";}};label:proceedTextWrapper;"),content:(0,i.iv)("padding:",o.W0[16]," ",o.W0[24],";",u.c.body(),";color:",o.qo.text.neutral,";;label:content;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;gap:",o.W0[8],";padding:",o.W0[16]," ",o.W0[24],";box-shadow:",o.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,i.iv)("padding:",o.W0[12]," ",o.W0[24],";;label:modalHeaderCss;"),modalContentCss:function(e){return(0,i.iv)("background-color:",e,";;label:modalContentCss;")}}},9148:(e,t,r)=>{"use strict";r.d(t,{Z:()=>S});var n=r(3871),o=r(5350),i=r(8138),a=r(824),l=r(917),c=r(802),u=r(2811),s=r(1234),d=r(1073),p=r(7679),f=r(6731),v=r(1030),h=r(7536),b=r(9250),y=r(9781),m=r(5944);function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==g(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==g(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===g(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function w(){w=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:_(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(P([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function E(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function O(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==g(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function _(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},E(O.prototype),c(O.prototype,a,(function(){return this})),e.AsyncIterator=O,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new O(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},E(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function I(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}const S=function(e){var t=e.closeModal,r=e.title,a=e.textLabel,l=e.textPlaceholder,g=e.pageType,E=e.collectionId,_=(0,s.$)(),S=(0,p.mp)(),x=(0,b.s0)(),P=(0,d.j)((function(e){return e.setActiveAction})),L=(0,u.T)().closeSettingPanel,A=(0,c.O)({defaultValues:{title:""}});return a||(a=_("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_CREATE_PAGE_TITLE")),l||(l=_("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_CREATE_PAGE_TITLE_PLACEHOLDER")),(0,m.tZ)(y.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,wrapperCss:C.wrapper,children:(0,m.BX)("form",{onSubmit:A.handleSubmit((0,f.GI)(A,function(){var e,r=(e=w().mark((function e(r){var n,o;return w().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={title:r.title,type:"",page_type:g,collection_id:null!=E?E:null},"popup"===g&&(n.type="popup"),e.next=4,S.mutateAsync(n);case 4:(o=e.sent).id&&(P(void 0),L(),x("popup"!==g?i.F.PageEditor.buildLink({id:o.id.toString(),type:""}):i.F.PopupEditor.buildLink({id:o.id.toString(),type:"popup"})),t({action:"CLOSE"}));case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){I(i,n,o,a,l,"next",e)}function l(e){I(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return r.apply(this,arguments)}}())),children:[(0,m.tZ)("div",{css:C.fieldWrapper,children:(0,m.tZ)(h.Qr,{name:"title",control:A.control,rules:O({},(0,v.n)()),render:function(e){return(0,m.tZ)(o.Z,O(O({},e),{},{label:a,placeholder:l,hasAutoFocus:!0}))}})}),(0,m.BX)("div",{css:C.buttonWrapper,children:[(0,m.tZ)(n.Z,{variant:"secondary",onClick:function(){return t({action:"CLOSE"})},children:_("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_CANCEL")}),(0,m.tZ)(n.Z,{type:"submit",loading:S.isLoading,children:_("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_SAVE_AND_GO")})]})]})})};var C={wrapper:{name:"1od26ax-wrapper",styles:"max-width:400px;label:wrapper;"},fieldWrapper:(0,l.iv)("padding:",a.W0[20],";display:flex;flex-direction:column;gap:",a.W0[12],";background-color:",a.qo.base.white,";;label:fieldWrapper;"),buttonWrapper:(0,l.iv)("background-color:",a.qo.background.white,";box-shadow:",a.AF.dividerTop,";padding:",a.W0[12]," ",a.W0[16],";display:flex;justify-content:end;gap:",a.W0[8],";;label:buttonWrapper;")}},5827:(e,t,r)=>{"use strict";r.d(t,{L:()=>b});var n=r(3871),o=r(9085),i=r(824),a=r(4185),l=r(917),c=r(1234),u=r(7294),s=r(1709),d=r(9781),p=r(5944);function f(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var h=function(e){var t=e.title,r=e.confirmationMessage,i=e.confirmButtonText,a=e.isPopup,l=void 0!==a&&a,s=e.closeModal,v=(0,c.$)(),h=f((0,u.useState)(!1),2),b=h[0],m=h[1],g=f((0,u.useState)(!1),2),E=g[0],O=g[1];return(0,p.tZ)(d.Z,{onClose:function(){return s({action:"CLOSE",seoChecked:b})},title:t||v("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE"),headerCss:y.modalHeaderCss,contentCss:y.modalContentCss,wrapperCss:y.modalWrapper,children:(0,p.BX)("div",{children:[(0,p.BX)("div",{css:y.content,children:[(0,p.tZ)("p",{children:r||v("COM_SPPAGEBUILDER_EDITOR_EXPORT_MESSAGE")}),!1===l?(0,p.BX)(p.HY,{children:[(0,p.tZ)(o.Z,{labelCss:y.labelCss,checked:b,onChange:function(e,t){m(e),t.target.checked=e},label:v("COM_SPPAGEBUILDER_EDITOR_EXPORT_LABEL_SEO_DATA")}),(0,p.tZ)(o.Z,{labelCss:y.labelCss,checked:E,onChange:function(e,t){O(e),t.target.checked=e},label:v("COM_SPPAGEBUILDER_EDITOR_EXPORT_LABEL_MEDIA_DATA")})]}):(0,p.tZ)(p.HY,{})]}),(0,p.BX)("div",{css:y.footerWrapper,children:[(0,p.tZ)(n.Z,{variant:"secondary",onClick:function(){return s({action:"CLOSE"})},children:v("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,p.tZ)(n.Z,{onClick:function(){s({action:"CONFIRM",seoChecked:b,mediaChecked:E})},children:i||v("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_CONFIRMATION")})]})]})})},b=function(){var e=(0,s.d)().showModal;return function(t){return e({component:h,props:t,closeOnOutsideClick:!0})}},y={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},content:(0,l.iv)("display:flex;flex-direction:column;gap:",i.W0[16],";padding:",i.W0[16]," ",i.W0[24],";p{",a.c.body(),";};label:content;"),footerWrapper:(0,l.iv)("display:flex;justify-content:end;gap:",i.W0[8],";padding:",i.W0[12]," ",i.W0[16],";box-shadow:",i.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,l.iv)("padding:",i.W0[12]," ",i.W0[24],";;label:modalHeaderCss;"),modalContentCss:(0,l.iv)("background-color:",i.qo.background.white,";;label:modalContentCss;"),labelCss:(0,l.iv)("width:fit-content;",a.c.body("medium"),";;label:labelCss;")}},2899:(e,t,r)=>{"use strict";r.d(t,{n:()=>S});var n=r(3871),o=r(7264),i=r(1731),a=r(8138),l=r(824),c=r(4185),u=r(917),s=r(1234),d=r(5527),p=r(7839),f=r(7294),v=r(9250),h=r(1709),b=r(9781),y=r(5944);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function E(){E=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(P([])));y&&y!==t&&r.call(y,i)&&(h=y);var g=v.prototype=p.prototype=Object.create(h);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==m(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return f.prototype=v,n(g,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(g),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(g),c(g,l,"Generator"),c(g,i,(function(){return this})),c(g,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function O(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function _(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){O(i,n,o,a,l,"next",e)}function l(e){O(i,n,o,a,l,"throw",e)}a(void 0)}))}}var w=[{text:"Download or locate the file for your custom font. There are many sources online for downloading fonts. It must be downloaded as .TTF or .OTF file. You can also download the font directly through",link:{url:"https://www.fontsquirrel.com/",text:"Font Squirrel"}},{text:"Go to the",link:{url:"https://www.fontsquirrel.com/tools/webfont-generator",text:"Font Squirrel Webfont Generator"}},{text:"Click the Upload Fonts button to select your .TTF or .OTF file."},{text:"Select the output of the files (we recommend using the Basic or Optimal settings unless you are comfortable with the Expert Settings.)"},{text:"Tick the agreement section."},{text:"Click Download your kit"},{text:"Once it is finished downloading, you will be left with a webfontkit zip file. Upload the font zip file."}],I=function(e){var t=e.closeModal,r=e.title,l=(0,s.$)(),c=(0,f.useRef)(null),u=(0,v.s0)(),h=(0,i.p)().showToast,m=(0,p.M9)(),O=function(){var e=_(E().mark((function e(r){return E().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,m.mutateAsync({font:r[0]});case 3:t(),u(a.F.FontManager.buildLink()),e.next=10;break;case 7:e.prev=7,e.t0=e.catch(0),h({type:"danger",message:e.t0.message});case 10:case"end":return e.stop()}}),e,null,[[0,7]])})));return function(t){return e.apply(this,arguments)}}();return(0,y.tZ)(b.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,wrapperCss:C.modalWrapperCss,contentCss:C.contentCss,children:(0,y.BX)("div",{css:C.wrapper,children:[(0,y.BX)("div",{css:C.leftSide,children:[(0,y.tZ)("div",{css:C.leftSideHeader,children:(0,y.BX)(n.Z,{buttonCss:C.uploadButton,onClick:function(){var e;null===(e=c.current)||void 0===e||e.click()},loading:m.isLoading,children:[(0,y.tZ)(o.Z,{name:"upload"}),(0,y.tZ)("span",{children:l("COM_SPPAGEBUILDER_EDITOR_UPLOAD_FONT_BUTTON")})]})}),(0,y.tZ)("div",{css:C.instructionWrapper,children:(0,y.tZ)("ol",{css:C.instructions,children:w.map((function(e,t){return(0,y.BX)("li",{children:[e.text,e.link&&(0,y.tZ)("a",{target:"_blank",href:e.link.url,rel:"noreferrer noopener",children:e.link.text})]},t)}))})})]}),(0,y.BX)("div",{css:C.dropzoneWrapper,children:[(0,y.tZ)(d.Z,{onUpload:O,onDragLeave:function(){},isLoading:m.isLoading,uploadButtonText:"COM_SPPAGEBUILDER_EDITOR_FONT_UPLOAD_BUTTON",uploadMessage:"COM_SPPAGEBUILDER_EDITOR_FONT_UPLOAD_MESSAGE"}),(0,y.tZ)("input",{type:"file",css:C.fileUploader,ref:c,onChange:function(){var e=_(E().mark((function e(t){return E().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.target.files){e.next=4;break}return e.next=3,O(function(e){if(Array.isArray(e))return g(e)}(r=t.target.files)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return g(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?g(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());case 3:t.target.value="";case 4:case"end":return e.stop()}var r}),e)})));return function(t){return e.apply(this,arguments)}}()})]})]})})},S=function(){var e=(0,h.d)().showModal;return function(t){return e({component:I,props:t})}},C={fileUploader:{name:"10d4pd6-fileUploader",styles:"appearance:none;visibility:hidden;label:fileUploader;"},instructionWrapper:{name:"xw8qju-instructionWrapper",styles:"height:calc(100% - 64px);overflow-y:auto;label:instructionWrapper;"},modalWrapperCss:{name:"w84rft-modalWrapperCss",styles:"max-width:1394px;label:modalWrapperCss;"},contentCss:{name:"thdkuv-contentCss",styles:"height:min(70vh, 700px);display:flex;label:contentCss;"},wrapper:(0,u.iv)("padding:",l.W0[32]," ",l.W0[24],";display:flex;gap:",l.W0[32],";width:100%;;label:wrapper;"),leftSide:(0,u.iv)("max-width:317px;width:100%;background-color:",l.qo.background.white,";box-shadow:",l.AF.card,";border-radius:",l.E0[5],";;label:leftSide;"),instructions:(0,u.iv)("display:flex;flex-direction:column;gap:",l.W0[16],";list-style-type:decimal;padding:",l.W0[16]," ",l.W0[16]," ",l.W0[16]," ",l.W0[32],";li{",c.c.caption(),";color:",l.qo.text.neutral,";a{color:",l.qo.text.primary,";margin-left:",l.W0[4],";text-decoration:underline;margin-top:",l.W0[4],";}};label:instructions;"),leftSideHeader:(0,u.iv)("padding:",l.W0[16],";border-bottom:1px solid ",l.qo.stroke.neutral,";;label:leftSideHeader;"),dropzoneWrapper:{name:"1y4s0sh-dropzoneWrapper",styles:"width:100%;label:dropzoneWrapper;"},uploadButton:(0,u.iv)("width:100%;&>span{display:flex;gap:",l.W0[8],";align-items:center;justify-content:center;};label:uploadButton;")}},6566:(e,t,r)=>{"use strict";r.d(t,{Z:()=>S});var n=r(3871),o=r(2847),i=r(3169),a=r(1731),l=r(824),c=r(4185),u=r(917),s=r(1234),d=r(9194),p=r(3896),f=r(1921),v=r(7602),h=r(4101),b=r(7536),y=r(5944);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function g(){g=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(P([])));y&&y!==t&&r.call(y,i)&&(h=y);var E=v.prototype=p.prototype=Object.create(h);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==m(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return f.prototype=v,n(E,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),c(E,l,"Generator"),c(E,i,(function(){return this})),c(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function O(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach((function(t){_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function w(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function I(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){w(i,n,o,a,l,"next",e)}function l(e){w(i,n,o,a,l,"throw",e)}a(void 0)}))}}const S=function(e){var t=e.layout,r=e.templateName,l=e.closeModal,u=e.liveDemo,f=void 0===u||u,h=e.isPopup,m=void 0!==h&&h,E=(0,s.$)(),_=(0,a.p)().showToast,w=(0,p.o)((function(e){return e.setPageContent})),S=(0,b.Gc)(),C=(0,d.i8)();return(0,y.tZ)("div",{css:P.wrapper(m),children:(0,y.BX)("div",{css:P.layoutItem({isFreeVersion:v.Eu}),children:[(0,y.tZ)(i.Z,{enabled:v.Eu,children:(0,y.BX)("div",{css:P.layoutMedia({isFreeVersion:v.Eu,isPopup:m}),children:[(0,y.tZ)("img",{src:t.thumb,alt:t.title,"data-media-image":!0}),v.Eu&&(0,y.tZ)(o.Z,{}),!v.Eu&&(0,y.BX)("div",{css:P.mediaOverlay,"data-media-overlay":!0,children:[f&&(0,y.tZ)(n.Z,{variant:"secondary",onClick:function(){var e;return null===(e=window.open(t.preview,"_blank","noopener,noreferrer"))||void 0===e?void 0:e.focus()},children:E("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LIVE_DEMO")}),(0,y.tZ)(n.Z,{variant:"primary",loading:C.isLoading,onClick:I(g().mark((function e(){var r,n,o,i,a;return g().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C.mutateAsync({id:t.id,type:m?"popup":"template"});case 2:r=e.sent,w(r.data.template,!0),m&&r.data.attribs&&(n=S.getValues(),o={visibility:n.attribs.visibility,exclude_pages_toggle:n.attribs.exclude_pages_toggle,exclude_menus_toggle:n.attribs.exclude_menus_toggle,excluded_pages:n.attribs.excluded_pages,excluded_menus:n.attribs.excluded_menus,selected_pages:n.attribs.selected_pages,selected_menus:n.attribs.selected_menus,trigger_condition:n.attribs.trigger_condition,scroll_direction:n.attribs.scroll_direction,scroll_percentage:n.attribs.scroll_percentage,landing_after:n.attribs.landing_after,landing_show_after:n.attribs.landing_show_after,exit_after:n.attribs.exit_after,exit_show_after:n.attribs.exit_show_after,click_type:n.attribs.click_type,click_count:n.attribs.click_count,click_area:n.attribs.click_area,hover_area:n.attribs.hover_area,inactivity_duration:n.attribs.inactivity_duration,close_on_click:n.attribs.close_on_click,reappear_after:n.attribs.reappear_after},r.data.attribs&&(i=JSON.parse(r.data.attribs),a=O(O({},i),o),n.attribs=a),S.reset(n)),_({type:"success",message:E(m?"COM_SPPAGEBUILDER_EDITOR_POPUP_LAYOUT_IMPORTED_SUCCESSFULLY":"COM_SPPAGEBUILDER_EDITOR_LAYOUT_PAGE_IMPORTED_SUCCESSFULLY")}),l({action:"IMPORT"});case 7:case"end":return e.stop()}}),e)}))),children:E("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_IMPORT")})]})]})}),m&&(0,y.BX)("div",{css:P.templateFooter,children:[(0,y.tZ)("div",{css:P.footerTop,children:(0,y.tZ)("div",{css:c.c.body("medium"),children:t.title})}),(0,y.tZ)("div",{css:P.caption,children:E("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_DOWNLOADS",{count:t.hits})})]}),!m&&(0,y.tZ)("div",{css:P.layoutFooter,children:"".concat(t.title," (").concat(r,")")})]})})};var C={name:"9xk68e-layoutMedia",styles:"position:relative;label:layoutMedia;"},x={name:"bf5j38-layoutItem",styles:"&:hover [data-media-image]{filter:blur(3px);};label:layoutItem;"},P={wrapper:function(e){return(0,u.iv)(f.iZ.resetButton,";height:",e?"202px":"288px",";;label:wrapper;")},layoutItem:function(e){var t=e.isFreeVersion,r=void 0!==t&&t;return(0,u.iv)("box-shadow:",l.AF.addon,";border-radius:",l.E0[5],";overflow:hidden;transition:box-shadow 0.3s ease;height:100%;display:flex;flex-direction:column;background-color:",l.qo.background.white,";&:hover [data-media-overlay]{opacity:1;}",!r&&x,";;label:layoutItem;")},layoutMedia:function(e){var t=e.isFreeVersion,r=void 0!==t&&t,n=e.isPopup,o=void 0!==n&&n;return(0,u.iv)("max-height:",o?"134px":"244px",";overflow:hidden;flex:1;",!r&&C," ",o?"background: #353535;":""," img{width:100%;",o?"border-radius: ".concat(l.E0[5],";\n border-bottom-right-radius: 0px;\n border-bottom-left-radius: 0px;\n "):""," transition:filter 0.3s ease-in-out;};label:layoutMedia;")},mediaOverlay:(0,u.iv)("position:absolute;inset:0;background-color:",(0,h.m4)(l.qo.base.black,.7),";display:flex;flex-direction:column;align-items:center;justify-content:center;gap:",l.W0[8],";opacity:0;transition:opacity 0.3s ease-in-out;button{min-width:100px;:last-of-type{color:",l.qo.text.white,";}span{justify-content:center;}};label:mediaOverlay;"),layoutFooter:(0,u.iv)(c.c.body("medium")," background-color:",l.qo.background.white,";border-radius:0 0 ",l.E0[5]," ",l.E0[5],";padding:",l.W0[12]," ",l.W0[16],";border-top:1px solid ",l.qo.stroke.neutral,";transition:background-color 0.3s ease;;label:layoutFooter;"),templateFooter:(0,u.iv)("background-color:",l.qo.background.white,";border-radius:0 0 ",l.E0[5]," ",l.E0[5],";padding:",l.W0[12]," ",l.W0[16],";border-top:1px solid ",l.qo.stroke.neutral,";;label:templateFooter;"),footerTop:(0,u.iv)("display:flex;justify-content:space-between;align-items:center;gap:",l.W0[4],";margin-bottom:",l.W0[4],";;label:footerTop;"),caption:(0,u.iv)(c.c.caption()," color:",l.qo.text.neutral,";white-space:nowrap;;label:caption;")}},1593:(e,t,r)=>{"use strict";r.d(t,{Z:()=>L});var n=r(3871),o=r(9085),i=r(935),a=r(8122),l=r(5350),c=r(824),u=r(4185),s=r(917),d=r(36),p=r(802),f=r(1234),v=r(9194),h=r(1921),b=r(7294),y=r(7536),m=r(6566),g=r(9781),E=r(5944);function O(e){return O="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},O(e)}function _(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function w(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?_(Object(r),!0).forEach((function(t){I(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function I(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==O(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==O(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===O(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function S(e){return function(e){if(Array.isArray(e))return P(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||x(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||x(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function x(e,t){if(e){if("string"==typeof e)return P(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?P(e,t):void 0}}function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const L=function(e){var t=e.closeModal,r=e.title,c=e.form,s=(0,f.$)(),h=C((0,b.useState)(null),2),O=h[0],_=(h[1],C((0,b.useState)([]),2)),I=_[0],x=_[1],P=(0,v.u9)(),L=(0,p.O)({defaultValues:{search:"",page:"",sortBy:""}}),T=(0,d.N)(L.watch("search")),D=L.watch("sortBy"),Z=[{label:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_TITLE_ASC"),value:"asc"},{label:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_TITLE_DESC"),value:"desc"},{label:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_POPULAR_FIRST"),value:"popular-first"}];if(P.isLoading)return(0,E.tZ)(i.g4,{});if(!P.data)return(0,E.tZ)("div",{children:s("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")});var R=function(e,t){return"asc"===D?e.title>t.title?1:-1:"desc"===D?t.title>e.title?1:-1:"popular-first"===D&&e.hits?Number(t.hits)-Number(e.hits):0};return(0,E.tZ)(g.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,children:(0,E.tZ)(y.RV,w(w({},c),{},{children:(0,E.BX)("div",{css:A.wrapper(!!O),children:[(0,E.tZ)("div",{children:(0,E.BX)("div",{css:A.categoriesWrapper,children:[(0,E.tZ)("div",{css:A.categoryLabel,children:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_CATEGORIES")}),(0,E.tZ)("div",{css:A.categoryItems,children:P.data.map((function(e){return(0,E.BX)("div",{css:A.categoryItem,children:[(0,E.tZ)(o.Z,{label:e.title,labelCss:u.c.body(),checked:I.includes(e.id),onChange:function(t){x(t?[].concat(S(I),[e.id]):I.filter((function(t){return t!==e.id})))}}),(0,E.tZ)("span",{children:e.items.length})]},e.id)}))})]})}),(0,E.BX)("div",{children:[(0,E.BX)("div",{css:A.topBar,children:[(0,E.tZ)(y.Qr,{control:L.control,name:"search",render:function(e){return(0,E.tZ)(l.Z,w(w({},e),{},{variant:"search",placeholder:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_SEARCH_LAYOUTS"),isClearable:!0}))}}),(0,E.BX)("div",{css:A.topBarRight,children:[(0,E.tZ)(y.Qr,{control:L.control,name:"sortBy",render:function(e){return(0,E.tZ)(a.Z,w(w({},e),{},{options:Z,placeholder:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_SORT_BY")}))}}),(0,E.tZ)(n.Z,{variant:"text",onClick:function(){return L.reset()},children:s("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_RESET")})]})]}),(0,E.tZ)("div",{css:A.layoutsWrapper,children:P.data.map((function(e){return I.length<1||I.includes(e.id)?function(e){var r=e.items,n=new RegExp(T,"i");return T&&T.length&&(r=e.items.filter((function(e){return n.test(e.title)}))),S(r).sort(R).map((function(e){var r={id:e.id,title:e.title,preview:"/",hits:e.hits.toString(),thumb:e.thumb};return(0,E.tZ)(m.Z,{layout:r,templateName:e.title,closeModal:t,liveDemo:!1,isPopup:!0},e.id)}))}(e):void 0}))})]})]})}))})};var A={wrapper:function(e){return(0,s.iv)("padding:",c.W0[24]," 0 ",c.W0[24]," ",c.W0[24],";position:relative;height:calc(100vh - 130px);",!e&&(0,s.iv)("padding:",c.W0[32]," 0 ",c.W0[32]," ",c.W0[24],";display:grid;grid-template-columns:228px auto;gap:",c.W0[32],";;label:wrapper;"),";;label:wrapper;")},backToLayout:(0,s.iv)("margin-bottom:",c.W0[16],";padding:0;;label:backToLayout;"),categoriesWrapper:(0,s.iv)("background-color:",c.qo.background.white,";border-radius:",c.E0[5],";box-shadow:",c.AF.card,";;label:categoriesWrapper;"),categoryLabel:(0,s.iv)(u.c.body("medium"),";padding:",c.W0[12]," ",c.W0[16]," 0;;label:categoryLabel;"),categoryItems:(0,s.iv)("display:flex;flex-direction:column;gap:",c.W0[16],";padding:",c.W0[16],";;label:categoryItems;"),categoryItem:(0,s.iv)("display:flex;justify-content:space-between;align-items:center;span{",u.c.body(),";color:",c.qo.text.neutral,";};label:categoryItem;"),topBar:(0,s.iv)("display:flex;align-items:center;justify-content:space-between;gap:",c.W0[16],";padding-right:",c.W0[32],";margin-bottom:",c.W0[28],";;label:topBar;"),topBarRight:(0,s.iv)("display:flex;align-items:center;border:1px solid ",c.qo.stroke.neutral,";border-radius:",c.E0[5],";overflow:hidden;input{border:none;border-right:1px solid ",c.qo.stroke.neutral,";border-radius:0;&:focus{box-shadow:none;}};label:topBarRight;"),layoutsWrapper:(0,s.iv)("display:grid;grid-template-columns:repeat(4, 1fr);gap:",c.W0[32],";padding:",c.W0[4]," ",c.W0[24]," ",c.W0[2]," ",c.W0[2],";max-height:calc(100vh - 260px);",h.iZ.overflowYAuto,";",c.Uo.smallTablet,"{grid-template-columns:repeat(3, 1fr);};label:layoutsWrapper;")}},7855:(e,t,r)=>{"use strict";r.d(t,{Z:()=>K});var n=r(3871),o=r(9085),i=r(935),a=r(7264),l=r(8122),c=r(5350),u=r(824),s=r(4185),d=r(917),p=r(36),f=r(802),v=r(1234),h=r(9194),b=r(1921),y=r(7294),m=r(7536),g=r(6566),E=r(2847),O=r(7602),_=r(5944);const w=function(e){var t=e.template,r=e.setActiveTemplate,o=(0,v.$)();return(0,_.tZ)("div",{children:(0,_.BX)("div",{css:I.templateItem(t.accent_color),children:[(0,_.BX)("div",{css:I.templateMedia,children:[(0,_.tZ)("img",{src:t.thumb,alt:t.title,"data-media-image":!0}),(0,_.tZ)("div",{css:I.mediaOverlay({color:t.accent_color}),"data-media-overlay":!0,children:(0,_.tZ)(n.Z,{onClick:function(){return r(t)},children:o("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_VIEW_DETAILS")})}),O.Eu&&(0,_.tZ)(E.Z,{css:I.proLabel})]}),(0,_.BX)("div",{css:I.templateFooter,children:[(0,_.BX)("div",{css:I.footerTop,children:[(0,_.tZ)("div",{css:s.c.body("medium"),children:t.title}),(0,_.tZ)("div",{css:I.caption,children:o("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_PAGES",{count:t.count})})]}),(0,_.tZ)("div",{css:I.caption,children:o("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_DOWNLOADS",{count:t.hits})})]})]})})};var I={templateItem:function(e){return(0,d.iv)("position:relative;margin-top:",u.W0[12],";box-shadow:",u.AF.addon,";border-radius:",u.E0[5],";&::before{content:'';position:absolute;width:calc(100% - 20px);height:6px;top:-6px;left:10px;background-color:rgba(",e.length>0?e:"0, 0, 0",", 0.7);border-radius:",u.E0[5]," ",u.E0[5]," 0 0;}&::after{content:'';position:absolute;width:calc(100% - 40px);height:6px;top:-12px;left:20px;background-color:rgba(",e.length>0?e:"0, 0, 0",", 0.3);border-radius:",u.E0[5]," ",u.E0[5]," 0 0;}&:hover [data-media-overlay]{opacity:1;}&:hover [data-media-image]{filter:blur(3px);};label:templateItem;")},templateMedia:(0,d.iv)("height:244px;border-radius:",u.E0[5]," ",u.E0[5]," 0 0;overflow:hidden;position:relative;img{width:100%;transition:filter 0.3s ease-in-out;};label:templateMedia;"),proLabel:(0,d.iv)("position:absolute;top:",u.W0[4],";right:",u.W0[4],";z-index:10;;label:proLabel;"),mediaOverlay:function(e){var t=e.color;return(0,d.iv)("position:absolute;width:100%;height:100%;top:0;left:0;background-color:rgba(",t.length>0?t:"0, 0, 0",", 0.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s ease-in-out;;label:mediaOverlay;")},templateFooter:(0,d.iv)("background-color:",u.qo.background.white,";border-radius:0 0 ",u.E0[5]," ",u.E0[5],";padding:",u.W0[12]," ",u.W0[16],";border-top:1px solid ",u.qo.stroke.neutral,";;label:templateFooter;"),footerTop:(0,d.iv)("display:flex;justify-content:space-between;align-items:center;gap:",u.W0[4],";margin-bottom:",u.W0[4],";;label:footerTop;"),caption:(0,d.iv)(s.c.caption()," color:",u.qo.text.neutral,";white-space:nowrap;;label:caption;")},S=r(9787),C=r(1731),x=r(3896);const P=function(e){var t=e.layout,r=e.isActive,n=e.setActiveLayout;return(0,_.tZ)("button",{css:L.wrapper,onClick:function(){return n(t)},children:(0,_.BX)("div",{css:L.layoutItem({isActive:r}),children:[(0,_.tZ)("div",{css:L.layoutMedia,children:(0,_.tZ)("img",{src:t.thumb,alt:t.title})}),(0,_.tZ)("div",{css:L.layoutFooter({isActive:r}),children:t.title})]})})};var L={wrapper:(0,d.iv)(b.iZ.resetButton,";height:288px;;label:wrapper;"),layoutItem:function(e){var t=e.isActive;return(0,d.iv)("position:relative;box-shadow:",u.AF.addon,";border-radius:",u.E0[5],";overflow:hidden;transition:box-shadow 0.3s ease;height:100%;display:flex;flex-direction:column;background-color:",u.qo.background.white,";",t&&(0,d.iv)("box-shadow:0px 0px 0px 2px ",u.qo.base.primary,";;label:layoutItem;")," &:hover img{top:-60px;}",!t&&(0,d.iv)("&:hover{box-shadow:0px 0px 0px 1px ",u.qo.base.primary,";>:last-of-type{background-color:",u.qo.background.hover,";}};label:layoutItem;"),";;label:layoutItem;")},layoutMedia:{name:"cypg2z-layoutMedia",styles:"max-height:244px;overflow:hidden;flex:1;img{width:100%;position:relative;top:0;transition:top 1s ease-in;};label:layoutMedia;"},layoutFooter:function(e){var t=e.isActive;return(0,d.iv)(s.c.body("medium")," background-color:",u.qo.background.white,";border-radius:0 0 ",u.E0[5]," ",u.E0[5],";padding:",u.W0[12]," ",u.W0[16],";border-top:1px solid ",u.qo.stroke.neutral,";transition:background-color 0.3s ease;",t&&(0,d.iv)("background-color:",u.qo.background.active,";;label:layoutFooter;"),";;label:layoutFooter;")}};function A(e){return A="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},A(e)}function T(){T=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==A(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?D(Object(r),!0).forEach((function(t){R(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):D(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function R(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==A(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==A(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===A(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function j(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function B(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){j(i,n,o,a,l,"next",e)}function l(e){j(i,n,o,a,l,"throw",e)}a(void 0)}))}}function M(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const k=function(e){var t,r,o=e.template,i=e.closeModal,a=(0,v.$)(),l=(t=(0,y.useState)(o.layouts[0]),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return M(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?M(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=l[0],u=l[1],d=(0,x.o)((function(e){return e.setPageContent})),p=(0,C.p)().showToast,f=(0,m.Gc)(),b=(0,h.i8)();return(0,_.BX)("div",{css:N.detailsWrapper,children:[(0,_.tZ)("div",{children:(0,_.tZ)("div",{css:N.detailsThumb,children:(0,_.tZ)("img",{src:c.thumb,alt:c.title})})}),(0,_.BX)("div",{children:[(0,_.BX)("h4",{css:N.detailsTitle,children:[o.title,(0,_.BX)("span",{children:[a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LAYOUT_COUNT",{count:o.count})," ",(0,_.tZ)("span",{children:O.Eu&&(0,_.tZ)(E.Z,{})})]})]}),(0,_.tZ)("p",{css:s.c.body(),children:o.description}),(0,_.tZ)("div",{css:N.detailLayouts,children:o.layouts.map((function(e){return(0,_.tZ)(P,{isActive:e.id===c.id,layout:e,setActiveLayout:u},e.id)}))})]}),(0,_.BX)("div",{css:N.detailsFooter,children:[(0,_.tZ)(n.Z,{variant:"secondary",onClick:function(){var e;return null===(e=window.open(c.preview,"_blank","noopener,noreferrer"))||void 0===e?void 0:e.focus()},children:a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LIVE_DEMO")}),O.Eu?(0,_.tZ)(S.Z,{}):(0,_.tZ)(n.Z,{variant:"primary",loading:b.isLoading,onClick:B(T().mark((function e(){var t;return T().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b.mutateAsync({id:c.id,type:"template"});case 2:t=e.sent,d(t.data.template,!0),f.reset(Z(Z({},f.getValues()),{},{css:t.data.css})),p({type:"success",message:a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_PAGE_IMPORTED_SUCCESSFULLY")}),i({action:"IMPORT"});case 7:case"end":return e.stop()}}),e)}))),disabled:O.Eu,children:a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_IMPORT")})]})]})};var N={detailsWrapper:(0,d.iv)("display:grid;grid-template-columns:2fr 3fr;gap:",u.W0[56],";padding-bottom:",u.W0[56],";padding-right:",u.W0[24],";max-height:calc(100vh - 260px);",b.iZ.overflowYAuto,";;label:detailsWrapper;"),detailsThumb:(0,d.iv)("box-shadow:",u.AF.base,";border-radius:",u.E0[5],";overflow:hidden;margin-bottom:",u.W0[32],";img{width:100%;};label:detailsThumb;"),detailsFooter:(0,d.iv)("position:absolute;left:0;bottom:0;width:100%;background-color:",u.qo.background.white,";display:flex;justify-content:end;align-items:center;gap:",u.W0[8],";padding:",u.W0[12],";border-top:1px solid ",u.qo.stroke.default,";;label:detailsFooter;"),detailsTitle:(0,d.iv)(s.c.heading4(),";display:flex;align-items:center;justify-content:space-between;margin-bottom:",u.W0[12],";>span{",s.c.body(),";color:",u.qo.text.neutral,";display:flex;justify-content:center;align-items:center;gap:",u.W0[6],";};label:detailsTitle;"),detailLayouts:(0,d.iv)("display:grid;grid-template-columns:repeat(3, 1fr);align-items:start;gap:",u.W0[32],";padding:",u.W0[40]," 0 ",u.W0[32],";;label:detailLayouts;")},G=r(9781);function W(e){return W="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},W(e)}function U(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function F(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?U(Object(r),!0).forEach((function(t){H(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):U(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function H(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==W(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==W(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===W(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function q(e){return function(e){if(Array.isArray(e))return X(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||z(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function V(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||z(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(e,t){if(e){if("string"==typeof e)return X(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?X(e,t):void 0}}function X(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const K=function(e){var t=e.closeModal,r=e.title,u=e.form,d=(0,v.$)(),b=V((0,y.useState)(null),2),E=b[0],O=b[1],I=V((0,y.useState)([]),2),S=I[0],C=I[1],x=(0,h.nx)(),P=(0,f.O)({defaultValues:{search:"",page:"",sortBy:""}}),L=(0,p.N)(P.watch("search")),A=P.watch("page"),T=P.watch("sortBy"),D=[{label:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_TITLE_ASC"),value:"asc"},{label:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_TITLE_DESC"),value:"desc"},{label:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_POPULAR_FIRST"),value:"popular-first"}];if(x.isLoading)return(0,_.tZ)(i.g4,{});if(!x.data)return(0,_.tZ)("div",{children:d("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")});var Z=function(e,t){return"asc"===T?e.title>t.title?1:-1:"desc"===T?t.title>e.title?1:-1:"popular-first"===T&&e.hits?Number(t.hits)-Number(e.hits):0};return(0,_.tZ)(G.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,children:(0,_.tZ)(m.RV,F(F({},u),{},{children:(0,_.tZ)("div",{css:$.wrapper(!!E),children:E?(0,_.BX)(_.HY,{children:[(0,_.BX)(n.Z,{variant:"text",onClick:function(){return O(null)},buttonCss:$.backToLayout,children:[(0,_.tZ)(a.Z,{name:"angleLeft"}),d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_BACK_TO_LAYOUT")]}),(0,_.tZ)(k,{template:E,closeModal:t})]}):(0,_.BX)(_.HY,{children:[(0,_.tZ)("div",{children:(0,_.BX)("div",{css:$.categoriesWrapper,children:[(0,_.tZ)("div",{css:$.categoryLabel,children:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_CATEGORIES")}),(0,_.tZ)("div",{css:$.categoryItems,children:x.data.layouts.map((function(e){return(0,_.BX)("div",{css:$.categoryItem,children:[(0,_.tZ)(o.Z,{label:e.title,labelCss:s.c.body(),checked:S.includes(e.alias),onChange:function(t){C(t?[].concat(q(S),[e.alias]):S.filter((function(t){return t!==e.alias})))}}),(0,_.tZ)("span",{children:e.count})]},e.id)}))})]})}),(0,_.BX)("div",{children:[(0,_.BX)("div",{css:$.topBar,children:[(0,_.tZ)(m.Qr,{control:P.control,name:"search",render:function(e){return(0,_.tZ)(c.Z,F(F({},e),{},{variant:"search",placeholder:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_SEARCH_LAYOUTS"),isClearable:!0}))}}),(0,_.BX)("div",{css:$.topBarRight,children:[(0,_.tZ)(m.Qr,{control:P.control,name:"page",render:function(e){return(0,_.tZ)(l.Z,F(F({},e),{},{options:x.data.pages,placeholder:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_PAGE")}))}}),(0,_.tZ)(m.Qr,{control:P.control,name:"sortBy",render:function(e){return(0,_.tZ)(l.Z,F(F({},e),{},{options:D,placeholder:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_SORT_BY")}))}}),(0,_.tZ)(n.Z,{variant:"text",onClick:function(){return P.reset()},children:d("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_RESET")})]})]}),(0,_.tZ)("div",{css:$.layoutsWrapper,children:x.data.layouts.map((function(e){return S.length<1||S.includes(e.alias)?function(e){var r=e.templates,n=new RegExp(L);return L&&L.length&&(r=e.templates.filter((function(e){return n.test(e.alias)}))),q(r).sort(Z).map((function(e){return A?e.layouts.map((function(r){if(r.title.toLocaleLowerCase()===A.toLocaleLowerCase())return(0,_.tZ)(g.Z,{layout:r,templateName:e.title,closeModal:t},r.id)})):(0,_.tZ)(w,{template:e,setActiveTemplate:O},e.id)}))}(e):void 0}))})]})]})})}))})};var $={wrapper:function(e){return(0,d.iv)("padding:",u.W0[24]," 0 ",u.W0[24]," ",u.W0[24],";position:relative;height:calc(100vh - 130px);",!e&&(0,d.iv)("padding:",u.W0[32]," 0 ",u.W0[32]," ",u.W0[24],";display:grid;grid-template-columns:228px auto;gap:",u.W0[32],";;label:wrapper;"),";;label:wrapper;")},backToLayout:(0,d.iv)("margin-bottom:",u.W0[16],";padding:0;;label:backToLayout;"),categoriesWrapper:(0,d.iv)("background-color:",u.qo.background.white,";border-radius:",u.E0[5],";box-shadow:",u.AF.card,";;label:categoriesWrapper;"),categoryLabel:(0,d.iv)(s.c.body("medium"),";padding:",u.W0[12]," ",u.W0[16]," 0;;label:categoryLabel;"),categoryItems:(0,d.iv)("display:flex;flex-direction:column;gap:",u.W0[16],";padding:",u.W0[16],";;label:categoryItems;"),categoryItem:(0,d.iv)("display:flex;justify-content:space-between;align-items:center;span{",s.c.body(),";color:",u.qo.text.neutral,";};label:categoryItem;"),topBar:(0,d.iv)("display:flex;align-items:center;justify-content:space-between;gap:",u.W0[16],";padding-right:",u.W0[32],";margin-bottom:",u.W0[28],";;label:topBar;"),topBarRight:(0,d.iv)("display:flex;align-items:center;border:1px solid ",u.qo.stroke.neutral,";border-radius:",u.E0[5],";overflow:hidden;input{border:none;border-right:1px solid ",u.qo.stroke.neutral,";border-radius:0;&:focus{box-shadow:none;}};label:topBarRight;"),layoutsWrapper:(0,d.iv)("display:grid;grid-template-columns:repeat(4, 1fr);gap:",u.W0[32],";padding:",u.W0[4]," ",u.W0[24]," ",u.W0[2]," ",u.W0[2],";max-height:calc(100vh - 260px);",b.iZ.overflowYAuto,";",u.Uo.smallTablet,"{grid-template-columns:repeat(3, 1fr);};label:layoutsWrapper;")}},1709:(e,t,r)=>{"use strict";r.d(t,{D:()=>E,d:()=>g});var n=r(824),o=r(917),i=r(7602),a=r(2902),l=r(4101),c=r(7294),u=r(5944);function s(e){return s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s(e)}function d(e){return function(e){if(Array.isArray(e))return b(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||h(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==s(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==s(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===s(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h(e,t){if(e){if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?b(e,t):void 0}}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var y={backdrop:(0,o.iv)("position:fixed;background-color:",(0,l.m4)(n.qo.text.hover,.8),";border:1px solid rgba(255, 255, 255, 0.5);backdrop-filter:blur(18px);inset:0;z-index:",n.W5.negative,";;label:backdrop;"),container:(0,o.iv)("z-index:",n.W5.modal,";position:fixed;inset:0;display:flex;justify-content:center;align-items:center;;label:container;"),wrapper:{name:"xkv8rl-wrapper",styles:"display:flex;justify-content:center;align-items:center;width:100%;height:100%;label:wrapper;"},popupBackdrop:function(e){return(0,o.iv)("top:",e?"48px !important":"",";;label:popupBackdrop;")}},m=c.createContext({showModal:function(){return Promise.resolve({action:"CLOSE"})},closeModal:i.ZT,hasModalOnStack:!1}),g=function(){return(0,c.useContext)(m)},E=function(e){var t,r,n=e.children,o=(t=(0,c.useState)({modals:[]}),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||h(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=o[0],s=o[1],p=function(e){"Escape"===e.key&&b({action:"CLOSE"})},v=(0,c.useCallback)((function(e){var t=e.component,r=e.props,n=e.closeOnOutsideClick,o=void 0!==n&&n;return document.addEventListener("keydown",p,!1),new Promise((function(e){s((function(n){return f(f({},n),{},{modals:[].concat(d(n.modals),[{component:t,props:r,resolve:e,closeOnOutsideClick:o,id:(0,i.x0)()}])})}))}))}),[]),b=(0,c.useCallback)((function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{action:"CLOSE"};s((function(t){return(0,a.Uy)(t,(function(t){var r=t.modals.pop();return null==r||r.resolve(e),0===t.modals.length&&document.removeEventListener("keydown",p,!1),t}))}))}),[]),g=(0,c.useMemo)((function(){return l.modals.length>0}),[l.modals]);return(0,u.BX)(m.Provider,{value:{showModal:v,closeModal:b,hasModalOnStack:g},children:[n,l.modals.map((function(e){var t,r;return(0,u.BX)("div",{css:[y.container,y.popupBackdrop(null===(t=e.props)||void 0===t?void 0:t.isPopup),";label:ModalProvider;"],children:[(0,u.tZ)("div",{css:y.wrapper,children:c.createElement(e.component,f(f({},e.props),{},{closeModal:b}))}),(0,u.tZ)("div",{css:[y.backdrop,y.popupBackdrop(null===(r=e.props)||void 0===r?void 0:r.isPopup),";label:ModalProvider;"],onClick:function(){e.closeOnOutsideClick&&b({action:"CLOSE"})}})]},e.id)}))]})}},9781:(e,t,r)=>{"use strict";r.d(t,{Z:()=>d});var n=r(3871),o=r(7264),i=r(824),a=r(4185),l=r(917),c=r(1921),u=r(7294),s=r(5944);const d=function(e){var t=e.children,r=e.onClose,i=e.title,l=e.isOverflowYAuto,c=void 0===l||l,d=e.wrapperCss,f=e.headerCss,v=e.contentCss,h=e.hideHeader,b=void 0!==h&&h;return(0,u.useEffect)((function(){return document.body.style.overflow="hidden",function(){document.body.style.overflow="initial"}}),[]),(0,s.BX)("div",{css:[p.container,d,";label:ModalWrapper;"],children:[!b&&(0,s.BX)("div",{css:[p.header,f,";label:ModalWrapper;"],children:[i&&(0,s.tZ)("h5",{css:a.c.heading5("medium"),children:i}),(0,s.tZ)(n.Z,{variant:"text",buttonCss:p.closeButton,onClick:r,children:(0,s.tZ)(o.Z,{name:"times",width:14,height:14})})]}),(0,s.tZ)("div",{css:[p.content({isOverflowYAuto:c}),v,";label:ModalWrapper;"],children:t})]})};var p={container:(0,l.iv)("background:",i.qo.background.primary,";margin:",i.W0[24],";max-width:1350px;width:100%;box-shadow:",i.AF.modal,";border-radius:",i.E0[8],";overflow:hidden;",i.Uo.smallTablet,"{max-width:90%;};label:container;"),header:(0,l.iv)("display:flex;justify-content:space-between;align-items:center;padding:",i.W0[12]," ",i.W0[16]," ",i.W0[12]," ",i.W0[24],";width:100%;background-color:",i.qo.background.white,";border-bottom:1px solid ",i.qo.stroke.neutral,";;label:header;"),closeButton:(0,l.iv)(c.iZ.resetButton,";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}:hover{svg{color:",i.qo.icon.hover,";}};label:closeButton;"),content:function(e){var t=e.isOverflowYAuto,r=void 0===t||t;return(0,l.iv)("overflow:hidden;max-height:calc(100vh - 120px);height:100%;",r&&(0,l.iv)(c.iZ.overflowYAuto,";;label:content;"),";;label:content;")}}},4632:(e,t,r)=>{"use strict";r.d(t,{Z:()=>m});var n=r(3871),o=r(7025),i=r(1731),a=r(824),l=r(4185),c=r(917),u=r(1234),s=r(7294),d=r(9781),p=r(5944);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function v(){v=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function h(){}function b(){}var y={};c(y,i,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(P([])));g&&g!==t&&r.call(g,i)&&(y=g);var E=b.prototype=p.prototype=Object.create(y);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==f(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return h.prototype=b,n(E,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:h,configurable:!0}),h.displayName=c(b,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===h||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,c(e,l,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),c(E,l,"Generator"),c(E,i,(function(){return this})),c(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function h(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function b(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return y(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?y(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const m=function(e){var t=e.closeModal,r=e.currentName,a=e.onSave,l=e.title,c=e.placeholder,f=(0,u.$)(),y=(0,i.p)().showToast,m=b((0,s.useState)(r),2),E=m[0],O=m[1],_=b((0,s.useState)(!1),2),w=_[0],I=_[1],S=function(){var e,r=(e=v().mark((function e(){return v().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(E.trim()){e.next=3;break}return y({type:"danger",message:f("COM_SPPAGEBUILDER_EDITOR_VERSION_NAME_REQUIRED")}),e.abrupt("return");case 3:return I(!0),e.prev=4,e.next=7,a(E.trim());case 7:t({action:"CLOSE"}),e.next=13;break;case 10:e.prev=10,e.t0=e.catch(4),y({type:"danger",message:f("COM_SPPAGEBUILDER_EDITOR_VERSION_RENAME_ERROR")});case 13:return e.prev=13,I(!1),e.finish(13);case 16:case"end":return e.stop()}}),e,null,[[4,10,13,16]])})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){h(i,n,o,a,l,"next",e)}function l(e){h(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(){return r.apply(this,arguments)}}(),C=function(){t({action:"CLOSE"})},x=!E.trim();return(0,p.tZ)(d.Z,{onClose:C,title:l||f("COM_SPPAGEBUILDER_EDITOR_RENAME_VERSION"),wrapperCss:g.modalWrapper,headerCss:g.header,children:(0,p.BX)("div",{css:g.content,children:[(0,p.tZ)("div",{css:g.field,children:(0,p.tZ)(o.Z,{value:E,onChange:O,placeholder:c||f("COM_SPPAGEBUILDER_EDITOR_VERSION_NAME"),disabled:w,onKeyDown:function(e,t){var r;"Enter"===(r=t).key&&E.trim()?S():"Escape"===r.key&&C()}})}),(0,p.BX)("div",{css:g.footer,children:[(0,p.tZ)(n.Z,{variant:"secondary",onClick:C,disabled:w,children:f("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,p.tZ)(n.Z,{variant:"primary",onClick:S,loading:w,disabled:x,children:f("COM_SPPAGEBUILDER_EDITOR_SAVE")})]})]})})};var g={modalWrapper:{name:"lmv8hs-modalWrapper",styles:"max-width:380px;width:100%;label:modalWrapper;"},header:(0,c.iv)(l.c.heading5("regular"),";;label:header;"),content:(0,c.iv)("position:relative;min-height:150px;padding:",a.W0[24]," ",a.W0[20],";background-color:",a.qo.background.primary,";;label:content;"),field:(0,c.iv)("margin-bottom:",a.W0[24],";;label:field;"),footer:(0,c.iv)("display:flex;justify-content:end;align-items:center;gap:",a.W0[10],";padding:",a.W0[12]," ",a.W0[16],";background-color:",a.qo.background.white,";border-top:1px solid ",a.qo.stroke.neutral,";z-index:",a.W5.positive,";width:100%;height:56px;position:absolute;bottom:0;left:0;;label:footer;")}},1518:(e,t,r)=>{"use strict";r.d(t,{u:()=>n});var n={ARTICLES:-2,TAGS:-3}},1974:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(7602);const o={API_BASE_URL:"".concat(n.Xy.pagebuilderBase,"administrator/index.php?option=com_sppagebuilder&task="),APPLICATION_ROOT:n.Xy.pagebuilderBase}},3106:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}var o,i;function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}r.d(t,{Ak:()=>w,Dw:()=>B,E_:()=>V,Eb:()=>N,G2:()=>W,HZ:()=>j,Hh:()=>_,Hy:()=>v,IR:()=>F,LP:()=>U,Lx:()=>T,P8:()=>s,Q9:()=>h,RI:()=>E,Up:()=>m,Vg:()=>q,XA:()=>k,ZR:()=>C,Zs:()=>p,_y:()=>D,a7:()=>I,aX:()=>g,cf:()=>P,dR:()=>x,dZ:()=>y,du:()=>R,f9:()=>H,g3:()=>u,hF:()=>S,iq:()=>d,lk:()=>b,lr:()=>G,oA:()=>Z,pb:()=>O,sD:()=>L,sF:()=>A,t:()=>M,vH:()=>z,zu:()=>f});var u=48,s=326,d=80,p=320,f="xl",v=15,h=20,b=6,y="rtl"===document.dir,m=["team_carousel","carousel","carouselpro","image_carousel","js_slideshow","testimonial_carousel","testimonialpro","icons_group","button_group","clients","gallery","tab","accordion"],g=["hidden","text","gmap","select","dynamic_source","dynamic_field","filter_control","category","plugin","accesslevel","animation","alert","alignment","headings","link","color","advancedcolor","border","textarea","separator","header","number","module","checkbox","radio","advancedradio","icon","editor","media","padding","margin","builder","boxshadow","slider","advancedslider","fontstyle","fonts","advancedsettings","typography","codeeditor","gradient","buttons","thumbnail","timeline","repeatable","fixed_repeatable","frontend_navigator","banner","preset","effects","transform","image_shape","attribute","filter","grid-template","grid-gap","tagsinput"],E={accordion:{title:"Accordion",name:"accordion",key:"sp_accordion_item",text:"Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et."},tab:{title:"Tab",name:"tab",key:"sp_tab_item",text:"Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et."}},O={name:"table_advanced",bodyItemsKey:"table_advanced_item",headerItemsKey:"sp_table_advanced_item"},_=[].concat(l(Object.keys(E)),[O.name,"div"]),w={xl:{name:"COM_SPPAGEBUILDER_EDITOR_DEVICE_LAPTOP",icon:"laptop"},lg:{name:"COM_SPPAGEBUILDER_EDITOR_DEVICE_TABLET_LANDSCAPE",icon:"tabletHorizontal"},md:{name:"COM_SPPAGEBUILDER_EDITOR_DEVICE_TABLET_PORTRAIT",icon:"tabletVertical"},sm:{name:"COM_SPPAGEBUILDER_EDITOR_DEVICE_MOBILE_LANDSCAPE",icon:"mobileHorizontal"},xs:{name:"COM_SPPAGEBUILDER_EDITOR_DEVICE_MOBILE_PORTRAIT",icon:"mobileVertical"}},I={min:0,max:100},S={solid:"#B3B6CB",linear:"linear-gradient(131.63deg, #B5B5B5 11.15%, #F2F2F2 58.82%)",radial:"radial-gradient(41.67% 41.67% at 50% 50%, #4D5387 0%, rgba(115, 119, 155, 0) 100%)"},C=230,x=function(e){return e.COPIED_ADDON_LOCAL_STORAGE_KEY="sppb-backend-addon",e.COPIED_SECTION_LOCAL_STORAGE_KEY="sppb-backend-section",e.TABLE_COLUMNS_LOCAL_STORAGE_KEY="sppb-backend-table-columns",e.ITEMS_PER_PAGE_LOCAL_STORAGE_KEY="sppb-backend-items-per-page",e.DYNAMIC_CONTENT_LIMIT_PER_PAGE_LOCAL_STORAGE_KEY="sppb-backend-dynamic-content-items-per-page",e.TABLE_COLUMNS_COLLECTION_LOCAL_STORAGE_KEY="sppb-backend-collection-items-columns",e.ITEMS_PER_PAGE_COLLECTION_LOCAL_STORAGE_KEY="sppb-backend-items-per-page-collection",e.SECTION_EXPANDED_LOCAL_STORAGE_KEY="sppb-editor-section-expanded",e}({}),P=function(e){return e.DYNAMIC_CONTENT_PAGINATOR_CURRENT_PAGE="sppb-backend-dynamic-content-paginator-current-page",e}({}),L="https://www.joomshaper.com/documentation/sp-page-builder",A={fade:{fadeIn:"Fade",fadeInDown:"Down",fadeInDownBig:"Down Big",fadeInLeft:"Left",fadeInLeftBig:"Left Big",fadeInRight:"Right",fadeInRightBig:"Right Big",fadeInUp:"Up",fadeInUpBig:"UpBig"},flip:{flip:"Flip",flipInX:"Flip X",flipInY:"Flip Y"},rotate:{rotateIn:"Rotate",rotateInDownLeft:"Down Left",rotateInDownRight:"Down Right",rotateInUpLeft:"Up Left",rotateInUpRight:"Up Right"},zoom:{zoomIn:"Zoom",zoomInDown:"Down",zoomInLeft:"Left",zoomInRight:"Right",zoomInUp:"Up"},bounce:{bounceIn:"Bounce",bounceInDown:"Down",bounceInLeft:"Left",bounceInRight:"Right",bounceInUp:"Up"},special:{flash:"Flash",pulse:"Pulse",rubberBand:"rubber Band",shakeX:"Shake X",shakeY:"Shake Y",headShake:"Head Shake",swing:"Swing",tada:"Tada",wobble:"Wobble",jello:"Jello",heartBeat:"Heart Beat"}},T=["System","Google Fonts","Arial","Tahoma","Verdana","Helvetica","Times New Roman","Trebuchet MS","Georgia"],D="https://www.joomshaper.com/pricing?plan=page-builder-pro",Z={productList:"easystore_common_productlist",categoryList:"easystore_common_categorylist",paginationstatus:"easystore_common_paginationstatus",filter:"easystore_list_filter",pagination:"easystore_list_pagination"},R={prefix:"collection_"},j={prefix:"easystore_",name:"easystore",extension:"com_easystore",single:{type:"single",url:"single-product",category:"Product"},list:{type:"storefront",url:"product-list",category:"Product List"}},B=function(e){return e.AddonElement="addon-element",e.ProductListAddonElement="productlist-addon-element",e.CategoryListAddonElement="categorylist-addon-element",e.SingleAddonElement="single-addon-element",e.CommonAddonElement="common-addon-element",e.CollectionAddonElement="easystore-collection-addon-element",e.DivElement="div-element",e.RowElement="row-element",e.ColumnsElement="columns-element",e.SavedAddonElement="saved-addon-element",e.SavedSectionElement="saved-section-element",e.BlockElement="block-element",e}({}),M=function(e){return e.Section="section",e.NestedRow="nestedRow",e.DeepAddonRow="deepAddonRow",e.Column="column",e.Addon="addon",e.Div="div",e.CollectionItemAddon="collection-item-addon",e.EmptyDivChild="empty-div-child",e.DeepAddon="deepAddon",e.TableItem="tableItem",e.DCCollectionAddonEmptyChild="dynamic-content-collection-addon-empty-child",e.DCCollectionItemAddon="dynamic-content-collection-item-addon",e.DCDivAddonEmptyChild="dynamic-content-div-addon-empty-child",e}({}),k="editor-empty-state",N="accepted-all",G="pages-list",W="collection_list",U=(a(o={},M.Section,{accepted:[B.RowElement,B.SavedSectionElement,B.BlockElement],rejected:[]}),a(o,M.NestedRow,{accepted:[],rejected:[B.ColumnsElement]}),a(o,M.DeepAddonRow,{accepted:[],rejected:[]}),a(o,M.Column,a({accepted:[],rejected:[]},N,!0)),a(o,M.Addon,{accepted:[],rejected:[B.ColumnsElement]}),a(o,M.DeepAddon,{accepted:[],rejected:[B.ColumnsElement]}),a(o,M.Div,{accepted:[],rejected:[B.ColumnsElement]}),a(o,M.CollectionItemAddon,{accepted:[],rejected:[B.RowElement,B.ColumnsElement,B.SingleAddonElement,B.CommonAddonElement,"table_advanced","tab","accordion",Z.productList,Z.categoryList,Z.filter,Z.pagination]}),a(o,M.EmptyDivChild,{accepted:[B.AddonElement,B.DivElement,B.SavedAddonElement,B.SingleAddonElement,B.CommonAddonElement,Z.filter,Z.productList,Z.categoryList],rejected:[]}),a(o,M.TableItem,{accepted:[B.AddonElement],rejected:[]}),a(o,k,{accepted:[B.SavedSectionElement,B.BlockElement],rejected:[]}),a(o,M.DCCollectionItemAddon,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),a(o,M.DCCollectionAddonEmptyChild,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),a(o,M.DCDivAddonEmptyChild,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),o),F=(a(i={},M.Section,{accepted:[M.Section],rejected:[]}),a(i,M.NestedRow,{accepted:[M.Addon,M.Div,M.DeepAddon,M.NestedRow],rejected:[]}),a(i,M.DeepAddonRow,{accepted:[],rejected:[]}),a(i,M.Column,a({accepted:[],rejected:[]},N,!0)),a(i,M.Addon,{accepted:[M.Addon,M.Div,M.DeepAddon,M.NestedRow],rejected:[]}),a(i,M.Div,{accepted:[M.Addon,M.Div,M.DeepAddon,M.NestedRow],rejected:[]}),a(i,M.CollectionItemAddon,{accepted:[],rejected:[B.RowElement,B.ColumnsElement,B.SingleAddonElement,B.CommonAddonElement,"table_advanced","tab","accordion"]}),a(i,M.EmptyDivChild,{accepted:[M.Addon,M.Div,M.DeepAddon],rejected:[]}),a(i,M.DeepAddon,{accepted:[M.Addon,M.Div,M.DeepAddon,M.NestedRow],rejected:[]}),a(i,M.TableItem,{accepted:[],rejected:[]}),a(i,M.DCCollectionItemAddon,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),a(i,M.DCCollectionAddonEmptyChild,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),a(i,M.DCDivAddonEmptyChild,{accepted:[],rejected:["accordion","tab","table_advanced","row","columns","articles","article_scroller","carousel","carouselpro","image_carousel","instagram_gallery","js_slideshow"].concat(l(Object.values(Z)))}),i),H=["screen_mode","stretch_section"],q={256:"256x256",512:"512x512",1024:"1024x1024"},V=function(e){return e.yearMonthDay="yyyy-LL-dd",e.monthDayYear="MMM dd, yyyy",e.hoursMinutes="hh:mm a",e.monthDayYearHoursMinutes="MMM dd, yyyy, hh:mm a",e.localMonthDayYearHoursMinutes="PPp",e.dateFormat="yyy-MM-dd",e.monthNameDayYearHourMinute="MMM d, yyyy hh:mm a",e.monthNameDayYear="MMM d, yyyy",e.altDateFormat="yyyy-MM-dd",e}({}),z="field_"},6537:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{H:()=>l});var l=i(i({},{PAGES:"editor.pages",PAGE_CONTENT_BY_ID:"editor.pageContentById",PRODUCT_PAGE_CONTENT_BY_ID:"editor.productPageContentById",ADDONS:"editor.addons",REGISTER_LANGUAGE_KEYS:"editor.registerLanguageKeys",APP_CONFIG:"editor.appConfig",CONTENT_ARTICLE_SCHEMA_FORM:"editor.contentArticleSchemaForm",SETTINGS:"editor.settings",ICONS:"editor.icons",FONTS:"editor.fonts",ALL_FONTS:"editor.allFonts",UPLOAD_FONT:"editor.uploadFont",MEDIA:"editor.media",AI_CONTENT_UPLOAD:"editor.aiContentUpload",AI_CONTENT:"editor.aiContent",MEDIA_FOLDERS:"editor.folders",SECTION_LIBRARY:"editor.sectionLibrary",MENU_BY_PAGE_ID:"editor.getMenuByPageId",MENU_LIST:"editor.getMenuList",MENU_PARENT_ITEMS:"editor.getParentItems",ADD_TO_MENU:"editor.addToMenu",LANGUAGE:"editor.language",PAGE_ORDERING:"editor.pageOrder",GET_ALL_ICONS:"editor.icons",DUPLICATE_PAGE:"editor.duplicate",EXPORT:"editor.export",BULK_EXPORT:"editor.bulkExport",BULK_IMPORT:"editor.bulkImport",PAGE_TEMPLATE_LIST:"editor.pageTemplateList",POPUP_TEMPLATE_LIST:"editor.popupTemplateList",INTEGRATIONS:"editor.integrations",SAVED_ADDONS:"editor.savedAddons",SAVED_PRESETS:"editor.savedPresets",SAVED_ADDONS_ORDERING:"editor.savedAddonsOrder",SAVED_SECTIONS:"editor.savedSection",SAVED_SECTIONS_ORDERING:"editor.savedSectionsOrder",LAYOUT_IMPORT:"editor.import",IMPORT_LAYOUT_FILE:"editor.importJson",APPLICATION_SETTINGS:"editor.applicationSettings",GLOBAL_COLORS:"editor.globalColors",PURGE_CSS:"editor.purgeCss",SAVE_IG_TOKEN:"editor.saveIgToken",PERMISSIONS:"editor.getPermissions",IMAGE_SHAPE:"editor.imageShapes",PLUGINS:"editor.pluginsList",PREVIEW_URL:"editor.previewUrl",PAGE_PADLOCK:"editor.pagePadlock",DELETE_PAGE_HITS:"editor.deletePageHits",TYPOGRAPHY_IN_USE:"editor.typographyInUse",PAGE_VERSIONS:"editor.getVersions",DELETE_VERSION:"editor.deleteVersion",DELETE_VERSIONS:"editor.deleteVersions",RESTORE_VERSION:"editor.restoreVersion",UPDATE_VERSION_NOTE:"editor.updateVersionNote",UPDATE_VERSION_NAME:"editor.updateVersionName",VERSION_CONTENT:"editor.getVersionContent"}),{COLLECTION_LIST:"collections.list",COLLECTION_SCHEMA:"collections.schema",REORDER_COLLECTION:"collections.reorder",REORDER_COLLECTION_FIELDS:"collections.reorder",RENAME_COLLECTION:"collections.rename",DUPLICATE_COLLECTION:"collections.duplicate",DELETE_COLLECTION:"collections.delete",COLLECTION_ITEM_FORM:"collections.form",COLLECTION_EDIT_ITEM_FORM:"collections.single",UPDATE_ACTION:"collections.update",COLLECTION_UPDATE_BATCH_ITEM_FORM:"collections.batch-update",CREATE_COLLECTION:"collections.create",COLLECTION_ATTRIBUTES:"collections.attributes",COLLECTION_ITEMS_AS_OPTIONS:"collections.items-as-options",DUPLICATE_COLLECTION_ITEM:"collections.duplicate",COLLECTION_FIELDS:"collections.collectionFields",REFERENCE_COLLECTION_FIELDS:"collections.referenceCollectionFields",DYNAMIC_CONTENT_PAGES:"collections.dynamicContentPages",EXPORT_DYNAMIC_COLLECTION:"collections.export",IMPORT_DYNAMIC_COLLECTION:"collections.import",COLLECTION_TOTAL_FIELDS:"collections.totalFieldsByCollection",IMPORT_COLOR_PRESETS:"editor.importColorPresets",EXPORT_COLOR_PRESETS:"editor.exportColorPresets"})},3261:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){a(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function a(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{G:()=>l});var l=i(i({},{saveClose:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M31.693 10.667a8.669 8.669 0 0 1-7.377 8.57v8.067a2.572 2.572 0 0 1-2.571 2.571H2.888a2.539 2.539 0 0 1-2.572-2.571V8.446a2.572 2.572 0 0 1 2.572-2.571h12.915a8.667 8.667 0 0 1 15.89 4.792Zm-9.948 16.315V19.24a8.67 8.67 0 0 1-6.042-3.935H6.745c-.75 0-1.286-.536-1.286-1.286V8.446H3.21c-.214 0-.321.161-.321.322v18.214c0 .214.107.322.321.322h18.215c.16 0 .321-.108.321-.322Zm-7.386-16.315c0-.768.1-1.512.287-2.22H8.031v4.285h6.576a8.689 8.689 0 0 1-.248-2.065Zm-2.043 5.922c-2.625 0-4.714 2.143-4.714 4.715a4.687 4.687 0 0 0 4.714 4.714c2.572 0 4.715-2.09 4.715-4.714 0-2.572-2.143-4.715-4.715-4.715Zm0 6.857c-1.232 0-2.143-.91-2.143-2.142 0-1.179.911-2.143 2.143-2.143a2.15 2.15 0 0 1 2.143 2.143c0 1.232-.964 2.142-2.143 2.142ZM28.167 6.51l-4.153 4.154 4.153 4.153a.69.69 0 1 1-.977.977l-4.154-4.153-4.153 4.153a.69.69 0 0 1-.977 0 .69.69 0 0 1 0-.977l4.153-4.153-4.153-4.154a.69.69 0 1 1 .977-.977l4.154 4.153 4.153-4.153a.69.69 0 1 1 .977.977Z" fill="currentColor"/>',viewBox:"0 0 32 32"},backendLink:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.2" d="M7 12h5.5a1.5 1.5 0 0 0 1.5-1.5v-7A1.5 1.5 0 0 0 12.5 2h-7A1.5 1.5 0 0 0 4 3.5V9m7-4-9 9m0 0h3.5M2 14v-3.5" fill="none" />',viewBox:"0 0 16 16"},saveNew:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M12.38 16.657c-2.637 0-4.736 2.153-4.736 4.736a4.71 4.71 0 0 0 4.736 4.737c2.584 0 4.737-2.1 4.737-4.737 0-2.583-2.153-4.736-4.737-4.736Zm0 6.89c-1.238 0-2.153-.916-2.153-2.154 0-1.184.915-2.152 2.153-2.152a2.16 2.16 0 0 1 2.153 2.152c0 1.238-.968 2.153-2.153 2.153Z" fill="#676D98"/><path fill-rule="evenodd" clip-rule="evenodd" d="M31.836 10.832a8.71 8.71 0 0 1-7.4 8.61v7.98a2.584 2.584 0 0 1-2.583 2.583H2.908a2.55 2.55 0 0 1-2.584-2.583V8.476c0-1.4 1.13-2.583 2.584-2.583h13.049a8.707 8.707 0 0 1 15.879 4.94ZM21.853 27.1v-7.652a8.711 8.711 0 0 1-6.16-4.082h-8.91c-.754 0-1.292-.538-1.292-1.291V8.476h-2.26c-.216 0-.323.162-.323.323v18.3c0 .215.107.323.323.323h18.3c.16 0 .322-.108.322-.323Zm-7.432-16.267c0-.816.113-1.607.323-2.356h-6.67v4.306h6.566a8.732 8.732 0 0 1-.219-1.95Zm9.432-4.644a.714.714 0 0 0-1.429 0v3.93h-3.929a.715.715 0 0 0 0 1.429h3.93v3.93a.714.714 0 1 0 1.428 0v-3.93h3.93a.714.714 0 0 0 0-1.43h-3.93V6.189Z" fill="currentColor"/>',viewBox:"0 0 32 32"},cornerGear:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.852 0H0v4.817h3.235V3.211h1.617V0Zm12.94 0h-6.47v3.211h6.47V0Zm11.322 0H24.26v3.211h1.618v1.606h3.235V0ZM0 11.24v6.423h3.235V11.24H0Zm29.114 6.423V11.24h-3.235v6.423h3.235Zm-25.88 6.423H0v4.817h4.852v-3.211H3.235v-1.606Zm8.088 4.817h6.47v-3.211h-6.47v3.211Zm19.462-2.213 1.062.6a.337.337 0 0 1 .148.349c-.297.899-.741 1.698-1.359 2.372a.297.297 0 0 1-.37.05l-1.062-.6a4.953 4.953 0 0 1-1.482.875v1.224c0 .125-.1.25-.247.3a6.52 6.52 0 0 1-2.693 0c-.123-.05-.222-.175-.222-.3v-1.224c-.568-.2-1.062-.5-1.507-.874l-1.062.6a.297.297 0 0 1-.37-.05 6.402 6.402 0 0 1-1.334-2.373.289.289 0 0 1 .123-.35l1.062-.6a5.34 5.34 0 0 1 0-1.772l-1.062-.6a.289.289 0 0 1-.123-.35c.271-.898.74-1.697 1.333-2.372a.297.297 0 0 1 .371-.05l1.062.625c.445-.4.939-.7 1.507-.9v-1.223c0-.125.074-.25.222-.275a5.772 5.772 0 0 1 2.693 0 .29.29 0 0 1 .247.275v1.224c.543.2 1.037.5 1.482.874l1.062-.6a.297.297 0 0 1 .37.05 6.403 6.403 0 0 1 1.334 2.373c.05.125 0 .274-.123.35l-1.063.599a4.29 4.29 0 0 1 0 1.773Zm-6.62-.9c0 1.125.864 1.999 1.976 1.999a1.977 1.977 0 0 0 1.976-1.998c0-1.099-.89-1.998-1.976-1.998-1.112 0-1.976.899-1.976 1.998Z" fill="currentColor"/>',viewBox:"0 0 32 32"},expandAll:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M9.68417 2.5549H4.37292L12.2388 10.4544C12.7429 10.925 12.7429 11.7318 12.2388 12.236C11.7682 12.7401 10.9613 12.7401 10.4572 12.236L2.59113 4.36995L2.59136 9.64795C2.59136 10.354 2.01993 10.9254 1.31391 10.9254C0.607895 10.9254 0.036461 10.354 0.036461 9.64795V1.27768C0.036461 0.571668 0.607865 0.000234483 1.31391 0.000234483L9.68417 0C10.3902 0 10.9616 0.571434 10.9616 1.27745C10.9616 1.98347 10.3902 2.5549 9.68417 2.5549ZM29.4102 22.3173C29.4102 21.6113 29.9816 21.0399 30.6877 21.0399L30.6874 21.0399C31.3934 21.0399 31.9648 21.6114 31.9648 22.3174L31.9651 30.7213C31.9651 31.4273 31.3936 31.9987 30.6876 31.9987H22.3173C21.6113 31.9987 21.0399 31.4273 21.0399 30.7213C21.0399 30.0153 21.6113 29.4438 22.3173 29.4438H27.6286L19.7962 21.5778C19.292 21.1072 19.292 20.3003 19.7962 19.7962C20.2668 19.292 21.0737 19.292 21.5778 19.7962L29.4102 27.6286V22.3173ZM10.4209 19.8008L2.5549 27.6332V22.322C2.5549 21.6159 1.98347 21.0445 1.27745 21.0445C0.571434 21.0445 0 21.6159 0 22.322V30.6922C0 31.3983 0.571434 31.9697 1.27745 31.9697H9.64771C10.3538 31.9697 10.9252 31.3982 10.9252 30.6922C10.9252 29.9862 10.3537 29.4148 9.64771 29.4148H4.36996L12.236 21.5487C12.7401 21.0446 12.7401 20.2377 12.236 19.7671C11.7319 19.2963 10.9252 19.2963 10.4209 19.8007L10.4209 19.8008ZM22.3173 0.036461H30.6876L30.6875 0.036521C31.3935 0.036521 31.965 0.607925 31.9985 1.31397L31.9987 9.68423C31.9987 10.3903 31.4273 10.9617 30.7213 10.9617C30.0153 10.9617 29.4438 10.3903 29.4438 9.68423V4.37298L21.5778 12.2054C21.1072 12.7095 20.3003 12.7095 19.7962 12.2054C19.292 11.7348 19.292 10.9279 19.7962 10.4238L27.6286 2.59136H22.3173C21.6113 2.59136 21.0399 2.01993 21.0399 1.31391C21.0399 0.607895 21.6113 0.036461 22.3173 0.036461Z" fill="currentColor" />',viewBox:"0 0 32 32"},collapseAll:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M12.3566 2.8512L12.3566 11.0827L12.3565 11.0826C12.3565 11.7769 11.7938 12.3389 11.0984 12.3719L2.85525 12.3721C2.15995 12.3721 1.59719 11.8101 1.59719 11.1158C1.59719 10.4215 2.15992 9.85955 2.85525 9.85955H8.08587L0.372362 2.12392C-0.124121 1.66111 -0.124121 0.867614 0.372362 0.371834C0.835835 -0.123945 1.63045 -0.123945 2.12694 0.371835L9.84044 8.07441V2.8512C9.84044 2.15689 10.4032 1.59493 11.0985 1.59493C11.7938 1.59493 12.3566 2.15686 12.3566 2.8512ZM12.3566 29.1507L12.3566 20.9192L12.3565 20.9194C12.3565 20.225 11.7938 19.6631 11.0984 19.6301L2.85525 19.6299C2.15995 19.6299 1.59719 20.1918 1.59719 20.8861C1.59719 21.5804 2.15992 22.1424 2.85525 22.1424H8.08587L0.372362 29.878C-0.124121 30.3408 -0.124121 31.1343 0.372362 31.6301C0.835835 32.1259 1.63045 32.1259 2.12694 31.6301L9.84044 23.9275V29.1507C9.84044 29.8451 10.4032 30.407 11.0985 30.407C11.7938 30.407 12.3566 29.8451 12.3566 29.1507ZM19.6423 11.0827V2.8512C19.6423 2.15686 20.205 1.59493 20.9003 1.59493C21.5956 1.59493 22.1584 2.15689 22.1584 2.8512V8.07441L29.8719 0.371835C30.3684 -0.123945 31.163 -0.123945 31.6265 0.371834C32.1229 0.867614 32.1229 1.66111 31.6265 2.12392L23.913 9.85955H29.1436C29.8389 9.85955 30.4016 10.4215 30.4016 11.1158C30.4016 11.8101 29.8389 12.3721 29.1436 12.3721L20.9004 12.3719C20.2051 12.3389 19.6423 11.7769 19.6423 11.0826L19.6423 11.0827ZM19.6423 29.1507V20.9192L19.6423 20.9194C19.6423 20.225 20.2051 19.6631 20.9004 19.6301L29.1436 19.6299C29.8389 19.6299 30.4016 20.1918 30.4016 20.8861C30.4016 21.5804 29.8389 22.1424 29.1436 22.1424H23.913L31.6265 29.878C32.1229 30.3408 32.1229 31.1343 31.6265 31.6301C31.163 32.1259 30.3684 32.1259 29.8719 31.6301L22.1584 23.9275V29.1507C22.1584 29.8451 21.5956 30.407 20.9003 30.407C20.205 30.407 19.6423 29.8451 19.6423 29.1507Z" fill="currentColor" />',viewBox:"0 0 32 32"},roundedCorner:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 4.85393C0 2.17318 2.17318 0 4.85393 0H27.1461C29.8268 0 32 2.17318 32 4.85393V27.1461C32 29.8268 29.8268 32 27.1461 32H4.85393C2.17318 32 0 29.8268 0 27.1461V4.85393ZM4.85393 3.23595C3.96035 3.23595 3.23595 3.96035 3.23595 4.85393V27.1461C3.23595 28.0397 3.96035 28.764 4.85393 28.764H27.1461C28.0397 28.764 28.764 28.0397 28.764 27.1461V4.85393C28.764 3.96035 28.0397 3.23595 27.1461 3.23595H4.85393Z" fill="#4E5487" fill="currentColor"/>',viewBox:"0 0 32 32"},ellipsisDoubleX:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M5.6 14.2a2.6 2.6 0 100-5.2 2.6 2.6 0 000 5.2zm0 8.667a2.6 2.6 0 100-5.2 2.6 2.6 0 000 5.2zm13-11.267a2.6 2.6 0 11-5.2 0 2.6 2.6 0 015.2 0zM16 22.867a2.6 2.6 0 100-5.2 2.6 2.6 0 000 5.2zM29 11.6a2.6 2.6 0 11-5.2 0 2.6 2.6 0 015.2 0zm-2.6 11.267a2.6 2.6 0 100-5.2 2.6 2.6 0 000 5.2z" fill="currentColor"/>',viewBox:"0 0 32 32"},ellipsisDoubleY:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M17.8 5.6a2.6 2.6 0 105.2 0 2.6 2.6 0 00-5.2 0zm-8.667 0a2.6 2.6 0 105.2 0 2.6 2.6 0 00-5.2 0zm11.267 13a2.6 2.6 0 110-5.2 2.6 2.6 0 010 5.2zM9.133 16a2.6 2.6 0 105.2 0 2.6 2.6 0 00-5.2 0zM20.4 29a2.6 2.6 0 110-5.2 2.6 2.6 0 010 5.2zM9.133 26.4a2.6 2.6 0 105.2 0 2.6 2.6 0 00-5.2 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},ellipsisX:{icon:'<path d="M19.484 16.484C19.484 14.597 17.887 13 16 13c-1.935 0-3.484 1.597-3.484 3.484A3.47 3.47 0 0016 19.968c1.887 0 3.484-1.549 3.484-3.484zM24.516 13c-1.935 0-3.484 1.597-3.484 3.484a3.47 3.47 0 003.484 3.484c1.887 0 3.484-1.549 3.484-3.484C28 14.597 26.403 13 24.516 13zM7.484 13C5.548 13 4 14.597 4 16.484a3.47 3.47 0 003.484 3.484c1.887 0 3.484-1.549 3.484-3.484C10.968 14.597 9.37 13 7.484 13z" fill="currentColor"/>',viewBox:"0 0 32 32"},ellipsisY:{icon:'<path d="M16.516 19.484C18.403 19.484 20 17.887 20 16c0-1.935-1.597-3.484-3.484-3.484A3.47 3.47 0 0013.032 16c0 1.887 1.549 3.484 3.484 3.484zM20 24.516c0-1.935-1.597-3.484-3.484-3.484a3.47 3.47 0 00-3.484 3.484c0 1.887 1.549 3.484 3.484 3.484C18.403 28 20 26.403 20 24.516zm0-17.032C20 5.548 18.403 4 16.516 4a3.47 3.47 0 00-3.484 3.484c0 1.887 1.549 3.484 3.484 3.484C18.403 10.968 20 9.37 20 7.484z" fill="currentColor"/>',viewBox:"0 0 32 32"},angleLeft:{icon:'<path d="M8.91 16.007c0 .345.133.69.387.926l10.615 10.694c.227.235.522.373.857.373.696 0 1.231-.539 1.231-1.257 0-.346-.134-.664-.348-.898l-9.745-9.838 9.745-9.852c.214-.22.348-.538.348-.898C22 4.54 21.465 4 20.768 4c-.334 0-.629.138-.87.373l-10.6 10.694c-.255.263-.389.58-.389.94z" fill="currentColor"/>',viewBox:"0 0 32 32"},angleLeftBold:{icon:'<path d="M4.63832 0.15601C4.68859 0.105907 4.74845 0.0664547 4.81432 0.0400107C4.88314 0.0131341 4.95643 -0.000439239 5.03031 1.08367e-05C5.0989 0.000663456 5.16675 0.0142335 5.23031 0.0400107C5.29642 0.0659993 5.35637 0.10551 5.40631 0.15601L5.91431 0.664009C5.9652 0.714884 6.00653 0.7745 6.03631 0.840008C6.06713 0.907479 6.08543 0.979991 6.09031 1.05401C6.0907 1.12737 6.07922 1.20031 6.05631 1.27001C6.0321 1.33606 5.99389 1.3961 5.94431 1.44601L2.38232 4.99999L5.93831 8.55398C5.99267 8.60187 6.03454 8.66228 6.06031 8.72998C6.08322 8.79968 6.0947 8.87262 6.09431 8.94598C6.08943 9.02 6.07113 9.09251 6.04031 9.15998C6.01053 9.22549 5.9692 9.2851 5.91831 9.33598L5.41031 9.84398C5.36036 9.89448 5.30042 9.93399 5.23431 9.95998C5.16624 9.98703 5.09356 10.0006 5.02031 9.99998C4.95175 9.99909 4.88394 9.98553 4.82032 9.95998C4.75445 9.93353 4.69459 9.89408 4.64432 9.84398L0.18633 5.39999C0.125378 5.35376 0.0766339 5.29334 0.0443302 5.22399C0.0125869 5.15372 -0.00247217 5.07705 0.000330366 4.99999C-0.000619339 4.92589 0.0158206 4.85259 0.0483302 4.786C0.0824329 4.7189 0.12931 4.65912 0.18633 4.61L4.63832 0.15601Z" fill="#3366FF"/>',viewBox:"0 0 7 10"},angleRight:{icon:'<path d="M22.09 15.993c0-.345-.133-.69-.387-.926L11.088 4.373A1.176 1.176 0 0010.232 4C9.535 4 9 4.539 9 5.257c0 .346.134.664.348.898l9.745 9.838-9.745 9.852a1.284 1.284 0 00-.348.898C9 27.46 9.535 28 10.232 28c.334 0 .629-.138.87-.373l10.6-10.694c.255-.263.389-.58.389-.94z" fill="currentColor"/>',viewBox:"0 0 32 32"},angleUp:{icon:'<path d="M15.993 8.91c-.345 0-.69.133-.926.387L4.373 19.912a1.176 1.176 0 00-.373.857C4 21.465 4.539 22 5.257 22c.346 0 .664-.134.898-.348l9.838-9.745 9.852 9.745c.22.214.538.348.898.348.718 0 1.257-.535 1.257-1.232 0-.334-.138-.629-.373-.87l-10.694-10.6a1.317 1.317 0 00-.94-.389z" fill="currentColor"/>',viewBox:"0 0 32 32"},angleDown:{icon:'<path d="M16.007 22.09c.345 0 .69-.133.926-.387l10.694-10.615c.235-.227.373-.522.373-.856C28 9.535 27.461 9 26.743 9c-.346 0-.664.134-.898.348l-9.838 9.745-9.852-9.745A1.284 1.284 0 005.257 9C4.54 9 4 9.535 4 10.232c0 .334.138.629.373.87l10.694 10.6c.263.255.58.389.94.389z" fill="currentColor"/>',viewBox:"0 0 32 32"},times:{icon:'<path d="M18.565 16L29.468 5.097c.71-.71.71-1.856 0-2.565a1.812 1.812 0 00-2.565 0L16 13.435 5.097 2.532a1.812 1.812 0 00-2.565 0c-.71.71-.71 1.856 0 2.565L13.435 16 2.532 26.903a1.812 1.812 0 001.283 3.096c.464 0 .928-.177 1.282-.531L16 18.565l10.903 10.903a1.81 1.81 0 002.565 0c.71-.71.71-1.856 0-2.565L18.565 16z" fill="currentColor"/>',viewBox:"0 0 32 32"},timesAlt:{icon:'<path d="M20.17 16l6.254-6.254a1.966 1.966 0 000-2.78l-1.39-1.39a1.966 1.966 0 00-2.78 0L16 11.83 9.746 5.576a1.966 1.966 0 00-2.78 0l-1.39 1.39a1.966 1.966 0 000 2.78L11.83 16l-6.254 6.254a1.966 1.966 0 000 2.78l1.39 1.39a1.966 1.966 0 002.78 0L16 20.17l6.254 6.254a1.966 1.966 0 002.78 0l1.39-1.39a1.966 1.966 0 000-2.78L20.17 16z" fill="currentColor"/>',viewBox:"0 0 32 32"},check:{icon:'<path d="M11.19 26.568L1.44 16.98a1.458 1.458 0 010-2.086l2.12-2.087a1.518 1.518 0 012.122 0l6.568 6.46L26.318 5.431a1.518 1.518 0 012.121 0l2.122 2.086c.585.576.585 1.51 0 2.086L13.31 26.568a1.518 1.518 0 01-2.122 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},checkAlt:{icon:'<path d="M12.495 30.407c.898 0 1.592-.372 2.083-1.1L30.492 4.521c.356-.558.508-1.032.508-1.49C31 1.83 30.154 1 28.934 1c-.829 0-1.337.305-1.845 1.1L12.411 25.38l-7.534-9.668c-.508-.66-1.033-.931-1.778-.931C1.88 14.781 1 15.645 1 16.83c0 .524.186 1.032.626 1.557l8.77 10.937c.593.745 1.22 1.083 2.1 1.083z" fill="currentColor"/>',viewBox:"0 0 32 32"},checkCircle:{icon:'<path d="M16 1C7.714 1 1 7.774 1 16c0 8.286 6.714 15 15 15 8.226 0 15-6.714 15-15 0-8.226-6.774-15-15-15zm0 2.903c6.653 0 12.097 5.444 12.097 12.097 0 6.714-5.444 12.097-12.097 12.097A12.055 12.055 0 013.903 16C3.903 9.347 9.286 3.903 16 3.903zm8.468 7.924l-1.391-1.392c-.242-.302-.726-.302-1.029 0l-8.528 8.468-3.629-3.629c-.302-.302-.726-.302-1.028 0l-1.391 1.33c-.242.303-.242.787 0 1.03l5.504 5.564c.302.302.726.302 1.028 0l10.464-10.343c.242-.303.242-.787 0-1.028z" fill="currentColor"/>',viewBox:"0 0 32 32"},plus:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M16 2a2.333 2.333 0 00-2.333 2.333v9.334H4.333a2.333 2.333 0 000 4.666h9.334v9.334a2.333 2.333 0 004.667 0v-9.334h9.333a2.333 2.333 0 000-4.666h-9.334V4.333A2.333 2.333 0 0016 2z" fill="currentColor"/>',viewBox:"0 0 32 32"},plusCircle:{icon:'<path d="M16.008 32C24.768 32 32 24.768 32 16.008 32 7.232 24.752 0 15.992 0 7.232 0 0 7.232 0 16.008 0 24.768 7.232 32 16.008 32zm-.032-8.37c-.976 0-1.593-.715-1.593-1.706V17.6h-4.55C8.824 17.6 8.11 17 8.11 16.024c0-.991.682-1.609 1.722-1.609h4.55v-4.55c0-.991.619-1.707 1.594-1.707.975 0 1.625.7 1.625 1.707v4.55h4.567c1.04 0 1.706.618 1.706 1.61 0 .975-.699 1.576-1.706 1.576H17.6v4.323c0 1.024-.65 1.706-1.625 1.706z" fill="currentColor"/>',viewBox:"0 0 32 32"},plusSquare:{icon:'<path d="M24.571 14.929c0-.402-.401-.804-.803-.804h-5.893V8.232c0-.402-.402-.803-.804-.803H14.93a.814.814 0 00-.804.803v5.893H8.232a.814.814 0 00-.803.804v2.142c0 .47.334.804.803.804h5.893v5.893c0 .469.335.803.804.803h2.142a.814.814 0 00.804-.803v-5.893h5.893a.814.814 0 00.803-.804V14.93zM31 4.214C31 2.474 29.527 1 27.786 1H4.214A3.215 3.215 0 001 4.214v23.572C1 29.594 2.406 31 4.214 31h23.572A3.215 3.215 0 0031 27.786V4.214zm-3.214 23.17c0 .268-.201.402-.402.402H4.616c-.268 0-.402-.134-.402-.402V4.616c0-.2.134-.402.402-.402h22.768c.2 0 .402.201.402.402v22.768z" fill="currentColor"/>',viewBox:"0 0 32 32"},minus:{icon:'<rect x="30" y="14" width="4.667" height="28" rx="2" transform="rotate(90 30 14)" fill="currentColor"/>',viewBox:"0 0 32 32"},minusCircle:{icon:'<path d="M16.008 32C24.768 32 32 24.768 32 16.008 32 7.232 24.752 0 15.992 0 7.232 0 0 7.232 0 16.008 0 24.768 7.232 32 16.008 32zm-.032-14.4H9.832c-1.007 0-1.722-.6-1.722-1.576 0-.991.682-1.609 1.722-1.609h12.336c1.04 0 1.706.618 1.706 1.61 0 .975-.699 1.576-1.706 1.576h-5.239-.953z" fill="currentColor"/>',viewBox:"0 0 32 32"},playCircle:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M16 3.097C8.874 3.097 3.097 8.874 3.097 16S8.874 28.903 16 28.903 28.903 23.126 28.903 16 23.126 3.097 16 3.097zM0 16C0 7.163 7.163 0 16 0s16 7.163 16 16-7.163 16-16 16S0 24.837 0 16z" fill="currentColor"/><path d="M11.871 10.655c0-.815.9-1.309 1.586-.871l8.4 5.345a1.032 1.032 0 010 1.742l-8.4 5.345a1.032 1.032 0 01-1.586-.87V10.654z" fill="currentColor"/>',viewBox:"0 0 32 32"},playCirclePro:{icon:'<rect x="0.199219" y="-0.0078125" width="32" height="32" rx="7.5" fill="currentColor"/> <path d="M13.1016 11.9825C13.1016 11.3716 13.776 11.0013 14.2914 11.3293L20.5913 15.3384C21.0694 15.6426 21.0694 16.3404 20.5913 16.6447L14.2914 20.6537C13.776 20.9817 13.1016 20.6114 13.1016 20.0005V11.9825Z" fill="#302F40"/>',viewBox:"0 0 33 32"},info:{icon:'<path d="M32 16c0-8.774-7.226-16-16-16C7.161 0 0 7.226 0 16c0 8.839 7.161 16 16 16 8.774 0 16-7.161 16-16zm-16 3.226c1.613 0 2.968 1.355 2.968 2.968A2.96 2.96 0 0116 25.16c-1.677 0-2.968-1.29-2.968-2.968A2.96 2.96 0 0116 19.227zM13.161 8.58c-.064-.452.323-.84.774-.84H18c.452 0 .839.388.774.84l-.451 8.774c-.065.451-.387.71-.775.71h-3.16c-.388 0-.71-.259-.775-.71L13.16 8.58z" fill="currentColor"/>',viewBox:"0 0 32 32"},undo:{icon:'<path d="M16.697 10c-3.962 0-7.55 1.459-10.315 3.83l-2.826-2.784C2.615 10.118 1 10.766 1 12.077v8.236c0 .81.673 1.473 1.495 1.473h8.357c1.33 0 2.003-1.591 1.061-2.52l-2.855-2.813c2.078-1.71 4.724-2.77 7.654-2.77 4.724 0 8.805 2.71 10.748 6.63a1.848 1.848 0 002.243.942c1.061-.338 1.6-1.532 1.121-2.534A15.77 15.77 0 0016.697 10z" fill="currentColor"/>',viewBox:"0 0 32 32"},redo:{icon:'<path d="M15.303 10c3.962 0 7.55 1.459 10.315 3.83l2.826-2.784c.942-.928 2.556-.28 2.556 1.031v8.236c0 .81-.673 1.473-1.495 1.473h-8.357c-1.33 0-2.003-1.591-1.061-2.52l2.855-2.813c-2.078-1.71-4.724-2.77-7.654-2.77-4.724 0-8.805 2.71-10.748 6.63a1.848 1.848 0 01-2.243.942c-1.061-.338-1.6-1.532-1.121-2.534A15.77 15.77 0 0115.303 10z" fill="currentColor"/>',viewBox:"0 0 32 32"},lock:{icon:'<path d="M27 14h-1.5V9.5C25.5 4.312 21.187 0 16 0c-5.25 0-9.5 4.313-9.5 9.5V14H5a3 3 0 00-3 3v12c0 1.688 1.313 3 3 3h22a3 3 0 003-3V17c0-1.625-1.375-3-3-3zm-6.5 0h-9V9.5c0-2.438 2-4.5 4.5-4.5 2.438 0 4.5 2.063 4.5 4.5V14z" fill="currentColor"/>',viewBox:"0 0 32 32"},unlock:{icon:'<path d="M23.5 2c-4.667.056-8.389 3.889-8.389 8.556v3.888H2.667A2.667 2.667 0 000 17.111v10.667c0 1.5 1.167 2.666 2.667 2.666h19.555a2.667 2.667 0 002.667-2.666V17.11c0-1.444-1.222-2.667-2.667-2.667h-2.666V10.5c0-2.167 1.722-4 3.944-4.056 2.222 0 4.056 1.834 4.056 4v4.445c0 .778.555 1.333 1.333 1.333h1.778c.722 0 1.333-.555 1.333-1.333v-4.445C32 5.778 28.167 2 23.5 2z" fill="currentColor"/>',viewBox:"0 0 32 32"},arrowsX:{icon:'<path d="M31.564 16.948l-5.38 5.38c-.945.944-2.563.275-2.563-1.062v-2.881H8.384v2.881c0 1.337-1.619 2.006-2.562 1.063L.44 16.947a1.494 1.494 0 010-2.12l5.38-5.38c.944-.944 2.563-.275 2.563 1.062v2.881h15.243v-2.887c0-1.337 1.619-2.006 2.562-1.062l5.375 5.38a1.513 1.513 0 010 2.126z" fill="currentColor"/>',viewBox:"0 0 32 32"},arrowsY:{icon:'<path d="M21.483 23.594h-2.916V8.406h2.916c1.33 0 2.028-1.625 1.077-2.562L17.046.469a1.401 1.401 0 00-2.092 0L9.44 5.844c-.951.937-.254 2.562 1.077 2.562h2.98v15.188h-2.98c-1.33 0-2.028 1.625-1.077 2.562l5.514 5.375c.57.625 1.521.625 2.092 0l5.514-5.375c.951-.937.254-2.562-1.077-2.562z" fill="currentColor"/>',viewBox:"0 0 32 32"},download:{icon:'<path d="M13.5 0c-.875 0-1.5.688-1.5 1.5V12H6.5c-1.125 0-1.688 1.375-.875 2.188l9.5 9.5c.438.437 1.25.437 1.688 0l9.5-9.5c.812-.813.25-2.188-.875-2.188H20V1.5c0-.813-.688-1.5-1.5-1.5h-5zM32 23.5c0-.813-.688-1.5-1.5-1.5h-9.188l-3.062 3.063a3.136 3.136 0 01-4.563 0L10.626 22H1.5c-.875 0-1.5.688-1.5 1.5v7c0 .875.625 1.5 1.5 1.5h29c.813 0 1.5-.625 1.5-1.5v-7zM24.25 29c0 .688-.563 1.25-1.25 1.25-.688 0-1.25-.563-1.25-1.25 0-.688.563-1.25 1.25-1.25.688 0 1.25.563 1.25 1.25zm4 0c0 .688-.563 1.25-1.25 1.25-.688 0-1.25-.563-1.25-1.25 0-.688.563-1.25 1.25-1.25.688 0 1.25.563 1.25 1.25z" fill="currentColor"/>',viewBox:"0 0 32 32"},upload:{icon:'<path d="M18.5 23.988c.813 0 1.5-.626 1.5-1.502V11.971h5.438a1.234 1.234 0 00.875-2.128l-9.5-9.514c-.438-.439-1.25-.439-1.688 0l-9.5 9.514A1.234 1.234 0 006.5 11.97H12v10.515c0 .876.625 1.502 1.5 1.502h5zm13.5-.5c0-.814-.688-1.503-1.5-1.503H22v.501c0 1.94-1.625 3.505-3.5 3.505h-5a3.497 3.497 0 01-3.5-3.505v-.5H1.5c-.875 0-1.5.688-1.5 1.502v7.01C0 31.374.625 32 1.5 32h29c.813 0 1.5-.626 1.5-1.502v-7.01zm-7.75 5.508c0 .688-.563 1.251-1.25 1.251-.688 0-1.25-.563-1.25-1.251 0-.689.563-1.252 1.25-1.252.688 0 1.25.563 1.25 1.252zm4 0c0 .688-.563 1.251-1.25 1.251-.688 0-1.25-.563-1.25-1.251 0-.689.563-1.252 1.25-1.252.688 0 1.25.563 1.25 1.252z" fill="currentColor"/>',viewBox:"0 0 32 32"},cloudUpload:{icon:'<path d="M16.645 12.951a.868.868 0 00-1.228 0l-5.258 5.258a1.247 1.247 0 101.764 1.765l2.86-2.86V28.26a1.247 1.247 0 102.496 0V17.113l2.86 2.86a1.248 1.248 0 101.765-1.764l-5.259-5.258z" fill="currentColor"/><path d="M26.008 11.828C25.86 6.384 21.386 2 15.906 2c-2.517 0-4.928.931-6.79 2.622a10.087 10.087 0 00-3.114 5.47 7.589 7.589 0 00-3.973 2.266A7.586 7.586 0 000 17.532c0 4.196 3.414 7.61 7.61 7.61h.063a1.248 1.248 0 100-2.495h-.07a5.12 5.12 0 01-5.108-5.115c0-2.648 2.065-4.887 4.7-5.098.6-.048 1.08-.518 1.142-1.116a7.584 7.584 0 017.57-6.823c4.196 0 7.61 3.414 7.61 7.61v.374c0 1 .81 1.81 1.809 1.81a4.184 4.184 0 014.179 4.179 4.184 4.184 0 01-4.18 4.18l-.935-.001a1.247 1.247 0 100 2.495h.935A6.682 6.682 0 0032 18.468c0-3.45-2.63-6.297-5.992-6.64z" fill="currentColor"/>',viewBox:"0 0 32 32"},emptyBox:{icon:'<path d="M20.943 15.97c-.797 0-1.547-.401-1.923-1.027l-3-4.78-3.047 4.78c-.375.67-1.125 1.072-1.922 1.072-.235 0-.422-.044-.61-.089L4.02 14.14v7.952c0 .67.469 1.25 1.125 1.385l10.126 2.457c.469.09.985.09 1.453 0l10.127-2.457c.703-.134 1.172-.715 1.172-1.385v-7.952l-6.423 1.787a3.25 3.25 0 01-.656.045zm9.985-5.003L28.49 6.366c-.14-.268-.422-.402-.75-.358L16.02 7.393l4.266 6.835a.846.846 0 00.891.313l9.282-2.546a.733.733 0 00.47-1.028zM3.503 6.366l-2.438 4.601c-.187.402.047.894.47 1.028l9.281 2.546a.801.801 0 00.891-.357l4.313-6.79L4.253 6.007c-.328-.044-.61.09-.75.358z" fill="currentColor"/>',viewBox:"0 0 32 32"},star:{icon:'<path d="M14.294 1.101l-3.89 8.31-8.797 1.312c-1.556.25-2.154 2.249-1.017 3.436l6.283 6.435-1.496 9.059c-.24 1.624 1.437 2.874 2.813 2.124l7.84-4.31 7.78 4.31c1.376.75 3.052-.5 2.813-2.124l-1.497-9.06 6.284-6.434c1.137-1.187.539-3.187-1.017-3.436L21.655 9.41l-3.95-8.31a1.871 1.871 0 00-3.41 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},pencil:{icon:'<path d="M18.157 5.834L.764 23.228.013 30.36a1.455 1.455 0 001.626 1.627l7.133-.75 17.394-17.394-8.009-8.009zm12.951-1.188L27.354.892c-1.126-1.19-3.065-1.19-4.254 0l-3.504 3.503 8.009 8.009L31.108 8.9c1.19-1.189 1.19-3.128 0-4.254z" fill="currentColor"/>',viewBox:"0 0 32 32"},move:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M13.178 5.793l1.591-1.59v3.182a1.23 1.23 0 002.462 0V4.202l1.591 1.591a1.23 1.23 0 001.74-1.74L16.872.36a1.23 1.23 0 00-.188-.154c-.02-.013-.042-.024-.064-.035a1.171 1.171 0 01-.033-.017 1.24 1.24 0 00-.115-.06 1.227 1.227 0 00-.127-.04l-.036-.011a.571.571 0 00-.067-.02 1.209 1.209 0 00-.482 0c-.023.005-.045.012-.068.02l-.036.011c-.042.01-.085.024-.126.04a1.22 1.22 0 00-.115.06 1.053 1.053 0 01-.034.017c-.021.011-.043.022-.063.035-.067.045-.13.096-.187.154l-3.692 3.692a1.23 1.23 0 001.74 1.74zM16 20.307a4.308 4.308 0 100-8.615 4.308 4.308 0 000 8.615zm-.87 3.438a1.23 1.23 0 012.1.87v3.183l1.592-1.591a1.23 1.23 0 011.74 1.74l-3.69 3.692h-.002c-.057.058-.12.109-.187.154a.576.576 0 01-.062.034l-.016.008a.714.714 0 01-.26.11.929.929 0 00-.035.01.563.563 0 01-.069.02c-.159.033-.323.033-.482 0a.563.563 0 01-.069-.02l-.036-.01a.714.714 0 01-.241-.1 1.055 1.055 0 00-.034-.018c-.02-.01-.042-.021-.061-.034a1.232 1.232 0 01-.188-.154l-3.692-3.692a1.23 1.23 0 011.74-1.74l1.591 1.59v-3.182c0-.326.13-.64.36-.87zm16.814-8.092a1.248 1.248 0 00-.039-.124c-.018-.04-.039-.08-.062-.118a1.204 1.204 0 01-.017-.034c-.01-.02-.021-.04-.034-.06a1.233 1.233 0 00-.153-.188h-.001l-3.692-3.692a1.23 1.23 0 00-1.74 1.74l1.591 1.592h-3.182a1.23 1.23 0 000 2.461h3.182l-1.59 1.592a1.232 1.232 0 00.87 2.1 1.23 1.23 0 00.87-.36l3.691-3.691v-.001c.058-.058.11-.12.154-.188.013-.019.023-.04.034-.06a1.18 1.18 0 01.017-.034 1.25 1.25 0 00.062-.118 1.25 1.25 0 00.039-.124l.011-.036a.587.587 0 00.02-.07 1.207 1.207 0 000-.481.587.587 0 00-.02-.07l-.011-.036zm-31.85.818a1.224 1.224 0 01-.038-.125 1.062 1.062 0 00-.012-.036c-.007-.023-.015-.045-.02-.069a1.207 1.207 0 010-.482.593.593 0 01.02-.07l.012-.035c.01-.043.023-.084.038-.125.019-.04.04-.08.062-.117a1.08 1.08 0 00.018-.034c.01-.02.02-.041.033-.06.045-.068.096-.13.154-.188v-.001l3.692-3.691a1.231 1.231 0 011.74 1.74l-1.59 1.591h3.182a1.23 1.23 0 110 2.462H4.202l1.591 1.591a1.23 1.23 0 01-1.74 1.74L.36 16.872a1.232 1.232 0 01-.154-.188.553.553 0 01-.033-.06.963.963 0 00-.018-.034 1.246 1.246 0 01-.062-.118z" fill="currentColor"/>',viewBox:"0 0 32 32"},save:{icon:'<path d="M29.121 8.121L23.88 2.88A3 3 0 0021.757 2H5a3 3 0 00-3 3v22a3 3 0 003 3h22a3 3 0 003-3V10.243a3 3 0 00-.879-2.122zM16 26a4 4 0 110-8 4 4 0 010 8zm6-19.032v6.282a.75.75 0 01-.75.75H6.75a.75.75 0 01-.75-.75v-6.5A.75.75 0 016.75 6h14.282a.75.75 0 01.53.22l.218.217a.749.749 0 01.22.53z" fill="currentColor"/>',viewBox:"0 0 32 32"},saveLine:{icon:'<path d="M29.063 8.125l-5.188-5.188c-.5-.5-1.438-.937-2.125-.937H5a3 3 0 00-3 3v22c0 1.688 1.313 3 3 3h22a3 3 0 003-3V10.25c0-.688-.438-1.625-.938-2.125zM19 5v5h-8V5h8zm7.625 22H5.375c-.25 0-.375-.125-.375-.375V5.375C5 5.187 5.125 5 5.375 5H8v6.5c0 .875.625 1.5 1.5 1.5h11c.813 0 1.5-.625 1.5-1.5V5.25l4.875 4.938c.063.062.125.124.125.25v16.187c0 .25-.188.375-.375.375zM16 14.5c-3.063 0-5.5 2.5-5.5 5.5 0 3.063 2.438 5.5 5.5 5.5 3 0 5.5-2.438 5.5-5.5 0-3-2.5-5.5-5.5-5.5zm0 8c-1.438 0-2.5-1.063-2.5-2.5 0-1.375 1.063-2.5 2.5-2.5 1.375 0 2.5 1.125 2.5 2.5 0 1.438-1.125 2.5-2.5 2.5z" fill="currentColor"/>',viewBox:"0 0 32 32"},social:{icon:'<path d="M11.938 1.875H2.312A1.313 1.313 0 001 3.188v9.624a1.313 1.313 0 001.313 1.313h3.752V9.96H4.343V8h1.722V6.506c0-1.7 1.012-2.638 2.562-2.638.742 0 1.518.132 1.518.132v1.668H9.29c-.843 0-1.105.523-1.105 1.06V8h1.88l-.3 1.96h-1.58v4.165h3.752a1.313 1.313 0 001.313-1.313V3.188a1.313 1.313 0 00-1.313-1.313zM29.56 5.148c.01.125.01.25.01.374 0 3.793-2.887 8.163-8.164 8.163A8.108 8.108 0 0117 12.397c.231.027.453.036.693.036a5.747 5.747 0 003.562-1.226 2.874 2.874 0 01-2.683-1.99c.178.027.356.044.542.044.258 0 .515-.035.755-.097a2.87 2.87 0 01-2.3-2.816v-.036a2.89 2.89 0 001.296.364 2.867 2.867 0 01-1.279-2.39c0-.532.142-1.02.391-1.447a8.156 8.156 0 005.916 3.002 3.24 3.24 0 01-.07-.657c0-1.581 1.279-2.87 2.869-2.87.826 0 1.572.347 2.096.907a5.65 5.65 0 001.821-.693 2.862 2.862 0 01-1.261 1.581A5.752 5.752 0 0031 3.665a6.168 6.168 0 01-1.44 1.483zM3.742 29.25h-2.54v-8.178h2.54v8.178zm-1.271-9.294a1.483 1.483 0 01-1.04-2.525 1.47 1.47 0 012.51 1.04c0 .812-.658 1.485-1.47 1.485zm8.242 9.294v-3.981c0-.95-.02-2.166-1.32-2.166-1.32 0-1.523 1.031-1.523 2.097v4.05H5.333v-8.178h2.436v1.115h.035c.34-.643 1.168-1.32 2.403-1.32 2.57 0 3.043 1.692 3.043 3.89v4.493h-2.537zM30.956 21.15c-.16-.6-.63-1.073-1.226-1.233-1.081-.292-5.418-.292-5.418-.292s-4.336 0-5.417.292a1.743 1.743 0 00-1.226 1.233c-.29 1.089-.29 3.36-.29 3.36s0 2.27.29 3.36c.16.6.63 1.053 1.226 1.213 1.081.292 5.418.292 5.418.292s4.336 0 5.417-.292a1.717 1.717 0 001.226-1.214c.29-1.088.29-3.36.29-3.36s0-2.27-.29-3.358zm-8.062 5.422v-4.124l3.625 2.062-3.625 2.062z" fill="currentColor"/>',viewBox:"0 0 32 32"},share:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M22.571 1.151a6.167 6.167 0 11-1.92 9.533l-7.965 3.982a6.185 6.185 0 010 2.667l7.964 3.982A6.167 6.167 0 1119.31 24l-7.964-3.982a6.166 6.166 0 110-8.034L19.309 8a6.166 6.166 0 013.262-6.85zm3.76 2.511a3.167 3.167 0 10-2.003 6.01 3.167 3.167 0 002.003-6.01zm-18.323 9.47a3.167 3.167 0 101.49 1.451m-1.49-1.451a3.166 3.166 0 011.49 1.451zm17.547 9.04a3.17 3.17 0 00-3.058 1.744 3.167 3.167 0 103.058-1.743z" fill="currentColor"/>',viewBox:"0 0 32 32"},canvas:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 5.1h2.9V2.9h2.2V0H0v5.1z" fill="currentColor"/><path d="M19.7 0h-7.3v2.9h7.3V0z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M26.9 0v2.9h2.2v2.2H32V0h-5.1z" fill="currentColor"/><path d="M2.9 12.4H0v7.3h2.9v-7.3zM32 12.4h-2.9v7.3H32v-7.3z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M2.9 26.9H0V32h5.1v-2.9H2.9v-2.2zM29.1 29.1h-2.2V32H32v-5.1h-2.9v2.2z" fill="currentColor"/><path d="M19.7 29.1h-7.3V32h7.3v-2.9z" fill="currentColor"/>',viewBox:"0 0 32 32"},rowsAlt:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M3 28.857h26v-8.571H3v8.571zM1 29.93C1 30.52 1.448 31 2 31h28c.552 0 1-.48 1-1.071V19.214c0-.591-.448-1.071-1-1.071H2c-.552 0-1 .48-1 1.071V29.93zM3 11.714h26V3.143H3v8.571zm-2 1.072c0 .591.448 1.071 1 1.071h28c.552 0 1-.48 1-1.071V2.07C31 1.48 30.552 1 30 1H2c-.552 0-1 .48-1 1.071v10.715z" fill="currentColor"/>',viewBox:"0 0 32 32"},columns:{icon:'<path d="M29 2H3a3 3 0 00-3 3v22c0 1.688 1.313 3 3 3h26a3 3 0 003-3V5c0-1.625-1.375-3-3-3zM14 26H4V10h10v16zm14 0H18V10h10v16z" fill="currentColor"/>',viewBox:"0 0 32 32"},columnsAlt:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M3.143 3v26h8.571V3H3.143zM2.07 1C1.48 1 1 1.448 1 2v28c0 .552.48 1 1.071 1h10.715c.591 0 1.071-.448 1.071-1V2c0-.552-.48-1-1.071-1H2.07zM20.286 3v26h8.571V3h-8.571zm-1.072-2c-.591 0-1.071.448-1.071 1v28c0 .552.48 1 1.071 1H29.93C30.52 31 31 30.552 31 30V2c0-.552-.48-1-1.072-1H19.215z" fill="currentColor"/>',viewBox:"0 0 32 32"},trash:{icon:'<path d="M18.75 26h1.5a.75.75 0 00.75-.75v-13.5a.75.75 0 00-.75-.75h-1.5a.75.75 0 00-.75.75v13.5a.75.75 0 00.75.75zM29 5h-5.15l-2.126-3.544A3 3 0 0019.151 0h-6.302a3 3 0 00-2.572 1.456L8.15 5H3a1 1 0 00-1 1v1a1 1 0 001 1h1v21a3 3 0 003 3h18a3 3 0 003-3V8h1a1 1 0 001-1V6a1 1 0 00-1-1zM12.74 3.182A.375.375 0 0113.062 3h5.876a.375.375 0 01.321.182L20.351 5h-8.702l1.091-1.818zM25 29H7V8h18v21zm-13.25-3h1.5a.75.75 0 00.75-.75v-13.5a.75.75 0 00-.75-.75h-1.5a.75.75 0 00-.75.75v13.5a.75.75 0 00.75.75z" fill="currentColor"/>',viewBox:"0 0 32 32"},ban:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M29 16.5C29 23.404 23.404 29 16.5 29c-2.88 0-5.533-.974-7.647-2.61L26.39 8.852A12.446 12.446 0 0 1 29 16.5ZM6.718 24.282 24.282 6.718A12.447 12.447 0 0 0 16.5 4C9.596 4 4 9.596 4 16.5c0 2.942 1.017 5.647 2.718 7.782ZM32 16.5C32 25.06 25.06 32 16.5 32 7.94 32 1 25.06 1 16.5 1 7.94 7.94 1 16.5 1 25.06 1 32 7.94 32 16.5Z" fill="currentColor"/>',viewBox:"0 0 32 32"},bold:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7 17.999V4h9a7 7 0 015.704 11.058A7 7 0 0118 27.998h-7V28H7V17.999zm4 6V18h5l.125-.001H18a3 3 0 010 6h-7zm0-10V8h5a3 3 0 01.082 5.999H11z" fill="currentColor"/>',viewBox:"0 0 32 32"},italic:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M23.975 7.975V4h-12v3.975h3.6l-3.225 16.05H8V28h12v-3.975h-3.525l3.15-16.05h4.35z" fill="currentColor"/>',viewBox:"0 0 32 32"},underline:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4 24.55h24V28H4v-3.45zM10.975 12.55c0 2.85 2.175 5.175 5.025 5.175a5.185 5.185 0 005.175-5.175V4h3.45v8.55a8.546 8.546 0 01-8.55 8.55 8.546 8.546 0 01-8.55-8.55V4h3.45v8.55z" fill="currentColor"/>',viewBox:"0 0 32 32"},strikethrough:{icon:'<path d="M24.865 18.224c.273.653.412 1.403.412 2.256 0 2.231-.805 4.043-2.414 5.434C21.255 27.304 19.104 28 16.416 28c-3.136 0-5.507-.66-7.117-1.98-1.61-1.32-2.428-3.308-2.455-5.963h3.636c.056 1.567.567 2.732 1.536 3.495.968.762 2.421 1.144 4.357 1.144 1.575 0 2.825-.318 3.752-.953.927-.636 1.39-1.518 1.39-2.648 0-.805-.3-1.448-.898-1.928-.414-.33-1.113-.645-2.083-.942h6.331zm-8.73-4.448l-.868-.223c-1.714-.437-2.83-.85-3.344-1.239-.516-.388-.774-.992-.774-1.811 0-1.03.436-1.822 1.307-2.373.87-.55 1.919-.825 3.145-.825 1.686 0 2.978.296 3.877.89.898.592 1.376 1.567 1.432 2.922h3.636c-.083-2.075-.846-3.78-2.289-5.115C20.815 4.667 18.743 4 16.04 4c-2.535 0-4.59.65-6.165 1.949-1.574 1.3-2.361 3.065-2.361 5.296 0 .966.198 1.808.585 2.532l8.037-.001zm10.779 1.1H5.086c-.6 0-1.086.494-1.086 1.102 0 .608.486 1.101 1.086 1.101h21.828c.6 0 1.086-.493 1.086-1.101s-.486-1.101-1.086-1.101z" fill="currentColor"/>',viewBox:"0 0 32 32"},ul:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.778 4a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1V4zM7.778 15a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1v-2zM7.778 26a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1v-2zM0 5c0-1.105.893-2 1.995-2h.01C3.107 3 4 3.895 4 5s-.893 2-1.995 2h-.01A1.998 1.998 0 010 5zM0 16c0-1.105.893-2 1.995-2h.01C3.107 14 4 14.895 4 16s-.893 2-1.995 2h-.01A1.998 1.998 0 010 16zM0 27c0-1.105.893-2 1.995-2h.01C3.107 25 4 25.895 4 27s-.893 2-1.995 2h-.01A1.998 1.998 0 010 27z" fill="currentColor"/>',viewBox:"0 0 32 32"},ol:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.778 4a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1V4zM7.778 15a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1v-2zM7.778 26a1 1 0 011-1h22a1 1 0 011 1v2a1 1 0 01-1 1h-22a1 1 0 01-1-1v-2z" fill="currentColor"/><path d="M3.129 8H2V3.648l-1.348.418v-.918l2.356-.843h.12V8zM4.285 19H.387v-.773l1.84-1.961c.252-.276.438-.517.558-.723.123-.206.184-.401.184-.586 0-.253-.064-.45-.192-.594-.127-.146-.31-.218-.547-.218a.748.748 0 00-.605.265c-.146.175-.219.405-.219.692H.273c0-.347.082-.663.247-.95.166-.286.4-.51.703-.671a2.117 2.117 0 011.027-.247c.586 0 1.04.141 1.363.422.326.281.489.679.489 1.192 0 .28-.073.567-.22.859-.145.292-.395.631-.75 1.02L1.84 18.09h2.445V19zM1.535 26.656h.602c.286 0 .498-.071.636-.215.138-.143.207-.333.207-.57 0-.23-.069-.407-.207-.535-.135-.128-.322-.191-.562-.191a.827.827 0 00-.543.18.563.563 0 00-.219.46H.32c0-.297.08-.562.239-.797.161-.237.385-.422.671-.554.29-.133.607-.2.954-.2.601 0 1.073.145 1.414.434.34.286.511.682.511 1.188 0 .26-.079.5-.238.718a1.548 1.548 0 01-.625.504c.32.115.559.287.715.516.159.229.238.5.238.812 0 .506-.185.91-.554 1.215-.368.305-.855.457-1.461.457-.568 0-1.033-.15-1.395-.45-.36-.299-.539-.694-.539-1.187h1.129c0 .214.08.388.238.524.162.135.36.203.594.203.268 0 .478-.07.629-.211a.738.738 0 00.23-.566c0-.568-.312-.852-.937-.852h-.598v-.883z" fill="currentColor"/>',viewBox:"0 0 32 32"},quote:{icon:'<path d="M2.592 26.063c-.792.332-.773 1.196-.415 1.965.357.768.632 1.234.632 1.234.652.711 1.227.915 1.994.582 2.147-.922 3.987-2.126 5.495-3.56 1.815-1.742 3.067-3.715 3.732-5.892.665-2.151.997-5.149.997-8.991V3.537A1.54 1.54 0 0013.493 2H5.409a1.54 1.54 0 00-1.534 1.537v10.067c0 .846.69 1.537 1.534 1.537h5.23c-.05 2.587-.225 4.928-2.186 6.893-.92 1.255-3.995 3.234-5.86 4.029zM17.506 26.063c-.793.332-.773 1.196-.416 1.965.358.768.633 1.234.633 1.234.652.711 1.227.915 1.993.582 2.147-.922 3.988-2.126 5.496-3.56 1.815-1.742 3.067-3.715 3.732-5.892.664-2.151.996-5.149.996-8.991V3.537A1.54 1.54 0 0028.407 2h-8.084a1.54 1.54 0 00-1.534 1.537v10.067c0 .846.69 1.537 1.534 1.537h5.23c-.05 2.587-.226 4.928-2.187 6.893-.92 1.255-3.994 3.234-5.86 4.029z" fill="currentColor"/>',viewBox:"0 0 32 32"},code:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M31.204 14.378l-2.982-3.148V5.667c0-3.043-2.385-5.562-5.266-5.562H20.57c-1.094 0-1.889.945-1.889 2.099 0 1.154.895 2.099 1.889 2.099h2.385c.795 0 1.39.63 1.39 1.47v6.401c0 .525.2 1.05.597 1.47l2.186 2.309-2.186 2.308a2.13 2.13 0 00-.596 1.47v6.402c0 .84-.596 1.469-1.391 1.469H20.57c-1.094 0-1.889.945-1.889 2.099 0 1.154.895 2.099 1.889 2.099h2.385c2.881 0 5.267-2.519 5.267-5.562v-5.563l2.98-3.148c.796-1.05.796-2.31 0-3.149zM7.354 12.07V5.666c0-.84.596-1.469 1.391-1.469h2.385c1.093 0 1.888-.945 1.888-2.099C13.018.945 12.124 0 11.13 0H8.745C5.863.105 3.578 2.624 3.578 5.667v5.563L.596 14.378a2.108 2.108 0 000 2.939l2.982 3.148v5.563c0 3.043 2.385 5.562 5.266 5.562h2.385c1.094 0 1.889-.945 1.889-2.099 0-1.154-.895-2.099-1.889-2.099H8.745c-.795 0-1.391-.63-1.391-1.47v-6.401a2.13 2.13 0 00-.596-1.47L4.57 15.849l2.187-2.31a2.13 2.13 0 00.596-1.469z" fill="currentColor"/>',viewBox:"0 0 32 32"},copy:{icon:'<path d="M29.063 4.125L25.875.937C25.375.438 24.437 0 23.75 0H13a3 3 0 00-3 3v3H5a3 3 0 00-3 3v20c0 1.688 1.313 3 3 3h14a3 3 0 003-3v-3h5a3 3 0 003-3V6.25c0-.688-.438-1.625-.938-2.125zM18.624 29H5.375c-.25 0-.375-.125-.375-.375V9.375C5 9.187 5.125 9 5.375 9H10v14c0 1.688 1.313 3 3 3h6v2.625c0 .25-.188.375-.375.375zm8-6h-13.25c-.25 0-.375-.125-.375-.375V3.375c0-.188.125-.375.375-.375H20v5.5c0 .875.625 1.5 1.5 1.5H27v12.625c0 .25-.188.375-.375.375zM27 7h-4V3h.563c.125 0 .187.063.25.125l3.062 3.063c.063.062.125.125.125.25V7z" fill="currentColor"/>',viewBox:"0 0 32 32"},textAlignLeft:{icon:'<path d="M29 14H3a1 1 0 01-1-1v-2a1 1 0 011-1h26a1 1 0 011 1v2a1 1 0 01-1 1zM3 26h26a1 1 0 011 1v2a1 1 0 01-1 1H3a1 1 0 01-1-1v-2a1 1 0 011-1zM2.802 2h16.396a.801.801 0 01.802.802v2.396a.8.8 0 01-.802.802H2.802A.801.801 0 012 5.198V2.802A.801.801 0 012.802 2zm0 16h16.396a.8.8 0 01.802.802v2.396a.8.8 0 01-.802.802H2.802A.8.8 0 012 21.198v-2.396A.801.801 0 012.802 18z" fill="currentColor"/>',viewBox:"0 0 32 32"},textAlignCenter:{icon:'<path d="M29 10H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zm0 16H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zM8.756 6h14.488A.756.756 0 0024 5.244V2.756A.755.755 0 0023.244 2H8.756A.756.756 0 008 2.756v2.488A.756.756 0 008.756 6zm14.488 16a.756.756 0 00.756-.756v-2.488a.756.756 0 00-.756-.756H8.756a.756.756 0 00-.756.756v2.488a.756.756 0 00.756.756h14.488z" fill="currentColor"/>',viewBox:"0 0 32 32"},textAlignRight:{icon:'<path d="M3 14h26a1 1 0 001-1v-2a1 1 0 00-1-1H3a1 1 0 00-1 1v2a1 1 0 001 1zm26 12H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zm.198-24H12.802a.801.801 0 00-.802.802v2.396a.8.8 0 00.802.802h16.396A.801.801 0 0030 5.198V2.802A.8.8 0 0029.198 2zm0 16H12.802a.8.8 0 00-.802.802v2.396a.8.8 0 00.802.802h16.396a.8.8 0 00.802-.802v-2.396a.8.8 0 00-.802-.802z" fill="currentColor"/>',viewBox:"0 0 32 32"},textAlignJustify:{icon:'<path d="M29 26H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zm0-8H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zm0-8H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1v-2a1 1 0 00-1-1zm0-8H3a1 1 0 00-1 1v2a1 1 0 001 1h26a1 1 0 001-1V3a1 1 0 00-1-1z" fill="currentColor"/>',viewBox:"0 0 32 32"},verticalAlignStart:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M.625 2c0 .76.616 1.375 1.375 1.375h28a1.375 1.375 0 100-2.75H2C1.24.625.625 1.241.625 2z" fill="currentColor"/><rect width="24" height="6" rx="1" transform="matrix(0 1 1 0 7 8)" fill="currentColor"/><rect width="16" height="6" rx="1" transform="matrix(0 1 1 0 19 8)" fill="currentColor"/>',viewBox:"0 0 32 32"},verticalAlignCenter:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M.625 16c0-.76.616-1.375 1.375-1.375h28a1.375 1.375 0 110 2.75H2c-.76 0-1.375-.616-1.375-1.375z" fill="currentColor"/><rect x="7" y="28" width="24" height="6" rx="1" transform="rotate(-90 7 28)" fill="currentColor"/><rect x="19" y="24" width="16" height="6" rx="1" transform="rotate(-90 19 24)" fill="currentColor"/>',viewBox:"0 0 32 32"},verticalAlignEnd:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M31.375 30c0-.76-.616-1.375-1.375-1.375H2a1.375 1.375 0 100 2.75h28c.76 0 1.375-.616 1.375-1.375z" fill="currentColor"/><path d="M24 24a1 1 0 001-1V1a1 1 0 00-1-1h-4a1 1 0 00-1 1v22a1 1 0 001 1h4z" fill="currentColor"/><rect width="16" height="6" rx="1" transform="matrix(0 -1 -1 0 13 24)" fill="currentColor"/>',viewBox:"0 0 32 32"},cog:{icon:'<path d="M30.462 19.731L27.8 18.194c.269-1.45.269-2.938 0-4.388l2.662-1.537a.755.755 0 00.344-.875 15.566 15.566 0 00-3.419-5.913.752.752 0 00-.925-.143L23.8 6.875A11.794 11.794 0 0020 4.681V1.612a.749.749 0 00-.587-.73 15.712 15.712 0 00-6.825 0 .749.749 0 00-.588.73v3.075a12.167 12.167 0 00-3.8 2.194L5.544 5.344a.743.743 0 00-.925.143A15.472 15.472 0 001.2 11.4c-.106.338.038.7.344.875l2.662 1.537a12.039 12.039 0 000 4.388l-2.662 1.538a.755.755 0 00-.344.875 15.566 15.566 0 003.419 5.912.752.752 0 00.925.144l2.662-1.538a11.795 11.795 0 003.8 2.194V30.4c0 .35.244.656.588.731 2.293.513 4.644.488 6.825 0a.749.749 0 00.587-.731v-3.075a12.167 12.167 0 003.8-2.194l2.663 1.538a.743.743 0 00.925-.144 15.472 15.472 0 003.419-5.912.772.772 0 00-.35-.882zM16 21c-2.756 0-5-2.244-5-5s2.244-5 5-5 5 2.244 5 5-2.244 5-5 5z" fill="currentColor"/>',viewBox:"0 0 32 32"},thunderBolt:{icon:'<path d="M24.515 10h-7.25l2.687-8.063c.25-1-.5-1.937-1.437-1.937h-9c-.75 0-1.438.563-1.5 1.313l-2 15C5.89 17.25 6.577 18 7.515 18h7.375l-2.875 12.188c-.188.937.5 1.812 1.437 1.812.563 0 1.063-.25 1.313-.75l11-19c.625-.938-.125-2.25-1.25-2.25z" fill="currentColor"/>',viewBox:"0 0 32 32"},link:{icon:'<path d="M20.41 11.59c-.375-.376-.813-.751-1.25-1.064-.439-.313-.94-.25-1.314.063l-1.314 1.313c-.5.563-.751 1.252-.751 1.877 0 .375.188.626.438.813.188.125.438.313.688.5 1.752 1.815 1.752 4.63 0 6.382l-4.254 4.192a4.421 4.421 0 01-6.381 0c-1.752-1.752-1.69-4.63.062-6.381l.814-.814c.312-.25.375-.688.25-1.063-.376-1.064-.563-2.19-.626-3.254 0-.875-1.063-1.313-1.689-.688l-2.315 2.315c-3.69 3.691-3.69 9.76 0 13.45 3.691 3.692 9.76 3.692 13.451 0l4.192-4.19v-.064c3.69-3.628 3.753-9.634 0-13.388zm8.822-8.822c-3.691-3.69-9.76-3.69-13.451 0L11.589 6.96v.062c-3.69 3.629-3.753 9.635 0 13.389.376.375.814.75 1.252 1.063.438.313.938.25 1.313-.063l1.314-1.313c.5-.563.751-1.252.751-1.877 0-.375-.188-.626-.438-.813a17.384 17.384 0 01-.688-.5c-1.752-1.815-1.752-4.63 0-6.382l4.254-4.192a4.421 4.421 0 016.381 0c1.752 1.752 1.69 4.63-.062 6.382l-.814.813c-.312.25-.375.688-.25 1.063.375 1.064.563 2.19.626 3.254 0 .875 1.063 1.313 1.689.688l2.315-2.315c3.69-3.691 3.69-9.76 0-13.45z" fill="currentColor"/>',viewBox:"0 0 32 32"},image:{icon:'<path d="M29 4H3a3 3 0 00-3 3v18c0 1.688 1.313 3 3 3h26a3 3 0 003-3V7c0-1.625-1.375-3-3-3zm-.375 21H3.375c-.25 0-.375-.125-.375-.375V7.375C3 7.187 3.125 7 3.375 7h25.25c.188 0 .375.188.375.375v17.25c0 .25-.188.375-.375.375zM8 9.5c-1.438 0-2.5 1.125-2.5 2.5 0 1.438 1.063 2.5 2.5 2.5 1.375 0 2.5-1.063 2.5-2.5 0-1.375-1.125-2.5-2.5-2.5zM6 22h20v-5l-5.5-5.438c-.313-.312-.75-.312-1.063 0L12 19l-2.5-2.438c-.313-.312-.75-.312-1.063 0L6 19v3z" fill="currentColor"/>',viewBox:"0 0 32 32"},picture:{icon:'<path d="M25.884 2H5.046C3.366 2 2 3.406 2 5.139v19.726C2 26.595 3.366 28 5.046 28h20.838c1.68 0 3.045-1.405 3.045-3.135V5.139C28.929 3.406 27.564 2 25.884 2zm-6.47 4.668c1.624 0 2.941 1.357 2.941 3.03 0 1.673-1.317 3.03-2.942 3.03-1.624 0-2.941-1.357-2.941-3.03 0-1.673 1.317-3.03 2.941-3.03zM24.928 25.1H6.421c-.813 0-1.175-.605-.808-1.352l5.048-10.3c.366-.747 1.063-.813 1.557-.149l5.076 6.833c.494.665 1.357.722 1.928.126l1.242-1.295c.57-.596 1.412-.522 1.877.163l3.216 4.732c.465.686.185 1.242-.628 1.242z" fill="currentColor"/>',viewBox:"0 0 32 32"},music:{icon:'<path d="M29.668 2.254a1.015 1.015 0 00-.777-.249l-18 2A1 1 0 0010 5v17.822A5.787 5.787 0 007 22C4.242 22 2 23.794 2 26s2.243 4 5 4 5-1.793 5-4V10.9l16-1.782v11.7A5.786 5.786 0 0025 20c-2.757 0-5 1.794-5 4s2.243 4 5 4 5-1.793 5-4V3a1 1 0 00-.332-.746z" fill="currentColor"/>',viewBox:"0 0 32 32"},zip:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M8.193 1h12.05l7.583 7.557v19.25A3.197 3.197 0 0124.634 31H8.193A3.197 3.197 0 015 27.807V4.193A3.197 3.197 0 018.193 1zm0 28.044h16.44c.682 0 1.236-.555 1.236-1.237l-.046-18.475-4.098.011a2.215 2.215 0 01-2.214-2.215V2.946l-6.024.006V4.87h1.886a.5.5 0 01.499.5v1.092a.5.5 0 01-.5.5h-1.885v2.091h1.886a.5.5 0 01.499.5v1.093a.5.5 0 01-.5.5h-1.885v2.09h1.886a.5.5 0 01.499.5v1.093a.5.5 0 01-.5.5h-2.756a.5.5 0 01-.5-.5v-1.592h-1.885a.5.5 0 01-.5-.5v-1.092a.5.5 0 01.5-.5h1.886V9.053H10.23a.5.5 0 01-.5-.5V7.462a.5.5 0 01.5-.5h1.886v-2.09H10.23a.5.5 0 01-.5-.5V2.955l-1.538.001c-.682 0-1.237.554-1.237 1.236v23.614c0 .683.555 1.237 1.237 1.237zm5.8-11.823v2.556l.772 2.266a2.078 2.078 0 01-.277 1.877 2.08 2.08 0 01-1.687.867 2.08 2.08 0 01-1.687-.867 2.078 2.078 0 01-.277-1.877l.772-2.266V17.22a.5.5 0 01.499-.5h1.386a.5.5 0 01.5.5zm-2.062 6.114c.4.56 1.34.56 1.74 0 .201-.28.255-.642.144-.968l-.26-.76h-1.508l-.26.76c-.11.326-.057.688.144.968z" fill="currentColor"/>',viewBox:"0 0 32 32"},paperclip:{icon:'<path d="M28.191 4.804c-3.739-3.739-9.823-3.739-13.563 0L3.003 16.43a6.858 6.858 0 000 9.687 6.827 6.827 0 004.844 2.003 6.83 6.83 0 004.844-2.003l10.656-10.656a4.083 4.083 0 001.204-2.906c0-1.098-.427-2.13-1.204-2.907a4.115 4.115 0 00-5.812 0l-6.97 6.969a1.37 1.37 0 001.938 1.938l6.97-6.97a1.372 1.372 0 012.338.97c0 .365-.142.71-.401.968L10.753 24.18a4.115 4.115 0 01-5.812 0 4.115 4.115 0 010-5.813L16.565 6.742a6.858 6.858 0 019.687 0 6.805 6.805 0 012.007 4.844c0 1.83-.713 3.55-2.007 4.843L14.628 28.055a1.37 1.37 0 101.938 1.938L28.19 18.367A9.527 9.527 0 0031 11.586c0-2.562-.998-4.97-2.809-6.782z" fill="currentColor"/>',viewBox:"0 0 32 32"},frame:{icon:'<path d="M0 10.571c0 .5.357.858.857.858h2.857a.869.869 0 00.857-.858v-6h6a.869.869 0 00.858-.857V.857C11.429.43 11 0 10.57 0H1.714C.714 0 0 .786 0 1.714v8.857zM20.571.857v2.857c0 .5.358.857.858.857h6v6c0 .5.357.858.857.858h2.857A.869.869 0 0032 10.57V1.714C32 .786 31.214 0 30.286 0h-8.857c-.5 0-.858.429-.858.857zm10.572 19.714h-2.857c-.5 0-.857.429-.857.858v6h-6c-.5 0-.858.428-.858.857v2.857c0 .5.358.857.858.857h8.857c.928 0 1.714-.714 1.714-1.714v-8.857c0-.429-.429-.858-.857-.858zM11.429 31.143v-2.857c0-.429-.429-.857-.858-.857h-6v-6c0-.429-.428-.858-.857-.858H.857c-.5 0-.857.429-.857.858v8.857C0 31.286.714 32 1.714 32h8.857a.869.869 0 00.858-.857z" fill="currentColor"/>',viewBox:"0 0 32 32"},crop:{icon:'<path d="M30.5 22H28V6c0-1.063-.938-2-2-2H12v6h10v20.5c0 .875.625 1.5 1.5 1.5h3c.813 0 1.5-.625 1.5-1.5V28h2.5c.813 0 1.5-.625 1.5-1.5v-3c0-.813-.688-1.5-1.5-1.5zM10 1.5C10 .687 9.312 0 8.5 0h-3C4.625 0 4 .688 4 1.5V4H1.5C.625 4 0 4.688 0 5.5v3C0 9.375.625 10 1.5 10H4v16c0 1.125.875 2 2 2h14v-6H10V1.5z" fill="currentColor"/>',viewBox:"0 0 32 32"},eye:{icon:'<path d="M31.807 14.856C28.794 8.977 22.83 5 16 5S3.204 8.98.193 14.856a1.797 1.797 0 000 1.622C3.206 22.356 9.171 26.333 16 26.333c6.83 0 12.796-3.98 15.807-9.856a1.797 1.797 0 000-1.621zM16 23.666a8 8 0 110-16 8 8 0 010 16zm0-13.333a5.296 5.296 0 00-1.406.21 2.658 2.658 0 01-3.717 3.718A5.321 5.321 0 1016 10.333z" fill="currentColor"/>',viewBox:"0 0 32 32"},eyeSlash:{icon:'<path d="M17.299 22.869l2.595 2.005c-1.25.325-2.55.525-3.895.525-6.145 0-11.515-3.58-14.225-8.87-.23-.46-.23-1 0-1.46.51-1 1.145-1.915 1.835-2.78l5.245 4.055c.28 3.72 3.35 6.655 7.145 6.655.435-.005.87-.05 1.3-.13zm14.53 4.16l-.98 1.26a.803.803 0 01-1.125.14L.31 5.694a.803.803 0 01-.14-1.125l.98-1.26a.803.803 0 011.125-.14l6.36 4.915a15.412 15.412 0 017.365-1.885c6.145 0 11.515 3.58 14.225 8.87.23.46.23 1 0 1.46-1 1.955-2.385 3.69-4.06 5.105l5.525 4.27c.35.27.415.775.14 1.125zM23.2 15.79a7.19 7.19 0 00-7.2-7.19c-1.665 0-3.28.585-4.56 1.655l3.68 2.845c.045-.165.07-.33.075-.5 0-.51-.165-1-.465-1.41a4.74 4.74 0 015.805 6.095l1.965 1.52c.43-.915.695-1.925.695-3.005.005-.005.005-.005.005-.01z" fill="currentColor"/>',viewBox:"0 0 32 32"},clipboard:{icon:'<path d="M25 4h-5c0-2.188-1.813-4-4-4-2.25 0-4 1.813-4 4H7a3 3 0 00-3 3v22c0 1.688 1.313 3 3 3h18a3 3 0 003-3V7c0-1.625-1.375-3-3-3zm-9-1.5c.813 0 1.5.688 1.5 1.5 0 .875-.688 1.5-1.5 1.5-.875 0-1.5-.625-1.5-1.5 0-.813.625-1.5 1.5-1.5zm9 26.125c0 .25-.188.375-.375.375H7.375c-.25 0-.375-.125-.375-.375V7.375C7 7.187 7.125 7 7.375 7H10v2.25c0 .438.313.75.75.75h10.5a.76.76 0 00.75-.75V7h2.625c.188 0 .375.188.375.375v21.25z" fill="currentColor"/>',viewBox:"0 0 32 32"},clipboardBelow:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14 4h4.375C19.797 4 21 5.203 21 6.625v19.25a2.626 2.626 0 0 1-2.625 2.625H2.625A2.591 2.591 0 0 1 0 25.875V6.625A2.626 2.626 0 0 1 2.625 4H7A3.49 3.49 0 0 1 10.5.5C12.414.5 14 2.086 14 4Zm-2.188 0A1.33 1.33 0 0 0 10.5 2.687c-.766 0-1.313.602-1.313 1.313 0 .766.547 1.313 1.313 1.313.71 0 1.313-.547 1.313-1.313ZM2.626 16.015V6.953c0-.164.11-.328.328-.328H5.25v1.969c0 .383.273.656.656.656h9.188a.665.665 0 0 0 .656-.656V6.625h2.297c.164 0 .328.164.328.328v9.062H2.625Zm8.293 8.592a.625.625 0 0 1-.837 0l-2.746-2.472a.625.625 0 1 1 .836-.929l1.704 1.533v-4.09a.625.625 0 1 1 1.25 0v4.09l1.703-1.533a.625.625 0 0 1 .836.93l-2.746 2.471Z" clip-rule="evenodd"/>',viewBox:"0 0 21 29"},clipboardAbove:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14 4h4.375C19.797 4 21 5.203 21 6.625v19.25a2.626 2.626 0 0 1-2.625 2.625H2.625A2.591 2.591 0 0 1 0 25.875V6.625A2.626 2.626 0 0 1 2.625 4H7A3.49 3.49 0 0 1 10.5.5C12.414.5 14 2.086 14 4Zm-2.188 0A1.33 1.33 0 0 0 10.5 2.687c-.766 0-1.313.602-1.313 1.313 0 .766.547 1.313 1.313 1.313.71 0 1.313-.547 1.313-1.313Zm6.235 21.875c.164 0 .328-.11.328-.328v-9.064H2.625v9.064c0 .219.11.328.328.328h15.094Zm-7.13-17.984a.625.625 0 0 0-.836 0l-2.746 2.472a.625.625 0 0 0 .836.93l1.704-1.534v4.09a.625.625 0 1 0 1.25 0V9.76l1.703 1.533a.625.625 0 1 0 .836-.929l-2.746-2.472Z" clip-rule="evenodd"/>',viewBox:"0 0 21 29"},paste:{icon:'<path d="M10 11.5C10 9.625 11.563 8 13.5 8H22V3.5c0-.813-.688-1.5-1.5-1.5h-5.063c-.687-1.188-2-2-3.437-2-1.5 0-2.813.813-3.5 2h-5C2.625 2 2 2.688 2 3.5v21c0 .875.625 1.5 1.5 1.5H10V11.5zm2-9c.813 0 1.5.688 1.5 1.5 0 .875-.688 1.5-1.5 1.5-.875 0-1.5-.625-1.5-1.5 0-.813.625-1.5 1.5-1.5zM23.5 18c-.875 0-1.5-.625-1.5-1.5V10h-8.5c-.875 0-1.5.688-1.5 1.5v19c0 .875.625 1.5 1.5 1.5h15c.813 0 1.5-.625 1.5-1.5V18h-6.5zm6.5-2.375c0-.313-.25-.813-.5-1.063L25.437 10.5c-.25-.25-.75-.5-1.062-.5H24v6h6v-.375z" fill="currentColor"/>',viewBox:"0 0 32 32"},clone:{icon:'<path d="M29 0H11a3 3 0 00-3 3v18c0 1.688 1.313 3 3 3h18a3 3 0 003-3V3c0-1.625-1.375-3-3-3zM11 26c-2.813 0-5-2.188-5-5V8H3a3 3 0 00-3 3v18c0 1.688 1.313 3 3 3h18a3 3 0 003-3v-3H11z" fill="currentColor"/>',viewBox:"0 0 32 32"},cloneLine:{icon:'<path d="M29 0H9a3 3 0 00-3 3v3H3a3 3 0 00-3 3v20c0 1.688 1.313 3 3 3h20a3 3 0 003-3v-3h3a3 3 0 003-3V3c0-1.625-1.375-3-3-3zm-6.375 29H3.375c-.25 0-.375-.125-.375-.375V9.375C3 9.187 3.125 9 3.375 9H6v14c0 1.688 1.313 3 3 3h14v2.625c0 .25-.188.375-.375.375zm6-6H9.375c-.25 0-.375-.125-.375-.375V3.375C9 3.187 9.125 3 9.375 3h19.25c.188 0 .375.188.375.375v19.25c0 .25-.188.375-.375.375z" fill="currentColor"/>',viewBox:"0 0 32 32"},filter:{icon:'<path d="M29.56 0H2.44C1.153 0 .509 1.624 1.446 2.56L12.28 14.116v12.866c0 .5.175 1 .585 1.25l4.686 3.497c.937.687 2.226 0 2.226-1.25V14.116L30.555 2.561C31.492 1.624 30.848 0 29.56 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},search:{icon:'<path d="M31.532 27.66l-6.244-6.243c-.312-.25-.687-.438-1.062-.438h-.999c1.686-2.185 2.748-4.932 2.748-7.992C25.975 5.87 20.105 0 12.987 0 5.807 0 0 5.87 0 12.987c0 7.18 5.807 12.988 12.987 12.988 2.997 0 5.745-1 7.993-2.748v1.062c0 .374.124.749.437 1.061l6.181 6.182c.624.624 1.561.624 2.123 0l1.748-1.749c.625-.562.625-1.498.063-2.123zm-18.545-6.68a7.968 7.968 0 01-7.992-7.993c0-4.37 3.56-7.992 7.992-7.992 4.371 0 7.993 3.622 7.993 7.992 0 4.434-3.622 7.993-7.993 7.993z" fill="currentColor"/>',viewBox:"0 0 32 32"},caretDown:{icon:'<path d="M8.213 11h15.574c1.079 0 1.619 1.277.856 2.024l-7.787 7.629a1.228 1.228 0 01-1.712 0l-7.787-7.629C6.594 12.277 7.134 11 8.213 11z" fill="currentColor"/>',viewBox:"0 0 32 32"},caretUp:{icon:'<path d="M23.787 21H8.213c-1.079 0-1.619-1.277-.856-2.024l7.787-7.629a1.228 1.228 0 011.712 0l7.787 7.629c.763.747.223 2.024-.856 2.024z" fill="currentColor"/>',viewBox:"0 0 32 32"},caretRight:{icon:'<path d="M11 23.787V8.213c0-1.079 1.277-1.619 2.024-.856l7.629 7.787c.463.473.463 1.24 0 1.712l-7.629 7.787c-.747.763-2.024.223-2.024-.856z" fill="currentColor"/>',viewBox:"0 0 32 32"},caretLeft:{icon:'<path d="M21 8.213v15.574c0 1.079-1.277 1.619-2.024.856l-7.629-7.787a1.228 1.228 0 010-1.712l7.629-7.787c.747-.763 2.024-.223 2.024.856z" fill="currentColor"/>',viewBox:"0 0 32 32"},typography:{icon:'<path d="M27.143 24.571h-1.447L18.732 4.59A.87.87 0 0017.93 4h-3.911a.87.87 0 00-.804.59L6.25 24.57H4.857c-.482 0-.857.429-.857.858v1.714c0 .482.375.857.857.857h7.286c.428 0 .857-.375.857-.857v-1.714c0-.429-.429-.858-.857-.858h-1.286l1.393-4.285h7.393l1.446 4.285h-1.232c-.482 0-.857.429-.857.858v1.714c0 .482.375.857.857.857h7.286c.428 0 .857-.375.857-.857v-1.714c0-.429-.429-.858-.857-.858zM13.32 16.696l2.25-6.642c.215-.858.375-1.554.429-1.875 0 .375.107 1.071.375 1.875l2.25 6.642h-5.304z" fill="currentColor"/>',viewBox:"0 0 32 32"},typographyAlt:{icon:'<path d="M16.03 4h9.901c1.387 0 2.064.688 2.064 2.076 0 1.071.011 2.143 0 3.203-.011 1.117-.744 1.907-1.77 1.918-1.038.012-1.805-.79-1.827-1.94a16.555 16.555 0 010-1.297c.01-.305-.113-.373-.395-.373a496.45 496.45 0 01-5.797 0c-.327 0-.406.113-.406.418.012 5.324.012 10.649 0 15.973 0 .316.102.43.418.418.394-.012.79-.034 1.172.056.891.214 1.455.982 1.388 1.918-.068.868-.767 1.59-1.658 1.613-2.086.023-4.161.023-6.248 0-.902-.011-1.624-.767-1.68-1.658-.056-.903.541-1.704 1.444-1.861.35-.068.71-.08 1.06-.057.394.023.507-.113.507-.508-.022-1.951-.011-3.903-.011-5.854 0-3.306-.011-6.6.011-9.905 0-.451-.124-.564-.564-.564-1.86.023-3.71.023-5.57 0-.395 0-.53.09-.497.496.034.43.011.858 0 1.298 0 1.06-.79 1.85-1.793 1.839-.981-.012-1.76-.79-1.77-1.805a179.536 179.536 0 010-3.486c0-1.173.744-1.907 1.905-1.918H16.03z" fill="currentColor"/>',viewBox:"0 0 32 32"},th:{icon:'<path d="M18.344 3c-.82 0-1.407.638-1.407 1.393v9.286c0 .812.586 1.392 1.407 1.392h11.25c.761 0 1.406-.58 1.406-1.392V4.393C31 3.638 30.355 3 29.594 3h-11.25zm-4.688 0H2.406C1.586 3 1 3.638 1 4.393v9.286c0 .812.586 1.392 1.406 1.392h11.25c.762 0 1.406-.58 1.406-1.392V4.393c0-.755-.644-1.393-1.406-1.393zM1 18.321v9.286C1 28.42 1.586 29 2.406 29h11.25c.762 0 1.406-.58 1.406-1.393v-9.286c0-.754-.644-1.392-1.406-1.392H2.406c-.82 0-1.406.638-1.406 1.392zM18.344 29h11.25c.761 0 1.406-.58 1.406-1.393v-9.286c0-.754-.645-1.392-1.406-1.392h-11.25c-.82 0-1.407.638-1.407 1.392v9.286c0 .813.586 1.393 1.407 1.393z" fill="currentColor"/>',viewBox:"0 0 32 32"},plug:{icon:'<path d="M24 2c0-1.063-.938-2-2-2-1.125 0-2 .938-2 2v6h4V2zm3 8H5c-.563 0-1 .5-1 1v2c0 .563.438 1 1 1h1v2a9.998 9.998 0 008 9.813V32h4v-6.188c4.5-.937 7.938-4.937 8-9.812v-2h1c.5 0 1-.438 1-1v-2c0-.5-.5-1-1-1zM12 2c0-1.063-.938-2-2-2-1.125 0-2 .938-2 2v6h4V2z" fill="currentColor"/>',viewBox:"0 0 32 32"},sliders:{icon:'<path d="M27.25 4.502H15.145a8.655 8.655 0 010 7.5H27.25a3.707 3.707 0 002.654-1.096 3.754 3.754 0 00-2.654-6.404zM7.252 2A6.254 6.254 0 001 8.252c0 3.451 2.8 6.252 6.252 6.252 3.451 0 6.252-2.8 6.252-6.252 0-3.451-2.8-6.252-6.252-6.252zM4.75 19.502A3.753 3.753 0 001 23.252c0 1.008.387 1.951 1.096 2.654a3.731 3.731 0 002.654 1.096h12.105a8.654 8.654 0 010-7.5H4.75zM24.748 17a6.254 6.254 0 00-6.252 6.252c0 3.451 2.8 6.252 6.252 6.252 3.451 0 6.252-2.8 6.252-6.252C31 19.801 28.2 17 24.748 17z" fill="currentColor"/>',viewBox:"0 0 32 32"},equalizer:{icon:'<path d="M5.333 2.667c.737 0 1.334.597 1.334 1.333v9.333a1.333 1.333 0 11-2.667 0V4c0-.736.597-1.333 1.333-1.333zM6.667 20h2.666a1.333 1.333 0 000-2.667h-8a1.333 1.333 0 000 2.667H4v8a1.333 1.333 0 102.667 0v-8zM17.333 16a1.333 1.333 0 10-2.666 0v12a1.333 1.333 0 102.666 0V16zM16 2.667c.736 0 1.333.597 1.333 1.333v5.333H20A1.333 1.333 0 0120 12h-8a1.333 1.333 0 010-2.667h2.667V4c0-.736.597-1.333 1.333-1.333zM30.667 20a1.333 1.333 0 010 2.667H28V28a1.333 1.333 0 01-2.667 0v-5.333h-2.666a1.333 1.333 0 010-2.667h8zM26.667 2.667C27.403 2.667 28 3.264 28 4v12a1.333 1.333 0 01-2.667 0V4c0-.736.597-1.333 1.334-1.333z" fill="currentColor"/>',viewBox:"0 0 32 32"},click:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M16 31c8.284 0 15-6.716 15-15 0-8.284-6.716-15-15-15C7.716 1 1 7.716 1 16c0 8.284 6.716 15 15 15zm0 1c8.837 0 16-7.163 16-16S24.837 0 16 0 0 7.163 0 16s7.163 16 16 16z" fill="currentColor"/><path d="M21 16a5 5 0 11-10 0 5 5 0 0110 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},hover:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M31.1 15.7c2.4 6.6-.2 11.7-5.9 13.8-4.8 1.7-9.1.4-12.7-4l-5.2-6.3c-1.2-1.4-1.1-2.9 0-3.9 1.1-.9 2.5-.8 3.6.4l2.3 2.5c.1.1.1.1.2.1s.1-.1.1-.2L9.9 8c-5 1.9-8.2 6.7-8.4 13 0 .5-.3.8-.7.8-.4 0-.8-.4-.8-.8C0 14.1 3.8 8.6 9.3 6.5L9 5.7C8.4 4 9.2 2.6 10.7 2c1.5-.5 3 .1 3.6 1.8l1.8 4.9c.3-.3.7-.5 1-.6 1.2-.4 2.3-.1 3 .9.4-.3.8-.5 1.2-.7 1.2-.4 2.2-.1 2.9.8 2.5-.9 4.7.4 5.9 3.7l1 2.9zM8.5 18.2l5.2 6.3c3.3 4 7 4.9 11 3.4 4.9-1.8 7-6 4.9-11.8l-.9-2.5c-.9-2.5-2.2-3.5-3.6-3l.6 1.7c.2.5-.1.9-.4 1-.4.1-.8 0-1-.5l-.7-2.1c-.3-.9-1-1.2-1.8-.9-.3.1-.6.3-.9.6l1 2.7c.2.5-.1.9-.4 1-.4.1-.8 0-1-.5l-1.1-3c-.3-.9-1-1.2-1.8-.9-.3.1-.6.3-.9.6l1.4 3.7c.2.4 0 .9-.4 1-.4.2-.9-.1-1-.5L12.8 4.3c-.3-.7-.9-1.1-1.6-.8-.7.2-1 .9-.7 1.6l5.2 14.3c.2.6 0 1.1-.6 1.3-.5.2-.9.1-1.4-.4l-3.5-3.7c-.5-.6-1.2-.7-1.7-.3-.6.5-.5 1.2 0 1.9z" fill="currentColor"/>',viewBox:"0 0 32 32"},button:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 8a4 4 0 014-4h24a4 4 0 014 4v9a4 4 0 01-4 4h-.5a1 1 0 110-2h.5a2 2 0 002-2V8a2 2 0 00-2-2H4a2 2 0 00-2 2v9a2 2 0 002 2h9a1 1 0 110 2H4a4 4 0 01-4-4V8z" fill="currentColor"/><path opacity="0.5" fill-rule="evenodd" clip-rule="evenodd" d="M16.004 12.669l1.526 9.46c.05.408.508.611.864.408l2.645-1.882 3.612 5.137c.508.661 2.034-.407 1.577-1.068l-3.612-5.188 2.696-1.832c.305-.254.305-.762-.05-.966l-8.393-4.68a.604.604 0 00-.865.611z" fill="currentColor"/>',viewBox:"0 0 32 32"},recycleAlt:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M5.333 4c.737 0 1.334.597 1.334 1.333v3.124A11.976 11.976 0 0116 4c6.12 0 11.169 4.58 11.907 10.502a1.333 1.333 0 01-2.646.33C24.687 10.229 20.76 6.667 16 6.667a9.323 9.323 0 00-7.66 4H12a1.333 1.333 0 110 2.666H5.333A1.333 1.333 0 014 12V5.333C4 4.597 4.597 4 5.333 4zm-.082 12.01a1.333 1.333 0 011.488 1.158 9.335 9.335 0 0016.922 4.165H20a1.333 1.333 0 110-2.666h6.667c.736 0 1.333.597 1.333 1.333v6.667a1.333 1.333 0 01-2.667 0v-3.124A11.976 11.976 0 0116 28C9.88 28 4.831 23.42 4.093 17.498A1.333 1.333 0 015.25 16.01z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH1:{icon:'<path d="M19.04 7v18h-3.408v-7.827H8.384V25H5V7h3.384v7.292h7.248V7h3.408zM20.861 10.365V7h6.096v18h-3.552V10.365h-2.544z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH2:{icon:'<path d="M16.04 7.374V25h-3.408v-7.664H5.384V25H2V7.374h3.384v7.14h7.248v-7.14h3.408zM18.461 22.229c5.424-3.911 8.136-7.157 8.136-9.737 0-.782-.184-1.398-.552-1.847-.352-.45-.912-.674-1.68-.674-1.584 0-2.424 1.123-2.52 3.37h-3.288c.096-2.08.704-3.653 1.824-4.718C21.501 7.54 22.917 7 24.63 7c1.744 0 3.08.474 4.008 1.423.944.932 1.416 2.18 1.416 3.745 0 1.231-.352 2.471-1.056 3.72a15.037 15.037 0 01-2.64 3.42 21.308 21.308 0 01-3.384 2.671h7.416v2.871H18.461V22.23z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH3:{icon:'<path d="M16.04 7.657V24.83h-3.408v-7.468H5.384v7.468H2V7.657h3.384v6.957h7.248V7.657h3.408zM24.797 7c1.152 0 2.136.203 2.952.608.832.406 1.456.965 1.872 1.678.432.714.648 1.509.648 2.384 0 1.103-.296 2.011-.888 2.725-.592.697-1.376 1.127-2.352 1.289v.121c2.368.714 3.552 2.125 3.552 4.233 0 1.476-.488 2.675-1.464 3.6-.976.908-2.352 1.362-4.128 1.362-1.888 0-3.392-.47-4.512-1.41-1.12-.958-1.744-2.393-1.872-4.306h3.312c.08.876.36 1.573.84 2.092.496.502 1.192.754 2.088.754.768 0 1.368-.211 1.8-.633.432-.438.648-1.005.648-1.702 0-.827-.312-1.46-.936-1.898-.624-.438-1.544-.656-2.76-.656h-.696v-2.798h.696c2.24.033 3.36-.754 3.36-2.36 0-.697-.2-1.24-.6-1.629-.4-.405-.944-.608-1.632-.608-.72 0-1.312.235-1.776.705-.464.454-.728 1.095-.792 1.922h-3.312c.096-1.751.656-3.097 1.68-4.038C21.55 7.478 22.973 7 24.797 7z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH4:{icon:'<path d="M15.04 7.202V25h-3.408v-7.74H4.384V25H1V7.202h3.384v7.21h7.248v-7.21h3.408zM17.51 21.42v-2.95L25.62 7h3.624v11.345h2.208v3.075h-2.208V25h-3.408v-3.58H17.51zM26.1 11.16l-5.136 7.184h5.136V11.16z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH5:{icon:'<path d="M15.04 7.349v17.576h-3.408v-7.643H4.384v7.643H1V7.35h3.384v7.12h7.248v-7.12h3.408zM29.821 10.087h-8.04v4.432c.368-.449.872-.805 1.512-1.07a5.41 5.41 0 012.16-.424c1.168 0 2.136.265 2.904.797a4.537 4.537 0 011.728 2.09c.384.864.576 1.827.576 2.889 0 1.875-.512 3.377-1.536 4.506C28.117 24.436 26.67 25 24.781 25c-1.232 0-2.304-.224-3.216-.672-.912-.465-1.624-1.104-2.136-1.917-.512-.83-.792-1.793-.84-2.888h3.288c.128.747.424 1.344.888 1.792.464.432 1.08.648 1.848.648.928 0 1.616-.29 2.064-.872.464-.597.696-1.386.696-2.365 0-.93-.24-1.651-.72-2.166-.48-.514-1.16-.772-2.04-.772-.64 0-1.184.15-1.632.448a2.496 2.496 0 00-.984 1.146H18.71V7h11.112v3.087z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagH6:{icon:'<path d="M15.04 7.61v17.22h-3.408v-7.488H4.384v7.487H1V7.61h3.384v6.976h7.248V7.61h3.408zM26.677 12.293c-.256-1.691-1.104-2.537-2.544-2.537-1.12 0-1.936.504-2.448 1.512-.512.992-.736 2.553-.672 4.683.256-.78.752-1.398 1.488-1.853.752-.472 1.624-.708 2.616-.708 1.632 0 2.912.504 3.84 1.512.944.992 1.416 2.407 1.416 4.244 0 1.139-.224 2.147-.672 3.025-.448.878-1.12 1.569-2.016 2.073-.88.504-1.952.756-3.216.756-2.464 0-4.16-.772-5.088-2.317-.928-1.561-1.392-3.707-1.392-6.44 0-3.137.496-5.462 1.488-6.975C20.485 7.756 22.11 7 24.35 7c1.712 0 3.024.496 3.936 1.488.912.992 1.432 2.26 1.56 3.805h-3.168zm-5.376 6.61c0 .91.256 1.666.768 2.268.528.585 1.296.878 2.304.878.864 0 1.552-.26 2.064-.78.512-.521.768-1.245.768-2.171 0-.976-.264-1.724-.792-2.244-.512-.52-1.208-.78-2.088-.78-.832 0-1.544.243-2.136.73-.592.489-.888 1.188-.888 2.098z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagDiv:{icon:'<path d="M31.567 13.822l-6.682-7.079a1.647 1.647 0 00-2.312-.072 1.647 1.647 0 00-.072 2.311l5.634 5.96-5.634 5.96a1.647 1.647 0 00.072 2.31c.29.29.687.434 1.12.434a1.7 1.7 0 001.192-.506l6.682-7.079a1.663 1.663 0 000-2.239zM17.796 1.462a1.5 1.5 0 012.924.669L14.26 30.4a1.5 1.5 0 11-2.925-.668l6.462-28.27zM9.427 6.67a1.704 1.704 0 00-1.156-.432c-.434 0-.83.18-1.12.505l-6.718 7.08c-.577.613-.577 1.588 0 2.238l6.682 7.08c.29.325.722.505 1.192.505.433 0 .795-.144 1.12-.433.65-.614.686-1.662.072-2.312l-5.634-5.96 5.634-5.959a1.647 1.647 0 00-.072-2.311z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagP:{icon:'<path d="M27.286 4.857v1.714a.86.86 0 01-.857.858h-2.572v19.714A.86.86 0 0123 28h-1.714a.86.86 0 01-.857-.857V7.429h-1.715v19.714a.86.86 0 01-.857.857h-1.714a.86.86 0 01-.857-.857v-6H13.57A8.57 8.57 0 015 12.57 8.569 8.569 0 0113.571 4H26.43a.86.86 0 01.857.857z" fill="currentColor"/>',viewBox:"0 0 32 32"},tagSpan:{icon:'<path d="M4.576 12.764c.296.296.625.428 1.053.428.428 0 .79-.132 1.053-.428.297-.296.461-.691.428-1.086 0-.395-.164-.757-.46-.988L3.554 7.596 6.65 4.502c.297-.297.461-.692.428-1.087 0-.395-.164-.757-.46-.987A1.515 1.515 0 005.53 2c-.395 0-.757.165-.987.46L.46 6.544c-.296.296-.461.69-.428 1.086 0 .395.165.757.46.987l4.083 4.148zM15.307 13.093h11.225a5.437 5.437 0 005.43-5.431 5.437 5.437 0 00-5.43-5.432H15.307a5.437 5.437 0 00-5.432 5.432 5.437 5.437 0 005.432 5.431zm0-8.196h11.225a2.796 2.796 0 012.797 2.798 2.796 2.796 0 01-2.797 2.798H15.307a2.796 2.796 0 01-2.798-2.798 2.796 2.796 0 012.798-2.798zM27.387 19.142c-.296-.296-.625-.428-1.053-.428-.428 0-.79.132-1.053.428-.297.296-.461.691-.428 1.086 0 .395.164.757.46.988l3.095 3.094-3.094 3.094c-.297.297-.461.692-.428 1.087 0 .395.164.757.46.987.264.263.659.428 1.054.428h.033c.395 0 .757-.165.987-.46l4.148-4.115c.296-.297.46-.692.428-1.087 0-.395-.165-.757-.461-.987l-4.148-4.115zM16.656 18.78H5.431A5.437 5.437 0 000 24.211a5.437 5.437 0 005.431 5.432h11.225a5.437 5.437 0 005.432-5.432c0-2.995-2.47-5.431-5.432-5.431zm0 8.196H5.431a2.796 2.796 0 01-2.798-2.797 2.796 2.796 0 012.798-2.798h11.225a2.796 2.796 0 012.798 2.797c0 1.548-1.284 2.798-2.798 2.798z" fill="currentColor"/>',viewBox:"0 0 32 32"},fontawesome:{icon:'<path d="M29.587 22.467c0 .45-.382.638-.832.831-1.794.77-3.713 1.476-5.763 1.476-2.882 0-4.226-1.794-7.683-1.794-2.494 0-5.12.893-7.233 1.856-.125.063-.256.063-.381.125v4.864C7.695 31.162 6.688 32 5.582 32a2.157 2.157 0 01-2.175-2.175V6.4A3.573 3.573 0 012 3.582C2 1.6 3.6 0 5.582 0c1.982 0 3.582 1.6 3.582 3.582 0 1.15-.513 2.175-1.407 2.82v1.98c.257-.087 3.676-1.793 7.17-1.793 4.083 0 6.108 1.725 7.94 1.725 2.431 0 5.12-1.725 5.763-1.725.513 0 .963.381.963.831l-.006 15.047z" fill="currentColor"/>',viewBox:"0 0 32 32"},icofont:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M25.306 9.57c2.578 0 4.769-2.223 4.769-4.801C30.107 2.159 27.948 0 25.305 0c-2.577 0-4.8 2.191-4.8 4.769 0 2.545 2.255 4.8 4.8 4.8zm3.093-4.833c0 1.643-1.385 3.028-3.06 3.028-1.709 0-2.997-1.288-2.997-3.028 0-1.644 1.353-3.061 2.996-3.061 1.579 0 3.061 1.45 3.061 3.06zm-.611 13.792c-1.032-5.64-4.64-8.958-10.183-8.926-.128 0-.74 0-1.256.194A880.864 880.864 0 003.235 13.76c-1.386.419-1.547 1.03-.774 2.255.554.859 1.191 1.658 1.83 2.459.847 1.062 1.697 2.128 2.359 3.341 1.353 2.513 3.834 3.577 6.605 3.061.464-.077.928-.19 1.393-.301.309-.075.618-.15.927-.214.774-.161 1.064.064.838.902-.134.539-.234 1.091-.335 1.648-.116.642-.233 1.29-.406 1.929-.847 3.261.138 3.226 2.747 3.133l.218-.008c.118 0 .248-.036.376-.072.081-.022.16-.044.236-.057 5.993-1.289 9.666-7.024 8.539-13.307zm-18.206-.774c-2.288.645-3.705 0-4.994-2.287 1.292-.392 2.566-.809 3.835-1.223 2.591-.846 5.158-1.684 7.797-2.29 4.189-.902 8.957 2.61 9.376 6.831.025.145-.006.29-.036.435-.01.049-.02.097-.028.145-.052 0-.093.006-.126.01-.05.006-.08.01-.1-.01-2.964-4.382-6.927-4.64-11.47-2.9-1.308.487-2.672.858-4.013 1.224l-.24.065zm2.123 1.583c2.37-.738 4.738-1.474 7.222-1.776 1.643-.065 2.867.644 3.834 1.933.29.355.644.902-.258.967-2.111.13-4.122.72-6.127 1.308-.995.292-1.988.584-2.992.819-1.74.419-3.254-.097-4.478-1.386l-.072-.07c-.283-.272-.753-.725.104-.961.928-.261 1.848-.548 2.768-.834zm10.25 3.412c1.29.354 2.191 1.063 2.095 2.642.16 1.128-.58 1.837-1.29 2.513a6.101 6.101 0 01-2.158 1.354c-.123.045-.25.096-.381.148-.792.315-1.69.672-2.326.174-.475-.367-.27-.951-.063-1.54.101-.289.203-.579.224-.845.06-.861.338-1.723.609-2.56l.068-.21c.42-1.225 1.901-2.03 3.222-1.676z" fill="currentColor"/>',viewBox:"0 0 32 32"},ionicons:{icon:'<path d="M15.933 22.226a6.159 6.159 0 100-12.318 6.159 6.159 0 000 12.318z" fill="currentColor"/><path d="M28.787 6.56c.134-.401.267-.803.267-1.204 0-1.473-1.205-2.544-2.543-2.544-.402 0-.804.134-1.206.268C22.628 1.07 19.415 0 15.933 0 11.65 0 7.632 1.74 4.686 4.686 1.606 7.766 0 11.782 0 16.066c0 4.286 1.607 8.302 4.686 11.248C7.766 30.259 11.65 32 15.933 32c4.285 0 8.301-1.607 11.247-4.686 2.945-3.08 4.686-6.962 4.686-11.247 0-3.481-1.071-6.829-3.08-9.506zm-2.678 19.683c-2.678 2.678-6.293 4.284-10.176 4.284s-7.498-1.473-10.176-4.284C3.08 23.565 1.473 19.95 1.473 16.067S2.946 8.569 5.757 5.89c2.678-2.678 6.293-4.284 10.176-4.284 2.946 0 5.891.937 8.167 2.544-.134.401-.267.803-.267 1.205 0 1.472 1.205 2.544 2.544 2.544.401 0 .803-.134 1.205-.268 1.74 2.41 2.677 5.355 2.677 8.435.134 3.749-1.472 7.364-4.15 10.176z" fill="currentColor"/>',viewBox:"0 0 32 32"},octicons:{icon:'<path d="M32 17.077c-.056.215-.038.433-.056.651-.278 3.339-1.431 6.318-3.472 8.932-1.931 2.476-4.372 4.22-7.288 5.272-.159.058-.325.08-.493.061-.416-.048-.688-.352-.688-.789-.003-.866.01-1.728.013-2.594.003-.805.037-1.613-.016-2.418-.05-.719-.219-1.398-.603-2.011a3.54 3.54 0 00-.44-.532c.234-.036.443-.065.652-.097 1.075-.17 2.122-.433 3.1-.94 1.65-.852 2.678-2.225 3.17-4.037a10.8 10.8 0 00.337-3.662 6.29 6.29 0 00-1.522-3.676c-.047-.054-.097-.099-.066-.192.45-1.321.36-2.633-.066-3.938-.118-.366-.121-.372-.506-.363-.656.016-1.268.222-1.865.481-.713.312-1.378.706-2.016 1.149-.094.064-.172.086-.284.057a14.434 14.434 0 00-4.157-.513 14.197 14.197 0 00-3.5.5.39.39 0 01-.359-.057c-.762-.513-1.553-.975-2.416-1.293-.525-.192-1.062-.343-1.63-.31-.132.006-.204.044-.25.179-.466 1.315-.595 2.646-.173 3.999.05.157.032.25-.075.375-.956 1.145-1.453 2.48-1.487 3.983-.028 1.184.081 2.354.418 3.496.597 1.995 1.857 3.355 3.741 4.124.85.346 1.74.536 2.644.67.119.02.237.032.356.052.025.003.05.013.09.022-.174.19-.34.372-.468.587a3.925 3.925 0 00-.506 1.45c-.013.07-.01.144-.097.183-.825.352-1.675.516-2.56.285-.853-.225-1.465-.783-1.925-1.53-.33-.535-.718-1.023-1.23-1.385-.523-.37-1.091-.51-1.72-.401a.81.81 0 00-.15.041c-.193.084-.24.228-.134.411.138.23.338.4.563.52.397.211.68.538.934.9.366.52.672 1.078.91 1.675.374.933 1.084 1.475 2.009 1.741.847.244 1.71.228 2.572.116.197-.026.393-.045.587-.087.128-.029.147.013.147.132 0 .914.006 1.824.01 2.738 0 .106.006.215-.01.321a.729.729 0 01-.625.625c-.19.03-.384.02-.569-.048-2.647-.93-4.903-2.466-6.765-4.602-2-2.296-3.26-4.955-3.807-7.97a14.98 14.98 0 01-.23-2.08c-.004-.058-.02-.116-.029-.174V15.41c.01-.052.025-.103.028-.154.04-.66.125-1.315.25-1.966.74-3.8 2.553-6.963 5.444-9.454C8.312 1.604 11.316.353 14.694.058c.247-.023.5-.003.743-.058h1.126c.053.029.112.026.168.026a14.32 14.32 0 012.247.263 15.439 15.439 0 015.594 2.27c2.497 1.639 4.416 3.813 5.74 6.533a16.383 16.383 0 011.635 6.196c.019.276-.006.555.053.827v.962z" fill="currentColor"/>',viewBox:"0 0 32 32"},iconjar:{icon:'<path d="M7.343 7.833c-.656 0-1.248-.604-1.248-1.272 0-1.54 3.81-2.68 8.146-2.68.394 0 .656 0 .656-.333 0-.603-1.313-.803-1.313-1.807C13.584.67 14.832 0 16.408 0c1.577 0 2.825.67 2.825 1.741 0 1.004-1.313 1.138-1.313 1.807 0 .201.197.335.656.335 4.336 0 8.213 1.07 8.213 2.678a1.258 1.258 0 01-1.25 1.271H7.345l-.001.001zm19.642 6.091c1.578 1.004 2.168 2.812 1.907 4.487l-1.84 10.106C26.657 30.53 24.948 32 22.91 32H10.036C8 32 6.292 30.528 5.897 28.519L4.057 18.41a4.41 4.41 0 011.972-4.42c.92-.668 1.116-1.807 0-2.208-1.577-.603-1.25-2.544.328-2.544h9.59c1.512 0 3.353 1.137 3.353 4.82 0 3.682-1.71 3.346-1.71 5.957 0 1.139.92 2.344 2.037 2.479 1.906.2 3.022-.536 3.022-3.214 0-2.746-1.576-4.017-1.576-6.293 0-2.745 1.707-3.817 2.824-3.817h2.76c1.576 0 1.906 1.942.328 2.545-1.116.467-.92 1.607 0 2.208z" fill="currentColor"/>',viewBox:"0 0 32 32"},materialicon:{icon:'<path d="M28.2 5.5c-.2.1-.2.2-.2.3v4.3s.1 0 .1-.1.1 0 .1-.1c.6-.4 1.2-.7 1.9-1.1.6-.4 1.2-.7 1.9-1.1V3.3c-1.3.7-2.5 1.5-3.8 2.2z" fill="currentColor"/><path d="M31.9 12.6c-.3.2-.6.3-.8.5-1 .6-1.9 1.1-2.9 1.7-.2 0-.2.1-.2.3v4.1c0 .2-.1.3-.2.4l-5.7 3.3-2.1 1.2c-1.3-.7-2.5-1.4-3.7-2.2h-.1c-.1 0-.1-.1-.1-.1l2.1-1.2c1.8-1.1 3.7-2.1 5.5-3.2.2-.1.2-.2.2-.3V3.8v-.1-.2l-12 6.9C10.5 9.6 9.2 8.8 7.8 8 5.3 6.4 2.6 4.8 0 3.3V17c0 .2.1.3.2.3l3.6 2.1c.1 0 .1.1.2.1v-9.3h.1c.1 0 .1.1.1.1 2.3 1.3 4.6 2.6 6.8 4 .1 0 .2.1.2.1.2.1.4.3.7.4.1 0 .2 0 .2-.1 0 0 .1 0 .1-.1 1.2-.7 2.5-1.4 3.7-2.1 1.2-.7 2.5-1.4 3.7-2.1h.1c.1 0 .1-.1.2-.1v4.4c0 .1-.1.2-.2.2-1.6.9-3.2 1.9-4.8 2.8-1 .6-1.9 1.1-2.9 1.7v4.4c0 .3.1.4.3.6 2.5 1.4 4.9 2.8 7.4 4.3h.1c.1 0 .1.1.2.1s.2-.1.2-.1.1 0 .1-.1l5.7-3.3 5.7-3.3c.1 0 .1-.1.2-.1v-9.3c.1 0 .1 0 0 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},icomoon:{icon:'<path d="M16 0c-2.267 0-4.267.4-6.267 1.2-1.866.8-3.6 2-5.066 3.467C3.2 6.133 2 7.867 1.2 9.733c-.8 2-1.2 4-1.2 6.267 0 2.267.4 4.267 1.2 6.267.8 1.866 2 3.6 3.467 5.066C6.133 28.8 7.867 30 9.733 30.8c1.867.8 4 1.2 6.267 1.2 2.267 0 4.267-.4 6.267-1.2 1.866-.8 3.6-2 5.066-3.467 1.467-1.466 2.667-3.2 3.467-5.066.8-1.867 1.2-4 1.2-6.267 0-2.267-.4-4.267-1.2-6.267-.8-1.866-2-3.6-3.467-5.066C25.867 3.2 24.133 2 22.267 1.2c-2-.8-4-1.2-6.267-1.2zm-4.133 2c1.2.667 2.4 1.6 3.333 2.533a19.077 19.077 0 012.533 3.2c.667 1.2 1.2 2.534 1.6 3.867.4 1.333.534 2.8.534 4.267 0 1.466-.267 2.933-.534 4.266-.4 1.334-.933 2.667-1.6 3.867-.666 1.2-1.6 2.267-2.533 3.333a14.706 14.706 0 01-3.333 2.534c-1.2-.534-2.267-1.467-3.334-2.4C7.6 26.4 6.667 25.333 6 24.133c-.667-1.2-1.2-2.533-1.6-3.866-.4-1.334-.533-2.8-.533-4.267 0-1.467.133-2.933.666-4.267.4-1.333.934-2.666 1.6-3.866.534-1.2 1.467-2.267 2.4-3.334C9.6 3.6 10.667 2.667 11.867 2zm0 10.267c-1.067 0-1.867.4-2.667 1.066-.667.667-1.067 1.6-1.067 2.667 0 1.067.4 1.867 1.067 2.667.667.8 1.6 1.066 2.667 1.066 1.066 0 1.866-.4 2.666-1.066.8-.667 1.067-1.6 1.067-2.667 0-1.067-.4-1.867-1.067-2.667-.8-.666-1.733-1.066-2.666-1.066z" fill="currentColor"/>',viewBox:"0 0 32 32"},fontello:{icon:'<path d="M30.6 13.1c.4 1.2-.1 2.2-1.3 2.6-.5.2-.5.2-.5-.4 0-.6-.1-1.2-.5-1.6-.3-.4-.7-.5-1.1-.4-.4.1-.6.4-.7.8-.2.8.3 1.7 1.1 2.1.1.1.3.1.3.3-.1.4-.2.9-.6 1.2-.3.3-.7.2-.9-.1-.2-.4-.3-.7-.2-1.1.1-.4.2-.8.2-1.3 0-.3 0-.6-.4-.6s-.5.2-.6.6c-.1.5 0 .9 0 1.3s-.2.7-.4.9c-.2.2-.4.2-.6 0-.4-.4-.7-1.5-.5-2 .5-1.4.9-2.9.9-4.4 0-.6-.1-1.2-.5-1.7-.4-.6-1.2-.6-1.6.1-.2.3-.3.7-.3 1.1-.3 1.8-.1 3.7.2 5.5.1.6-.2 1.1-.5 1.5-.1.2-.3.2-.5 0-.4-.3-.8-1.5-.6-2 .4-1 .6-2 .8-3.1.1-1 .2-2-.3-3-.2-.3-.4-.6-.8-.6s-.6.2-.8.6c-.2.4-.3.8-.4 1.2-.2 1.9-.1 3.8.3 5.6.1.4-.4 1.4-.7 1.6-.1.1-.3.1-.4 0-.2-.1 0-.3 0-.4.3-.6.5-1.3.5-2 0-.6-.1-1.3-.5-1.8-.5-.5-1.1-.4-1.4.2-.3.6-.4 1.2-.4 1.9.1.6.3 1.2.6 1.8-.6.1-1-.2-1.2-1-.4-1.3-.2-2.7-.1-4 .1-.5.1-.5.8-.5.8 0 1.4-.3 1.6-.9.2-.6.1-1.1-.1-1.7-.6.8-.9 1-1.5 1.2-.3.1-.4.1-.3-.3.2-.5.3-1 .4-1.6.1-.2.1-.5-.2-.6-.6-.1-1.4.4-1.5.9-.1.4-.1.8-.2 1.2 0 .2-.1.3-.3.2-.4-.1-.9-.2-1.3-.3-1.4-.4-2.8-.6-4.2-.3-.3.1-.2-.1-.2-.3.1-.7 0-1.4-.3-2-.4-.9-1.3-1.5-2.2-1.4-.9 0-1.6.6-2 1.6-.3.7-.4 1.5-.4 2.3 0 1.5.3 3 .6 4.5.1.5 0 .8-.3 1.1-.3.3-.4.3-.6 0-.8-.9-1.8-.9-2.6-.1-.4.4-.7.9-.8 1.5-.6 1.8-.5 3.7 0 5.5.3 1.4.9 2.6 2 3.5 1.8 1.6 3.9.9 4.4-1.4.3-1.3.3-2.6 0-3.8-.3-1.6-.6-3.3-.9-4.9 0-.2-.1-.5.2-.5.3 0 .1.3.1.5.1.9.2 1.8.9 2.6.9.9 1.9.7 2.4-.4.1-.3.2-.7.3-1 0-.3.3-.3.5-.3s.1.2.2.3c.1.5.1 1 .4 1.5.1.2.2.5.6.4.3-.1.5-.3.5-.7.1-.8.3-1.5.6-2.3.1.2.1.4.1.6.1.7.3 1.4.8 2 .5.6 1.2.6 1.7 0 .1-.2.2-.3.4-.5.7.9 1.3 1 2.3.5.2-.1.3 0 .4.1.6.4 1.1.2 1.5-.3.1-.1.2-.4.4-.5.5.9.9 1.2 1.5 1.1.7-.2.9-.9 1.3-1.4.3.6.5 1.3 1.2 1.4.8.1 1.1-.5 1.5-1 .2.2.3.4.4.6.7.8 1.5.7 2-.2.2-.4.3-.8.4-1.2 0-.3.1-.4.5-.5 1-.1 2-.4 2.6-1.3.5-1.2-.1-2.2-1.2-2.3zM4.3 17.4c.3.5.4.9.3 1.4 0 .1 0 .2-.1.2s-.1-.1-.2-.2c-.1-.5-.1-.9 0-1.4zm2 4.4c0 .7 0 1.5-.2 2.2-.4 1-1.2 1.3-2 .5-.6-.5-1-1.1-1.3-1.8-.7-1.7-1-3.5-.8-5.4 0-.3.1-.6.2-.8.4-.7 1-.7 1.5-.2.1.2.1.3 0 .4-.2.6-.4 1.2-.4 1.8v.4c.1.6.6 1 1 .9.5 0 .8-.5.8-1.1 0-.6-.1-1.2-.3-1.7-.3-.5 0-.8.4-1.1.5 2.1 1 4 1.1 5.9zm8.6-4c-.2.1-.5 0-.6-.2-.3-.4-.4-.8-.4-1.2-.1-.8-.1-1.6.1-2.4.1-.4 0-.5-.4-.5s-.7.2-.8.6c-.4.9-.7 1.7-1 2.6.1-.9.1-1.8.5-2.7.3-.6.2-.7-.5-.7-.5 0-.7.2-.8.7-.1.4-.2.9-.3 1.3-.1.3-.2.5-.6.7 0-.4 0-.8-.1-1.1-.1-.3-.2-.7-.5-.9-.3-.3-.7-.4-1.1-.2-.4.1-.5.5-.6.9 0 .8.2 1.4.9 1.8.3 0 .4.1.3.4-.1.3-.1.6-.3.8-.1.2-.2.4-.5.4s-.4-.2-.5-.4c-.4-.9-.4-1.9-.1-2.9 0-.1.1-.2.1-.2.1-.2 0-.4-.1-.6-.1-.2-.3-.1-.4 0-.4.1-.8.3-1.3.5-.2-1.8-.5-3.5-.2-5.3.2-.5.3-1 .6-1.3.6-.7 1.4-.6 1.8.2.3.6.3 1.3.2 2 0 .2-.2.2-.3.3-.4.3-.8.6-1.1 1-.1.2-.2.4-.2.6 0 .4.1.6.4.8.3.2.6 0 .8-.2.5-.4.7-1 .9-1.5.1-.5.4-.7.9-.8 1-.2 2 0 2.9.3.8.3 1.5.6 2.3.9.2.1.2.2.2.4-.1.9-.1 1.9-.1 2.8 0 .8.1 1.6.3 2.3.1.5-.1.6-.4.8zm-5.8-2c-.4-.4-.4-.7-.3-1.1.3.3.3.6.3 1.1zM8 11.1c-.1.5-.2.8-.5 1-.1.1-.1.2-.3.1-.1-.1-.1-.2 0-.3.2-.3.4-.6.8-.8zm10.1 6.2c-.3-.8-.3-1.6-.2-2.4 0-.2.1-.5.4-.5.3 0 .4.3.4.5.1.8-.1 1.6-.6 2.4zm2.4-5.3c0-.3 0-.6.1-.9 0-.2 0-.6.3-.6s.2.4.3.6c.1.6.1 1.1 0 1.7-.1.5-.2 1.1-.4 1.6-.2-.8-.3-1.6-.3-2.4zm3.1 2.4c-.2-1.2-.2-2.3-.1-3.4 0-.1 0-.2.1-.3 0-.1 0-.2.2-.2s.2.1.2.2c.2.6.2 1.1.1 1.7-.1.7-.2 1.4-.5 2zm4.4 1.3c-.5-.3-.7-.6-.7-1.1 0-.2.1-.3.2-.3.2 0 .3.1.3.2.2.4.2.7.2 1.2z" fill="currentColor"/><path d="M8.3 22c0-.4.2-.5.4-.6.8-.5 1.7-.8 2.6-1 2.4-.5 4.8-.6 7.2-.6 2.3 0 4.6.3 6.7 1 .5.2 1 .3 1.4.6.1.1.2.1.3.2.1.1.1.3 0 .5s-.2.1-.4.1c-1.4-.4-2.7-.7-4.1-.8-2.3-.3-4.6-.3-6.9-.1-1.9.2-3.7.6-5.5 1.3-.2.1-.4.2-.5.2-.2.1-.4.4-.7.2-.3-.4-.5-.7-.5-1z" fill="currentColor"/>',viewBox:"0 0 32 32"},videoCameraDuo:{icon:'<rect y="5" width="21.192" height="21.192" rx="2" fill="currentColor"/><path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M30.288 9.016c.627-.637 1.712-.193 1.712.702v11.756c0 .895-1.085 1.34-1.712.702l-5.791-5.878a1 1 0 010-1.404l5.79-5.878z" fill="currentColor"/>',viewBox:"0 0 32 32"},folderPlusDuo:{icon:'<path opacity=".3" fill-rule="evenodd" clip-rule="evenodd" d="M0 27.2a2 2 0 002 2h28a2 2 0 002-2V8.8a2 2 0 00-2-2H13.628a2 2 0 01-1.414-.586L8.586 2.586A2 2 0 007.172 2H2a2 2 0 00-2 2v23.2z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M15.822 11.245c.472 0 .854.382.854.853v4.693h4.693a.853.853 0 010 1.707h-4.693v4.693a.853.853 0 01-1.707 0v-4.693h-4.693a.853.853 0 010-1.707h4.693v-4.693c0-.471.382-.853.853-.853z" fill="currentColor"/>',viewBox:"0 0 32 32"},foldersDuo:{icon:'<path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M4.572 27.886a2 2 0 002 2H30a2 2 0 002-2v-15.2a2 2 0 00-2-2H16.371a2 2 0 01-1.414-.586l-2.943-2.943a2 2 0 00-1.414-.586H6.572a2 2 0 00-2 2v19.315z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M0 23.314a2 2 0 002 2h23.428a2 2 0 002-2v-15.2a2 2 0 00-2-2H11.8a2 2 0 01-1.414-.586L7.443 2.586A2 2 0 006.029 2H2a2 2 0 00-2 2v19.314z" fill="currentColor"/>',viewBox:"0 0 32 32"},plusCircleDuo:{icon:'<path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M32 16c0-8.832-7.168-16-16-16S0 7.168 0 16s7.168 16 16 16 16-7.168 16-16zM3.2 16C3.2 8.944 8.944 3.2 16 3.2c7.056 0 12.8 5.744 12.8 12.8 0 7.056-5.744 12.8-12.8 12.8-7.056 0-12.8-5.744-12.8-12.8z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16 8.533c.55 0 .995.446.995.996v5.476h5.476a.996.996 0 010 1.99h-5.476v5.476a.995.995 0 11-1.99 0v-5.475H9.528a.996.996 0 110-1.991l5.475-.002V9.53c0-.55.446-.996.996-.996z" fill="currentColor"/>',viewBox:"0 0 32 32"},layersDuo:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M27.605 20.035l4.129 2.14c.325.169.352.433.081.617l-.081.049-15.092 7.821c-.31.161-.79.181-1.142.06l-.142-.06L.266 22.841c-.325-.169-.352-.433-.081-.618l.081-.048 4.128-2.139 10.86 5.628c.365.19.933.211 1.344.064l.146-.064 10.861-5.629z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M27.605 13.733l4.129 2.14c.325.169.352.433.081.618l-.081.048-15.092 7.821c-.31.161-.79.181-1.142.06l-.142-.06L.266 16.54c-.325-.169-.352-.433-.081-.618l.081-.048 4.128-2.139 10.86 5.628c.365.19.933.211 1.344.064l.146-.064 10.861-5.629z" fill="currentColor"/><path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M.266 9.679l15.092-7.546c.31-.155.79-.175 1.142-.058l.142.058 15.092 7.546c.325.162.352.418.081.595l-.081.047-15.092 7.546c-.31.155-.79.175-1.142.058l-.142-.058L.266 10.321c-.325-.162-.352-.418-.081-.596l.081-.046 15.092-7.546L.266 9.679z" fill="currentColor"/>',viewBox:"0 0 32 32"},layoutsDuo:{icon:'<path d="M1 5a2 2 0 012-2h26a2 2 0 012 2v3.806H1V5z" fill="currentColor"/><path opacity=".4" d="M1 10.742h8.71v17.42H3a2 2 0 01-2-2v-15.42z" fill="currentColor"/><path d="M11.646 10.742H31v15.42a2 2 0 01-2 2H11.645v-17.42z" fill="currentColor"/>',viewBox:"0 0 32 32"},mediaDuo:{icon:' <path d="M11.174 11.037h9.507c.835 0 1.347.336 1.611 1.059.053.14.083.306.083.458.006 4.84.006 9.678 0 14.517 0 .817-.682 1.5-1.511 1.535H1.643c-.805 0-1.405-.447-1.605-1.194-.03-.1-.035-.211-.035-.317 0-4.851-.006-9.702 0-14.546 0-.812.646-1.488 1.464-1.494 2.698-.012 5.397-.012 8.096-.012.535-.006 1.07-.006 1.61-.006zm-4.821 9.537c-.1.094-.183.165-.26.241-.687.682-1.369 1.364-2.051 2.052-.312.312-.723.588-.882.964-.153.365-.024.847-.053 1.276-.018.294.07.383.37.383 5.133-.012 10.272-.006 15.405 0 .276 0 .37-.071.37-.36a251.726 251.726 0 010-4.22.666.666 0 00-.211-.512c-1.476-1.476-2.94-2.952-4.41-4.428-.07-.07-.159-.135-.258-.223-2.147 2.14-4.263 4.263-6.403 6.403-.541-.535-1.07-1.047-1.617-1.576zm-1.611-6.403c-.9 0-1.623.718-1.63 1.611 0 .918.73 1.664 1.641 1.67.9 0 1.635-.735 1.64-1.634.007-.935-.71-1.647-1.651-1.647z" fill="currentColor"/><path opacity=".4" d="M19.218 3.012h11.206c.765 0 1.352.458 1.54 1.193.03.112.036.23.036.347v16.105c0 .829-.653 1.493-1.488 1.499-2.052.012-4.11.006-6.162.012-.247 0-.288-.1-.288-.318.006-1.576.006-3.145.006-4.721V6.539c0-.405 0-.405-.417-.405h-8.86c-.442 0-.442 0-.442.458 0 .812-.006 1.623.006 2.435.006.247-.059.34-.33.34a756.983 756.983 0 00-7.308 0c-.27 0-.323-.093-.323-.34.012-1.447.006-2.893.006-4.34C6.394 3.654 7.176 2.994 8.064 3c3.722.024 7.438.012 11.154.012zM11.62 7.357v-.618c-.006-.429-.176-.605-.6-.611-.429-.006-.858-.006-1.293 0-.388 0-.582.17-.6.559-.023.458-.012.917 0 1.375.006.283.147.512.453.524.535.023 1.07.03 1.605 0 .288-.018.44-.224.435-.53-.006-.229 0-.464 0-.7zM29.289 12.6v-.646-.06c-.017-.364-.188-.534-.552-.54a49.44 49.44 0 00-1.323 0c-.424 0-.612.17-.623.594-.012.43-.012.858 0 1.287.011.383.17.577.54.6.477.03.959.03 1.435 0 .359-.023.506-.223.518-.588.011-.217.005-.435.005-.646zm0-5.209c0-.235.006-.47 0-.705-.011-.37-.2-.553-.57-.559-.44-.006-.882-.006-1.317 0-.376 0-.576.159-.594.535-.023.476-.017.958-.006 1.435.012.27.153.482.447.494.535.017 1.07.023 1.605.005.283-.011.424-.223.435-.5.006-.234 0-.47 0-.705zm-1.264 11.642h.73c.329-.006.517-.165.529-.494.017-.488.011-.976 0-1.464-.012-.312-.194-.494-.5-.5-.5-.012-.994-.006-1.494 0-.252.006-.452.147-.464.4-.024.553-.03 1.105 0 1.658.012.259.212.4.488.394.24 0 .476.006.711.006z" fill="currentColor"/>',viewBox:"0 0 32 32"},toolsDuo:{icon:'<path d="M30.401 4.5a.879.879 0 00-1.414-.243l-2.274 2.274a.898.898 0 01-1.243 0 .88.88 0 010-1.243l2.274-2.274A.88.88 0 0027.5 1.6a6.159 6.159 0 00-7.003 1.202 6.164 6.164 0 00-1.446 6.417L9.219 19.05a6.165 6.165 0 00-6.417 1.447A6.162 6.162 0 001.6 27.5a.88.88 0 001.414.243l2.274-2.273a.88.88 0 011.243 1.242l-2.274 2.274a.88.88 0 00.243 1.415 6.157 6.157 0 007.002-1.203 6.162 6.162 0 001.446-6.417l9.833-9.832a6.17 6.17 0 006.418-1.446A6.162 6.162 0 0030.4 4.5z" fill="currentColor"/><path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M10.618 5.647l-.62.621 4.75 4.752-3.724 3.724-4.755-4.748-.622.622a.88.88 0 01-1.375-.17L1.447 5.743a3.125 3.125 0 01.471-3.824 3.125 3.125 0 013.824-.471l4.708 2.825a.88.88 0 01.168 1.375zm12.103 11.928c2.755 2.134 4.34 3.361 6.98 5.992a4.39 4.39 0 011.273 3.463 4.417 4.417 0 01-1.831 3.228c-.727.522-1.592.73-2.469.73-1.193 0-2.407-.426-3.32-1.339-2.446-2.446-3.891-4.312-5.865-6.858l-.874-1.126 4.97-4.971c.402.312.778.604 1.136.88zm3.22 9.552c.334.335.88.365 1.23.047a.879.879 0 00.03-1.272l-3.516-3.516a.879.879 0 00-1.272.03c-.319.35-.288.896.047 1.23l3.48 3.481z" fill="currentColor"/>',viewBox:"0 0 32 32"},triggersDuo:{icon:'<ellipse cx="6.9466" cy="6.44802" rx="6.29267" ry="6.29409" fill="#C9CCDA"/><rect x="3.87848" y="3.24072" rx="3.0903" fill="white"/><path d="M15.8006 13.5485V16.7451C15.8006 17.6779 15.617 18.6016 15.2601 19.4634C14.9032 20.3252 14.3802 21.1083 13.7208 21.7679C13.0614 22.4275 12.2785 22.9507 11.417 23.3077C10.5554 23.6647 9.63203 23.8484 8.6995 23.8484C4.7779 23.8484 3.74557 21.7174 0.416025 15.8571C0.184321 15.4495 0.123216 14.9667 0.246044 14.5141C0.368872 14.0616 0.665662 13.676 1.07165 13.4415C1.47763 13.207 1.95985 13.1427 2.41307 13.2626C2.8663 13.3824 3.25373 13.6767 3.49082 14.0813L5.14893 16.7451V7.15548C5.14893 6.6845 5.33597 6.23281 5.6689 5.89977C6.00183 5.56674 6.45338 5.37964 6.92421 5.37964C7.39505 5.37964 7.8466 5.56674 8.17953 5.89977C8.51246 6.23281 8.6995 6.6845 8.6995 7.15548V12.1279C8.6995 11.6569 8.88653 11.2052 9.21946 10.8721C9.55239 10.5391 10.0039 10.352 10.4748 10.352C10.9456 10.352 11.3972 10.5391 11.7301 10.8721C12.063 11.2052 12.2501 11.6569 12.2501 12.1279V13.5485C12.2501 13.0775 12.4371 12.6259 12.77 12.2928C13.103 11.9598 13.5545 11.7727 14.0253 11.7727C14.4962 11.7727 14.9477 11.9598 15.2807 12.2928C15.6136 12.6259 15.8006 13.0775 15.8006 13.5485Z" fill="currentColor"/>',viewBox:"0 0 16 24"},blocksDuo:{icon:'<path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M2 1a1 1 0 00-1 1v7a1 1 0 001 1h11.636a1 1 0 001-1V2a1 1 0 00-1-1H2zm16.364 21a1 1 0 00-1 1v7a1 1 0 001 1H30a1 1 0 001-1v-7a1 1 0 00-1-1H18.364z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M18.364 1a1 1 0 00-1 1v16a1 1 0 001 1H30a1 1 0 001-1V2a1 1 0 00-1-1H18.364zM2 13a1 1 0 00-1 1v16a1 1 0 001 1h11.636a1 1 0 001-1V14a1 1 0 00-1-1H2z" fill="currentColor"/>',viewBox:"0 0 32 32"},zipDuo:{icon:'<path opacity=".4" d="M27.563 6.563L21.442.438A1.499 1.499 0 0020.382 0H20v8h8v-.381c0-.394-.156-.775-.438-1.056z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M18 8.5c0 .825.675 1.5 1.5 1.5H28v20.5c0 .831-.669 1.5-1.5 1.5h-21c-.831 0-1.5-.669-1.5-1.5v-29C4 .669 4.669 0 5.5 0h6.525v2h2V0H18v8.5zM11.994 2h-2v2h2V2zM8.8 22.069a3.277 3.277 0 106.425.018l-1.081-5.48a.756.756 0 00-.738-.607h-1.381v-2h2v-2h-2v-2h2V8h-2V6h2V4h-2v2h-2v2h2v2h-2v2h2v2h-2v2L8.8 22.069zm1.2.619c0-.932.906-1.688 2.025-1.688 1.119 0 2.031.756 2.031 1.688 0 .93-.906 1.687-2.025 1.687-1.119 0-2.031-.75-2.031-1.688z" fill="currentColor"/>',viewBox:"0 0 32 32"},cubeDuo:{icon:'<path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M16 13.3L31.1 7c-.3-.3-.6-.5-.9-.7L17.4.3c-.9-.4-2-.4-2.8 0l-12.8 6c-.4.2-.7.4-.9.7L16 13.3z" fill="currentColor"/><path d="M0 23.3c0 1.1.7 2.2 1.8 2.7l12.8 6h.2V15.7L0 9.5v13.8zM17.3 15.7V32h.1l12.8-6c1.1-.5 1.8-1.5 1.8-2.7V9.5l-14.7 6.2z" fill="currentColor"/>',viewBox:"0 0 32 32"},filesDuo:{icon:'<path d="M25.572 5.577a.938.938 0 01-.938-.938V0H11.698c-1.036 0-1.876.84-1.876 1.877v25.331h18.512c1.037 0 1.877-.84 1.877-1.877V5.577h-4.639zm.259 17.758H15.98a.938.938 0 010-1.877h9.85a.938.938 0 010 1.877zm0-3.682H15.98a.938.938 0 010-1.877h9.85a.938.938 0 010 1.877zm0-3.683H15.98a.938.938 0 010-1.877h9.85a.938.938 0 010 1.877zm0-3.682H15.98a.938.938 0 010-1.877h9.85a.938.938 0 010 1.877z" fill="currentColor"/><path opacity=".4" fill-rule="evenodd" clip-rule="evenodd" d="M26.51 3.7V.17l3.53 3.53h-3.53zM6.166 28.147c0 .518.42.939.938.939h13.508v1.037c0 1.037-.84 1.877-1.877 1.877H3.877A1.877 1.877 0 012 30.123V6.668c0-1.036.84-1.877 1.877-1.877h2.289v23.356z" fill="currentColor"/>',viewBox:"0 0 32 32"},dynamicContentDuo:{icon:'<path fill="currentColor" d="M2.878 1.42C4.195.836 5.963.493 7.877.493c1.913 0 3.682.343 5 .929.657.292 1.235.66 1.659 1.104.427.45.725 1.011.725 1.66v3.692a.738.738 0 1 1-1.476 0V6.459a6.42 6.42 0 0 1-.909.49c-1.317.585-3.086.928-5 .928-1.913 0-3.681-.343-4.998-.929a6.417 6.417 0 0 1-.909-.489v1.418c0 .168.073.383.319.64.249.262.644.532 1.19.774 1.087.483 2.642.801 4.399.801a.738.738 0 1 1 0 1.477c-1.914 0-3.682-.343-5-.928a6.419 6.419 0 0 1-.908-.49v1.418c0 .168.073.383.319.641.249.262.644.531 1.19.773 1.087.484 2.642.801 4.399.801a.738.738 0 1 1 0 1.477c-1.914 0-3.682-.343-5-.928-.657-.292-1.235-.66-1.659-1.105-.427-.449-.726-1.01-.726-1.659V4.184c0-.648.299-1.21.726-1.659.424-.445 1.002-.812 1.66-1.104Zm-.909 2.764c0 .168.073.384.319.641.249.262.644.531 1.19.774 1.087.483 2.642.8 4.399.8 1.756 0 3.311-.317 4.4-.8.544-.243.94-.512 1.189-.774.245-.257.319-.473.319-.64 0-.168-.074-.384-.32-.641-.248-.262-.644-.531-1.189-.774-1.088-.483-2.643-.8-4.4-.8-1.756 0-3.31.317-4.399.8-.545.243-.94.512-1.19.774-.244.257-.318.473-.318.64Z"/><path fill="currentColor" opacity=".4" d="M15.877 12.553a3.323 3.323 0 1 1-6.647 0 3.323 3.323 0 0 1 6.647 0Zm-2.807-1.477a.332.332 0 1 0-.664 0v1.33h-1.33a.332.332 0 1 0 0 .664h1.33v1.33a.332.332 0 0 0 .664 0v-1.33h1.33a.332.332 0 0 0 0-.664h-1.33v-1.33Z"/>',viewBox:"0 0 16 16"},popsDuo:{icon:'<path fill="currentColor" d="M3 4h-.133C1.836 4 1 4.836 1 5.867v7.466c0 1.031.836 1.867 1.867 1.867h7.466a1.867 1.867 0 0 0 1.867-1.867V13.2H4.867A1.867 1.867 0 0 1 3 11.333V4Z" opacity=".4"/><path fill="currentColor" fill-rule="evenodd" d="M6.867 1C5.836 1 5 1.836 5 2.867v6.466c0 1.031.836 1.867 1.867 1.867h6.466A1.867 1.867 0 0 0 15.2 9.333V2.867C15.2 1.836 14.364 1 13.333 1H6.867ZM10 2.5a.5.5 0 0 0 0 1h2a.5.5 0 0 1 .5.5v2a.5.5 0 0 0 1 0V4A1.5 1.5 0 0 0 12 2.5h-2Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},wordDuo:{icon:'<path d="M19.5 10c-.825 0-1.5-.675-1.5-1.5V0H5.5C4.669 0 4 .669 4 1.5v29c0 .831.669 1.5 1.5 1.5h21c.831 0 1.5-.669 1.5-1.5V10h-8.5zm4.294 6.919l-2.375 10.5a.743.743 0 01-.732.581h-2.375a.749.749 0 01-.725-.569c-1.612-6.469-1.3-5.075-1.6-6.906h-.03c-.07.894-.15 1.088-1.6 6.906a.749.749 0 01-.726.569h-2.319a.749.749 0 01-.73-.587l-2.363-10.5A.747.747 0 018.95 16h1.531a.75.75 0 01.738.606c.975 4.875 1.256 6.844 1.312 7.638.1-.638.457-2.044 1.838-7.669a.744.744 0 01.731-.569h1.819c.35 0 .65.238.731.575 1.5 6.275 1.8 7.75 1.85 8.088-.012-.7-.163-1.113 1.35-8.075a.725.725 0 01.719-.594h1.494a.75.75 0 01.73.919z" fill="currentColor"/><path opacity=".4" d="M28 7.619V8h-8V0h.381c.4 0 .782.156 1.063.438l6.119 6.125c.28.28.437.662.437 1.056z" fill="currentColor"/>',viewBox:"0 0 32 32"},pdfDuo:{icon:'<path opacity=".4" d="M27.563 6.563L21.438.438A1.499 1.499 0 0020.375 0H20v8h8v-.381c0-.394-.156-.775-.438-1.056z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M19.5 10c-.825 0-1.5-.675-1.5-1.5V0H5.5C4.669 0 4 .669 4 1.5v29c0 .831.669 1.5 1.5 1.5h21c.831 0 1.5-.669 1.5-1.5V10h-8.5zm2.869 13.9c-1.056 0-2.644-.481-4-1.219-1.261.208-2.661.682-4.005 1.137-.315.107-.627.212-.933.313-1.587 2.738-2.7 3.863-3.818 3.863-.344 0-.994-.194-1.344-.625-1.194-1.469 1.712-3.381 3.406-4.25.003 0 .005-.002.006-.003.002-.002.003-.003.007-.003.756-1.325 1.824-3.638 2.55-5.363-.532-2.056-.82-3.669-.507-4.813.338-1.23 2.694-1.412 2.988.426.329 1.071-.084 2.766-.366 3.922l-.022.09c.588 1.55 1.419 2.6 2.669 3.363 1.206-.157 3.731-.4 4.6.45.719.712.594 2.712-1.231 2.712zm-7.125-10.825c-.181 0-.188 1.931.125 2.931.35-.625.4-2.931-.125-2.931zm.018 5.881c-.48 1.263-1.08 2.707-1.774 3.919.28-.107.569-.226.867-.35.922-.38 1.936-.797 3.064-1.019-.794-.6-1.556-1.462-2.157-2.55zm-3.7 5.288c-1.356 2.175-2.18 2.562-2.18 2.512.308-.837 1.372-1.787 1.938-2.293.098-.087.18-.161.242-.22zm8.694-2.288c2.319.988 2.675.563 2.675.563.256-.169-.156-.744-2.675-.563z" fill="currentColor"/>',viewBox:"0 0 32 32"},powerpointDuo:{icon:'<path opacity=".4" d="M27.563 6.563L21.438.438A1.499 1.499 0 0020.375 0H20v8h8v-.381c0-.394-.156-.775-.438-1.056z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M18 8.5c0 .825.675 1.5 1.5 1.5H28v20.5c0 .831-.669 1.5-1.5 1.5h-21c-.831 0-1.5-.669-1.5-1.5v-29C4 .669 4.669 0 5.5 0H18v8.5zm-3.631 18.75v-3.575c.127 0 .289.007.478.014 1.883.077 6.466.265 6.466-4.864 0-2.762-1.775-4.813-4.557-4.813h-5.062a.752.752 0 00-.75.75V27.25c0 .413.337.75.75.75h1.925c.412 0 .75-.337.75-.75zm-.006-10.3h1.743c.55 0 .969.169 1.269.506.6.681.613 2.044-.012 2.756-.307.35-.744.532-1.32.532h-1.68V16.95z" fill="currentColor"',viewBox:"0 0 32 32"},excelDuo:{icon:'<path d="M19.5 10c-.825 0-1.5-.675-1.5-1.5V0H5.5C4.669 0 4 .669 4 1.5v29c0 .831.669 1.5 1.5 1.5h21c.831 0 1.5-.669 1.5-1.5V10h-8.5zm2.256 16.844A.751.751 0 0121.125 28h-2.181a.753.753 0 01-.663-.394C17.056 25.344 16 23.312 16 23.312c-.4.925-.625 1.25-2.287 4.3a.743.743 0 01-.657.394h-2.181a.751.751 0 01-.631-1.156l3.768-5.844-3.768-5.844a.75.75 0 01.631-1.156h2.175c.275 0 .531.15.662.394 1.632 3.05 1.25 2.1 2.288 4.281 0 0 .381-.731 2.288-4.281a.753.753 0 01.662-.394h2.175c.594-.006.95.65.631 1.15L18 21l3.756 5.844z" fill="currentColor"/><path opacity=".4" d="M28 7.619V8h-8V0h.381c.4 0 .782.156 1.063.438l6.119 6.125c.28.28.437.662.437 1.056z" fill="currentColor"/>',viewBox:"0 0 32 32"},animationDuo:{icon:'<path opacity="0.2" d="M32 7.9C32 3.6 28.4 0 24.1 0c-4.3 0-7.9 3.5-7.9 7.8h.1c4.4 0 7.9 3.6 7.9 7.9v.1c4.3 0 7.8-3.5 7.8-7.9z" fill="currentColor"/><path opacity="0.4" d="M23.9 16c0-4.4-3.6-7.9-7.9-7.9-4.3 0-7.9 3.5-7.9 7.8h.1c4.4 0 7.9 3.6 7.9 7.9v.1c4.3 0 7.8-3.5 7.8-7.9z" fill="currentColor"/><path d="M7.9 32a7.9 7.9 0 100-15.8 7.9 7.9 0 000 15.8z" fill="currentColor"/>',viewBox:"0 0 32 32"},addonDuo:{icon:'<path d="M8.026 12.2h.9c.8 0 1.6.6 1.7 1.4.1.4 0 .7-.2 1l-.1.2c-.1.2-.2.4-.2.6v.4c0 .6.5 1.2 1.1 1.2h4.9v4.8h-.5c-.1-.1-.3-.2-.5-.3-.5-.2-1-.3-1.5-.2-1.3.2-2.2 1.3-2.3 2.6v1c0 1.4 1 2.5 2.3 2.8.6.1 1.2 0 1.8-.3l.2-.1h.5v4.3h-12c-1.5 0-2.6-1.1-2.7-2.5v-12h4.2c.3 0 .7-.1.9-.4.2-.2.3-.5.4-.7v-.4c0-.2-.1-.4-.2-.6l-.2-.2c-.2-.3-.3-.8-.3-1.2.2-.8.8-1.3 1.6-1.4h.2z" fill="currentColor"/><path opacity=".4" d="M21.526 17.117c.02.083 0 0 0 .083v.5c-.4.6-.6 1.3-.5 2 .2 1.3 1.3 2.2 2.6 2.3h1.1c2.2.1 3.6-2.5 2.3-4.3v-.4c0-.1 0-.1.1-.2h4.8v11.8c0 1.4-1.1 2.6-2.6 2.7h-12.2v-4.2c0-.6-.5-1.2-1.1-1.2h-.4c-.2 0-.4.1-.6.2l-.1.1c-.3.2-.8.3-1.2.3-.8-.2-1.3-.8-1.4-1.6v-1c0-.8.6-1.6 1.4-1.7.4-.1.7 0 1 .2l.2.1c.2.1.4.2.6.2h.5c.7 0 1.2-.5 1.3-1.1V17h4.2" fill="currentColor"/><path opacity=".2" fill-rule="evenodd" clip-rule="evenodd" d="M14.226 0l.7 4.7c.1.6.7 1.1 1.3 1.1h.4c.2 0 .4-.1.6-.2l.1-.1c1-1.1 2.5-.5 2.8.8v.2l.1.8c.2.7-.3 1.5-1.1 1.8-.3.1-.7.1-1 0l-.2-.2c-.2-.1-.4-.1-.6-.1h-.5c-.6.1-1.1.6-1.1 1.3v.1l.6 4.1-4.7.7h-.1l-.1-.1v-.4c.3-.6.4-1.3.2-2-.4-1.2-1.6-2-2.9-1.9h-.1l-.8.1c-1.4.2-2.4 1.3-2.5 2.7 0 .6.2 1.2.6 1.7l.2.2.1.1v.4l-.1.1-4.2.6-1.9-11.8c-.2-1.4.8-2.7 2.1-3h.2l11.9-1.7z" fill="currentColor"/>',viewBox:"0 0 32 32"},integrationsDuo:{icon:'<path d="M9.412 10.412a1 1 0 011-1h11.176a1 1 0 011 1v11.176a1 1 0 01-1 1H10.412a1 1 0 01-1-1V10.412z" fill="currentColor"/><path opacity=".4" d="M20.706 1a1 1 0 00-1-1H1a1 1 0 00-1 1v18.706a1 1 0 001 1h4.588a1 1 0 001-1V7.588a1 1 0 011-1h12.118a1 1 0 001-1V1zM26.412 11.294a1 1 0 00-1 1v12.118a1 1 0 01-1 1H12.294a1 1 0 00-1 1V31a1 1 0 001 1H31a1 1 0 001-1V12.294a1 1 0 00-1-1h-4.588z" fill="currentColor"/>',viewBox:"0 0 32 32"},languagesDuo:{icon:'<path d="M28.4 13h-12c-1.9 0-3.4 1.5-3.4 3.4V23l-3.1 2.2c-.2.2-.4.5-.4.8 0 .3.1.6.4.8L13 29c.2 1.7 1.7 2.9 3.4 2.9h12c1.9 0 3.4-1.5 3.4-3.4v-12c.1-2-1.5-3.5-3.4-3.5zm-4 13.2c-.2 0-.4-.1-.4-.3l-.4-1.3h-2.3l-.4 1.3c-.1.2-.2.3-.4.3-.4 0-.8-.2-.8-.5v-.1l1.9-6.3c.1-.3.5-.4.8-.4.4 0 .8.1.8.4l1.9 6.3v.1c.1.2-.4.5-.7.5z" fill="currentColor"/><path d="M21.5 23.5h1.8l-.9-3-.9 3z" fill="currentColor"/><path opacity=".4" d="M22.6 6.1c0-.3-.1-.6-.4-.8L19 3C18.8 1.3 17.3.1 15.6.1h-12C1.7.1.2 1.6.2 3.5v12.1c0 1.9 1.5 3.4 3.4 3.4h7.7v-2.4c0-1.3.4-2.4 1.2-3.3-1.1 0-2.1-.3-2.9-.9-.8.6-1.8.9-2.9.9-.3 0-.5-.2-.5-.5s.2-.5.5-.5c.7 0 1.5-.2 2.1-.6-.8-.8-1.2-1.8-1.3-3h-.8c-.3 0-.5-.2-.5-.5s.2-.5.5-.5h2.4V6.4c0-.3.2-.5.5-.5s.5.2.5.5v1.3h2.4c.3 0 .5.2.5.5s-.2.5-.5.5h-.7c-.1 1.1-.6 2.1-1.3 2.9.6.4 1.3.6 2.1.6.3 0 .5.2.5.5 1-.9 2.2-1.4 3.6-1.4h2.4V9l3.1-2.2c.2-.2.4-.4.4-.7z" fill="currentColor"/><path opacity=".4" d="M9.6 11c.6-.6 1-1.4 1.1-2.2H8.5c.1.8.5 1.6 1.1 2.2z" fill="currentColor"/>',viewBox:"0 0 32 32"},iconsDuo:{icon:'<path d="M24 16.97c-.057.675-.482.952-.963 1.229-1.899 1.044-3.769 2.09-5.668 3.104-.708.368-1.19.89-1.53 1.66a344.392 344.392 0 01-2.606 5.746c-.255.584-.454 1.291-1.219 1.291-.765 0-.963-.676-1.247-1.26-.935-1.998-1.87-3.995-2.748-6.024-.312-.676-.737-1.137-1.36-1.444-1.87-.984-3.684-1.998-5.554-3.012C.595 17.983 0 17.768 0 17.03c0-.737.567-1.014 1.077-1.29 1.842-1.014 3.683-2.028 5.553-3.012.68-.338 1.134-.83 1.446-1.567.878-2.029 1.813-4.026 2.748-6.024.255-.553.482-1.137 1.19-1.137.709 0 .935.584 1.19 1.137.397.86.907 1.69 1.162 2.612.992 3.535 3.287 5.594 6.404 6.823.822.338 1.615.83 2.408 1.29.425.216.794.523.822 1.107z" fill="currentColor"/><path opacity="0.4" d="M25.24 31.93a.489.489 0 01-.413-.292c-.088-.204-.205-.38-.264-.584-.383-1.575-1.382-2.51-2.94-2.918-.353-.087-.883-.204-.883-.671 0-.496.53-.555.883-.642 1.587-.438 2.587-1.4 2.999-3.035.088-.321.176-.759.617-.788.441 0 .559.438.647.759.382 1.663 1.44 2.655 3.087 3.064.324.087.765.175.794.613 0 .438-.44.554-.764.642-1.676.438-2.735 1.459-3.146 3.152-.118.32-.236.642-.618.7zM32 6.04c-.03.322-.235.468-.441.555-.353.175-.706.35-1.088.438-2 .496-3.117 1.78-3.646 3.706-.147.526-.265 1.284-.97 1.284-.735 0-.824-.817-.941-1.313-.5-2.13-1.97-3.21-3.94-3.794-.47-.146-1.176-.233-1.176-.904 0-.584.617-.73 1.058-.847 2.294-.583 3.646-2.013 4.205-4.29.088-.408.294-.875.852-.875.471 0 .647.409.736.788.529 2.422 2.087 3.823 4.44 4.436.352.175.823.32.911.817z" fill="currentColor"/>',viewBox:"0 0 32 32"},popupsDuo:{icon:'<path opacity="0.4" d="M4 24h24v4a2 2 0 01-2 2H6a2 2 0 01-2-2v-4z" fill="currentColor"/><rect opacity="0.4" x="4" y="2" width="24" height="14.4" rx="2" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M2 9.778a2 2 0 00-2 2v8.19a2 2 0 002 2h12.06l2.16 2.496a.5.5 0 00.756 0l2.161-2.496H30a2 2 0 002-2v-8.19a2 2 0 00-2-2H2z" fill="currentColor"/>',viewBox:"0 0 32 32"},uppercaseDuo:{icon:'<path d="M13.393 23.63h-6.85l-1.329 5.009H0L7.668 4h4.6l7.77 24.639h-5.316l-1.329-5.01zm-5.725-4.192h4.6l-2.351-8.793-2.25 8.793z" fill="currentColor"/><path d="M28.013 25.572H23.82l-.818 3.067h-3.271l4.703-15.131h2.76L32 28.639h-3.272l-.715-3.067zm-3.476-2.556h2.862l-1.43-5.419-1.432 5.419z" fill="currentColor"/>',viewBox:"0 0 32 32"},desktop:{icon:'<path d="M26.25 6h-20C5.56 6 5 6.56 5 7.25v12.5c0 .69.56 1.25 1.25 1.25h20c.69 0 1.25-.56 1.25-1.25V7.25c0-.69-.56-1.25-1.25-1.25z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.25 6.8a.45.45 0 00-.45.45v12.5c0 .248.201.45.45.45h20a.45.45 0 00.45-.45V7.25a.45.45 0 00-.45-.45h-20zm-2.05.45A2.05 2.05 0 016.25 5.2h20a2.05 2.05 0 012.05 2.05v12.5a2.05 2.05 0 01-2.05 2.05h-20a2.05 2.05 0 01-2.05-2.05V7.25zM9.2 26a.8.8 0 01.8-.8h12.5a.8.8 0 010 1.6H10a.8.8 0 01-.8-.8z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.5 20.2a.8.8 0 01.8.8v5a.8.8 0 01-1.6 0v-5a.8.8 0 01.8-.8zM20 20.2a.8.8 0 01.8.8v5a.8.8 0 01-1.6 0v-5a.8.8 0 01.8-.8z" fill="currentColor"/>',viewBox:"0 0 32 32"},desktopLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M6.25 6.8a.45.45 0 00-.45.45v12.5c0 .248.201.45.45.45h20a.45.45 0 00.45-.45V7.25a.45.45 0 00-.45-.45h-20zm-2.05.45A2.05 2.05 0 016.25 5.2h20a2.05 2.05 0 012.05 2.05v12.5a2.05 2.05 0 01-2.05 2.05h-20a2.05 2.05 0 01-2.05-2.05V7.25zM9.2 26a.8.8 0 01.8-.8h12.5a.8.8 0 010 1.6H10a.8.8 0 01-.8-.8z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.5 20.2a.8.8 0 01.8.8v5a.8.8 0 01-1.6 0v-5a.8.8 0 01.8-.8zM20 20.2a.8.8 0 01.8.8v5a.8.8 0 01-1.6 0v-5a.8.8 0 01.8-.8z" fill="currentColor"/>',viewBox:"0 0 32 32"},laptop:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M28 19.818c0 1.51-.74 2.23-2.23 2.23H6.23c-1.48 0-2.23-.72-2.23-2.23V9.231C4 7.71 4.75 7 6.23 7h19.54C27.26 7 28 7.711 28 9.23v10.588zm-5.367 4.88c0 .448-.35.809-.789.809H10.127a.804.804 0 01-.8-.809c0-.448.361-.808.8-.808h11.717c.438 0 .79.36.79.808z" fill="currentColor"/>',viewBox:"0 0 32 32"},laptopLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.139 7.118c.527-.52 1.265-.718 2.092-.718H25.77c.83 0 1.57.198 2.096.72.527.522.734 1.262.734 2.11v10.588c0 .845-.207 1.584-.734 2.107-.525.523-1.264.724-2.096.724H6.23c-.828 0-1.566-.202-2.092-.723-.527-.522-.738-1.261-.738-2.108V9.231c0-.85.21-1.591.739-2.113zm.843.855c-.217.213-.382.588-.382 1.258v10.587c0 .664.164 1.04.382 1.255.22.217.597.376 1.249.376H25.77c.657 0 1.034-.16 1.25-.375.217-.215.38-.59.38-1.256V9.231c0-.672-.163-1.046-.379-1.26-.216-.213-.592-.371-1.252-.371H6.232c-.654 0-1.031.157-1.25.373z" fill="currentColor"/><path d="M21.844 25.507c.438 0 .79-.36.79-.809a.796.796 0 00-.79-.808H10.127a.804.804 0 00-.8.808c0 .448.361.809.8.809h11.717z" fill="currentColor"/>',viewBox:"0 0 32 32"},tabletLandscape:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.663 9.368v13.264c0 1.128.942 2.03 2.09 2.03h17.82c1.148 0 2.09-.902 2.09-2.03V9.368c0-1.128-.942-2.03-2.09-2.03H6.753c-1.148 0-2.09.902-2.09 2.03zm16.5.445a.55.55 0 10-1.1 0v12.1a.55.55 0 001.1 0v-12.1zm2.2 7.15a1.1 1.1 0 11-.001-2.2 1.1 1.1 0 010 2.2z" fill="currentColor"/>',viewBox:"0 0 32 32"},tabletLandscapeLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.663 22.632V9.368c0-1.128.942-2.03 2.09-2.03h17.82c1.148 0 2.09.902 2.09 2.03v13.264c0 1.128-.942 2.03-2.09 2.03H6.753c-1.148 0-2.09-.902-2.09-2.03zm1.965-14.05c-.488.057-.865.448-.865.921v12.994l.007.116c.061.458.477.812.983.812h17.82l.124-.007c.489-.058.866-.448.866-.921V9.503l-.008-.116c-.061-.458-.477-.812-.982-.812H6.753l-.125.007zm14.534 1.23a.55.55 0 10-1.1 0v12.1a.55.55 0 001.1 0v-12.1zm2.2 7.15a1.1 1.1 0 110-2.199 1.1 1.1 0 010 2.2z" fill="currentColor"/>',viewBox:"0 0 32 32"},tablet:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M22.295 5H9.03C7.902 5 7 5.942 7 7.09v17.82C7 26.058 7.902 27 9.03 27h13.265c1.128 0 2.03-.942 2.03-2.09V7.09c0-1.148-.902-2.09-2.03-2.09zm-.445 16.5a.55.55 0 000-1.1H9.75a.55.55 0 000 1.1h12.1zm-7.15 2.2a1.1 1.1 0 112.2 0 1.1 1.1 0 01-2.2 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},tabletLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M9.03 5h13.265c1.128 0 2.03.942 2.03 2.09v17.82c0 1.148-.902 2.09-2.03 2.09H9.03C7.902 27 7 26.058 7 24.91V7.09C7 5.942 7.902 5 9.03 5zm14.05 1.966c-.057-.489-.448-.866-.92-.866H9.166l-.117.008c-.457.06-.811.477-.811.982v17.82l.007.125c.057.488.448.865.92.865H22.16l.116-.008c.457-.06.812-.476.812-.982V7.09l-.008-.124zM21.85 21.5a.55.55 0 000-1.1H9.75a.55.55 0 000 1.1h12.1zm-7.15 2.2a1.1 1.1 0 112.2 0 1.1 1.1 0 01-2.2 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},mobile:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M21.19 6.212H11.084c-.973 0-1.685.853-1.685 1.829v15.592c0 .976.712 1.829 1.685 1.829H21.19c.973 0 1.684-.853 1.684-1.829V8.041c0-.976-.711-1.83-1.684-1.83zm-3.61 3.85a.481.481 0 000-.963h-2.887a.481.481 0 100 .963h2.888zm-2.405 11.55a.962.962 0 111.924 0 .962.962 0 01-1.924 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},mobileLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M11.084 6.212H21.19c.973 0 1.684.853 1.684 1.829v15.592c0 .976-.711 1.829-1.684 1.829H11.084c-.973 0-1.685-.853-1.685-1.829V8.041c0-.976.712-1.83 1.685-1.83zm10.823 1.72c-.045-.428-.349-.758-.717-.758H11.084l-.09.007c-.356.053-.632.417-.632.86v15.592l.006.109c.044.427.348.757.716.757H21.19l.09-.006c.357-.054.632-.418.632-.86V8.041l-.005-.11zm-4.326 2.13a.481.481 0 100-.963h-2.888a.481.481 0 100 .963h2.888zm-2.406 11.55a.962.962 0 111.924 0 .962.962 0 01-1.924 0z" fill="currentColor"/>',viewBox:"0 0 32 32"},mobileLandscape:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M6 10.21v10.106C6 21.289 6.853 22 7.829 22H23.42c.976 0 1.829-.712 1.829-1.684V10.209c0-.973-.853-1.684-1.829-1.684H7.83C6.853 8.525 6 9.236 6 10.209zm3.85 3.609a.481.481 0 10-.963 0v2.887a.481.481 0 10.963 0V13.82zm11.55 2.406a.962.962 0 110-1.924.962.962 0 010 1.924z" fill="currentColor"/>',viewBox:"0 0 32 32"},mobileLandscapeLine:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M6 20.316V10.209c0-.973.853-1.684 1.829-1.684H23.42c.976 0 1.829.711 1.829 1.684v10.107c0 .973-.853 1.684-1.829 1.684H7.83C6.853 22 6 21.288 6 20.316zM7.72 9.493c-.428.045-.758.349-.758.716v10.107l.007.09c.054.356.417.632.86.632H23.42l.109-.006c.427-.045.757-.349.757-.716V10.21l-.006-.091c-.054-.356-.418-.631-.86-.631H7.83l-.11.005zm2.13 4.326a.481.481 0 10-.963 0v2.887a.481.481 0 10.963 0V13.82zm11.55 2.406a.962.962 0 110-1.924.962.962 0 010 1.924z" fill="currentColor"/>',viewBox:"0 0 32 32"},justifyStart:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M15.429 10.857c0-.63-.512-1.143-1.143-1.143H5.143a1.143 1.143 0 0 0 0 2.286h9.143c.631 0 1.143-.511 1.143-1.143M1.714 1.143a.571.571 0 0 0-1.142 0v13.714a.571.571 0 1 0 1.142 0zm8 2.857a1.143 1.143 0 1 1 0 2.286H5.143a1.143 1.143 0 0 1 0-2.286z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifyEnd:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M.572 5.143c0 .63.511 1.143 1.142 1.143h9.143a1.143 1.143 0 1 0 0-2.286H1.714c-.63 0-1.142.512-1.142 1.143m13.714 9.714a.571.571 0 0 0 1.143 0V1.143a.571.571 0 1 0-1.143 0zm-8-2.857a1.143 1.143 0 0 1 0-2.286h4.571a1.143 1.143 0 1 1 0 2.286z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifyCenter:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14.287.57a.57.57 0 0 1 .572.572v13.717a.571.571 0 1 1-1.143 0V1.142a.57.57 0 0 1 .571-.572M8 4a1.143 1.143 0 0 1 1.143 1.143v5.715a1.143 1.143 0 1 1-2.286 0V5.143A1.143 1.143 0 0 1 8 4M2.285 1.142a.572.572 0 0 0-1.143 0v13.717a.571.571 0 1 0 1.143 0z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceAround:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14.9 14.9a.53.53 0 0 1-1.062 0V1.1a.53.53 0 1 1 1.061 0zM9.591 4.816a1.061 1.061 0 0 1 2.123 0v6.369a1.061 1.061 0 1 1-2.123 0zm-5.307 0a1.061 1.061 0 0 1 2.123 0v6.369a1.061 1.061 0 1 1-2.123 0zM1.632 15.43a.53.53 0 0 0 .53-.53V1.1a.53.53 0 1 0-1.061 0V14.9a.53.53 0 0 0 .53.53" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceBetween:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14.9 14.899a.53.53 0 1 1-1.062 0V1.1a.53.53 0 1 1 1.061 0zM9.591 4.815a1.061 1.061 0 1 1 2.123 0v6.369a1.061 1.061 0 1 1-2.123 0zm-5.307 0a1.061 1.061 0 1 1 2.123 0v6.369a1.062 1.062 0 0 1-2.123 0zM1.632 15.43a.53.53 0 0 0 .53-.53V1.1a.53.53 0 1 0-1.061 0v13.799a.53.53 0 0 0 .53.53" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceEvenly:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M14.287.57a.57.57 0 0 1 .572.572v13.717a.571.571 0 1 1-1.143 0V1.142a.57.57 0 0 1 .571-.572M8 4a1.143 1.143 0 0 1 1.143 1.143v5.715a1.143 1.143 0 1 1-2.286 0V5.143A1.143 1.143 0 0 1 8 4M2.285 1.142a.572.572 0 0 0-1.143 0v13.717a.571.571 0 1 0 1.143 0z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},alignStart:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.5 13a1 1 0 0 0 1-1V4a1 1 0 1 0-2 0v8a1 1 0 0 0 1 1ZM13 1a.5.5 0 0 0 0-1H1a.5.5 0 0 0 0 1h12Zm-2.5 7a1 1 0 1 1-2 0V4a1 1 0 0 1 2 0v4Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},alignEnd:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.5 0a1 1 0 0 1 1 1v8a1 1 0 1 1-2 0V1a1 1 0 0 1 1-1ZM13 12a.5.5 0 0 1 0 1H1a.5.5 0 0 1 0-1h12Zm-2.5-7a1 1 0 1 0-2 0v4a1 1 0 1 0 2 0V5Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},alignCenter:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M4.5 11.5a1 1 0 0 1-1-1v-4H1a.5.5 0 0 1 0-1h2.5v-4a1 1 0 0 1 2 0v4h3v-2a1 1 0 1 1 2 0v2H13a.5.5 0 0 1 0 1h-2.5v2a1 1 0 1 1-2 0v-2h-3v4a1 1 0 0 1-1 1Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},alignStretch:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M.414 1.101a.53.53 0 0 1 .53-.53h13.799a.53.53 0 0 1 0 1.06H.944a.53.53 0 0 1-.53-.53m8.491 10.614a1.062 1.062 0 0 0 2.123 0v-7.43a1.062 1.062 0 0 0-2.123 0zM4.66 10.654a1.061 1.061 0 1 0 2.123 0V5.347a1.061 1.061 0 1 0-2.123 0zM.944 14.369a.53.53 0 1 0 0 1.061h13.799a.53.53 0 0 0 0-1.061z" clip-rule="evenodd"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h16v16H0z"/>',viewBox:"0 0 16 16"},flexWrap:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 .5a.5.5 0 0 1 1 0v13a.5.5 0 0 1-1 0V.5ZM13.5 0a.5.5 0 0 0-.5.5v13a.5.5 0 0 0 1 0V.5a.5.5 0 0 0-.5-.5ZM7.36 3.03C9.7 3.03 11.5 4.22 11.5 6s-1.22 3.01-3.3 3.01H4.7l-1.11-.04.94.83.55.55c.07.07.1.15.1.25 0 .21-.14.36-.36.36a.4.4 0 0 1-.26-.11L2.62 8.93a.37.37 0 0 1-.12-.27c0-.1.04-.2.12-.27l1.94-1.93a.4.4 0 0 1 .26-.11c.22 0 .37.15.37.36 0 .1-.04.19-.1.25l-.56.55-.94.83 1.1-.04h3.56c1.62 0 2.52-.92 2.52-2.25s-1.29-2.3-3.41-2.3h-4.2a.35.35 0 0 1-.37-.36c0-.2.15-.36.37-.36h4.2Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},flexNoWrap:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.88 1a.5.5 0 0 1 .87.5L7.15 4.3C8.54 4.73 9.5 5.7 9.5 7c0 1.79-1.22 3.01-3.3 3.01H3.83l-.76 1.32.02.02c.06.07.1.15.1.25 0 .21-.15.36-.37.36-.03 0-.07 0-.1-.02L1.25 14.5a.5.5 0 1 1-.87-.5l1.58-2.74L.62 9.93a.37.37 0 0 1-.12-.27c0-.1.04-.2.12-.27l1.94-1.93a.4.4 0 0 1 .26-.11c.22 0 .37.15.37.36 0 .1-.04.19-.1.25l-.56.55-.94.83 1.1-.04h.4l2.63-4.54H1.16a.35.35 0 0 1-.37-.37c0-.2.15-.36.37-.36h4.2c.26 0 .51.01.75.04L7.88 1Zm-1.1 3.92L4.25 9.3h2c1.62 0 2.52-.92 2.52-2.25 0-1-.73-1.8-2-2.13Zm-4.1 5.1-1.1-.04.75.65.35-.6Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},flexWrapReverse:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 4.84c0 1.74 1.8 2.9 4.14 2.9h4.2c.22 0 .37-.16.37-.35 0-.2-.15-.35-.37-.35h-4.2C2.02 7.04.73 6.1.73 4.8c0-1.3.9-2.2 2.52-2.2H6.8l1.11-.03-.94.8-.55.54a.32.32 0 0 0-.1.25c0 .2.14.35.36.35a.4.4 0 0 0 .26-.11l1.94-1.88a.35.35 0 0 0 0-.53L6.94.1A.4.4 0 0 0 6.68 0c-.22 0-.37.15-.37.35 0 .1.04.18.1.25l.56.54.94.8-1.1-.04H3.3C1.21 1.9 0 3.1 0 4.84Zm11 3.32c0-1.74-1.8-2.9-4.14-2.9h-4.2c-.22 0-.37.16-.37.35 0 .2.15.35.37.35h4.2c2.12 0 3.41.94 3.41 2.24 0 1.3-.9 2.2-2.52 2.2H4.2l-1.11.03.94-.8.55-.54c.07-.06.1-.15.1-.25 0-.2-.14-.35-.36-.35a.4.4 0 0 0-.26.11l-1.94 1.88a.35.35 0 0 0 0 .53l1.94 1.88a.4.4 0 0 0 .26.11c.22 0 .37-.15.37-.35 0-.1-.04-.18-.1-.25l-.56-.54-.94-.8 1.1.04h3.5C9.79 11.1 11 9.9 11 8.16Z" fill="currentColor" fill-opacity="1"/>',viewBox:"0 0 14 13"},dockLeft:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 0a.83.83 0 0 0-.83.83v8.34c0 .46.37.83.83.83h10c.46 0 .83-.37.83-.83V.83A.83.83 0 0 0 11.5 0h-10Zm9.17 1.67H4.83v6.66h5.84V1.67Z" fill="currentColor"/>',viewBox:"0 0 12 10"},dockRight:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M11.1647 0C11.6253 0 11.998 0.373077 11.998 0.833333V9.16667C11.998 9.62692 11.6253 10 11.1647 10H1.16471C0.704101 10 0.331379 9.62692 0.331379 9.16667V0.833333C0.331379 0.373077 0.704101 0 1.16471 0H11.1647ZM1.99805 1.66667H7.83138V8.33333H1.99805V1.66667Z" fill="currentColor"/>',viewBox:"0 0 12 10"},dockFloat:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M3.5 0a1 1 0 0 0-1 1v5.5a1 1 0 0 0 1 1h7.17a1 1 0 0 0 1-1V1a1 1 0 0 0-1-1H3.5ZM10 1.67H4.17v4.16H10V1.67ZM0 2.5h1.67V10H0V2.5Zm9.17 5.83V10h-7.5V8.33h7.5Z" fill="currentColor"/>',viewBox:"0 0 12 10"},giftBox:{icon:'<path fill-rule="evenodd" d="M5 5a3 3 0 015-2.236A3 3 0 0114.83 6H16a2 2 0 110 4h-5V9a1 1 0 10-2 0v1H4a2 2 0 110-4h1.17C5.06 5.687 5 5.35 5 5zm4 1V5a1 1 0 10-1 1h1zm3 0a1 1 0 10-1-1v1h1z" clip-rule="evenodd" /> <path d="M9 11H3v5a2 2 0 002 2h4v-7zM11 18h4a2 2 0 002-2v-5h-6v7z" />',viewBox:"0 0 20 20"},premium:{icon:'<rect opacity="0.7" x="2.41504" y="10.5635" width="10.9714" height="2.4" fill="white" /> <path opacity="0.4" d="M8.07202 2.16406L13.2149 9.87834H2.75781L8.07202 2.16406Z" fill="white" /> <g filter="url(#filter0_d_5080_949)"> <path d="M13.8313 4.24902L5.08691 9.90613L13.348 9.91754L13.8313 4.24902Z" fill="#FDF1DF" /> </g> <g filter="url(#filter1_d_5080_949)"> <path d="M2 4.24902L10.7444 9.90613L2.48335 9.91754L2 4.24902Z" fill="#FFFAF4" /> </g> <defs> <filter id="filter0_d_5080_949" x="3.28691" y="0.649023" width="12.3441" height="9.26846" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB" > <feFlood flood-opacity="0" result="BackgroundImageFix" /> <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> <feOffset dy="-1.8" /> <feGaussianBlur stdDeviation="0.9" /> <feComposite in2="hardAlpha" operator="out" /> <feColorMatrix type="matrix" values="0 0 0 0 0.911683 0 0 0 0 0.680468 0 0 0 0 0.301132 0 0 0 0.1 0" /> <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5080_949" /> <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_5080_949" result="shape" /> </filter> <filter id="filter1_d_5080_949" x="0.2" y="0.649023" width="12.3441" height="9.26846" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB" > <feFlood flood-opacity="0" result="BackgroundImageFix" /> <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha" /> <feOffset dy="-1.8" /> <feGaussianBlur stdDeviation="0.9" /> <feComposite in2="hardAlpha" operator="out" /> <feColorMatrix type="matrix" values="0 0 0 0 0.911683 0 0 0 0 0.680468 0 0 0 0 0.301132 0 0 0 0.1 0" /> <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_5080_949" /> <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_5080_949" result="shape" /> </filter> </defs>',viewBox:"0 0 16 13"},bars:{icon:'<path d="M0.6 3.4V0.6H15.4V3.4H0.6ZM0.6 8.9V6.1H15.4V8.9H0.6ZM0.6 14.4V11.6H15.4V14.4H0.6Z" stroke="#676D98" stroke-width="1.2" stroke-linejoin="round" fill="none" />',viewBox:"0 0 16 15"},verticalBars:{icon:'<path d="M16.8748 3.1C16.8886 3.1 16.8998 3.11119 16.8998 3.125L16.8998 17.875C16.8998 17.8888 16.8886 17.9 16.8748 17.9L14.1248 17.9C14.1109 17.9 14.0998 17.8888 14.0998 17.875L14.0998 3.125C14.0998 3.11119 14.111 3.1 14.1248 3.1L16.8748 3.1ZM11.3743 3.1C11.3881 3.1 11.3993 3.11119 11.3993 3.125L11.3993 17.875C11.3993 17.8888 11.3881 17.9 11.3743 17.9H8.62427C8.61046 17.9 8.59927 17.8888 8.59927 17.875L8.59927 3.125C8.59927 3.11119 8.61046 3.1 8.62427 3.1L11.3743 3.1ZM5.875 3.1C5.88881 3.1 5.9 3.11119 5.9 3.125L5.9 17.875C5.9 17.8888 5.88881 17.9 5.875 17.9H3.125C3.11119 17.9 3.1 17.8888 3.1 17.875L3.1 3.125C3.1 3.11119 3.11119 3.1 3.125 3.1L5.875 3.1Z" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round" fill="none"/>',viewBox:"0 0 20 20"},exit:{icon:'<path d="M15.75 9V5.25A2.25 2.25 0 0 0 13.5 3h-6a2.25 2.25 0 0 0-2.25 2.25v13.5A2.25 2.25 0 0 0 7.5 21h6a2.25 2.25 0 0 0 2.25-2.25V15M12 9l-3 3m0 0 3 3m-3-3h12.75" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 24 24"},settings:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M13.75 5.669V3.5a.5.5 0 0 0-1 0v2.198a2.188 2.188 0 0 0 0 4.229V16.5a.5.5 0 0 0 1 0V9.956a2.188 2.188 0 0 0 0-4.287Zm.75 2.144a1.188 1.188 0 1 0-2.375 0 1.188 1.188 0 0 0 2.375 0ZM7.125 3a.5.5 0 0 0-.5.5v6.573a2.188 2.188 0 0 0 0 4.229V16.5a.5.5 0 0 0 1 0v-2.169a2.188 2.188 0 0 0 0-4.287V3.5a.5.5 0 0 0-.5-.5Zm1.25 9.188a1.188 1.188 0 1 1-2.375 0 1.188 1.188 0 0 1 2.375 0Z" clip-rule="evenodd"/>',viewBox:"0 0 20 20"},generate:{icon:'<path d="M14 7.5C14 7.63261 13.9473 7.75979 13.8535 7.85355C13.7598 7.94732 13.6326 8 13.5 8H12.5V9C12.5 9.13261 12.4473 9.25979 12.3535 9.35355C12.2598 9.44732 12.1326 9.5 12 9.5C11.8674 9.5 11.7402 9.44732 11.6464 9.35355C11.5527 9.25979 11.5 9.13261 11.5 9V8H10.5C10.3674 8 10.2402 7.94732 10.1464 7.85355C10.0527 7.75979 9.99999 7.63261 9.99999 7.5C9.99999 7.36739 10.0527 7.24021 10.1464 7.14645C10.2402 7.05268 10.3674 7 10.5 7H11.5V6C11.5 5.86739 11.5527 5.74021 11.6464 5.64645C11.7402 5.55268 11.8674 5.5 12 5.5C12.1326 5.5 12.2598 5.55268 12.3535 5.64645C12.4473 5.74021 12.5 5.86739 12.5 6V7H13.5C13.6326 7 13.7598 7.05268 13.8535 7.14645C13.9473 7.24021 14 7.36739 14 7.5ZM1.99999 2.5H2.99999V3.5C2.99999 3.63261 3.05266 3.75979 3.14643 3.85355C3.2402 3.94732 3.36738 4 3.49999 4C3.63259 4 3.75977 3.94732 3.85354 3.85355C3.94731 3.75979 3.99999 3.63261 3.99999 3.5V2.5H4.99999C5.13259 2.5 5.25977 2.44732 5.35354 2.35355C5.44731 2.25979 5.49999 2.13261 5.49999 2C5.49999 1.86739 5.44731 1.74021 5.35354 1.64645C5.25977 1.55268 5.13259 1.5 4.99999 1.5H3.99999V0.5C3.99999 0.367392 3.94731 0.240215 3.85354 0.146447C3.75977 0.0526785 3.63259 0 3.49999 0C3.36738 0 3.2402 0.0526785 3.14643 0.146447C3.05266 0.240215 2.99999 0.367392 2.99999 0.5V1.5H1.99999C1.86738 1.5 1.7402 1.55268 1.64643 1.64645C1.55266 1.74021 1.49999 1.86739 1.49999 2C1.49999 2.13261 1.55266 2.25979 1.64643 2.35355C1.7402 2.44732 1.86738 2.5 1.99999 2.5ZM9.99999 10H9.49999V9.5C9.49999 9.36739 9.44731 9.24021 9.35354 9.14645C9.25977 9.05268 9.13259 9 8.99999 9C8.86738 9 8.7402 9.05268 8.64643 9.14645C8.55266 9.24021 8.49999 9.36739 8.49999 9.5V10H7.99999C7.86738 10 7.7402 10.0527 7.64643 10.1464C7.55266 10.2402 7.49999 10.3674 7.49999 10.5C7.49999 10.6326 7.55266 10.7598 7.64643 10.8536C7.7402 10.9473 7.86738 11 7.99999 11H8.49999V11.5C8.49999 11.6326 8.55266 11.7598 8.64643 11.8536C8.7402 11.9473 8.86738 12 8.99999 12C9.13259 12 9.25977 11.9473 9.35354 11.8536C9.44731 11.7598 9.49999 11.6326 9.49999 11.5V11H9.99999C10.1326 11 10.2598 10.9473 10.3535 10.8536C10.4473 10.7598 10.5 10.6326 10.5 10.5C10.5 10.3674 10.4473 10.2402 10.3535 10.1464C10.2598 10.0527 10.1326 10 9.99999 10ZM12.2069 3L3.49999 11.7069C3.31247 11.8943 3.05821 11.9995 2.79311 11.9995C2.52801 11.9995 2.27375 11.8943 2.08624 11.7069L0.792486 10.4144C0.699603 10.3215 0.625923 10.2113 0.575654 10.0899C0.525385 9.96858 0.499512 9.83853 0.499512 9.70719C0.499512 9.57585 0.525385 9.44579 0.575654 9.32445C0.625923 9.20311 0.699603 9.09286 0.792486 9L9.49999 0.293125C9.59285 0.200242 9.7031 0.126562 9.82444 0.0762935C9.94578 0.0260245 10.0758 0.000151157 10.2072 0.000151157C10.3385 0.000151157 10.4686 0.0260245 10.5899 0.0762935C10.7113 0.126562 10.8215 0.200242 10.9144 0.293125L12.2069 1.58562C12.2997 1.67849 12.3734 1.78874 12.4237 1.91008C12.474 2.03142 12.4998 2.16147 12.4998 2.29281C12.4998 2.42415 12.474 2.55421 12.4237 2.67555C12.3734 2.79689 12.2997 2.90714 12.2069 3ZM11.5 2.29313L10.2069 1L8.20686 3L9.49999 4.29313L11.5 2.29313Z" fill="currentColor"/>',viewBox:"0 0 14 12"},update:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M1.333 0c.737 0 1.334.597 1.334 1.333v3.124A11.976 11.976 0 0 1 12 0c6.12 0 11.169 4.58 11.907 10.502a1.333 1.333 0 0 1-2.646.33C20.687 6.229 16.76 2.667 12 2.667a9.323 9.323 0 0 0-7.66 4H8a1.333 1.333 0 1 1 0 2.666H1.333A1.333 1.333 0 0 1 0 8V1.333C0 .597.597 0 1.333 0Zm-.082 12.01a1.333 1.333 0 0 1 1.488 1.158 9.335 9.335 0 0 0 16.922 4.165H16a1.333 1.333 0 1 1 0-2.666h6.667c.736 0 1.333.597 1.333 1.333v6.667a1.333 1.333 0 0 1-2.667 0v-3.124A11.976 11.976 0 0 1 12 24C5.88 24 .831 19.42.093 13.498A1.333 1.333 0 0 1 1.25 12.01Z" clip-rule="evenodd"/></svg>',viewBox:"0 0 24 24"},recycle:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M13.025 5.378c0 .76.617 1.378 1.378 1.378h4.127a4.131 4.131 0 0 1 4.137 4.139v8.242h2.755v-8.242A6.887 6.887 0 0 0 18.53 4h-4.127c-.761 0-1.378.617-1.378 1.378Zm5.505 22.044c0-.76-.617-1.378-1.377-1.378h-4.128a4.142 4.142 0 0 1-4.136-4.133v-6.889H6.133v6.89c0 3.796 3.09 6.888 6.892 6.888h4.128c.76 0 1.377-.617 1.377-1.378Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="M8.485 12.67a1.378 1.378 0 0 0-1.948 0l-4.133 4.134a1.378 1.378 0 0 0 1.948 1.949l3.16-3.041 3.158 3.04a1.378 1.378 0 0 0 1.949-1.948l-4.134-4.133ZM24.044 17.09l-3.159-3.042a1.378 1.378 0 1 0-1.948 1.949l4.133 4.133c.538.538 1.41.538 1.949 0l4.133-4.133a1.378 1.378 0 1 0-1.949-1.949l-3.159 3.041Z" clip-rule="evenodd"/>',viewBox:"0 0 32 32"},variations:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M10.48 5.127H8.682V15h-1.36V5.127H5.527L8.004 1l2.477 4.127Zm-7.986 2.62L1.325 8.914.5 4.788l4.127.825-1.17 1.171L5.93 9.26l.2.2V15H4.77v-4.978L2.494 7.746Zm11.012 0 1.169 1.168.825-4.127-4.127.825 1.17 1.171L10.07 9.26l-.2.2V15h1.361v-4.978l2.276-2.276Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},arrowLeft:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19.5 12h-15m0 0 6.75 6.75M4.5 12l6.75-6.75"/>',viewBox:"0 0 24 24"},magicFill:{icon:'<path fill="currentColor" d="M9.45 4.459 3.19 10.81l-.187 1.783A.364.364 0 0 0 3.41 13l1.783-.188 6.259-6.351-2.003-2.002Zm3.237-.298-.938-.938a.746.746 0 0 0-1.064 0l-.876.876L11.811 6.1l.876-.876a.746.746 0 0 0 0-1.064ZM4 1l.81 2.19L7 4l-2.19.81L4 7l-.81-2.19L1 4l2.19-.81L4 1ZM12 8l1.08 2.92L16 12l-2.92 1.08L12 16l-1.08-2.92L8 12l2.92-1.08L12 8Z"/>',viewBox:"0 0 16 16"},insert:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8.551 2.2a.55.55 0 1 0-1.1 0v6.55L5.597 7.266a.55.55 0 0 0-.687.86l2.748 2.198c.2.16.486.16.687 0l2.748-2.199a.55.55 0 0 0-.688-.859L8.551 8.75V2.2ZM3.055 9.894a.55.55 0 0 0-1.1 0v3.298c0 .303.246.55.55.55h10.992a.55.55 0 0 0 .55-.55V9.894a.55.55 0 1 0-1.1 0v2.748H3.055V9.894Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},chevronLeft:{icon:'<path d="M15.75 19.5 8.25 12l7.5-7.5" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none" />',viewBox:"0 0 24 24"},chevronRight:{icon:'<path d="m8.25 4.5 7.5 7.5-7.5 7.5" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none" />',viewBox:"0 0 24 24"},command:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M11.5 4.5 15 8l-3.5 3.5m-7 0L1 8l3.5-3.5m5-2-3 11" fill="none"/>',viewBox:"0 0 16 16"},fixingIcon:{icon:'<path fill="#F2B300" d="m66.582 45.818-4.506-1.536a18.64 18.64 0 0 0-1.317-6.665l3.583-3.135a1.17 1.17 0 0 0 .26-1.432 24.102 24.102 0 0 0-6.968-7.955 1.164 1.164 0 0 0-1.449.06l-3.582 3.134a18.263 18.263 0 0 0-6.431-2.192l-.921-4.661a1.16 1.16 0 0 0-1.112-.934c-3.638-.09-7.2.653-10.367 2.048a1.16 1.16 0 0 0-.673 1.287l.923 4.671a18.839 18.839 0 0 0-5.114 4.473l-4.496-1.538a1.15 1.15 0 0 0-1.362.496 23.957 23.957 0 0 0-3.419 10.008c-.06.544.267 1.052.785 1.225l4.506 1.537a18.642 18.642 0 0 0 1.317 6.664l-3.583 3.135a1.17 1.17 0 0 0-.26 1.432 24.1 24.1 0 0 0 6.969 7.955 1.164 1.164 0 0 0 1.448-.06l3.583-3.134a18.263 18.263 0 0 0 6.43 2.192l.923 4.67a1.16 1.16 0 0 0 1.112.935c3.639.09 7.2-.653 10.368-2.048.5-.218.778-.756.673-1.288l-.924-4.67a18.84 18.84 0 0 0 5.114-4.473l4.506 1.536a1.15 1.15 0 0 0 1.362-.496 23.96 23.96 0 0 0 3.418-10.008c.04-.55-.278-1.06-.796-1.233Zm-21.588 6.268c-4.186.828-8.268-1.907-9.096-6.094-.827-4.186 1.908-8.268 6.095-9.096 4.186-.827 8.268 1.908 9.096 6.094.827 4.187-1.908 8.269-6.095 9.096Z"/>',viewBox:"0 0 87 89"},arrowPath:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M16.023 9.348h4.992l-3.18-3.183a8.25 8.25 0 0 0-13.804 3.7m-1.046 9.779v-4.992m0 0h4.992m-4.992 0 3.18 3.183a8.25 8.25 0 0 0 13.803-3.7m1.047-9.78v4.99" fill="none"/>',viewBox:"0 0 24 24"},openBook:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M11.5 6.982c-4.268-3.644-9-1.146-9-1.146v10.57c5.012 0 7.863 1.712 9 2.594V6.982Z" clip-rule="evenodd"/><path fill="#7784A8" d="M21.5 16.407c-5.012 0-7.864 1.71-9 2.593V6.982c4.268-3.645 9-1.147 9-1.147v10.572Z" opacity=".6"/>',viewBox:"0 0 24 24"},broom:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0215 40.1489C31.0672 40.1489 40.0215 31.1946 40.0215 20.1489C40.0215 9.10323 31.0672 0.148926 20.0215 0.148926C8.97579 0.148926 0.0214844 9.10323 0.0214844 20.1489C0.0214844 31.1946 8.97579 40.1489 20.0215 40.1489ZM15.7985 18.1171H14.5373V16.8559H13.2761V18.1171H12.0149V19.3783H13.2761V20.6395H14.5373V19.3783H15.7985V18.1171ZM13.2761 23.1619H12.0149V21.9007H10.7537V23.1619H9.49247V24.4231H10.7537V25.6844H12.0149V24.4231H13.2761V23.1619ZM17.6903 20.0089H27.1494V19.3783C27.1494 19.0438 27.0166 18.723 26.78 18.4865C26.5435 18.25 26.2227 18.1171 25.8882 18.1171H23.3658V10.5498H21.474V18.1171H18.9516C18.6171 18.1171 18.2963 18.25 18.0597 18.4865C17.8232 18.723 17.6903 19.0438 17.6903 19.3783V20.0089ZM24.0046 27.5762H26.5188C27.2037 25.1604 27.1789 23.2247 27.1567 21.4976C27.1557 21.4214 27.1548 21.3456 27.1539 21.2701H17.6721C17.5838 23.4835 17.0534 25.5992 16.4291 27.5762H18.8431C19.2902 26.687 19.5822 25.3016 19.5822 24.4231C19.5822 24.2559 19.6486 24.0955 19.7669 23.9772C19.8851 23.859 20.0455 23.7925 20.2128 23.7925C20.38 23.7925 20.5404 23.859 20.6587 23.9772C20.7769 24.0955 20.8434 24.2559 20.8434 24.4231C20.8434 25.178 20.646 26.4745 20.221 27.5762H22.6267C23.0738 26.687 23.3658 25.3016 23.3658 24.4231C23.3658 24.2559 23.4322 24.0955 23.5505 23.9772C23.6688 23.859 23.8292 23.7925 23.9964 23.7925C24.1637 23.7925 24.3241 23.859 24.4423 23.9772C24.5606 24.0955 24.627 24.2559 24.627 24.4231C24.627 25.178 24.4296 26.4745 24.0046 27.5762Z" fill="currentColor"/>',viewBox:"0 0 40 40"},wand:{icon:'<path fill="url(#a)" d="M18.407 11.781a.594.594 0 0 1-.594.594h-1.187v1.188a.594.594 0 0 1-1.188 0v-1.188h-1.187a.594.594 0 0 1 0-1.188h1.187V10a.594.594 0 1 1 1.188 0v1.188h1.187a.594.594 0 0 1 .594.593ZM4.157 5.844h1.187V7.03a.594.594 0 0 0 1.188 0V5.844h1.187a.594.594 0 0 0 0-1.188H6.532V3.47a.594.594 0 1 0-1.188 0v1.187H4.157a.594.594 0 0 0 0 1.188Zm9.5 8.906h-.594v-.594a.594.594 0 0 0-1.187 0v.594h-.594a.594.594 0 0 0 0 1.188h.594v.593a.594.594 0 1 0 1.187 0v-.593h.594a.594.594 0 0 0 0-1.188Zm2.62-8.313L5.938 16.777a1.188 1.188 0 0 1-1.679 0l-1.536-1.535a1.188 1.188 0 0 1 0-1.68l10.34-10.339a1.187 1.187 0 0 1 1.68 0l1.534 1.535a1.187 1.187 0 0 1 0 1.68Zm-.839-.839-1.536-1.535-2.374 2.375 1.535 1.535 2.375-2.375Z"/><defs><linearGradient id="a" x1="1.23" x2="23.351" y1="19.797" y2="13.966" gradientUnits="userSpaceOnUse"><stop stop-color="#FF9645"/><stop offset=".239" stop-color="#FF6471"/><stop offset=".465" stop-color="#CF6EBD"/><stop offset=".746" stop-color="#A477D1"/><stop offset="1" stop-color="#268DDA"/></linearGradient></defs>',viewBox:"0 0 19 20"},editorHeading1:{icon:'<path fill="currentColor" d="M19.061 7v18h-3.408v-7.827H8.405V25H5.021V7h3.384v7.292h7.248V7h3.408ZM20.883 10.365V7h6.096v18h-3.552V10.365h-2.544Z"/>',viewBox:"0 0 32 32"},editorHeading2:{icon:'<path fill="currentColor" d="M15.847 7.374V25h-3.408v-7.664H5.19V25H1.807V7.374H5.19v7.14h7.248v-7.14h3.408ZM18.268 22.229c5.424-3.911 8.136-7.157 8.136-9.737 0-.782-.184-1.398-.552-1.847-.352-.45-.912-.674-1.68-.674-1.584 0-2.424 1.123-2.52 3.37h-3.288c.096-2.08.704-3.653 1.824-4.718C21.308 7.54 22.724 7 24.436 7c1.744 0 3.08.474 4.008 1.423.944.932 1.416 2.18 1.416 3.745 0 1.231-.352 2.471-1.056 3.72a15.037 15.037 0 0 1-2.64 3.42 21.308 21.308 0 0 1-3.384 2.671h7.416v2.871H18.268V22.23Z"/>',viewBox:"0 0 32 32"},editorHeading3:{icon:'<path fill="currentColor" d="M15.749 7.657V24.83h-3.408v-7.468H5.093v7.468H1.709V7.657h3.384v6.957h7.248V7.657h3.408ZM24.506 7c1.152 0 2.136.203 2.952.608.832.406 1.456.965 1.872 1.678.432.714.648 1.509.648 2.384 0 1.103-.296 2.011-.888 2.725-.592.697-1.376 1.127-2.352 1.289v.121c2.368.714 3.552 2.125 3.552 4.233 0 1.476-.488 2.675-1.464 3.6-.976.908-2.352 1.362-4.128 1.362-1.888 0-3.392-.47-4.512-1.41-1.12-.958-1.744-2.393-1.872-4.306h3.312c.08.876.36 1.573.84 2.092.496.502 1.192.754 2.088.754.768 0 1.368-.211 1.8-.633.432-.438.648-1.005.648-1.702 0-.827-.312-1.46-.936-1.898-.624-.438-1.544-.656-2.76-.656h-.696v-2.798h.696c2.24.033 3.36-.754 3.36-2.36 0-.697-.2-1.24-.6-1.629-.4-.405-.944-.608-1.632-.608-.72 0-1.312.235-1.776.705-.464.454-.728 1.095-.792 1.922h-3.312c.096-1.751.656-3.097 1.68-4.038C21.258 7.478 22.682 7 24.506 7Z"/>',viewBox:"0 0 32 32"},editorHeading4:{icon:'<path fill="currentColor" d="M14.813 7.202V25h-3.408v-7.74H4.157V25H.773V7.202h3.384v7.21h7.248v-7.21h3.408ZM17.283 21.42v-2.95L25.395 7h3.624v11.345h2.208v3.075h-2.208V25H25.61v-3.58h-8.328Zm8.592-10.26-5.136 7.184h5.136V11.16Z"/>',viewBox:"0 0 32 32"},editorHeading5:{icon:'<path fill="currentColor" d="M15.208 7.349v17.576H11.8v-7.643H4.552v7.643H1.168V7.35h3.384v7.12H11.8v-7.12h3.408ZM29.99 10.087h-8.04v4.432c.367-.449.871-.805 1.511-1.07a5.41 5.41 0 0 1 2.16-.424c1.168 0 2.136.265 2.904.797a4.537 4.537 0 0 1 1.728 2.09c.384.864.576 1.827.576 2.889 0 1.875-.512 3.377-1.536 4.506C28.285 24.436 26.837 25 24.95 25c-1.232 0-2.304-.224-3.216-.672-.912-.465-1.624-1.104-2.136-1.917-.512-.83-.792-1.793-.84-2.888h3.288c.128.747.424 1.344.888 1.792.464.432 1.08.648 1.848.648.928 0 1.616-.29 2.064-.872.464-.597.696-1.386.696-2.365 0-.93-.24-1.651-.72-2.166-.48-.514-1.16-.772-2.04-.772-.64 0-1.184.15-1.632.448a2.496 2.496 0 0 0-.984 1.146h-3.288V7H29.99v3.087Z"/>',viewBox:"0 0 32 32"},editorHeading6:{icon:'<path fill="currentColor" d="M15.352 7.61v17.22h-3.408v-7.488H4.696v7.487H1.314V7.61h3.384v6.976h7.247V7.61h3.408ZM26.99 12.293c-.256-1.691-1.104-2.537-2.544-2.537-1.12 0-1.936.504-2.448 1.512-.512.992-.736 2.553-.672 4.683.256-.78.752-1.398 1.488-1.853.752-.472 1.624-.708 2.616-.708 1.632 0 2.912.504 3.84 1.512.944.992 1.416 2.407 1.416 4.244 0 1.139-.224 2.147-.672 3.025-.448.878-1.12 1.569-2.016 2.073-.88.504-1.952.756-3.216.756-2.464 0-4.16-.772-5.088-2.317-.928-1.561-1.392-3.707-1.392-6.44 0-3.137.496-5.462 1.488-6.975C20.798 7.756 22.422 7 24.662 7c1.712 0 3.024.496 3.936 1.488.912.992 1.432 2.26 1.56 3.805H26.99Zm-5.376 6.61c0 .91.256 1.666.768 2.268.528.585 1.296.878 2.304.878.864 0 1.552-.26 2.064-.78.512-.521.768-1.245.768-2.171 0-.976-.264-1.724-.792-2.244-.512-.52-1.208-.78-2.088-.78-.832 0-1.544.243-2.136.73-.592.489-.888 1.188-.888 2.098Z"/>',viewBox:"0 0 32 32"},editorList:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M9.188 5.322c0-.48.388-.867.867-.867H29.13c.48 0 .868.388.868.867v1.734a.867.867 0 0 1-.868.867H10.055a.867.867 0 0 1-.867-.867V5.322ZM9.188 14.86c0-.479.388-.867.867-.867H29.13c.48 0 .868.388.868.867v1.735a.867.867 0 0 1-.868.867H10.055a.867.867 0 0 1-.867-.867V14.86ZM9.188 24.399c0-.48.388-.867.867-.867H29.13c.48 0 .868.388.868.867v1.734a.867.867 0 0 1-.868.867H10.055a.867.867 0 0 1-.867-.867v-1.734ZM2.445 6.189c0-.958.775-1.734 1.73-1.734h.009c.955 0 1.73.776 1.73 1.734s-.775 1.734-1.73 1.734h-.009c-.955 0-1.73-.776-1.73-1.734ZM2.445 15.727c0-.957.775-1.734 1.73-1.734h.009c.955 0 1.73.777 1.73 1.734 0 .958-.775 1.735-1.73 1.735h-.009c-.955 0-1.73-.777-1.73-1.735ZM2.445 25.266c0-.958.775-1.734 1.73-1.734h.009c.955 0 1.73.776 1.73 1.734S5.139 27 4.184 27h-.009c-.955 0-1.73-.776-1.73-1.734Z" clip-rule="evenodd"/>',viewBox:"0 0 32 32"},editorOrderedList:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8.54 5.343c0-.48.388-.868.868-.868H28.52c.48 0 .87.389.87.868v1.738c0 .48-.39.869-.87.869H9.408a.869.869 0 0 1-.869-.869V5.343ZM8.54 14.9c0-.48.388-.869.868-.869H28.52c.48 0 .87.39.87.869v1.738c0 .48-.39.868-.87.868H9.408a.869.869 0 0 1-.869-.868V14.9ZM8.54 24.457c0-.48.388-.87.868-.87H28.52c.48 0 .87.39.87.87v1.737c0 .48-.39.87-.87.87H9.408a.869.869 0 0 1-.869-.87v-1.737Z" clip-rule="evenodd"/><path fill="#6F7CA3" d="M4.501 8.819h-.98V5.038l-1.171.363v-.797l2.046-.733h.105v4.948ZM5.507 18.375H2.12v-.672L3.718 16c.22-.24.382-.45.486-.628a1 1 0 0 0 .16-.51c0-.219-.056-.39-.167-.515-.111-.127-.27-.19-.475-.19a.65.65 0 0 0-.526.23c-.127.152-.19.352-.19.601H2.02c0-.3.072-.575.214-.824a1.52 1.52 0 0 1 .611-.584 1.84 1.84 0 0 1 .893-.214c.509 0 .904.122 1.184.367.283.244.424.59.424 1.035 0 .244-.063.493-.19.746-.126.254-.344.55-.651.886l-1.124 1.185h2.125v.79ZM3.117 25.027h.522c.249 0 .433-.062.553-.187.12-.124.18-.29.18-.495 0-.2-.06-.354-.18-.465-.117-.111-.28-.166-.488-.166a.718.718 0 0 0-.472.156.489.489 0 0 0-.19.4h-.98c0-.258.068-.488.206-.692a1.4 1.4 0 0 1 .584-.482 1.96 1.96 0 0 1 .828-.173c.523 0 .932.125 1.228.377.297.248.445.592.445 1.031 0 .227-.069.435-.207.625-.138.19-.319.336-.543.438.278.099.485.248.621.448.138.199.207.434.207.705 0 .44-.16.791-.482 1.056-.319.264-.742.397-1.27.397-.492 0-.896-.13-1.21-.39-.313-.26-.469-.604-.469-1.032h.98a.57.57 0 0 0 .208.455c.14.117.312.176.516.176.233 0 .415-.061.546-.183a.641.641 0 0 0 .2-.492c0-.493-.271-.74-.814-.74h-.52v-.767Z"/>',viewBox:"0 0 32 32"},editorBold:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M7 17.999V4h9a7 7 0 0 1 5.704 11.058A7 7 0 0 1 18 27.998h-7V28H7V17.999Zm4 6V18h5l.125-.001H18a3 3 0 0 1 0 6h-7Zm0-10V8h5a3 3 0 0 1 .082 5.999H11Z" clip-rule="evenodd"/>',viewBox:"0 0 32 32"},editorQuote:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M12.57 6.077c-5.02 3.224-7.81 6.976-8.367 11.258-.869 6.665 5.091 9.927 8.111 6.996 3.02-2.931 1.21-6.651-.977-7.668-2.186-1.017-3.524-.663-3.29-2.022.233-1.359 3.344-5.127 6.077-6.882a.5.5 0 0 0 .076-.68l-.676-.879c-.293-.381-.575-.367-.955-.123Zm13.217 0c-5.02 3.224-7.81 6.977-8.367 11.258-.869 6.665 5.091 9.927 8.111 6.996 3.02-2.931 1.21-6.651-.977-7.668-2.187-1.017-3.524-.663-3.29-2.022.233-1.359 3.344-5.127 6.077-6.882a.5.5 0 0 0 .076-.68L26.74 6.2c-.294-.381-.575-.367-.954-.123Z" clip-rule="evenodd"/>',viewBox:"0 0 32 32"},editorItalic:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M11.988 3.987V2h-6v1.987h1.8l-1.613 8.025H4V14h6v-1.988H8.238l1.575-8.024h2.175Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},editorUppercase:{icon:'<path fill="currentColor" d="M6.94 11.069H4.159L3.618 13H1.5l3.115-9.5h1.869L9.641 13H7.48l-.54-1.931ZM4.616 9.451h1.869l-.955-3.39-.914 3.39Z"/><path fill="#6F7CA3" d="M12.88 11.817h-1.703L10.845 13H9.516l1.91-5.834h1.122L14.5 13h-1.33l-.29-1.183Zm-1.412-.985h1.163l-.582-2.09-.58 2.09Z"/>',viewBox:"0 0 16 16"},editorUnderline:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M2 12.275h12V14H2v-1.725ZM5.487 6.275c0 1.425 1.087 2.588 2.512 2.588a2.593 2.593 0 0 0 2.588-2.588V2h1.725v4.275a4.273 4.273 0 0 1-4.275 4.275 4.273 4.273 0 0 1-4.275-4.275V2h1.725v4.275Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},editorTable:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M2.793 3.828A2.652 2.652 0 0 1 4.708 3h14.583c.718 0 1.407.298 1.915.828a2.89 2.89 0 0 1 .793 1.998v12.348a2.89 2.89 0 0 1-.793 1.998A2.652 2.652 0 0 1 19.29 21H4.708a2.652 2.652 0 0 1-1.915-.828A2.89 2.89 0 0 1 2 18.174V5.826c0-.75.285-1.468.793-1.998Zm.457 6.128v3.696h8.125V9.957H3.25Zm9.374 0v3.696h8.125V9.957h-8.124Zm8.125-1.304V5.826c0-.404-.153-.79-.427-1.076a1.428 1.428 0 0 0-1.031-.446H4.708c-.387 0-.757.16-1.03.446a1.556 1.556 0 0 0-.428 1.076v2.826h17.5Zm0 6.305h-8.124v4.738h6.666c.387 0 .758-.16 1.031-.445.274-.285.427-.672.427-1.076v-3.217Zm-9.374 4.738v-4.739H3.25v3.218c0 .404.154.79.427 1.076.274.285.644.446 1.031.446h6.667Z" clip-rule="evenodd"/>',viewBox:"0 0 24 24"},editorLink:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.164 5.914a2.086 2.086 0 1 0 0 4.172h1.418a.75.75 0 0 1 0 1.5H5.164a3.586 3.586 0 1 1 0-7.172h1.418a.75.75 0 0 1 0 1.5H5.164Zm.312 1.783a.75.75 0 0 1 .75-.75h3.844a.75.75 0 0 1 0 1.5H6.226a.75.75 0 0 1-.75-.75ZM12.922 8a2.086 2.086 0 0 0-2.086-2.086H9.418a.75.75 0 1 1 0-1.5h1.418a3.586 3.586 0 0 1 0 7.172H9.418a.75.75 0 0 1 0-1.5h1.418A2.086 2.086 0 0 0 12.922 8Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},editorSourceCode:{icon:'<path fill="currentColor" d="M27.947 14.38 22.82 8.949a1.264 1.264 0 0 0-1.774-.056 1.264 1.264 0 0 0-.055 1.774l4.324 4.574-4.324 4.574a1.264 1.264 0 0 0 .055 1.774c.222.221.527.332.86.332.332 0 .665-.138.914-.388l5.128-5.433a1.276 1.276 0 0 0 0-1.718ZM17.378 4.895a1.151 1.151 0 0 1 2.245.513l-4.96 21.697a1.151 1.151 0 1 1-2.244-.513l4.96-21.697ZM10.955 8.892a1.308 1.308 0 0 0-.887-.332c-.332 0-.637.138-.859.388L4.053 14.38c-.443.471-.443 1.22 0 1.718l5.128 5.433c.222.25.555.388.915.388.333 0 .61-.11.86-.332a1.264 1.264 0 0 0 .055-1.774L6.687 15.24l4.324-4.574a1.264 1.264 0 0 0-.056-1.774Z"/>',viewBox:"0 0 32 32"},editorExpand:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M7.268 6.494 4.37 3.595h1.963a.548.548 0 1 0 0-1.095H3.048a.548.548 0 0 0-.548.548v3.285a.548.548 0 1 0 1.095 0V4.37l2.899 2.898a.548.548 0 1 0 .774-.774Zm-.774 2.738L3.595 12.13v-1.963a.548.548 0 1 0-1.095 0v3.285c0 .303.245.548.548.548h3.285a.548.548 0 0 0 0-1.095H4.37l2.898-2.899a.548.548 0 0 0-.774-.774Zm5.636 3.673-2.898-2.899a.548.548 0 0 1 .774-.774l2.899 2.898v-1.963a.548.548 0 1 1 1.095 0v3.285a.548.548 0 0 1-.548.548h-3.285a.548.548 0 1 1 0-1.095h1.963ZM9.232 7.268c.214.214.56.214.774 0l2.899-2.898v1.963a.548.548 0 1 0 1.095 0V3.048a.548.548 0 0 0-.548-.548h-3.285a.548.548 0 1 0 0 1.095h1.963L9.232 6.494a.548.548 0 0 0 0 .774Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},chevronDown:{icon:'<path d="M19.5 8.25L12 15.75L4.5 8.25" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none"/>',viewBox:"0 0 24 24"},crossCircled:{icon:'<path fill="currentColor" d="M16.25 10a6.25 6.25 0 1 1-12.5 0 6.25 6.25 0 0 1 12.5 0Z"/><path fill="#fff" d="M12.521 7.478a.535.535 0 0 0-.756 0L10.003 9.24 8.24 7.478a.535.535 0 0 0-.757.757l1.762 1.762-1.762 1.761a.535.535 0 1 0 .757.757l1.762-1.762 1.762 1.762a.535.535 0 0 0 .756-.757L10.76 9.998l1.762-1.762a.535.535 0 0 0 0-.757Z"/>',viewBox:"0 0 20 20"},ellipsisXAlt:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M2.25 5.25a2.25 2.25 0 1 0 0-4.5 2.25 2.25 0 0 0 0 4.5Zm9-2.25a2.25 2.25 0 1 1-4.5 0 2.25 2.25 0 0 1 4.5 0ZM18 3a2.25 2.25 0 1 1-4.5 0A2.25 2.25 0 0 1 18 3Z" fill="currentColor"/>',viewBox:"0 0 18 6"},dragger:{icon:'<path d="M17.4708 8.75929C17.4708 9.73092 18.2608 10.5186 19.2354 10.5186C20.21 10.5186 21 9.73092 21 8.75929C21 7.78766 20.21 7 19.2354 7C18.2608 7 17.4708 7.78766 17.4708 8.75929Z" fill="currentColor"/><path d="M11 8.75929C11 9.73092 11.79 10.5186 12.7646 10.5186C13.7392 10.5186 14.5292 9.73092 14.5292 8.75929C14.5292 7.78766 13.7392 7 12.7646 7C11.79 7 11 7.78766 11 8.75929Z" fill="currentColor"/><path d="M19.2354 18.2595C18.2608 18.2595 17.4708 17.4718 17.4708 16.5002C17.4708 15.5285 18.2608 14.7409 19.2354 14.7409C20.21 14.7409 21 15.5285 21 16.5002C21 17.4718 20.21 18.2595 19.2354 18.2595Z" fill="currentColor"/><path d="M11 16.5C11 17.4716 11.79 18.2593 12.7646 18.2593C13.7392 18.2593 14.5292 17.4716 14.5292 16.5C14.5292 15.5284 13.7392 14.7407 12.7646 14.7407C11.79 14.7407 11 15.5284 11 16.5Z" fill="currentColor"/><path d="M19.2354 26C18.2608 26 17.4708 25.2123 17.4708 24.2407C17.4708 23.2691 18.2608 22.4814 19.2354 22.4814C20.21 22.4814 21 23.2691 21 24.2407C21 25.2123 20.21 26 19.2354 26Z" fill="currentColor"/><path d="M11 24.2407C11 25.2123 11.79 26 12.7646 26C13.7392 26 14.5292 25.2123 14.5292 24.2407C14.5292 23.2691 13.7392 22.4814 12.7646 22.4814C11.79 22.4814 11 23.2691 11 24.2407Z" fill="currentColor"/>',viewBox:"0 0 32 32"},cursorText:{icon:'<path d="M4.003 1.802a.874.874 0 0 0 .799.946l.218.019a1.746 1.746 0 0 1 1.605 1.741v2.617H5.75a.874.874 0 1 0 0 1.75h.875v2.616a1.75 1.75 0 0 1-1.605 1.744l-.218.02a.87.87 0 0 0-.799.942c.041.485.462.84.943.799l.22-.02A3.49 3.49 0 0 0 7.5 13.805c.58.656 1.4 1.093 2.335 1.173l.219.019a.874.874 0 1 0 .145-1.742l-.22-.019a1.75 1.75 0 0 1-1.604-1.744V8.874h.875a.874.874 0 1 0 0-1.75h-.875V4.509c0-.91.697-1.668 1.605-1.744l.218-.02a.873.873 0 1 0-.147-1.74l-.219.018A3.485 3.485 0 0 0 7.5 2.195a3.497 3.497 0 0 0-2.335-1.173l-.219-.019a.873.873 0 0 0-.943.799Z" fill="currentColor"/>',viewBox:"0 0 16 16"},filterAdvanced:{icon:'<path d="M8.77 5h8.125M8.77 5a1.25 1.25 0 1 1-2.5 0m2.5 0a1.25 1.25 0 1 0-2.5 0m0 0H3.145M8.77 15h8.125M8.77 15a1.25 1.25 0 1 1-2.5 0m2.5 0a1.25 1.25 0 1 0-2.5 0m0 0H3.145m10.625-5h3.125m-3.125 0a1.25 1.25 0 0 1-2.5 0m2.5 0a1.25 1.25 0 0 0-2.5 0m0 0H3.145" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 20 20"},collectionTitleField:{icon:'<path d="M13 3.5v2a.5.5 0 0 1-1 0V4H8.5v8H10a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1h1.5V4H4v1.5a.5.5 0 1 1-1 0v-2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collectionAliasField:{icon:'<path fill="currentColor" d="M4.02 7.975a.018.018 0 0 0-.012 0 .016.016 0 0 0-.008.01c0 .004 0 .009.003.012a.015.015 0 0 0 .01.004.014.014 0 0 0 .011-.004.017.017 0 0 0 .004-.013.015.015 0 0 0-.008-.01ZM4.152 7.975a.017.017 0 0 0-.015.001.016.016 0 0 0-.005.012c0 .004.001.007.005.01.003.003.007.003.011.003.004 0 .007-.002.01-.005.002-.005.002-.009 0-.014a.014.014 0 0 0-.006-.007ZM20.818 16.58c.003-.465-.003-.884-.12-1.32l-.015-.06a3.59 3.59 0 0 0-.073-.23l-.024-.062c-.141-.368-.397-.888-.813-1.274l-.049-.044c-.45-.423-.885-.7-1.372-.875l-.07-.025c-.565-.2-1.134-.196-1.639-.193l-.286.001h-.285l-.28.001-.64.002-.98.003.003-.793.001-.582v-.51l.002-.396c.002-.31.004-.63-.05-.955l-.001-.005a2.618 2.618 0 0 0-.065-.293l-.008-.023-.01-.035a2.947 2.947 0 0 0-.624-1.13h.016a2.803 2.803 0 0 0-.14-.147l.538-1.129c.098.02.192.029.294.029l.059-.001a1.737 1.737 0 0 0 1.2-.453l.004-.004c.349-.334.542-.763.558-1.24v-.005c.006-.508-.141-.924-.435-1.235l-.055-.054a1.732 1.732 0 0 0-.518-.383l-.076-.03a1.813 1.813 0 0 0-.383-.118l-.021-.003c-.602-.046-1.076.095-1.491.443l-.013.012a1.772 1.772 0 0 0-.542 1.235v.074c0 .083 0 .18.01.278l.002.017c.079.445.303.829.631 1.08l.012.008-.085.188-.383.792a3.807 3.807 0 0 0-1.608-.415h-.002a4.006 4.006 0 0 0-1.195.316l-.321-.664-.099-.218.012-.008c.328-.25.552-.634.632-1.08l.002-.016a2.94 2.94 0 0 0 .01-.281l-.002-.073a1.771 1.771 0 0 0-.541-1.234l-.013-.012c-.416-.347-.89-.488-1.491-.443l-.021.003a1.82 1.82 0 0 0-.384.117l-.068.028-.008.003a1.742 1.742 0 0 0-.518.383l-.055.055c-.294.31-.44.726-.435 1.235v.004c.016.477.209.906.558 1.24l.003.004c.328.3.732.452 1.199.453h.064c.1 0 .194-.008.291-.027l.467.978c-.782.657-.987 1.531-1.039 1.859l-.002.013c0 .007-.002.013-.003.02l-.01.08v.018c-.022.202-.025.399-.024.58v1.641l.003.795v1.59c0 .16 0 .325.012.494v.012c.097.999.553 1.888 1.284 2.505l.04.033c.91.773 1.95.876 2.759.876h3.12l1.204-.001 1.41.001h2.008l.11-.001.104.001.095-.001c.047 0 .079 0 .116-.004a.81.81 0 0 0 .114-.018l.094-.02.075-.06a.639.639 0 0 0 .26-.412l.008-.038.001-.215v-.653Zm-10.799-.553c-.505-.533-.75-1.176-.745-1.968v-.921c0-.224 0-.45.002-.675l.001-.873.001-.758v-.347s-.023-.16-.023-.4c0-.185.014-.415.063-.654a2.093 2.093 0 0 1 .361-.837 1.45 1.45 0 0 1 .355-.33c.24-.156.552-.256.956-.262 0 0 .608-.052 1.145.29a1.565 1.565 0 0 1 .358.313c.07.083.142.176.204.283.07.122.127.261.153.424.056.35.06.662.06 1.269v.831l.002.52a229.93 229.93 0 0 0 .002 1.438v.43c0 .118 0 .24.004.363v.018c.037.495.256.97.587 1.269l.012.01c.465.387 1.006.556 1.655.515l.08-.005.074-.036a.689.689 0 0 0 .276-.228l.065-.09.011-.13a.692.692 0 0 0-.107-.507l-.041-.063-.061-.043a.738.738 0 0 0-.45-.135h-.011c-.32-.002-.487-.061-.658-.233-.147-.158-.194-.324-.186-.652v-.003l.001-.07.945-.002h.65c.19-.002.378-.002.568-.002h.168l.133-.001h.42c.561 0 1.054.153 1.467.456l.057.046.02.014c.117.09.238.185.322.29l.038.048.007.01c.428.524.614 1.117.604 1.923v.002l-.003.146v.028l-2.665.001H15.26c-.409.002-.818.002-1.227.002H12.053c-.88 0-1.526-.227-2.034-.714Zm3.493-11.871c.317-.3.683-.369 1.061-.2a.977.977 0 0 1 .481.569.997.997 0 0 1-.14.77.953.953 0 0 1-.548.36c-.336.024-.571-.033-.76-.185a.99.99 0 0 1-.338-.702.92.92 0 0 1 .243-.613ZM8.84 5.47c-.19.152-.425.21-.76.185a.951.951 0 0 1-.548-.36.997.997 0 0 1-.14-.77.979.979 0 0 1 .48-.57c.378-.168.745-.098 1.061.2.155.17.234.37.243.614a.99.99 0 0 1-.336.702Z"/><path fill="#6F7CA3" d="M13.953 5.17a.408.408 0 1 0 0-.815.408.408 0 0 0 0 .816ZM8.542 4.355a.408.408 0 1 0 0 .815.408.408 0 0 0 0-.815Z"/>',viewBox:"0 0 24 24"},collectionRichTextField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8.001 3.599v1.066a.267.267 0 1 1-.533 0V3.9H5.601v4.233h.8a.267.267 0 0 1 0 .533H4.268a.267.267 0 0 1 0-.533h.686V3.899H3.2v.766a.267.267 0 1 1-.533 0V3.6a.267.267 0 0 1 .267-.267h4.8A.267.267 0 0 1 8 3.599Zm5.311 6.36c0 .185-.149.334-.333.334H4.312a.333.333 0 0 1 0-.666h8.667c.184 0 .333.149.333.333Zm-.333 2.668a.333.333 0 0 0 0-.667H4.312a.333.333 0 0 0 0 .667h8.667Zm.333-5c0 .184-.149.333-.333.333H8.646a.333.333 0 0 1 0-.667h4.333c.184 0 .333.15.333.334Zm-.333-2a.333.333 0 0 0 0-.667H8.646a.333.333 0 0 0 0 .667h4.333Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionImageField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m13.098 8.464-3.24 1.967c-.609.37-1.385.312-1.933-.145L6.718 9.278a1 1 0 0 0-1.194-.066l-2.26 1.502-.37-.556 2.261-1.5a1.667 1.667 0 0 1 1.99.108l1.208 1.008a1 1 0 0 0 1.16.087l3.24-1.966.345.57Z" clip-rule="evenodd"/><path fill="#6F7CA3" fill-rule="evenodd" d="M9.027 6.05a.692.692 0 1 0 0 1.384.692.692 0 0 0 0-1.385Zm-1.359.692a1.359 1.359 0 1 1 2.718 0 1.359 1.359 0 0 1-2.718 0Z" clip-rule="evenodd"/><path fill="#6F7CA3" fill-rule="evenodd" d="M12.335 3.999H3.668a.333.333 0 0 0-.333.333v7.436c0 .184.149.333.333.333h8.667c.184 0 .333-.149.333-.333V4.332a.333.333 0 0 0-.333-.333Zm-8.667-.667a1 1 0 0 0-1 1v7.436a1 1 0 0 0 1 1h8.667a1 1 0 0 0 1-1V4.332a1 1 0 0 0-1-1H3.668Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionGalleryField:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M6.26248 6.57641c.19724-1.87664 1.87845-3.23806 3.75512-3.04082l15.9123 1.67246c1.9722.20729 2.9927 1.981 2.8062 3.75509l-.9345 8.89176c-.0023.0216-.0045.043-.0067.0643-.029.2784-.0554.5322-.1322.7571-.2334.6831-.8039 1.1968-1.5077 1.3575-.0268.0061-.054.0115-.0814.0163v2.4039c0 1.2111 0 2.1956-.1044 2.9719-.1088.8093-.3433 1.5035-.8964 2.0566-.5531.5531-1.2472.7876-2.0566.8964-.7762.1044-1.7608.1043-2.9718.1043H6.6569c-1.86419 0-3.37953-1.4928-3.416-3.3485a3.516405 3.516405 0 0 1-.00067-.0682c0-.0209.00086-.0416.00255-.0622.02919-.8357.37396-1.6312.96731-2.2245l4.6825-4.6825c.68342-.6834 1.79141-.6834 2.47491 0l1.3229 1.3229c.4436.4437.7258.7237.9592.9033.2173.1672.3057.1775.3494.1786.0456.0012.1336-.0048.3548-.157.2379-.1637.528-.4229.9848-.8347l4.6995-4.4364h-2.1129c-.4142 0-.75-.3357-.75-.75 0-.4142.3358-.75.75-.75h4c.4142 0 .75.3358.75.75v3.7438c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-2.0044l-4.8132 4.5437-.0127.0117-.0346.0311c-.4155.3747-.7805.7038-1.1106.9309-.357.2457-.7575.4334-1.244.4208-.4883-.0126-.8804-.2239-1.2253-.4893-.3201-.2463-.6712-.5975-1.0722-.9985l-1.3558-1.3558c-.0976-.0977-.2559-.0977-.35355 0l-4.6825 4.6825c-.33762.3376-.52805.7949-.52998 1.2721.02433 1.0371.87298 1.8706 1.91613 1.8706h13.3333c1.2783 0 2.1616-.0016 2.8262-.0909.643-.0865.9678-.2425 1.1958-.4705.2279-.2279.384-.5528.4704-1.1958.0894-.6646.091-1.5478.091-2.8261V11.7332c0-1.0585-.8582-1.91665-1.9167-1.91665H6.76536a.76244.76244 0 0 1-.01913 0H6.6569c-1.05853 0-1.91664.85805-1.91667 1.91665l.00053 9.0601c.00002.4142-.33574.75-.74996.7501-.41421 0-.75002-.3358-.75004-.75l-.00053-9.0601c0-1.6884 1.22467-3.09083 2.83415-3.36729l.1881-1.7896Zm1.32536 1.74014H22.6569c1.887 0 3.4167 1.52969 3.4167 3.41665v6.7101c.0766-.0665.1358-.1529.1696-.252.0145-.0423.0263-.1102.0666-.4932l.9345-8.89175c.1215-1.1553-.514-2.00591-1.4712-2.10652L9.86077 5.02738c-1.05275-.11065-1.99586.65307-2.10651 1.70582l-.16642 1.58335ZM8.6569 12.4832c-.69035 0-1.25.5597-1.25 1.25 0 .6904.55965 1.25 1.25 1.25.69036 0 1.25-.5596 1.25-1.25 0-.6903-.55964-1.25-1.25-1.25Zm-2.75 1.25c0-1.5188 1.23122-2.75 2.75-2.75 1.5188 0 2.75 1.2312 2.75 2.75s-1.2312 2.75-2.75 2.75c-1.51878 0-2.75-1.2312-2.75-2.75Z" fill="currentColor"/>',viewBox:"0 0 32 32"},collectionVideoField:{icon:'<path fill="currentColor" fill-rule="evenodd" clip-rule="evenodd" d="M4.58398 7.99992C4.58398 6.11295 6.11368 4.58325 8.00065 4.58325H24.0007C25.8876 4.58325 27.4173 6.11295 27.4173 7.99992V10.6666C27.4173 11.0808 27.0815 11.4166 26.6673 11.4166C26.2531 11.4166 25.9173 11.0808 25.9173 10.6666V7.99992C25.9173 6.94137 25.0592 6.08325 24.0007 6.08325H8.00065C6.94211 6.08325 6.08398 6.94137 6.08398 7.99992V23.9999C6.08398 25.0585 6.94211 25.9166 8.00065 25.9166H24.0007C25.0592 25.9166 25.9173 25.0585 25.9173 23.9999V16.4773L24.5311 17.8636C24.2382 18.1565 23.7634 18.1565 23.4705 17.8636C23.1776 17.5707 23.1776 17.0958 23.4704 16.8029L26.137 14.1363C26.2776 13.9956 26.4684 13.9166 26.6673 13.9166C26.8662 13.9166 27.057 13.9956 27.1976 14.1363L29.8643 16.8029C30.1572 17.0958 30.1572 17.5707 29.8643 17.8636C29.5714 18.1565 29.0965 18.1565 28.8037 17.8636L27.4173 16.4772V23.9999C27.4173 25.8869 25.8876 27.4166 24.0007 27.4166H8.00065C6.11368 27.4166 4.58398 25.8869 4.58398 23.9999V7.99992ZM17.1834 12.6299L17.2657 12.6736C18.1847 13.1609 18.9308 13.5565 19.468 13.9227C20.0054 14.2891 20.4844 14.7223 20.66 15.3452C20.7809 15.7739 20.7809 16.2259 20.66 16.6546C20.4844 17.2775 20.0054 17.7108 19.468 18.0771C18.9309 18.4433 18.1847 18.839 17.2658 19.3262L17.1834 19.3699C16.295 19.841 15.5729 20.2239 14.98 20.4592C14.3784 20.6981 13.7758 20.8427 13.1688 20.6821C12.7438 20.5697 12.352 20.3551 12.0329 20.0546C11.5674 19.6162 11.3999 19.0225 11.3244 18.4001C11.2506 17.7914 11.2506 17.0054 11.2507 16.0497V15.9501C11.2506 14.9945 11.2506 14.2084 11.3244 13.5998C11.3999 12.9773 11.5674 12.3836 12.0329 11.9453C12.352 11.6448 12.7438 11.4301 13.1688 11.3177C13.7758 11.1572 14.3784 11.3018 14.98 11.5406C15.5729 11.776 16.295 12.1589 17.1834 12.6299ZM14.4266 12.9348C13.9195 12.7335 13.6889 12.7318 13.5523 12.7679C13.3624 12.8181 13.1939 12.9123 13.0612 13.0373C12.9803 13.1135 12.8746 13.2761 12.8135 13.7803C12.752 14.2878 12.7507 14.982 12.7507 15.9999C12.7507 17.0178 12.752 17.712 12.8135 18.2195C12.8746 18.7237 12.9803 18.8863 13.0612 18.9625C13.1939 19.0875 13.3624 19.1817 13.5523 19.232C13.6889 19.2681 13.9195 19.2664 14.4266 19.0651C14.9334 18.8639 15.5826 18.5209 16.5212 18.0232C17.4921 17.5084 18.1632 17.1512 18.623 16.8378C19.0906 16.519 19.1899 16.341 19.2163 16.2476C19.2621 16.085 19.2621 15.9148 19.2163 15.7523C19.1899 15.6588 19.0906 15.4809 18.623 15.1621C18.1632 14.8486 17.4921 14.4914 16.5212 13.9766C15.5826 13.4789 14.9334 13.136 14.4266 12.9348Z"/>',viewBox:"0 0 32 32"},collectionEmailField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M11.324 5.34a4.23 4.23 0 1 0 0 5.984.385.385 0 0 1 .543.543 5 5 0 1 1-7.07-7.07 5 5 0 0 1 8.535 3.535c0 .5-.152.968-.415 1.318-.263.352-.656.605-1.123.605-.464 0-.855-.25-1.118-.597a2.691 2.691 0 1 1-.42-3.21v-.04a.384.384 0 1 1 .768 0v1.924c0 .35.107.651.261.857.154.206.338.297.509.297.17 0 .353-.091.508-.297.154-.205.26-.508.26-.857a4.218 4.218 0 0 0-1.238-2.992Zm-1.069 2.992a1.923 1.923 0 1 0-3.846 0 1.923 1.923 0 0 0 3.846 0Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionPhoneField:{icon:'<path fill="currentColor" d="M11.589 12.665h-.061c-7.051-.405-8.053-6.357-8.193-8.173a1.077 1.077 0 0 1 .99-1.16h1.978a.717.717 0 0 1 .668.452l.545 1.343a.718.718 0 0 1-.158.775l-.764.772a3.364 3.364 0 0 0 2.72 2.728l.778-.772a.718.718 0 0 1 .78-.147l1.352.542a.718.718 0 0 1 .441.668v1.895a1.077 1.077 0 0 1-1.076 1.077ZM4.412 4.05a.359.359 0 0 0-.359.359v.029c.165 2.125 1.224 7.15 7.514 7.51a.359.359 0 0 0 .38-.338V9.693l-1.352-.542-1.03 1.023-.172-.021C6.27 9.76 5.847 6.637 5.847 6.605l-.021-.172 1.019-1.03-.538-1.354H4.412Z"/>',viewBox:"0 0 16 16"},collectionDateTimeField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M4.976 2.668c.212 0 .384.172.384.385v.769h4.616v-.77a.385.385 0 0 1 .769 0v.77h.385a1.539 1.539 0 0 1 1.538 1.538v5.77a1.539 1.539 0 0 1-1.538 1.538H4.205a1.539 1.539 0 0 1-1.538-1.538V5.36a1.538 1.538 0 0 1 1.538-1.538h.385v-.77c0-.212.172-.384.385-.384Zm-.77 1.923a.77.77 0 0 0-.769.77v.59c.232-.134.497-.206.77-.206h6.923c.272 0 .537.072.769.206v-.59a.769.769 0 0 0-.77-.77H4.207ZM11.9 7.283a.769.769 0 0 0-.77-.769H4.207a.77.77 0 0 0-.769.77v3.846a.77.77 0 0 0 .77.769h6.923a.769.769 0 0 0 .769-.77V7.284Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionNumberField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M7.289 2.676c.23.047.38.271.334.502L7.151 5.54h2.002l.505-2.529a.427.427 0 1 1 .837.167l-.472 2.362h1.633a.427.427 0 1 1 0 .853H9.852L9.305 9.13h1.633a.427.427 0 0 1 0 .853H9.134l-.506 2.529a.427.427 0 0 1-.836-.168l.472-2.361H6.262l-.505 2.529a.427.427 0 0 1-.837-.168l.472-2.361H3.76a.427.427 0 1 1 0-.853h1.804l.547-2.737H4.477a.427.427 0 0 1 0-.853H6.28l.505-2.529a.427.427 0 0 1 .503-.335ZM6.98 6.393 6.433 9.13h2.002l.547-2.737H6.98Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionLinkField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.237 5.616a2.286 2.286 0 1 0 0 4.572h1.418a.55.55 0 1 1 0 1.1H5.237a3.386 3.386 0 0 1 0-6.772h1.418a.55.55 0 0 1 0 1.1H5.237Zm.312 2.183a.55.55 0 0 1 .55-.55h4.244a.55.55 0 1 1 0 1.1H6.099a.55.55 0 0 1-.55-.55Zm7.646.103a2.286 2.286 0 0 0-2.286-2.286H9.491a.55.55 0 0 1 0-1.1h1.418a3.386 3.386 0 0 1 0 6.771H9.491a.55.55 0 0 1 0-1.1h1.418a2.286 2.286 0 0 0 2.286-2.285Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionSwitchField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.332 5.75a2.5 2.5 0 0 0 0 5h5a2.5 2.5 0 0 0 0-5h-5Zm5 .417a2.083 2.083 0 1 0 0 4.166 2.083 2.083 0 0 0 0-4.166Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionColorField:{icon:'<path stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-width=".991" d="M6.967 10.166a1.333 1.333 0 0 0-2.568.5 1 1 0 0 1-1.067.998 2 2 0 0 0 3.733-.997c0-.177-.035-.347-.098-.501Zm0 0a7.11 7.11 0 0 0 1.506-.72m-2.241-.011c.18-.53.422-1.036.72-1.51m1.52 1.52A7.109 7.109 0 0 0 10.59 7.38l1.723-2.584a.511.511 0 0 0-.71-.71L9.02 5.81a7.109 7.109 0 0 0-2.066 2.116 3.011 3.011 0 0 1 1.52 1.52"/>',viewBox:"0 0 16 16"},collectionOptionField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M3.332 4.583c0-.322.261-.583.583-.583h8.167a.583.583 0 0 1 0 1.167H3.915a.583.583 0 0 1-.583-.584Zm0 3.5c0-.322.261-.583.583-.583h8.167a.583.583 0 0 1 0 1.167H3.915a.583.583 0 0 1-.583-.584Zm9.333 3.5a.583.583 0 0 0-.583-.583H3.915a.583.583 0 0 0 0 1.167h8.167a.583.583 0 0 0 .583-.584Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionFileField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M4 3.627c0-.53.41-.959.915-.959h2.36c1.253 0 2.455.522 3.34 1.45A5.076 5.076 0 0 1 12 7.622v4.755c0 .53-.41.959-.915.959h-6.17c-.505 0-.915-.43-.915-.96V3.628Zm7.259 4.184c0-.35-.133-.687-.37-.935a1.234 1.234 0 0 0-.893-.388H9.27a.894.894 0 0 1-.647-.28.983.983 0 0 1-.268-.68v-.76c0-.35-.133-.687-.37-.935a1.234 1.234 0 0 0-.892-.388H4.915a.178.178 0 0 0-.174.182v8.749c0 .1.078.182.174.182h6.17a.178.178 0 0 0 .174-.182V7.81ZM8.868 3.794c.149.298.229.632.229.974v.76c0 .05.018.095.05.13a.17.17 0 0 0 .123.053h.726c.327 0 .646.084.93.24a4.19 4.19 0 0 0-.834-1.283 3.982 3.982 0 0 0-1.224-.874ZM5.815 9.523a.38.38 0 0 1 .37-.389h3.63a.38.38 0 0 1 .37.389.38.38 0 0 1-.37.388h-3.63a.38.38 0 0 1-.37-.388Zm0 1.521a.38.38 0 0 1 .37-.388H8a.38.38 0 0 1 .37.388.38.38 0 0 1-.37.389H6.185a.38.38 0 0 1-.37-.389Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionReferenceField:{icon:'<path d="M8.663 10.203c0 .168.146.321 0 .365-.028.007-.314 0-.349 0H4.002c-.431 0-.856-.102-1.247-.306a2.64 2.64 0 0 1-.64-.416c-.084-.08-.16-.161-.237-.241A3.435 3.435 0 0 1 1 7.284c0-.876.313-1.693.878-2.313C2.435 4.358 3.208 4 4.002 4h1.33c.189 0 .35.168.35.365 0 .095.06.249 0 .315-.065.07-.252.05-.35.05h-1.33c-.599 0-1.19.27-1.623.744a2.755 2.755 0 0 0 0 3.627c.119.124.244.241.376.329.37.27.802.408 1.247.408h4.312c.195 0 .349.168.349.365Z" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.092 4.179c-.768 0-1.517.345-2.059.941a3.328 3.328 0 0 0-.854 2.253A3.346 3.346 0 0 0 2.255 9.86a3.32 3.32 0 0 1 .483-.307 2.557 2.557 0 0 1-.334-.3l-.002-.003a2.844 2.844 0 0 1-.705-1.877c0-.692.11-1.465.558-1.956.448-.492 1.21-.687 1.837-.687h1.33c.135 0 .26-.124.26-.276 0-.151-.125-.275-.26-.275h-1.33ZM2.837 9.703c-.151.078-.298.169-.44.274.14.106.287.2.44.272.192-.122.4-.201.6-.251a2.202 2.202 0 0 1-.6-.295Zm1.255.394c-.295 0-.7.05-1.06.245.336.15.695.226 1.06.226h4.312a.304.304 0 0 0 .073-.011.27.27 0 0 0 .186-.264c0-.153-.119-.276-.26-.276H4.093v.08Zm-1.286.334a2.733 2.733 0 0 1-.66-.428l-.004-.004c-.085-.081-.163-.163-.239-.243l-.002-.002A3.525 3.525 0 0 1 1 7.374c0-.898.321-1.737.901-2.374m.905 5.431c.402.21.84.316 1.286.316h4.312c.046 0 .09-.01.12-.018h.003a.449.449 0 0 0 .314-.436.447.447 0 0 0-.437-.455H4.092a2.01 2.01 0 0 1-1.194-.391l-.004-.003a2.184 2.184 0 0 1-.36-.314 2.665 2.665 0 0 1 0-3.506c.417-.457.986-.716 1.558-.716h1.33a.452.452 0 0 0 .438-.454A.452.452 0 0 0 5.422 4h-1.33C3.27 4 2.474 4.37 1.9 5" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M9.409 7.22h4.16a.81.81 0 0 1 .81.81v4.16a.81.81 0 0 1-.81.81h-4.16a.81.81 0 0 1-.81-.81V8.03a.81.81 0 0 1 .81-.81Zm0 .7a.11.11 0 0 0-.11.11v4.16c0 .06.05.11.11.11h4.16a.11.11 0 0 0 .11-.11V8.03a.11.11 0 0 0-.11-.11h-4.16Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collectionMultiReferenceField:{icon:'<path d="M8.915 7.11c0 .149.182.268.046.307-.025.007-.509 0-.54 0H4.43c-.399 0-.792-.09-1.153-.27a2.459 2.459 0 0 1-.592-.368c-.078-.07-.148-.142-.22-.212a2.956 2.956 0 0 1-.811-2.05c0-.773.29-1.494.812-2.042a2.734 2.734 0 0 1 1.965-.857h1.23c.174 0 .323.148.323.322a.327.327 0 0 1-.322.322H4.432c-.554 0-1.102.239-1.501.658a2.341 2.341 0 0 0 0 3.202c.11.11.225.213.347.29.342.238.741.36 1.154.36h4.483c.18 0 0 .165 0 .339Z" fill="currentColor"/><path d="M8.742 11.676c0 .18.447.322.267.322H4.432c-.735 0-1.45-.309-1.965-.85a2.956 2.956 0 0 1-.812-2.05c0-.772.29-1.494.812-2.042.07-.07.141-.141.219-.206.187-.148.386-.27.592-.367.342.238.741.36 1.154.36-.316 0-.773.13-1.154.374a1.858 1.858 0 0 0-.347.284 2.341 2.341 0 0 0 0 3.202c.399.42.934.651 1.5.651H9.01c.032 0-.524.007-.499.013a.325.325 0 0 1 .232.31Z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.432 1.699c-.712 0-1.406.306-1.907.832a2.86 2.86 0 0 0-.79 1.987c0 .752.282 1.46.79 1.992.068.069.135.136.208.203.143-.104.292-.195.445-.271a2.345 2.345 0 0 1-.304-.263l-.002-.002a2.422 2.422 0 0 1 0-3.313 2.173 2.173 0 0 1 1.56-.682h1.23c.13 0 .242-.112.242-.242a.247.247 0 0 0-.241-.241H4.432Zm-1.16 4.877c-.14.068-.276.148-.407.24.14.102.29.19.445.256l.005.002.024.012c.176-.1.364-.179.546-.233a2.074 2.074 0 0 1-.614-.277Zm1.16.348c-.245 0-.587.083-.906.244.29.112.596.169.906.169h4.046l.216.002a15.309 15.309 0 0 0 .222 0l-.01-.017c-.011-.02-.026-.047-.038-.073a.334.334 0 0 1-.033-.138c0-.057.014-.11.03-.153.007-.022.016-.043.023-.061l.002-.005.015-.039H4.432v.071Zm4.506-.069h-.001Zm-5.59.414c.343.152.71.229 1.084.229h4.044a54.293 54.293 0 0 0 .458.002l.022-.001c.004 0 .015-.001.025-.004h.002a.17.17 0 0 0 .07-.036.119.119 0 0 0 .038-.077.153.153 0 0 0-.009-.066.352.352 0 0 0-.022-.049l-.017-.031a.681.681 0 0 1-.028-.054.176.176 0 0 1-.02-.071c0-.03.009-.063.021-.1a1.18 1.18 0 0 1 .021-.053l.002-.005.02-.05a.298.298 0 0 0 .015-.058.138.138 0 0 0-.01-.078c-.03-.065-.1-.075-.149-.075H4.432c-.396 0-.78-.117-1.107-.346l-.004-.002a1.997 1.997 0 0 1-.333-.278 2.26 2.26 0 0 1 0-3.09 2.012 2.012 0 0 1 1.444-.633h1.23a.408.408 0 0 0 .403-.403.408.408 0 0 0-.402-.402H4.432c-.758 0-1.494.325-2.024.882a3.02 3.02 0 0 0-.834 2.098c0 .793.298 1.541.834 2.104l.002.002c.062.062.126.126.194.19-.068.06-.132.123-.193.184L2.41 7l-.002.002a3.02 3.02 0 0 0-.834 2.098c0 .793.298 1.541.834 2.104.53.557 1.267.876 2.024.876h4.577c.013 0 .027 0 .04-.003a.108.108 0 0 0 .052-.022.087.087 0 0 0 .027-.096.11.11 0 0 0-.028-.042.363.363 0 0 0-.052-.04 3.428 3.428 0 0 0-.06-.039.785.785 0 0 1-.122-.092c-.035-.034-.043-.057-.043-.069a.404.404 0 0 0-.078-.237h.019l.178-.003.055-.001h.017l.006-.001.013-.003c.028-.014.053-.105.007-.152a.15.15 0 0 0-.021-.005H4.432a1.983 1.983 0 0 1-1.443-.626 2.26 2.26 0 0 1 0-3.091c.097-.104.208-.19.333-.272m5.144 4.15H4.432c-.59 0-1.145-.242-1.56-.676a2.422 2.422 0 0 1 0-3.313c.093-.099.194-.181.304-.257a2.513 2.513 0 0 1-.445-.272 2.86 2.86 0 0 0-.996 2.181c0 .754.283 1.462.79 1.994.5.526 1.195.826 1.907.826H8.82a.67.67 0 0 1-.068-.058c-.044-.043-.091-.106-.091-.184a.244.244 0 0 0-.173-.232h-.003l-.005-.002a.08.08 0 0 1-.015-.007Z" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M9.4 4.31h3.487c.375 0 .68.304.68.679v3.486a.679.679 0 0 1-.68.68H9.401a.679.679 0 0 1-.68-.68V4.99c0-.375.305-.68.68-.68Zm0 .587a.092.092 0 0 0-.091.092v3.486c0 .051.041.092.092.092h3.486c.051 0 .092-.04.092-.092V4.99a.092.092 0 0 0-.092-.092H9.401ZM9.4 9.693h3.487c.375 0 .68.304.68.679v3.487a.679.679 0 0 1-.68.679H9.401a.679.679 0 0 1-.68-.68v-3.486c0-.375.305-.68.68-.68Zm0 .587a.092.092 0 0 0-.091.092v3.487c0 .05.041.091.092.091h3.486c.051 0 .092-.04.092-.091v-3.487a.092.092 0 0 0-.092-.092H9.401Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collectionIconField:{icon:'<path fill="none" stroke="currentColor" stroke-width="1.3" d="M9.668 8.889V5h7.331a2 2 0 0 1 2 2v7.334h-3.888"/><path fill="none" stroke="currentColor" stroke-width="1.3" d="M5 13.944A5.056 5.056 0 0 0 10.054 19a5.054 5.054 0 0 0 5.055-5.056A5.056 5.056 0 0 0 6.48 10.37 5.06 5.06 0 0 0 5 13.945Z"/><path fill="currentColor" d="m10.054 15.3 1.694 1.017-.678-1.695 1.356-1.355-1.695-.006-.677-1.689-.678 1.695H7.682l1.355 1.355-.678 1.695z"/>',viewBox:"0 0 24 24"},localUpload:{icon:'<path d="M8.9375 11.644c.30469 0 .5625-.2347.5625-.5633V7.13743h2.0391c.4218 0 .6328-.4929.3281-.79804L8.30469 2.77166c-.16407-.1643-.46875-.1643-.63281 0l-3.5625 3.56773c-.30469.30514-.09375.79804.32812.79804H6.5v3.94327c0 .3286.23438.5633.5625.5633h1.875ZM14 11.4563c0-.3052-.2578-.5634-.5625-.5634H10.25v.1878c0 .7276-.60938 1.3144-1.3125 1.3144h-1.875c-.72656 0-1.3125-.5868-1.3125-1.3144v-.1878H2.5625c-.32812 0-.5625.2582-.5625.5634v2.6288c0 .3286.23438.5633.5625.5633h10.875c.3047 0 .5625-.2347.5625-.5633v-2.6288Zm-2.9062 2.0655c0 .2582-.211.4694-.4688.4694-.2578 0-.4687-.2112-.4687-.4694s.2109-.4694.4687-.4694c.2578 0 .4688.2112.4688.4694Zm1.5 0c0 .2582-.211.4694-.4688.4694-.2578 0-.4687-.2112-.4687-.4694s.2109-.4694.4687-.4694c.2578 0 .4688.2112.4688.4694Z" fill="currentColor"/>',viewBox:"0 0 16 16"},funnel:{icon:'<path d="M18.037 3.87a1.235 1.235 0 0 0-1.141-.745H3.146a1.25 1.25 0 0 0-.923 2.09l.007.008 5.291 5.65v6.002a1.25 1.25 0 0 0 1.943 1.04l2.5-1.666a1.25 1.25 0 0 0 .557-1.041v-4.335l5.292-5.65.006-.007a1.234 1.234 0 0 0 .218-1.346Zm-6.596 6.332a.625.625 0 0 0-.17.423v4.583l-2.5 1.667v-6.25a.625.625 0 0 0-.169-.427L3.146 4.375h13.75l-5.455 5.827Z" fill="currentColor"/>',viewBox:"0 0 21 20"},funnelModified:{icon:'<g fill="currentColor"><path d="M12.338 9.457a4.556 4.556 0 0 1-.581-.427l-1.081 1.154a.573.573 0 0 0-.155.39v4.16l-2.27 1.517v-5.677a.573.573 0 0 0-.155-.39l-4.96-5.287h7.104s0-.063.009-.09c.027-.173.063-.337.109-.491l.036-.1c.027-.091.073-.227.146-.373.009-.027.018-.054.036-.081h-7.44c-.217 0-.435.063-.617.181s-.327.291-.418.49c-.09.2-.118.428-.082.646.037.218.137.418.282.581l4.814 5.132v5.46c0 .2.055.408.155.58.109.173.263.319.445.418a1.11 1.11 0 0 0 1.162-.054l2.271-1.517c.155-.1.282-.245.373-.409.09-.163.136-.345.136-.536v-3.942l1.063-1.135c-.128-.055-.255-.127-.382-.2Z"/><path d="M14.618 2a3.59 3.59 0 0 0-3.134 1.817c-.09.154-.164.308-.227.472-.055.1-.082.209-.118.327a2.024 2.024 0 0 0-.082.336c-.009.018-.009.027-.009.045a2.573 2.573 0 0 0-.046.382c-.018.082-.018.136-.018.218v.036c0 .345.055.69.155 1.018.2.7.608 1.308 1.144 1.762.136.127.282.227.436.327.146.09.29.163.436.227a.455.455 0 0 0 .118.045c.41.173.872.264 1.345.264a3.634 3.634 0 0 0 3.633-3.643A3.626 3.626 0 0 0 14.618 2Zm1.725 2.798-2.089 2.089-1.353-1.354c-.1-.09-.1-.254 0-.336.09-.09.245-.1.336 0l1.017 1.018 1.744-1.753c.1-.1.246-.1.345 0 .091.1.091.254 0 .336Z"/></g><defs><clipPath id="a"><path fill="#fff" transform="translate(2 2)" d="M0 0h16.25v15.387H0z"/></clipPath></defs>',viewBox:"0 0 20 20"},clock:{icon:'<path d="M10 1.875c-1.60697 0-3.17786.47652-4.514 1.36931-1.33615.89279-2.37756 2.16174-2.99252 3.64639-.61496 1.48465-.77586 3.1183-.46236 4.6944.31351 1.5761 1.08734 3.0238 2.22364 4.1601 1.1363 1.1363 2.58404 1.9102 4.16014 2.2237 1.57609.3135 3.2098.1526 4.6944-.4624 1.4847-.6149 2.7536-1.6563 3.6464-2.9925.8928-1.3361 1.3693-2.907 1.3693-4.514-.0023-2.15419-.859-4.21949-2.3823-5.74273C14.2195 2.73403 12.1542 1.87727 10 1.875Zm0 15c-1.35974 0-2.68895-.4032-3.81954-1.1586-1.13059-.7555-2.01178-1.8292-2.53213-3.0855-.52035-1.2562-.6565-2.63853-.39123-3.97215.26528-1.33362.92006-2.55862 1.88154-3.52011.96149-.96148 2.1865-1.61627 3.52012-1.88154 1.33362-.26527 2.71594-.12912 3.97224.39123 1.2562.52035 2.3299 1.40154 3.0854 2.53212C16.4718 7.31104 16.875 8.64025 16.875 10c-.0021 1.8227-.7271 3.5702-2.0159 4.8591-1.2889 1.2888-3.0364 2.0138-4.8591 2.0159ZM15 10c0 .1658-.0658.3247-.1831.4419-.1172.1173-.2761.1831-.4419.1831H10c-.16576 0-.32473-.0658-.44194-.1831-.11721-.1172-.18306-.2761-.18306-.4419V5.625c0-.16576.06585-.32473.18306-.44194C9.67527 5.06585 9.83424 5 10 5c.1658 0 .3247.06585.4419.18306.1173.11721.1831.27618.1831.44194v3.75h3.75c.1658 0 .3247.06585.4419.18306.1173.11721.1831.27618.1831.44194Z" fill="currentColor"/>',viewBox:"0 0 20 20"},templates:{icon:'<path d="M73.8 20H26.2c-3.4 0-6.2 2.8-6.2 6.2v47.6c0 3.4 2.8 6.2 6.2 6.2h47.6c3.4 0 6.2-2.8 6.2-6.2V26.2c0-3.4-2.8-6.2-6.2-6.2zM42.3 69.1c0 .8-.8 1.4-1.6 1.4H30.4c-.8 0-1.4-.8-1.4-1.6V48.8c0-.8.8-1.4 1.6-1.4H41c.8 0 1.4.8 1.4 1.6v20.1zm28.4.2c0 .8-.8 1.4-1.6 1.4H49.9c-.8 0-1.4-.8-1.4-1.6V48.8c0-.8.8-1.4 1.6-1.4h19.3c.8 0 1.4.8 1.4 1.6v20.3zm.2-29.4c0 .8-.8 1.4-1.6 1.4H30.4c-.8 0-1.4-.8-1.4-1.6v-9c0-.8.8-1.4 1.6-1.4h38.9c.8 0 1.4.8 1.4 1.6v9z"/>',viewBox:"0 0 100 100"},pages:{icon:'<path d="M5.4 2h5.7l2.7 2.7v7.5" stroke="currentColor" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/><path d="M3 13.1V4.7a.9.9 0 0 1 .9-.9h5.851a.36.36 0 0 1 .255.106l1.888 1.889A.36.36 0 0 1 12 6.05v7.05a.9.9 0 0 1-.9.9H3.9a.9.9 0 0 1-.9-.9Z" stroke="currentColor" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/><path d="M9.6 3.8v2.04a.36.36 0 0 0 .36.36H12" stroke="currentColor" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 16 16"},dynamicContent:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M2.05 3.467c0-.005.005-.12.283-.317.263-.187.68-.378 1.245-.548 1.123-.336 2.707-.553 4.48-.553 1.773 0 3.356.217 4.479.553.565.17.982.36 1.245.548.278.197.284.312.284.317 0 .005-.006.12-.284.317-.263.187-.68.378-1.245.547-1.123.337-2.706.553-4.48.553-1.772 0-3.356-.216-4.479-.553-.565-.17-.982-.36-1.245-.547-.278-.197-.284-.312-.284-.317ZM8.057.949c-1.85 0-3.545.224-4.796.6-.622.186-1.165.42-1.566.703-.386.274-.747.676-.747 1.215 0 .02 0 .04.002.06a.558.558 0 0 0-.002.041h.005-.005v10.259c0 .546.32.986.716 1.313.401.329.948.6 1.575.819 1.258.438 2.962.698 4.818.698 1.855 0 3.559-.26 4.818-.698.627-.218 1.173-.49 1.574-.82.397-.326.716-.766.716-1.312V3.568h-.004.004c0-.014 0-.028-.002-.041l.002-.06c0-.539-.361-.941-.747-1.215-.4-.284-.944-.517-1.566-.703-1.25-.376-2.946-.6-4.795-.6Zm6.008 3.95c-.346.188-.758.35-1.213.486-1.25.375-2.946.6-4.795.6-1.85 0-3.545-.225-4.796-.6a6.447 6.447 0 0 1-1.213-.486v4.027c0 .008.01.123.284.317.263.187.68.378 1.245.547 1.123.337 2.707.553 4.48.553 1.773 0 3.356-.216 4.479-.553.565-.17.982-.36 1.245-.547.278-.197.284-.312.284-.317V4.899ZM2.049 13.827v-3.469c.346.188.758.35 1.213.486 1.251.375 2.946.6 4.796.6 1.849 0 3.544-.225 4.795-.6a6.446 6.446 0 0 0 1.213-.486v3.47c0 .083-.048.242-.315.462-.263.216-.677.435-1.236.63-1.115.387-2.691.637-4.457.637-1.767 0-3.343-.25-4.457-.637-.56-.195-.974-.414-1.237-.63-.267-.22-.315-.379-.315-.463Z" fill="currentColor"/>',viewBox:"0 0 16 17"},colorLibrary:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m8.616 19.678-4.45-2.385-.016-.01A2.429 2.429 0 0 1 3 15.203V9.797c0-.842.426-1.64 1.15-2.08l.017-.01 4.45-2.385a2.267 2.267 0 0 1 2.327 0l4.45 2.385.017.01a2.429 2.429 0 0 1 1.15 2.08v5.406c0 .842-.427 1.64-1.15 2.08l-.017.01-4.45 2.385a2.267 2.267 0 0 1-2.328 0Zm.73-1.223c.271.164.598.164.868 0l.016-.01 4.446-2.383c.268-.17.451-.49.451-.859V9.797c0-.368-.183-.689-.451-.859L10.23 6.555l-.016-.01a.824.824 0 0 0-.867 0l-.017.01-4.445 2.383c-.268.17-.452.491-.452.859v5.406c0 .368.184.689.452.859l4.445 2.383.017.01Zm.434-5.572a.384.384 0 0 0 .386-.383.384.384 0 0 0-.386-.383.384.384 0 0 0-.386.383c0 .211.173.383.386.383Zm1.82-.383c0 .996-.815 1.804-1.82 1.804A1.812 1.812 0 0 1 7.961 12.5c0-.997.815-1.804 1.82-1.804 1.004 0 1.818.807 1.818 1.804Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="M18.546 8.247 15.518 6.37a.707.707 0 0 1-.228-.98.72.72 0 0 1 .987-.225l3.027 1.875a2.347 2.347 0 0 1 1.114 1.994v6.93c0 .81-.42 1.564-1.114 1.994l-3.027 1.875a.72.72 0 0 1-.987-.226.707.707 0 0 1 .228-.98l3.027-1.875a.928.928 0 0 0 .44-.788v-6.93a.928.928 0 0 0-.44-.788Z" clip-rule="evenodd"/>',viewBox:"0 0 24 24"},articles:{icon:'<path d="M14.172 2.25c.73 0 1.429.29 1.944.806l2.828 2.828a2.75 2.75 0 0 1 .806 1.944v.422a.75.75 0 0 1-1.5 0v-.422c0-.331-.132-.65-.366-.884l-2.828-2.828a1.25 1.25 0 0 0-.884-.366H5a.25.25 0 0 0-.25.25v16c0 .138.112.25.25.25h13a.25.25 0 0 0 .25-.25v-1.25a.75.75 0 0 1 1.5 0V20A1.75 1.75 0 0 1 18 21.75H5A1.75 1.75 0 0 1 3.25 20V4c0-.966.784-1.75 1.75-1.75h9.172Z" fill="currentColor"/><path d="M20.646 9.354a.5.5 0 0 1 .707 0l1.293 1.293a.5.5 0 0 1 0 .707l-6.563 6.563a.5.5 0 0 1-.195.12l-2.319.774a.3.3 0 0 1-.38-.38l.774-2.319a.5.5 0 0 1 .12-.195l6.563-6.563ZM14 10.5a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1 0-1.5h4.5a.75.75 0 0 1 .75.75ZM14 7.5a.75.75 0 0 1-.75.75h-4.5a.75.75 0 0 1 0-1.5h4.5a.75.75 0 0 1 .75.75Z" fill="currentColor"/>',viewBox:"0 0 24 24"},activeCircle:{icon:'<circle cx="8" cy="8" r="8" fill="#446EF5"/><circle cx="8" cy="8" r="2.4" fill="#fff"/><circle cx="8" cy="8" r="4.8" stroke="#fff" stroke-width=".8"/>',viewBox:"0 0 16 16"},disabledCircle:{icon:'<circle cx="8" cy="8" r="8" fill="#C0C3CC"/><circle cx="8" cy="8" r="2.4" fill="#fff"/><circle cx="8" cy="8" r="4.8" stroke="#fff" stroke-width=".8"/>',viewBox:"0 0 16 16"},restoreCircle:{icon:'<path stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.2" d="M10.682 6.232h3.328L11.89 4.11a5.5 5.5 0 0 0-9.203 2.467m-.697 6.519V9.768m0 0h3.328m-3.328 0 2.12 2.122a5.5 5.5 0 0 0 9.202-2.467m.698-6.519v3.327"/>',viewBox:"0 0 16 16"},collectionLocationField:{icon:'<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="m10 16.667-3.473 1.158a.4.4 0 0 1-.527-.38V7.622a.4.4 0 0 1 .273-.38L10 6m0 10.667L14 18m-4-1.333V6m0 0 4 1.333M14 18l3.727-1.242a.4.4 0 0 0 .273-.38V6.555a.4.4 0 0 0-.527-.38L14 7.333M14 18V7.333"/>',viewBox:"0 0 24 24"},twoBlocks:{icon:'<path fill="currentColor" stroke="currentColor" stroke-width=".2" d="M6.628 1.5c.302 0 .558.23.558.526v11.947c0 .297-.256.527-.558.527h-4.57c-.302 0-.558-.23-.558-.527V2.026c0-.297.256-.526.557-.526zm7.315 0c.301 0 .558.23.558.526v11.947c0 .297-.257.527-.558.527H9.372c-.302 0-.558-.23-.558-.527V2.026c0-.297.256-.526.558-.526zM9.928 13.446h3.458V2.553H9.928zm-7.313 0h3.457V2.553H2.615z"/>',viewBox:"0 0 16 16"},chainLink:{icon:'<path stroke="currentColor" d="m6.347 9.624 3.276-3.275"/><path stroke="currentColor" fill="none" stroke-linejoin="round" d="M8.38 10.072c.493.76.36 1.54-.209 2.109l-1.996 1.997a1.67 1.67 0 0 1-2.363 0l-1.99-1.992a1.67 1.67 0 0 1 0-2.362l1.997-1.996c.467-.468 1.357-.738 2.121-.185m4.133.735c.76.494 1.54.362 2.109-.208l1.997-1.997a1.67 1.67 0 0 0 0-2.362l-1.991-1.99a1.67 1.67 0 0 0-2.362 0L7.829 3.816c-.468.468-.738 1.357-.185 2.122"/>',viewBox:"0 0 16 16"},justifyStartVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.143 15.428c.631 0 1.143-.511 1.143-1.142V5.143a1.143 1.143 0 1 0-2.286 0v9.143c0 .63.512 1.142 1.143 1.142m9.714-13.714a.571.571 0 1 0 0-1.143H1.143a.571.571 0 0 0 0 1.143zm-2.857 8a1.143 1.143 0 0 1-2.286 0V5.143a1.143 1.143 0 0 1 2.286 0z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifyEndVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M10.857.572c-.63 0-1.143.511-1.143 1.142v9.143a1.143 1.143 0 1 0 2.286 0V1.714c0-.63-.511-1.142-1.143-1.142M1.143 14.286a.571.571 0 1 0 0 1.143h13.714a.571.571 0 1 0 0-1.143zm2.857-8a1.143 1.143 0 1 1 2.286 0v4.571a1.143 1.143 0 1 1-2.286 0z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifyCenterVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M15.43 14.287a.57.57 0 0 1-.571.571H1.142a.571.571 0 1 1 0-1.143h13.717a.57.57 0 0 1 .571.572M12 8a1.143 1.143 0 0 1-1.142 1.143H5.142a1.143 1.143 0 0 1 0-2.286h5.716A1.143 1.143 0 0 1 12 8m2.859-5.715a.572.572 0 1 0 0-1.144H1.142a.572.572 0 0 0 0 1.144z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceBetweenVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M1.1 14.898a.53.53 0 1 1 0-1.061h13.8a.53.53 0 1 1 0 1.061zm10.085-5.307a1.061 1.061 0 0 1 0 2.123h-6.37a1.062 1.062 0 0 1 0-2.123zm0-5.307a1.061 1.061 0 0 1 0 2.123h-6.37a1.061 1.061 0 1 1 0-2.123zM.57 1.631a.53.53 0 0 0 .53.53h13.8a.53.53 0 0 0 0-1.061H1.1a.53.53 0 0 0-.53.53" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceAroundVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M1.1 14.9a.53.53 0 1 1 0-1.062h13.8a.53.53 0 0 1 0 1.061zm10.085-5.308a1.061 1.061 0 0 1 0 2.123h-6.37a1.061 1.061 0 1 1 0-2.123zm0-5.307a1.061 1.061 0 0 1 0 2.123h-6.37a1.061 1.061 0 1 1 0-2.123zM.57 1.632a.53.53 0 0 0 .53.53h13.8a.53.53 0 0 0 0-1.061H1.1a.53.53 0 0 0-.53.53" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},justifySpaceEvenlyVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M15.43 14.287a.57.57 0 0 1-.571.571H1.142a.571.571 0 1 1 0-1.143h13.717a.57.57 0 0 1 .571.572M12 8a1.143 1.143 0 0 1-1.142 1.143H5.142a1.143 1.143 0 0 1 0-2.286h5.716A1.143 1.143 0 0 1 12 8m2.859-5.715a.572.572 0 1 0 0-1.144H1.142a.572.572 0 0 0 0 1.144z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},alignStartVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M15.429 10.857c0-.63-.512-1.143-1.143-1.143H5.143a1.143 1.143 0 0 0 0 2.286h9.143c.631 0 1.143-.511 1.143-1.143M1.714 1.143a.571.571 0 0 0-1.142 0v13.714a.571.571 0 1 0 1.142 0zm8 2.857a1.143 1.143 0 1 1 0 2.286H5.143a1.143 1.143 0 0 1 0-2.286z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},alignEndVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M.726 10.858A1.143 1.143 0 0 1 1.87 9.715h9.145a1.143 1.143 0 1 1 0 2.286H1.869a1.143 1.143 0 0 1-1.143-1.143m13.717-9.716a.571.571 0 1 1 1.143 0V14.86a.572.572 0 1 1-1.143 0zM6.441 4a1.143 1.143 0 0 0 0 2.286h4.573a1.143 1.143 0 1 0 0-2.286z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},alignCenterVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M1.869 5.143A1.143 1.143 0 0 1 3.012 4h4.572V1.142a.572.572 0 0 1 1.143 0V4H13.3a1.143 1.143 0 1 1 0 2.286H8.727v3.429h2.287a1.143 1.143 0 0 1 0 2.286H8.727v2.858a.571.571 0 0 1-1.143 0V12H5.298a1.143 1.143 0 1 1 0-2.286h2.286v-3.43H3.012A1.143 1.143 0 0 1 1.87 5.144" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},alignStretchVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M.945 15.43a.53.53 0 0 1-.53-.53V1.1a.53.53 0 1 1 1.06 0V14.9a.53.53 0 0 1-.53.53M11.559 6.94a1.061 1.061 0 0 0 0-2.123H4.13a1.061 1.061 0 0 0 0 2.123zm-1.061 4.246a1.061 1.061 0 1 0 0-2.123H5.19a1.061 1.061 0 1 0 0 2.123zm3.715 3.715a.53.53 0 1 0 1.061 0V1.1a.53.53 0 0 0-1.061 0z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},stepAdditon:{icon:'<rect width="14" height="6.178" fill="currentColor" rx=".583"/><rect width="10.862" height="2" x="1.569" y="8.178" fill="currentColor" rx=".583"/>',viewBox:"0 0 14 11"},resetAll:{icon:'<path fill="currentColor" d="m12.103 11.838-.828-4.775h.28a.405.405 0 0 0 .406-.407v-3a.405.405 0 0 0-.406-.406H7.71V.406A.405.405 0 0 0 7.305 0h-2.5a.405.405 0 0 0-.407.406V3.25H.555a.405.405 0 0 0-.407.406v3c0 .225.182.407.407.407h.28l-.829 4.775a.405.405 0 0 0 .4.475h11.297a.404.404 0 0 0 .4-.475M1.243 4.344h4.25v-3.25h1.124v3.25h4.25v1.625H1.242zm7.312 6.875V8.78a.125.125 0 0 0-.125-.125h-.75a.125.125 0 0 0-.125.125v2.438h-3V8.78a.125.125 0 0 0-.125-.125h-.75a.125.125 0 0 0-.125.125v2.438H1.223l.705-4.063h8.252l.704 4.063z"/>',viewBox:"0 0 16 16"}}),{},{times:{icon:'<path d="m8.22 7.003 5.192-5.192A.863.863 0 1 0 12.191.589L6.999 5.781 1.807.59A.863.863 0 1 0 .585 1.811l5.192 5.192-5.192 5.192a.863.863 0 1 0 1.222 1.221l5.192-5.192 5.192 5.192a.861.861 0 0 0 1.221 0 .863.863 0 0 0 0-1.221L8.22 7.003Z" fill="currentColor"/>',viewBox:"0 0 14 14"},parmaLink:{icon:'<path d="M9 4H3.5C3.10218 4 2.72064 4.15804 2.43934 4.43934C2.15804 4.72064 2 5.10218 2 5.5V12.5C2 12.8978 2.15804 13.2794 2.43934 13.5607C2.72064 13.842 3.10218 14 3.5 14H10.5C10.8978 14 11.2794 13.842 11.5607 13.5607C11.842 13.2794 12 12.8978 12 12.5V7M5 11L14 2M14 2H10.5M14 2V5.5" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 16 16"},pencilOnBox:{icon:'<path d="m10.241 2.991 1.125-1.125a1.25 1.25 0 0 1 1.768 1.768l-7.08 7.08a3 3 0 0 1-1.264.753L3 12l.533-1.79a3 3 0 0 1 .754-1.265l5.954-5.954Zm0 0L12 4.75m-1 4.583V12.5A1.5 1.5 0 0 1 9.5 14h-7A1.5 1.5 0 0 1 1 12.5v-7A1.5 1.5 0 0 1 2.5 4h3.167" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" fill="none"/>',viewBox:"0 0 15 15"},menu:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8 10a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H9a1 1 0 0 1-1-1Zm0 6a1 1 0 0 1 1-1h14a1 1 0 1 1 0 2H9a1 1 0 0 1-1-1Zm16 6a1 1 0 0 0-1-1H9a1 1 0 1 0 0 2h14a1 1 0 0 0 1-1Z" clip-rule="evenodd"/>',viewBox:"0 0 32 32"},openBook:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M11.5 6.982c-4.268-3.644-9-1.146-9-1.146v10.57c5.012 0 7.863 1.712 9 2.594V6.982Z" clip-rule="evenodd"/><path fill="#7784A8" d="M21.5 16.407c-5.012 0-7.864 1.71-9 2.593V6.982c4.268-3.645 9-1.147 9-1.147v10.572Z" opacity=".6"/>',viewBox:"0 0 24 24"},desktop:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M3.125 3.4c-.124 0-.225.1-.225.225v6.25c0 .124.1.225.225.225h10c.124 0 .225-.1.225-.225v-6.25c0-.124-.1-.225-.225-.225h-10ZM2.1 3.625C2.1 3.06 2.56 2.6 3.125 2.6h10c.566 0 1.025.459 1.025 1.025v6.25c0 .566-.459 1.025-1.025 1.025h-10A1.025 1.025 0 0 1 2.1 9.875v-6.25ZM4.6 13c0-.22.18-.4.4-.4h6.25a.4.4 0 0 1 0 .8H5a.4.4 0 0 1-.4-.4Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="M6.25 10.1c.221 0 .4.18.4.4V13a.4.4 0 0 1-.8 0v-2.5c0-.22.18-.4.4-.4ZM10 10.1c.221 0 .4.18.4.4V13a.4.4 0 0 1-.8 0v-2.5c0-.22.18-.4.4-.4Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},laptop:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M13.157 10.182c.011-.019.043-.09.043-.273V4.615c0-.18-.03-.253-.042-.273-.02-.011-.091-.042-.273-.042h-9.77c-.183 0-.254.032-.272.042-.012.02-.043.091-.043.273V9.91c0 .184.032.254.043.272.018.01.088.043.272.043h9.77c.183 0 .254-.031.272-.042Zm-.003.005.002-.002-.002.002Zm.006-.007a.013.013 0 0 1 .003-.002l-.003.002ZM2.84 10.178l.002.002a.012.012 0 0 1-.002-.002Zm.006.005a.01.01 0 0 1 .002.003l-.002-.003Zm.001-5.846-.002.003a.011.011 0 0 1 .002-.003Zm-.006.007a.011.011 0 0 1-.002.002l.002-.002Zm10.324.002-.002-.002a.016.016 0 0 1 .002.002Zm-.008-.008a.016.016 0 0 1-.002-.002l.002.002ZM14 9.91c0 .755-.37 1.115-1.115 1.115h-9.77c-.74 0-1.115-.36-1.115-1.115V4.615c0-.76.375-1.115 1.115-1.115h9.77C13.63 3.5 14 3.856 14 4.615V9.91Z" clip-rule="evenodd"/><path fill="currentColor" d="M10.922 12.753c.22 0 .394-.18.394-.404a.398.398 0 0 0-.394-.404H5.063c-.219 0-.4.18-.4.404 0 .224.181.404.4.404h5.859Z"/>',viewBox:"0 0 16 16"},tabletHorizontal:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M2.331 11.316V4.684c0-.564.471-1.015 1.045-1.015h8.91c.574 0 1.045.45 1.045 1.015v6.632c0 .564-.47 1.015-1.045 1.015h-8.91c-.574 0-1.045-.451-1.045-1.015Zm.983-7.025a.476.476 0 0 0-.433.46v6.497l.004.058c.03.23.239.406.492.406h8.91l.062-.003a.476.476 0 0 0 .432-.46V4.75l-.003-.058a.485.485 0 0 0-.492-.406h-8.91l-.062.004Zm7.267.615a.275.275 0 1 0-.55 0v6.05a.275.275 0 1 0 .55 0v-6.05Zm1.1 3.575a.55.55 0 1 1 0-1.1.55.55 0 0 1 0 1.1Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},tabletVertical:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M4.515 2.5h6.632c.564 0 1.015.471 1.015 1.045v8.91c0 .574-.45 1.045-1.015 1.045H4.515c-.564 0-1.015-.471-1.015-1.045v-8.91c0-.574.451-1.045 1.015-1.045Zm7.025.983a.476.476 0 0 0-.46-.433H4.583l-.058.004a.485.485 0 0 0-.406.491v8.91l.003.062a.475.475 0 0 0 .46.433h6.498l.058-.004a.485.485 0 0 0 .406-.49v-8.91l-.004-.063Zm-.615 7.267a.275.275 0 1 0 0-.55h-6.05a.275.275 0 1 0 0 .55h6.05Zm-3.575 1.1a.55.55 0 1 1 1.1 0 .55.55 0 0 1-1.1 0Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},mobileHorizontal:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M3 10.158V5.105c0-.487.427-.843.914-.843h7.797c.487 0 .914.356.914.843v5.053c0 .486-.427.842-.914.842H3.914C3.427 11 3 10.644 3 10.158Zm.86-5.411c-.214.022-.379.174-.379.358v5.053l.003.045c.027.178.21.316.43.316h7.796l.055-.003c.214-.022.379-.174.379-.358V5.105l-.004-.046c-.026-.177-.208-.315-.43-.315H3.914l-.054.003Zm1.065 2.162a.24.24 0 0 0-.481 0v1.444a.24.24 0 1 0 .481 0V6.91ZM10.7 8.113a.481.481 0 1 1 0-.963.481.481 0 0 1 0 .963Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},mobileVertical:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M1.156.33h3.79c.365 0 .632.32.632.685v5.848c0 .365-.267.685-.632.685h-3.79c-.365 0-.632-.32-.632-.685V1.015C.524.65.791.33 1.156.33Zm4.059.645C5.198.815 5.084.69 4.946.69h-3.79l-.034.003C.99.713.885.85.885 1.015v5.848l.003.04c.016.16.13.284.268.284h3.79l.034-.002c.133-.02.237-.157.237-.322V1.015l-.002-.04Zm-1.623.798a.18.18 0 1 0 0-.36H2.51a.18.18 0 0 0 0 .36h1.082ZM2.69 6.105a.36.36 0 1 1 .722 0 .36.36 0 0 1-.722 0Z" fill="currentColor"/>',viewBox:"0 0 10 10"},fadeIn:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m0 8.7 16 8.4V34L0 25.6V8.7Z" clip-rule="evenodd" opacity=".4"/><path fill="currentColor" fill-rule="evenodd" d="m32 8.7-16 8.4V34l16-8.4V8.7Z" clip-rule="evenodd" opacity=".6"/><path fill="currentColor" fill-rule="evenodd" d="m0 8.7 16 8.4 16-8.4L16 0 0 8.7Z" clip-rule="evenodd" opacity=".1"/><path fill="currentColor" fill-rule="evenodd" d="M4.4 11 16 17.1v12.3L4.4 23.2V11Z" clip-rule="evenodd" opacity=".4"/><path fill="currentColor" fill-rule="evenodd" d="M27.6 11 16 17.1v12.3l11.6-6.1V11Z" clip-rule="evenodd" opacity=".8"/><path fill="currentColor" fill-rule="evenodd" d="M4.4 11 16 17.1 27.6 11 16 4.6 4.4 11Z" clip-rule="evenodd" opacity=".2"/><path fill="currentColor" fill-rule="evenodd" d="m8.8 13.3 7.2 3.8v7.6l-7.2-3.8v-7.6Z" clip-rule="evenodd" opacity=".5"/><path fill="currentColor" fill-rule="evenodd" d="M23.2 13.3 16 17.1v7.6l7.2-3.8v-7.6Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="m8.8 13.3 7.2 3.8 7.2-3.8L16 9.4l-7.2 3.9Z" clip-rule="evenodd" opacity=".2"/>',viewBox:"0 0 32 34"},spinIn:{icon:'<path fill="currentColor" d="M5.501 49.776c-2.354-1.36-2.998-3.798-3.172-4.92l2.182 1.503a.286.286 0 1 0 .325-.472L2.141 44.03a.288.288 0 0 0-.395.07v.001l-.002.002-1.693 2.433a.286.286 0 0 0 .47.327l1.255-1.803c.207 1.27.93 3.763 3.438 5.212a7.722 7.722 0 0 0 10.537-2.824.286.286 0 0 0-.422-.37.288.288 0 0 0-.074.084 7.15 7.15 0 0 1-9.754 2.614Zm15.471-45.53a.286.286 0 0 0 .39-.106 7.149 7.149 0 0 1 9.755-2.614c2.354 1.36 2.998 3.798 3.172 4.92l-2.182-1.502a.287.287 0 0 0-.325.471l2.694 1.857a.29.29 0 0 0 .396-.07h.001l.001-.003 1.693-2.433a.287.287 0 0 0-.072-.399.29.29 0 0 0-.398.072l-1.255 1.803c-.207-1.27-.929-3.763-3.438-5.212a7.722 7.722 0 0 0-10.537 2.824.286.286 0 0 0 .104.39l.001.001Z"/><path fill="currentColor" fill-rule="evenodd" d="m6.47 14.038 13.093 12.24-4.366 16.293-13.093-12.24L6.47 14.036l.001.001Z" clip-rule="evenodd" opacity=".5"/><path fill="currentColor" fill-rule="evenodd" d="m37.02 22.223-17.458 4.054-4.367 16.293 17.458-4.053 4.366-16.294Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="m6.469 14.039 13.093 12.24 17.458-4.055L23.996 9.73 6.469 14.04Z" clip-rule="evenodd" opacity=".2"/>',viewBox:"0 0 38 52"},flipIn:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m0 8.697 14.5 8.434v16.87L0 25.565V8.697Z" clip-rule="evenodd" opacity=".5"/><path fill="currentColor" fill-rule="evenodd" d="m29 8.697-14.5 8.434v16.87L29 25.565V8.697Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="m0 8.698 14.5 8.434L29 8.698 14.5 0 0 8.698Z" clip-rule="evenodd" opacity=".2"/><path fill="currentColor" d="M32.967 21.205a.415.415 0 0 0-.192.244.389.389 0 0 0 .036.3c2.705 4.698.964 10.775-3.89 13.585-3.35 1.934-6.77 1.066-8.258.519l3.4-1.628a.404.404 0 0 0 .2-.533.4.4 0 0 0-.536-.18l-4.199 2.01a.407.407 0 0 0-.2.528v.004l1.724 3.694.015.03a.4.4 0 0 0 .52.153.409.409 0 0 0 .201-.532l-1.277-2.738c1.688.607 5.232 1.417 8.803-.645 5.244-3.036 7.125-9.6 4.203-14.674a.386.386 0 0 0-.242-.181.414.414 0 0 0-.308.044Z"/>',viewBox:"0 0 35 40"},bounceIn:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m21.1 8.7 16 8.4V34l-16-8.4V8.7Z" clip-rule="evenodd" opacity=".5"/><path fill="currentColor" fill-rule="evenodd" d="m53.1 8.7-16 8.4V34l16-8.4V8.7Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="m21.1 8.7 16 8.4 16-8.4-16-8.7-16 8.7Z" clip-rule="evenodd" opacity=".2"/><path fill="currentColor" d="M18.9 14.3c0-.1-.1-.2-.1-.2 0-.1 0-.2-.1-.3 0-.2-.1-.4-.1-.5 0-.1-.2-.2-.3-.1-.1 0-.2.2-.1.3.1.1.1.3.1.5 0 .1 0 .2.1.3v.1c-2.1-1.3-3.7-1.7-5.2-.8-2.7 1.6-3.5 6.6-3.7 9.5-.4-1-1-2.2-1.8-3.1-.8-.9-1.8-1.4-2.8-1.5-.7-.1-1.4.1-2 .5C.5 20.6.1 25.7 0 26c0 .1.1.2.3.2l-.1.2c.2 0 .4-.3.4-.4 0-.1.4-5.2 2.7-6.6.5-.3 1-.4 1.5-.4 3.4.4 4.7 5.7 4.7 6.1v.1c0 .1.2.2.3.1.1 0 .2-.1.3-.2v-.3c0-1.5.4-9.5 3.9-11 1.1-.5 2.4-.1 4 .9-.2 0-.5-.1-.7-.2-.1 0-.2 0-.2.2 0 .1 0 .2.1.3.5.1 1.1.3 1.6.3.1 0 .1 0 .2-.1 0-.1.1-.1 0-.2.1-.3 0-.5-.1-.7Z"/>',viewBox:"0 0 54 34"},zoomIn:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m5.454 11.063 12 6.495v12.99l-12-6.495v-12.99Z" clip-rule="evenodd" opacity=".5"/><path fill="currentColor" fill-rule="evenodd" d="m29.456 11.063-12 6.495v12.99l12-6.495v-12.99Z" clip-rule="evenodd"/><path fill="currentColor" fill-rule="evenodd" d="m5.454 11.06 12 6.496 12-6.495-12-6.698-12 6.698Z" clip-rule="evenodd" opacity=".2"/><path fill="currentColor" fill-rule="evenodd" d="M31.731 3.804 34.816.718l-1.901.17c-.423.042-.508-.592-.043-.635L35.62 0c.21 0 .38.169.38.38l-.254 2.747c-.042.423-.676.38-.634-.042l.17-1.902-3.086 3.086c-.296.295-.76-.17-.465-.465Zm.465 27.927 3.086 3.085-.17-1.901c-.042-.423.592-.508.634-.043L36 35.62c0 .21-.17.38-.38.38l-2.748-.254c-.465-.042-.38-.676.043-.634l1.901.17-3.085-3.086c-.296-.296.17-.76.465-.465Zm-27.927.465-3.086 3.086 1.902-.17c.423-.042.465.592.042.634L.38 36a.379.379 0 0 1-.38-.38l.253-2.748c.043-.465.677-.38.634.043l-.169 1.901 3.086-3.085c.295-.296.76.17.465.465ZM3.804 4.269.718 1.183l.17 1.902c.042.423-.592.465-.635.042L0 .38C0 .169.169 0 .38 0l2.747.253c.423.043.38.677-.042.634L1.183.718 4.27 3.804c.295.295-.17.76-.465.465h-.001Z" clip-rule="evenodd"/>',viewBox:"0 0 36 36"},reveal:{icon:'<path fill="currentColor" d="M32.3 8.6C27 5.7 21.8 2.9 16.5 0H15.9C10.7 2.8 5.5 5.7.3 8.5c-.1 0-.1.1-.2.2s-.1.2-.1.4v16.8c0 .2.1.4.3.5 4.7 2.5 9.3 5 14 7.5.5.3 1.1.7 1.6.9.6.2 1.1-.3 1.7-.6 2.7-1.5 5.4-2.9 8.1-4.4 2.2-1.2 4.4-2.4 6.6-3.5.2-.1.3-.3.3-.5V9.3c.1-.3 0-.6-.3-.7Zm-16 8.1C11.5 14.1 6.7 11.6 1.9 9c4.8-2.6 9.5-5.2 14.3-7.8 4.8 2.6 9.6 5.2 14.5 7.9-4.8 2.5-9.6 5.1-14.4 7.6ZM1.2 25.5V10.2c4.3 2.3 8.7 4.6 13 7 .4.2.8.5 1.3.7v15.3C10.8 30.6 6 28 1.2 25.5Zm15.6 7.7V17.9c.3-.1.6-.3.9-.5 2.7-1.4 5.3-2.8 8-4.2l5.7-3v15.2c-4.9 2.6-9.8 5.2-14.6 7.8Z"/>',viewBox:"0 0 33 35"},cross:{icon:'<path d="M5 15L15 5M5 5L15 15" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 20 20"},layout:{icon:'<rect x="1" y="1" width="6.36331" height="4.19978" rx="2" fill="#C9D8ED"/><rect x="8.63626" y="10.7982" width="6.36331" height="4.19978" rx="2" fill="#C9D8ED"/><rect x="9.13626" y="1.5" width="5.36331" height="7.39956" rx="1.5" fill="#446EF5" stroke="#446EF5"/><rect x="1.5" y="7.10049" width="5.36331" height="7.39956" rx="1.5" fill="#446EF5" stroke="#446EF5"/>',viewBox:"0 0 16 16"},layoutDesign1:{icon:'<rect width="50" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign2:{icon:'<rect width="24" height="20" rx="2" fill="currentColor"/><rect x="26" width="24" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign3:{icon:'<rect width="15.3" height="20" rx="2" fill="currentColor"/><rect x="17.3" width="15.3" height="20" rx="2" fill="currentColor"/><rect x="34.6001" width="15.3" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign4:{icon:'<rect x="0.899902" width="11" height="20" rx="2" fill="currentColor"/><rect x="13.8999" width="11" height="20" rx="2" fill="currentColor"/><rect x="26.8999" width="11" height="20" rx="2" fill="currentColor"/><rect x="39.8999" width="11" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign5:{icon:'<rect x="0.899902" width="19" height="20" rx="2" fill="currentColor"/><rect x="21.8999" width="29" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign6:{icon:'<rect width="11" height="20" rx="2" fill="currentColor"/><rect x="13" width="37" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign7:{icon:'<rect width="11.3" height="20" rx="2" fill="currentColor"/><rect x="13.3" width="23.4" height="20" rx="2" fill="currentColor"/><rect x="38.7" width="11.3" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign8:{icon:'<rect width="8" height="20" rx="2" fill="currentColor"/><rect x="10" width="22" height="20" rx="2" fill="currentColor"/><rect x="34" width="16" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign9:{icon:'<rect width="8" height="20" rx="2" fill="currentColor"/><rect x="10" width="40" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},layoutDesign10:{icon:'<rect width="8" height="20" rx="2" fill="currentColor"/><rect x="10" width="11" height="20" rx="2" fill="currentColor"/><rect x="23" width="27" height="20" rx="2" fill="currentColor"/>',viewBox:"0 0 50 20"},cornerRadius:{icon:'<path d="M6.91257 2H4.40012C3.07457 2 2 3.07449 2 4.39994V6.89876M9.08743 2H11.5999C12.9254 2 14 3.07449 14 4.39994V6.89876M6.91257 14H4.40012C3.07457 14 2 12.9255 2 11.6001V9.10124M9.08743 14H11.5999C12.9254 14 14 12.9255 14 11.6001V9.10124" stroke="currentColor" stroke-width="1.25" fill="none" />',viewBox:"0 0 16 16"},roundedCorner:{icon:'<rect x="2" y="2" width="12" height="12" rx="2" stroke="currentColor" stroke-width="1.25" fill="none" />',viewBox:"0 0 16 16"},asterisk:{icon:'<path d="m13.879 9.91-3.691-2.16 3.69-2.133c.22-.11.302-.383.165-.601l-.875-1.504a.418.418 0 0 0-.602-.164L8.875 5.48V1.187A.47.47 0 0 0 8.437.75H6.66a.47.47 0 0 0-.437.438V5.48L2.53 3.348c-.219-.11-.492-.055-.601.164l-.875 1.504a.418.418 0 0 0 .164.601L4.91 7.75 1.22 9.91a.418.418 0 0 0-.164.602l.875 1.504c.11.218.383.273.601.164l3.692-2.133v4.265a.45.45 0 0 0 .437.438h1.777a.45.45 0 0 0 .438-.438v-4.265l3.691 2.133c.22.11.493.054.602-.164l.875-1.504a.418.418 0 0 0-.164-.602Z" fill="currentColor"/>',viewBox:"0 0 15 15"},timesCircle:{icon:'<path d="M13.25 7A6.25 6.25 0 1 1 .75 7a6.25 6.25 0 0 1 12.5 0Z" fill="#6F7CA3"/><path d="M9.521 4.478a.535.535 0 0 0-.756 0L7.003 6.24 5.24 4.478a.535.535 0 0 0-.757.757l1.762 1.762-1.762 1.762a.535.535 0 1 0 .757.756l1.762-1.762 1.762 1.762a.535.535 0 0 0 .756-.756L7.76 6.997l1.762-1.762a.535.535 0 0 0 0-.757Z" fill="#fff"/>',viewBox:"0 0 14 14"},settings:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M13.75 5.669V3.5a.5.5 0 0 0-1 0v2.198a2.188 2.188 0 0 0 0 4.229V16.5a.5.5 0 0 0 1 0V9.956a2.188 2.188 0 0 0 0-4.287Zm.75 2.144a1.188 1.188 0 1 0-2.375 0 1.188 1.188 0 0 0 2.375 0ZM7.125 3a.5.5 0 0 0-.5.5v6.573a2.188 2.188 0 0 0 0 4.229V16.5a.5.5 0 0 0 1 0v-2.169a2.188 2.188 0 0 0 0-4.287V3.5a.5.5 0 0 0-.5-.5Zm1.25 9.188a1.188 1.188 0 1 1-2.375 0 1.188 1.188 0 0 1 2.375 0Z" clip-rule="evenodd"/>',viewBox:"0 0 20 20"},lock:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M12.2857 4C11.2248 4 10.2074 4.42143 9.45729 5.17157C8.70714 5.92172 8.28571 6.93913 8.28571 8V10.2857C7.67951 10.2857 7.09812 10.5265 6.66947 10.9552C6.24082 11.3838 6 11.9652 6 12.5714V17.7143C6 18.3205 6.24082 18.9019 6.66947 19.3305C7.09812 19.7592 7.67951 20 8.28571 20H16.2857C16.8919 20 17.4733 19.7592 17.902 19.3305C18.3306 18.9019 18.5714 18.3205 18.5714 17.7143V12.5714C18.5714 11.9652 18.3306 11.3838 17.902 10.9552C17.4733 10.5265 16.8919 10.2857 16.2857 10.2857V8C16.2857 5.79048 14.4952 4 12.2857 4ZM15.1429 10.2857V8C15.1429 7.24224 14.8418 6.51551 14.306 5.97969C13.7702 5.44388 13.0435 5.14286 12.2857 5.14286C11.528 5.14286 10.8012 5.44388 10.2654 5.97969C9.72959 6.51551 9.42857 7.24224 9.42857 8V10.2857H15.1429Z" fill="currentColor"/>',viewBox:"0 0 24 24"},unLock:{icon:'<path d="M19.1429 4C21.3524 4 23.1429 5.79048 23.1429 8V10.8571C23.1429 11.0087 23.0827 11.154 22.9755 11.2612C22.8683 11.3684 22.723 11.4286 22.5714 11.4286C22.4199 11.4286 22.2745 11.3684 22.1674 11.2612C22.0602 11.154 22 11.0087 22 10.8571V8C22 7.24224 21.699 6.51551 21.1632 5.97969C20.6273 5.44388 19.9006 5.14286 19.1429 5.14286C18.3851 5.14286 17.6584 5.44388 17.1226 5.97969C16.5867 6.51551 16.2857 7.24224 16.2857 8V10.2857C16.8919 10.2857 17.4733 10.5265 17.902 10.9552C18.3306 11.3838 18.5714 11.9652 18.5714 12.5714V17.7143C18.5714 18.3205 18.3306 18.9019 17.902 19.3305C17.4733 19.7592 16.8919 20 16.2857 20H8.28571C7.67951 20 7.09812 19.7592 6.66947 19.3305C6.24082 18.9019 6 18.3205 6 17.7143V12.5714C6 11.9652 6.24082 11.3838 6.66947 10.9552C7.09812 10.5265 7.67951 10.2857 8.28571 10.2857H15.1429V8C15.1429 5.79048 16.9333 4 19.1429 4Z" fill="currentColor"/>',viewBox:"0 0 24 24"},link:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M13.7409 8C13.7409 6.59405 12.6011 5.4543 11.1952 5.4543H9.59733C9.23835 5.4543 8.94733 5.16328 8.94733 4.8043C8.94733 4.44531 9.23835 4.1543 9.59733 4.1543H11.1952C13.3191 4.1543 15.0409 5.87607 15.0409 8C15.0409 10.1239 13.3191 11.8457 11.1952 11.8457H9.59733C9.23835 11.8457 8.94733 11.5547 8.94733 11.1957C8.94733 10.8367 9.23835 10.5457 9.59733 10.5457H11.1952C12.6011 10.5457 13.7409 9.40595 13.7409 8ZM4.80481 5.45445C3.39886 5.45445 2.25911 6.5942 2.25911 8.00015C2.25911 9.4061 3.39886 10.5459 4.80481 10.5459H6.40266C6.76164 10.5459 7.05266 10.8369 7.05266 11.1959C7.05266 11.5548 6.76164 11.8459 6.40266 11.8459H4.80481C2.68089 11.8459 0.959106 10.1241 0.959106 8.00015C0.959106 5.87623 2.68089 4.15445 4.80481 4.15445H6.40266C6.76164 4.15445 7.05266 4.44547 7.05266 4.80445C7.05266 5.16344 6.76164 5.45445 6.40266 5.45445H4.80481ZM5.15794 7.85424C5.15794 7.49526 5.44895 7.20424 5.80794 7.20424H10.5295C10.8885 7.20424 11.1795 7.49526 11.1795 7.85424C11.1795 8.21323 10.8885 8.50424 10.5295 8.50424H5.80794C5.44895 8.50424 5.15794 8.21323 5.15794 7.85424Z" fill="currentColor"/>',viewBox:"0 0 16 16"},pageLink:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M0 1.07393C0 0.480812 0.480813 0 1.07393 0H4.96877V2.81967C4.96877 3.06785 5.16996 3.26904 5.41814 3.26904H8.28129L8.28129 6.44356H5.28067C3.46881 6.44356 2 7.91236 2 9.72423C2 10.3539 2.17738 10.9421 2.4849 11.4416H1.07393C0.480813 11.4416 0 10.9608 0 10.3677V1.07393ZM6.24727 0.134256L8.14556 2.01384C8.23273 2.10015 8.28116 2.21715 8.28116 2.33798V2.45497H5.80175V0H5.91797C6.04194 0 6.1601 0.0479487 6.24727 0.134256ZM3.78886 9.66533C3.78886 8.79111 4.49756 8.08242 5.37178 8.08242H6.71413C6.92171 8.08242 7.09 7.91413 7.09 7.70654C7.09 7.49895 6.92171 7.33067 6.71413 7.33067H5.37178C4.08238 7.33067 3.03711 8.37593 3.03711 9.66533C3.03711 10.9547 4.08238 12 5.37178 12H6.71413C6.92171 12 7.09 11.8317 7.09 11.6241C7.09 11.4165 6.92171 11.2482 6.71413 11.2482H5.37178C4.49756 11.2482 3.78886 10.5396 3.78886 9.66533ZM6.15239 9.22221C5.9448 9.22221 5.77652 9.39049 5.77652 9.59808C5.77652 9.80567 5.9448 9.97395 6.15239 9.97395H9.40064C9.60823 9.97395 9.77652 9.80567 9.77652 9.59808C9.77652 9.39049 9.60823 9.22221 9.40064 9.22221H6.15239ZM9.65229 8.08242C10.5265 8.08242 11.2352 8.79111 11.2352 9.66533C11.2352 10.5396 10.5265 11.2482 9.65229 11.2482H8.31413C8.10654 11.2482 7.93825 11.4165 7.93825 11.6241C7.93825 11.8317 8.10654 12 8.31413 12H9.65229C10.9417 12 11.987 10.9547 11.987 9.66533C11.987 8.37593 10.9417 7.33067 9.65229 7.33067H8.31413C8.10654 7.33067 7.93825 7.49895 7.93825 7.70654C7.93825 7.91413 8.10654 8.08242 8.31413 8.08242H9.65229Z" fill="currentColor"/>',viewBox:"0 0 12 12"},menuLink:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M1.87927 2.37939C1.87927 2.10325 2.10313 1.87939 2.37927 1.87939H11.4828C11.7589 1.87939 11.9828 2.10325 11.9828 2.37939C11.9828 2.65554 11.7589 2.87939 11.4828 2.87939H2.37927C2.10313 2.87939 1.87927 2.65554 1.87927 2.37939ZM1.87927 7.02177C1.87927 6.74562 2.10313 6.52177 2.37927 6.52177H11.4828C11.7589 6.52177 11.9828 6.74562 11.9828 7.02177C11.9828 7.29791 11.7589 7.52177 11.4828 7.52177H2.37927C2.10313 7.52177 1.87927 7.29791 1.87927 7.02177ZM1.87927 11.6641C1.87927 11.388 2.10313 11.1641 2.37927 11.1641H4.84323C4.80771 11.3391 4.78906 11.5201 4.78906 11.7055C4.78906 11.8618 4.80232 12.0151 4.82777 12.1641H2.37927C2.10313 12.1641 1.87927 11.9403 1.87927 11.6641ZM11.7428 10.2458C12.5697 10.2458 13.24 10.9161 13.24 11.7429C13.24 12.5698 12.5697 13.2401 11.7428 13.2401H10.4605C10.2506 13.2401 10.0805 13.4102 10.0805 13.6201C10.0805 13.8299 10.2506 14.0001 10.4605 14.0001H11.7428C12.9894 14.0001 14 12.9895 14 11.7429C14 10.4964 12.9894 9.48583 11.7428 9.48583H10.4605C10.2506 9.48583 10.0805 9.65596 10.0805 9.86583C10.0805 10.0757 10.2506 10.2458 10.4605 10.2458H11.7428ZM6.14367 11.743C6.14367 10.9161 6.81395 10.2458 7.64079 10.2458H8.92717C9.13704 10.2458 9.30717 10.0757 9.30717 9.86583C9.30717 9.65597 9.13704 9.48583 8.92717 9.48583H7.64079C6.39421 9.48583 5.38367 10.4964 5.38367 11.743C5.38367 12.9895 6.39421 14.0001 7.64079 14.0001H8.92717C9.13704 14.0001 9.30717 13.8299 9.30717 13.6201C9.30717 13.4102 9.13704 13.2401 8.92717 13.2401H7.64079C6.81395 13.2401 6.14367 12.5698 6.14367 11.743ZM8.14596 11.2669C7.93609 11.2669 7.76596 11.4371 7.76596 11.6469C7.76596 11.8568 7.93609 12.0269 8.14596 12.0269H11.2192C11.4291 12.0269 11.5992 11.8568 11.5992 11.6469C11.5992 11.4371 11.4291 11.2669 11.2192 11.2669H8.14596Z" fill="currentColor"/>',viewBox:"0 0 16 16"},chevronUp:{icon:'<path d="M5.997.955a.632.632 0 0 0-.463.194L.187 6.456A.588.588 0 0 0 0 6.884c0 .348.27.616.629.616a.667.667 0 0 0 .449-.174l4.919-4.872 4.925 4.872c.11.107.27.174.45.174a.61.61 0 0 0 .441-1.05L6.466 1.148a.659.659 0 0 0-.47-.194Z" fill="currentColor"/>',viewBox:"0 0 12 8"},markCircle:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.99992 13.6668C11.1295 13.6668 13.6666 11.1298 13.6666 8.00016C13.6666 4.87055 11.1295 2.3335 7.99992 2.3335C4.87031 2.3335 2.33325 4.87055 2.33325 8.00016C2.33325 11.1298 4.87031 13.6668 7.99992 13.6668ZM5.1887 8.28534C5.20349 8.32108 5.22483 8.35372 5.25164 8.3816L7.25948 10.382C7.28598 10.4129 7.31881 10.4378 7.35574 10.4549C7.43478 10.4875 7.52352 10.4875 7.60256 10.4549C7.63949 10.4378 7.67232 10.4129 7.69881 10.382L11.2542 6.84517C11.281 6.8173 11.3023 6.78465 11.3171 6.74891C11.3466 6.66928 11.3466 6.58173 11.3171 6.5021C11.3026 6.46621 11.2813 6.43351 11.2542 6.40584L10.8075 5.97144C10.7813 5.94142 10.7491 5.9173 10.7129 5.9007C10.6768 5.88411 10.6375 5.87541 10.5977 5.87519C10.5553 5.87467 10.5132 5.88308 10.4743 5.89987C10.4367 5.91714 10.4028 5.94143 10.3743 5.97144L7.48162 8.86412L6.134 7.51404C6.10476 7.48385 6.06999 7.45955 6.03157 7.44247C5.99272 7.42538 5.95061 7.41696 5.90817 7.41778C5.869 7.41791 5.83031 7.42632 5.79463 7.44247C5.75757 7.45878 5.72466 7.48324 5.69837 7.51404L5.25164 7.94227C5.22457 7.96993 5.20319 8.00264 5.1887 8.03853C5.15921 8.11816 5.15921 8.20571 5.1887 8.28534Z" fill="currentColor"/>',viewBox:"0 0 16 16"},marksTotal:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M5.33333 3.55551C5.08787 3.55551 4.88889 3.7545 4.88889 3.99996V12C4.88889 12.2454 5.08787 12.4444 5.33333 12.4444H10.6667C10.9121 12.4444 11.1111 12.2454 11.1111 12V6.66663H9.33333C8.59695 6.66663 8 6.06967 8 5.33329V3.55551H5.33333ZM8.88889 4.18405L10.4826 5.77774H9.33333C9.08787 5.77774 8.88889 5.57875 8.88889 5.33329V4.18405ZM4 3.99996C4 3.26358 4.59695 2.66663 5.33333 2.66663H8.44444C8.56232 2.66663 8.67536 2.71345 8.75871 2.7968L11.8698 5.90791C11.9532 5.99126 12 6.10431 12 6.22218V12C12 12.7363 11.403 13.3333 10.6667 13.3333H5.33333C4.59695 13.3333 4 12.7363 4 12V3.99996ZM6.22222 8.88885C6.22222 8.64339 6.42121 8.4444 6.66667 8.4444H8C8.24546 8.4444 8.44444 8.64339 8.44444 8.88885C8.44444 9.13431 8.24546 9.33329 8 9.33329H6.66667C6.42121 9.33329 6.22222 9.13431 6.22222 8.88885ZM6.22222 10.6666C6.22222 10.4212 6.42121 10.2222 6.66667 10.2222H9.33333C9.57879 10.2222 9.77778 10.4212 9.77778 10.6666C9.77778 10.9121 9.57879 11.1111 9.33333 11.1111H6.66667C6.42121 11.1111 6.22222 10.9121 6.22222 10.6666Z" fill="currentColor"/>',viewBox:"0 0 16 16"},crossCircle:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M8.00016 13.6667C11.1298 13.6667 13.6668 11.1297 13.6668 8.00004C13.6668 4.87043 11.1298 2.33337 8.00016 2.33337C4.87055 2.33337 2.3335 4.87043 2.3335 8.00004C2.3335 11.1297 4.87055 13.6667 8.00016 13.6667ZM10.8219 9.96066C10.8226 9.8938 10.8112 9.82736 10.7883 9.76454C10.7634 9.70414 10.7268 9.6493 10.6806 9.60323L9.07431 7.99946L10.6864 6.39684C10.7335 6.3501 10.7707 6.2944 10.796 6.23302C10.8212 6.17163 10.834 6.10581 10.8335 6.03941C10.8347 5.90044 10.782 5.76643 10.6864 5.66574L10.3297 5.30831C10.2798 5.2614 10.2211 5.22474 10.1571 5.20039C10.0947 5.17809 10.0289 5.16671 9.96257 5.16674C9.89585 5.16607 9.82954 5.17747 9.76685 5.20039C9.70643 5.22502 9.65165 5.26174 9.60588 5.30831L8.00537 6.91789L6.39907 5.30831C6.35293 5.2611 6.29726 5.22431 6.23578 5.20039C6.17416 5.17797 6.10909 5.16658 6.04353 5.16674C5.97607 5.16631 5.90905 5.1777 5.8455 5.20039C5.78249 5.22534 5.72474 5.26195 5.67525 5.30831L5.31971 5.66574C5.27197 5.71595 5.23528 5.77565 5.21201 5.84097C5.18981 5.90477 5.17845 5.97185 5.17843 6.03941C5.17767 6.10591 5.18905 6.17198 5.21201 6.23437C5.23602 6.29556 5.27274 6.35094 5.31971 6.39684L6.91443 7.99946L5.31392 9.60323C5.26686 9.64997 5.2296 9.70567 5.20434 9.76706C5.17909 9.82844 5.16634 9.89427 5.16684 9.96066C5.16708 10.0278 5.17964 10.0942 5.2039 10.1568C5.22871 10.2226 5.26608 10.2829 5.31392 10.3343L5.67062 10.6918C5.72015 10.7386 5.77838 10.7753 5.84202 10.7997C5.90484 10.8221 5.97106 10.8335 6.03774 10.8333C6.1041 10.8341 6.17004 10.8227 6.23231 10.7997C6.29308 10.7751 6.34824 10.7384 6.39444 10.6918L7.99379 9.07638L9.60009 10.6894C9.64672 10.7366 9.70276 10.7734 9.76454 10.7974C9.82613 10.8199 9.89122 10.8313 9.95679 10.831C10.0243 10.8314 10.0913 10.8201 10.1548 10.7974C10.2176 10.7727 10.275 10.736 10.3239 10.6894L10.6806 10.332C10.728 10.2815 10.7646 10.2219 10.7883 10.1568C10.8101 10.0937 10.8214 10.0274 10.8219 9.96066Z" fill="currentColor"/>',viewBox:"0 0 16 16"},sortBy:{icon:'<path d="M14.1667 16.6668L10.8333 13.3335M5.83333 13.3335V3.3335V13.3335ZM5.83333 3.3335L2.5 6.66683L5.83333 3.3335ZM5.83333 3.3335L9.16667 6.66683L5.83333 3.3335ZM14.1667 6.66683V16.6668V6.66683ZM14.1667 16.6668L17.5 13.3335L14.1667 16.6668Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 20 20"},chevronLeft:{icon:'<path d="M15.75 19.5 8.25 12l7.5-7.5" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none" />',viewBox:"0 0 24 24"},chevronRight:{icon:'<path d="m8.25 4.5 7.5 7.5-7.5 7.5" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" fill="none" />',viewBox:"0 0 24 24"},primary:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M2.91699 10.0004C2.91699 6.09462 6.09458 2.91699 10.0003 2.91699C13.9061 2.91699 17.0837 6.09462 17.0837 10.0004C17.0837 13.9061 13.9061 17.0837 10.0003 17.0837C6.09458 17.0837 2.91699 13.9061 2.91699 10.0004ZM4.20448 10.0006C4.20448 13.1962 6.80428 15.796 9.99993 15.796C13.1955 15.796 15.7954 13.1962 15.7954 10.0006C15.7954 6.80501 13.1956 4.20513 9.99993 4.20513C6.80428 4.20513 4.20448 6.80501 4.20448 10.0006ZM10.0001 5.92213C9.52679 5.92213 9.14171 6.30747 9.14171 6.78111C9.14171 7.25432 9.52679 7.63931 10.0001 7.63931C10.4735 7.63931 10.8585 7.25432 10.8585 6.78111C10.8585 6.30747 10.4735 5.92213 10.0001 5.92213ZM9.35615 9.571C9.35615 9.21537 9.64446 8.92706 10.0001 8.92706C10.3557 8.92706 10.644 9.21537 10.644 9.571V13.4346C10.644 13.7903 10.3557 14.0786 10.0001 14.0786C9.64446 14.0786 9.35615 13.7903 9.35615 13.4346V9.571Z" fill="currentColor"/>',viewBox:"0 0 20 20"},warning:{icon:'<g clip-path="url(#clip0_33239_17064)"><path d="M14.4 18V18.6C14.5591 18.6 14.7117 18.5368 14.8243 18.4243C14.9368 18.3117 15 18.1591 15 18H14.4ZM9.6 18H9C9 18.1591 9.06321 18.3117 9.17574 18.4243C9.28826 18.5368 9.44087 18.6 9.6 18.6V18ZM10.2 20.4C10.2 20.7314 10.4686 21 10.8 21H13.2C13.5314 21 13.8 20.7314 13.8 20.4C13.8 20.0686 13.5314 19.8 13.2 19.8H10.8C10.4686 19.8 10.2 20.0686 10.2 20.4ZM7.296 10.68L7.284 10.764L8.472 10.932L8.4852 10.848L7.296 10.68ZM12 6.6C10.8561 6.59981 9.75052 7.01236 8.88637 7.76188C8.02222 8.5114 7.45752 9.54755 7.296 10.68L8.4852 10.848C8.60624 10.0018 9.02726 9.22771 9.67315 8.6678C10.319 8.10789 11.1452 7.79976 12 7.8V6.6ZM16.704 10.68C16.5425 9.54755 15.9778 8.5114 15.1136 7.76188C14.2495 7.01236 13.1439 6.59981 12 6.6V7.8C12.8547 7.80001 13.6808 8.10823 14.3266 8.66809C14.9724 9.22796 15.3947 10.0019 15.516 10.848L16.704 10.68ZM16.716 10.764L16.704 10.68L15.516 10.848L15.5268 10.932L16.716 10.764ZM15.768 14.3508C16.524 13.374 16.9056 12.102 16.716 10.764L15.528 10.9332C15.5967 11.4051 15.5694 11.886 15.4478 12.347C15.3261 12.8081 15.1126 13.2399 14.82 13.6164L15.768 14.3508ZM13.8 16.08V18H15V16.0812L13.8 16.08ZM14.4 17.4H9.6V18.6H14.4V17.4ZM10.2 18V16.0812H9V18H10.2ZM7.284 10.764C7.19278 11.3949 7.22972 12.0377 7.3926 12.654C7.55549 13.2703 7.84098 13.8474 8.232 14.3508L9.1812 13.6164C8.88861 13.2399 8.67388 12.8081 8.55222 12.347C8.43056 11.886 8.40328 11.4039 8.472 10.932L7.284 10.764ZM10.2 16.08C10.2 15.0924 9.6744 14.2524 9.18 13.6152L8.232 14.3508C8.6916 14.9448 9 15.5112 9 16.08H10.2ZM14.82 13.6152C14.3244 14.2536 13.8 15.0924 13.8 16.08H15C15 15.5112 15.3084 14.9448 15.768 14.3508L14.82 13.6152ZM12 3C11.6686 3 11.4 3.26863 11.4 3.6V4.8C11.4 5.13137 11.6686 5.4 12 5.4C12.3314 5.4 12.6 5.13137 12.6 4.8V3.6C12.6 3.26863 12.3314 3 12 3ZM3 12C3 12.3314 3.26863 12.6 3.6 12.6H4.8C5.13137 12.6 5.4 12.3314 5.4 12C5.4 11.6686 5.13137 11.4 4.8 11.4H3.6C3.26863 11.4 3 11.6686 3 12ZM18.6 12C18.6 12.3314 18.8686 12.6 19.2 12.6H20.4C20.7314 12.6 21 12.3314 21 12C21 11.6686 20.7314 11.4 20.4 11.4H19.2C18.8686 11.4 18.6 11.6686 18.6 12ZM6.6 7.8C6.83461 7.56539 6.83461 7.18501 6.6 6.9504L5.6496 6C5.41499 5.76539 5.03461 5.76539 4.8 6C4.56539 6.23461 4.56539 6.61499 4.8 6.8496L5.7504 7.8C5.98501 8.03461 6.36539 8.03461 6.6 7.8ZM17.4 7.8C17.6346 8.03461 18.015 8.03461 18.2496 7.8L19.2 6.8496C19.4346 6.61499 19.4346 6.23461 19.2 6C18.9654 5.76539 18.585 5.76539 18.3504 6L17.4 6.9504C17.1654 7.18501 17.1654 7.56539 17.4 7.8Z" fill="currentColor"/></g><defs><clipPath id="clip0_33239_17064"><rect width="18" height="18" fill="white" transform="translate(3 3)"/></clipPath></defs>',viewBox:"0 0 24 24"},arrowUpDown:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m14.667 16.667-3.334-3.334m-5 0v-10 10Zm0-10L3 6.668l3.333-3.333Zm0 0 3.334 3.334-3.334-3.333Zm8.334 3.334v10-10Zm0 10L18 13.333l-3.333 3.334Z"/>',viewBox:"0 0 24 24"},bars:{icon:'<path d="M0.6 3.4V0.6H15.4V3.4H0.6ZM0.6 8.9V6.1H15.4V8.9H0.6ZM0.6 14.4V11.6H15.4V14.4H0.6Z" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round" fill="none" />',viewBox:"0 0 16 15"},verticalBars:{icon:'<path d="M16.8748 3.1C16.8886 3.1 16.8998 3.11119 16.8998 3.125L16.8998 17.875C16.8998 17.8888 16.8886 17.9 16.8748 17.9L14.1248 17.9C14.1109 17.9 14.0998 17.8888 14.0998 17.875L14.0998 3.125C14.0998 3.11119 14.111 3.1 14.1248 3.1L16.8748 3.1ZM11.3743 3.1C11.3881 3.1 11.3993 3.11119 11.3993 3.125L11.3993 17.875C11.3993 17.8888 11.3881 17.9 11.3743 17.9H8.62427C8.61046 17.9 8.59927 17.8888 8.59927 17.875L8.59927 3.125C8.59927 3.11119 8.61046 3.1 8.62427 3.1L11.3743 3.1ZM5.875 3.1C5.88881 3.1 5.9 3.11119 5.9 3.125L5.9 17.875C5.9 17.8888 5.88881 17.9 5.875 17.9H3.125C3.11119 17.9 3.1 17.8888 3.1 17.875L3.1 3.125C3.1 3.11119 3.11119 3.1 3.125 3.1L5.875 3.1Z" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round" fill="none"/>',viewBox:"0 0 20 20"},upload:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.50052 2.5C6.94744 2.49995 6.40036 2.61464 5.89385 2.83683C5.38734 3.05902 4.93241 3.38388 4.55782 3.79087C4.18322 4.19786 3.89711 4.67814 3.71754 5.20137C3.53798 5.72459 3.46887 6.27937 3.5146 6.83067C2.79373 7.1685 2.20958 7.74207 1.85856 8.45672C1.50754 9.17136 1.41063 9.98435 1.58383 10.7615C1.75704 11.5386 2.18999 12.2335 2.81125 12.7314C3.4325 13.2292 4.20491 13.5004 5.00099 13.5H12.4996C13.1629 13.5002 13.8076 13.2805 14.3328 12.8752C14.858 12.4699 15.2341 11.9019 15.4021 11.2601C15.5702 10.6182 15.5208 9.93881 15.2617 9.32806C15.0025 8.71731 14.5483 8.2097 13.97 7.88467C14.0293 7.50429 13.9999 7.11535 13.8842 6.74819C13.7685 6.38102 13.5696 6.04554 13.303 5.76789C13.0363 5.49025 12.7092 5.27794 12.3471 5.14752C11.9849 5.0171 11.5976 4.97209 11.2152 5.016C10.9184 4.27328 10.4059 3.63658 9.74371 3.18809C9.08156 2.73961 8.30021 2.49993 7.50052 2.5ZM8.8536 6.14667C8.75987 6.05303 8.63281 6.00044 8.50034 6.00044C8.36786 6.00044 8.2408 6.05303 8.14707 6.14667L6.14744 8.14667C6.09833 8.19244 6.05893 8.24764 6.03161 8.30897C6.00428 8.37031 5.98959 8.43652 5.98841 8.50365C5.98722 8.57079 5.99957 8.63747 6.02471 8.69973C6.04986 8.76199 6.08728 8.81855 6.13475 8.86602C6.18222 8.9135 6.23877 8.95093 6.30101 8.97608C6.36326 9.00123 6.42993 9.01358 6.49706 9.01239C6.56418 9.01121 6.63038 8.99652 6.6917 8.96919C6.75302 8.94186 6.80821 8.90246 6.85398 8.85333L8.00043 7.70667V11C8.00043 11.1326 8.0531 11.2598 8.14685 11.3536C8.2406 11.4473 8.36775 11.5 8.50034 11.5C8.63292 11.5 8.76007 11.4473 8.85382 11.3536C8.94757 11.2598 9.00024 11.1326 9.00024 11V7.70667L10.1467 8.85333C10.1925 8.90246 10.2477 8.94186 10.309 8.96919C10.3703 8.99652 10.4365 9.01121 10.5036 9.01239C10.5707 9.01358 10.6374 9.00123 10.6997 8.97608C10.7619 8.95093 10.8185 8.9135 10.8659 8.86602C10.9134 8.81855 10.9508 8.76199 10.976 8.69973C11.0011 8.63747 11.0134 8.57079 11.0123 8.50365C11.0111 8.43652 10.9964 8.37031 10.9691 8.30897C10.9417 8.24764 10.9023 8.19244 10.8532 8.14667L8.8536 6.14667Z" fill="currentColor"/>',viewBox:"0 0 16 16"},downloadCloud:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M14 5a8 8 0 0 0-7.974 8.661A7 7 0 0 0 8.999 27h15a6 6 0 0 0 2.942-11.23 5 5 0 0 0-5.511-5.738A8.001 8.001 0 0 0 14 5Zm3 8a1 1 0 0 0-2 0v6.587l-2.294-2.294a1 1 0 0 0-1.413 1.414l4 4a1 1 0 0 0 1.413 0l4-4a1 1 0 1 0-1.413-1.414l-2.294 2.294V13Z" fill="currentColor"/>',viewBox:"0 0 32 32"},circleCross:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8.5 13.667a5.667 5.667 0 1 0 0-11.334 5.667 5.667 0 0 0 0 11.334ZM11.32 9.96a.556.556 0 0 0-.033-.197.492.492 0 0 0-.108-.16L9.574 7.998l1.612-1.602a.498.498 0 0 0 .147-.358.535.535 0 0 0-.147-.373l-.357-.358a.524.524 0 0 0-.367-.141.479.479 0 0 0-.357.142l-1.6 1.609-1.606-1.61a.463.463 0 0 0-.164-.108.578.578 0 0 0-.39 0 .54.54 0 0 0-.17.108l-.356.358a.496.496 0 0 0-.107.175.605.605 0 0 0 0 .393c.024.061.06.117.107.163l1.595 1.602-1.6 1.604a.498.498 0 0 0-.148.358.548.548 0 0 0 .147.373l.357.358a.52.52 0 0 0 .367.141c.067.001.133-.01.195-.033a.484.484 0 0 0 .162-.108l1.6-1.616L10.1 10.69a.47.47 0 0 0 .164.108.578.578 0 0 0 .39 0 .522.522 0 0 0 .17-.108l.356-.357a.512.512 0 0 0 .108-.175.615.615 0 0 0 .033-.196Z" clip-rule="evenodd" opacity=".9"/>',viewBox:"0 0 17 16"},search:{icon:'<path d="M17.8178 16.9381L13.913 13.0334C14.8836 11.8662 15.4683 10.3674 15.4683 8.73438C15.4683 5.02103 12.4474 2 8.7342 2C5.02094 2 2 5.02103 2 8.73438C2 12.4475 5.02094 15.4683 8.7342 15.4683C10.3672 15.4683 11.866 14.8836 13.0332 13.913L16.9381 17.8178C17.0595 17.9393 17.2187 18 17.3779 18C17.5371 18 17.6963 17.9393 17.8178 17.8178C18.0608 17.5748 18.0608 17.181 17.8178 16.9381ZM3.24414 8.73438C3.24414 5.70705 5.70696 3.24414 8.7342 3.24414C11.7614 3.24414 14.2241 5.70705 14.2241 8.73438C14.2241 11.7615 11.7614 14.2241 8.7342 14.2241C5.70696 14.2241 3.24414 11.7615 3.24414 8.73438Z" fill="currentColor"/>',viewBox:"0 0 20 20"},key:{icon:'<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M12.695 5.15a2.155 2.155 0 0 1 2.154 2.155m2.155 0a4.31 4.31 0 0 1-5.048 4.246c-.404-.07-.832.018-1.122.309l-1.91 1.908H7.31v1.616H5.693V17H3v-2.024c0-.428.17-.84.473-1.142L8.14 9.167c.29-.29.379-.719.31-1.123a4.309 4.309 0 1 1 8.554-.739Z"/>',viewBox:"0 0 20 20"},questionCircle:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M.875 9A8.125 8.125 0 0 1 9 .875 8.125 8.125 0 0 1 17.125 9 8.125 8.125 0 0 1 9 17.125 8.125 8.125 0 0 1 .875 9Zm9.482-3.264c-.742-.648-1.972-.648-2.713 0a.625.625 0 0 1-.823-.941c1.212-1.06 3.146-1.06 4.358 0 1.261 1.103 1.261 2.932 0 4.035-.21.184-.445.339-.697.46-.564.273-.857.645-.857.96v.625a.625.625 0 1 1-1.25 0v-.625c0-1.066.883-1.756 1.563-2.085a1.9 1.9 0 0 0 .419-.276c.691-.606.691-1.547 0-2.153ZM9 14a.625.625 0 1 0 0-1.25A.625.625 0 0 0 9 14Z" fill="currentColor"/>',viewBox:"0 0 18 18"},colorBrush:{icon:'<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M7.942 13.435a2.5 2.5 0 0 0-4.817.94 1.875 1.875 0 0 1-2 1.871 3.75 3.75 0 0 0 7-1.87c0-.333-.065-.65-.183-.94Zm0 0c.99-.337 1.938-.79 2.823-1.35m-4.203-.02c.338-.994.792-1.943 1.352-2.83m2.85 2.85a13.328 13.328 0 0 0 3.97-3.873l3.23-4.845a.96.96 0 0 0-1.33-1.33l-4.846 3.23a13.33 13.33 0 0 0-3.874 3.97 5.647 5.647 0 0 1 2.85 2.85"/>',viewBox:"0 0 20 20"},colorPaint:{icon:'<path fill="currentColor" d="M13.598 2.391C12.107.857 10.096-.002 8 0h-.082C5.81.023 3.796.91 2.314 2.467.83 4.025 0 6.128 0 8.32c0 3.44 2.045 6.325 5.335 7.534.371.136.769.178 1.158.122.39-.057.761-.21 1.082-.446.322-.237.584-.55.765-.913.18-.364.275-.767.275-1.176 0-.34.13-.666.36-.905.232-.24.545-.375.871-.375H13.4c.559.002 1.101-.194 1.538-.556a2.56 2.56 0 0 0 .862-1.435c.138-.63.205-1.274.2-1.92a8.548 8.548 0 0 0-.637-3.18 8.284 8.284 0 0 0-1.765-2.679Zm1 7.497a1.279 1.279 0 0 1-.431.715c-.218.18-.488.279-.767.277H9.846c-.653 0-1.279.27-1.74.75a2.613 2.613 0 0 0-.722 1.81c0 .205-.047.407-.138.588-.09.181-.221.338-.382.456a1.187 1.187 0 0 1-1.12.162C2.962 13.625 1.232 11.2 1.232 8.32c0-1.854.703-3.634 1.958-4.952a6.644 6.644 0 0 1 4.74-2.088H8a6.666 6.666 0 0 1 4.759 2.049 7.21 7.21 0 0 1 2.01 4.931 7.381 7.381 0 0 1-.168 1.628h-.003ZM8.922 4.16c0 .19-.054.376-.156.534a.932.932 0 0 1-.414.353.89.89 0 0 1-.533.055.913.913 0 0 1-.473-.263.996.996 0 0 1-.2-1.046.953.953 0 0 1 .34-.431.898.898 0 0 1 1.166.12.98.98 0 0 1 .27.678ZM5.538 6.08c0 .19-.054.376-.155.534a.932.932 0 0 1-.414.353.89.89 0 0 1-.534.055.913.913 0 0 1-.472-.263.996.996 0 0 1-.2-1.046.953.953 0 0 1 .34-.431.898.898 0 0 1 1.165.12.98.98 0 0 1 .27.678Zm0 4.48c0 .19-.054.376-.155.534a.933.933 0 0 1-.414.354.89.89 0 0 1-1.006-.209.996.996 0 0 1-.2-1.046.953.953 0 0 1 .34-.43.898.898 0 0 1 1.165.119.98.98 0 0 1 .27.678Zm6.77-4.48c0 .19-.055.376-.156.534a.932.932 0 0 1-.414.353.89.89 0 0 1-.534.055.913.913 0 0 1-.472-.263.972.972 0 0 1-.253-.491.997.997 0 0 1 .053-.555.953.953 0 0 1 .34-.431.898.898 0 0 1 1.165.12.98.98 0 0 1 .27.678Z"/>',viewBox:"0 0 16 16"},plus:{icon:'<path d="M8.5 3V13V3ZM13.5 8H3.5H13.5Z" fill="currentColor"/><path d="M8.5 3V13M13.5 8H3.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 16 16"},stepAdditon:{icon:'<rect width="14" height="6.178" fill="currentColor" rx=".583"/><rect width="10.862" height="2" x="1.569" y="8.178" fill="currentColor" rx=".583"/>',viewBox:"0 0 14 11"},broom:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M20.0215 40.1489C31.0672 40.1489 40.0215 31.1946 40.0215 20.1489C40.0215 9.10323 31.0672 0.148926 20.0215 0.148926C8.97579 0.148926 0.0214844 9.10323 0.0214844 20.1489C0.0214844 31.1946 8.97579 40.1489 20.0215 40.1489ZM15.7985 18.1171H14.5373V16.8559H13.2761V18.1171H12.0149V19.3783H13.2761V20.6395H14.5373V19.3783H15.7985V18.1171ZM13.2761 23.1619H12.0149V21.9007H10.7537V23.1619H9.49247V24.4231H10.7537V25.6844H12.0149V24.4231H13.2761V23.1619ZM17.6903 20.0089H27.1494V19.3783C27.1494 19.0438 27.0166 18.723 26.78 18.4865C26.5435 18.25 26.2227 18.1171 25.8882 18.1171H23.3658V10.5498H21.474V18.1171H18.9516C18.6171 18.1171 18.2963 18.25 18.0597 18.4865C17.8232 18.723 17.6903 19.0438 17.6903 19.3783V20.0089ZM24.0046 27.5762H26.5188C27.2037 25.1604 27.1789 23.2247 27.1567 21.4976C27.1557 21.4214 27.1548 21.3456 27.1539 21.2701H17.6721C17.5838 23.4835 17.0534 25.5992 16.4291 27.5762H18.8431C19.2902 26.687 19.5822 25.3016 19.5822 24.4231C19.5822 24.2559 19.6486 24.0955 19.7669 23.9772C19.8851 23.859 20.0455 23.7925 20.2128 23.7925C20.38 23.7925 20.5404 23.859 20.6587 23.9772C20.7769 24.0955 20.8434 24.2559 20.8434 24.4231C20.8434 25.178 20.646 26.4745 20.221 27.5762H22.6267C23.0738 26.687 23.3658 25.3016 23.3658 24.4231C23.3658 24.2559 23.4322 24.0955 23.5505 23.9772C23.6688 23.859 23.8292 23.7925 23.9964 23.7925C24.1637 23.7925 24.3241 23.859 24.4423 23.9772C24.5606 24.0955 24.627 24.2559 24.627 24.4231C24.627 25.178 24.4296 26.4745 24.0046 27.5762Z" fill="currentColor"/>',viewBox:"0 0 40 40"},media:{icon:'<g fill="currentColor" clip-path="url(#a)"><path d="M6.087 5.519h4.754c.417 0 .673.167.805.529.027.07.041.153.041.229.003 2.42.003 4.839 0 7.258 0 .41-.34.75-.755.768h-9.61c-.403 0-.703-.224-.803-.597a.573.573 0 0 1-.018-.159c0-2.425-.003-4.85 0-7.273 0-.406.324-.744.732-.747 1.35-.006 2.7-.006 4.048-.006.268-.002.535-.002.806-.002Zm-2.41 4.768c-.05.047-.092.082-.13.12-.344.341-.685.682-1.026 1.027-.156.155-.362.293-.441.482-.076.182-.012.423-.026.637-.01.147.035.192.185.192 2.566-.006 5.136-.003 7.702 0 .138 0 .185-.036.185-.18-.006-.702-.006-1.408 0-2.11a.333.333 0 0 0-.106-.256c-.737-.738-1.47-1.476-2.204-2.214-.036-.035-.08-.068-.13-.112-1.073 1.07-2.131 2.132-3.201 3.202-.27-.268-.535-.523-.809-.788ZM2.87 7.085a.81.81 0 0 0-.815.806.83.83 0 0 0 .82.835c.45 0 .818-.368.82-.817a.806.806 0 0 0-.825-.824Z"/><path d="M10.109 1.506h5.603a.765.765 0 0 1 .788.77v8.052a.744.744 0 0 1-.744.75c-1.026.006-2.055.003-3.08.006-.124 0-.145-.05-.145-.159.003-.788.003-1.573.003-2.36V3.27c0-.203 0-.203-.208-.203h-4.43c-.221 0-.221 0-.221.23 0 .405-.003.81.003 1.216.003.124-.03.17-.165.17a379.136 379.136 0 0 0-3.654 0c-.135 0-.162-.046-.162-.17.006-.723.003-1.446.003-2.17a.812.812 0 0 1 .832-.843c1.861.012 3.719.006 5.577.006ZM6.311 3.678V3.37c-.003-.215-.088-.303-.3-.306-.215-.003-.43-.003-.647 0-.194 0-.29.085-.3.28-.011.229-.006.458 0 .687.003.141.074.256.227.262.267.012.535.015.802 0 .144-.009.22-.112.218-.265-.003-.114 0-.232 0-.35Zm8.834 2.623V5.948c-.009-.182-.094-.268-.276-.27-.22-.003-.441-.003-.662 0-.212 0-.306.085-.312.296-.005.215-.005.43 0 .644.006.191.086.288.271.3.238.015.48.015.717 0 .18-.012.253-.112.259-.294.006-.109.003-.217.003-.323Zm0-2.605c0-.118.003-.235 0-.353-.006-.185-.1-.276-.285-.279a24.59 24.59 0 0 0-.659 0c-.188 0-.288.08-.297.268-.011.238-.008.479-.003.717.006.135.077.24.224.247.267.009.535.012.802.003.142-.006.212-.112.218-.25.003-.118 0-.235 0-.353Zm-.632 5.82h.364c.165-.002.26-.081.265-.246.009-.244.006-.488 0-.732-.006-.156-.097-.247-.25-.25-.25-.006-.497-.003-.747 0-.126.003-.226.074-.232.2a8.683 8.683 0 0 0 0 .829c.006.13.106.2.244.197.12 0 .238.003.356.003Z" opacity=".4"/></g><defs><clipPath id="a"><path fill="#fff" d="M.5 0h16v16H.5z"/></clipPath></defs>',viewBox:"0 0 17 16"},mediaJson:{icon:'<g fill="currentColor" clip-path="url(#b)"><path fill-rule="evenodd" d="M59.33 39.682a3.111 3.111 0 0 1-3.103-3.102V19H30.375a3.095 3.095 0 0 0-3.102 3.102V63h-.003v1.3h.003v17.78a3.095 3.095 0 0 0 3.102 3.102h43.431a3.095 3.095 0 0 0 3.103-3.103V64.3h.001V63h-.001V39.682h-17.58ZM76.908 63H27.272v1.3H76.91V63Zm-30.69-5c-2.157 0-3.171-1.015-3.171-3.145v-2.039c0-1.207-.339-1.737-1.298-1.902-.567-.1-.75-.375-.75-.923 0-.512.21-.814.75-.905.96-.174 1.298-.695 1.298-1.902v-2.039c0-2.13 1.014-3.145 3.172-3.145.155 0 .292.027.402.073.256.11.393.33.393.594 0 .311-.137.494-.43.576a2.131 2.131 0 0 1-.274.046c-1.243.119-1.764.594-1.764 2.057v2.405c0 1.316-.658 2.002-2.002 2.14v.219c1.344.137 2.002.823 2.002 2.14v2.404c0 1.463.52 1.938 1.764 2.057.1.009.192.027.274.046.293.082.43.265.43.576a.622.622 0 0 1-.393.594c-.11.046-.247.073-.402.073Zm5.794-11.067c0 .54-.448.987-.996.987a.995.995 0 0 1-.988-.987.99.99 0 0 1 .987-.987c.549 0 .997.438.997.987Zm-.201 6.417c0 .503-.33.85-.795.85-.467 0-.796-.347-.796-.85v-3.144c0-.503.33-.85.796-.85s.795.347.795.85v3.144Zm7.14 1.505v-2.039c0-1.207.339-1.737 1.298-1.902.567-.1.75-.375.75-.923 0-.512-.21-.814-.75-.905-.96-.174-1.298-.695-1.298-1.902v-2.039c0-2.13-1.014-3.145-3.172-3.145-.155 0-.292.027-.402.073a.622.622 0 0 0-.393.594c0 .311.137.494.43.576.082.019.173.037.274.046 1.243.119 1.764.594 1.764 2.057v2.405c0 1.316.658 2.002 2.002 2.14v.219c-1.344.137-2.002.823-2.002 2.14v2.404c0 1.463-.52 1.938-1.764 2.057-.1.009-.192.027-.274.046-.293.082-.43.265-.43.576 0 .265.137.484.393.594.11.046.247.073.402.073 2.158 0 3.172-1.015 3.172-3.145ZM40 76.755c0 1.94-1.142 3.082-3.077 3.082-1.825 0-2.891-1.114-2.973-2.686l-.007-.082h1.51l.008.061c.061.752.533 1.34 1.449 1.34 1.011 0 1.558-.602 1.558-1.73V69.81H40v6.945Zm5.702 3.082c2.338 0 3.76-1.141 3.76-2.94v-.006c0-1.525-.876-2.352-2.913-2.782l-1.08-.226c-1.23-.266-1.79-.718-1.79-1.456v-.007c0-.861.779-1.442 2.002-1.45 1.17 0 1.962.555 2.099 1.47l.007.096h1.49l-.007-.116c-.102-1.654-1.51-2.775-3.568-2.775-2.085 0-3.569 1.155-3.575 2.837v.007c0 1.462.936 2.351 2.87 2.761l1.074.226c1.306.287 1.846.718 1.846 1.51v.007c0 .923-.834 1.518-2.154 1.518-1.32 0-2.228-.567-2.365-1.477l-.014-.088h-1.49l.007.102c.123 1.736 1.586 2.79 3.8 2.79Zm14.527-5.093c0 3.131-1.77 5.093-4.621 5.093-2.844 0-4.621-1.955-4.621-5.093v-.013c0-3.131 1.784-5.086 4.62-5.086 2.845 0 4.622 1.962 4.622 5.086v.013Zm-7.684 0c0 2.297 1.19 3.74 3.063 3.74 1.894 0 3.056-1.463 3.056-3.74v-.013c0-2.29-1.183-3.733-3.056-3.733-1.866 0-3.063 1.436-3.063 3.733v.013Zm9.647 4.93h1.517v-7.309h.041l5.08 7.308h1.408V69.81h-1.518v7.294h-.04l-5.073-7.294h-1.415v9.864Z" clip-rule="evenodd"/><path d="M76.818 34.666v.789H60.273V18.909h.788a3.1 3.1 0 0 1 2.197.905l12.655 12.668c.582.581.905 1.37.905 2.184Z" opacity=".4"/></g><defs><clipPath id="b"><path fill="#fff" d="M18.91 18.91H85.09V85.09H18.91z"/></clipPath>',viewBox:"0 0 104 104"},mediaVideo:{icon:'<rect width="51.212" height="47.273" x="13" y="28.363" fill="currentColor" rx="4"/><path fill="currentColor" fill-rule="evenodd" d="M88.374 31.777c1.26-1.26 3.414-.367 3.414 1.414v37.616c0 1.782-2.154 2.674-3.414 1.414L69.566 53.413a2 2 0 0 1 0-2.828l18.808-18.808Z" clip-rule="evenodd" opacity=".4"/>',viewBox:"0 0 104 104"},mediaMusic:{icon:'<g clip-path="url(#c)"><path fill="currentColor" d="M78.535 25.312a1.97 1.97 0 0 0-1.508-.483l-34.948 3.883a1.941 1.941 0 0 0-1.728 1.93v34.6a11.234 11.234 0 0 0-5.825-1.594c-5.353 0-9.708 3.484-9.708 7.767s4.355 7.766 9.708 7.766 9.708-3.481 9.708-7.766V42.097l31.065-3.46v22.717a11.234 11.234 0 0 0-5.825-1.589c-5.353 0-9.708 3.483-9.708 7.767 0 4.283 4.355 7.766 9.708 7.766s9.708-3.481 9.708-7.766V26.759c0-.552-.235-1.078-.647-1.447Z"/></g><defs><clipPath id="c"><path fill="#fff" d="M24.818 24.818h54.364v54.364H24.818z"/></clipPath>',viewBox:"0 0 104 104"},mediaZip:{icon:'<g fill="currentColor" clip-path="url(#d)"><path d="M75.06 33.178 62.857 20.963a2.99 2.99 0 0 0-2.12-.872h-.76v15.954h15.955v-.76c0-.785-.311-1.546-.872-2.106Z" opacity=".4"/><path fill-rule="evenodd" d="M55.989 37.042a3 3 0 0 0 2.991 2.992h16.952v40.884a2.984 2.984 0 0 1-2.992 2.991H31.06a2.984 2.984 0 0 1-2.992-2.992V23.083a2.984 2.984 0 0 1 2.992-2.991h13.013v3.988h3.988v-3.988h7.928v16.951ZM44.01 24.08h-3.988v3.99h3.988v-3.99Zm-6.369 40.024c-.823 4.05 2.269 7.84 6.407 7.84 4.113 0 7.204-3.764 6.407-7.803L48.298 53.21a1.507 1.507 0 0 0-1.47-1.21h-2.755v-3.988h3.988v-3.988h-3.988v-3.989h3.988v-3.989h-3.988v-3.988h3.988v-3.989h-3.988v3.989h-3.989v3.988h3.989v3.989h-3.989v3.989h3.989v3.988h-3.989V52l-2.443 12.103Zm2.393 1.234c0-1.857 1.808-3.366 4.039-3.366 2.23 0 4.05 1.509 4.05 3.366 0 1.857-1.807 3.365-4.038 3.365-2.23 0-4.05-1.495-4.05-3.365Z" clip-rule="evenodd"/></g><defs><clipPath id="d"><path fill="#fff" d="M20.09 20.09H83.91V83.91H20.09z"/></clipPath>',viewBox:"0 0 104 104"},mediaPdf:{icon:'<path fill="currentColor" d="M75.355 33.178 63.139 20.963a2.99 2.99 0 0 0-2.119-.872h-.748v15.954h15.955v-.76c0-.785-.312-1.546-.873-2.106Z" opacity=".4"/><path fill="currentColor" fill-rule="evenodd" d="M59.275 40.034a3 3 0 0 1-2.991-2.992V20.091h-24.93a2.984 2.984 0 0 0-2.99 2.991v57.835a2.984 2.984 0 0 0 2.99 2.992h41.881a2.984 2.984 0 0 0 2.992-2.992V40.035H59.275Zm5.721 27.721c-2.106 0-5.272-.96-7.977-2.43-2.514.413-5.307 1.36-7.987 2.267-.628.213-1.25.423-1.86.624-3.166 5.46-5.384 7.703-7.616 7.703-.685 0-1.981-.386-2.68-1.246-2.38-2.93 3.416-6.743 6.794-8.476.006 0 .009-.003.012-.006.003-.003.006-.007.013-.007 1.508-2.642 3.64-7.254 5.085-10.694-1.06-4.1-1.633-7.317-1.01-9.598.674-2.455 5.373-2.817 5.958.848.656 2.137-.167 5.518-.729 7.823l-.043.18c1.171 3.09 2.83 5.184 5.322 6.705 2.406-.312 7.441-.798 9.174.897 1.433 1.421 1.184 5.41-2.456 5.41Zm-14.21-21.589c-.36 0-.373 3.852.25 5.846.698-1.246.798-5.846-.25-5.846Zm.038 11.73c-.96 2.517-2.156 5.397-3.54 7.815a73.51 73.51 0 0 0 1.73-.696h.001c1.838-.758 3.86-1.591 6.11-2.034-1.583-1.196-3.104-2.916-4.3-5.085ZM43.445 68.44c-2.705 4.338-4.35 5.11-4.35 5.011.616-1.669 2.738-3.564 3.867-4.573l.001-.002c.195-.173.36-.32.482-.436Zm17.338-4.561C65.407 65.849 66.118 65 66.118 65c.511-.337-.312-1.484-5.335-1.122Z" clip-rule="evenodd"/>',viewBox:"0 0 104 104"},mediaWord:{icon:'<path fill="currentColor" d="M59.239 39.591a3.111 3.111 0 0 1-3.103-3.102v-17.58H30.284a3.095 3.095 0 0 0-3.102 3.103v59.977a3.095 3.095 0 0 0 3.102 3.102h43.432a3.095 3.095 0 0 0 3.102-3.102V39.59h-17.58Zm8.88 14.31-4.912 21.715a1.537 1.537 0 0 1-1.513 1.202h-4.912c-.71 0-1.33-.49-1.499-1.176-3.335-13.379-2.689-10.496-3.309-14.283h-.065c-.142 1.848-.31 2.249-3.309 14.283a1.549 1.549 0 0 1-1.5 1.176h-4.795a1.549 1.549 0 0 1-1.512-1.215l-4.886-21.716A1.546 1.546 0 0 1 37.419 52h3.167a1.55 1.55 0 0 1 1.525 1.254c2.017 10.082 2.599 14.154 2.715 15.796.207-1.319.943-4.227 3.8-15.86a1.539 1.539 0 0 1 1.513-1.177H53.9a1.55 1.55 0 0 1 1.512 1.19c3.103 12.977 3.723 16.028 3.827 16.726-.026-1.448-.337-2.301 2.792-16.7A1.498 1.498 0 0 1 63.517 52h3.09c.995 0 1.731.918 1.512 1.9Z"/><path fill="#36F" d="M76.818 34.666v.789H60.273V18.909h.788a3.1 3.1 0 0 1 2.197.905l12.655 12.668c.582.581.905 1.37.905 2.184Z" opacity=".4"/>',viewBox:"0 0 104 104"},mediaPowerPoint:{icon:'<g fill="currentColor" clip-path="url(#e)"><path d="M75.913 32.482 63.246 19.814a3.1 3.1 0 0 0-2.198-.905h-.776v16.546h16.546v-.789c0-.814-.323-1.603-.905-2.184Z" opacity=".4"/><path fill-rule="evenodd" d="M56.136 36.489a3.111 3.111 0 0 0 3.102 3.102h17.58v42.398a3.095 3.095 0 0 1-3.102 3.102H30.284a3.095 3.095 0 0 1-3.102-3.102V22.01a3.095 3.095 0 0 1 3.102-3.102h25.852v17.58Zm-7.51 38.778v-7.394c.263 0 .598.014.99.03 3.893.16 13.371.546 13.371-10.06 0-5.714-3.671-9.953-9.423-9.953h-10.47c-.853 0-1.551.698-1.551 1.55v25.827c0 .853.698 1.551 1.55 1.551h3.982c.853 0 1.551-.698 1.551-1.55Zm-.013-21.302h3.607c1.137 0 2.003.349 2.624 1.047 1.24 1.409 1.266 4.227-.026 5.7-.634.724-1.538 1.099-2.728 1.099h-3.477v-7.846Z" clip-rule="evenodd"/></g><defs><clipPath id="e"><path fill="#fff" d="M18.91 18.91H85.09V85.09H18.91z"/></clipPath>',viewBox:"0 0 104 104"},mediaExcel:{icon:'<g fill="currentColor" clip-path="url(#f)"><path d="M59.239 39.591a3.111 3.111 0 0 1-3.103-3.102v-17.58H30.284a3.095 3.095 0 0 0-3.102 3.103v59.977a3.095 3.095 0 0 0 3.102 3.102h43.432a3.095 3.095 0 0 0 3.102-3.102V39.59h-17.58Zm4.666 34.836c.659 1.034-.078 2.391-1.306 2.391h-4.511c-.569 0-1.099-.31-1.37-.814-2.534-4.68-4.718-8.88-4.718-8.88-.828 1.913-1.293 2.585-4.731 8.893a1.537 1.537 0 0 1-1.357.814H41.4c-1.228 0-1.964-1.357-1.305-2.391l7.794-12.086-7.794-12.086c-.672-1.034.077-2.391 1.305-2.391H45.9c.568 0 1.098.31 1.37.814 3.374 6.308 2.585 4.343 4.73 8.854 0 0 .79-1.512 4.732-8.854a1.557 1.557 0 0 1 1.37-.814h4.498c1.228-.013 1.965 1.344 1.306 2.378l-7.769 12.086 7.769 12.086Z"/><path d="M76.818 34.666v.789H60.273V18.909h.788a3.1 3.1 0 0 1 2.197.905l12.655 12.668c.582.581.905 1.37.905 2.184Z" opacity=".4"/></g><defs><clipPath id="f"><path fill="#fff" d="M18.91 18.91H85.09V85.09H18.91z"/></clipPath>',viewBox:"0 0 104 104"},mediaPicture:{icon:'<path fill="currentColor" d="M74.166 24.818H29.048a6.6 6.6 0 0 0-6.594 6.598v41.466a6.597 6.597 0 0 0 6.594 6.59h45.118a6.594 6.594 0 0 0 6.59-6.59V31.416c.001-3.642-2.953-6.598-6.59-6.598Zm-14.01 9.812a6.37 6.37 0 1 1-.002 12.74 6.37 6.37 0 0 1 .002-12.74Zm11.942 38.746H32.025c-1.759 0-2.542-1.273-1.75-2.843l10.931-21.65c.792-1.57 2.302-1.71 3.37-.313l10.992 14.364c1.069 1.397 2.937 1.516 4.174.264l2.689-2.723c1.235-1.252 3.056-1.097 4.064.344l6.963 9.946c1.006 1.442.4 2.611-1.36 2.611Z"/>',viewBox:"0 0 104 104"},uTurnLeft:{icon:'<path d="m6.5 10-4-4m0 0 4-4m-4 4h8a4 4 0 1 1 0 8h-2" stroke="#6F7CA3" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 17 16"},comment:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M8 2.938c1.62 0 3.211.119 4.768.347C14.087 3.48 15 4.635 15 5.932v4.012c0 1.297-.913 2.453-2.232 2.647-.585.086-1.174.156-1.768.21v2.637a.5.5 0 0 1-.853.353l-2.79-2.788a.26.26 0 0 0-.177-.075 32.642 32.642 0 0 1-3.948-.337C1.913 12.397 1 11.242 1 9.944V5.932c0-1.298.913-2.453 2.232-2.647A32.764 32.764 0 0 1 8 2.938Zm2.5 4.25a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5Zm-1.75.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm-3.25-.75a.75.75 0 1 1 0 1.5.75.75 0 0 1 0-1.5Z" fill="currentColor"/>',viewBox:"0 0 16 17"},exportAlt:{icon:'<path d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5m-13.5-9L12 3m0 0 4.5 4.5M12 3v13.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 24 24"},importAlt:{icon:'<path d="M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12 12 16.5m0 0L7.5 12m4.5 4.5V3" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 24 24"},folders:{icon:'<path fill="#62C5E8" d="M83.254 78.666h-59.79c-1.142 0-2.18-.935-2.18-2.18V32.993c0-1.142.934-2.18 2.18-2.18h29.791c.83 0 1.557-.415 1.869-1.142l1.764-3.53C57.304 25.416 58.03 25 58.757 25H83.15c1.142 0 2.18.934 2.18 2.18v49.306c.104 1.142-.83 2.18-2.076 2.18Z"/><path fill="#29BAE3" d="M82.32 79.6H23.464c-1.142 0-2.18-.934-2.18-2.18V33.927c0-1.142.934-2.18 2.18-2.18h29.791c.83 0 1.557-.415 1.869-1.142l1.764-3.529c.416-.727 1.142-1.142 1.869-1.142H83.15c1.142 0 2.18.934 2.18 2.18v48.372c.104 1.66-1.246 3.114-3.01 3.114Z"/><path fill="#70CEEA" d="M19 38.39v37.162c0 1.764 1.35 3.114 3.114 3.114H82.32c1.765 0 3.114-1.35 3.114-3.114V43.373c0-1.764-1.35-3.114-3.114-3.114H52.01c-.83 0-1.66-.311-2.18-.934l-3.114-3.114c-.623-.623-1.35-.934-2.18-.934h-22.42C20.348 35.277 19 36.73 19 38.39Z"/><path fill="#62C5E8" d="M19 39.325v37.16c0 1.766 1.35 3.115 3.114 3.115H82.32c1.765 0 3.114-1.35 3.114-3.114V44.307c0-1.764-1.35-3.114-3.114-3.114H52.01c-.83 0-1.66-.311-2.18-.934l-3.114-3.114c-.623-.623-1.35-.934-2.18-.934h-22.42c-1.766 0-3.115 1.453-3.115 3.114Z"/>',viewBox:"0 0 104 104"},addFolder:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M22.18 78.666h58.856c1.764 0 3.114-1.454 3.01-3.114V27.18c0-1.246-1.038-2.18-2.18-2.18H57.472c-.726 0-1.453.415-1.868 1.142l-1.764 3.53c-.312.726-1.039 1.14-1.869 1.14H22.18c-1.246 0-2.18 1.039-2.18 2.18v43.494c0 1.245 1.038 2.18 2.18 2.18Zm31.07-33.041a1.25 1.25 0 1 0-2.5 0v8.125h-8.125a1.25 1.25 0 1 0 0 2.5h8.125v8.125a1.25 1.25 0 1 0 2.5 0V56.25h8.125a1.25 1.25 0 1 0 0-2.5H53.25v-8.125Z" clip-rule="evenodd"/>',viewBox:"0 0 104 104"},exclamationTriangle:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M7.05 2.252c.867-1.5 3.033-1.5 3.898 0l5.517 9.561c.865 1.5-.218 3.375-1.95 3.375H3.484c-1.732 0-2.814-1.875-1.949-3.375l5.515-9.56ZM9 6.188a.562.562 0 0 1 .563.562v2.813a.562.562 0 1 1-1.125 0V6.75A.563.563 0 0 1 9 6.188Zm0 6.187a.562.562 0 1 0 0-1.125.562.562 0 0 0 0 1.125Z" fill="currentColor"/>',viewBox:"0 0 18 18"},exclamationCircle:{icon:'<g clip-path="url(#exclamationCircle)"><path fill-rule="evenodd" clip-rule="evenodd" d="M19.947 9.935a9.512 9.512 0 1 1-19.025 0 9.512 9.512 0 0 1 19.025 0Zm-9.513-5.946a.892.892 0 0 1 .892.892v5.351a.892.892 0 1 1-1.784 0v-5.35a.892.892 0 0 1 .892-.892Zm0 11.89a1.189 1.189 0 1 0 0-2.377 1.189 1.189 0 0 0 0 2.378Z" fill="currentColor"/></g><defs><clipPath id="exclamationCircle"><path fill="#fff" d="M.5 0h20v20H.5z"/></clipPath></defs>',viewBox:"0 0 20 20"},fontBook:{icon:'<g fill="currentColor" clip-path="url(#g)"><path d="m5.037 3 3.384 8.733c.14.334.288.566.446.696.167.12.32.186.46.195v.278a11.686 11.686 0 0 0-.878-.027 43.505 43.505 0 0 0-2.173 0c-.352 0-.64.009-.863.027v-.278c.474-.019.775-.098.905-.237.13-.148.102-.46-.083-.933L3.783 4.838l.251-.306-2.228 5.78c-.177.464-.283.845-.32 1.142-.038.297-.015.53.07.696a.738.738 0 0 0 .417.362c.195.066.436.103.724.112v.278a13.827 13.827 0 0 0-.863-.027c-.279-.01-.558-.014-.836-.014-.204 0-.4.004-.585.014-.176 0-.334.009-.474.027v-.278c.205-.046.404-.167.6-.362.204-.195.399-.534.584-1.017L4.313 3a4.379 4.379 0 0 0 .724 0Zm1.212 5.891v.279h-4.15l.138-.279H6.25Z"/><path d="M11.198 12.902c-.401 0-.742-.074-1.022-.224a1.573 1.573 0 0 1-.63-.63 1.92 1.92 0 0 1-.21-.896c0-.401.093-.728.28-.98a1.98 1.98 0 0 1 .714-.616 5.53 5.53 0 0 1 .938-.392c.327-.112.635-.215.924-.308.29-.103.527-.22.714-.35a.604.604 0 0 0 .28-.518V6.966c0-.299-.047-.541-.14-.728a.851.851 0 0 0-.392-.434c-.168-.103-.383-.154-.644-.154a2.44 2.44 0 0 0-.616.084 1.043 1.043 0 0 0-.532.322c.243.065.43.187.56.364.14.177.21.392.21.644 0 .29-.098.518-.294.686-.187.159-.425.238-.714.238-.308 0-.541-.098-.7-.294a1.058 1.058 0 0 1-.238-.686c0-.261.065-.476.196-.644.13-.177.313-.336.546-.476.233-.159.532-.285.896-.378.364-.093.76-.14 1.19-.14.41 0 .775.047 1.092.14.317.084.588.238.812.462.224.215.369.48.434.798.065.317.098.705.098 1.162v3.836c0 .233.028.401.084.504.056.094.145.14.266.14a.54.54 0 0 0 .266-.07 1.94 1.94 0 0 0 .28-.196l.154.238c-.205.159-.42.285-.644.378-.224.093-.495.14-.812.14-.327 0-.588-.046-.784-.14a.932.932 0 0 1-.42-.406 1.607 1.607 0 0 1-.14-.63c-.224.373-.5.663-.826.868-.327.206-.719.308-1.176.308Zm.84-.784c.224 0 .43-.06.616-.182.196-.121.373-.303.532-.546V8.562c-.093.14-.229.266-.406.378-.168.112-.35.224-.546.336a3.783 3.783 0 0 0-.56.392 1.9 1.9 0 0 0-.434.532c-.112.206-.168.472-.168.798 0 .364.089.644.266.84.177.187.41.28.7.28Z" opacity=".4"/></g><defs><clipPath id="g"><path fill="#fff" d="M0 0h16v16H0z"/></clipPath></defs>',viewBox:"0 0 16 16"},googleFont:{icon:'<path fill="#FBBC04" d="M.172 13.074 7.872.987l4.127 2.63-6.025 9.457H.172Z"/><path fill="#1A73E8" d="M7.707.925h4.74v12.15h-4.74V.925Z"/><path fill="#EA4335" d="M2.795 5.826a2.35 2.35 0 1 0 0-4.7 2.35 2.35 0 0 0 0 4.7Z"/><path fill="#34A853" d="M15.829 9.699a3.376 3.376 0 0 1-3.376 3.376V6.323A3.376 3.376 0 0 1 15.83 9.7Z"/><path fill="#0D652D" d="M12.449 6.323v6.752a3.375 3.375 0 0 1 0-6.752Z"/><path fill="#1A73E8" d="M15.051 3.725a2.598 2.598 0 0 1-2.598 2.598V1.127a2.599 2.599 0 0 1 2.598 2.598Z"/><path fill="#174EA6" d="M12.449 1.127v5.196a2.598 2.598 0 0 1 0-5.196Z"/>',viewBox:"0 0 16 14"},expand:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M5.56831 2.95802H3.57674L6.52622 5.9201C6.71526 6.09657 6.71526 6.39912 6.52622 6.58816C6.34975 6.7772 6.0472 6.7772 5.85816 6.58816L2.90861 3.63861L2.9087 5.61772C2.9087 5.88246 2.69443 6.09673 2.42969 6.09673C2.16496 6.09673 1.95068 5.88247 1.95068 5.61772V2.4791C1.95068 2.21436 2.16494 2.00009 2.42969 2.00009L5.56831 2C5.83305 2 6.04732 2.21427 6.04732 2.47901C6.04732 2.74375 5.83306 2.95802 5.56831 2.95802ZM12.966 10.3689C12.966 10.1041 13.1803 9.88986 13.445 9.88986L13.4449 9.88989C13.7096 9.88989 13.9239 10.1041 13.9239 10.3689L13.924 13.5201C13.924 13.7849 13.7097 13.9991 13.445 13.9991H10.3064C10.0416 13.9991 9.82736 13.7849 9.82736 13.5201C9.82736 13.2554 10.0416 13.0411 10.3064 13.0411H12.2979L9.36101 10.0916C9.17197 9.9151 9.17197 9.61254 9.36101 9.42351C9.53747 9.23447 9.84003 9.23447 10.0291 9.42351L12.966 12.3604V10.3689ZM5.84507 9.42524L2.89552 12.3622V10.3706C2.89552 10.1059 2.68125 9.8916 2.41651 9.8916C2.15177 9.8916 1.9375 10.1059 1.9375 10.3706V13.5092C1.9375 13.774 2.15177 13.9882 2.41651 13.9882H5.55513C5.81988 13.9882 6.03414 13.774 6.03414 13.5092C6.03414 13.2445 5.81987 13.0302 5.55513 13.0302H3.57612L6.52566 10.0807C6.7147 9.89163 6.7147 9.58908 6.52566 9.41261C6.33663 9.23606 6.03416 9.23606 5.84504 9.42519L5.84507 9.42524ZM10.3064 2.01318H13.445L13.445 2.01321C13.7097 2.01321 13.924 2.22747 13.9365 2.49222L13.9366 5.63084C13.9366 5.89557 13.7224 6.10985 13.4576 6.10985C13.1929 6.10985 12.9786 5.89558 12.9786 5.63084V3.63926L10.0291 6.5762C9.8526 6.76524 9.55004 6.76524 9.36101 6.5762C9.17197 6.39974 9.17197 6.09718 9.36101 5.90814L12.2979 2.9712H10.3064C10.0416 2.9712 9.82736 2.75693 9.82736 2.49219C9.82736 2.22746 10.0416 2.01318 10.3064 2.01318Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collapse:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M10.2935 6.15572V3.06913C10.2935 2.80877 10.5042 2.59806 10.7645 2.59806C11.0249 2.59806 11.2356 2.80878 11.2356 3.06913V5.02769L14.1238 2.13943C14.3098 1.95352 14.6073 1.95352 14.7808 2.13943C14.9667 2.32533 14.9667 2.62287 14.7808 2.79641L11.8926 5.69707H13.8511C14.1115 5.69707 14.3222 5.90779 14.3222 6.16814C14.3222 6.42849 14.1115 6.63921 13.8511 6.63921L10.7645 6.63912C10.5042 6.62676 10.2935 6.41604 10.2935 6.15568L10.2935 6.15572ZM7.56431 3.06913V6.15572L7.56429 6.15568C7.56429 6.41604 7.35358 6.62676 7.09322 6.63912L4.00662 6.63921C3.74628 6.63921 3.53556 6.42849 3.53556 6.16814C3.53556 5.90779 3.74627 5.69707 4.00662 5.69707H5.96519L3.07693 2.79641C2.89102 2.62287 2.89102 2.32533 3.07693 2.13943C3.25047 1.95352 3.54801 1.95352 3.73391 2.13943L6.62217 5.02769L6.62217 3.06913C6.62217 2.80878 6.83289 2.59806 7.09324 2.59806C7.35359 2.59806 7.56431 2.80877 7.56431 3.06913ZM7.56431 12.93V9.84343L7.56429 9.84347C7.56429 9.58311 7.35358 9.37239 7.09322 9.36002L4.00662 9.35994C3.74628 9.35994 3.53556 9.57066 3.53556 9.83101C3.53556 10.0914 3.74627 10.3021 4.00662 10.3021H5.96519L3.07693 13.2027C2.89102 13.3763 2.89102 13.6738 3.07693 13.8597C3.25047 14.0456 3.54801 14.0456 3.73391 13.8597L6.62217 10.9715L6.62217 12.93C6.62217 13.1904 6.83289 13.4011 7.09324 13.4011C7.35359 13.4011 7.56431 13.1904 7.56431 12.93ZM10.2935 12.93V9.84343L10.2935 9.84347C10.2935 9.58311 10.5042 9.37239 10.7645 9.36002L13.8511 9.35994C14.1115 9.35994 14.3222 9.57066 14.3222 9.83101C14.3222 10.0914 14.1115 10.3021 13.8511 10.3021H11.8926L14.7808 13.2027C14.9667 13.3763 14.9667 13.6738 14.7808 13.8597C14.6073 14.0456 14.3098 14.0456 14.1238 13.8597L11.2356 10.9715V12.93C11.2356 13.1904 11.0249 13.4011 10.7645 13.4011C10.5042 13.4011 10.2935 13.1904 10.2935 12.93Z" fill="currentColor"/>',viewBox:"0 0 16 16"},minus:{icon:'<path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13.5 8h-10"/>',viewBox:"0 0 16 16"},starAlt:{icon:'<path d="m25.49 13.223-4.229 3.69 1.267 5.494a1.5 1.5 0 0 1-2.235 1.625L15.5 21.126l-4.781 2.906a1.5 1.5 0 0 1-2.235-1.625l1.264-5.488-4.229-3.696a1.5 1.5 0 0 1 .854-2.63l5.575-.483 2.176-5.19a1.495 1.495 0 0 1 2.76 0l2.182 5.19 5.573.482a1.5 1.5 0 0 1 .854 2.63h-.005Z" fill="currentColor"/>',viewBox:"0 0 32 32"},startEmpty:{icon:'<path d="M25.477 12.356c-.045.163-.13.31-.248.43l-.069.06-4.228 3.69-.226.197.068.292 1.266 5.494v.001a1 1 0 0 1-1.489 1.084L15.76 20.7l-.26-.158-.26.158-4.78 2.905a1 1 0 0 1-1.49-1.084v-.001l1.266-5.488.067-.292-.226-.197-4.229-3.696-.002-.002a1 1 0 0 1 .57-1.753l5.575-.483.301-.026.117-.28 2.176-5.19a.995.995 0 0 1 1.47-.445l.278-.416-.277.416a.996.996 0 0 1 .366.445v.001l2.183 5.19.117.279.301.026 5.572.482h.002a1 1 0 0 1 .867.688l.476-.154-.476.154a1 1 0 0 1 .012.578Z" stroke="currentColor"/>',viewBox:"0 0 32 32"},starHalf:{icon:'\n <path d="M14.294 1.101l-3.89 8.31-8.797 1.312c-1.556.25-2.154 2.249-1.017 3.436l6.283 6.435-1.496 9.059c-.24 1.624 1.437 2.874 2.813 2.124l7.84-4.31 7.78 4.31c1.376.75 3.052-.5 2.813-2.124l-1.497-9.06 6.284-6.434c1.137-1.187.539-3.187-1.017-3.436L21.655 9.41l-3.95-8.31a1.871 1.871 0 00-3.41 0z" fill="#d1d5db" /> \n <path d="M14.294 1.101l-3.89 8.31-8.797 1.312c-1.556.25-2.154 2.249-1.017 3.436l6.283 6.435-1.496 9.059c-.24 1.624 1.437 2.874 2.813 2.124l7.84-4.31 7.78 4.31c1.376.75 3.052-.5 2.813-2.124l-1.497-9.06 6.284-6.434c1.137-1.187.539-3.187-1.017-3.436L21.655 9.41l-3.95-8.31a1.871 1.871 0 00-3.41 0z" fill="currentColor" clip-path="url(#half)" />\n <defs>\n <clipPath id="half">\n <rect x="0" y="0" width="16" height="32" />\n </clipPath>\n </defs>\n ',viewBox:"0 0 32 32"},statusOff:{icon:'<path d="M22.9135 14.227C22.9993 14.376 23.0224 14.553 22.9777 14.719C22.933 14.885 22.8242 15.0265 22.6752 15.1123C22.5262 15.1981 22.3492 15.2212 22.1832 15.1765C22.0172 15.1318 21.8757 15.023 21.7899 14.874L19.6333 11.0913C18.358 11.9853 16.9341 12.6458 15.4279 13.0419L16.0932 17.0317C16.1073 17.1155 16.1047 17.2013 16.0856 17.2841C16.0665 17.3669 16.0312 17.4452 15.9818 17.5144C15.9325 17.5836 15.8699 17.6424 15.7978 17.6874C15.7257 17.7324 15.6455 17.7628 15.5616 17.7768C15.526 17.7823 15.4899 17.7852 15.4538 17.7854C15.301 17.7852 15.1532 17.731 15.0366 17.6323C14.9199 17.5337 14.842 17.3969 14.8165 17.2462L14.1566 13.304C12.7276 13.5285 11.2724 13.5285 9.84339 13.304L9.18778 17.2462C9.16229 17.3971 9.08418 17.534 8.96731 17.6327C8.85045 17.7314 8.70239 17.7855 8.54943 17.7854C8.51332 17.7852 8.47728 17.7823 8.4416 17.7768C8.35774 17.7627 8.27749 17.7322 8.20543 17.687C8.13337 17.6419 8.07092 17.583 8.02165 17.5137C7.97238 17.4444 7.93725 17.366 7.91828 17.2831C7.8993 17.2002 7.89685 17.1144 7.91107 17.0306L8.57638 13.0409C7.07017 12.6447 5.64627 11.9842 4.371 11.0902L2.21007 14.874C2.12428 15.023 1.98281 15.1318 1.81679 15.1765C1.65076 15.2212 1.47378 15.1981 1.32479 15.1123C1.17579 15.0265 1.06698 14.885 1.02228 14.719C0.977594 14.553 1.00069 14.376 1.08648 14.227L3.33475 10.2933C2.53491 9.61843 1.80155 8.86845 1.14471 8.0537C1.03689 7.92015 0.986548 7.74923 1.00475 7.57856C1.02295 7.40788 1.1082 7.25143 1.24176 7.14361C1.37531 7.0358 1.54623 6.98545 1.7169 7.00365C1.88758 7.02185 2.04403 7.10711 2.15185 7.24066C3.97095 9.49432 7.15518 12.1782 12 12.1782C16.8448 12.1782 20.0291 9.49432 21.8482 7.24282C21.956 7.10926 22.1124 7.02401 22.2831 7.00581C22.4538 6.98761 22.6247 7.03795 22.7582 7.14577C22.8918 7.25359 22.9771 7.41004 22.9953 7.58071C23.0135 7.75139 22.9631 7.9223 22.8553 8.05586C22.1985 8.87061 21.4651 9.62058 20.6653 10.2955L22.9135 14.227Z" fill="currentColor"/>',viewBox:"0 0 24 24"},statusOn:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M2.04498 13.0033C7.04114 6.52168 16.9589 6.52168 21.955 13.0033C22.1488 13.2548 22.5135 13.3043 22.7695 13.1139C23.0255 12.9235 23.0759 12.5654 22.8821 12.3139C17.4207 5.22869 6.57934 5.22869 1.11789 12.3139C0.924074 12.5654 0.974489 12.9235 1.2305 13.1139C1.48651 13.3043 1.85116 13.2548 2.04498 13.0033ZM11.9474 10.7251C13.2196 10.7251 14.2509 11.7381 14.2509 12.9876C14.2509 14.2371 13.2196 15.25 11.9474 15.25C10.6752 15.25 9.64389 14.2371 9.64389 12.9876C9.64389 11.7381 10.6752 10.7251 11.9474 10.7251Z" fill="currentColor"/>',viewBox:"0 0 24 24"},generate:{icon:'<path d="M14 7.5C14 7.63261 13.9473 7.75979 13.8535 7.85355C13.7598 7.94732 13.6326 8 13.5 8H12.5V9C12.5 9.13261 12.4473 9.25979 12.3535 9.35355C12.2598 9.44732 12.1326 9.5 12 9.5C11.8674 9.5 11.7402 9.44732 11.6464 9.35355C11.5527 9.25979 11.5 9.13261 11.5 9V8H10.5C10.3674 8 10.2402 7.94732 10.1464 7.85355C10.0527 7.75979 9.99999 7.63261 9.99999 7.5C9.99999 7.36739 10.0527 7.24021 10.1464 7.14645C10.2402 7.05268 10.3674 7 10.5 7H11.5V6C11.5 5.86739 11.5527 5.74021 11.6464 5.64645C11.7402 5.55268 11.8674 5.5 12 5.5C12.1326 5.5 12.2598 5.55268 12.3535 5.64645C12.4473 5.74021 12.5 5.86739 12.5 6V7H13.5C13.6326 7 13.7598 7.05268 13.8535 7.14645C13.9473 7.24021 14 7.36739 14 7.5ZM1.99999 2.5H2.99999V3.5C2.99999 3.63261 3.05266 3.75979 3.14643 3.85355C3.2402 3.94732 3.36738 4 3.49999 4C3.63259 4 3.75977 3.94732 3.85354 3.85355C3.94731 3.75979 3.99999 3.63261 3.99999 3.5V2.5H4.99999C5.13259 2.5 5.25977 2.44732 5.35354 2.35355C5.44731 2.25979 5.49999 2.13261 5.49999 2C5.49999 1.86739 5.44731 1.74021 5.35354 1.64645C5.25977 1.55268 5.13259 1.5 4.99999 1.5H3.99999V0.5C3.99999 0.367392 3.94731 0.240215 3.85354 0.146447C3.75977 0.0526785 3.63259 0 3.49999 0C3.36738 0 3.2402 0.0526785 3.14643 0.146447C3.05266 0.240215 2.99999 0.367392 2.99999 0.5V1.5H1.99999C1.86738 1.5 1.7402 1.55268 1.64643 1.64645C1.55266 1.74021 1.49999 1.86739 1.49999 2C1.49999 2.13261 1.55266 2.25979 1.64643 2.35355C1.7402 2.44732 1.86738 2.5 1.99999 2.5ZM9.99999 10H9.49999V9.5C9.49999 9.36739 9.44731 9.24021 9.35354 9.14645C9.25977 9.05268 9.13259 9 8.99999 9C8.86738 9 8.7402 9.05268 8.64643 9.14645C8.55266 9.24021 8.49999 9.36739 8.49999 9.5V10H7.99999C7.86738 10 7.7402 10.0527 7.64643 10.1464C7.55266 10.2402 7.49999 10.3674 7.49999 10.5C7.49999 10.6326 7.55266 10.7598 7.64643 10.8536C7.7402 10.9473 7.86738 11 7.99999 11H8.49999V11.5C8.49999 11.6326 8.55266 11.7598 8.64643 11.8536C8.7402 11.9473 8.86738 12 8.99999 12C9.13259 12 9.25977 11.9473 9.35354 11.8536C9.44731 11.7598 9.49999 11.6326 9.49999 11.5V11H9.99999C10.1326 11 10.2598 10.9473 10.3535 10.8536C10.4473 10.7598 10.5 10.6326 10.5 10.5C10.5 10.3674 10.4473 10.2402 10.3535 10.1464C10.2598 10.0527 10.1326 10 9.99999 10ZM12.2069 3L3.49999 11.7069C3.31247 11.8943 3.05821 11.9995 2.79311 11.9995C2.52801 11.9995 2.27375 11.8943 2.08624 11.7069L0.792486 10.4144C0.699603 10.3215 0.625923 10.2113 0.575654 10.0899C0.525385 9.96858 0.499512 9.83853 0.499512 9.70719C0.499512 9.57585 0.525385 9.44579 0.575654 9.32445C0.625923 9.20311 0.699603 9.09286 0.792486 9L9.49999 0.293125C9.59285 0.200242 9.7031 0.126562 9.82444 0.0762935C9.94578 0.0260245 10.0758 0.000151157 10.2072 0.000151157C10.3385 0.000151157 10.4686 0.0260245 10.5899 0.0762935C10.7113 0.126562 10.8215 0.200242 10.9144 0.293125L12.2069 1.58562C12.2997 1.67849 12.3734 1.78874 12.4237 1.91008C12.474 2.03142 12.4998 2.16147 12.4998 2.29281C12.4998 2.42415 12.474 2.55421 12.4237 2.67555C12.3734 2.79689 12.2997 2.90714 12.2069 3ZM11.5 2.29313L10.2069 1L8.20686 3L9.49999 4.29313L11.5 2.29313Z" fill="currentColor"/>',viewBox:"0 0 14 12"},easystore:{icon:'<rect width="17.23" height="3.93" x="9.4" y="13.72" opacity="0.4" stroke-width="0" fill="currentColor" rx="1.97" ry="1.97"/><circle cx="22.21" cy="30.08" r="1.92" stroke-width="0" opacity="0.4" fill="currentColor"/><circle cx="11.32" cy="30.08" r="1.92" stroke-width="0" opacity="0.4" fill="currentColor"/><path fill="currentColor" stroke-width="0" d="M27.44.11c-1.04-.18-2.04.51-2.22 1.55 0 .03 0 .06-.01.08l-.61 3.37H10.48c-4.96 0-9 4.73-9 10.53s4.04 10.53 9 10.53h12.7c.65 0 1.25-.33 1.6-.87.82-1.27-.09-2.94-1.6-2.94h-12.7c-3.24 0-5.88-3.01-5.88-6.72s2.64-6.72 5.88-6.72h15.75c.65 0 1.25-.33 1.6-.87.19-.3.24-.63.3-.93l.09-.52.75-4.18s.01-.06.02-.09c.18-1.04-.51-2.04-1.55-2.22Z"/>',viewBox:"0 0 32 32"},storefront:{icon:'<path fill="currentColor" d="M5.98 18.54h.05c1.04-.16 1.95-.65 2.76-1.43 1.01.95 2.19 1.47 3.58 1.49 1.4.02 2.59-.49 3.63-1.46 1.02.92 2.21 1.45 3.6 1.46 1.4 0 2.58-.53 3.61-1.49 1.09 1.04 2.37 1.58 3.91 1.48 0 0 2.54-.42 3.43-1.72 1.19-1.34 1.59-2.91 1.21-4.64-.52-2.37-1.1-4.73-1.7-7.09-.32-1.26-1.13-2.08-2.42-2.38 0 0-.13-.04-.18-.05H5c-.31 0-.62.03-.91.13l-.1.03c-.98.28-1.73 1.06-1.98 2.04C1.36 7.46.72 10.01.2 12.58c-.33 1.63.18 3.12 1.32 4.36.03.03.09.1.09.1.91.69 2.64 1.78 4.39 1.49Z"/><path fill="currentColor" opacity="0.4" d="M29.78 19.25c-1.1.69-2.57.94-2.57.94-1.54.1-2.82-.44-3.91-1.48-1.03.96-2.21 1.5-3.61 1.49-1.39 0-2.58-.54-3.6-1.46-1.04.97-2.23 1.48-3.63 1.46-1.39-.02-2.58-.54-3.58-1.49-.81.77-1.72 1.26-2.76 1.43h-.05c-1.46.24-2.89-.47-3.86-1.11a.333.333 0 0 0-.52.28V27.53c0 1.89 1.53 3.42 3.42 3.42h6.51c.24 0 .43-.19.43-.43v-5.21c0-.98.8-1.78 1.78-1.78h4.34c.98 0 1.78.8 1.78 1.78v5.21c0 .24.19.43.43.43h6.51c2.11 0 3.43-1.33 3.43-3.45v-7.95c0-.28-.3-.44-.54-.29Z"/>',viewBox:"0 0 32 32"},single:{icon:'<path fill="currentColor" stroke-width="0" d="M25.52 19.06c2.61 0 4.9 1.31 6.28 3.31V2.73c0-1.01-.82-1.84-1.84-1.84H2.04C1.03.9.2 1.72.2 2.73v25.63c0 1.02.82 1.84 1.84 1.84h16.73c-.55-1.05-.89-2.24-.89-3.51 0-4.22 3.42-7.63 7.63-7.63Z" opacity=".4"/><rect width="11.97" height="21.03" x="3.46" y="4.62" fill="currentColor" stroke-width="0" class="cls-1" rx="2.54" ry="2.54"/><rect width="10.21" height="4" x="18.87" y="4.81" fill="currentColor" stroke-width="0" class="cls-1" rx="1.14" ry="1.14"/><rect width="10.21" height="1.32" x="18.87" y="11.73" fill="currentColor" stroke-width="0" class="cls-1" rx=".62" ry=".62"/><rect width="10.21" height="1.32" x="18.87" y="15.67" fill="currentColor" stroke-width="0" class="cls-1" rx=".62" ry=".62"/><path fill="currentColor" stroke-width="0" d="M26.45 22.1h-1.87v3.56h-3.57v1.88h3.57v3.56h1.87v-3.56h3.57v-1.88h-3.57V22.1z" opacity=".4"/>',viewBox:"0 0 32 32"},collection:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M14.507 16c.6-7.299 5.53-12.554 10.993-12.554 5.462 0 10.393 5.255 10.993 12.554H14.507Zm-2.898 0C12.225 7.593 17.967.554 25.5.554S38.775 7.593 39.391 16h2.607c1.687 0 3.303 1.523 3.615 3.456l5.28 32.662c.518 3.196-.892 5.882-3.17 5.882H3.276c-2.273 0-3.684-2.686-3.17-5.882L5.39 19.456C5.7 17.523 7.317 16 9.004 16h2.605Z" fill="currentColor" opacity=".4"/><path fill-rule="evenodd" clip-rule="evenodd" d="M25.471 20C25.87 12.124 30.94 6.446 36.5 6.446S47.13 12.124 47.529 20H25.47Zm-2.894 0c.408-8.861 6.198-16.446 13.923-16.446S50.015 11.139 50.423 20h2.574c1.688 0 3.303 1.523 3.616 3.456l5.28 32.662C62.41 59.314 61 62 58.723 62H14.276c-2.273 0-3.684-2.686-3.17-5.882l5.28-32.662C16.7 21.523 18.316 20 20.002 20h2.576Z" fill="currentColor"/><rect x="23" y="26" width="26" height="5" rx="2.5" fill="currentColor"/>',viewBox:"0 0 62 62"},quickCartModal:{icon:'<path fill="currentColor" d="M1.057 7.711a2.59 2.59 0 0 1 2.587-2.587h20.702a2.59 2.59 0 0 1 2.587 2.587v1.294H1.057z" opacity=".6"/><path fill="currentColor" d="M1.057 9.005h25.876v19.407A2.59 2.59 0 0 1 24.346 31H3.643a2.59 2.59 0 0 1-2.587-2.588z"/><path fill="#fff" fill-opacity=".3" d="M2.998 11.73c0-.358.29-.647.647-.647h20.701c.357 0 .647.29.647.647v16.173c0 .714-.58 1.293-1.294 1.293H4.292c-.715 0-1.294-.579-1.294-1.294z"/><path fill="currentColor" d="M29.006 21.836V7.146a4.205 4.205 0 0 0-4.205-4.205H9.937a.97.97 0 0 1 0-1.941h14.864a6.146 6.146 0 0 1 6.146 6.146v14.69a.97.97 0 1 1-1.941 0"/><circle cx="21.098" cy="7.184" r=".75" fill="#fff"/><circle cx="23.988" cy="7.184" r=".75" fill="#fff"/>',viewBox:"0 0 32 32"},dynamicContent:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M2.05 3.467c0-.005.005-.12.283-.317.263-.187.68-.378 1.245-.548 1.123-.336 2.707-.553 4.48-.553 1.773 0 3.356.217 4.479.553.565.17.982.36 1.245.548.278.197.284.312.284.317 0 .005-.006.12-.284.317-.263.187-.68.378-1.245.547-1.123.337-2.706.553-4.48.553-1.772 0-3.356-.216-4.479-.553-.565-.17-.982-.36-1.245-.547-.278-.197-.284-.312-.284-.317ZM8.057.949c-1.85 0-3.545.224-4.796.6-.622.186-1.165.42-1.566.703-.386.274-.747.676-.747 1.215 0 .02 0 .04.002.06a.558.558 0 0 0-.002.041h.005-.005v10.259c0 .546.32.986.716 1.313.401.329.948.6 1.575.819 1.258.438 2.962.698 4.818.698 1.855 0 3.559-.26 4.818-.698.627-.218 1.173-.49 1.574-.82.397-.326.716-.766.716-1.312V3.568h-.004.004c0-.014 0-.028-.002-.041l.002-.06c0-.539-.361-.941-.747-1.215-.4-.284-.944-.517-1.566-.703-1.25-.376-2.946-.6-4.795-.6Zm6.008 3.95c-.346.188-.758.35-1.213.486-1.25.375-2.946.6-4.795.6-1.85 0-3.545-.225-4.796-.6a6.447 6.447 0 0 1-1.213-.486v4.027c0 .008.01.123.284.317.263.187.68.378 1.245.547 1.123.337 2.707.553 4.48.553 1.773 0 3.356-.216 4.479-.553.565-.17.982-.36 1.245-.547.278-.197.284-.312.284-.317V4.899ZM2.049 13.827v-3.469c.346.188.758.35 1.213.486 1.251.375 2.946.6 4.796.6 1.849 0 3.544-.225 4.795-.6a6.446 6.446 0 0 0 1.213-.486v3.47c0 .083-.048.242-.315.462-.263.216-.677.435-1.236.63-1.115.387-2.691.637-4.457.637-1.767 0-3.343-.25-4.457-.637-.56-.195-.974-.414-1.237-.63-.267-.22-.315-.379-.315-.463Z" fill="currentColor"/>',viewBox:"0 0 16 17"},collectionTitleField:{icon:'<path d="M13 3.5v2a.5.5 0 0 1-1 0V4H8.5v8H10a.5.5 0 0 1 0 1H6a.5.5 0 0 1 0-1h1.5V4H4v1.5a.5.5 0 1 1-1 0v-2a.5.5 0 0 1 .5-.5h9a.5.5 0 0 1 .5.5Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collectionAliasField:{icon:'<path fill="currentColor" d="M4.02 7.975a.018.018 0 0 0-.012 0 .016.016 0 0 0-.008.01c0 .004 0 .009.003.012a.015.015 0 0 0 .01.004.014.014 0 0 0 .011-.004.017.017 0 0 0 .004-.013.015.015 0 0 0-.008-.01ZM4.152 7.975a.017.017 0 0 0-.015.001.016.016 0 0 0-.005.012c0 .004.001.007.005.01.003.003.007.003.011.003.004 0 .007-.002.01-.005.002-.005.002-.009 0-.014a.014.014 0 0 0-.006-.007ZM20.818 16.58c.003-.465-.003-.884-.12-1.32l-.015-.06a3.59 3.59 0 0 0-.073-.23l-.024-.062c-.141-.368-.397-.888-.813-1.274l-.049-.044c-.45-.423-.885-.7-1.372-.875l-.07-.025c-.565-.2-1.134-.196-1.639-.193l-.286.001h-.285l-.28.001-.64.002-.98.003.003-.793.001-.582v-.51l.002-.396c.002-.31.004-.63-.05-.955l-.001-.005a2.618 2.618 0 0 0-.065-.293l-.008-.023-.01-.035a2.947 2.947 0 0 0-.624-1.13h.016a2.803 2.803 0 0 0-.14-.147l.538-1.129c.098.02.192.029.294.029l.059-.001a1.737 1.737 0 0 0 1.2-.453l.004-.004c.349-.334.542-.763.558-1.24v-.005c.006-.508-.141-.924-.435-1.235l-.055-.054a1.732 1.732 0 0 0-.518-.383l-.076-.03a1.813 1.813 0 0 0-.383-.118l-.021-.003c-.602-.046-1.076.095-1.491.443l-.013.012a1.772 1.772 0 0 0-.542 1.235v.074c0 .083 0 .18.01.278l.002.017c.079.445.303.829.631 1.08l.012.008-.085.188-.383.792a3.807 3.807 0 0 0-1.608-.415h-.002a4.006 4.006 0 0 0-1.195.316l-.321-.664-.099-.218.012-.008c.328-.25.552-.634.632-1.08l.002-.016a2.94 2.94 0 0 0 .01-.281l-.002-.073a1.771 1.771 0 0 0-.541-1.234l-.013-.012c-.416-.347-.89-.488-1.491-.443l-.021.003a1.82 1.82 0 0 0-.384.117l-.068.028-.008.003a1.742 1.742 0 0 0-.518.383l-.055.055c-.294.31-.44.726-.435 1.235v.004c.016.477.209.906.558 1.24l.003.004c.328.3.732.452 1.199.453h.064c.1 0 .194-.008.291-.027l.467.978c-.782.657-.987 1.531-1.039 1.859l-.002.013c0 .007-.002.013-.003.02l-.01.08v.018c-.022.202-.025.399-.024.58v1.641l.003.795v1.59c0 .16 0 .325.012.494v.012c.097.999.553 1.888 1.284 2.505l.04.033c.91.773 1.95.876 2.759.876h3.12l1.204-.001 1.41.001h2.008l.11-.001.104.001.095-.001c.047 0 .079 0 .116-.004a.81.81 0 0 0 .114-.018l.094-.02.075-.06a.639.639 0 0 0 .26-.412l.008-.038.001-.215v-.653Zm-10.799-.553c-.505-.533-.75-1.176-.745-1.968v-.921c0-.224 0-.45.002-.675l.001-.873.001-.758v-.347s-.023-.16-.023-.4c0-.185.014-.415.063-.654a2.093 2.093 0 0 1 .361-.837 1.45 1.45 0 0 1 .355-.33c.24-.156.552-.256.956-.262 0 0 .608-.052 1.145.29a1.565 1.565 0 0 1 .358.313c.07.083.142.176.204.283.07.122.127.261.153.424.056.35.06.662.06 1.269v.831l.002.52a229.93 229.93 0 0 0 .002 1.438v.43c0 .118 0 .24.004.363v.018c.037.495.256.97.587 1.269l.012.01c.465.387 1.006.556 1.655.515l.08-.005.074-.036a.689.689 0 0 0 .276-.228l.065-.09.011-.13a.692.692 0 0 0-.107-.507l-.041-.063-.061-.043a.738.738 0 0 0-.45-.135h-.011c-.32-.002-.487-.061-.658-.233-.147-.158-.194-.324-.186-.652v-.003l.001-.07.945-.002h.65c.19-.002.378-.002.568-.002h.168l.133-.001h.42c.561 0 1.054.153 1.467.456l.057.046.02.014c.117.09.238.185.322.29l.038.048.007.01c.428.524.614 1.117.604 1.923v.002l-.003.146v.028l-2.665.001H15.26c-.409.002-.818.002-1.227.002H12.053c-.88 0-1.526-.227-2.034-.714Zm3.493-11.871c.317-.3.683-.369 1.061-.2a.977.977 0 0 1 .481.569.997.997 0 0 1-.14.77.953.953 0 0 1-.548.36c-.336.024-.571-.033-.76-.185a.99.99 0 0 1-.338-.702.92.92 0 0 1 .243-.613ZM8.84 5.47c-.19.152-.425.21-.76.185a.951.951 0 0 1-.548-.36.997.997 0 0 1-.14-.77.979.979 0 0 1 .48-.57c.378-.168.745-.098 1.061.2.155.17.234.37.243.614a.99.99 0 0 1-.336.702Z"/><path fill="#6F7CA3" d="M13.953 5.17a.408.408 0 1 0 0-.815.408.408 0 0 0 0 .816ZM8.542 4.355a.408.408 0 1 0 0 .815.408.408 0 0 0 0-.815Z"/>',viewBox:"0 0 24 24"},collectionRichTextField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M8.001 3.599v1.066a.267.267 0 1 1-.533 0V3.9H5.601v4.233h.8a.267.267 0 0 1 0 .533H4.268a.267.267 0 0 1 0-.533h.686V3.899H3.2v.766a.267.267 0 1 1-.533 0V3.6a.267.267 0 0 1 .267-.267h4.8A.267.267 0 0 1 8 3.599Zm5.311 6.36c0 .185-.149.334-.333.334H4.312a.333.333 0 0 1 0-.666h8.667c.184 0 .333.149.333.333Zm-.333 2.668a.333.333 0 0 0 0-.667H4.312a.333.333 0 0 0 0 .667h8.667Zm.333-5c0 .184-.149.333-.333.333H8.646a.333.333 0 0 1 0-.667h4.333c.184 0 .333.15.333.334Zm-.333-2a.333.333 0 0 0 0-.667H8.646a.333.333 0 0 0 0 .667h4.333Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionImageField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="m13.098 8.464-3.24 1.967c-.609.37-1.385.312-1.933-.145L6.718 9.278a1 1 0 0 0-1.194-.066l-2.26 1.502-.37-.556 2.261-1.5a1.667 1.667 0 0 1 1.99.108l1.208 1.008a1 1 0 0 0 1.16.087l3.24-1.966.345.57Z" clip-rule="evenodd"/><path fill="#6F7CA3" fill-rule="evenodd" d="M9.027 6.05a.692.692 0 1 0 0 1.384.692.692 0 0 0 0-1.385Zm-1.359.692a1.359 1.359 0 1 1 2.718 0 1.359 1.359 0 0 1-2.718 0Z" clip-rule="evenodd"/><path fill="#6F7CA3" fill-rule="evenodd" d="M12.335 3.999H3.668a.333.333 0 0 0-.333.333v7.436c0 .184.149.333.333.333h8.667c.184 0 .333-.149.333-.333V4.332a.333.333 0 0 0-.333-.333Zm-8.667-.667a1 1 0 0 0-1 1v7.436a1 1 0 0 0 1 1h8.667a1 1 0 0 0 1-1V4.332a1 1 0 0 0-1-1H3.668Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionGalleryField:{icon:'<path fill-rule="evenodd" clip-rule="evenodd" d="M6.26248 6.57641c.19724-1.87664 1.87845-3.23806 3.75512-3.04082l15.9123 1.67246c1.9722.20729 2.9927 1.981 2.8062 3.75509l-.9345 8.89176c-.0023.0216-.0045.043-.0067.0643-.029.2784-.0554.5322-.1322.7571-.2334.6831-.8039 1.1968-1.5077 1.3575-.0268.0061-.054.0115-.0814.0163v2.4039c0 1.2111 0 2.1956-.1044 2.9719-.1088.8093-.3433 1.5035-.8964 2.0566-.5531.5531-1.2472.7876-2.0566.8964-.7762.1044-1.7608.1043-2.9718.1043H6.6569c-1.86419 0-3.37953-1.4928-3.416-3.3485a3.516405 3.516405 0 0 1-.00067-.0682c0-.0209.00086-.0416.00255-.0622.02919-.8357.37396-1.6312.96731-2.2245l4.6825-4.6825c.68342-.6834 1.79141-.6834 2.47491 0l1.3229 1.3229c.4436.4437.7258.7237.9592.9033.2173.1672.3057.1775.3494.1786.0456.0012.1336-.0048.3548-.157.2379-.1637.528-.4229.9848-.8347l4.6995-4.4364h-2.1129c-.4142 0-.75-.3357-.75-.75 0-.4142.3358-.75.75-.75h4c.4142 0 .75.3358.75.75v3.7438c0 .4142-.3358.75-.75.75s-.75-.3358-.75-.75v-2.0044l-4.8132 4.5437-.0127.0117-.0346.0311c-.4155.3747-.7805.7038-1.1106.9309-.357.2457-.7575.4334-1.244.4208-.4883-.0126-.8804-.2239-1.2253-.4893-.3201-.2463-.6712-.5975-1.0722-.9985l-1.3558-1.3558c-.0976-.0977-.2559-.0977-.35355 0l-4.6825 4.6825c-.33762.3376-.52805.7949-.52998 1.2721.02433 1.0371.87298 1.8706 1.91613 1.8706h13.3333c1.2783 0 2.1616-.0016 2.8262-.0909.643-.0865.9678-.2425 1.1958-.4705.2279-.2279.384-.5528.4704-1.1958.0894-.6646.091-1.5478.091-2.8261V11.7332c0-1.0585-.8582-1.91665-1.9167-1.91665H6.76536a.76244.76244 0 0 1-.01913 0H6.6569c-1.05853 0-1.91664.85805-1.91667 1.91665l.00053 9.0601c.00002.4142-.33574.75-.74996.7501-.41421 0-.75002-.3358-.75004-.75l-.00053-9.0601c0-1.6884 1.22467-3.09083 2.83415-3.36729l.1881-1.7896Zm1.32536 1.74014H22.6569c1.887 0 3.4167 1.52969 3.4167 3.41665v6.7101c.0766-.0665.1358-.1529.1696-.252.0145-.0423.0263-.1102.0666-.4932l.9345-8.89175c.1215-1.1553-.514-2.00591-1.4712-2.10652L9.86077 5.02738c-1.05275-.11065-1.99586.65307-2.10651 1.70582l-.16642 1.58335ZM8.6569 12.4832c-.69035 0-1.25.5597-1.25 1.25 0 .6904.55965 1.25 1.25 1.25.69036 0 1.25-.5596 1.25-1.25 0-.6903-.55964-1.25-1.25-1.25Zm-2.75 1.25c0-1.5188 1.23122-2.75 2.75-2.75 1.5188 0 2.75 1.2312 2.75 2.75s-1.2312 2.75-2.75 2.75c-1.51878 0-2.75-1.2312-2.75-2.75Z" fill="currentColor"/>',viewBox:"0 0 32 32"},collectionEmailField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M11.324 5.34a4.23 4.23 0 1 0 0 5.984.385.385 0 0 1 .543.543 5 5 0 1 1-7.07-7.07 5 5 0 0 1 8.535 3.535c0 .5-.152.968-.415 1.318-.263.352-.656.605-1.123.605-.464 0-.855-.25-1.118-.597a2.691 2.691 0 1 1-.42-3.21v-.04a.384.384 0 1 1 .768 0v1.924c0 .35.107.651.261.857.154.206.338.297.509.297.17 0 .353-.091.508-.297.154-.205.26-.508.26-.857a4.218 4.218 0 0 0-1.238-2.992Zm-1.069 2.992a1.923 1.923 0 1 0-3.846 0 1.923 1.923 0 0 0 3.846 0Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionPhoneField:{icon:'<path fill="currentColor" d="M11.589 12.665h-.061c-7.051-.405-8.053-6.357-8.193-8.173a1.077 1.077 0 0 1 .99-1.16h1.978a.717.717 0 0 1 .668.452l.545 1.343a.718.718 0 0 1-.158.775l-.764.772a3.364 3.364 0 0 0 2.72 2.728l.778-.772a.718.718 0 0 1 .78-.147l1.352.542a.718.718 0 0 1 .441.668v1.895a1.077 1.077 0 0 1-1.076 1.077ZM4.412 4.05a.359.359 0 0 0-.359.359v.029c.165 2.125 1.224 7.15 7.514 7.51a.359.359 0 0 0 .38-.338V9.693l-1.352-.542-1.03 1.023-.172-.021C6.27 9.76 5.847 6.637 5.847 6.605l-.021-.172 1.019-1.03-.538-1.354H4.412Z"/>',viewBox:"0 0 16 16"},collectionDateTimeField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M4.976 2.668c.212 0 .384.172.384.385v.769h4.616v-.77a.385.385 0 0 1 .769 0v.77h.385a1.539 1.539 0 0 1 1.538 1.538v5.77a1.539 1.539 0 0 1-1.538 1.538H4.205a1.539 1.539 0 0 1-1.538-1.538V5.36a1.538 1.538 0 0 1 1.538-1.538h.385v-.77c0-.212.172-.384.385-.384Zm-.77 1.923a.77.77 0 0 0-.769.77v.59c.232-.134.497-.206.77-.206h6.923c.272 0 .537.072.769.206v-.59a.769.769 0 0 0-.77-.77H4.207ZM11.9 7.283a.769.769 0 0 0-.77-.769H4.207a.77.77 0 0 0-.769.77v3.846a.77.77 0 0 0 .77.769h6.923a.769.769 0 0 0 .769-.77V7.284Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionNumberField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M7.289 2.676c.23.047.38.271.334.502L7.151 5.54h2.002l.505-2.529a.427.427 0 1 1 .837.167l-.472 2.362h1.633a.427.427 0 1 1 0 .853H9.852L9.305 9.13h1.633a.427.427 0 0 1 0 .853H9.134l-.506 2.529a.427.427 0 0 1-.836-.168l.472-2.361H6.262l-.505 2.529a.427.427 0 0 1-.837-.168l.472-2.361H3.76a.427.427 0 1 1 0-.853h1.804l.547-2.737H4.477a.427.427 0 0 1 0-.853H6.28l.505-2.529a.427.427 0 0 1 .503-.335ZM6.98 6.393 6.433 9.13h2.002l.547-2.737H6.98Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionLinkField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.237 5.616a2.286 2.286 0 1 0 0 4.572h1.418a.55.55 0 1 1 0 1.1H5.237a3.386 3.386 0 0 1 0-6.772h1.418a.55.55 0 0 1 0 1.1H5.237Zm.312 2.183a.55.55 0 0 1 .55-.55h4.244a.55.55 0 1 1 0 1.1H6.099a.55.55 0 0 1-.55-.55Zm7.646.103a2.286 2.286 0 0 0-2.286-2.286H9.491a.55.55 0 0 1 0-1.1h1.418a3.386 3.386 0 0 1 0 6.771H9.491a.55.55 0 0 1 0-1.1h1.418a2.286 2.286 0 0 0 2.286-2.285Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionSwitchField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M5.332 5.75a2.5 2.5 0 0 0 0 5h5a2.5 2.5 0 0 0 0-5h-5Zm5 .417a2.083 2.083 0 1 0 0 4.166 2.083 2.083 0 0 0 0-4.166Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionColorField:{icon:'<path stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-width=".991" d="M6.967 10.166a1.333 1.333 0 0 0-2.568.5 1 1 0 0 1-1.067.998 2 2 0 0 0 3.733-.997c0-.177-.035-.347-.098-.501Zm0 0a7.11 7.11 0 0 0 1.506-.72m-2.241-.011c.18-.53.422-1.036.72-1.51m1.52 1.52A7.109 7.109 0 0 0 10.59 7.38l1.723-2.584a.511.511 0 0 0-.71-.71L9.02 5.81a7.109 7.109 0 0 0-2.066 2.116 3.011 3.011 0 0 1 1.52 1.52"/>',viewBox:"0 0 16 16"},collectionOptionField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M3.332 4.583c0-.322.261-.583.583-.583h8.167a.583.583 0 0 1 0 1.167H3.915a.583.583 0 0 1-.583-.584Zm0 3.5c0-.322.261-.583.583-.583h8.167a.583.583 0 0 1 0 1.167H3.915a.583.583 0 0 1-.583-.584Zm9.333 3.5a.583.583 0 0 0-.583-.583H3.915a.583.583 0 0 0 0 1.167h8.167a.583.583 0 0 0 .583-.584Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionFileField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M4 3.627c0-.53.41-.959.915-.959h2.36c1.253 0 2.455.522 3.34 1.45A5.076 5.076 0 0 1 12 7.622v4.755c0 .53-.41.959-.915.959h-6.17c-.505 0-.915-.43-.915-.96V3.628Zm7.259 4.184c0-.35-.133-.687-.37-.935a1.234 1.234 0 0 0-.893-.388H9.27a.894.894 0 0 1-.647-.28.983.983 0 0 1-.268-.68v-.76c0-.35-.133-.687-.37-.935a1.234 1.234 0 0 0-.892-.388H4.915a.178.178 0 0 0-.174.182v8.749c0 .1.078.182.174.182h6.17a.178.178 0 0 0 .174-.182V7.81ZM8.868 3.794c.149.298.229.632.229.974v.76c0 .05.018.095.05.13a.17.17 0 0 0 .123.053h.726c.327 0 .646.084.93.24a4.19 4.19 0 0 0-.834-1.283 3.982 3.982 0 0 0-1.224-.874ZM5.815 9.523a.38.38 0 0 1 .37-.389h3.63a.38.38 0 0 1 .37.389.38.38 0 0 1-.37.388h-3.63a.38.38 0 0 1-.37-.388Zm0 1.521a.38.38 0 0 1 .37-.388H8a.38.38 0 0 1 .37.388.38.38 0 0 1-.37.389H6.185a.38.38 0 0 1-.37-.389Z" clip-rule="evenodd"/>',viewBox:"0 0 16 16"},collectionRatingField:{icon:'<path fill="currentColor" fill-rule="evenodd" d="M12.19 2.646c.713-1.549 2.907-1.549 3.62 0l2.797 6.084 6.632.788c1.69.201 2.367 2.295 1.119 3.453l-4.904 4.549 1.302 6.57c.331 1.674-1.444 2.968-2.928 2.135L14 22.952l-5.828 3.273c-1.484.833-3.26-.461-2.928-2.134l1.302-6.571-4.904-4.549c-1.248-1.158-.57-3.252 1.119-3.453l6.632-.788 2.797-6.084Zm2.264 1.825a.5.5 0 0 0-.908 0l-2.343 5.096a1.994 1.994 0 0 1-1.575 1.148l-5.559.66a.5.5 0 0 0-.281.864l4.11 3.813c.51.472.737 1.175.602 1.857l-1.09 5.507a.5.5 0 0 0 .735.533l4.882-2.741a1.987 1.987 0 0 1 1.946 0l4.882 2.741a.5.5 0 0 0 .735-.533l-1.09-5.507a2.003 2.003 0 0 1 .601-1.857l4.111-3.813a.5.5 0 0 0-.281-.863l-5.559-.661a1.993 1.993 0 0 1-1.575-1.148L14.454 4.47Z" clip-rule="evenodd"/>',viewBox:"-2.8 -2.8 33.6 33.6"},collectionReferenceField:{icon:'<path d="M8.663 10.203c0 .168.146.321 0 .365-.028.007-.314 0-.349 0H4.002c-.431 0-.856-.102-1.247-.306a2.64 2.64 0 0 1-.64-.416c-.084-.08-.16-.161-.237-.241A3.435 3.435 0 0 1 1 7.284c0-.876.313-1.693.878-2.313C2.435 4.358 3.208 4 4.002 4h1.33c.189 0 .35.168.35.365 0 .095.06.249 0 .315-.065.07-.252.05-.35.05h-1.33c-.599 0-1.19.27-1.623.744a2.755 2.755 0 0 0 0 3.627c.119.124.244.241.376.329.37.27.802.408 1.247.408h4.312c.195 0 .349.168.349.365Z" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.092 4.179c-.768 0-1.517.345-2.059.941a3.328 3.328 0 0 0-.854 2.253A3.346 3.346 0 0 0 2.255 9.86a3.32 3.32 0 0 1 .483-.307 2.557 2.557 0 0 1-.334-.3l-.002-.003a2.844 2.844 0 0 1-.705-1.877c0-.692.11-1.465.558-1.956.448-.492 1.21-.687 1.837-.687h1.33c.135 0 .26-.124.26-.276 0-.151-.125-.275-.26-.275h-1.33ZM2.837 9.703c-.151.078-.298.169-.44.274.14.106.287.2.44.272.192-.122.4-.201.6-.251a2.202 2.202 0 0 1-.6-.295Zm1.255.394c-.295 0-.7.05-1.06.245.336.15.695.226 1.06.226h4.312a.304.304 0 0 0 .073-.011.27.27 0 0 0 .186-.264c0-.153-.119-.276-.26-.276H4.093v.08Zm-1.286.334a2.733 2.733 0 0 1-.66-.428l-.004-.004c-.085-.081-.163-.163-.239-.243l-.002-.002A3.525 3.525 0 0 1 1 7.374c0-.898.321-1.737.901-2.374m.905 5.431c.402.21.84.316 1.286.316h4.312c.046 0 .09-.01.12-.018h.003a.449.449 0 0 0 .314-.436.447.447 0 0 0-.437-.455H4.092a2.01 2.01 0 0 1-1.194-.391l-.004-.003a2.184 2.184 0 0 1-.36-.314 2.665 2.665 0 0 1 0-3.506c.417-.457.986-.716 1.558-.716h1.33a.452.452 0 0 0 .438-.454A.452.452 0 0 0 5.422 4h-1.33C3.27 4 2.474 4.37 1.9 5" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M9.409 7.22h4.16a.81.81 0 0 1 .81.81v4.16a.81.81 0 0 1-.81.81h-4.16a.81.81 0 0 1-.81-.81V8.03a.81.81 0 0 1 .81-.81Zm0 .7a.11.11 0 0 0-.11.11v4.16c0 .06.05.11.11.11h4.16a.11.11 0 0 0 .11-.11V8.03a.11.11 0 0 0-.11-.11h-4.16Z" fill="currentColor"/>',viewBox:"0 0 16 16"},collectionMultiReferenceField:{icon:'<path d="M8.915 7.11c0 .149.182.268.046.307-.025.007-.509 0-.54 0H4.43c-.399 0-.792-.09-1.153-.27a2.459 2.459 0 0 1-.592-.368c-.078-.07-.148-.142-.22-.212a2.956 2.956 0 0 1-.811-2.05c0-.773.29-1.494.812-2.042a2.734 2.734 0 0 1 1.965-.857h1.23c.174 0 .323.148.323.322a.327.327 0 0 1-.322.322H4.432c-.554 0-1.102.239-1.501.658a2.341 2.341 0 0 0 0 3.202c.11.11.225.213.347.29.342.238.741.36 1.154.36h4.483c.18 0 0 .165 0 .339Z" fill="currentColor"/><path d="M8.742 11.676c0 .18.447.322.267.322H4.432c-.735 0-1.45-.309-1.965-.85a2.956 2.956 0 0 1-.812-2.05c0-.772.29-1.494.812-2.042.07-.07.141-.141.219-.206.187-.148.386-.27.592-.367.342.238.741.36 1.154.36-.316 0-.773.13-1.154.374a1.858 1.858 0 0 0-.347.284 2.341 2.341 0 0 0 0 3.202c.399.42.934.651 1.5.651H9.01c.032 0-.524.007-.499.013a.325.325 0 0 1 .232.31Z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.432 1.699c-.712 0-1.406.306-1.907.832a2.86 2.86 0 0 0-.79 1.987c0 .752.282 1.46.79 1.992.068.069.135.136.208.203.143-.104.292-.195.445-.271a2.345 2.345 0 0 1-.304-.263l-.002-.002a2.422 2.422 0 0 1 0-3.313 2.173 2.173 0 0 1 1.56-.682h1.23c.13 0 .242-.112.242-.242a.247.247 0 0 0-.241-.241H4.432Zm-1.16 4.877c-.14.068-.276.148-.407.24.14.102.29.19.445.256l.005.002.024.012c.176-.1.364-.179.546-.233a2.074 2.074 0 0 1-.614-.277Zm1.16.348c-.245 0-.587.083-.906.244.29.112.596.169.906.169h4.046l.216.002a15.309 15.309 0 0 0 .222 0l-.01-.017c-.011-.02-.026-.047-.038-.073a.334.334 0 0 1-.033-.138c0-.057.014-.11.03-.153.007-.022.016-.043.023-.061l.002-.005.015-.039H4.432v.071Zm4.506-.069h-.001Zm-5.59.414c.343.152.71.229 1.084.229h4.044a54.293 54.293 0 0 0 .458.002l.022-.001c.004 0 .015-.001.025-.004h.002a.17.17 0 0 0 .07-.036.119.119 0 0 0 .038-.077.153.153 0 0 0-.009-.066.352.352 0 0 0-.022-.049l-.017-.031a.681.681 0 0 1-.028-.054.176.176 0 0 1-.02-.071c0-.03.009-.063.021-.1a1.18 1.18 0 0 1 .021-.053l.002-.005.02-.05a.298.298 0 0 0 .015-.058.138.138 0 0 0-.01-.078c-.03-.065-.1-.075-.149-.075H4.432c-.396 0-.78-.117-1.107-.346l-.004-.002a1.997 1.997 0 0 1-.333-.278 2.26 2.26 0 0 1 0-3.09 2.012 2.012 0 0 1 1.444-.633h1.23a.408.408 0 0 0 .403-.403.408.408 0 0 0-.402-.402H4.432c-.758 0-1.494.325-2.024.882a3.02 3.02 0 0 0-.834 2.098c0 .793.298 1.541.834 2.104l.002.002c.062.062.126.126.194.19-.068.06-.132.123-.193.184L2.41 7l-.002.002a3.02 3.02 0 0 0-.834 2.098c0 .793.298 1.541.834 2.104.53.557 1.267.876 2.024.876h4.577c.013 0 .027 0 .04-.003a.108.108 0 0 0 .052-.022.087.087 0 0 0 .027-.096.11.11 0 0 0-.028-.042.363.363 0 0 0-.052-.04 3.428 3.428 0 0 0-.06-.039.785.785 0 0 1-.122-.092c-.035-.034-.043-.057-.043-.069a.404.404 0 0 0-.078-.237h.019l.178-.003.055-.001h.017l.006-.001.013-.003c.028-.014.053-.105.007-.152a.15.15 0 0 0-.021-.005H4.432a1.983 1.983 0 0 1-1.443-.626 2.26 2.26 0 0 1 0-3.091c.097-.104.208-.19.333-.272m5.144 4.15H4.432c-.59 0-1.145-.242-1.56-.676a2.422 2.422 0 0 1 0-3.313c.093-.099.194-.181.304-.257a2.513 2.513 0 0 1-.445-.272 2.86 2.86 0 0 0-.996 2.181c0 .754.283 1.462.79 1.994.5.526 1.195.826 1.907.826H8.82a.67.67 0 0 1-.068-.058c-.044-.043-.091-.106-.091-.184a.244.244 0 0 0-.173-.232h-.003l-.005-.002a.08.08 0 0 1-.015-.007Z" fill="#6F7CA3"/><path fill-rule="evenodd" clip-rule="evenodd" d="M9.4 4.31h3.487c.375 0 .68.304.68.679v3.486a.679.679 0 0 1-.68.68H9.401a.679.679 0 0 1-.68-.68V4.99c0-.375.305-.68.68-.68Zm0 .587a.092.092 0 0 0-.091.092v3.486c0 .051.041.092.092.092h3.486c.051 0 .092-.04.092-.092V4.99a.092.092 0 0 0-.092-.092H9.401ZM9.4 9.693h3.487c.375 0 .68.304.68.679v3.487a.679.679 0 0 1-.68.679H9.401a.679.679 0 0 1-.68-.68v-3.486c0-.375.305-.68.68-.68Zm0 .587a.092.092 0 0 0-.091.092v3.487c0 .05.041.091.092.091h3.486c.051 0 .092-.04.092-.091v-3.487a.092.092 0 0 0-.092-.092H9.401Z" fill="currentColor"/>',viewBox:"0 0 16 16"},localUpload:{icon:'<path d="M8.9375 11.644c.30469 0 .5625-.2347.5625-.5633V7.13743h2.0391c.4218 0 .6328-.4929.3281-.79804L8.30469 2.77166c-.16407-.1643-.46875-.1643-.63281 0l-3.5625 3.56773c-.30469.30514-.09375.79804.32812.79804H6.5v3.94327c0 .3286.23438.5633.5625.5633h1.875ZM14 11.4563c0-.3052-.2578-.5634-.5625-.5634H10.25v.1878c0 .7276-.60938 1.3144-1.3125 1.3144h-1.875c-.72656 0-1.3125-.5868-1.3125-1.3144v-.1878H2.5625c-.32812 0-.5625.2582-.5625.5634v2.6288c0 .3286.23438.5633.5625.5633h10.875c.3047 0 .5625-.2347.5625-.5633v-2.6288Zm-2.9062 2.0655c0 .2582-.211.4694-.4688.4694-.2578 0-.4687-.2112-.4687-.4694s.2109-.4694.4687-.4694c.2578 0 .4688.2112.4688.4694Zm1.5 0c0 .2582-.211.4694-.4688.4694-.2578 0-.4687-.2112-.4687-.4694s.2109-.4694.4687-.4694c.2578 0 .4688.2112.4688.4694Z" fill="currentColor"/>',viewBox:"0 0 16 16"},funnel:{icon:'<path d="M18.037 3.87a1.235 1.235 0 0 0-1.141-.745H3.146a1.25 1.25 0 0 0-.923 2.09l.007.008 5.291 5.65v6.002a1.25 1.25 0 0 0 1.943 1.04l2.5-1.666a1.25 1.25 0 0 0 .557-1.041v-4.335l5.292-5.65.006-.007a1.234 1.234 0 0 0 .218-1.346Zm-6.596 6.332a.625.625 0 0 0-.17.423v4.583l-2.5 1.667v-6.25a.625.625 0 0 0-.169-.427L3.146 4.375h13.75l-5.455 5.827Z" fill="currentColor"/>',viewBox:"0 0 21 20"},funnelModified:{icon:'<g fill="currentColor"><path d="M12.338 9.457a4.556 4.556 0 0 1-.581-.427l-1.081 1.154a.573.573 0 0 0-.155.39v4.16l-2.27 1.517v-5.677a.573.573 0 0 0-.155-.39l-4.96-5.287h7.104s0-.063.009-.09c.027-.173.063-.337.109-.491l.036-.1c.027-.091.073-.227.146-.373.009-.027.018-.054.036-.081h-7.44c-.217 0-.435.063-.617.181s-.327.291-.418.49c-.09.2-.118.428-.082.646.037.218.137.418.282.581l4.814 5.132v5.46c0 .2.055.408.155.58.109.173.263.319.445.418a1.11 1.11 0 0 0 1.162-.054l2.271-1.517c.155-.1.282-.245.373-.409.09-.163.136-.345.136-.536v-3.942l1.063-1.135c-.128-.055-.255-.127-.382-.2Z"/><path d="M14.618 2a3.59 3.59 0 0 0-3.134 1.817c-.09.154-.164.308-.227.472-.055.1-.082.209-.118.327a2.024 2.024 0 0 0-.082.336c-.009.018-.009.027-.009.045a2.573 2.573 0 0 0-.046.382c-.018.082-.018.136-.018.218v.036c0 .345.055.69.155 1.018.2.7.608 1.308 1.144 1.762.136.127.282.227.436.327.146.09.29.163.436.227a.455.455 0 0 0 .118.045c.41.173.872.264 1.345.264a3.634 3.634 0 0 0 3.633-3.643A3.626 3.626 0 0 0 14.618 2Zm1.725 2.798-2.089 2.089-1.353-1.354c-.1-.09-.1-.254 0-.336.09-.09.245-.1.336 0l1.017 1.018 1.744-1.753c.1-.1.246-.1.345 0 .091.1.091.254 0 .336Z"/></g><defs><clipPath id="a"><path fill="#fff" transform="translate(2 2)" d="M0 0h16.25v15.387H0z"/></clipPath></defs>',viewBox:"0 0 20 20"},clock:{icon:'<path d="M10 1.875c-1.60697 0-3.17786.47652-4.514 1.36931-1.33615.89279-2.37756 2.16174-2.99252 3.64639-.61496 1.48465-.77586 3.1183-.46236 4.6944.31351 1.5761 1.08734 3.0238 2.22364 4.1601 1.1363 1.1363 2.58404 1.9102 4.16014 2.2237 1.57609.3135 3.2098.1526 4.6944-.4624 1.4847-.6149 2.7536-1.6563 3.6464-2.9925.8928-1.3361 1.3693-2.907 1.3693-4.514-.0023-2.15419-.859-4.21949-2.3823-5.74273C14.2195 2.73403 12.1542 1.87727 10 1.875Zm0 15c-1.35974 0-2.68895-.4032-3.81954-1.1586-1.13059-.7555-2.01178-1.8292-2.53213-3.0855-.52035-1.2562-.6565-2.63853-.39123-3.97215.26528-1.33362.92006-2.55862 1.88154-3.52011.96149-.96148 2.1865-1.61627 3.52012-1.88154 1.33362-.26527 2.71594-.12912 3.97224.39123 1.2562.52035 2.3299 1.40154 3.0854 2.53212C16.4718 7.31104 16.875 8.64025 16.875 10c-.0021 1.8227-.7271 3.5702-2.0159 4.8591-1.2889 1.2888-3.0364 2.0138-4.8591 2.0159ZM15 10c0 .1658-.0658.3247-.1831.4419-.1172.1173-.2761.1831-.4419.1831H10c-.16576 0-.32473-.0658-.44194-.1831-.11721-.1172-.18306-.2761-.18306-.4419V5.625c0-.16576.06585-.32473.18306-.44194C9.67527 5.06585 9.83424 5 10 5c.1658 0 .3247.06585.4419.18306.1173.11721.1831.27618.1831.44194v3.75h3.75c.1658 0 .3247.06585.4419.18306.1173.11721.1831.27618.1831.44194Z" fill="currentColor"/>',viewBox:"0 0 20 20"},templates:{icon:'<path d="M73.8 20H26.2c-3.4 0-6.2 2.8-6.2 6.2v47.6c0 3.4 2.8 6.2 6.2 6.2h47.6c3.4 0 6.2-2.8 6.2-6.2V26.2c0-3.4-2.8-6.2-6.2-6.2zM42.3 69.1c0 .8-.8 1.4-1.6 1.4H30.4c-.8 0-1.4-.8-1.4-1.6V48.8c0-.8.8-1.4 1.6-1.4H41c.8 0 1.4.8 1.4 1.6v20.1zm28.4.2c0 .8-.8 1.4-1.6 1.4H49.9c-.8 0-1.4-.8-1.4-1.6V48.8c0-.8.8-1.4 1.6-1.4h19.3c.8 0 1.4.8 1.4 1.6v20.3zm.2-29.4c0 .8-.8 1.4-1.6 1.4H30.4c-.8 0-1.4-.8-1.4-1.6v-9c0-.8.8-1.4 1.6-1.4h38.9c.8 0 1.4.8 1.4 1.6v9z"/>',viewBox:"0 0 100 100"},pages:{icon:'<path d="M5.4 2h5.7l2.7 2.7v7.5" stroke="#AEB1BD" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/><path d="M3 13.1V4.7a.9.9 0 0 1 .9-.9h5.851a.36.36 0 0 1 .255.106l1.888 1.889A.36.36 0 0 1 12 6.05v7.05a.9.9 0 0 1-.9.9H3.9a.9.9 0 0 1-.9-.9Z" stroke="#AEB1BD" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/><path d="M9.6 3.8v2.04a.36.36 0 0 0 .36.36H12" stroke="#AEB1BD" stroke-width=".9" stroke-linecap="round" stroke-linejoin="round"/>',viewBox:"0 0 16 16"},globalTypography:{icon:'<path d="M8.01496 2h4.95064c.6936 0 1.0319.34407 1.0319 1.03784 0 .53584.0056 1.07168 0 1.60188-.0056.5584-.3722.95323-.8853.95887-.5187.00564-.9021-.39483-.9134-.97015-.0057-.21434-.0113-.43432 0-.64865.0056-.15229-.0564-.18614-.1974-.18614-.9642.00564-1.934.00564-2.8982 0-.16351 0-.20298.05641-.20298.2087a1888.39089 1888.39089 0 0 1 0 7.98685c0 .1579.05074.2143.20862.2087.19735-.0057.3947-.0169.58642.0282.44544.1072.72734.4907.69354.9589-.0338.4343-.3834.7953-.82887.8065-1.04314.0113-2.08064.0113-3.12378 0-.45108-.0056-.81195-.3835-.84014-.8291-.0282-.4512.27065-.8517.72173-.9307.1748-.0338.35524-.0395.53003-.0282.19735.0113.25374-.0564.25374-.2538-.01128-.9758-.00564-1.95158-.00564-2.92737 0-1.65265-.00564-3.29965.00564-4.95229 0-.22562-.06203-.28203-.28193-.28203-.93037.01128-1.8551.01128-2.78546 0-.19735 0-.26501.04513-.2481.24818.01692.21434.00564.42867 0 .64865 0 .5302-.3947.92503-.89653.91939-.49056-.00564-.87962-.39483-.88526-.90247a89.767645 89.767645 0 0 1 0-1.74289c0-.5866.37215-.95323.95292-.95887h5.05781Z" fill="currentColor"/>',viewBox:"0 0 16 16"},activeCircle:{icon:'<circle cx="8" cy="8" r="8" fill="#446EF5"/><circle cx="8" cy="8" r="2.4" fill="#fff"/><circle cx="8" cy="8" r="4.8" stroke="#fff" stroke-width=".8"/>',viewBox:"0 0 16 16"},disabledCircle:{icon:'<circle cx="8" cy="8" r="8" fill="#C0C3CC"/><circle cx="8" cy="8" r="2.4" fill="#fff"/><circle cx="8" cy="8" r="4.8" stroke="#fff" stroke-width=".8"/>',viewBox:"0 0 16 16"},restoreCircle:{icon:'<path stroke="#fff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.2" d="M10.682 6.232h3.328L11.89 4.11a5.5 5.5 0 0 0-9.203 2.467m-.697 6.519V9.768m0 0h3.328m-3.328 0 2.12 2.122a5.5 5.5 0 0 0 9.202-2.467m.698-6.519v3.327"/>',viewBox:"0 0 16 16"},portalPopupArrow:{icon:'<path fill="currentColor" d="M0 13.04 10.252 0l10.251 13.04z"/>',viewBox:"0 0 20.5 13.04"},checkMarkCircle:{icon:'<path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="M14.25 8.75c-.5 2.5-2.385 4.854-5.03 5.38A6.25 6.25 0 0 1 3.373 3.798C5.188 1.8 8.25 1.25 10.75 2.25"/><path stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="m5.75 7.75 2.5 2.5 6-6.5"/>',viewBox:"0 0 16 16"},clearAll:{icon:'<path fill="currentColor" d="m12.103 11.838-.828-4.775h.28a.405.405 0 0 0 .406-.407v-3a.405.405 0 0 0-.406-.406H7.71V.406A.405.405 0 0 0 7.305 0h-2.5a.405.405 0 0 0-.407.406V3.25H.555a.405.405 0 0 0-.407.406v3c0 .225.182.407.407.407h.28l-.829 4.775a.405.405 0 0 0 .4.475h11.297a.404.404 0 0 0 .4-.475M1.243 4.344h4.25v-3.25h1.124v3.25h4.25v1.625H1.242zm7.312 6.875V8.78a.125.125 0 0 0-.125-.125h-.75a.125.125 0 0 0-.125.125v2.438h-3V8.78a.125.125 0 0 0-.125-.125h-.75a.125.125 0 0 0-.125.125v2.438H1.223l.705-4.063h8.252l.704 4.063z"/>',viewBox:"0 0 16 13"}})},8138:(e,t,r)=>{"use strict";r.d(t,{F:()=>o});var n=function(e){return{template:e,buildLink:function(t){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(t).reduce((function(e,r){return e.replace(":".concat(r),String(t[r]))}),e)}(e,t)}}},o={Home:n("/"),Addons:n("/addons"),CustomIcons:n("/custom-icons"),FontManager:n("/font-book"),InstalledFonts:n("/font-book/installed"),GoogleFonts:n("/font-book/google"),MediaManager:n("/media-manager"),Integrations:n("/integrations"),Languages:n("/languages"),Settings:n("/settings"),License:n("/settings/license"),ColorsLibrary:n("/settings/color-library"),TypographyLibrary:n("/settings/typography-library"),PageList:n("/pages"),PageEditor:n("/editor/:id/:type?"),PopupEditor:n("/popup-editor/:id/:type?"),DynamicContent:n("/dynamic-content"),DynamicContentSingleCollection:n("/dynamic-content/:collectionId"),DynamicContentCreateItem:n("/dynamic-content/:collectionId/items/create"),DynamicContentEditItem:n("/dynamic-content/:collectionId/items/:itemId"),Templates:n("/templates"),Icons:n("/icons")}},824:(e,t,r)=>{"use strict";r.d(t,{AF:()=>u,E0:()=>s,I8:()=>n,JB:()=>i,Nv:()=>l,Ue:()=>a,Uo:()=>p,V4:()=>f,W0:()=>o,W5:()=>d,qo:()=>c});var n={sansSerif:"system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', 'Noto Sans', 'Liberation Sans', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'"},o={0:"0",2:"2px",4:"4px",6:"6px",8:"8px",10:"10px",12:"12px",16:"16px",20:"20px",24:"24px",28:"28px",32:"32px",36:"36px",40:"40px",48:"48px",56:"56px",64:"64px",72:"72px",96:"96px",128:"128px",256:"256px",512:"512px"},i={10:"0.625rem",12:"0.75rem",14:"0.875rem",15:"0.0.938rem",16:"1rem",18:"1.125rem",20:"1.25rem",24:"1.5rem",28:"1.75rem",30:"1.875rem",32:"2rem",36:"2.25rem",40:"2.5rem",48:"3rem",56:"3.5rem",64:"4rem"},a={thin:100,extraLight:200,light:300,regular:400,medium:500,semiBold:600,bold:700,extraBold:800,black:900},l={12:"0.5rem",14:"0.75rem",15:"0.90rem",16:"1rem",18:"1.125rem",20:"1.25rem",24:"1.5rem",26:"1.625rem",28:"1.75rem",32:"2rem",36:"2.25rem",40:"2.5rem",44:"2.75rem",48:"3rem",56:"3.5rem",58:"3.625rem",64:"4rem"},c={base:{primary:"#3366FF",secondary:"#C9D8ED",white:"#FFFFFF",black:"#000000",surface:"#F0F4FA",error:"#F44337",warning:"#FFBF46",success:"#24A148",highlight:"#3E64DE"},text:{neutral:"#6B7699",default:"#484F66",hover:"#282D4F",hints:"#95979E",hint:"#7A7C85",disabled:"#B7BAC7",white:"#FFFFFF",primary:"#3162F5",error:"#E62305",warning:"#D98A00",success:"#1F7041"},icon:{default:"#7784A8",hover:"#343D57",neutral:"#E4E5E7",hints:"#AEB1BD",disabled:"#C0C3CC",white:"#FFFFFF",primary:"#446EF5",error:"#EF2C09",warning:"#F2B300",success:"#1F9942"},action:{primary:{default:"#3366FF",hover:"#0544FF",focus:"#0F41D6",active:"#3366FF",disabled:"#F1F1F1"},secondary:{default:"#EBEDF5",hover:"#D6DFFA",focus:"#002EB8",active:"#D0D9F2",disabled:"#F1F1F1"},error:{default:"#F44337",hover:"#C2362D",focus:"#B9321A",active:"#D0635C",disabled:"#FBBEBA"},outline:{default:"#D2D4D8",hover:"#3366FF",focus:"#002EB8",active:"#3366FF",disabled:"#F1F1F1"},aiAction:{default:"linear-gradient(76.81deg, #ff9645 -9.35%, #ff6471 19.29%, #cf6ebd 46.23%, #a477d1 79.9%, #268dda 110.21%)",hover:"linear-gradient(77deg, rgba(255, 150, 69, 0.1) -9.35%, rgba(255, 100, 113, 0.1) 19.29%, rgba(207, 110, 189, 0.1) 46.23%, rgba(164, 119, 209, 0.1) 79.9%, rgba(38, 141, 218, 0.1) 110.21%);"}},stroke:{neutral:"#D3D7EB",default:"#CDCFD5",hover:"#A7B3D1",disabled:"#D0D1D6",white:"#FFFFFF",primary:"#3366FF",error:"#EF2C09",warning:"#F2B300",success:"#1F9942",danger:"#FDD9D7"},background:{white:"#FFFFFF",neutral:"#F6F6F7",hover:"#F0F4FA",active:"#E4EBF5",disabled:"#F4F6F9",primary:"#EEF4FD",error:"#FFF0F0",warning:"#FDF4E3",success:"#E5F5EB",lightOrange:"#FFE9D6",lightGreen:"#E1F7D5",saturatedLightRed:"#FFEBEB",lightRoyalBlue:"#DBE4FF",lightYellow:"#FFF4D6",lightViridian:"#D3F0E2",danger:"#FDD9D7",placeholder:"#4c9ffe",folder:"#cdf3ff",proLabel:"#e5803c",proBackground:"linear-gradient(88.9deg, #d65702 6.26%, #e5803c 91.4%)",aiBackground:"linear-gradient(70deg, #FF9645 2%, #FF6471 25%, #CF6EBD 45%, #A477D1 70%, #268DDA 95%);",svgShape:"#F5F7F9"},alternate:{addon:"#00B84A",div:"#A660FF",orange:"#EE8F41",lightOrange:"#F5A812",red:"#EE563D",tenderGreen:"#64A942",saturatedRed:"#FF0000",viridian:"#10773F",backdrop:"#060C33B2"}},u={button:"0px 1px 0.25px rgba(17, 18, 19, 0.08), inset 0px -1px 0.25px rgba(17, 18, 19, 0.24)",combinedButton:"0px 1px 0px rgba(0, 0, 0, 0.05), inset 0px -1px 0px #bcbfc3, inset 1px 0px 0px #bbbfc3, inset 0px 1px 0px #bbbfc3",combinedButtonExtend:"0px 1px 0px rgba(0, 0, 0, 0.05), inset 0px -1px 0px #bcbfc3, inset 1px 0px 0px #bbbfc3, inset 0px 1px 0px #bbbfc3, inset -1px 0px 0px #bbbfc3",insetButtonPressed:"inset 0px 2px 0px rgba(17, 18, 19, 0.08)",card:"0px 2px 3px rgba(17, 18, 19, 0.05), 0px 0px 1px rgba(17, 18, 19, 0.25)",popover:"0px 6px 22px rgba(17, 18, 19, 0.08), 0px 4px 10px rgba(17, 18, 19, 0.1)",modal:"0px 0px 2px rgba(17, 18, 19, 0.2), 0px 30px 72px rgba(17, 18, 19, 0.2)",base:"0px 1px 3px rgba(17, 18, 19, 0.15)",input:"0px 1px 0px rgba(17, 18, 19, 0.05)",switch:"inset -1px -1px 3px rgba(0, 0, 0, 0.1)",switchKnob:"-1px 1px 1px rgba(29, 31, 51, 0.1)",topbar:"0px 1px 2px rgba(0, 0, 0, 0.12)",tabs:"inset 0px -1px 0px #dbdcdf",dividerTop:"inset 0px 1px 0px #E4E5E7",underline:"0px 1px 0px #C9CBCF",addon:"0px 1px 2px rgba(2, 11, 83, 0.15)",addonHover:"0px 3px 6px rgba(2, 11, 83, 0.1)",dropzone:"6px 6px 8px rgba(17, 18, 19, 0.14)",icon:"0px 2px 3px rgba(17, 18, 19, 0.05), 0px 0px 1px rgba(17, 18, 19, 0.25)",outline:"0px 0px 0px 1px ".concat(c.base.white,", 0px 0px 0px 3px ").concat(c.base.primary),proButton:"0px 4px 8px rgba(213, 85, 0, 0.2)"},s={2:"2px",3:"3px",4:"4px",5:"5px",6:"6px",8:"8px",10:"10px",14:"14px",20:"20px",24:"24px",30:"30px",40:"40px",50:"50px",circle:"50%",button:"7.5px"},d={negative:-1,positive:1,dropdown:2,level:0,sidebar:9,header:10,modal:25,highest:9999999},p={smallMobile:"@media(max-width: ".concat(480,"px)"),mobile:"@media(max-width: ".concat(768,"px)"),smallTablet:"@media(max-width: ".concat(991,"px)"),tablet:"@media(max-width: ".concat(1279,"px)"),desktop:"@media(min-width: ".concat(1280,"px)")},f=1292},4185:(e,t,r)=>{"use strict";r.d(t,{c:()=>i});var n=r(824),o=r(917),i={heading1:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[48],";line-height:",n.Nv[58],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading1;")},heading2:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[36],";line-height:",n.Nv[44],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading2;")},heading3:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[30],";line-height:",n.Nv[40],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading3;")},heading4:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[24],";line-height:",n.Nv[32],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading4;")},heading5:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[18],";line-height:",n.Nv[28],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading5;")},heading6:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[16],";line-height:",n.Nv[26],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:heading6;")},body:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[14],";line-height:",n.Nv[20],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:body;")},caption:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[12],";line-height:",n.Nv[16],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:caption;")},tiny:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"regular";return(0,o.iv)("font-size:",n.JB[10],";line-height:",n.Nv[18],";color:",n.qo.text.default,";font-weight:",n.Ue[e],";font-family:",n.I8.sansSerif,";;label:tiny;")}}},7038:(e,t,r)=>{"use strict";r.d(t,{XJ:()=>v,_7:()=>f,ru:()=>p});var n=r(8144),o=r(3460),i=r(5944);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}var l=["children","style","hideOnOverflow"];function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==a(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===a(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var p=function(e){return e[e.slideDown=0]="slideDown",e[e.slideUp=1]="slideUp",e[e.slideLeft=2]="slideLeft",e[e.slideRight=3]="slideRight",e[e.collapseExpand=4]="collapseExpand",e[e.zoomIn=5]="zoomIn",e[e.zoomOut=6]="zoomOut",e[e.fadeIn=7]="fadeIn",e[e.sidebar=8]="sidebar",e}({}),f=function(e){var t,r,i=e.data,a=e.animationType,l=void 0===a?p.collapseExpand:a,c=e.slideThreshold,s=void 0===c?20:c,f=e.animationDuration,v=void 0===f?150:f,h=e.minOpacity,b=void 0===h?0:h,y=e.maxOpacity,m=void 0===y?1:y,g=e.easing,E=void 0===g?n.Z5.easeInOutQuad:g,O=e.debounceMeasure,_=void 0!==O&&O,w=Array.isArray(i)?i.length>0:!!i,I=(t=(0,o.Z)({debounce:_?v+100:0}),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),S=I[0],C=I[1],x=(0,n.q_)({from:{height:0,opacity:b,y:0},to:{height:w?C.height:0,opacity:w?m:b,y:w?0:-1*s},config:{duration:v,easing:E}}),P=(0,n.q_)({from:{x:0},to:{x:w?0:-1*s},config:{duration:v,easing:E}}),L={x:0,y:0};switch(l){case p.slideDown:L.y=-1*s,L.x=0;break;case p.slideUp:L.y=s,L.x=0;break;case p.slideLeft:L.x=s,L.y=0;break;case p.slideRight:L.x=-1*s,L.y=0}var A=(0,n.Yz)(i,{from:u(u(u(u({opacity:b},L),l===p.zoomIn&&{transform:"scale(0.8)"}),l===p.zoomOut&&{transform:"scale(1.2)"}),l===p.fadeIn&&{opacity:0}),enter:u(u(u({opacity:m,x:0,y:0},l===p.zoomIn&&{transform:"scale(1)"}),l===p.zoomOut&&{transform:"scale(1)"}),l===p.fadeIn&&{opacity:1}),leave:u(u(u(u({opacity:b},L),l===p.zoomIn&&{transform:"scale(0.8)"}),l===p.zoomOut&&{transform:"scale(1.2)"}),l===p.fadeIn&&{opacity:0}),config:{duration:v,easing:E}});return{animationStyle:l===p.sidebar?P:x,ref:S,transitions:A}},v=function(e){var t=e.children,r=e.style,o=e.hideOnOverflow,a=void 0===o||o,c=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,l);return(0,i.tZ)(n.q.div,u(u({},c),{},{style:u(u({},r),{},{overflow:a?"hidden":"initial"}),children:t}))}},36:(e,t,r)=>{"use strict";r.d(t,{N:()=>i});var n=r(7294);function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var i=function(e){var t,r,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:300,a=(t=(0,n.useState)(e),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],c=a[1];return(0,n.useEffect)((function(){var t=setTimeout((function(){c(e)}),i);return function(){clearTimeout(t)}}),[e,i]),l}},802:(e,t,r)=>{"use strict";r.d(t,{O:()=>s});var n=r(7294),o=r(7536);function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){c(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==i(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==i(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===i(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var s=function(e){var t,r,i=(t=(0,n.useState)(),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],c=i[1];return l(l({},(0,o.cI)(e)),{},{submitError:a,setSubmitError:c})}},7898:(e,t,r)=>{"use strict";r.d(t,{A:()=>l});var n=r(1731),o=r(5945),i=r(4469);function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var l=function(e){var t=e.mutationFn,r=e.invalidateKeys,l=(0,o.NL)(),c=(0,n.p)().showToast;return(0,i.D)({mutationFn:t,onSuccess:function(){if(null!=r&&r.length){var e,t=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,l=!0,c=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return l=e.done,e},e:function(e){c=!0,i=e},f:function(){try{l||null==r.return||r.return()}finally{if(c)throw i}}}}(r);try{for(t.s();!(e=t.n()).done;){var n=e.value;l.invalidateQueries(n)}}catch(e){t.e(e)}finally{t.f()}}},onError:function(e){c({type:"danger",message:e.message})}})}},4411:(e,t,r)=>{"use strict";r.d(t,{Z:()=>l});var n=r(7602),o=r(7294);function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return a(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const l=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.threshold,r=void 0===t?0:t,a=e.root,l=void 0===a?null:a,c=e.rootMargin,u=void 0===c?"0%":c,s=e.freezeOnceVisible,d=void 0!==s&&s,p=(0,o.useRef)(null),f=i((0,o.useState)(),2),v=f[0],h=f[1],b=(null==v?void 0:v.isIntersecting)&&d,y=function(e){var t=i(e,1)[0];h(t)};return(0,o.useEffect)((function(){var e=p.current;if((0,n.$K)(window.IntersectionObserver)&&!b&&e){var t=new IntersectionObserver(y,{threshold:r,root:l,rootMargin:u});return t.observe(e),function(){return t.disconnect()}}}),[p.current,r,l,u,b]),{intersectionEntry:v,intersectionElementRef:p}}},111:(e,t,r)=>{"use strict";r.d(t,{K:()=>i});var n=r(7294);function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var i=function(){var e,t,r=(e=(0,n.useState)(!1),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=r[0],a=r[1],l=function(e){"shift"===e.key.toLowerCase()&&a(!0)},c=function(e){"shift"===e.key.toLowerCase()&&a(!1)};return(0,n.useEffect)((function(){return window.addEventListener("keydown",l),window.addEventListener("keyup",c),function(){window.removeEventListener("keydown",l),window.removeEventListener("keyup",c)}}),[]),i}},4370:(e,t,r)=>{"use strict";r.d(t,{a:()=>v});var n=r(3106),o=r(9182),i=r(7294),a=r(4420);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==l(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===l(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return p(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var f=(0,a.createEnumParam)(["asc","desc"]),v=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.limit,r=void 0===t?n.Hy:t,l=e.updateQueryParams,c=void 0!==l&&l,s=e.isCollectionPage,p=void 0!==s&&s,v=d((0,a.useQueryParams)({page:(0,a.withDefault)(a.NumberParam,p&&Number((0,o.Kk)(n.cf.DYNAMIC_CONTENT_PAGINATOR_CURRENT_PAGE))||1),sortProperty:(0,a.withDefault)(a.StringParam,""),sortDirection:(0,a.withDefault)(f,void 0),filter:(0,a.withDefault)(a.JsonParam,{})}),2),h=v[0],b=v[1],y=d((0,i.useState)({page:p&&Number((0,o.Kk)(n.cf.DYNAMIC_CONTENT_PAGINATOR_CURRENT_PAGE))||1,sortProperty:"",sortDirection:void 0,filter:{}}),2),m=y[0],g=y[1],E=c?m:h,O=(r=h.filter.limit?Number(h.filter.limit):r)*Math.max(0,E.page-1),_=(0,i.useCallback)((function(e){c?g((function(t){return u(u({},t),e)})):(b(u({},e)),e.page&&p&&(0,o.jw)(n.cf.DYNAMIC_CONTENT_PAGINATOR_CURRENT_PAGE,JSON.stringify(e.page)))}),[b,g,c]),w=(0,i.useCallback)((function(e){return _({filter:e})}),[_]);return{pageInfo:E,onPageChange:function(e){return _({page:e})},onColumnSort:function(e){var t;t=e!==E.sortProperty?{sortDirection:"asc",sortProperty:e}:{sortDirection:"asc"===E.sortDirection?"desc":"asc",sortProperty:e},_(t)},offset:O,itemsPerPage:r,onFilterItems:w}}},1954:(e,t,r)=>{"use strict";r.d(t,{h:()=>w,l:()=>_});var n=r(1709),o=r(3106),i=r(824),a=r(917),l=r(1921),c=r(7294),u=r(3935),s=r(9752),d=r(4285),p=r(7602),f=r(7038),v=r(2200),h=r(5944);function b(e){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},b(e)}function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){g(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function g(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==b(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==b(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===b(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return O(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?O(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var _=function(e){var t,r=e.isOpen,n=e.triggerRef,i=e.arrow,a=void 0===i?"auto":i,l=e.gap,u=void 0===l?10:l,s=e.isDropdown,d=void 0!==s&&s,p=(0,c.useMemo)((function(){return n||{current:null}}),[n]),f=(0,c.useRef)(null),h=(0,v.D)(null===(t=f.current)||void 0===t?void 0:t.getBoundingClientRect()),b=E((0,c.useState)(0),2),y=b[0],g=b[1],O=E((0,c.useState)({left:0,top:0,arrowPlacement:"bottom"}),2),_=O[0],w=O[1];return(0,c.useEffect)((function(){if(p.current){var e=p.current.getBoundingClientRect();g(e.width)}}),[p]),(0,c.useEffect)((function(){if(r&&p.current&&f.current){var e=p.current.getBoundingClientRect(),t=f.current.getBoundingClientRect(),n=h||{},i=n.height,l=n.top,c=t.width||e.width,s=t.height;if(i!==s||l!==t.top){var v={top:0,left:0},b="bottom",g=window.innerHeight||document.documentElement.clientHeight,E=window.innerWidth||document.documentElement.clientWidth,O=s+u,_=c+u,I=g-s,S=function(){if("auto"===a&&E>e.left+c){var t=Math.floor(e.left);return t<u?u:t}if("auto"===a&&e.left>c){var r=Math.floor(e.right-c);return r<u?u:r}var n=Math.floor(e.left-(c-y)/2);return n<u?u:n},C=function(){var t=Math.floor(e.top-s/2+e.height/2);if(t<u)return u;if(t+s+u>g){var r=t+s-g+u,n=Math.floor(t-r);return n<u?u:n}return t},x=function(t){var r=t.arrowPosition,n=Math.floor(e.left-c-u),o=Math.floor(e.right+u);return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e+c>E){var t=e+c-E,r=Math.floor(e-t);return r<u?u:r}return e<u?u:e}("left"===r?n:o)},P=function(t){var r=t.arrowPosition,n=Math.floor(e.top-s-u),o=Math.floor(e.bottom+u);return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;if(e<u)return u;if(e+s>g){var t=e+s-g,r=Math.floor(e-t);return r<u?u:r}return e}("top"===r?n:o)},L=function(e,t){return o.dZ?"left"===t?Math.max(0,E-2*c-e):Math.max(0,E-c-e):e},A={top:{top:P({arrowPosition:"top"}),left:L(S())},bottom:{top:P({arrowPosition:"bottom"}),left:L(S())},left:{top:C(),left:L(x({arrowPosition:"left"}),"left")},right:{top:C(),left:L(x({arrowPosition:"right"}),"right")},middle:{top:I<u?u:I/2,left:L(Math.floor(e.left-c/2+e.width/2))}};"auto"!==a?(v={top:A.bottom,bottom:A.top,left:A.right,right:A.left,middle:A.middle}[a],b=a):e.bottom+O>g&&e.top>O?(v=A.top,b="bottom"):_>e.left&&e.bottom+O>g&&!d?(v=A.right,b="left"):_<e.left&&e.bottom+O>g&&!d?(v=A.left,b="right"):e.bottom+O<=g?(v=A.bottom,b="top"):(v=A.middle,b="middle"),w(m(m({},v),{},{arrowPlacement:b}))}}}),[p,f,h,y,r,u,a,d]),{position:_,triggerWidth:y,triggerRef:p,popoverRef:f}},w=function(e){var t=e.isOpen,r=e.children,o=e.onClickOutside,i=e.animationType,a=void 0===i?f.ru.slideDown:i,l=e.customZIndex,d=e.hasBackdropBackground,v=void 0!==d&&d,b=e.disableDrag,y=void 0!==b&&b,m=(0,n.d)().hasModalOnStack,g="portal-".concat((0,p.x0)()),O=E((0,c.useState)({x:0,y:0}),2),_=O[0],w=O[1];(0,c.useEffect)((function(){return t&&(document.body.style.overflow="hidden"),function(){m||(document.body.style.overflow="initial")}}),[t,m]);var S=(0,f._7)({data:t,animationType:a}).transitions,x=(0,s.Dy)((0,s.VT)(s.we,{activationConstraint:{distance:8}}));(0,c.useEffect)((function(){t||setTimeout((function(){w({x:0,y:0})}),300)}),[t]);var P=function(e){var t=e.delta;t&&w((function(e){return{x:e.x+t.x,y:e.y+t.y}}))};return S((function(e,t){if(t){var n=y?r:(0,h.tZ)(I,{dragId:g,dragOffset:_,children:r}),i=(0,h.tZ)(f.XJ,{css:C.wrapper(l),style:e,children:(0,h.BX)("div",{role:"presentation",children:[(0,h.tZ)("div",{css:C.backdrop(v),onClick:function(e){o&&o(e)},role:"presentation"}),n]})});return(0,u.createPortal)((0,h.tZ)(s.LB,{sensors:x,onDragEnd:P,children:i}),document.body)}}))},I=function(e){var t=e.children,r=e.dragId,n=e.dragOffset,o=void 0===n?{x:0,y:0}:n,i=(0,s.O1)({id:r}),a=i.attributes,l=i.listeners,c=i.setNodeRef,u=i.transform,p={transform:d.ux.Transform.toString({x:o.x+((null==u?void 0:u.x)||0),y:o.y+((null==u?void 0:u.y)||0),scaleX:(null==u?void 0:u.scaleX)||1,scaleY:(null==u?void 0:u.scaleY)||1})},f=m(m({},l),{},{onPointerDown:function(e){for(var t=e.target;t;){if(t.classList&&Array.from(t.classList).some((function(e){return e.includes("inputWrapper")||e.includes("cardInnerSection")||e.includes("actionContainer")||e.includes("optionsWrapper")||e.includes("selectContent")||e.includes("verticalDevicesContainer")})))return;t=t.parentElement}l&&l.onPointerDown&&l.onPointerDown(e)}});return(0,h.tZ)("div",m(m(m({ref:c,css:C.draggableContent,style:p},a),f),{},{children:t}))},S={name:"18bn43e-backdrop",styles:"background-color:rgba(0, 0, 0, 0.1);label:backdrop;"},C={wrapper:function(e){return(0,a.iv)("position:fixed;z-index:",e||i.W5.highest,";inset:0;;label:wrapper;")},backdrop:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,a.iv)(l.iZ.centeredFlex,";position:fixed;inset:0;z-index:",i.W5.negative,";",e&&S,";;label:backdrop;")},draggableContent:{name:"7pnsh3-draggableContent",styles:"cursor:grab;&:active{cursor:grabbing;}& [class*='inputWrapper'],& [class*='cardInnerSection']{cursor:auto;&:active{cursor:auto;}};label:draggableContent;"}}},2200:(e,t,r)=>{"use strict";r.d(t,{D:()=>o});var n=r(7294),o=function(e){var t=(0,n.useRef)();return(0,n.useEffect)((function(){t.current=e}),[e]),t.current}},2447:(e,t,r)=>{"use strict";r.d(t,{Z:()=>o});var n=r(9250),o=function(e){return(0,n.UO)()}},2811:(e,t,r)=>{"use strict";r.d(t,{T:()=>u});var n=r(3106),o=r(2445),i=r(3896),a=r(7602),l=r(2902),c=r(7294),u=function(){var e=(0,o.F)((function(e){return e.type})),t=(0,o.F)((function(e){return e.payload})),r=(0,o.F)((function(e){return e.setSettings})),u=(0,i.o)((function(e){return e.page}));return{closeSettingPanel:(0,c.useCallback)((function(){return r(null,{sectionIndex:null,columnIndex:null,addonIndex:null,tableItem:void 0})}),[r]),prepareFormDataBeforeSaving:(0,c.useCallback)((function(r){var o=t.sectionIndex,i=t.columnIndex,c=t.addonIndex,s=t.tableItem;switch(e){case"addon":if((0,a.$K)(o)&&(0,a.$K)(i)&&(0,a.$K)(c))return u[o].columns[i].addons[c].name===n.pb.name&&(0,a.$K)(s)?(0,a.$K)(s.rowItemIdx)?(0,l.ZP)(u,(function(e){var t;(null===(t=e[o].columns[i].addons[c].settings)||void 0===t?void 0:t[n.pb.bodyItemsKey])[s.itemIdx][n.pb.bodyItemsKey][s.rowItemIdx].content[s.contentItemIdx].settings=r})):(0,l.ZP)(u,(function(e){var t;(null===(t=e[o].columns[i].addons[c].settings)||void 0===t?void 0:t[n.pb.headerItemsKey])[s.itemIdx].content[s.contentItemIdx].settings=r})):(0,l.ZP)(u,(function(e){e[o].columns[i].addons[c].settings=r}));case"collection_item":if((0,a.$K)(o)&&(0,a.$K)(i)&&(0,a.$K)(c))return(0,l.ZP)(u,(function(e){e[o].columns[i].addons[c].settings.collection_item=r}));case"column":if((0,a.$K)(o)&&(0,a.$K)(i))return(0,l.ZP)(u,(function(e){e[o].columns[i].settings=r}));case"section":if((0,a.$K)(o))return(0,l.ZP)(u,(function(e){e[o].settings=r}));default:return u}}),[e,t,u])}}},2739:(e,t,r)=>{"use strict";r.d(t,{_:()=>l});var n=r(3106),o=r(3896),i=r(7602),a=r(7294),l=function(){var e=(0,o.o)((function(e){return e.page})),t=(0,a.useCallback)((function(t){var r=e.findIndex((function(e){return e.id===t}));return{index:r,content:e[r]}}),[e]),r=(0,a.useCallback)((function(t){var r=t.id,n=t.rowId,o=t.columnId,a=e.findIndex((function(e){return e.id===r&&(0,i.$K)(e.parent)&&"boolean"!=typeof e.parent&&e.parent.rowId===n&&e.parent.columnId===o}));return{index:a,content:e[a]}}),[e]),l=(0,a.useCallback)((function(t){var r,n=t.sectionIndex,o=t.columnIndex,a=t.id,l=e[n],c=(0,i.$K)(l)?l.columns[o]:null,u=null!==(r=null==c?void 0:c.addons)&&void 0!==r?r:[],s=u.findIndex((function(e){return e.id===a}));return{content:u[s],index:s}}),[e]),c=(0,a.useCallback)((function(t){if(!(0,i.$K)(t))return{};var r=e[t];return(0,i.$K)(r)?r.settings:{}}),[e]),u=(0,a.useCallback)((function(t){var r=t.sectionIndex,n=t.columnIndex;if(!(0,i.$K)(r)||!(0,i.$K)(n))return null;var o=e[r];return(0,i.$K)(o)?o.columns[n]:null}),[e]),s=(0,a.useCallback)((function(t){var r,n=t.sectionIndex,o=t.columnIndex,a=e[n],l=(0,i.$K)(a)?a.columns[o]:null;return null!==(r=null==l?void 0:l.settings)&&void 0!==r?r:{}}),[e]),d=(0,a.useCallback)((function(t){var r,n,o=t.sectionIndex,a=t.columnIndex,l=t.addonIndex,c=e[o],u=(0,i.$K)(c)?c.columns[a]:null,s=(0,i.$K)(c)?null==u?void 0:u.addons[l]:null;return(0,i.$K)(s)&&(0,i.$K)(null===(r=s.settings)||void 0===r?void 0:r.collection_item)?null===(n=s.settings)||void 0===n?void 0:n.collection_item:{}}),[e]),p=(0,a.useCallback)((function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,a=e[r],l=(0,i.$K)(a)?a.columns[n]:null;return(0,i.$K)(l)?l.addons[o]:null}),[e]),f=(0,a.useCallback)((function(t){var r,n=t.sectionIndex,o=t.columnIndex,a=t.addonIndex,l=t.collectionItem,c=e[n],u=(0,i.$K)(c)?c.columns[o]:null,s=(0,i.$K)(u)?u.addons[a]:null,d=l.itemAddonIndex,p=l.itemIndex;return null==s||null===(r=s.items)||void 0===r?void 0:r[p][d]}),[e]),v=(0,a.useCallback)((function(t){var r,n,o,a=t.sectionIndex,l=t.columnIndex,c=t.addonIndex,u=t.collectionItem,s=t.itemAddonId,d=u.itemIndex,p=e[a],f=(0,i.$K)(p)?p.columns[l]:null,v=null!==(r=null==f?void 0:f.addons[c])&&void 0!==r?r:null,h=null!==(n=null==v||null===(o=v.items)||void 0===o?void 0:o[d])&&void 0!==n?n:[],b=h.findIndex((function(e){return e.id===s}));return{content:h[b],index:b}}),[e]);return{getSectionById:t,getNestedRowById:r,getColumnById:u,getChildAddonById:l,getSectionSettings:c,getColumnSettings:s,getCollectionItemSettings:d,getAddon:p,getTableItem:(0,a.useCallback)((function(t){var r,o=t.sectionIndex,a=t.columnIndex,l=t.addonIndex,c=t.tableItem,u=e[o],s=(0,i.$K)(u)?u.columns[a]:null,d=(0,i.$K)(s)?s.addons[l]:null,p=c.itemIdx,f=c.rowItemIdx,v=c.contentItemIdx;if((0,i.$K)(f)){var h,b=null==d||null===(h=d.settings)||void 0===h?void 0:h[n.pb.bodyItemsKey];return null==b?void 0:b[p].table_advanced_item[f].content[v]}var y=null==d||null===(r=d.settings)||void 0===r?void 0:r[n.pb.headerItemsKey];return null==y?void 0:y[p].content[v]}),[e]),getCollectionItemAddon:f,getCollectionItemAddonChildAddonById:v}}},1234:(e,t,r)=>{"use strict";r.d(t,{$:()=>l,O:()=>c});var n=r(7602),o=r(7294);function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var a=function(e,t){var r,n=(r=e.matchAll(/\{\{([^(}})]+)/gm),function(e){if(Array.isArray(e))return i(e)}(r)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?i(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).map((function(e){return e[1]})).filter((function(e){return!!e})),o=e;return n.forEach((function(e){var r=new RegExp("{{".concat(e,"}}"));o=o.replace(r,String(t[e]))})),o},l=function(){return(0,o.useCallback)((function(e,t,r){var o=(0,n.$K)(r)&&r>1?"".concat(e,"_PLURAL"):e,i=n.Xy.Text._(o)||o;return t?a(i,t):i}),[])},c=function(e,t){var r=n.Xy.Text._(e)||e;return(0,n.$K)(t)?a(r,t):r}},908:(e,t,r)=>{"use strict";r.d(t,{Q:()=>o});var n=r(2328),o=function(){return(0,n.v)((function(e){return e.appConfig})).permissions}},4974:(e,t,r)=>{"use strict";var n=r(824),o=r(4185),i=r(917),a=r(9180),l=r.n(a),c=r(7294),u=r(9125),s=r(5944);function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}function p(){p=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof v?t:v,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var f={};function v(){}function h(){}function b(){}var y={};c(y,i,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(P([])));g&&g!==t&&r.call(g,i)&&(y=g);var E=b.prototype=v.prototype=Object.create(y);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,p=u.value;return p&&"object"==d(p)&&r.call(p,"__await")?t.resolve(p.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(p).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===f)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,f;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return h.prototype=b,n(E,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:h,configurable:!0}),h.displayName=c(b,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===h||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,c(e,l,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),c(E,l,"Generator"),c(E,i,(function(){return this})),c(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},e}function f(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function v(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,(void 0,o=function(e,t){if("object"!==d(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==d(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(n.key),"symbol"===d(o)?o:String(o)),n)}var o}function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(e,t)}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}var y=function(e){return e.split("?")[0]},m=function(e){var t=e.indexOf("store");return t>-1?e.slice(t):""},g=function(e){!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(g,e);var t,r,o,i,a,c=(i=g,a=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,t=b(i);if(a){var r=b(this).constructor;e=Reflect.construct(t,arguments,r)}else e=t.apply(this,arguments);return function(e,t){if(t&&("object"===d(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(this,e)});function g(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,g),(t=c.call(this,e)).state={hasError:!1,error:void 0,errorInfo:void 0,stack:[],source:[],position:{line:null,column:null,startLine:null,source:""}},u.SourceMapConsumer.initialize({"lib/mappings.wasm":"https://unpkg.com/source-map@0.7.3/lib/mappings.wasm"}),t}return t=g,r=[{key:"componentDidCatch",value:function(e,t){var r=this;setTimeout((function(){var n,o=l().parse(e),i=(n=o[0].fileName||"","".concat(y(n),".map"));fetch(i).then((function(e){return e.json()})).then(function(){var e,t=(e=p().mark((function e(t){var n,i,a,l,c,s,d,f,v,h,b,y,m;return p().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new u.SourceMapConsumer(t);case 2:n=e.sent,i=o[0],a=n.originalPositionFor({line:Number(i.lineNumber),column:Number(i.columnNumber)}),l=-1,a.source&&(c=a.source.split("/"),s=c[c.length-1]||"",l=t.sources.findIndex((function(e){return e.endsWith(s)}))),l>-1&&(f=t.sourcesContent[l].split(/\r?\n/),v=a.line,h=Math.max(0,(v||0)-3),b=Math.min(f.length-1,(v||0)+4),y=f.slice(h,b+1),m=null===(d=a.source)||void 0===d?void 0:d.slice(a.source.indexOf("src")),r.setState({source:y,position:{line:a.line,column:a.column,source:m||"",startLine:h}}));case 8:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){f(i,n,o,a,l,"next",e)}function l(e){f(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}()),r.setState({error:e,errorInfo:t,stack:o})}),100)}},{key:"renderErrorSource",value:function(){var e=this,t=this.state.position;return t.line||t.column?(0,s.BX)("div",{css:O.titleAndContent,children:[(0,s.tZ)("h4",{css:O.callStack,children:"Source"}),(0,s.BX)("div",{css:O.sourceWrapper,children:[(0,s.BX)("p",{css:O.sourceFilePath,children:[t.source," (",t.line,":",t.column,")"]}),(0,s.tZ)("div",{css:O.sourceEditor,children:(0,s.tZ)("div",{css:O.sourceLinesWrapper,children:this.state.source.map((function(r,o){var i=o+(t.startLine||0)+1,a=i===(t.line||0),l=e.state.source.length+(t.startLine||0);return(0,s.BX)("div",{css:O.sourceLine(a),children:[(0,s.BX)("div",{children:[(0,s.tZ)("span",{css:O.angleRight,children:a&&">"}),(0,s.BX)("span",{css:O.lineNumber,children:[i," | "]}),(0,s.tZ)("span",{css:O.line,children:r})]}),a&&(0,s.BX)("div",{children:[(0,s.tZ)("span",{css:O.angleRight,children:" "}),(0,s.BX)("span",{css:O.lineNumber,children:[" ".repeat(l.toString().length)," | "]}),(0,s.BX)("span",{css:[O.line,{color:n.qo.text.error},";label:renderErrorSource;"],children:[" ".repeat(t.column||0),"^"]})]})]},o)}))})})]})]}):(0,s.tZ)("p",{css:O.consoleMessage,children:"Please open the browser console for more information!"})}},{key:"render",value:function(){if(this.state.hasError){var e=this.state,t=e.error,r=e.position,n=e.stack;return(0,s.tZ)("div",{css:O.container,children:(0,s.tZ)("div",{css:O.wrapper,children:(0,s.BX)("div",{css:O.scrollWrapper,children:[(0,s.tZ)("div",{css:O.indicator}),(0,s.tZ)("h2",{css:O.errorHeading,children:"Unhandled Runtime Error"}),(0,s.tZ)("p",{css:O.errorMessage,children:(null==t?void 0:t.toString())||"Something Went Wrong!"}),this.renderErrorSource(),(0,s.BX)("div",{css:O.callStackWrapper,children:[(0,s.tZ)("h4",{css:O.callStack,children:"Call Stack"}),n.map((function(e,t){return(0,s.BX)("div",{css:O.stackItem,children:[(0,s.tZ)("h6",{css:O.functionName,children:e.functionName||(n=r.source||"",o=n.split("/"),0===o.length?"":o[o.length-1])}),(0,s.BX)("p",{css:O.filePath,children:[y(m(e.fileName||""))," (",e.lineNumber,":",e.columnNumber,")"]})]},t);var n,o}))]})]})})})}return this.props.children}}],o=[{key:"getDerivedStateFromError",value:function(){return{hasError:!0}}}],r&&v(t.prototype,r),o&&v(t,o),Object.defineProperty(t,"prototype",{writable:!1}),g}(c.Component);const E=g;var O={container:(0,i.iv)("*{box-sizing:border-box;padding:0;margin:0;}font-family:",n.I8.sansSerif,";width:100%;height:100vh;display:flex;justify-content:center;align-items:center;background:",n.qo.base.white,";;label:container;"),sourceLinesWrapper:{name:"1wzln0q-sourceLinesWrapper",styles:"display:flex;flex-direction:column;label:sourceLinesWrapper;"},consoleMessage:(0,i.iv)(o.c.heading6("bold"),";margin-top:",n.W0[24],";color:",n.qo.text.success,";;label:consoleMessage;"),sourceLine:function(e){return(0,i.iv)("white-space:pre-wrap;",e&&(0,i.iv)("color:",n.qo.text.error,";;label:sourceLine;"),";;label:sourceLine;")},angleRight:{name:"1xm2me6-angleRight",styles:"min-width:20px;display:inline-block;margin-right:12px;label:angleRight;"},lineNumber:{name:"1d5ggue-lineNumber",styles:"min-width:50px;display:inline-block;label:lineNumber;"},line:{name:"hjznk4-line",styles:"width:100%;label:line;"},wrapper:(0,i.iv)("max-width:",960,"px;width:100%;background:",n.qo.base.white,";box-shadow:",n.AF.modal,";padding:",n.W0[20],";border-radius:",n.E0[6],";position:relative;overflow:hidden;;label:wrapper;"),scrollWrapper:{name:"1nknjjd-scrollWrapper",styles:"height:80vh;overflow-y:auto;label:scrollWrapper;"},indicator:(0,i.iv)("width:100%;height:5px;background:",n.qo.base.error,";position:absolute;top:0;left:0;;label:indicator;"),errorHeading:(0,i.iv)("font-size:",n.JB[20],";font-weight:",n.Ue.bold,";margin-bottom:",n.W0[4],";color:",n.qo.text.default,";;label:errorHeading;"),errorMessage:(0,i.iv)("font-size:",n.JB[14],";font-weight:",n.Ue.bold,";color:",n.qo.base.black,";font-family:",n.I8.sansSerif,";margin-top:",n.W0[4],";color:",n.qo.text.error,";;label:errorMessage;"),callStack:(0,i.iv)(o.c.heading6("bold"),";color:",n.qo.text.default,";;label:callStack;"),callStackWrapper:(0,i.iv)("margin-top:",n.W0[48],";font-size:",n.JB[18],";display:flex;flex-direction:column;gap:",n.W0[20],";;label:callStackWrapper;"),stackItem:(0,i.iv)("font-size:",n.JB[18],";display:flex;flex-direction:column;gap:",n.W0[4],";;label:stackItem;"),functionName:(0,i.iv)(o.c.heading6(),";color:",n.qo.text.default,";font-family:",n.I8.sansSerif,";;label:functionName;"),filePath:(0,i.iv)("color:",n.qo.text.neutral,";margin-left:",n.W0[12],";font-family:",n.I8.sansSerif,";font-size:",n.JB[14],";;label:filePath;"),sourceEditor:(0,i.iv)("padding:",n.W0[8]," ",n.W0[32],";;label:sourceEditor;"),sourceWrapper:(0,i.iv)("margin-top:",n.W0[4],";background-color:#292929;border-radius:",n.E0[6],";color:",n.qo.base.highlight,";;label:sourceWrapper;"),sourceFilePath:(0,i.iv)("padding:",n.W0[8]," ",n.W0[16],";border-bottom:1px solid #cccccc;color:#cccccc;;label:sourceFilePath;"),titleAndContent:(0,i.iv)("margin-top:",n.W0[24],";;label:titleAndContent;")},_=r(3871),w=r(7498),I=r(7264),S=r(7579),C=r(5587),x=r(4285),P=r(9101),L=r(1234),A=r(7602);function T(e){return T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},T(e)}function D(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?D(Object(r),!0).forEach((function(t){R(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):D(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function R(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==T(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==T(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===T(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function j(e){switch(e){case"text":return{id:(0,A.x0)(),name:"Text",type:"text",placeholder:"",default_value:"",max_length:"",description:"",required:0,is_textarea:0};case"alias":return{id:(0,A.x0)(),name:"Alias",type:"alias",description:"",placeholder:"",required:1};case"rich-text":return{id:(0,A.x0)(),name:"Rich Text",type:"rich-text",description:"",required:0,max_length:"",min_length:"",placeholder:""};case"image":return{id:(0,A.x0)(),name:"Image",type:"image",description:"",required:0,default_value:"",placeholder:""};case"gallery":return{id:(0,A.x0)(),name:"Gallery",type:"gallery",description:"",placeholder:"",required:0,min_length:"",max_length:""};case"icon":return{id:(0,A.x0)(),name:"Icon",type:"icon",description:"",required:0,default_value:"",placeholder:""};case"video":return{id:(0,A.x0)(),name:"Video",type:"video",description:"",required:0,default_value:"",placeholder:""};case"date-time":return{id:(0,A.x0)(),name:"Date-time",type:"date-time",description:"",placeholder:"",required:0,show_time:1};case"number":return{id:(0,A.x0)(),name:"Number",type:"number",description:"",default_value:"",max_length:"",min_length:"",placeholder:"",required:0,number_step:"1",number_format:"any",allow_negative:0,number_unit:""};case"switch":return{id:(0,A.x0)(),name:"Switch",type:"switch",description:"",default_value:0,placeholder:"",required:0};case"color":return{id:(0,A.x0)(),name:"Color",type:"color",description:"",default_value:"#000000",placeholder:"",required:0};case"option":return{id:(0,A.x0)(),name:"Option",type:"option",description:"",options:[{label:"Option 1",value:(0,A.x0)()},{label:"Option 2",value:(0,A.x0)()}],default_value:"option-1",placeholder:"Enter option",required:0};case"file":return{id:(0,A.x0)(),name:"File",type:"file",description:"",required:0,file_extensions:[],placeholder:"Enter file"};case"reference":return{id:(0,A.x0)(),name:"Reference",type:"reference",description:"",reference_collection_id:1,reference_collection_name:"ref-collection",placeholder:"",required:0,default_value:[],reference_items:[]};case"multi-reference":return{id:(0,A.x0)(),name:"Multi reference",type:"multi-reference",description:"",reference_collection_id:1,reference_collection_name:"ref-collection",default_value:[],placeholder:"",required:0,reference_items:[]};case"title":return{id:(0,A.x0)(),name:"Content",type:"title",description:"",placeholder:"Enter content",required:1};case"email":return{id:(0,A.x0)(),name:"Email",type:"email",description:"",placeholder:"",required:0};case"phone":return{id:(0,A.x0)(),name:"Phone",type:"phone",description:"",placeholder:"",required:0};case"rating":return{id:(0,A.x0)(),name:"Rating",type:"rating",description:"",default_value:"",max_length:"",min_length:"",placeholder:"",required:0,number_format:"integer",number_step:1};case"link":return{id:(0,A.x0)(),name:"Link",type:"link",description:"",placeholder:"",required:0};case"location":return{id:(0,A.x0)(),name:"Location",type:"location",description:"",placeholder:"",is_single_location:1,required:0};default:return{id:(0,A.x0)(),name:"Content",type:"title",description:"",placeholder:"",required:0}}}function B(e){return e?{title:"collectionTitleField",text:"collectionTitleField",alias:"collectionAliasField","rich-text":"collectionRichTextField",image:"collectionImageField",icon:"collectionIconField",gallery:"collectionGalleryField",video:"collectionVideoField",email:"collectionEmailField",phone:"collectionPhoneField","date-time":"collectionDateTimeField",number:"collectionNumberField",link:"collectionLinkField",switch:"collectionSwitchField",color:"collectionColorField",option:"collectionOptionField",file:"collectionFileField",rating:"collectionRatingField",reference:"collectionReferenceField",location:"collectionLocationField","multi-reference":"collectionMultiReferenceField"}[e]:"plusCircle"}var M=[{title:"Text",type:"text"},{title:"Rich Text",type:"rich-text"},{title:"Image",type:"image"},{title:"Gallery",type:"gallery"},{title:"Icon",type:"icon"},{title:"Video",type:"video"},{title:"Email",type:"email"},{title:"Phone",type:"phone"},{title:"Date/Time",type:"date-time"},{title:"Number",type:"number"},{title:"Rating",type:"rating"},{title:"Link",type:"link"},{title:"Location",type:"location"},{title:"Switch",type:"switch"},{title:"Option",type:"option"},{title:"File",type:"file"},{title:"Reference",type:"reference"},{title:"Multi-Reference",type:"multi-reference"}],k=[{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DUPLICATE"},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REMOVE"}],N=function(e){return 1===e?{required:{value:!0,message:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_REQUIRED")}}:{}},G=function(e,t){return Z(Z(Z({},(0,A.$K)(t)&&(0,A.$K)(e)&&{validate:function(r){return r.length<=Number(t)?r.length>=Number(e)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_LENGTH",{length:e}):(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MAX_LENGTH",{length:t})}}),(0,A.$K)(t)&&!(0,A.$K)(e)&&{validate:function(e){return e.length<=Number(t)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MAX_LENGTH",{length:t})}}),(0,A.$K)(e)&&!(0,A.$K)(t)&&{validate:function(t){return t.length>=Number(e)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_LENGTH",{length:e})}})},W=function(e){var t=document.createElement("div");return t.innerHTML=e,t.innerText||""},U=function(e,t){return Z(Z(Z({},(0,A.$K)(t)&&(0,A.$K)(e)&&{validate:function(r){var n=W(r).split(" ").join("").trim();return n.length<=Number(t)?n.length>=Number(e)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_LENGTH",{length:e}):(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MAX_LENGTH",{length:t})}}),(0,A.$K)(t)&&!(0,A.$K)(e)&&{validate:function(e){return W(e).split(" ").join("").trim().length<=Number(t)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_LENGTH",{length:t})}}),(0,A.$K)(e)&&!(0,A.$K)(t)&&{validate:function(t){return W(t).split(" ").join("").trim().length>=Number(e)||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_LENGTH",{length:e})}})},F=function(e,t,r){return{min:{value:e,message:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MIN_VALUE",{value:e})},max:{value:t,message:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MAX_VALUE",{value:t})},validate:{isNegative:function(e){return 1===r||""===e||Number(e)>=0||(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_NEGATIVE_NOT_ALLOWED")}}}},H=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";if(!e)return{src:t,alt:r};if("object"===T(e)&&"src"in e)return{src:e.src||t,alt:e.alt||r};if("string"==typeof e&&e)try{var n=JSON.parse(e);return n&&"object"===T(n)&&"src"in n?{src:n.src||t,alt:n.alt||r}:{src:e,alt:r}}catch(t){return{src:e,alt:r}}return{src:t,alt:r}},q=function(e){var t=H(e);return JSON.stringify({src:t.src||"",alt:t.alt||""})},V=r(1921);function z(e){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},z(e)}function X(){X=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==z(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function K(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?K(Object(r),!0).forEach((function(t){Y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):K(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Y(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==z(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==z(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===z(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Q(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function J(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}const ee=function(e){var t=e.field,r=e.actions,n=e.setActiveField,o=e.activeField,i=e.collectionForm,a=i.watch("fields"),l=(0,C.nB)({id:t.id}),c=l.attributes,u=l.listeners,d=l.setNodeRef,p=l.transform,f=l.transition;return(0,s.BX)("div",$($($({ref:d,css:[te.fieldElement(),o.id===t.id&&te.selectedField,";label:CollectionFieldItem;"],style:{transform:x.ux.Transform.toString(p),transition:f}},c),u),{},{onClick:function(){n({type:t.type,id:t.id})},children:[(0,s.BX)("div",{css:te.fieldElementIconAndTitle,children:[(0,s.tZ)(I.Z,{name:"dragger",height:16,width:16,style:te.dragger,"data-dragger":!0}),(0,s.tZ)(I.Z,{height:16,width:16,name:B(t.type),style:te.fieldIcon(o.id===t.id),"data-field-icon":!0}),(0,s.tZ)("div",{css:te.fieldName(o.id===t.id),children:t.name})]}),(0,s.tZ)(P.Z,{actions:r,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisX",width:16,height:16,style:te.triggerIcon,"data-action-icon":!0}),triggerButtonStyle:te.triggerBtn,onSelect:function(){var e,r=(e=X().mark((function e(r){return X().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:"duplicate"===r?i.setValue("fields",[].concat(function(e){if(Array.isArray(e))return Q(e)}(o=a)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(o)||function(e,t){if(e){if("string"==typeof e)return Q(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Q(e,t):void 0}}(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[$($({},t),{},{id:(0,A.x0)()})])):"remove"===r&&(i.setValue("fields",a.filter((function(e){return e.id!==t.id}))),n({type:"title",id:a[0].id}));case 1:case"end":return e.stop()}var o}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){J(i,n,o,a,l,"next",e)}function l(e){J(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return r.apply(this,arguments)}}()})]}),t.id)};var te={triggerIcon:{name:"18pcpuz-triggerIcon",styles:"display:none;label:triggerIcon;"},fieldElement:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("display:flex;align-items:center;height:32px;cursor:pointer;position:relative;padding-inline:",n.W0[8],";flex-shrink:0;&:hover{background-color:",!e&&n.qo.background.white,";border-radius:",!e&&n.E0[5],";box-shadow:",!e&&n.AF.addonHover,";[data-field-icon]{display:none;}[data-dragger]{display:flex;align-items:center;justify-content:center;transform:scale(1.5);color:",n.qo.icon.default,";cursor:move;}[data-action-icon]{display:flex;color:",n.qo.icon.default,";margin-left:4px;}};label:fieldElement;")},triggerBtn:(0,i.iv)("position:absolute;right:",n.W0[6],";height:20px;width:20px;;label:triggerBtn;"),fieldElementIconAndTitle:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";;label:fieldElementIconAndTitle;"),selectedField:(0,i.iv)("background-color:",n.qo.background.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.base,";color:",n.qo.text.primary,";;label:selectedField;"),dragger:{name:"1h5igwz-dragger",styles:"display:none;label:dragger;"},fieldName:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(o.c.caption(),";",V.iZ.textEllipsis,";width:150px;color:",e?n.qo.text.primary:n.qo.text.default,";;label:fieldName;")},fieldIcon:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("color:",e?n.qo.icon.primary:n.qo.icon.default,";display:flex;align-items:center;justify-content:center;;label:fieldIcon;")}},re=r(9085),ne=r(2066);function oe(e){return oe="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oe(e)}var ie=["css"];function ae(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ae(Object(r),!0).forEach((function(t){ce(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ae(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ce(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==oe(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==oe(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===oe(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const ue=function(e){var t=e.field,r=e.fieldState,n=e.disabled,o=e.value,i=e.label,a=e.description,l=e.labelCss,c=e.responsive,u=e.responsiveOrientation,d=e.onChange;return(0,s.tZ)(ne.Z,{field:t,fieldState:r,disabled:n,responsive:c,responsiveOrientation:u,label:i,isInlineLabel:!0,children:function(e){var r=e.attributes,n=(e.data,r.css),i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(r,ie);return(0,s.BX)("div",{children:[(0,s.tZ)(re.Z,le(le(le({},t),i),{},{inputCss:n,labelCss:l,value:o,checked:t.value,onChange:function(){t.onChange(!t.value),d&&d(!t.value)}})),!!a&&(0,s.tZ)("p",{css:se.description,children:a})]})}})};var se={description:(0,i.iv)(o.c.body()," color:",n.qo.text.neutral,";padding-left:",n.W0[28],";margin-top:",n.W0[6],";;label:description;")},de=r(6214),pe=r(1954),fe=r(36),ve=r(1731),he=r(6537),be=r(6492),ye=r(5945),me=r(4469),ge=r(5501),Ee=function(e){return ge.u.post(he.H.IMPORT_COLOR_PRESETS,{file:e.file,override:e.override})},Oe=function(){return ge.u.get(he.H.EXPORT_COLOR_PRESETS)};function _e(e){return function(e){if(Array.isArray(e))return Se(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Ie(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function we(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Ie(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ie(e,t){if(e){if("string"==typeof e)return Se(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Se(e,t):void 0}}function Se(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ce=function(e){var t=e.onColorChange,r=e.globalColorWrapperCss,n=e.colorListCss,o=e.selectedColor,i=function(e){var t=e.enabled,r=void 0===t||t,n=(0,ve.p)().showToast;return(0,be.a)({enabled:r,queryKey:["GlobalColors"],queryFn:function(){return ge.u.get(he.H.GLOBAL_COLORS).then((function(e){return e.data}))},onError:function(e){n({type:"danger",message:e.message})}})}({enabled:!0}),a=we((0,c.useState)([]),2),l=a[0],u=a[1],d=(i.isLoading,we((0,c.useState)(""),2)),p=d[0],f=d[1],v=!1,h=(0,fe.N)(p),b=(0,c.useMemo)((function(){if(!i.data)return[];if(p){var e,t=null==i||null===(e=i.data)||void 0===e?void 0:e.filter((function(e){var t;return null==e||null===(t=e.path[0])||void 0===t?void 0:t.toLowerCase().includes(p.toLowerCase())}));return t.length>0?t:[]}return i.data}),[i.data,h]);(0,c.useEffect)((function(){if(i.data&&i.data.length>0){var e=new Set,t=b.filter((function(e){return!e.isTemplateColor})),r=b.filter((function(e){return e.isTemplateColor})),n=[].concat(_e(t),_e(r)),o=null==n?void 0:n.reduce((function(t,r){var n=(null==r?void 0:r.path[0])||"",o="$".concat(n).toLowerCase();if(!e.has(o)){e.add(o);var i;i=n.includes("sppb-")?"--".concat(n.toLowerCase().replace(/ /g,"-")):"--sppb-".concat(n.toLowerCase().replace(/ /g,"-")),t.push({label:n,value:i,isTemplateColor:r.isTemplateColor})}return t}),[]);u(null!=o?o:[])}}),[b]);var y=document.documentElement,m=window.getComputedStyle(y),g=function(e,r){var n=m.getPropertyValue(null==e?void 0:e.value);return(0,s.BX)("button",{css:xe.colorItem(o==="var(".concat(null==e?void 0:e.value,")")),onClick:function(){return t("var(".concat(null==e?void 0:e.value,")"))},children:[(0,s.tZ)("div",{css:xe.color(new de.C(n).toHexString()),children:(0,s.tZ)("span",{css:xe.colorRight(1-new de.C(e.value).getAlpha())})}),(0,s.tZ)("span",{css:xe.colorName,title:null==e?void 0:e.label,children:null==e?void 0:e.label})]},"".concat(e.value,"-").concat(r))};return(0,s.BX)("div",{css:[xe.globalColorWrapper,r,";label:ColorLibrary;"],children:[(0,s.BX)("div",{css:xe.inputWrapper,children:[(0,s.tZ)(I.Z,{name:"search",width:16,height:16,style:xe.searchIcon}),(0,s.tZ)("input",{css:xe.search,placeholder:"Search",value:p,onChange:function(e){return f(e.target.value)}})]}),(0,s.tZ)("div",{css:xe.separator}),!!l.length&&(0,s.tZ)("div",{css:[xe.colorList,n,";label:ColorLibrary;"],children:null==l?void 0:l.map((function(e,t){return null!=e&&e.isTemplateColor&&!v?(v=!0,(0,s.BX)("div",{children:[(0,s.tZ)("div",{css:xe.heading,children:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TEMPLATE_PRESET")}),g(e,t)]},t)):g(e,t)}))})]})};var xe={colorList:(0,i.iv)("display:flex;flex-direction:column;max-height:217px;overflow-y:auto;padding-top:",n.W0[4],";;label:colorList;"),color:function(e){return(0,i.iv)("width:20px;height:20px;background-color:",e,";border:1px solid ",n.qo.stroke.neutral,";border-radius:4px;position:relative;overflow:hidden;;label:color;")},globalColorWrapper:(0,i.iv)("display:flex;flex-direction:column;margin-top:-",n.W0[6],";;label:globalColorWrapper;"),colorRight:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return(0,i.iv)("position:absolute;width:30px;height:30px;top:4px;left:5px;transform:rotate(45deg);background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);opacity:",e,";;label:colorRight;")},colorItem:function(e){return(0,i.iv)("outline:none;border:none;background-color:",e?n.qo.background.hover:"transparent",";display:flex;cursor:pointer;align-items:center;gap:",n.W0[8],";height:",n.W0[32],";padding:",n.W0[6]," ",n.W0[8],";border-radius:",n.E0[4],";&:hover{background-color:",n.qo.background.hover,";}width:100%;;label:colorItem;")},colorName:(0,i.iv)(o.c.body("regular"),";color:",n.qo.text.hints,";",V.iZ.textEllipsis,";max-width:150px;;label:colorName;"),separator:(0,i.iv)("width:calc(100% + 32px);height:1px;background-color:",n.qo.stroke.neutral,";margin-block:",n.W0[10],";margin-inline:-",n.W0[16],";position:relative;margin-bottom:0;;label:separator;"),search:(0,i.iv)("border:none;outline:none;padding:2px;",o.c.body("regular"),";;label:search;"),inputWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[4],";padding-left:",n.W0[8],";;label:inputWrapper;"),searchIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:searchIcon;"),heading:(0,i.iv)(o.c.caption("medium"),";margin:",n.W0[8]," 0;margin-left:",n.W0[6],";;label:heading;")},Pe=r(5651);function Le(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ae(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ae(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Te=function(e){var t=e.color,r=e.isOpen,n=e.triggerRef,o=e.onChangeColor,i=e.popoverGap,a=void 0===i?10:i,l=e.arrowPosition,u=void 0===l?"right":l,d=e.closeColorPicker,p=e.isGlobalColorsVisible,f=void 0===p||p,v=e.colorName,h=void 0===v?"":v,b=e.onChangeColorName,y=e.showNameInput,m=void 0!==y&&y,g=e.tabToOpen,E=(0,L.$)(),O=Le((0,c.useState)(t),2),_=O[0],w=O[1],S=Le((0,c.useState)(h),2),C=S[0],x=S[1],P=t&&t.includes("var(--sppb")?"library":"color",T=Le((0,c.useState)(P),2),D=T[0],Z=T[1],R=(0,pe.l)({isOpen:r,triggerRef:n,arrow:u,gap:a}),j=R.position,B=R.popoverRef;(0,c.useEffect)((function(){x(h)}),[h]),(0,c.useEffect)((function(){w(t)}),[t]),(0,c.useEffect)((function(){r&&Z(P)}),[r,P]),(0,c.useEffect)((function(){Z("library")}),[g]);var M=function(e){w(e);var t=(0,A.K6)(e),r=t.validColor,n=t.color;r.isValid&&o(n,h)};return(0,s.tZ)(pe.h,{isOpen:r,onClickOutside:function(){d(_,C)},children:(0,s.BX)("div",{css:[De.container,{position:"absolute",left:j.left,top:j.top},";label:ColorPicker;"],ref:B,children:[(0,s.BX)("div",{css:De.header,children:[(0,s.BX)("div",{css:De.tabContainer,children:[f&&(0,s.BX)(s.HY,{children:[(0,s.tZ)("span",{css:De.tabItem("color"===D),onClick:function(){Z("color")},children:E("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE")}),(0,s.tZ)("span",{css:De.tabItem("library"===D),onClick:function(){Z("library")},children:E("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE_LIBRARY")})]}),!f&&(0,s.tZ)("span",{css:De.tabItem(!1),children:E("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE")})]}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:function(){return d(_,C)},children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:De.content,children:["color"===D&&(0,s.BX)(s.HY,{children:[m&&(0,s.tZ)("input",{type:"text",css:[De.input,De.colorName,";label:ColorPicker;"],value:C,placeholder:"Color Name",onChange:function(e){return r=e.target.value,x(r),null==b||b(r),void o(t,r);var r}}),(0,s.tZ)(Pe.Jg,{color:(0,A.K6)(t).validColor.toRgb(),onChange:function(e){var t=new de.C(e),r=(1===e.a?t.toHexString():t.toRgbString()).toUpperCase();w(r),o(r,h)}}),(0,s.tZ)("input",{type:"text",css:De.input,value:_,placeholder:"#000000",onChange:function(e){return M(e.target.value)}})]}),"library"===D&&f&&(0,s.tZ)(Ce,{onColorChange:M,selectedColor:t})]})]})})};var De={content:(0,i.iv)("padding:",n.W0[16],";min-height:278px;;label:content;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),container:(0,i.iv)("background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.popover,";border-radius:",n.E0[8],";max-width:278px;width:100%;& .react-colorful{width:auto;gap:",n.W0[10],";}& .react-colorful__saturation-pointer{width:10px;height:10px;}& .react-colorful__hue-pointer,& .react-colorful__alpha-pointer{width:10px;height:10px;}& .react-colorful__saturation{border-radius:",n.E0[8],";border-bottom:unset;}& .react-colorful__hue,& .react-colorful__alpha{height:8px;border-radius:",n.E0[8],";};label:container;"),input:(0,i.iv)(o.c.body()," background-color:",n.qo.base.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";outline:none;padding:",n.W0[6]," ",n.W0[12],";margin-top:",n.W0[12],";width:100%;:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),colorName:(0,i.iv)("margin-bottom:",n.W0[10],";;label:colorName;"),tabContainer:(0,i.iv)("display:flex;gap:",n.W0[4],";;label:tabContainer;"),tabItem:function(e){return(0,i.iv)("background-color:",e?n.qo.background.neutral:n.qo.background.white,";border-radius:",n.E0[4],";padding:",n.W0[4]," ",n.W0[8],";cursor:pointer;;label:tabItem;")}};function Ze(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Re(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Re(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Re(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var je=(0,c.forwardRef)((function(e,t){var r=e.color,n=e.onChangeColor,o=e.onClick,i=e.isClearable,a=void 0===i||i,l=e.hasAlphaField,u=void 0===l||l,d=e.disabled,p=void 0!==d&&d,f=e.colorCodeWidth,v=void 0===f?"55px":f,h=e.hideInput,b=void 0!==h&&h,y=e.circular,m=void 0!==y&&y,g=function(e){var t=(0,A.K6)(e).validColor;return t.isValid?t.toHexString().toUpperCase().replace("#",""):""},E=function(e){var t=(0,A.K6)(e).validColor;if(!t.isValid)return"0%";var r=100*t.getAlpha(),n=(0,A.GN)(r)?r:r.toFixed(0);return"".concat(n,"%")},O=Ze((0,c.useState)(g(r)),2),_=O[0],w=O[1],S=Ze((0,c.useState)(E(r)),2),C=S[0],x=S[1];(0,c.useEffect)((function(){var e=(0,A.K6)(r).isCssVariable;w(e?r:g(r)),x(E(r))}),[r]);var P=function(){var e=Math.min(Number(C.replace(/[^0-9.]/g,"")),100),t=(0,A.K6)(_).isCssVariable,r=e/100,o=new de.C("#".concat(_)).setAlpha(r);if(o.isValid||t){var i=(0,A.GN)(e)?e:e.toFixed(2);x("".concat(i,"%")),n(t?_:o.toRgbString())}},L=function(e){"Enter"===e.key&&(P(),e.currentTarget.blur()),"Escape"===e.key&&(w(g(r)),x(E(r)),e.currentTarget.blur())};return(0,s.BX)("div",{ref:t,css:Me.swatch(m),children:[(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:o,disabled:p,children:(0,A.K6)(r).validColor.isValid?(0,s.tZ)(s.HY,{children:(0,s.BX)("div",{css:Me.colorBox((0,A.K6)(r).validColor.setAlpha(1).toRgbString()),children:[(0,s.tZ)("span",{css:Me.colorLeft}),(0,s.tZ)("span",{css:Me.colorRight(1-((0,A.K6)(r).validColor.getAlpha()||0))}),a&&(0,s.tZ)("span",{role:"button",tabIndex:0,css:Me.clearButton,onClick:function(e){e.stopPropagation(),n("")},onKeyDown:A.ZT,children:(0,s.tZ)(I.Z,{name:"crossCircled"})})]})}):(0,s.tZ)(Be,{})}),!b&&(0,s.tZ)("input",{type:"text",css:Me.colorCode(v),value:_,onChange:function(e){w(e.target.value),u||x(E(g(e.target.value)))},onBlur:P,onKeyDown:L,onClick:function(e){return e.currentTarget.select()}}),u&&(0,s.tZ)("div",{css:Me.alphaPercentageWrapper,children:(0,s.tZ)("input",{type:"text",css:Me.alphaPercentage,value:C,onChange:function(e){return x(e.target.value)},onBlur:P,onKeyDown:L,onClick:function(e){return e.currentTarget.select()}})})]})})),Be=function(e){var t=e.circular,r=void 0!==t&&t;return(0,s.tZ)("div",{css:Me.emptyColor(r)})},Me={swatch:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",e?"50%":n.E0[5],";",e?"overflow: hidden;":""," display:flex;align-items:center;gap:",n.W0[8],";overflow:hidden;&:focus-within{box-shadow:",n.AF.outline,";};label:swatch;")},emptyColor:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("width:40px;height:20px;",e?"border-radius: 50%":"",";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";overflow:hidden;margin:",n.W0[6]," 0 ",n.W0[6]," ",n.W0[6],";background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);;label:emptyColor;")},colorBox:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#fff";return(0,i.iv)("width:40px;height:20px;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";background-color:",e,";margin:",n.W0[6]," 0 ",n.W0[6]," ",n.W0[6],";display:flex;position:relative;;label:colorBox;")},clearButton:{name:"1e52ctn-clearButton",styles:"position:absolute;top:0;right:0;transform:translate(50%, -50%);label:clearButton;"},colorLeft:{name:"1s36fqd-colorLeft",styles:"width:50%;label:colorLeft;"},colorRight:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return(0,i.iv)("width:50%;background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);opacity:",e,";;label:colorRight;")},colorCode:function(e){return(0,i.iv)(o.c.caption()," width:",e,";padding:0;margin:0;border:none;outline:none;;label:colorCode;")},alphaPercentageWrapper:(0,i.iv)("position:relative;padding:0 ",n.W0[8]," 0 ",n.W0[4],";&::before{content:'';position:absolute;top:0;bottom:0;left:-1px;width:1px;background-color:",n.qo.stroke.neutral,";};label:alphaPercentageWrapper;"),alphaPercentage:(0,i.iv)(o.c.caption()," width:35px;height:32px;border:none;outline:none;;label:alphaPercentage;")},ke={height:30,width:30},Ne=(0,c.forwardRef)((function(e,t){var r=e.color,n=e.onChangeColor,o=e.onClick,i=e.isClearable,a=void 0===i||i,l=e.dimension,c=void 0===l?ke:l,u=e.disableOutline,d=void 0!==u&&u,p=e.disabled,f=void 0!==p&&p,v=e.circular,h=void 0!==v&&v;return(0,s.tZ)("button",{type:"button",ref:t,css:We.swatch({dimension:c,disableOutline:d,circular:h}),onClick:o,disabled:f,children:(0,A.K6)(r).validColor.isValid?(0,s.BX)("div",{css:We.colorBox({color:(0,A.K6)(r).validColor.setAlpha(1).toRgbString()}),children:[(0,s.BX)("div",{css:We.colorWrapper,children:[(0,s.tZ)("span",{css:We.colorLeft}),(0,s.tZ)("span",{css:We.colorRight(1-((0,A.K6)(r).validColor.getAlpha()||0))})]}),a&&(0,s.tZ)("span",{role:"button",tabIndex:0,css:We.clearButton,onClick:function(e){e.stopPropagation(),n("")},onKeyDown:A.ZT,"data-clear-button":!0,children:(0,s.tZ)(I.Z,{name:"crossCircled"})})]}):(0,s.tZ)(Ge,{})})})),Ge=function(e){var t=e.circular,r=void 0!==t&&t;return(0,s.tZ)("div",{css:We.emptyColor(r)})},We={swatch:function(e){var t=e.dimension,r=e.disableOutline,o=e.circular,a=void 0!==o&&o;return(0,i.iv)(V.iZ.resetButton,";width:",t.width,"px;height:",t.height,"px;background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",a?"50%":n.E0[2],";",a?"overflow: hidden;":""," :hover{[data-clear-button]{visibility:visible;opacity:1;}}",!r&&(0,i.iv)("&:focus-within{box-shadow:",n.AF.outline,";};label:swatch;"),";;label:swatch;")},emptyColor:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("width:100%;height:100%;",e?"border-radius: 50%":"",";overflow:hidden;background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);;label:emptyColor;")},colorBox:function(e){var t=e.color,r=void 0===t?"#fff":t;return(0,i.iv)("width:100%;height:100%;background-color:",r,";position:relative;;label:colorBox;")},clearButton:(0,i.iv)("height:",n.W0[16],";width:",n.W0[16],";position:absolute;top:0;right:0;transform:translate(50%, -50%);visibility:hidden;opacity:0;transition:visibility 0.3s ease,opacity 0.3s ease;color:",n.qo.icon.default,";:hover{cursor:default;svg{color:",n.qo.icon.hover,";}};label:clearButton;"),colorWrapper:{name:"1tjuvft-colorWrapper",styles:"display:block;width:100%;height:100%;overflow:hidden;position:relative;label:colorWrapper;"},colorLeft:{name:"o6it0s-colorLeft",styles:"display:block;height:100%;width:100%;label:colorLeft;"},colorRight:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return(0,i.iv)("position:absolute;width:40px;height:40px;top:8px;left:8px;transform:rotate(45deg);background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);opacity:",e,";;label:colorRight;")}};function Ue(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Fe=function(e){var t,r,n=e.label,o=e.color,i=e.onChange,a=e.onClose,l=e.hasAlphaField,u=e.plainSwatch,d=void 0!==u&&u,p=e.isColorPickerOpen,f=void 0!==p&&p,v=e.dimension,h=e.arrowPosition,b=void 0===h?"right":h,y=e.isGlobalColorsVisible,m=e.circular,g=void 0!==m&&m,E=e.isClearable,O=void 0===E||E,_=e.colorName,w=e.onChangeColorName,I=e.showNameInput,S=void 0!==I&&I,C=(t=(0,c.useState)(f),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Ue(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ue(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),x=C[0],P=C[1],L=(0,c.useRef)(null);return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:He.wrapper,children:[!!n&&(0,s.tZ)("span",{css:He.label,children:n}),d?(0,s.tZ)(Ne,{ref:L,color:o||"",onClick:function(){return P(!0)},onChangeColor:function(e){i(e),a(e)},dimension:v,circular:g,isClearable:O}):(0,s.tZ)(je,{ref:L,color:o||"",onClick:function(){return P(!0)},onChangeColor:function(e){i(e),a(e)},hasAlphaField:l,circular:g,isClearable:O})]}),(0,s.tZ)(Te,{isOpen:x,color:o||"",triggerRef:L,onChangeColor:i,closeColorPicker:function(e,t){P(!1),a(e,t)},arrowPosition:b,isGlobalColorsVisible:y,colorName:_,onChangeColorName:w,showNameInput:S})]})},He={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";;label:wrapper;"),label:(0,i.iv)(o.c.caption()," display:block;;label:label;")};function qe(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ve(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ve(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ve(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var ze={name:"1fvqa28-ColorPickerField",styles:"position:absolute;border:none;background:transparent;outline:none;top:8px;right:8px;cursor:pointer;label:ColorPickerField;"},Xe={name:"a13tki-ColorPickerField",styles:"position:relative;label:ColorPickerField;"};const Ke=function(e){var t=e.field,r=e.fieldState,o=e.label,a=e.disabled,l=e.loading,u=e.hasAlphaField,d=e.isInlineLabel,p=e.responsive,f=e.responsiveOrientation,v=e.helpText,h=e.transparency,b=void 0!==h&&h,y=e.required,m=void 0!==y&&y,g=qe((0,c.useState)(!1),2),E=g[0],O=g[1],_=qe((0,c.useState)(t.value),2),w=_[0],S=_[1],C=qe((0,c.useState)(!1),2),x=C[0],P=C[1],L=(0,c.useRef)(null);(0,c.useEffect)((function(){S(t.value)}),[t.value]);var T=b?"transparent":"";return(0,s.tZ)(ne.Z,{field:t,fieldState:r,disabled:a,loading:l,label:o,responsive:p,responsiveOrientation:f,isInlineLabel:d,helpText:v,required:m,children:function(){return(0,s.BX)("div",{css:Xe,children:[(0,s.tZ)(je,{ref:L,color:w||"",onChangeColor:function(e){if(b)return S(e||T),void t.onChange(e||T);S(e),t.onChange(e)},onClick:function(){return O(!0)},disabled:a,hasAlphaField:u}),(0,s.tZ)("button",{css:ze,onClick:function(){P(!x),O(!0)},children:(0,s.tZ)(I.Z,{name:"colorLibrary",height:16,width:16,style:(0,i.iv)("color:",n.qo.icon.default,";;label:ColorPickerField;")})}),(0,s.tZ)(Te,{color:w||"",isOpen:E,triggerRef:L,onChangeColor:S,closeColorPicker:function(e){O(!1),t.onChange(e)},isGlobalColorsVisible:!A.Eu,popoverGap:20,tabToOpen:x})]})}})};var $e=r(487),Ye=r(935),Qe=r(5350);const Je=r.p+"images/40037ff8fe697e1ffd3e.svg",et=function(e){var t=e.title,r=e.subtitle,n=e.actionButton,o=(0,L.$)();return(0,s.tZ)("div",{css:tt.wrapper,children:(0,s.BX)("div",{css:tt.imageAndText,children:[(0,s.tZ)("img",{src:Je,alt:o("COM_SPPAGEBUILDER_EDITOR_SOMETHING_WENT_WRONG_ALT"),css:tt.illustration}),(0,s.BX)("div",{css:tt.content,children:[(0,s.tZ)("h2",{children:t}),!!r&&(0,s.tZ)("p",{children:r}),!!n&&(0,s.tZ)("div",{children:n})]})]})})};var tt={wrapper:(0,i.iv)("width:100%;height:100vh;display:flex;align-items:end;justify-content:center;background-color:",n.qo.background.white,";;label:wrapper;"),imageAndText:{name:"9qqzbm-imageAndText",styles:"height:635px;max-width:1153px;width:100%;position:relative;label:imageAndText;"},illustration:{name:"4z4wjj-illustration",styles:"width:100%;height:100%;label:illustration;"},content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[20],";position:absolute;top:200px;right:127px;max-width:380px;width:100%;h2{",o.c.heading2("medium"),";}p{",o.c.body(),";}div{margin-top:",n.W0[20],";};label:content;")},rt=r(802),nt=r(3417),ot=r(8596),it=r(1657),at=r(2328);function lt(e){return lt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},lt(e)}function ct(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ut(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ct(Object(r),!0).forEach((function(t){st(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ct(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function st(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==lt(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==lt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===lt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function dt(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var pt=function(){var e=(0,ve.p)().showToast,t=(0,at.v)((function(e){return e.appConfig}));return(0,be.a)({queryKey:["IconList"],queryFn:function(){return ge.u.get(he.H.ICONS,{params:{status:1}}).then((function(e){return[{access:null,assets:t.font_awesome_icons,created:"",created_by:null,css_path:"",id:null,name:"fontawesome",thumb:"",title:"Font Awesome 6 Free",type:"fontawesome"}].concat(function(e){if(Array.isArray(e))return dt(e)}(r=e.data)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return dt(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?dt(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());var r}))},onError:function(t){e({type:"danger",message:t.message})}})},ft=function(e){return ge.u.delete(he.H.MEDIA,{data:JSON.stringify(e)}).then((function(e){return e.data}))},vt=function(e){return ge.u.post(he.H.MEDIA,e)},ht=function(){var e=(0,ye.NL)(),t=(0,L.$)(),r=(0,ve.p)().showToast;return(0,me.D)({mutationFn:vt,onSuccess:function(){r({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_FILE_UPLOAD_SUCCESS_MESSAGE")}),e.invalidateQueries(["MediaList"]),e.invalidateQueries(["FolderList"])},onError:function(e){r({type:"danger",message:e.message})}})},bt=function(e){return ge.u.post(he.H.AI_CONTENT_UPLOAD,e)},yt=function(){var e=(0,ye.NL)(),t=(0,L.$)(),r=(0,ve.p)().showToast;return(0,me.D)({mutationFn:bt,onSuccess:function(){r({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_FILE_UPLOAD_SUCCESS_MESSAGE")}),e.invalidateQueries(["MediaList"]),e.invalidateQueries(["FolderList"])},onError:function(e){r({type:"danger",message:e.message})}})},mt=function(e){return ge.u.patch(he.H.MEDIA,e)},gt=function(e){return ge.u.get(he.H.MEDIA_FOLDERS,{params:e}).then((function(e){var t;return null!==(t=e.data)&&void 0!==t?t:[]}))},Et=function(e){return ge.u.delete(he.H.MEDIA_FOLDERS,{data:JSON.stringify(e)})},Ot=function(e){return ge.u.post(he.H.MEDIA_FOLDERS,e)},_t=function(e){return ge.u.patch(he.H.MEDIA_FOLDERS,e).then((function(e){return e.data}))},wt=r(8008),It=r(7536),St=r(9781);function Ct(e){return Ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ct(e)}function xt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Pt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xt(Object(r),!0).forEach((function(t){Lt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xt(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Lt(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ct(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ct(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ct(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function At(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Tt=function(e){var t,r,n=e.closeModal,o=e.title,i=(0,L.$)(),a=(0,c.useRef)(null),l=(t=(0,c.useState)("fontawesome"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return At(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?At(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1],p=pt(),f=(0,wt.Ap)(),v=(0,rt.O)({defaultValues:{search:""}}),h=(0,fe.N)(v.watch("search")),b=(0,c.useMemo)((function(){var e;return p.data?"all"===u?p.data.flatMap((function(e){return e.assets})).filter((function(e){return e.includes(h)})):(null===(e=p.data.find((function(e){return e.name===u})))||void 0===e?void 0:e.assets.filter((function(e){return e.includes(h)})))||[]:[]}),[u,p.data,h]);return p.isLoading?(0,s.tZ)(Ye.g4,{}):p.data?(0,s.tZ)(St.Z,{onClose:function(){return n({action:"CLOSE"})},title:o,wrapperCss:Dt.wrapper,children:(0,s.BX)("div",{css:Dt.container,children:[(0,s.BX)("div",{css:Dt.sidebar,children:[(0,s.tZ)(nt.Z,{header:(0,s.BX)(s.HY,{children:[(0,s.BX)(_.Z,{buttonCss:Dt.uploadButton,onClick:function(){var e;return null===(e=a.current)||void 0===e?void 0:e.click()},loading:f.isLoading,children:[(0,s.tZ)(I.Z,{name:"upload"}),(0,s.tZ)("span",{children:i("COM_SPPAGEBUILDER_EDITOR_UPLOAD_ICON_BUTTON")})]}),(0,s.tZ)("input",{ref:a,type:"file","aria-hidden":"true",hidden:!0,onChange:function(e){var t,r=null===(t=e.target.files)||void 0===t?void 0:t[0];r&&f.mutate(r)}})]}),children:(0,s.BX)("ul",{css:Dt.cardInner,children:[(0,s.tZ)("li",{css:Dt.cardInnerItem("all"===u),children:(0,s.BX)("button",{type:"button",onClick:function(){return d("all")},children:[(0,s.tZ)(I.Z,{name:"asterisk",width:16,height:16}),(0,s.tZ)("span",{children:i("COM_SPPAGEBUILDER_EDITOR_ALL_ICONS_LABEL")})]})}),p.data.map((function(e){return(0,s.tZ)("li",{css:Dt.cardInnerItem(u===e.name),children:(0,s.BX)("button",{type:"button",onClick:function(){return d(e.name)},children:[(0,s.tZ)(I.Z,{name:e.name,width:16,height:16}),(0,s.tZ)("span",{children:e.title})]})},e.id)}))]})}),(0,s.tZ)("p",{css:Dt.uploadMessage,children:i("COM_SPPAGEBUILDER_EDITOR_ICON_UPLOAD_MESSAGE")})]}),(0,s.BX)("div",{css:Dt.searchAndIcons,children:[(0,s.tZ)("div",{css:Dt.searchWrapper,children:(0,s.tZ)(It.Qr,{control:v.control,name:"search",render:function(e){return(0,s.tZ)(Qe.Z,Pt(Pt({},e),{},{variant:"search",placeholder:i("COM_SPPAGEBUILDER_EDITOR_ICON_SEARCH_PLACEHOLDER"),isClearable:!0}))}})}),(0,s.BX)("div",{css:Dt.content,children:[function(){if(0===b.length)return(0,s.BX)("div",{css:Dt.notFound,children:[(0,s.tZ)(I.Z,{name:"foldersDuo",width:56,height:56}),(0,s.tZ)("span",{children:i("COM_SPPAGEBUILDER_EDITOR_NO_ICON_FOUND_MESSAGE",{keyword:v.getValues("search")})})]})}(),b.map((function(e,t){return(0,s.BX)("button",{type:"button",css:Dt.iconWrapper,onClick:function(){n({action:e})},children:[(0,s.tZ)("span",{className:e,css:Dt.icon}),(0,s.tZ)("span",{children:e})]},t)}))]})]})]})}):(0,s.tZ)(et,{title:i("COM_SPPAGEBUILDER_EDITOR_SOMETHING_WENT_WRONG_TITLE"),subtitle:i("COM_SPPAGEBUILDER_EDITOR_SOMETHING_WENT_WRONG_SUBTITLE"),actionButton:(0,s.tZ)($e.Z,{href:"https://www.joomshaper.com/forum",target:"_blank",children:i("COM_SPPAGEBUILDER_EDITOR_SOMETHING_WENT_WRONG_CONTACT_BUTTON")})})};var Dt={wrapper:(0,i.iv)("max-width:1242px;",n.Uo.smallTablet,"{max-width:800px;};label:wrapper;"),container:(0,i.iv)("padding:",n.W0[32]," ",n.W0[32]," ",n.W0[40]," ",n.W0[24],";display:flex;gap:",n.W0[32],";align-items:start;;label:container;"),sidebar:(0,i.iv)("max-width:228px;width:100%;flex-shrink:0;position:sticky;top:",n.W0[32],";;label:sidebar;"),content:(0,i.iv)("width:100%;display:flex;gap:",n.W0[24],";flex-wrap:wrap;max-height:calc(100vh - 256px);overflow:auto;;label:content;"),cardInner:(0,i.iv)("margin:0;padding:",n.W0[16]," 0;display:flex;flex-direction:column;list-style:none;;label:cardInner;"),cardInnerItem:function(e){return(0,i.iv)("height:32px;cursor:pointer;:hover{background-color:",n.qo.background.primary,";button{color:",n.qo.text.primary,";}}button{",V.iZ.resetButton,";",o.c.body(),";width:100%;height:100%;display:flex;gap:",n.W0[12],";align-items:center;padding-inline:",n.W0[24],";}",e&&(0,i.iv)("background-color:",n.qo.background.primary,";button{color:",n.qo.text.primary,";};label:cardInnerItem;"),";;label:cardInnerItem;")},iconWrapper:(0,i.iv)(V.iZ.resetButton,";width:94px;height:94px;background-color:",n.qo.background.active,";border-radius:",n.E0[5],";",V.iZ.flexCenter("column"),";gap:",n.W0[12],";span:last-of-type{width:100%;",o.c.caption(),";",V.iZ.textEllipsis,";padding-inline:",n.W0[8],";text-align:center;}:hover{background-color:",n.qo.base.primary,";span{color:",n.qo.text.white,";}};label:iconWrapper;"),icon:(0,i.iv)("font-size:",n.JB[30],";line-height:",n.Nv[36],";color:",n.qo.icon.default,";;label:icon;"),uploadButton:(0,i.iv)("width:100%;&>span{display:flex;gap:",n.W0[8],";align-items:center;justify-content:center;};label:uploadButton;"),uploadMessage:(0,i.iv)("margin-top:",n.W0[24],";",o.c.caption(),";color:",n.qo.text.hints,";;label:uploadMessage;"),searchAndIcons:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[32],";flex:1;;label:searchAndIcons;"),searchWrapper:{name:"117ckhv-searchWrapper",styles:"width:100%;label:searchWrapper;"},notFound:(0,i.iv)(V.iZ.flexCenter("column"),";width:100%;margin-top:",n.W0[96],";;label:notFound;")},Zt=r(1709),Rt=r(7273);function jt(e){return jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jt(e)}function Bt(){Bt=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==jt(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Mt(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function kt(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Mt(i,n,o,a,l,"next",e)}function l(e){Mt(i,n,o,a,l,"throw",e)}a(void 0)}))}}const Nt=function(e){var t=e.label,r=e.isInlineLabel,n=e.field,o=e.fieldState,i=e.disabled,a=e.readOnly,l=e.loading,c=e.placeholder,u=e.helpText,d=e.chooseIconText,p=void 0===d?"":d,f=e.responsive,v=e.responsiveOrientation,h=(0,L.$)(),b=(0,Zt.d)().showModal;return(0,s.tZ)(ne.Z,{label:t,isInlineLabel:r,field:n,fieldState:o,disabled:i,readOnly:a,loading:l,placeholder:c,helpText:u,responsive:f,responsiveOrientation:v,children:function(e){var t,r,o=e.data,i=o.device,a=o.responsive,l=(0,Rt.o5)(n.value,i);return(0,s.BX)("div",{css:Gt.wrapper,children:[!!l&&(0,s.BX)("div",{css:Gt.iconContainer,children:[(0,s.tZ)("span",{className:(t=l,r=t.split(" "),1===r.length&&"fa"===(r=t.split("-"))[0]?"fa "+t:t),css:Gt.icon}),(0,s.tZ)(_.Z,{variant:"text",buttonCss:Gt.clearButton,onClick:function(){var e=(0,Rt.xU)({previous:n.value,value:"",responsive:a,device:i});n.onChange(e)},children:(0,s.tZ)(I.Z,{name:"timesCircle",width:14,height:14})})]}),(0,s.tZ)("div",{children:(0,s.tZ)(_.Z,{variant:"secondary",onClick:kt(Bt().mark((function e(){var t,r,o;return Bt().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b({component:Tt,props:{title:h("COM_SPPAGEBUILDER_EDITOR_ICON_FIELD_MODAL_TITLE")},closeOnOutsideClick:!0});case 2:t=e.sent,r=t.action,o=(0,Rt.xU)({previous:n.value,value:"CLOSE"===r?l:r,responsive:a,device:i}),n.onChange(o);case 6:case"end":return e.stop()}}),e)}))),children:l?h("COM_SPPAGEBUILDER_EDITOR_REPLACE_ICON_BUTTON_TEXT"):p||h("COM_SPPAGEBUILDER_EDITOR_CHOOSE_ICON_BUTTON_TEXT")})})]})}})};var Gt={wrapper:(0,i.iv)("display:flex;gap:",n.W0[16],";;label:wrapper;"),iconContainer:(0,i.iv)("width:32px;height:32px;",V.iZ.flexCenter(),";border-radius:",n.E0[3],";background-color:",n.qo.base.white,";box-shadow:",n.AF.icon,";color:",n.qo.icon.default,";position:relative;;label:iconContainer;"),icon:(0,i.iv)("font-size:",n.JB[20],";;label:icon;"),clearButton:(0,i.iv)("position:absolute;top:-6px;right:-6px;padding:0;path:first-of-type{fill:",n.qo.icon.hints,";transition:fill 0.3s ease;}:hover{path:first-of-type{fill:",n.qo.icon.default,";}};label:clearButton;")},Wt=r(463);function Ut(e){return Ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ut(e)}function Ft(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Ht(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ht(Object(r),!0).forEach((function(t){Vt(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ht(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Vt(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ut(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ut(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ut(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const zt=function(e){var t=e.onUpload,r=e.onDragLeave,n=e.multiple,o=void 0!==n&&n,i=e.isLoading,a=void 0!==i&&i,l=e.uploadButtonText,u=void 0===l?"Choose Image":l,d=e.disabled,p=void 0!==d&&d,f=e.onClickHandler,v=e.uploadIcon,h=void 0===v?"upload":v,b=e.caption,y=void 0!==b&&b,m=e.supportedFileExtensions,g=void 0===m?[]:m,E=e.customButtonCss,O=e.customButtonContentCss,w=e.wrapperCss,S=(0,L.$)(),C=(0,c.useRef)(null),x=(0,Wt.uI)({onDrop:function(e){t(e)},multiple:o,disabled:p}),P=x.getRootProps,A=x.getInputProps;return a?(0,s.tZ)("div",{css:Xt.spinnerWrapper,children:(0,s.tZ)(Ye.ZP,{})}):(0,s.BX)("div",qt(qt({css:[Xt.wrapper(p),w,";label:FieldDropZone;"]},P({onClick:function(e){e.stopPropagation()},onDragLeave:function(e){e.stopPropagation(),r()}})),{},{children:[(0,s.tZ)("input",qt({},A())),(0,s.BX)("div",{css:Xt.dropText(p),children:[(0,s.tZ)("input",{ref:C,type:"file",multiple:!0,"aria-hidden":"true",hidden:!0,onChange:function(e){var r;p||(e.target.files&&t(function(e){if(Array.isArray(e))return Ft(e)}(r=e.target.files)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return Ft(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ft(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),e.target.value="")}}),!p&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:h||"upload"}),onClick:f,disabled:p,buttonCss:E||Xt.btnCss,buttonContentCss:O||Xt.btnContentCss,children:u}),y&&(0,s.BX)("div",{css:Xt.caption,children:[S("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_CAPTION")," ",null!=g&&g.length?g.map((function(e){return e.toUpperCase()})).join(", "):"All"]})]})]})]}))};var Xt={wrapper:function(e){return(0,i.iv)("z-index:",n.W5.positive,";background:transparent;border-radius:",n.E0[10],";background-color:",n.qo.base.surface,";border:1px dashed ",n.qo.stroke.hover,";z-index:",n.W5.positive,";height:100%;",e&&(0,i.iv)("border:1px dashed ",n.qo.stroke.error,";;label:wrapper;"),";;label:wrapper;")},dropText:function(e){return(0,i.iv)(o.c.heading6()," display:flex;flex-direction:column;justify-content:center;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";width:100%;height:100%;svg{color:",n.qo.action.outline.disabled,";}",e&&(0,i.iv)("color:",n.qo.text.disabled,";;label:dropText;"),";;label:dropText;")},spinnerWrapper:(0,i.iv)(V.iZ.flexCenter(),";height:100%;width:100%;;label:spinnerWrapper;"),uploadButton:(0,i.iv)(V.iZ.resetButton,";svg{transition:color 0.3s ease;}:hover{svg{color:",n.qo.icon.hover,";}};label:uploadButton;"),btnCss:(0,i.iv)("height:24px;align-items:center;justify-content:center;display:flex;gap:",n.W0[4],";border-radius:",n.E0[8],";;label:btnCss;"),btnContentCss:(0,i.iv)(o.c.tiny("medium"),";color:",n.qo.text.white,";;label:btnContentCss;"),caption:(0,i.iv)("font-size:",n.JB[10],";line-height:",n.W0[12],";color:",n.qo.text.disabled,";;label:caption;")},Kt=r(7025),$t=r(288),Yt=r(8122),Qt=r(3816),Jt=r(4411),er=r(908),tr=r(5527),rr=r(6511);function nr(e){return nr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},nr(e)}function or(){or=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==nr(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function ir(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function ar(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var lr=function(e){switch(e){case"mp4":case"mov":case"wmv":case"avi":case"mpg":case"ogv":case"3gp":case"3g2":return{type:"video",icon:"mediaVideo"};case"mp3":case"m4a":case"ogg":case"wav":return{type:"audio",icon:"mediaMusic"};case"doc":case"docx":case"odt":return{type:"document",icon:"mediaWord"};case"key":case"ppt":case"pptx":case"pps":case"ppsx":return{type:"presentation",icon:"mediaPowerPoint"};case"xls":case"xlsx":return{type:"excel",icon:"mediaExcel"};case"pdf":return{type:"pdf",icon:"mediaPdf"};case"zip":return{type:"archive",icon:"mediaZip"};case"json":return{type:"attachment",icon:"mediaJson"};default:return{type:"image",icon:"mediaPicture"}}},cr=function(e){var t=e.name,r=t.lastIndexOf(".");return-1===r?"":t.slice(r+1).toLowerCase()},ur=function(e){return e.map((function(e){var t=URL.createObjectURL(e);return{id:(0,A.x0)(),ext:cr(e),path:t,title:e.name,type:lr(cr(e)).type,isNewlyUploaded:!0}}))},sr=function(e,t){var r,n=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return ar(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ar(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(e);try{for(n.s();!(r=n.n()).done;)if(r.value.size>t)return!0}catch(e){n.e(e)}finally{n.f()}return!1},dr=function(){var e,t=(e=or().mark((function e(t){return or().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise((function(e,r){var n=new Image;n.src=t,n.onload=function(){return e(n)},n.onerror=function(){return r()}})));case 1:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){ir(i,n,o,a,l,"next",e)}function l(e){ir(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}(),pr=r(6731),fr=r(1030);function vr(e){return vr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},vr(e)}function hr(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function br(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?hr(Object(r),!0).forEach((function(t){yr(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hr(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function yr(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==vr(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==vr(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===vr(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function mr(){mr=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==vr(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function gr(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}const Er=function(e){var t=e.closeModal,r=e.title,n=e.path,o=(0,L.$)(),i=function(){var e=(0,ye.NL)(),t=(0,ve.p)().showToast,r=(0,L.$)();return(0,me.D)({mutationFn:Ot,onSuccess:function(){t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FOLDER_CREATE_SUCCESS")}),e.invalidateQueries(["FolderList"])},onError:function(e){t({type:"danger",message:e.message})}})}(),a=(0,rt.O)({defaultValues:{folderName:""}});return(0,s.tZ)(St.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,wrapperCss:Or.wrapper,children:(0,s.BX)("form",{onSubmit:a.handleSubmit((0,pr.GI)(a,function(){var e,r=(e=mr().mark((function e(r){var o;return mr().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o="".concat(n,"/").concat(r.folderName),e.next=3,i.mutateAsync({folder:o});case 3:e.sent.data.status&&t({action:"CONFIRM"});case 5:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){gr(i,n,o,a,l,"next",e)}function l(e){gr(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return r.apply(this,arguments)}}())),children:[(0,s.tZ)("div",{css:Or.fieldWrapper,children:(0,s.tZ)(It.Qr,{name:"folderName",control:a.control,rules:br({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,br(br({},e),{},{label:o("COM_SPPAGEBUILDER_EDITOR_CREATE_FOLDER_MODAL_LABEL"),placeholder:o("COM_SPPAGEBUILDER_EDITOR_CREATE_FOLDER_MODAL_PLACEHOLDER"),hasAutoFocus:!0}))}})}),(0,s.BX)("div",{css:Or.buttonWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return t({action:"CLOSE"})},children:o("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{type:"submit",loading:i.isLoading,children:o("COM_SPPAGEBUILDER_EDITOR_CREATE_FOLDER_MODAL_CREATE_BUTTON")})]})]})})};var Or={wrapper:{name:"1nd8i61-wrapper",styles:"max-width:372px;label:wrapper;"},fieldWrapper:(0,i.iv)("padding:",n.W0[16]," ",n.W0[12]," 0 ",n.W0[12],";display:flex;flex-direction:column;gap:",n.W0[12],";background-color:",n.qo.base.white,";;label:fieldWrapper;"),buttonWrapper:(0,i.iv)("background-color:",n.qo.background.white,";padding:",n.W0[12],";display:flex;justify-content:end;gap:",n.W0[8],";;label:buttonWrapper;")};function _r(e){return _r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_r(e)}function wr(){wr=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==_r(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Ir(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Sr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Cr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Cr(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Cr(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const xr=function(e){var t,r,n,o=e.folders,i=e.folderName,a=e.filter,l=e.selectedFolders,u=e.onSelect,d=e.onNavigate,p=e.onDeleteFolder,f=Sr((0,c.useState)(!1),2),v=f[0],h=f[1],b=Sr((0,c.useState)(i),2),y=b[0],m=b[1],g=o.find((function(e){return e.name===i&&e.relname==="".concat(a,"/").concat(i)})),E=l.find((function(e){return e.id===(null==g?void 0:g.id)})),O=(t=(0,ye.NL)(),r=(0,L.$)(),n=(0,ve.p)().showToast,(0,me.D)({mutationFn:_t,onSuccess:function(){n({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_FILE_RENAMED_SUCCESS_MESSAGE")}),t.invalidateQueries(["MediaList"]),t.invalidateQueries(["FolderList"])},onError:function(){n({type:"danger",message:r("COM_SPPAGEBUILDER_EDITOR_FILE_RENAME_ERROR_MESSAGE")})}})),_=(0,er.Q)(),w=[{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_BUTTON_TEXT_RENAME",isDisabled:!_.edit},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_BUTTON_TEXT_DELETE",variant:"critical",isDisabled:!_.delete}];return(0,s.BX)("div",{css:Pr.listItemWrapper({isSelected:!!E}),children:[(0,s.BX)("button",{type:"button",css:Pr.listItemTop({isSelected:!!E}),onClick:function(e){e.preventDefault(),g&&u({selectedFolder:{id:g.id,type:"folder",path:g.relname},isAlreadySelected:!!E})},onDoubleClick:d,children:[(0,s.tZ)(I.Z,{name:"folders",height:104,width:104}),(0,s.tZ)("div",{css:Pr.listItemCheckboxWrapper({isSelected:!1}),children:(0,s.tZ)(re.Z,{checked:!!E,onChange:function(){g&&u({selectedFolder:{id:g.id,type:"folder",path:g.relname},isAlreadySelected:!!E})}})})]}),(0,s.tZ)("div",{css:Pr.listItemInfo,children:v?(0,s.tZ)("div",{css:Pr.renameInputWrapper,children:O.isLoading?(0,s.tZ)(Ye.g4,{}):(0,s.tZ)(Kt.Z,{value:y,onChange:function(e){m(e)},onKeyDown:function(){var e,t=(e=wr().mark((function e(t){return wr().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Escape"===t&&(h(!1),m("")),"Enter"===t){e.next=3;break}return e.abrupt("return");case 3:return e.next=5,O.mutateAsync({currentfolder:"".concat(a,"/").concat(i),newfolder:"".concat(a,"/").concat(y),renameItem:"single"});case 5:e.sent.status&&h(!1);case 7:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Ir(i,n,o,a,l,"next",e)}function l(e){Ir(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}(),onBlur:function(){h(!1),m("")},focusOnMount:!0})}):(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{children:i}),(0,s.tZ)(P.Z,{actions:w,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisY",height:16,width:16}),onSelect:function(e){g&&("rename"===e?(h(!0),m(i)):p({id:g.id,type:"folder",path:g.relname}))},arrowPosition:"bottom"})]})})]})};var Pr={listItemWrapper:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.caption(),";background-color:",n.qo.background.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.base,";",r&&(0,i.iv)("position:relative;::before{position:absolute;content:'';inset:0;background-color:",n.qo.base.highlight,";opacity:0.4;};label:listItemWrapper;"),";;label:listItemWrapper;")},listItemTop:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(V.iZ.resetButton,";height:190px;width:100%;position:relative;background-color:",n.qo.background.folder,";display:flex;justify-content:center;align-items:center;>svg{color:",n.qo.icon.default,";}::before{content:'';position:absolute;inset:0;opacity:0;display:none;background-color:transparent;transition:opacity 0.3s ease,background-color 0.3s ease;}",r&&(0,i.iv)("::before{display:block;opacity:0.4;background-color:",n.qo.base.highlight,";};label:listItemTop;")," :hover{::before{display:block;opacity:0.4;background-color:",n.qo.base.highlight,";}};label:listItemTop;")},listItemCheckboxWrapper:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)("position:absolute;top:",n.W0[8],";left:",n.W0[8],";",r&&(0,i.iv)("z-index:",n.W5.positive,";;label:listItemCheckboxWrapper;"),";;label:listItemCheckboxWrapper;")},listItemInfo:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;padding:",n.W0[6]," ",n.W0[12],";height:44px;button{padding:0;svg{color:",n.qo.icon.hints,";}};label:listItemInfo;"),renameInputWrapper:(0,i.iv)("width:100%;input{padding:",n.W0[12],";};label:renameInputWrapper;")},Lr=r(1974),Ar=r(4101);function Tr(e){return Tr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Tr(e)}function Dr(){Dr=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Tr(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Zr(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Rr(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Zr(i,n,o,a,l,"next",e)}function l(e){Zr(i,n,o,a,l,"throw",e)}a(void 0)}))}}function jr(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Br(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Br(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Br(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Mr=function(e){var t=e.item,r=e.isSelected,n=e.onDelete,o=void 0===n?A.ZT:n,i=e.onSelectionChange,a=jr((0,c.useState)(!1),2),l=a[0],u=a[1],d=(0,L.$)(),p=jr((0,c.useState)(""),2),f=p[0],v=p[1],h=jr((0,c.useState)({height:0,width:0,size:0}),2),b=h[0],y=h[1],m=function(){var e=(0,ye.NL)(),t=(0,L.$)(),r=(0,ve.p)().showToast;return(0,me.D)({mutationFn:mt,onSuccess:function(){r({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_FILE_RENAMED_SUCCESS_MESSAGE")}),e.invalidateQueries(["MediaList"]),e.invalidateQueries(["FolderList"])},onError:function(e){r({type:"danger",message:e.message})}})}(),g=(0,er.Q)(),E=(0,at.v)((function(e){return e.appConfig})),O=[{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_BUTTON_TEXT_RENAME",isDisabled:!(g.edit||g.edit_own&&t.created_by===E.user_id)},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_BUTTON_TEXT_DELETE",variant:"critical",isDisabled:!g.delete}],_=lr(t.ext),w="".concat(t.title,".").concat(t.ext);return(0,c.useEffect)((function(){var e=function(){var e=Rr(Dr().mark((function e(){var r,n,o,i,a,l,c,u,s,d;return Dr().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("image"===t.type&&t.path){e.next=3;break}return y({height:0,width:0,size:0}),e.abrupt("return");case 3:return e.prev=3,o=t.path.startsWith("http://")||t.path.startsWith("https://"),i=o?t.path:"".concat(Lr.Z.APPLICATION_ROOT).concat(t.path),e.next=8,dr(i);case 8:if(a=e.sent,l=null!==(r=null==a?void 0:a.naturalHeight)&&void 0!==r?r:0,c=null!==(n=null==a?void 0:a.naturalWidth)&&void 0!==n?n:0,u=0,o){e.next=24;break}return e.prev=13,e.next=16,fetch(i,{method:"HEAD"});case 16:s=e.sent,(d=s.headers.get("content-length"))&&(u=parseInt(d,10)),e.next=24;break;case 21:e.prev=21,e.t0=e.catch(13),console.warn("Could not fetch file size:",e.t0);case 24:y({height:l,width:c,size:u}),e.next=31;break;case 27:e.prev=27,e.t1=e.catch(3),console.error("Error loading image metadata:",e.t1),y({height:0,width:0,size:0});case 31:case"end":return e.stop()}}),e,null,[[3,27],[13,21]])})));return function(){return e.apply(this,arguments)}}();e()}),[t.path,t.type]),(0,s.tZ)(s.HY,{children:(0,s.BX)("div",{css:Nr.listItemWrapper({isSelected:r}),children:[(0,A.$K)(t.isNewlyUploaded)&&t.isNewlyUploaded&&(0,s.tZ)("div",{css:Nr.uploadingSpinner,children:(0,s.tZ)(Ye.ZP,{})}),(0,s.BX)("button",{css:Nr.listItemTop({itemType:_.type,isSelected:r}),onClick:function(e){e.preventDefault(),i(t.id)},children:["image"===t.type&&(0,s.tZ)("img",{src:"".concat((0,A.$K)(t.isNewlyUploaded)&&t.isNewlyUploaded?"":A.Xy.pagebuilderBase).concat(t.thumb||t.path),alt:t.title}),"image"!==t.type&&(0,s.tZ)(I.Z,{name:_.icon,height:104,width:104}),"image"===t.type&&b.width>0&&(0,s.BX)("div",{css:Nr.mediaInfoOverlay,"data-media-info-overlay":!0,children:[(0,s.BX)("p",{css:Nr.mediaInfoText,children:[d("COM_SPPAGEBUILDER_EDITOR_MEDIA_DIMENSIONS"),": ",b.width," x ",b.height," px"]}),(0,s.BX)("p",{css:Nr.mediaInfoText,children:[d("COM_SPPAGEBUILDER_EDITOR_MEDIA_SIZE"),":"," ",b.size>0?function(e){if(0===e)return"0 Bytes";var t=Math.floor(Math.log(e)/Math.log(1024));return Math.round(e/Math.pow(1024,t)*100)/100+" "+["Bytes","KB","MB","GB"][t]}(b.size):"N/A"]})]}),(0,s.tZ)("div",{css:Nr.listItemCheckboxWrapper({isSelected:r}),children:(0,s.tZ)(re.Z,{checked:r,onChange:function(){i(t.id)}})})]}),(0,s.tZ)("div",{css:Nr.listItemInfo,title:w,children:l?(0,s.tZ)("div",{css:Nr.renameInputWrapper,children:m.isLoading?(0,s.tZ)(Ye.g4,{}):(0,s.tZ)(Kt.Z,{value:f,onChange:function(e){v(e)},onKeyDown:function(){var e=Rr(Dr().mark((function e(r){var n,o,i;return Dr().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("Escape"===r&&(u(!1),v("")),"Enter"===r){e.next=3;break}return e.abrupt("return");case 3:return n=t.id,o=t.path,i=t.thumb,e.next=6,m.mutateAsync({id:n,path:o,thumb:null!=i?i:"",title:f});case 6:e.sent.data.status&&u(!1);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),onBlur:function(){u(!1),v("")},focusOnMount:!0})}):(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:V.iZ.textEllipsis,children:w}),(0,s.tZ)(P.Z,{actions:O,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisY",height:16,width:16}),onSelect:function(e){"rename"===e?(u(!0),v(t.title)):o(t)},arrowPosition:"top"})]})})]},t.id)})};var kr=function(e){switch(e){case"video":return{color:n.qo.alternate.orange,backgroundColor:n.qo.background.lightOrange};case"audio":return{color:n.qo.alternate.red,backgroundColor:n.qo.background.error};case"pdf":return{color:n.qo.alternate.saturatedRed,backgroundColor:n.qo.background.saturatedLightRed};case"archive":return{color:n.qo.alternate.tenderGreen,backgroundColor:n.qo.background.lightGreen};case"excel":return{color:n.qo.alternate.viridian,backgroundColor:n.qo.background.lightViridian};case"presentation":return{color:n.qo.alternate.lightOrange,backgroundColor:n.qo.background.lightOrange};case"attachment":return{color:n.qo.text.hover,backgroundColor:n.qo.background.neutral};default:return{color:n.qo.base.primary,backgroundColor:n.qo.background.lightRoyalBlue}}},Nr={uploadingSpinner:(0,i.iv)("position:absolute;inset:0;z-index:",n.W5.positive,";background-color:",(0,Ar.m4)(n.qo.base.black,.6),";display:flex;align-items:center;justify-content:center;width:100%;height:100%;;label:uploadingSpinner;"),listItemWrapper:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.caption(),";background-color:",n.qo.background.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.base,";overflow:hidden;position:relative;",r&&(0,i.iv)("position:relative;::before{position:absolute;content:'';inset:0;background-color:",n.qo.base.highlight,";opacity:0.4;};label:listItemWrapper;"),";;label:listItemWrapper;")},listItemTop:function(e){var t=e.itemType,r=void 0===t?"image":t,o=e.isSelected,a=void 0!==o&&o;return(0,i.iv)(V.iZ.resetButton,";height:190px;width:100%;position:relative;text-align:center;::before{content:'';position:absolute;inset:0;opacity:0;display:none;background-color:transparent;transition:opacity 0.3s ease,background-color 0.3s ease;}",a&&(0,i.iv)("::before{display:block;opacity:0.4;background-color:",n.qo.base.highlight,";};label:listItemTop;")," :hover{::before{display:block;opacity:0.4;background-color:",n.qo.base.highlight,";}[data-media-info-overlay]{display:flex;opacity:1;}}","image"===r&&(0,i.iv)("background-color:",n.qo.background.neutral,";img{height:100%;width:100%;object-fit:contain;};label:listItemTop;")," ","image"!==r&&(0,i.iv)("display:flex;justify-content:center;align-items:center;background-color:",kr(r).backgroundColor,";svg{color:",kr(r).color,";};label:listItemTop;"),";;label:listItemTop;")},listItemCheckboxWrapper:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)("position:absolute;top:",n.W0[8],";left:",n.W0[8],";",r&&(0,i.iv)("z-index:",n.W5.positive,";;label:listItemCheckboxWrapper;"),";;label:listItemCheckboxWrapper;")},listItemInfo:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;padding:",n.W0[6]," ",n.W0[12],";height:44px;button{padding:0;svg{color:",n.qo.icon.hints,";}};label:listItemInfo;"),popover:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";padding:",n.W0[8]," 0;background-color:",n.qo.background.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[5],";;label:popover;"),renameInputWrapper:(0,i.iv)("width:100%;input{padding:",n.W0[12],";};label:renameInputWrapper;"),mediaInfoOverlay:(0,i.iv)("position:absolute;bottom:",n.W0[12],";left:50%;transform:translateX(-50%);padding:",n.W0[4]," ",n.W0[8],";display:none;flex-direction:column;align-items:center;opacity:0;transition:opacity 0.2s ease;z-index:",n.W5.positive,";;label:mediaInfoOverlay;"),mediaInfoText:(0,i.iv)("font-size:12px;color:",(0,Ar.m4)(n.qo.base.white,.95),";margin:0;line-height:1.4;white-space:nowrap;;label:mediaInfoText;")};function Gr(e){return Gr="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Gr(e)}function Wr(e){return function(e){if(Array.isArray(e))return Ur(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return Ur(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ur(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ur(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Fr(){Fr=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Gr(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Hr(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}const qr=function(e){var t=e.folders,r=e.foldersList,n=e.filter,o=e.items,i=e.selectedFolders,a=e.onSelectedFolders,l=e.onFilterChange,c=e.onDeleteFolder,u=e.onFileDelete,d=e.isLoading,p=e.isSingleInsert,f=void 0!==p&&p,v=(0,L.$)(),h=(0,Zt.d)().showModal,b=(0,er.Q)();return d?(0,s.tZ)("div",{css:Vr.spinnerWrapper,children:(0,s.tZ)(Ye.ZP,{})}):(0,s.BX)("div",{css:Vr.wrapper,children:[(0,s.tZ)("div",{css:Vr.listItemWrapper,children:(0,s.BX)("button",{type:"button",css:Vr.listItemTop({disabled:!b.create}),disabled:!b.create,onClick:function(){var e,t=(e=Fr().mark((function e(t){return Fr().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.preventDefault(),e.next=3,h({component:Er,props:{path:n,title:v("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FOLDER_CREATE_NEW")}});case 3:"CONFIRM"===e.sent.action&&a([]);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Hr(i,n,o,a,l,"next",e)}function l(e){Hr(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}(),children:[(0,s.tZ)(I.Z,{name:"addFolder",height:104,width:104}),(0,s.tZ)("p",{css:Vr.listItemInfo,children:v("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FOLDER_CREATE_NEW")})]})}),r.map((function(e,r){return(0,s.tZ)(xr,{folders:t,folderName:e,filter:n,selectedFolders:i,onSelect:function(e){var t=e.selectedFolder;e.isAlreadySelected?a(i.filter((function(e){return e.id!==t.id}))):a(f?[t]:[].concat(Wr(i),[t]))},onDeleteFolder:c,onNavigate:function(){return l("".concat(n,"/").concat(e))}},r)})),o.map((function(e,t){var r=i.find((function(t){return t.path===e.path}));return(0,s.tZ)(Mr,{item:e,isSelected:!!r,onDelete:u,onSelectionChange:function(){a(r?i.filter((function(t){return t.path!==e.path})):f?[{id:Number(e.id),path:e.path,type:"local"}]:[].concat(Wr(i),[{id:Number(e.id),path:e.path,type:"local"}]))}},t)}))]})};var Vr={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";display:grid;grid-template-columns:repeat(5, 1fr);gap:",n.W0[24],";padding-right:",n.W0[24],";max-height:calc(100vh - 290px);",n.Uo.tablet,"{grid-template-columns:repeat(4, 1fr);};label:wrapper;"),spinnerWrapper:(0,i.iv)(V.iZ.flexCenter(),";height:100%;width:100%;;label:spinnerWrapper;"),listItemWrapper:(0,i.iv)(o.c.caption(),";background-color:",n.qo.background.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.base,";overflow:hidden;height:234px;;label:listItemWrapper;"),listItemTop:function(e){var t=e.disabled;return(0,i.iv)(V.iZ.resetButton,";height:100%;width:100%;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;>svg{color:",n.qo.icon.default,";}>svg,>p{transition:color 0.3s ease;}:hover{>p{color:",n.qo.action.primary.hover,";}>svg{color:",n.qo.icon.primary,";}}",t&&(0,i.iv)("svg{color:",n.qo.icon.disabled,";}p{color:",n.qo.text.disabled,";}:hover{svg{color:",n.qo.icon.disabled,";}p{color:",n.qo.text.disabled,";}};label:listItemTop;"),";;label:listItemTop;")},listItemCheckboxWrapper:(0,i.iv)("position:absolute;top:",n.W0[8],";left:",n.W0[8],";;label:listItemCheckboxWrapper;"),listItemInfo:(0,i.iv)(o.c.body("medium"),";padding:",n.W0[6]," ",n.W0[12],";;label:listItemInfo;")},zr=(0,c.forwardRef)((function(e,t){var r=e.mediaItems,n=void 0===r?[]:r,o=e.selectedItemIds,i=e.onDelete,a=void 0===i?A.ZT:i,l=e.onSelectionChange,c=e.isInfiniteLoaderVisible,u=void 0!==c&&c,d=(0,L.$)();return n.length?(0,s.BX)("div",{css:$r.wrapper,children:[(0,s.tZ)("div",{css:$r.listItemsWrapper,children:n.map((function(e){var t=o.includes(e.id);return(0,s.tZ)(Mr,{item:e,isSelected:t,onSelectionChange:l,onDelete:a},e.id)}))}),(0,s.tZ)("div",{ref:t,css:$r.infiniteLoader({isVisible:u}),children:(0,s.tZ)(Ye.ZP,{})})]}):(0,s.tZ)("div",{css:$r.emptyMessage,children:d("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_NO_ITEMS_FOUND")})}));const Xr=zr;var Kr={name:"1tbj5j9-infiniteLoader",styles:"display:block;label:infiniteLoader;"},$r={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";max-height:calc(100vh - 340px);;label:wrapper;"),listItemsWrapper:(0,i.iv)("display:grid;grid-template-columns:repeat(5, 1fr);gap:",n.W0[24],";padding-right:",n.W0[24],";",n.Uo.tablet,"{grid-template-columns:repeat(4, 1fr);}",n.Uo.smallTablet,"{grid-template-columns:repeat(3, 1fr);};label:listItemsWrapper;"),emptyMessage:(0,i.iv)("height:100%;display:grid;place-items:center;background:",n.qo.background.white,";border-radius:",n.E0[10],";margin-right:",n.W0[24],";;label:emptyMessage;"),infiniteLoader:function(e){var t=e.isVisible,r=void 0!==t&&t;return(0,i.iv)("display:none;text-align:center;height:40px;margin-top:",n.W0[16],";",r&&Kr,";;label:infiniteLoader;")}};function Yr(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Qr=function(e){var t=e.selectedCategory,r=e.isInsideModal,n=void 0===r||r,o=e.onChange,i=e.onMediaUpload,a=(0,L.$)(),l=(0,c.useRef)(null),u=(0,er.Q)(),d=[{name:"*",icon:"filesDuo",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_ALL_ITEMS")},{name:"image",icon:"image",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_IMAGES")},{name:"video",icon:"videoCameraDuo",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_VIDEOS")},{name:"audio",icon:"music",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_AUDIOS")},{name:"attachment",icon:"paperclip",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_ATTACHMENTS")},{name:"folders",icon:"foldersDuo",title:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_FOLDERS")}];return(0,s.BX)("div",{css:Jr.sidebar({isInsideModal:n}),children:[n&&(0,s.BX)("div",{css:Jr.sidebarUploadButton,children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"upload"}),onClick:function(){var e;null===(e=l.current)||void 0===e||e.click()},disabled:!u.create,children:a("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_SIDEBAR_UPLOAD_FILES")}),(0,s.tZ)("input",{ref:l,type:"file",multiple:!0,"aria-hidden":"true",hidden:!0,onChange:function(e){var t,r=e.target.files;u.create&&r&&(i(function(e){if(Array.isArray(e))return Yr(e)}(t=r)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(e,t){if(e){if("string"==typeof e)return Yr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Yr(e,t):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),e.target.value="")}})]}),(0,s.tZ)("div",{css:Jr.sidebarItemWrapper,children:d.map((function(e){return(0,s.tZ)(_.Z,{variant:"text",buttonCss:Jr.sidebarItem({isActive:t===e.name,isInsideModal:n}),icon:(0,s.tZ)(I.Z,{name:e.icon,height:24,width:24}),onClick:function(){return o(e.name)},children:e.title},e.name)}))})]})};var Jr={sidebar:function(e){var t=e.isInsideModal,r=void 0===t||t;return(0,i.iv)("display:flex;flex-direction:column;height:316px;",r&&(0,i.iv)("background-color:",n.qo.base.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.card,";;label:sidebar;"),";;label:sidebar;")},sidebarUploadButton:(0,i.iv)("padding:",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";button{",V.iZ.flexCenter(),";width:100%;svg{margin-right:",n.W0[2],";}};label:sidebarUploadButton;"),sidebarItemWrapper:(0,i.iv)(o.c.body(),";display:flex;flex-direction:column;;label:sidebarItemWrapper;"),sidebarItem:function(e){var t=e.isActive,r=void 0!==t&&t,o=e.isInsideModal,a=void 0===o||o;return(0,i.iv)("padding:0;height:40px;gap:",n.W0[12],";transition:background-color 0.3s ease,color 0.3s ease,border-radius 0.3s ease;",a&&(0,i.iv)("padding:0 ",n.W0[16],";;label:sidebarItem;")," svg{color:",n.qo.icon.default,";margin-right:",n.W0[8],";transition:color 0.3s ease;}",r&&(0,i.iv)(a&&(0,i.iv)("background-color:",n.qo.base.surface,";;label:sidebarItem;")," color:",n.qo.text.primary,";border-radius:0;svg{color:",n.qo.icon.primary,";};label:sidebarItem;")," ",!r&&(0,i.iv)(":hover{background-color:",n.qo.base.surface,";color:",n.qo.text.hover,";border-radius:0;svg{color:",n.qo.icon.hover,";}};label:sidebarItem;"),";;label:sidebarItem;")}};function en(e){return en="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},en(e)}function tn(){tn=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==en(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function rn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function nn(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?rn(Object(r),!0).forEach((function(t){on(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rn(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function on(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==en(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==en(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===en(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function an(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function ln(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){an(i,n,o,a,l,"next",e)}function l(e){an(i,n,o,a,l,"throw",e)}a(void 0)}))}}function cn(e){return function(e){if(Array.isArray(e))return dn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||sn(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function un(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||sn(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function sn(e,t){if(e){if("string"==typeof e)return dn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?dn(e,t):void 0}}function dn(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var pn=function(e,t){return t.startsWith("".concat(e,"/"))?t.slice(e.length+1):t},fn=function(e){var t=e.label,r=e.path,n=e.level,o=e.selectedPath,i=e.onSelect,a=o===r;return(0,s.tZ)("div",{css:On.filterItem({isSelected:a,level:n}),children:(0,s.tZ)("button",{type:"button",css:On.filterItemButton,onClick:function(){return i(r)},children:(0,s.tZ)("span",{children:t})})})},vn=function(e){var t=e.rootPath,r=e.items,n=e.selectedPath,o=e.isOpen,i=e.onToggle,a=e.onSelect,l=n===t;return(0,s.BX)("div",{css:On.filterGroup,children:[(0,s.BX)("div",{css:On.filterGroupHeader({isSelected:l}),children:[(0,s.tZ)("button",{type:"button",css:On.filterChevron({isOpen:o}),onClick:function(e){e.preventDefault(),e.stopPropagation(),i(t)},children:(0,s.tZ)(I.Z,{name:"chevronRight",width:12,height:12,"data-chevron":!0})}),(0,s.tZ)("button",{type:"button",css:On.filterItemButton,onClick:function(){return a(t)},children:(0,s.tZ)("span",{children:t})})]}),o&&(0,s.tZ)("div",{css:On.filterChildren,children:r.map((function(e){return(0,s.tZ)(fn,{label:pn(t,e),path:e,level:1,selectedPath:n,onSelect:a},e)}))})]})},hn=function(e){var t,r=e.roots,n=e.selectedPath,o=e.defaultRootPath,i=e.isLoading,a=e.disabled,l=void 0!==a&&a,u=e.onSelect,d=un((0,c.useState)(!1),2),p=d[0],f=d[1],v=un((0,c.useState)((function(){return o?new Set([o]):new Set})),2),h=v[0],b=v[1],y=(0,c.useRef)(!1),m=(0,pe.l)({isOpen:p,isDropdown:!0}),g=m.triggerRef,E=m.triggerWidth,O=m.position,_=m.popoverRef,w=n||(null===(t=r[0])||void 0===t?void 0:t.rootPath)||"";(0,c.useEffect)((function(){y.current||o&&(b(new Set([o])),y.current=!0)}),[o]);var S=function(e){b((function(t){var r=new Set(t);return r.has(e)?r.delete(e):r.add(e),r}))};return(0,s.BX)("div",{css:On.filterDropdownWrapper,children:[(0,s.BX)("button",{type:"button",ref:g,css:On.filterTrigger({disabled:l}),onClick:function(){l||f((function(e){return!e}))},children:[(0,s.tZ)("span",{children:w}),(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20})]}),(0,s.tZ)(pe.h,{isOpen:p,onClickOutside:function(){return f(!1)},disableDrag:!0,children:(0,s.tZ)("div",{ref:_,css:[On.filterPopover,{left:O.left,top:O.top,minWidth:E},";label:FolderFilterDropdown;"],children:i?(0,s.tZ)("div",{css:On.filterLoading,children:(0,s.tZ)(Ye.ZP,{size:16})}):r.map((function(e){return(0,s.tZ)(vn,{rootPath:e.rootPath,items:e.items,selectedPath:n,isOpen:h.has(e.rootPath),onToggle:S,onSelect:function(e){u(e),f(!1)}},e.rootPath)}))})})]})};const bn=function(e){var t,r,n,o,i=e.isInsideModal,a=void 0===i||i,l=e.initialCategory,u=void 0===l?"*":l,d=e.isInInsertMode,p=e.allowedMediaType,f=e.files,v=e.clearFile,h=void 0===v?A.ZT:v,b=e.closeModal,y=void 0===b?A.ZT:b,m=e.onInsert,g=void 0===m?A.ZT:m,E=e.onBulkInsert,O=void 0===E?A.ZT:E,w=e.bulkImport,S=void 0!==w&&w,C=e.isSingleInsert,x=void 0!==C&&C,P=(0,L.$)(),T={link:null,text:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_ALL_ITEMS")},D=(0,at.v)((function(e){return e.appConfig})),Z=D.media_path,R=D.media_root_paths,j=D.media_upload_max_size,B=(0,c.useMemo)((function(){var e=(null!=R&&R.length?R:[Z]).filter(Boolean);return Array.from(new Set(e))}),[R,Z]),M=(0,c.useMemo)((function(){var e,t=B.find((function(e){return"/images"===e||e.endsWith("/images")}));return null!==(e=null!=t?t:B[0])&&void 0!==e?e:Z}),[Z,B]),k=un((0,c.useState)(u),2),N=k[0],G=k[1],W=un((0,c.useState)([]),2),U=W[0],F=W[1],H=un((0,c.useState)([T]),2),q=H[0],V=H[1],z=un((0,c.useState)(!1),2),X=z[0],K=z[1],$=un((0,c.useState)(M),2),Y=$[0],Q=$[1],J=un((0,c.useState)([]),2),ee=J[0],te=J[1],re=un((0,c.useState)([]),2),ne=re[0],oe=re[1],ie=(0,c.useRef)(null),ae=un((0,c.useState)([]),2),le=ae[0],ce=ae[1],ue=(0,er.Q)(),se=(0,Jt.Z)(),de=se.intersectionEntry,pe=se.intersectionElementRef,ye=(0,Qt.g)(),me=(0,ve.p)().showToast,Ee=(0,rt.O)({defaultValues:{search:"",filter:""}}),Oe=Ee.watch(),_e=Oe.search,we=Oe.filter,Ie=(0,fe.N)(_e),Se=function(e){var t=(0,ve.p)().showToast;return(0,ot.N)({queryKey:["MediaList",e],queryFn:function(t){var r=t.pageParam,n=void 0===r?1:r;return function(e){return ge.u.get(he.H.MEDIA,{params:e}).then((function(e){return e.data}))}(ut(ut({},e),{},{page:n}))},getNextPageParam:function(e,t){return e.pageNav?t.length+1:void 0},enabled:"folders"!==e.type,onError:function(e){t({type:"danger",message:e.message})}})}({type:N,search:Ie,date:we}),Ce=function(e){var t=(0,ve.p)().showToast;return(0,be.a)({queryKey:["FolderList",e],queryFn:function(){return gt(e)},enabled:"folders"===e.type,onError:function(e){t({type:"danger",message:e.message})}})}({type:N,filter:we,path:Y}),xe=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=(0,ve.p)().showToast,n=(0,it.h)({queries:e.map((function(n){return{queryKey:["FolderList",{type:"folders",path:n,filter:n}],queryFn:function(){return gt({type:"folders",path:n,filter:n})},enabled:t&&e.length>0,onError:function(e){r({type:"danger",message:e.message})}}}))});return{data:n.map((function(t,r){return t.data?{rootPath:e[r],data:t.data}:null})).filter((function(e){return!!e})),isLoading:n.some((function(e){return e.isLoading})),isFetching:n.some((function(e){return e.isFetching}))}}(B,"folders"===N),Pe=function(e){var t=(0,ve.p)().showToast;return(0,be.a)({queryKey:["FolderList",e],queryFn:function(){return gt(e)},enabled:"folders"===e.type&&e.hasSelection&&(0,A.IQ)(e.path),onError:function(e){t({type:"danger",message:e.message})}})}({type:N,filter:we,path:null===(t=ee[0])||void 0===t?void 0:t.path,hasSelection:1===ee.length}),Le=ht(),Ae=(0,c.useMemo)((function(){var e,t;return null!==(e=null===(t=Se.data)||void 0===t?void 0:t.pages.flatMap((function(e){return e.items})))&&void 0!==e?e:[]}),[null===(r=Se.data)||void 0===r?void 0:r.pages]),Te=(0,c.useMemo)((function(){var e;return 0===B.length?[]:null!==(e=xe.data)&&void 0!==e&&e.length?B.map((function(e){var t,r=xe.data.find((function(t){return t.rootPath===e})),n=r?function(e,t){var r=e.map((function(e){return e.relname})).filter((function(e){return e!==t}));return Array.from(new Set(r))}(null!==(t=r.data.folders)&&void 0!==t?t:[],e):[];return{rootPath:e,items:n}})):B.map((function(e){return{rootPath:e,items:[]}}))}),[xe.data,B]);(0,c.useEffect)((function(){null!=de&&de.isIntersecting&&Se.fetchNextPage()}),[null==de?void 0:de.isIntersecting]),(0,c.useEffect)((function(){var e=ie.current,t=function(e){e.stopPropagation(),X||K(!0)},r=function(e){e.stopPropagation(),K(!1)};return null==e||e.addEventListener("dragenter",t),null==e||e.addEventListener("dragleave",r),function(){null==e||e.removeEventListener("dragenter",t),null==e||e.removeEventListener("dragleave",r)}}),[]),(0,c.useEffect)((function(){var e,t,r,n;if("folders"===N){var o=null!==(e=null===(t=Ce.data)||void 0===t?void 0:t.folders.map((function(e){return{label:e.relname,value:e.relname}})))&&void 0!==e?e:[],i=(B.length?B:[Z]).map((function(e){return{label:e,value:e}}));oe([].concat(cn(i),cn(o)));var a=null!==(r=null===(n=Ce.data)||void 0===n?void 0:n.breadcrumbs.map((function(e){return{link:e.path,text:e.label}})))&&void 0!==r?r:[];V([{link:null,text:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_FOLDERS")}].concat(cn(a)))}}),[null===(n=Ce.data)||void 0===n?void 0:n.breadcrumbs,null===(o=Ce.data)||void 0===o?void 0:o.folders,Z,B,N]),(0,c.useEffect)((function(){"folders"===N&&0!==B.length&&(B.some((function(e){return Y===e||Y.startsWith("".concat(e,"/"))}))||Q(M))}),[M,Y,B,N]),(0,c.useEffect)((function(){if("folders"===N){var e=Y||M;Ee.setValue("filter",e)}else{var t,r,n=null!==(t=null===(r=Se.data)||void 0===r?void 0:r.pages[0].filters.map((function(e){var t="".concat(e.year,"-").concat(e.month);return{label:t,value:t}})))&&void 0!==t?t:[];oe([{label:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FILTER_ALL"),value:""}].concat(cn(n)))}}),[M,Y,Se.data,N]),(0,c.useEffect)((function(){null!=f&&f.length&&ln(tn().mark((function e(){var t;return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("folders"!==N||!f.some((function(e){var t;return!(null!=e&&null!==(t=e.type)&&void 0!==t&&t.includes("image"))}))){e.next=5;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_FOLDER_WARNING_MESSAGE")}),ce([]),h(),e.abrupt("return");case 5:if(!sr(f,j)){e.next=11;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(j)})}),ce([]),h(),e.abrupt("return");case 11:return t=ur(f),ce(t),e.next=15,Le.mutateAsync(nn({file:f},"folders"===N&&{folder:Y}));case 15:ce([]),h();case 17:case"end":return e.stop()}}),e)})))()}),[f]);var De,Ze,Re,je,Be,Me,ke,Ne,Ge,We,Ue,Fe=function(e){var t,r,n,o;return S?"folders"!==N?Ae.filter((function(e){return U.includes(e.id)})).every((function(e){return e.type===p})):(null!==(r=null===(n=Pe.data)||void 0===n?void 0:n.items)&&void 0!==r?r:[]).every((function(e){return e.type===p})):(t="folders"!==N?Ae.find((function(e){return U.includes(e.id)})):null===(o=Ce.data)||void 0===o?void 0:o.items.find((function(e){return ee[0].path===e.path})),!("folders"!==N||!e)||!!t&&("*"===p&&"folders"!==t.type||("folders"===N?(0,A.JB)(t.ext)===p:t.type===p)))},He=!!Ie||!!we,qe=X||!Se.isLoading&&0===Ae.length&&0===le.length&&!He,Ve={"*":"",image:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_IMAGES"),video:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_VIDEOS"),audio:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_AUDIOS"),attachment:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_ATTACHMENTS"),folders:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FOLDERS")},ze=!qe&&!Se.isLoading&&!!Se.hasNextPage;return(0,s.BX)("div",{css:On.wrapper({isInsideModal:a}),children:[(0,s.tZ)(Qr,{isInsideModal:a,selectedCategory:N,onChange:function(e){G(e),F([]),te([]),Ee.reset(),V([T,{link:null,text:Ve[e]}]),"folders"===e&&Q(M||"/images")},onMediaUpload:function(){var e=ln(tn().mark((function e(t){var r;return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("folders"!==N||!t.some((function(e){var t;return!(null!=e&&null!==(t=e.type)&&void 0!==t&&t.includes("image"))}))){e.next=5;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_FOLDER_WARNING_MESSAGE")}),ce([]),h(),e.abrupt("return");case 5:if(!sr(t,j)){e.next=11;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(j)})}),ce([]),h(),e.abrupt("return");case 11:return r=ur(t),ce(r),e.next=15,Le.mutateAsync(nn({file:t},"folders"===N&&{folder:Y}));case 15:ce([]);case 16:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()}),(0,s.BX)("div",{css:On.rightSideWrapper,children:[(0,s.BX)("div",{css:On.filterWrapper({isInsideModal:a}),children:[(0,s.tZ)("div",{css:On.textInputWrapper,children:(0,s.tZ)(It.Qr,{control:Ee.control,name:"search",render:function(e){return(0,s.tZ)(Qe.Z,nn(nn({},e),{},{variant:"search",placeholder:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_SEARCH_PLACEHOLDER"),disabled:"folders"===N,isClearable:!0}))}})}),(0,s.tZ)("div",{css:On.selectWrapper,children:"folders"===N?(0,s.tZ)(hn,{roots:Te,selectedPath:Y,defaultRootPath:M,isLoading:xe.isLoading,disabled:!Te.length,onSelect:function(e){Q(e),Ee.setValue("filter",e),te([])}}):(0,s.tZ)(It.Qr,{control:Ee.control,name:"filter",render:function(e){return(0,s.tZ)(Yt.Z,nn(nn({},e),{},{options:ne,onChange:function(e){return Q(e.value)},isClearable:!1}))}})})]}),(0,s.BX)("div",{css:On.topPanel,children:[(0,s.tZ)($t.Z,{routes:q,onFilterChange:function(e){"folders"===N&&Q(e)}}),!x&&(U.length>0||ee.length>0)&&(0,s.BX)("div",{css:On.topPanelActionsWrapper,children:[(0,s.tZ)("p",{children:P(U.length+ee.length>1?"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEMS_SELECTED":"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEM_SELECTED",{numberOfItems:U.length+ee.length})}),(0,s.tZ)("div",{children:(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"trash",height:16,width:16}),disabled:!ue.delete,onClick:ln(tn().mark((function e(){var t,r;return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=ee,"folders"===N){e.next=6;break}if(Se.data){e.next=4;break}return e.abrupt("return");case 4:r=Ae.filter((function(e){return U.includes(e.id)})),t=r.map((function(e){return nn(nn({},e),{},{type:"local+db"})}));case 6:return e.next=8,ye({title:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_TITLE"),confirmationMessage:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_MESSAGE"),confirmButtonText:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_BUTTON_TEXT"),mutationFn:ft,payload:{data:t},invalidateKeys:[["MediaList"],["FolderList"]]});case 8:if("CONFIRM"===e.sent.action){e.next=12;break}return e.abrupt("return");case 12:me({type:"success",message:P("COM_SPPAGEBUILDER_EDITOR_FILE_DELETE_SUCCESS_MESSAGE")}),"folders"===N?te([]):F([]);case 14:case"end":return e.stop()}}),e)}))),children:P("COM_SPPAGEBUILDER_EDITOR_BUTTON_TEXT_DELETE")})})]})]}),(0,s.tZ)("div",{ref:ie,css:On.droppableContainer({isInsideModal:a}),children:(0,s.tZ)(rr.Z,{query:"folders"===N?Ce:Se,children:qe?(0,s.tZ)("div",{css:On.mediaDropzoneWrapper({isInsideModal:a}),children:(0,s.tZ)(tr.Z,{onUpload:function(){var e=ln(tn().mark((function e(t){var r;return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("folders"!==N||!t.some((function(e){var t;return!(null!=e&&null!==(t=e.type)&&void 0!==t&&t.includes("image"))}))){e.next=5;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_FOLDER_WARNING_MESSAGE")}),ce([]),h(),e.abrupt("return");case 5:if(!sr(t,j)){e.next=11;break}return me({type:"danger",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(j)})}),ce([]),h(),e.abrupt("return");case 11:return r=ur(t),ce(r),K(!1),e.next=16,Le.mutateAsync(nn({file:t},"folders"===N&&{folder:Y}));case 16:ce([]);case 17:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),onDragLeave:function(){return K(!1)},multiple:!0,disabled:!ue.create})}):"folders"===N?(0,s.tZ)(qr,{folders:null!==(Me=null===(ke=Ce.data)||void 0===ke?void 0:ke.folders)&&void 0!==Me?Me:[],foldersList:null!==(Ne=null===(Ge=Ce.data)||void 0===Ge?void 0:Ge.folders_list)&&void 0!==Ne?Ne:[],items:[].concat(cn(le),cn(null!==(We=null===(Ue=Ce.data)||void 0===Ue?void 0:Ue.items)&&void 0!==We?We:[])),filter:Y,selectedFolders:ee,onSelectedFolders:function(e){return te(e)},onFilterChange:function(e){Q(e),te([])},onDeleteFolder:function(){var e=ln(tn().mark((function e(t){var r;return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={folder:t.path,deleteItem:"multiple"},e.next=3,ye({title:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_TITLE"),confirmationMessage:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_MESSAGE"),confirmButtonText:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_BUTTON_TEXT"),mutationFn:Et,payload:r,invalidateKeys:[["MediaList"],["FolderList"]]});case 3:"CONFIRM"===e.sent.action&&(me({type:"success",message:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_FOLDER_DELETE_SUCCESS")}),te([]));case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),onFileDelete:function(){var e=ln(tn().mark((function e(t){return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ye({title:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_TITLE"),confirmationMessage:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_MESSAGE"),confirmButtonText:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_BUTTON_TEXT"),mutationFn:ft,payload:{data:[nn(nn({},t),{},{type:"local"})]},invalidateKeys:[["MediaList"],["FolderList"]]});case 2:"CONFIRM"===e.sent.action&&(me({type:"success",message:P("COM_SPPAGEBUILDER_EDITOR_FILE_DELETE_SUCCESS_MESSAGE")}),F([]));case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),isLoading:!1,isSingleInsert:x}):Se.isLoading?(0,s.tZ)(Ye.fz,{}):(0,s.tZ)(s.HY,{children:(0,s.tZ)(Xr,{ref:pe,isInfiniteLoaderVisible:ze,mediaItems:[].concat(cn(le),cn(Ae)),selectedItemIds:U,onSelectionChange:function(e){U.includes(e)?F((function(t){return t.filter((function(t){return t!==e}))})):F(x?[e]:function(t){return[].concat(cn(t),[e])})},isFilterApplied:!!Ie||!!we,onDelete:function(){var e=ln(tn().mark((function e(t){return tn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,ye({title:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_TITLE"),confirmationMessage:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_MESSAGE"),confirmButtonText:P("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_CONSENT_CONFIRM_BUTTON_TEXT"),mutationFn:ft,payload:{data:[nn(nn({},t),{},{type:"local+db"})]},invalidateKeys:[["MediaList"],["FolderList"]]});case 2:"CONFIRM"===e.sent.action&&(me({type:"success",message:P("COM_SPPAGEBUILDER_EDITOR_FILE_DELETE_SUCCESS_MESSAGE")}),F([]));case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})})})})]}),(De=ee.some((function(e){return"folder"===e.type})),Ze=De&&1===ee.length,Re=!De,je=!S&&a&&d&&(1===U.length||1===ee.length)&&Fe(),Be=S&&a&&d&&(Ze||Re)&&(U.length>0||ee.length>0)&&Fe(),(je||Be)&&(0,s.BX)("div",{css:On.footerWrapper,children:[(0,s.tZ)(_.Z,{onClick:function(){var e,t,r=S;if("folders"!==N)1===U.length?(r&&(t=cn(Ae.filter((function(e){return U.includes(e.id)}))),O(t),y()),e=Ae.find((function(e){return U.includes(e.id)}))):(t=cn(Ae.filter((function(e){return U.includes(e.id)}))),O(t),y());else if(r&&"folders"===N){var n,o;if(!ee.some((function(e){return"folder"===e.type}))){var i=ee.map((function(e){var t=e.path,r=t.match(/\/([^\/]+)\.[^.]+$/),n="";return r&&(n=r[1]),{id:Number(e.id),title:n,thumb:t,path:e.path,type:e.type}}));O(i),y()}var a=(t=null!==(n=null===(o=Pe.data)||void 0===o?void 0:o.items)&&void 0!==n?n:[]).map((function(e){return nn(nn({},e),{},{thumb:e.path})}));O(a),y()}else{var l;e=null===(l=Ce.data)||void 0===l?void 0:l.items.find((function(e){return ee[0].path===e.path}))}e&&(g(e),y())},children:P("COM_SPPAGEBUILDER_EDITOR_INSERT")}),(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return F([])},children:P("COM_SPPAGEBUILDER_EDITOR_CANCEL")})]}))]})};var yn={name:"kf3hau-mediaDropzoneWrapper",styles:"padding-right:0;label:mediaDropzoneWrapper;"},mn={name:"1lytjnr-droppableContainer",styles:"min-height:350px;label:droppableContainer;"},gn={name:"17v0eb8-filterChevron",styles:"[data-chevron]{transform:rotate(90deg);};label:filterChevron;"},En={name:"1ce2508-filterWrapper",styles:"padding-right:0;label:filterWrapper;"},On={wrapper:function(e){var t=e.isInsideModal,r=void 0===t||t;return(0,i.iv)("display:grid;grid-template-columns:228px auto;gap:",n.W0[32],";height:calc(100vh - 130px);padding:",n.W0[32]," 0 ",n.W0[32]," ",n.W0[24],";background-color:",n.qo.background.primary,";position:relative;",!r&&(0,i.iv)("padding:",n.W0[24]," 0;grid-template-columns:180px auto;;label:wrapper;"),";;label:wrapper;")},rightSideWrapper:{name:"dhhsr1-rightSideWrapper",styles:"display:flex;flex-direction:column;label:rightSideWrapper;"},filterWrapper:function(e){var t=e.isInsideModal,r=void 0===t||t;return(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[16],";padding-right:",n.W0[24],";",!r&&En,";;label:filterWrapper;")},textInputWrapper:{name:"1r9fuqm-textInputWrapper",styles:"flex:1;label:textInputWrapper;"},selectWrapper:{name:"1u54jb-selectWrapper",styles:"width:160px;label:selectWrapper;"},filterDropdownWrapper:{name:"rj89k0-filterDropdownWrapper",styles:"position:relative;label:filterDropdownWrapper;"},filterTrigger:function(e){var t=e.disabled;return(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";width:100%;height:32px;display:flex;align-items:center;justify-content:space-between;gap:",n.W0[8],";padding:0 ",n.W0[12]," 0 ",n.W0[12],";border-radius:",n.E0[5],";border:1px solid ",n.qo.stroke.neutral,";background-color:",n.qo.background.white,";box-shadow:",n.AF.input,";color:",n.qo.text.default,";span{",V.iZ.textEllipsis,";}svg{color:",n.qo.icon.default,";}:focus,:focus-visible{outline:none;box-shadow:",n.AF.outline,";}",t&&(0,i.iv)("color:",n.qo.text.disabled,";cursor:not-allowed;svg{color:",n.qo.icon.disabled,";};label:filterTrigger;"),";;label:filterTrigger;")},filterPopover:(0,i.iv)("position:absolute;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";max-height:420px;padding:",n.W0[4]," 0;",V.iZ.overflowYAuto,";;label:filterPopover;"),filterGroup:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[2],";;label:filterGroup;"),filterGroupHeader:function(e){var t=e.isSelected;return(0,i.iv)("display:flex;align-items:center;gap:",n.W0[6],";min-height:36px;padding:",n.W0[4]," ",n.W0[8],";transition:background-color 0.3s ease-in-out;span{",o.c.body("medium"),";}&:hover{background-color:",n.qo.background.hover,";}",t&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:filterGroupHeader;"),";;label:filterGroupHeader;")},filterItem:function(e){var t=e.isSelected,r=e.level;return(0,i.iv)("min-height:36px;display:flex;align-items:center;padding:",n.W0[4]," ",n.W0[8],";padding-left:calc(",n.W0[8]," + ",30*r,"px);border-radius:",n.E0[4],";color:",n.qo.text.default,";&:hover{background-color:",n.qo.background.hover,";}",t&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:filterItem;"),";;label:filterItem;")},filterItemButton:(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";display:inline-flex;align-items:center;min-width:0;color:inherit;width:100%;text-align:left;span{",V.iZ.textEllipsis,";};label:filterItemButton;"),filterChevron:function(e){var t=e.isOpen;return(0,i.iv)(V.iZ.resetButton,";display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;[data-chevron]{transition:transform 0.3s ease;}",t&&gn,";;label:filterChevron;")},filterChildren:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[2],";;label:filterChildren;"),filterLoading:(0,i.iv)(V.iZ.flexCenter(),";padding:",n.W0[12],";;label:filterLoading;"),topPanel:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;gap:",n.W0[8],";height:32px;margin-top:",n.W0[32],";padding-right:",n.W0[24],";;label:topPanel;"),topPanelActionsWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[16],";p{",o.c.body("medium"),";margin:auto 0;}button{background-color:",n.qo.base.error,";:hover{background-color:",n.qo.alternate.saturatedRed,";}};label:topPanelActionsWrapper;"),droppableContainer:function(e){var t=e.isInsideModal,r=void 0===t||t;return(0,i.iv)("flex:1;position:relative;padding:",n.W0[20]," 0;",!r&&mn,";;label:droppableContainer;")},mediaDropzoneWrapper:function(e){var t=e.isInsideModal,r=void 0===t||t;return(0,i.iv)("height:max(100%, 512px);padding-right:",n.W0[24],";",!r&&yn,";;label:mediaDropzoneWrapper;")},footerWrapper:(0,i.iv)("display:flex;justify-content:end;align-items:center;gap:",n.W0[8],";padding:",n.W0[8]," ",n.W0[24],";background-color:",n.qo.background.white,";border-top:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.positive,";position:absolute;bottom:0;left:0;width:100%;;label:footerWrapper;")};const _n=function(e){var t=e.title,r=e.closeModal,n=e.initialCategory,o=void 0===n?"*":n,i=e.isInInsertMode,a=void 0===i||i,l=e.allowedMediaType,c=void 0===l?"image":l,u=e.onInsert,d=void 0===u?A.ZT:u,p=e.onBulkInsert,f=void 0===p?A.ZT:p,v=e.bulkImport,h=void 0!==v&&v,b=e.isSingleInsert,y=void 0!==b&&b,m=(0,L.$)();return(0,s.tZ)(St.Z,{onClose:function(){return r({action:"CLOSE"})},title:null!=t?t:m("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MODAL_TITLE"),isOverflowYAuto:!1,wrapperCss:wn.wrapper,children:(0,s.tZ)(bn,{isInInsertMode:a,initialCategory:o,allowedMediaType:c,onInsert:d,onBulkInsert:f,closeModal:function(){return r()},bulkImport:h,isSingleInsert:y})})};var wn={wrapper:{name:"ia4w6y-wrapper",styles:"max-width:1360px;label:wrapper;"}};function In(e){return In="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},In(e)}function Sn(){Sn=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==In(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Cn(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function xn(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Cn(i,n,o,a,l,"next",e)}function l(e){Cn(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Pn(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Ln(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ln(e,t){if(e){if("string"==typeof e)return An(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?An(e,t):void 0}}function An(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Tn=function(){return(0,s.tZ)("span",{css:Zn.spinner,children:(0,s.tZ)(Ye.ZP,{})})};const Dn=function(e){var t,r=e.field,n=e.fieldState,i=e.label,a=e.previewStyle,l=e.responsive,u=e.responsiveOrientation,d=e.helpText,p=e.mode,f=void 0===p?"image":p,v=e.placeholder,h=void 0===v?"":v,b=e.wrapperHeight,y=void 0===b?110:b,m=e.allowedFileExtensions,g=void 0===m?[]:m,E=e.caption,O=void 0!==E&&E,w=e.customButtonCss,S=e.customButtonContentCss,C=e.noPathInput,x=void 0!==C&&C,P=e.required,T=void 0!==P&&P,D=Pn((0,c.useState)(!1),2),Z=D[0],R=D[1],j=Pn((0,c.useState)(!1),2),B=j[0],M=j[1],k=(0,c.useRef)(null),N=(0,c.useRef)(null),G=ht(),W=(0,L.$)(),U=(0,ve.p)().showToast,F=(0,Zt.d)().showModal,H=(0,at.v)((function(e){return e.appConfig})).media_upload_max_size,q=(0,c.useRef)(null),V=r.value,z=V||"",X=!V;t="string"==typeof V?V.startsWith("http")?V:"".concat(A.Xy.pagebuilderBase).concat(V):"",(0,c.useEffect)((function(){var e=q.current,t=function(e){e.stopPropagation(),Z||R(!0)},r=function(e){e.stopPropagation(),R(!1)};return null==e||e.addEventListener("dragenter",t),null==e||e.addEventListener("dragleave",r),function(){null==e||e.removeEventListener("dragenter",t),null==e||e.removeEventListener("dragleave",r)}}),[]),(0,c.useEffect)((function(){X||"image"!==f||M(!0)}),[t,f]),(0,c.useEffect)((function(){var e;null!==(e=N.current)&&void 0!==e&&e.complete&&M(!1)}),[N.current]);var K=function(e){if(null==g||!g.length)return e;var t=e&&e.split(".").pop();return t&&g.includes(t)?e:(U({type:"danger",message:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_EXTENSION_NOT_ALLOWED")}),"")},$=function(){var e=xn(Sn().mark((function e(){var t;return Sn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:"image"===f?F({component:_n,props:{onInsert:function(e){r.onChange(K(e.path))},initialCategory:"image",allowedMediaType:"image",isSingleInsert:!0},closeOnOutsideClick:!0}):null===(t=k.current)||void 0===t||t.click();case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Y=function(){r.onChange(""),M(!1)},Q=function(e){if("string"!=typeof e)return null;var t=e.split("/");return t[t.length-1]},J=function(e){var t;if(!e)return!1;var r=null!==(t=e.split(".").pop())&&void 0!==t?t:"";return["jpg","jpeg","png","gif","svg"].includes(r)};return(0,s.tZ)(ne.Z,{label:i,field:r,fieldState:n,responsive:l,responsiveOrientation:u,helpText:d,required:T,children:function(){return(0,s.BX)(s.HY,{children:[X&&(0,s.tZ)("div",{ref:q,css:Zn.droppableContainer,children:(0,s.tZ)("div",{css:Zn.mediaDropzoneWrapper(y),children:(0,s.tZ)(zt,{onUpload:function(){var e=xn(Sn().mark((function e(t){return Sn().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!sr(t,H)){e.next=4;break}return U({type:"danger",message:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(H)})}),e.abrupt("return");case 4:if("image"!==f||J(t[0].name)){e.next=6;break}return e.abrupt("return");case 6:if(K(t[0].name)){e.next=8;break}return e.abrupt("return");case 8:return R(!1),e.next=11,G.mutateAsync({file:t}).then((function(e){var t;r.onChange(K(null===(t=e.data)||void 0===t?void 0:t.path))}));case 11:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),onDragLeave:function(){return R(!1)},onClickHandler:$,caption:O,supportedFileExtensions:g,uploadIcon:"file"===f?"localUpload":"upload",uploadButtonText:W("file"===f?"COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_FILE_UPLOAD_MESSAGE":"COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_IMAGE_UPLOAD_MESSAGE"),customButtonCss:w,customButtonContentCss:S})})}),!X&&"image"===f&&(0,s.BX)("div",{css:[Zn.previewWrapper(y),a,";label:MediaDropField;"],children:[B&&(0,s.tZ)(Tn,{}),(0,s.tZ)("img",{src:t,css:[Zn.imagePreview,B&&{display:"none"},";label:MediaDropField;"],onLoad:function(){return M(!1)},onError:function(){return M(!1)},ref:N}),(0,s.BX)("div",{css:Zn.hoverPreview,"data-hover-buttons-wrapper":!0,children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"recycle",height:16,width:16}),buttonContentCss:Zn.buttonContentPrimary,onClick:$,children:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_REPLACE")}),(0,s.tZ)(_.Z,{variant:"secondary",buttonContentCss:Zn.buttonContentPrimary,onClick:Y,children:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]})]}),!X&&"file"===f&&(0,s.BX)("div",{css:Zn.filePreviewWrapper,children:[(0,s.BX)("div",{style:{display:"flex",alignItems:"center"},children:[(0,s.tZ)(I.Z,{name:"collectionFileField",height:24,width:24}),(0,s.tZ)("div",{css:o.c.body(),children:Q(r.value)})]}),(0,s.BX)("div",{style:{display:"flex",alignItems:"center",gap:"8px"},children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"recycle",height:16,width:16}),buttonContentCss:Zn.buttonContentPrimary,onClick:$,children:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_REPLACE")}),(0,s.tZ)(_.Z,{variant:"secondary",buttonContentCss:Zn.buttonContentPrimary,onClick:Y,children:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]})]}),(0,s.tZ)("input",{type:"file",hidden:!0,ref:k,onChange:function(e){if(e.target.files){var t=function(e){if(Array.isArray(e))return An(e)}(n=e.target.files)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||Ln(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}();if(sr(t,H))return void U({type:"danger",message:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(H)})});if(!K(t[0].name))return;G.mutateAsync({file:t}).then((function(e){var t;r.onChange(null===(t=e.data)||void 0===t?void 0:t.path)}))}var n;e.target.value=""}}),!x&&(0,s.BX)("div",{css:Zn.inputWrapper,children:[(0,s.tZ)(Kt.Z,{value:z,onChange:function(e){r.onChange(e)},placeholder:h||"",inputCss:Zn.inputCss}),!X&&(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"cross",height:16,width:16}),buttonContentCss:Zn.buttonContent,onClick:Y,children:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]})]})}})};var Zn={droppableContainer:(0,i.iv)("flex:1;position:relative;margin-bottom:",n.W0[8],";;label:droppableContainer;"),mediaDropzoneWrapper:function(e){return(0,i.iv)("padding-right:",n.W0[24],";padding-right:0;height:",e,"px;;label:mediaDropzoneWrapper;")},inputWrapper:(0,i.iv)("display:flex;align-items:end;gap:",n.W0[12],";;label:inputWrapper;"),inputCss:(0,i.iv)("padding:0 ",n.W0[12],";;label:inputCss;"),buttonContent:(0,i.iv)(":hover{svg{color:",n.qo.icon.primary,";}}svg{color:",n.qo.icon.default,";};label:buttonContent;"),previewWrapper:function(e){return(0,i.iv)("display:flex;justify-content:space-around;align-items:center;min-width:200px;width:100%;height:",e,"px;position:relative;overflow:hidden;margin-bottom:",n.W0[8],";background-color:",n.qo.base.surface,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[8],";:hover{[data-hover-buttons-wrapper]{display:flex;opacity:1;}};label:previewWrapper;")},buttonContentPrimary:(0,i.iv)("svg{color:",n.qo.icon.white,";};label:buttonContentPrimary;"),imagePreview:{name:"1h6g8x-imagePreview",styles:"height:100%;object-fit:contain;label:imagePreview;"},hoverPreview:(0,i.iv)("display:none;justify-content:center;align-items:center;gap:",n.W0[8],";opacity:0;position:absolute;inset:0;background-color:",n.qo.alternate.backdrop,";border-radius:",n.E0[8],";button{height:32px;:last-of-type{background-color:",n.qo.base.white,";}};label:hoverPreview;"),spinner:{name:"k6liae-spinner",styles:"position:absolute;visibility:visible;display:flex;left:50%;top:50%;transform:translateX(-50%) translateY(-50%);label:spinner;"},filePreviewWrapper:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;min-width:200px;width:100%;height:",52,"px;position:relative;overflow:hidden;margin-bottom:",n.W0[8],";padding:",n.W0[12],";background-color:",n.qo.base.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";;label:filePreviewWrapper;")},Rn=r(8253),jn=r(4943),Bn=r(3106),Mn=r(2445),kn=r(2423);function Nn(e){return Nn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nn(e)}function Gn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Wn(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Gn(Object(r),!0).forEach((function(t){Un(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Gn(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Un(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Nn(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Nn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Nn(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Fn(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Hn=function(e){var t,r,n,o=e.label,i=e.rows,a=void 0===i?6:i,l=e.columns,u=e.maxLimit,d=e.hideMaxLimit,p=e.field,f=e.fieldState,v=e.disabled,h=e.readOnly,b=e.loading,y=e.placeholder,m=e.helpText,g=e.onChange,E=e.onKeyDown,O=e.focusOnMount,_=void 0!==O&&O,w=e.enableResize,I=void 0!==w&&w,S=e.isInlineLabel,C=void 0!==S&&S,x=e.isCharacterCountVisible,P=void 0!==x&&x,T=e.responsive,D=e.responsiveOrientation,Z=e.required,R=void 0!==Z&&Z,j=(0,L.$)(),B=(r=(0,c.useState)(null!==(t=p.value)&&void 0!==t?t:""),n=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,n)||function(e,t){if(e){if("string"==typeof e)return Fn(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fn(e,t):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),M=B[0],k=B[1],N=(0,c.useRef)(null),G=(0,fe.N)(M),W=(0,Rt.o5)(M,Bn.zu),U=(0,Mn.F)((function(e){return e.payload})),F=U.addonIndex,H=U.sectionIndex,q=U.columnIndex,V=U.tableItem,z=(0,kn.s)((function(e){return e})).currentState;return(0,c.useEffect)((function(){var e;p.value!==M&&k(null!==(e=p.value)&&void 0!==e?e:"")}),[p.value,F,H,q,V,z]),(0,c.useEffect)((function(){g&&g(W),p.onChange(G)}),[G]),(0,c.useEffect)((function(){_&&N.current&&N.current.focus()}),[_]),(0,s.tZ)(ne.Z,{label:o,field:p,fieldState:f,disabled:v,readOnly:h,loading:b,placeholder:y,helpText:m,isInlineLabel:C,responsive:T,responsiveOrientation:D,required:R,children:function(e){var t=e.attributes,r=e.data,n=r.responsive,o=r.device,i=((0,A.HD)(p.value)?p.value:"").length;return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:Vn.container({enableResize:I}),children:(0,s.tZ)("textarea",Wn(Wn(Wn({},p),t),{},{ref:N,value:(0,Rt.o5)(M,o),onChange:function(e){var t=e.target.value;if(!(u&&t.trim().length>u)){var r=(0,Rt.xU)({previous:p.value,value:t,responsive:n,device:o});k(null!=r?r:"")}},onKeyDown:function(e){E&&E(e.key)},autoComplete:"off",rows:a,cols:l}))}),!!u&&!d&&(0,s.tZ)("p",{css:Vn.maxLimit,children:j("COM_SPPAGEBUILDER_EDITOR_MAX_CHARACTERS",{maxCharacters:u})}),!!P&&!u&&(0,s.tZ)("p",{css:Vn.characterCount,children:j("COM_SPPAGEBUILDER_EDITOR_CHARACTERS_COUNT",{characters:i})}),!!P&&!!u&&(0,s.tZ)("p",{css:Vn.characterCount,children:j("COM_SPPAGEBUILDER_EDITOR_CHARACTERS_REMAINING",{remaining:u-i,maxCharacters:u})})]})}})};var qn={name:"19drmep-container",styles:"resize:vertical;label:container;"},Vn={container:function(e){var t=e.enableResize,r=void 0!==t&&t;return(0,i.iv)("textarea{",o.c.body()," height:auto;min-height:90px;padding:",n.W0[6]," ",n.W0[12],";resize:vertical;",r&&qn,";:focus{box-shadow:",n.AF.outline,";}};label:container;")},maxLimit:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";text-transform:lowercase;;label:maxLimit;"),characterCount:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";text-align:right;;label:characterCount;")},zn=r(9752),Xn=function(){var e=(0,ve.p)().showToast,t=(0,at.v)((function(e){return e.loadAppConfig}));return(0,be.a)({queryKey:["AppConfig"],queryFn:function(){return ge.u.get(he.H.APP_CONFIG).then((function(e){return e.data}))},onSuccess:function(e){t(e)},onError:function(t){e({type:"danger",message:t.message})}})};function Kn(e){return Kn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Kn(e)}function $n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Yn(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$n(Object(r),!0).forEach((function(t){Qn(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Qn(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Kn(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Kn(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Kn(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Jn=function(e){var t=e.id,r=e.index,n=e.fieldIndex,o=e.control,i=e.onDelete,a=e.placeholder,l=(0,C.nB)({id:t}),c=l.attributes,u=l.listeners,d=l.setNodeRef,p=l.transform,f=l.transition,v=l.isDragging,h={transform:x.ux.Transform.toString(p),transition:f,opacity:v?.5:1};return(0,s.BX)("div",{css:[eo.sortableWrapper,h,";label:SortableOptionItem;"],ref:d,children:[(0,s.tZ)("button",Yn(Yn(Yn({type:"button",css:eo.dragHandle},c),u),{},{children:(0,s.tZ)(I.Z,{name:"dragger"})})),(0,s.BX)("div",{css:eo.extensionWrapper,children:[(0,s.tZ)("div",{css:eo.textFieldWrapper,children:(0,s.tZ)(It.Qr,{control:o,name:"fields.".concat(n,".options[").concat(r,"].label"),render:function(e){var t=Yn(Yn({},e),{},{field:Yn(Yn({},e.field),{},{value:e.field.value})});return(0,s.tZ)(Qe.Z,Yn(Yn({},t),{},{placeholder:a}))}})}),(0,s.tZ)(_.Z,{onClick:i,icon:(0,s.tZ)(I.Z,{name:"trash",width:12,height:12}),buttonCss:eo.deleteButtonStyle,variant:"secondary"})]})]})};var eo={sortableWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";;label:sortableWrapper;"),textFieldWrapper:(0,i.iv)("width:100%;input{border-top-right-radius:",n.W0[0],";border-bottom-right-radius:",n.W0[0],";}input:focus{box-shadow:none!important;};label:textFieldWrapper;"),extensionWrapper:(0,i.iv)("width:100%;margin-bottom:",n.W0[10],";display:flex;input{width:100%;};label:extensionWrapper;"),deleteButtonStyle:(0,i.iv)("border-top-left-radius:",n.W0[0],";border-bottom-left-radius:",n.W0[0],";border-left:",n.W0[0],";&:hover{border:1px solid ",n.qo.stroke.neutral,";border-left:",n.W0[0],";svg{color:",n.qo.action.error.default,";}};label:deleteButtonStyle;"),dragHandle:(0,i.iv)("background:none;border:none;cursor:grab;padding:",n.W0[4],";border-radius:4px;display:flex;align-items:center;justify-content:center;color:",n.qo.icon.default,";:hover{background-color:",n.qo.background.hover,";color:",n.qo.icon.hover,";}:active{cursor:grabbing;}svg{width:12px;height:12px;};label:dragHandle;")};function to(e){return to="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},to(e)}var ro="/Users/sifathaque/Herd/sppb/administrator/components/com_sppagebuilder/assets/editor/src/components/dynamic-content/RenderCollectionSchema.tsx";function no(e){return function(e){if(Array.isArray(e))return co(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||lo(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function oo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function io(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?oo(Object(r),!0).forEach((function(t){ao(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oo(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ao(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==to(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==to(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===to(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lo(e,t){if(e){if("string"==typeof e)return co(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?co(e,t):void 0}}function co(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const uo=function(e){var t,r,n,o,a,l,u,d=e.type,p=e.collectionForm,f=e.id,v=e.collections,h=p.watch("fields").findIndex((function(e){return e.id===f})),b=(0,L.$)(),y=(l=(0,c.useState)(null),u=2,function(e){if(Array.isArray(e))return e}(l)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(l,u)||lo(l,u)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=y[0],g=y[1],E=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is})),O=p.getValues("fields.".concat(h,".reference_collection_name")),w=p.getValues("fields.".concat(h,".reference_collection_id")),S=[{label:O,value:w}],x=null!==(t=null===(r=v.find((function(e){return e.id===w})))||void 0===r?void 0:r.items)&&void 0!==t?t:[],P=null!==(n=null===(o=Xn().data)||void 0===o?void 0:o.allowed_file_extensions)&&void 0!==n?n:[],T=null!==(a=p.watch("fields.".concat(h,".is_textarea")))&&void 0!==a&&a;switch(d){case"title":case"alias":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description"))]});case"text":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".is_textarea"),render:function(e){return(0,s.tZ)(jn.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_TEXT_AREA"),isInlineLabel:!0}))}},"fields.".concat(h,".is_textarea")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".max_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{type:"number",label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_LENGTH"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_LENGTH_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)}}))}},"fields.".concat(h,".max_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:e.field.value})});return T?(0,i.az)(Hn,io(io({},t),{},{key:"textarea",label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE_PLACEHOLDER"),__source:{fileName:ro,lineNumber:275,columnNumber:19}})):(0,i.az)(Qe.Z,io(io({},t),{},{key:"default_value",label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE_PLACEHOLDER"),__source:{fileName:ro,lineNumber:285,columnNumber:17}}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"date-time":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".show_time"),render:function(e){return(0,s.tZ)(jn.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_SHOW_TIME"),isInlineLabel:!0}))}},"fields.".concat(h,".show_time")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"gallery":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".min_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{type:"number",label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN_LIMIT"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN_LIMIT_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)}}))}},"fields.".concat(h,".min_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".max_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_LIMIT"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_LIMIT_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".max_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"image":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:e.field.value})});return(0,s.tZ)(Dn,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MEDIA_DEFAULT"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MEDIA_DEFAULT_PLACEHOLDER"),noPathInput:!0}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"icon":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:e.field.value})});return(0,s.tZ)(Nt,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE_PLACEHOLDER"),isInlineLabel:!0}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"video":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"file":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".file_extensions"),render:function(e){return(0,s.tZ)(Rn.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_EXTENSION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_EXTENSION_PLACEHOLDER"),options:P.map((function(e){return{label:e.toLowerCase(),value:e}})),isSearchable:!0,arrowSize:20}))}},"fields.".concat(h,".file_extensions")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"option":var D=p.watch("fields.".concat(h,".options"));return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.BX)("div",{css:so.optionsWrapper,children:[(0,s.tZ)("label",{css:so.label,children:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_OPTIONS")}),(0,s.BX)(zn.LB,{sensors:E,collisionDetection:zn.pE,onDragStart:function(e){g(String(e.active.id))},onDragEnd:function(e){var t=e.active,r=e.over;if(g(null),null!=r&&r.id&&t.id!==r.id){var n=D.findIndex((function(e){return e.value===t.id})),o=D.findIndex((function(e){return e.value===r.id}));if(-1!==n&&-1!==o){var i=(0,C.Rp)(D,n,o);p.setValue("fields.".concat(h,".options"),i)}}},children:[(0,s.tZ)(C.Fo,{items:D.map((function(e){return e.value})),strategy:C.qw,children:D.map((function(e,t){return(0,s.tZ)(Jn,{id:e.value,index:t,fieldIndex:h,control:p.control,onDelete:function(){p.setValue("fields.".concat(h,".options"),no(D).filter((function(t){return t.value!==e.value})))},placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_OPTIONS_PLACEHOLDER")},e.value)}))}),(0,s.tZ)(zn.y9,{children:m&&(0,s.tZ)(Jn,{id:m,index:D.findIndex((function(e){return e.value===m})),fieldIndex:h,control:p.control,onDelete:function(){},placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_OPTIONS_PLACEHOLDER")})})]}),(0,s.tZ)("div",{children:(0,s.tZ)(_.Z,{onClick:function(){p.setValue("fields.".concat(h,".options"),[].concat(no(D),[{label:"",value:(0,A.x0)()}]))},icon:(0,s.tZ)(I.Z,{name:"plus",width:12,height:12}),buttonCss:so.fieldName(0===D.length),variant:"secondary",children:D.length>0?b("COM_SPPAGEBUILDER_EDITOR_OPTION_FIELD_ADD_MORE_DYNAMIC_CONTENT"):b("COM_SPPAGEBUILDER_EDITOR_OPTION_FIELD_ADD_NEW_DYNAMIC_CONTENT")})})]}),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),options:D.map((function(e){return{label:e.label,value:e.value}}))}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"rating":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE_PLACEHOLDER"),onChange:function(t){var r=""===t?"":function(e){return"integer"===p.getValues("fields.".concat(h,".number_format"))?Math.round(e):e}(Number(t));e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".max_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_VALUE_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".max_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".number_format"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_FORMAT"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_FORMAT_PLACEHOLDER"),options:[{label:"Any format",value:"any"},{label:"Integer(1)",value:"integer"},{label:"Fraction(0.5)",value:"decimal"}]}))}},"fields.".concat(h,".number_format")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"switch":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:(0,A.$K)(e.field.value)?Number(e.field.value):0})});return(0,s.tZ)(jn.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_SET_DEFAULT"),isInlineLabel:!0}))}},"fields.".concat(h,".default_value"))]});case"location":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".is_single_location"),render:function(e){return(0,s.tZ)(jn.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_SINGLE_LOCATION"),isInlineLabel:!0}))}},"fields.".concat(h,".is_single_location"))]});case"color":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:e.field.value})});return(0,s.tZ)(Ke,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME")}))}},"fields.".concat(h,".default_value"))]});case"number":var Z=function(e){return"integer"===p.getValues("fields.".concat(h,".number_format"))?Math.round(e):e};return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Z(Number(t));e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".default_value")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".min_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN_VALUE_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".min_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".max_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_VALUE_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".max_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".number_step"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_STEP"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_STEP_PLACEHOLDER"),type:"number",onChange:function(t){var r=""===t?"":Z(Number(t));e.field.onChange(r)}}))}},"fields.".concat(h,".number_step")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".number_format"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_FORMAT"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_FORMAT_PLACEHOLDER"),options:[{label:"Any format",value:"any"},{label:"Integer(1)",value:"integer"},{label:"Decimal(1.0)",value:"decimal"}]}))}},"fields.".concat(h,".number_format")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".allow_negative"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_ALLOW_NEGATIVE"),onChange:function(t){var r=!0===t?1:0;e.field.onChange(r)}}))}},"fields.".concat(h,".allow_negative")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"rich-text":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".min_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{type:"number",label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MIN_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)}}))}},"fields.".concat(h,".min_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".max_length"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_MAX_PLACEHOLDER"),onChange:function(t){var r=""===t?"":Number(t);e.field.onChange(r)},type:"number"}))}},"fields.".concat(h,".max_length")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"link":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"email":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"phone":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".placeholder"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_PLACEHOLDER_PLACEHOLDER")}))}},"fields.".concat(h,".placeholder")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"reference":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".reference_collection_id"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_COLLECTION"),disabled:!0,options:S}))}},"fields.".concat(h,".reference_collection_id")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_REFERENCE_PLACEHOLDER"),options:x}))}},"fields.".concat(h,".default")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});case"multi-reference":return(0,s.BX)("div",{css:so.formFields,children:[(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".name"),rules:io({},(0,fr.n)()),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_NAME_PLACEHOLDER")}))}},"fields.".concat(h,".name")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".description"),render:function(e){return(0,s.tZ)(Qe.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DESCRIPTION_PLACEHOLDER")}))}},"fields.".concat(h,".description")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".reference_collection_id"),render:function(e){return(0,s.tZ)(Yt.Z,io(io({},e),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_COLLECTION"),disabled:!0,options:S}))}},"fields.".concat(h,".reference_collection_id")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".default_value"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Array.isArray(e.field.value)?e.field.value.map((function(e){return Number(e)})):[]})});return(0,s.tZ)(Rn.Z,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_DEFAULT_VALUE"),placeholder:b("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_MULTI_REFERENCE_PLACEHOLDER"),options:x,arrowSize:20}))}},"fields.".concat(h,".default")),(0,s.tZ)(It.Qr,{control:p.control,name:"fields.".concat(h,".required"),render:function(e){var t=io(io({},e),{},{field:io(io({},e.field),{},{value:Boolean(e.field.value)})});return(0,s.tZ)(ue,io(io({},t),{},{label:b("COM_SPPAGEBUILDER_EDITOR_COLLECTION_FIELD_REQUIRED")}))}},"fields.".concat(h,".required"))]});default:return null}};var so={formFields:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[20],";;label:formFields;"),label:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";font-size:",n.JB[12],";margin-bottom:",n.W0[4],";;label:label;"),optionsWrapper:{name:"12dzaib-optionsWrapper",styles:"display:flex;flex-direction:column;label:optionsWrapper;"},fieldName:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(o.c.caption(),";margin-left:",e?0:n.W0[28],";color:",e?n.qo.text.primary:n.qo.text.default,";;label:fieldName;")}};function po(e){return po="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},po(e)}function fo(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function vo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ho(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?vo(Object(r),!0).forEach((function(t){bo(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):vo(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function bo(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==po(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==po(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===po(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var yo=ho({},JSON.parse('{"recipes":{"title":"Recipes","alias":"recipes","fields":[{"name":"Title","type":"title","required":1},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Image","type":"image","required":0,"default_value":""},{"name":"Description","type":"text","required":0,"is_textarea":1},{"name":"Ingredients","type":"rich-text","required":0},{"name":"Cooking Instructions","type":"text","is_textarea":1,"required":0},{"name":"Nutritional Information","type":"text","is_textarea":1,"required":0},{"name":"Preparation Time","type":"text","required":0}]},"events":{"title":"Events","alias":"events","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter event title"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Description","type":"rich-text","required":0,"placeholder":"Enter event description"},{"name":"Start Date","type":"date-time","required":1,"show_time":1,"placeholder":"Select start date and time"},{"name":"End Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select end date and time"},{"name":"Location","type":"text","required":1,"placeholder":"Enter event location"},{"name":"Address","type":"text","is_textarea":1,"required":0,"placeholder":"Enter full address"},{"name":"Event Type","type":"option","options":[{"label":"In Person","value":"f47ac10b-58cc-4372-a567-0e02b2c3d479"},{"label":"Virtual","value":"550e8400-e29b-41d4-a716-446655440000"},{"label":"Hybrid","value":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"}],"required":1,"placeholder":"Select event type"},{"name":"Registration Link","type":"link","required":0,"placeholder":"Enter registration URL"},{"name":"Maximum Attendees","type":"number","number_format":"integer","required":0,"placeholder":"Enter maximum number of attendees"},{"name":"Price","type":"number","number_format":"decimal","required":0,"placeholder":"Enter event price"},{"name":"Featured Image","type":"image","required":0,"placeholder":"Upload featured image"},{"name":"Contact Email","type":"email","required":0,"placeholder":"Enter contact email"},{"name":"Contact Phone","type":"phone","required":0,"placeholder":"Enter contact phone number"}]},"testimonials":{"title":"Testimonials","alias":"testimonials","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter client name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Client Image","type":"image","required":0,"placeholder":"Upload client photo"},{"name":"Testimonial","type":"rich-text","required":1,"placeholder":"Enter client testimonial"},{"name":"Company","type":"text","required":0,"placeholder":"Enter company name"},{"name":"Position","type":"text","required":0,"placeholder":"Enter job position"},{"name":"Rating","type":"number","number_format":"integer","required":0,"placeholder":"Rate from 1-5"},{"name":"Date","type":"date-time","required":0,"show_time":0,"placeholder":"Select testimonial date"},{"name":"Featured","type":"switch","required":0}]},"services":{"title":"Services","alias":"services","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter service name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Service Image","type":"image","required":0},{"name":"Short Description","type":"text","is_textarea":1,"required":1,"placeholder":"Enter brief service description"},{"name":"Description","type":"rich-text","required":0,"placeholder":"Enter full service description"},{"name":"Price","type":"number","number_format":"decimal","required":0,"placeholder":"Enter service price"},{"name":"Duration","type":"text","required":0,"placeholder":"Enter service duration"},{"name":"Category","type":"option","options":[{"label":"Consulting","value":"550e8400-e29b-41d4-a716-446655440000"},{"label":"Development","value":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},{"label":"Design","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"},{"label":"Support","value":"a6e4f7c1-4711-4c1d-b349-394e2c14c3f2"}],"required":0,"placeholder":"Select service category"},{"name":"Features","type":"rich-text","required":0,"placeholder":"List service features"},{"name":"Featured","type":"switch","required":0},{"name":"Order Link","type":"link","required":0,"placeholder":"Enter order/booking URL"}]},"team_members":{"title":"Team Members","alias":"team-members","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter team member name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Profile Image","type":"image","required":0},{"name":"Position","type":"text","required":1,"placeholder":"Enter job title"},{"name":"Type","type":"option","options":[{"label":"Staff","value":"8f7e6d5c-4321-4xyz-9876-543210abcdef"},{"label":"Contributor","value":"7c6d5e4f-5678-4xyz-8765-432109fedcba"},{"label":"Author","value":"12345678-90ab-cdef-1234-567890abcdef"}],"required":0,"placeholder":"Select team member type"},{"name":"Department","type":"option","options":[{"label":"Management","value":"8f7e6d5c-4321-4xyz-9876-543210abcdef"},{"label":"Sales","value":"7c6d5e4f-5678-4xyz-8765-432109fedcba"},{"label":"Development","value":"6b5a4c3d-8901-4xyz-7654-321098badcfe"},{"label":"Design","value":"5a4b3c2d-2345-4xyz-6543-210987cbafed"}],"required":0,"placeholder":"Select department"},{"name":"Bio","type":"rich-text","required":0,"placeholder":"Enter team member biography"},{"name":"Email","type":"email","required":0,"placeholder":"Enter work email"},{"name":"Phone","type":"phone","required":0,"placeholder":"Enter work phone number"},{"name":"LinkedIn","type":"link","required":0,"placeholder":"Enter LinkedIn profile URL"},{"name":"Start Date","type":"date-time","required":0,"show_time":0,"placeholder":"Select start date"}]},"projects":{"title":"Projects","alias":"projects","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter project name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Image","type":"image","required":0},{"name":"Short Description","type":"text","is_textarea":1,"required":1,"placeholder":"Enter brief project overview"},{"name":"Description","type":"rich-text","required":0,"placeholder":"Enter detailed project description"},{"name":"Client","type":"text","required":0,"placeholder":"Enter client name"},{"name":"Status","type":"option","options":[{"label":"In Progress","value":"d290f1ee-6c54-4b01-90e6-d701748f0851"},{"label":"Completed","value":"04c6e90f-a605-4d19-a4f3-d74c6c8d6ad6"},{"label":"On Hold","value":"8b9c4e1d-c6a5-4c37-8a2f-b95e1d52c362"}],"required":1,"placeholder":"Select project status"},{"name":"Category","type":"option","options":[{"label":"Web Development","value":"7d9f1a2b-3c4e-5d6f-8g9h-0i1j2k3l4m5n"},{"label":"Mobile App","value":"2a3b4c5d-6e7f-8g9h-0i1j-2k3l4m5n6o7p"},{"label":"Design","value":"9h8g7f6e-5d4c-3b2a-1m9n-8o7p6q5r4s3t"},{"label":"Consulting","value":"4s5t6u7v-8w9x-0y1z-2a3b-4c5d6e7f8g9h"}],"required":0,"placeholder":"Select project category"},{"name":"Start Date","type":"date-time","required":1,"show_time":0,"placeholder":"Select project start date"},{"name":"End Date","type":"date-time","required":0,"show_time":0,"placeholder":"Select project completion date"},{"name":"Technologies","type":"text","is_textarea":1,"required":0,"placeholder":"List technologies used"},{"name":"Project URL","type":"link","required":0,"placeholder":"Enter project/demo URL"},{"name":"Featured","type":"switch","required":0}]},"announcements":{"title":"Announcements","alias":"announcements","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter announcement title"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Content","type":"rich-text","required":1,"placeholder":"Enter announcement content"},{"name":"Type","type":"option","options":[{"label":"General","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Important","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"Urgent","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"}],"required":1,"placeholder":"Select announcement type"},{"name":"Publication Date","type":"date-time","required":1,"show_time":1,"placeholder":"Select publication date and time"},{"name":"Expiry Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select expiry date and time"},{"name":"Featured Image","type":"image","required":0,"placeholder":"Upload featured image"},{"name":"Target Audience","type":"option","options":[{"label":"All Users","value":"8f7e6d5c-4321-4xyz-9876-543210abcdef"},{"label":"Staff Only","value":"7c6d5e4f-5678-4xyz-8765-432109fedcba"},{"label":"Members Only","value":"6b5a4c3d-8901-4xyz-7654-321098badcfe"}],"required":0,"placeholder":"Select target audience"},{"name":"External Link","type":"link","required":0,"placeholder":"Enter related link URL"},{"name":"Featured","type":"switch","required":0}]},"locations":{"title":"Locations","alias":"locations","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter location name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Address","type":"text","is_textarea":1,"required":1,"placeholder":"Enter full address"},{"name":"City","type":"text","required":1,"placeholder":"Enter city"},{"name":"State/Province","type":"text","required":1,"placeholder":"Enter state or province"},{"name":"Postal Code","type":"text","required":1,"placeholder":"Enter postal/zip code"},{"name":"Country","type":"text","required":1,"placeholder":"Enter country"},{"name":"Phone","type":"phone","required":0,"placeholder":"Enter location phone number"},{"name":"Email","type":"email","required":0,"placeholder":"Enter location email"},{"name":"Hours of Operation","type":"rich-text","required":0,"placeholder":"Enter business hours"},{"name":"Type","type":"option","options":[{"label":"Headquarters","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Branch Office","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"Retail Store","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"},{"label":"Warehouse","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"}],"required":0,"placeholder":"Select location type"},{"name":"Featured Image","type":"image","required":0,"placeholder":"Upload location image"},{"name":"Description","type":"rich-text","required":0,"placeholder":"Enter location description"},{"name":"Amenities","type":"text","is_textarea":1,"required":0,"placeholder":"List available amenities"},{"name":"Google Maps Link","type":"link","required":0,"placeholder":"Enter Google Maps URL"},{"name":"Active","type":"switch","required":0}]},"directories":{"title":"Directories","alias":"directories","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter business/organization name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Logo","type":"image","required":0,"placeholder":"Upload business logo"},{"name":"Category","type":"option","options":[{"label":"Restaurant","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Retail","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"Professional Services","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"},{"label":"Healthcare","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"}],"required":1,"placeholder":"Select business category"},{"name":"Description","type":"rich-text","required":1,"placeholder":"Enter business description"},{"name":"Address","type":"text","is_textarea":1,"required":1,"placeholder":"Enter full address"},{"name":"Phone","type":"phone","required":1,"placeholder":"Enter business phone"},{"name":"Email","type":"email","required":0,"placeholder":"Enter business email"},{"name":"Website","type":"link","required":0,"placeholder":"Enter business website URL"},{"name":"Business Hours","type":"rich-text","required":0,"placeholder":"Enter operating hours"},{"name":"Social Media","type":"text","is_textarea":1,"required":0,"placeholder":"Enter social media links"},{"name":"Featured Images","type":"image","required":0},{"name":"Services Offered","type":"rich-text","required":0,"placeholder":"List main services/products"}]},"listings":{"title":"Listings","alias":"listings","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter listing title"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Category","type":"option","options":[{"label":"For Sale","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"For Rent","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"Services","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"},{"label":"Jobs","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"}],"required":1,"placeholder":"Select listing category"},{"name":"Price","type":"number","number_format":"decimal","required":1,"placeholder":"Enter price"},{"name":"Description","type":"rich-text","required":1,"placeholder":"Enter detailed description"},{"name":"Images","type":"image","required":0,"placeholder":"Upload listing images"},{"name":"Location","type":"text","required":1,"placeholder":"Enter location"},{"name":"Contact Name","type":"text","required":1,"placeholder":"Enter contact person\'s name"},{"name":"Contact Phone","type":"phone","required":1,"placeholder":"Enter contact phone number"},{"name":"Contact Email","type":"email","required":0,"placeholder":"Enter contact email"},{"name":"Condition","type":"option","options":[{"label":"New","value":"550e8400-e29b-41d4-a716-446655440000"},{"label":"Like New","value":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},{"label":"Good","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"},{"label":"Fair","value":"a6e4f7c1-4711-4c1d-b349-394e2c14c3f2"}],"required":0,"placeholder":"Select item condition"},{"name":"Publication Date","type":"date-time","required":1,"show_time":1,"placeholder":"Select publication date"},{"name":"Expiry Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select expiry date"},{"name":"Featured","type":"switch","required":0},{"name":"Status","type":"option","options":[{"label":"Available","value":"8f7e6d5c-4321-4xyz-9876-543210abcdef"},{"label":"Pending","value":"7c6d5e4f-5678-4xyz-8765-432109fedcba"},{"label":"Sold","value":"6b5a4c3d-8901-4xyz-7654-321098badcfe"}],"required":1,"placeholder":"Select listing status"}]},"profiles":{"title":"Profiles","alias":"profiles","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter full name"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Profile Picture","type":"image","required":0,"placeholder":"Upload profile picture"},{"name":"Bio","type":"rich-text","required":0,"placeholder":"Enter brief biography"},{"name":"Email","type":"email","required":1,"placeholder":"Enter email address"},{"name":"Phone","type":"phone","required":0,"placeholder":"Enter phone number"},{"name":"Location","type":"text","required":0,"placeholder":"Enter city/country"},{"name":"Occupation","type":"text","required":0,"placeholder":"Enter current occupation"},{"name":"Skills","type":"text","is_textarea":1,"required":0,"placeholder":"List your key skills"},{"name":"Interests","type":"text","is_textarea":1,"required":0,"placeholder":"List your interests/hobbies"},{"name":"Website","type":"link","required":0,"placeholder":"Enter personal website URL"},{"name":"Social Media Links","type":"text","is_textarea":1,"required":0,"placeholder":"Enter social media profile URLs"},{"name":"Account Type","type":"option","options":[{"label":"Personal","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Professional","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"Business","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"}],"required":1,"placeholder":"Select account type"},{"name":"Join Date","type":"date-time","required":1,"show_time":0,"placeholder":"Select join date"},{"name":"Featured","type":"switch","required":0}]},"campaigns":{"title":"Campaigns","alias":"campaigns","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter campaign name"},{"name":"Alias","type":"alias","required":1},{"name":"Campaign Image","type":"image","required":0,"placeholder":"Upload campaign banner/image"},{"name":"Description","type":"rich-text","required":1,"placeholder":"Enter campaign description"},{"name":"Campaign Type","type":"option","options":[{"label":"Email","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Social Media","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"PPC/Ads","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"},{"label":"Event","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"}],"required":1,"placeholder":"Select campaign type"},{"name":"Start Date","type":"date-time","required":1,"show_time":1,"placeholder":"Select campaign start date"},{"name":"End Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select campaign end date"},{"name":"Target Audience","type":"text","is_textarea":1,"required":0,"placeholder":"Describe target audience"},{"name":"Budget","type":"number","number_format":"decimal","required":0,"placeholder":"Enter campaign budget"},{"name":"Goals","type":"rich-text","required":0,"placeholder":"Enter campaign objectives and KPIs"},{"name":"Status","type":"option","options":[{"label":"Draft","value":"550e8400-e29b-41d4-a716-446655440000"},{"label":"Active","value":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},{"label":"Paused","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"},{"label":"Completed","value":"a6e4f7c1-4711-4c1d-b349-394e2c14c3f2"}],"required":1,"placeholder":"Select campaign status"},{"name":"Channel","type":"text","required":0,"placeholder":"Enter distribution channels"},{"name":"Landing Page","type":"link","required":0,"placeholder":"Enter campaign landing page URL"},{"name":"Tracking Code","type":"text","required":0,"placeholder":"Enter tracking/UTM codes"},{"name":"Results","type":"rich-text","required":0,"placeholder":"Enter campaign results and metrics"},{"name":"Featured","type":"switch","required":0}]},"tickets":{"title":"Tickets","alias":"tickets","fields":[{"name":"Title","type":"title","required":1,"placeholder":"Enter ticket subject"},{"name":"Alias","type":"alias","required":1,"placeholder":"Enter URL-friendly alias or leave empty for auto-generation"},{"name":"Description","type":"rich-text","required":1,"placeholder":"Enter ticket description"},{"name":"Priority","type":"option","options":[{"label":"Low","value":"9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d"},{"label":"Medium","value":"1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed"},{"label":"High","value":"6ec0bd7f-11c0-43da-975e-2a8ad9ebae0b"},{"label":"Critical","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"}],"required":1,"placeholder":"Select ticket priority"},{"name":"Status","type":"option","options":[{"label":"Open","value":"550e8400-e29b-41d4-a716-446655440000"},{"label":"In Progress","value":"6ba7b810-9dad-11d1-80b4-00c04fd430c8"},{"label":"Pending","value":"7c9e6679-7425-40de-944b-e07fc1f90ae7"},{"label":"Resolved","value":"a6e4f7c1-4711-4c1d-b349-394e2c14c3f2"},{"label":"Closed","value":"b7e4f7c1-4711-4c1d-b349-394e2c14c3f3"}],"required":1,"placeholder":"Select ticket status"},{"name":"Category","type":"option","options":[{"label":"Technical Support","value":"8f7e6d5c-4321-4xyz-9876-543210abcdef"},{"label":"Billing","value":"7c6d5e4f-5678-4xyz-8765-432109fedcba"},{"label":"Feature Request","value":"6b5a4c3d-8901-4xyz-7654-321098badcfe"},{"label":"Bug Report","value":"5a4b3c2d-2345-4xyz-6543-210987cbafed"}],"required":1,"placeholder":"Select ticket category"},{"name":"Assigned To","type":"text","required":0,"placeholder":"Enter assignee name"},{"name":"Submitter Name","type":"text","required":1,"placeholder":"Enter submitter name"},{"name":"Submitter Email","type":"email","required":1,"placeholder":"Enter submitter email"},{"name":"Submission Date","type":"date-time","required":1,"show_time":1,"placeholder":"Select submission date and time"},{"name":"Due Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select due date and time"},{"name":"Resolution Date","type":"date-time","required":0,"show_time":1,"placeholder":"Select resolution date and time"},{"name":"Resolution Notes","type":"rich-text","required":0,"placeholder":"Enter resolution details"},{"name":"Internal Notes","type":"rich-text","required":0,"placeholder":"Enter internal notes"}]}}')),mo=r(1151),go=r(5602),Eo=r(9313),Oo=r(8138),_o=r(9250);function wo(e){return wo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},wo(e)}var Io=["id"],So=["id"];function Co(e){return function(e){if(Array.isArray(e))return Bo(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||jo(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xo(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Po(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xo(Object(r),!0).forEach((function(t){Lo(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xo(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Lo(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==wo(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==wo(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===wo(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ao(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function To(){To=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==wo(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Do(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Zo(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Do(i,n,o,a,l,"next",e)}function l(e){Do(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Ro(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||jo(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function jo(e,t){if(e){if("string"==typeof e)return Bo(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Bo(e,t):void 0}}function Bo(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Mo={name:"11anvku-CreateCollectionModal",styles:"margin-block:2px;label:CreateCollectionModal;"},ko=function(e){var t,r=e.title,n=e.closeModal,o=e.isNew,i=void 0!==o&&o,a=e.preset,l=e.collections,u=e.collection,d=(0,L.$)(),p=(0,_o.s0)(),f=(0,mo.Qr)(),v=(0,mo.N2)(),h=(0,mo.A0)((null==u?void 0:u.id)||-1),b=(0,mo.Fn)(),y=Ro((0,c.useState)(!1),2),m=y[0],g=y[1],E=(0,zn.Dy)((0,zn.VT)(zn.we,{activationConstraint:{distance:15}})),O=Ro((0,c.useState)(null),2),w=O[0],S=O[1],x=Ro((0,c.useState)(null),2),P=x[0],T=x[1],D=(0,c.useMemo)((function(){return null!=a&&a.id?function(e){return ho(ho({},yo[e]),{},{fields:yo[e].fields.map((function(e){return ho(ho({},e),{},{id:(0,A.x0)()})}))})}(a.id).fields:[{id:(0,A.x0)(),type:"title",name:"Title",description:"",placeholder:"",default_value:"",max_length:"",required:1,is_textarea:0},{id:(0,A.x0)(),name:"Alias",type:"alias",description:"",placeholder:"",required:0}]}),[a]),Z=(0,rt.O)({defaultValues:{title:(null==a?void 0:a.name)||"",alias:"",fields:D}}),R=Z.formState.isDirty,N=(0,Zt.d)().showModal,G=Z.watch("title"),W=Z.watch("alias"),U=Z.watch("fields"),F=Ro((0,c.useState)({type:"title",id:null===(t=U[0])||void 0===t?void 0:t.id}),2),H=F[0],q=F[1],V=(0,pe.l)({isOpen:m,isDropdown:!0}),z=V.triggerRef,X=V.position,K=V.popoverRef;(0,c.useEffect)((function(){if(null!=u&&u.id){var e,t,r,n=(null!==(e=h.data)&&void 0!==e?e:[]).map((function(e){return function(e,t){for(var r=j(e),n=0,o=Object.keys(r);n<o.length;n++){var i=o[n];i in t&&(r[i]=t[i])}return r}(e.type,e)}));Z.setValue("fields",n),q({type:null===(t=n[0])||void 0===t?void 0:t.type,id:null===(r=n[0])||void 0===r?void 0:r.id})}null!=u&&u.title&&Z.setValue("title",u.title),null!=u&&u.alias&&Z.setValue("alias",u.alias)}),[u,h.data]),(0,c.useEffect)((function(){S(null),T(null)}),[m]);var $=function(){var e=Zo(To().mark((function e(){return To().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,N({component:Qt.Z,props:{title:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_TITLE"),confirmationMessage:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_MESSAGE"),confirmButtonText:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_DISCARD"),cancelButtonText:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_CANCEL"),skipMutation:!0}});case 2:return e.abrupt("return",e.sent);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return h.isLoading?(0,s.tZ)(St.Z,{onClose:function(){return!1},wrapperCss:Go.wrapper,isOverflowYAuto:!1,title:null!=r?r:d("COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION"),children:(0,s.BX)("div",{css:Go.body,children:[(0,s.BX)("div",{css:Go.stickyHeader,children:[(0,s.tZ)(Eo.Z,{height:16,width:"30%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0})]}),(0,s.BX)("div",{css:Go.settingsContainer,children:[(0,s.tZ)("div",{css:Go.fieldsContainer,children:(0,s.BX)("div",{css:[Go.fieldsContainerInner,"gap:16px;;label:CreateCollectionModal;"],children:[(0,s.tZ)(Eo.Z,{height:20,width:"80%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"60%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"55%",animation:!0}),(0,s.tZ)("div",{css:Mo}),(0,s.tZ)(Eo.Z,{height:20,width:"80%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"65%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"55%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"40%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"50%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"55%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"50%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"40%",animation:!0}),(0,s.tZ)(Eo.Z,{height:20,width:"52%",animation:!0})]})}),(0,s.BX)("div",{css:[Go.formContainer,"gap:16px;;label:CreateCollectionModal;"],children:[(0,s.tZ)(Eo.Z,{height:16,width:"45%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0}),(0,s.tZ)(Eo.Z,{height:16,width:"35%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0}),(0,s.tZ)(Eo.Z,{height:16,width:"55%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0}),(0,s.tZ)(Eo.Z,{height:16,width:"50%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0}),(0,s.tZ)(Eo.Z,{height:16,width:"32%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"100%",animation:!0})]})]}),(0,s.BX)("div",{css:Go.footerWrapper,children:[(0,s.tZ)(Eo.Z,{height:32,width:"16%",animation:!0}),(0,s.tZ)(Eo.Z,{height:32,width:"28%",animation:!0})]})]})}):(0,s.BX)(St.Z,{onClose:function(){R?$().then((function(e){"CONFIRM"===e.action&&n({action:"CLOSE"})})):n({action:"CLOSE"})},title:null!=r?r:d("COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION"),wrapperCss:Go.wrapper,isOverflowYAuto:!1,children:[(0,s.BX)("form",{onSubmit:Z.handleSubmit((0,pr.GI)(Z,function(){var e=Zo(To().mark((function e(t){var r,o,a;return To().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!i){e.next=7;break}return e.next=4,f.mutateAsync({title:t.title,alias:t.alias,fields:JSON.stringify(t.fields.map((function(e){return e.id,Po({},Ao(e,Io))})))});case 4:e.t0=e.sent,e.next=10;break;case 7:return e.next=9,v.mutateAsync({id:null!==(r=null==u?void 0:u.id)&&void 0!==r?r:-1,title:t.title,alias:t.alias,fields:JSON.stringify(t.fields.map((function(e){return"string"==typeof e.id?(e.id,Ao(e,So)):e})))});case 9:e.t0=e.sent;case 10:(o=e.t0).data&&((a=(0,A.hj)(o.data)?o.data.toString():null==u?void 0:u.id.toString())&&p(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:a})),n({action:"CONFIRM"})),e.next=17;break;case 14:throw e.prev=14,e.t1=e.catch(0),e.t1;case 17:case"end":return e.stop()}}),e,null,[[0,14]])})));return function(t){return e.apply(this,arguments)}}())),children:[(0,s.BX)("div",{css:Go.body,children:[(0,s.BX)("div",{css:Go.stickyHeader,children:[(0,s.tZ)(It.Qr,{control:Z.control,name:"title",rules:Po({},(0,fr.n)()),render:function(e){return(0,s.tZ)("div",{css:Go.fieldWrapper,children:(0,s.tZ)(Qe.Z,Po(Po({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_NAME"),placeholder:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_NAME_PLACEHOLDER")}))})}}),(0,s.tZ)(It.Qr,{control:Z.control,name:"alias",render:function(e){var t=d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_ALIAS_PLACEHOLDER");t=W?t:G?(0,A.VH)(G):t;var r=Po(Po({},e),{},{field:Po(Po({},e.field),{},{value:(0,A.VH)(e.field.value)})});return(0,s.tZ)("div",{css:Go.fieldWrapper,children:(0,s.tZ)(Qe.Z,Po(Po({},r),{},{label:d("COM_SPPAGEBUILDER_EDITOR_COLLECTION_ALIAS"),placeholder:t}))})}})]}),(0,s.BX)("div",{css:Go.settingsContainer,children:[(0,s.tZ)("div",{css:Go.fieldsContainer,children:(0,s.BX)("div",{css:Go.fieldsContainerInner,children:[(0,s.tZ)("div",{css:Go.fieldCategory(),children:d("COM_SPPAGEBUILDER_EDITOR_BASIC_FIELDS")}),U.filter((function(e){return Object.keys(mo.VI).includes(e.type)})).map((function(e){return(0,s.tZ)("div",{css:[Go.fieldElement(),H.id===e.id&&Go.selectedField,";label:CreateCollectionModal;"],onClick:function(){q({type:e.type,id:e.id})},children:(0,s.BX)("div",{css:Go.fieldElementIconAndTitle,children:[(0,s.tZ)(I.Z,{height:16,width:16,name:B(e.type),style:Go.fieldIcon(H.id===e.id)}),(0,s.tZ)("div",{css:Go.fieldName(H.id===e.id),children:e.name})]})},e.id)})),(0,s.BX)("div",{css:Go.fieldCategory(!0),children:[(0,s.tZ)("div",{children:d("COM_SPPAGEBUILDER_EDITOR_CUSTOM_FIELDS")}),(0,s.tZ)("button",{type:"button",css:Go.btn,onClick:function(){g(!0)},ref:z,children:(0,s.tZ)(I.Z,{height:20,width:20,name:"plus",style:Go.fieldIcon()})})]}),(0,s.tZ)(zn.LB,{sensors:E,collisionDetection:zn.pE,modifiers:[go.l],onDragEnd:function(e){var t=e.active,r=e.over;if(t.id!==(null==r?void 0:r.id)){var n=U.findIndex((function(e){return e.id===t.id})),o=U.findIndex((function(e){return e.id===(null==r?void 0:r.id)})),i=(0,C.Rp)(U,n,o);Z.reset(Po(Po({},Z.getValues()),{},{fields:i}));var a=i.filter((function(e){return!Number.isNaN(Number(e.id))})).map((function(e){return Number(e.id)}));b.mutateAsync({pks:a})}},children:(0,s.tZ)(C.Fo,{items:U,strategy:C.qw,children:U.filter((function(e){return!Object.keys(mo.VI).includes(e.type)})).map((function(e){return(0,s.tZ)(ee,{field:e,actions:k,collectionForm:Z,activeField:H,setActiveField:q},e.id)}))})})]})}),(0,s.tZ)("div",{css:Go.formContainer,children:(0,s.tZ)(uo,Po(Po({},H),{},{collectionForm:Z,collections:l}))})]})]}),(0,s.BX)("div",{css:Go.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){R?$().then((function(e){"CONFIRM"===e.action&&n({action:"CLOSE"})})):n({action:"CLOSE"})},children:d("COM_SPPAGEBUILDER_EDITOR_CANCEL_COLLECTION")}),(0,s.tZ)(_.Z,{type:"submit",loading:f.isLoading,children:d(i?"COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION":"COM_SPPAGEBUILDER_EDITOR_UPDATE_COLLECTION")})]})]}),(0,s.tZ)(pe.h,{isOpen:m,onClickOutside:function(){return g(!1)},children:(0,s.BX)("div",{css:[Go.optionsWrapper,{left:X.left,top:X.top,maxWidth:160},";label:CreateCollectionModal;"],ref:K,children:[(0,s.tZ)("ul",{css:Go.options,children:M.map((function(e,t){var r=["reference","multi-reference"].includes(e.type),n=l.length>0;return r&&!n?null:(0,s.BX)("li",{css:Go.optionItem({hasSeparator:"reference"===e.type}),children:[(0,s.BX)("button",{type:"button",css:Go.optionItemInner,onMouseEnter:function(t){if(!r)return S(null),void T(null);!function(e,t){if(K.current){var r=e.currentTarget.getBoundingClientRect(),n=K.current.getBoundingClientRect();T({top:r.top-n.top,left:r.right-n.left,height:r.height}),S((function(e){return e===t?e:t}))}else S(t)}(t,e.type)},onClick:function(){if(!r){var t=j(e.type);Z.setValue("fields",[].concat(Co(U),[Po({},t)]),{shouldDirty:!0}),q({id:t.id,type:t.type}),g(!1)}},children:[(0,s.tZ)(I.Z,{height:16,width:16,name:B(e.type),style:Go.fieldIcon()}),(0,s.tZ)("div",{css:Go.fieldNamePortal,children:e.title})]}),r&&(0,s.tZ)(I.Z,{height:12,width:12,name:"chevronRight",style:Go.fieldIcon()})]},t)}))}),w&&P&&(0,s.tZ)("div",{"data-reference-popover":!0,css:Go.referencePopover({show:!0}),style:{top:P.top+P.height,left:P.left+4,transform:"translateY(-100%)"},children:(0,s.tZ)("ul",{css:Go.options,children:l.map((function(e){return(0,s.tZ)("li",{css:Go.optionItem({hasSeparator:!1}),onClick:function(){var t=j("multi-reference"===w?"multi-reference":"reference"),r=Po(Po({},t),{},{reference_collection_id:e.id,reference_collection_name:e.title,name:e.title});Z.setValue("fields",[].concat(Co(U),[Po({},r)])),g(!1),q({id:t.id,type:t.type})},children:(0,s.tZ)("div",{css:Go.fieldName(),children:e.title})},e.id)}))})})]})})]})},No=function(){var e=(0,Zt.d)().showModal;return function(t){return e({component:ko,props:t,closeOnOutsideClick:!0})}},Go={wrapper:{name:"z3rd8n-wrapper",styles:"width:714px;position:relative;label:wrapper;"},body:(0,i.iv)("background-color:",n.qo.background.primary,";height:600px;max-height:calc(100vh - 120px);;label:body;"),stickyHeader:(0,i.iv)("position:sticky;top:0;background-color:",n.qo.background.primary,";border-bottom:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.header,";padding:",n.W0[16]," ",n.W0[24],";display:flex;gap:",n.W0[16],";&>div{width:100%;};label:stickyHeader;"),preset:(0,i.iv)("display:flex;align-items:center;justify-content:flex-start;gap:",n.W0[4],";margin-top:-",n.W0[16],";margin-bottom:",n.W0[4],";;label:preset;"),presetContainer:(0,i.iv)("display:flex;gap:",n.W0[8],";;label:presetContainer;"),settingsContainer:{name:"1adpg3b-settingsContainer",styles:"display:grid;grid-template-columns:270px auto;height:calc(100% - 150px);label:settingsContainer;"},formContainer:(0,i.iv)("width:100%;padding:",n.W0[24],";display:flex;flex-direction:column;height:100%;overflow-y:auto;",V.iZ.hideScrollbar,";;label:formContainer;"),fieldsContainer:(0,i.iv)("width:100%;display:flex;flex-direction:column;gap:",n.W0[10],";padding:",n.W0[24],";border-right:1px solid ",n.qo.stroke.neutral,";height:100%;overflow-y:auto;",V.iZ.hideScrollbar,";;label:fieldsContainer;"),fieldsContainerInner:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";;label:fieldsContainerInner;"),fieldName:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(o.c.caption(),";",V.iZ.textEllipsis,";width:150px;color:",e?n.qo.text.primary:n.qo.text.default,";;label:fieldName;")},fieldNamePortal:(0,i.iv)(o.c.caption(),";color:",n.qo.text.default,";;label:fieldNamePortal;"),fieldIcon:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("color:",e?n.qo.icon.primary:n.qo.icon.default,";display:flex;align-items:center;justify-content:center;;label:fieldIcon;")},fieldElement:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("display:flex;align-items:center;height:32px;cursor:pointer;position:relative;padding-inline:",n.W0[8],";flex-shrink:0;&:hover{background-color:",!e&&n.qo.background.white,";border-radius:",!e&&n.E0[5],";box-shadow:",!e&&n.AF.addonHover,";[data-field-icon]{display:none;}[data-dragger]{display:flex;align-items:center;justify-content:center;transform:scale(1.5);color:",n.qo.icon.default,";cursor:move;}[data-action-icon]{display:flex;color:",n.qo.icon.default,";margin-left:4px;}};label:fieldElement;")},fieldElementIconAndTitle:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";;label:fieldElementIconAndTitle;"),selectedField:(0,i.iv)("background-color:",n.qo.background.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.base,";color:",n.qo.text.primary,";;label:selectedField;"),dragger:{name:"1h5igwz-dragger",styles:"display:none;label:dragger;"},fieldCategory:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)("display:flex;justify-content:space-between;font-size:",n.JB[14],";line-height:",n.Nv[20],";font-weight:500;color:",n.qo.text.default,";padding-bottom:",n.W0[4],";margin-top:",e&&n.W0[12],";position:sticky;top:-24px;background:",n.qo.background.primary,";z-index:",n.W5.positive,";padding-top:",n.W0[8],";;label:fieldCategory;")},btn:{name:"svocbp-btn",styles:"background-color:transparent;border:none;cursor:pointer;label:btn;"},optionsWrapper:(0,i.iv)("position:absolute;width:100%;max-width:160px;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:optionsWrapper;"),options:(0,i.iv)("list-style-type:none;max-height:597px;padding:",n.W0[4]," 0;margin:0;width:100%;overflow:auto;;label:options;"),optionItem:function(e){var t=e.hasSeparator,r=void 0!==t&&t;return(0,i.iv)("position:relative;",o.c.body(),";height:28px;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;align-items:center;padding-inline:",n.W0[8],";justify-content:space-between;",r&&(0,i.iv)("border-top:1px solid ",n.qo.stroke.neutral,";;label:optionItem;")," &:hover{background-color:",n.qo.background.hover,";};label:optionItem;")},referencePopover:function(e){var t=e.show;return(0,i.iv)("display:flex;visibility:",t?"visible":"hidden",";position:absolute;background-color:",n.qo.background.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";width:136px;z-index:",n.W5.dropdown,";;label:referencePopover;")},optionItemInner:(0,i.iv)(V.iZ.resetButton,";display:flex;align-items:center;gap:",n.W0[8],";width:100%;height:100%;;label:optionItemInner;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;align-items:center;gap:",n.W0[8],";padding:",n.W0[12]," ",n.W0[24],";background-color:",n.qo.background.white,";border-top:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.positive,";width:100%;height:60px;position:absolute;bottom:0;;label:footerWrapper;"),fieldWrapper:(0,i.iv)("margin-bottom:",n.W0[12],";;label:fieldWrapper;")};function Wo(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Uo=Object.entries(yo).map((function(e){var t,r,n=(r=2,function(e){if(Array.isArray(e))return e}(t=e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return fo(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fo(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());return{id:n[0],name:n[1].title}}));const Fo=function(){var e,t,r,n=(0,L.$)(),o=No(),i=_i().collections,a=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Wo(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Wo(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],u=a[1],d=(0,pe.l)({isOpen:l}),p=d.triggerRef,f=d.position,v=d.popoverRef,h=null===(e=(0,er.Q)().collection)||void 0===e?void 0:e.create;return(0,s.BX)(s.HY,{children:[(0,s.tZ)("button",{type:"button",css:Ho.chooseFromPreset,ref:p,onClick:function(){u(!0)},children:n("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_CHOOSE_FROM_PRESET")}),(0,s.tZ)(pe.h,{isOpen:l,onClickOutside:function(){return u(!1)},children:(0,s.tZ)("div",{ref:v,css:[Ho.presetPopoverWrapper,{left:f.left+120,top:f.top-8,maxWidth:136},";label:CreateFromPreset;"],children:Uo.map((function(e){return(0,s.tZ)("button",{type:"button",disabled:!h,css:[Ho.presetPopoverItem,Ho.isDisabled(!h),";label:CreateFromPreset;"],title:e.name,onClick:function(){u(!1),o({isNew:!0,preset:e,collections:i})},children:(0,s.tZ)("span",{children:e.name})},e.id)}))})})]})};var Ho={chooseFromPreset:(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:chooseFromPreset;"),presetPopoverWrapper:(0,i.iv)("position:absolute;width:100%;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";display:flex;flex-direction:column;padding-block:",n.W0[4],";;label:presetPopoverWrapper;"),presetPopoverItem:(0,i.iv)(V.iZ.resetButton,";height:28px;display:flex;align-items:center;padding-inline:",n.W0[12],";&>span{",o.c.body(),";color:",n.qo.text.default,";width:130px;",V.iZ.textEllipsis,";}&:hover{background-color:",n.qo.base.surface,";&>span{color:",n.qo.text.primary,";}};label:presetPopoverItem;"),isDisabled:function(e){return(0,i.iv)(e&&(0,i.iv)("pointer-events:none;&>span{color:",n.qo.text.disabled,";};label:isDisabled;"),";;label:isDisabled;")}};const qo=function(e){var t=e.title,r=e.message,n=e.closeModal,o=(0,L.$)();return(0,s.tZ)(St.Z,{title:t,onClose:n,wrapperCss:Vo.wrapper,children:(0,s.BX)("div",{css:Vo.content,children:[(0,s.tZ)("p",{dangerouslySetInnerHTML:{__html:r}}),(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return n()},children:o("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_DISMISS")})]})})};var Vo={wrapper:{name:"spdkb8-wrapper",styles:"max-width:400px;width:100%;label:wrapper;"},content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";align-items:center;padding:",n.W0[16]," ",n.W0[20],";p{",o.c.body(),";color:",n.qo.text.default,";}button{width:100%;span{width:100%;text-align:center;display:inline-block;}};label:content;")},zo=r(1518),Xo=r(2599),Ko=function(){var e=(0,_o.TH)(),t=(0,Xo.fp)(JP,e);if(!(0,A.$K)(t))return e.pathname;var r=t.find((function(t){return t.pathname===e.pathname}));return(null==r?void 0:r.route.path)||""},$o=r(2447),Yo=r(3425);const Qo=r.p+"images/8fb9524d6857eaa198ee.png";var Jo=r(9655);const ei=function(e){var t=e.closeModal,r=e.title,n=e.id,o=e.view,i=void 0===o?"page":o,a=(0,L.$)();return(0,s.tZ)(St.Z,{onClose:function(){return t({action:"CLOSE"})},title:r,children:(0,s.BX)("div",{css:ti.modalWrapper,children:[(0,s.tZ)("div",{css:ti.codeMirror,children:(0,s.tZ)("iframe",{src:"".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_sppagebuilder&view=").concat(i,"&layout=edit&id=").concat(n,"&tmpl=component"),name:"editorIframe",title:"editor iframe"})}),(0,s.BX)("div",{css:ti.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return t({action:"CLOSE"})},children:a("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{onClick:function(){t({action:"CLOSE"})},children:a("COM_SPPAGEBUILDER_EDITOR_APPLY")})]})]})})};var ti={modalWrapper:{name:"qg3d96-modalWrapper",styles:"iframe{width:100%;height:600px;};label:modalWrapper;"},codeMirror:{name:"1ivh6sh-codeMirror",styles:".cm-editor,.cm-theme{height:300px;}.cm-editor{border-radius:0px;padding:0;margin:0;};label:codeMirror;"},footerWrapper:(0,i.iv)("display:flex;align-items:center;padding:",n.W0[16],";gap:",n.W0[8],";justify-content:flex-end;;label:footerWrapper;")},ri=r(9182),ni=r(3039),oi=r(7894);function ii(e){return ii="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ii(e)}function ai(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function li(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ai(Object(r),!0).forEach((function(t){ci(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ai(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ci(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ii(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ii(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ii(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ui(){ui=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==ii(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function si(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function di(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){si(i,n,o,a,l,"next",e)}function l(e){si(i,n,o,a,l,"throw",e)}a(void 0)}))}}function pi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||fi(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fi(e,t){if(e){if("string"==typeof e)return vi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?vi(e,t):void 0}}function vi(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var hi=[{id:"edit",icon:"pencilOnBox",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_EDIT"},{id:"rename",icon:"cursorText",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_RENAME"},{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_DUPLICATE"},{id:"delete",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_DELETE",variant:"critical"},{id:"permission",icon:"cog",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_PERMISSIONS"}],bi=function(e){var t,r,o,i=e.collection,a=e.isOverlay,l=void 0!==a&&a,u=e.canEditPermissions,d=e.canCreateCollection,p=pi((0,c.useState)(!1),2),f=p[0],v=p[1],h=_i().collections,b=(0,L.$)(),y=(0,mo.BY)(),m=(0,Qt.g)(),g=No(),E=(0,Zt.d)().showModal,O=(0,C.nB)({id:i.id}),_=O.attributes,w=O.listeners,S=O.setNodeRef,A=O.transition,T=O.transform,D=O.isDragging,Z=(0,mo.S0)(),R=(0,mo.sd)(),j=(0,rt.O)({defaultValues:{title:i.title}}),B=(0,$o.Z)(Oo.F.DynamicContentSingleCollection).collectionId,M=Number(B)===i.id,k=null==i||null===(t=i.permissions)||void 0===t?void 0:t.edit,N=null==i||null===(r=i.permissions)||void 0===r?void 0:r.delete,G={transform:x.ux.Transform.toString(T),transition:A},W=(0,_o.s0)();if((0,c.useEffect)((function(){var e=function(e){"Escape"!==e.key?"Enter"===e.key&&j.handleSubmit(function(){var e=di(ui().mark((function e(t){var r;return ui().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:r=i.id,R.mutateAsync({id:r,title:t.title}),i.title=t.title,v(!1);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}())():v(!1)};return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[f]),f)return(0,s.BX)("div",{css:mi.collectionItem(!1),children:[(0,s.tZ)(I.Z,{name:"dynamicContent",style:mi.collectionIcon}),(0,s.tZ)("div",{css:mi.collectionTitle,children:(0,s.tZ)(It.Qr,{control:j.control,name:"title",render:function(e){return(0,s.tZ)(Qe.Z,li(li({},e),{},{hasAutoFocus:!0}))}})})]});var U=hi.map((function(e){return"edit"===e.id||"rename"===e.id?li(li({},e),{},{isDisabled:!k}):"duplicate"===e.id?li(li({},e),{},{isDisabled:!d}):"delete"===e.id?li(li({},e),{},{isDisabled:!N}):"permission"===e.id?li(li({},e),{},{isDisabled:!u}):e}));return(0,s.BX)("div",li(li(li({css:mi.collectionItem(M),ref:S,style:li(li({},G),{},{cursor:l?"grabbing":"default",opacity:D?0:1})},_),w),{},{onClick:function(){W(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:String(i.id)})),(0,ri.F_)(Bn.cf.DYNAMIC_CONTENT_PAGINATOR_CURRENT_PAGE)},children:[(0,s.tZ)(I.Z,{name:"dynamicContent",style:mi.collectionIcon}),(0,s.BX)(Jo.rU,{to:Oo.F.DynamicContentSingleCollection.buildLink({collectionId:i.id.toString()}),css:mi.collectionTitle,onDoubleClick:function(){return v(!0)},title:i.title,children:[(0,s.tZ)("span",{children:i.title})," ",(0,s.BX)("sup",{children:["(",null!==(o=i.total_items)&&void 0!==o?o:0,")"]})]}),(0,s.tZ)("div",{css:mi.actionWrapper,"data-action-wrapper":!0,children:(0,s.tZ)(P.Z,{actions:U,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisX",width:20,height:20,style:mi.triggerIcon}),onSelect:function(){var e=di(ui().mark((function e(t){var r,o,a;return ui().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("delete"!==t){e.next=21;break}return e.next=3,y.mutateAsync({id:i.id,force:!1});case 3:if("boolean"!=typeof(r=e.sent).data){e.next=9;break}if(r.data){e.next=7;break}return e.abrupt("return");case 7:return W(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:String(h[0].id)})),e.abrupt("return");case 9:if(!r.data.stop_reason||!["empty_collection","collection_has_items"].includes(r.data.stop_reason)){e.next=16;break}return e.next=12,m({title:b("COM_SPPAGEBUILDER_EDITOR_DELETE_COLLECTION_CONSENT_MODAL_TITLE",{collection:i.title}),confirmationMessage:r.data.message,payload:{id:i.id,force:!0},mutationFn:y.mutateAsync,backgroundColor:n.qo.background.primary,invalidateKeys:[["CollectionList"]],proceedText:i.title.toLowerCase().replace(/[^a-zA-Z0-9\s]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-")});case 12:return"CONFIRM"===e.sent.action&&h.length&&W(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:String(h[0].id)})),e.abrupt("return");case 16:if(!r.data.stop_reason||!["collection_used_in_page","collection_reference_to_other_collection"].includes(r.data.stop_reason)){e.next=19;break}return E({component:qo,props:{title:b("COM_SPPAGEBUILDER_EDITOR_DELETE_COLLECTION_CONSENT_MODAL_TITLE",{collection:i.title}),message:null!==(o=r.data.message)&&void 0!==o?o:""}}),e.abrupt("return");case 19:e.next=29;break;case 21:if("duplicate"!==t){e.next=28;break}return e.next=24,Z.mutateAsync({id:i.id});case 24:(a=e.sent).data&&W(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:String(a.data)})),e.next=29;break;case 28:"rename"===t?v(!0):"edit"===t?g({title:b("COM_SPPAGEBUILDER_EDITOR_EDIT_COLLECTION"),isNew:!1,collection:{id:i.id,title:i.title,alias:i.alias},collections:h}):"permission"===t&&E({component:ei,props:{title:b("COM_SPPAGEBUILDER_EDITOR_PERMISSION_MODAL_TITLE"),id:i.id,view:"collection"}});case 29:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})})]}))},yi=function(e){var t=e.showExport,r=void 0===t||t,n=(0,L.$)(),o=(0,_o.s0)(),i=(0,mo.nu)();function a(){return(a=di(ui().mark((function e(){var t;return ui().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,mo.H9)();case 2:(t=e.sent).data&&(0,A.OV)(JSON.stringify(t.data),"dc-");case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return(0,s.BX)("div",{css:mi.exportImportWrapper,children:[(0,s.tZ)(_.Z,{onClick:function(){var e=document.createElement("input");e.type="file",e.accept=".json",e.onchange=function(){var e=di(ui().mark((function e(t){var r,n,a;return ui().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=null===(r=t.target.files)||void 0===r?void 0:r[0]){e.next=3;break}return e.abrupt("return");case 3:(a=new FileReader).onload=function(){var e=di(ui().mark((function e(t){var r,n;return ui().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null===(r=t.target)||void 0===r?void 0:r.result,e.next=3,i.mutateAsync({data:n});case 3:e.sent.data&&o(Oo.F.DynamicContent.buildLink());case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),a.readAsText(n);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),e.click()},icon:(0,s.tZ)(I.Z,{name:"importAlt",noFill:!0}),variant:"secondary",children:n("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_IMPORT")}),r&&(0,s.tZ)(_.Z,{onClick:function(){return a.apply(this,arguments)},icon:(0,s.tZ)(I.Z,{name:"exportAlt",noFill:!0}),variant:"secondary",children:n("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_EXPORT")})]})};var mi={exportImportWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[12],";;label:exportImportWrapper;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;"),proPopupWrapperCss:{name:"i0ec8b-proPopupWrapperCss",styles:"padding-block:88px;label:proPopupWrapperCss;"},wrapper:(0,i.iv)("display:grid;grid-template-columns:228px 1fr;gap:",n.W0[24],";padding:",n.W0[24]," 0;",n.Uo.smallTablet,"{gap:",n.W0[32],";grid-template-columns:1fr;};label:wrapper;"),sidebar:(0,i.iv)("display:flex;flex-direction:column;position:relative;background-color:",n.qo.base.white,";border-radius:",n.W0[8],";box-shadow:",n.AF.card,";height:fit-content;padding-bottom:",n.W0[12],";",n.Uo.smallTablet,"{flex-direction:row;justify-content:left;gap:",n.W0[16],";z-index:",n.W5.sidebar,";};label:sidebar;"),addNewCollectionWrapper:(0,i.iv)("padding:",n.W0[16],";text-align:center;border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;flex-direction:column;gap:",n.W0[8],";;label:addNewCollectionWrapper;"),collectionItem:function(e){return(0,i.iv)("display:flex;align-items:center;position:relative;height:40px;padding-inline:",n.W0[16]," ",n.W0[12],";&:hover{background-color:",n.qo.base.surface,";color:",n.qo.text.primary,";[data-action-wrapper]{visibility:visible;}svg{color:",n.qo.icon.primary,";}span,span>sup{color:",n.qo.text.primary,";}}",e&&(0,i.iv)("background-color:",n.qo.base.surface,";svg{color:",n.qo.icon.primary,";}span,span>sup{color:",n.qo.text.primary,";};label:collectionItem;"),";;label:collectionItem;")},collectionIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:collectionIcon;"),collectionTitle:(0,i.iv)(o.c.body(),";margin-left:",n.W0[12],";color:",n.qo.text.default,";display:flex;align-items:center;gap:",n.W0[4],";&>sup{",o.c.tiny("medium")," color:",n.qo.text.hints,";}&>span{display:inline-block;max-width:130px;",V.iZ.textEllipsis,";};label:collectionTitle;"),actionWrapper:{name:"1qg1kp1-actionWrapper",styles:"margin-left:auto;visibility:hidden;label:actionWrapper;"},triggerIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:triggerIcon;")},gi=r(8537);function Ei(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Oi=(0,c.createContext)({collections:[],updateCollections:A.ZT}),_i=function(){return(0,c.useContext)(Oi)};var wi={emptyActionWrapper:(0,i.iv)("width:fit-content;margin:0 auto;display:flex;flex-direction:column;gap:",n.W0[8],";&>button:first-of-type{display:inline-flex;justify-content:center;};label:emptyActionWrapper;"),emptyWrapperCss:(0,i.iv)("background-color:",n.qo.base.surface,";box-shadow:none;;label:emptyWrapperCss;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;"),proPopupWrapperCss:{name:"i0ec8b-proPopupWrapperCss",styles:"padding-block:88px;label:proPopupWrapperCss;"}},Ii=r(627),Si=r(7679),Ci=r(2811);function xi(e){return xi="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xi(e)}var Pi=["settings"];function Li(){Li=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==xi(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Ai(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ti(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ai(Object(r),!0).forEach((function(t){Di(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ai(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Di(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==xi(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==xi(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===xi(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Zi(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Ri(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}var ji=function(){var e=(0,It.Gc)(),t=(0,_o.s0)(),r=(0,ve.p)().showToast,n=(0,L.$)(),o=(0,$o.Z)(Oo.F.PageEditor),i=o.id,a=o.type,l=(0,Si.lN)(),c=(0,Si.es)({hideSuccessMessage:!0}),u=(0,Ci.T)().prepareFormDataBeforeSaving,s=function(){var o,s=(o=Li().mark((function o(s){var d,p,f,v,h,b,y,m;return Li().wrap((function(o){for(;;)switch(o.prev=o.next){case 0:if(d=e.getValues(),p=d.settings,"popup"===(null==(f=Zi(d,Pi))?void 0:f.extension_view)){o.next=5;break}if(!(null!=f&&null!==(v=f.attribs)&&void 0!==v&&v.meta_description&&(null==f||null===(h=f.attribs)||void 0===h||null===(b=h.meta_description)||void 0===b?void 0:b.length)>160)){o.next=5;break}return r({type:"danger",message:n("COM_SPPAGEBUILDER_EDITOR_META_DESCRIPTION_MAX_LENGTH_ERROR")}),o.abrupt("return",!1);case 5:if(null==s||!s.saveAsCopy){o.next=17;break}return o.prev=6,o.next=9,c.mutateAsync({id:Number(i)});case 9:return y=o.sent,(0,A.$K)(y.id)&&t(Oo.F.PageEditor.buildLink({id:y.id.toString(),type:a})),o.abrupt("return",!0);case 14:return o.prev=14,o.t0=o.catch(6),o.abrupt("return",!1);case 17:return m=Ti(Ti({},f),{},{id:Number(i),text:u(p)},null!=s&&s.is_triggered_from_versioning?{is_triggered_from_versioning:!0}:void 0),null!=s&&s.version_name&&(m.version_name=s.version_name),null!=s&&s.version_note&&(m.version_note=s.version_note),o.prev=20,o.next=23,l.mutateAsync(m);case 23:return o.abrupt("return",!0);case 26:return o.prev=26,o.t1=o.catch(20),o.abrupt("return",!1);case 29:case"end":return o.stop()}}),o,null,[[6,14],[20,26]])})),function(){var e=this,t=arguments;return new Promise((function(r,n){var i=o.apply(e,t);function a(e){Ri(i,r,n,a,l,"next",e)}function l(e){Ri(i,r,n,a,l,"throw",e)}a(void 0)}))});return function(e){return s.apply(this,arguments)}}();return{savePageContent:s,isLoading:l.isLoading||c.isLoading}},Bi=r(1073),Mi=r(3896),ki=r(7855),Ni=r(1593),Gi=r(6695),Wi=r(2960);function Ui(e){return Ui="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ui(e)}function Fi(){return Fi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Fi.apply(this,arguments)}function Hi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qi(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Hi(Object(r),!0).forEach((function(t){Vi(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Hi(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Vi(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ui(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ui(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ui(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function zi(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Xi(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Xi(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Xi(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}r(1313);var Ki=function(e,t){if(null==e||!e.from||null==e||!e.to)return"";var r={from:(0,Gi.Z)(new Date(null==e?void 0:e.from),Bn.E_.monthNameDayYear),to:(0,Gi.Z)(new Date(null==e?void 0:e.to),Bn.E_.monthNameDayYear)};return"".concat(null==r?void 0:r.from," to ").concat(null==r?void 0:r.to)};const $i=function(e){var t=e.label,r=e.field,o=e.fieldState,i=e.disabled,a=e.loading,l=e.placeholder,u=e.helpText,d=e.isClearable,p=void 0===d||d,f=e.showTime,v=void 0!==f&&f,h=e.required,b=void 0!==h&&h,y=((0,L.$)(),zi((0,c.useState)(!1),2)),m=y[0],g=y[1],E=zi((0,c.useState)(r.value),2),O=E[0],w=E[1],S=zi((0,c.useState)(),2),C=S[0],x=S[1],P=(0,pe.l)({isOpen:m,isDropdown:!0}),T=P.triggerRef,D=P.position,Z=P.popoverRef,R=function(e){null!=e&&e.from&&null!=e&&e.to&&(x(e),function(e){var t=e.date;if("date"===e.action&&null!=t&&t.from&&null!=t&&t.to){var n=qi({},{from:(0,Gi.Z)(t.from,Bn.E_.altDateFormat),to:(0,Gi.Z)(t.to,Bn.E_.altDateFormat)});w(n),r.onChange(n)}}({date:e,action:"date"}))};return(0,c.useEffect)((function(){r.value&&(w(r.value),x(function(e){if(null!=e&&e.from&&null!=e&&e.to)return{from:new Date(null==e?void 0:e.from),to:new Date(null==e?void 0:e.to)}}(r.value)))}),[r.value]),(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:o,disabled:i,loading:a,placeholder:l,helpText:u,required:b,children:function(e){var t=e.attributes,o=Fi({},(function(e){if(null==e)throw new TypeError("Cannot destructure "+e)}(t),t));return(0,s.BX)("div",{children:[(0,s.BX)("div",{css:Qi.wrapper,ref:T,children:[(0,s.tZ)(Kt.Z,qi(qi({},o),{},{inputCss:Qi.input,type:"text",onFocus:function(){return g(!0)},value:Ki(O),onChange:A.ZT})),(0,s.tZ)("div",{css:Qi.icon,children:(0,s.tZ)(I.Z,{name:"collectionDateTimeField"})}),p&&r.value&&(0,s.tZ)(_.Z,{variant:"text",buttonCss:Qi.clearButton,onClick:function(){w({from:"",to:""}),r.onChange({from:"",to:""})},children:(0,s.tZ)(I.Z,{name:"times"})})]}),(0,s.tZ)(pe.h,{isOpen:m,onClickOutside:function(){return g(!1)},children:(0,s.BX)("div",{css:[Qi.pickerWrapper(m,v),{left:D.left,top:D.top},";label:DateTimeRangeField;"],ref:Z,children:[(0,s.tZ)("div",{css:Qi.backdrop,onClick:function(){return g(!1)},role:"presentation"}),(0,s.tZ)("style",{children:"\n .rdp-day.rdp-selected.rdp-range_start .rdp-day_button, .rdp-day.rdp-selected.rdp-range_end .rdp-day_button {\n background-color: #3366FF;\n color: #fff;\n border-radius: 14px;\n }\n .rdp-month_caption {\n font-weight: normal;\n font-size: 100%;\n }\n"}),(0,s.tZ)(Wi._W,{captionLayout:"dropdown",mode:"range",selected:C,onSelect:R,styles:{root:{paddingTop:"".concat(n.W0[8])}},style:Vi({},"--rdp-selected-border","none"),endMonth:new Date((new Date).getFullYear()+10,11)})]})})]})}})};var Yi={name:"18vvkfu-pickerWrapper",styles:"visibility:visible;label:pickerWrapper;"},Qi={wrapper:{name:"9kz1uc-wrapper",styles:":hover{&>button{opacity:1;}};label:wrapper;"},input:(0,i.iv)("padding-left:",n.W0[40],";caret-color:transparent;;label:input;"),icon:(0,i.iv)("position:absolute;top:50%;padding-left:",n.W0[2],";transform:translateY(-50%);border-right:1px solid ",n.qo.stroke.neutral,";height:100%;display:flex;align-items:center;justify-content:center;width:",n.W0[32],";;label:icon;"),pickerWrapper:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;return(0,i.iv)("display:flex;position:absolute;background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";",t?"padding-left: ".concat(n.W0[24],";"):"padding: ".concat(n.W0[12]," ").concat(n.W0[24],";")," visibility:hidden;",e&&Yi," .rdp-caption_label{",o.c.heading6(),";}.rdp-day_outside{color:",n.qo.text.disabled,";};label:pickerWrapper;")},backdrop:(0,i.iv)(V.iZ.centeredFlex,";position:fixed;inset:0;z-index:",n.W5.negative,";;label:backdrop;"),clearButton:(0,i.iv)("position:absolute;top:50%;right:",n.W0[4],";transform:translateY(-50%);width:32px;height:32px;",V.iZ.flexCenter(),";opacity:0;transition:background-color 0.3s ease-in-out,opacity 0.3s ease-in-out;:hover{background-color:",n.qo.background.hover,";};label:clearButton;"),timeWrapper:(0,i.iv)("display:flex;padding-left:",n.W0[12],";;label:timeWrapper;"),timeColumn:(0,i.iv)("display:flex;flex-direction:column;gap:12px;overflow:auto;text-align:center;padding-bottom:",n.W0[56],";padding-top:",n.W0[16],";border-left:1px solid ",n.qo.stroke.neutral,";padding-inline:",n.W0[12],";",V.iZ.hideScrollbar,";;label:timeColumn;"),timeColumnItem:function(e){var t=e.isSelected;return(0,i.iv)(o.c.body("medium"),";padding:",n.W0[8],";border-radius:",n.E0[10],";cursor:pointer;user-select:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;&:last-of-type{margin-bottom:",n.W0[256],";}",t&&(0,i.iv)("background:",n.qo.base.primary,";color:",n.qo.base.white,";;label:timeColumnItem;")," &:hover{background:",n.qo.base.primary,";color:",n.qo.base.white,";};label:timeColumnItem;")}},Ji=r(7856);function ea(e){return ea="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ea(e)}function ta(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ra(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ta(Object(r),!0).forEach((function(t){na(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ta(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function na(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ea(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ea(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ea(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var oa={wrapper:{name:"1fpx7vt-wrapper",styles:"width:666px;max-height:680px;height:calc(100vh - 252px);position:relative;label:wrapper;"},body:(0,i.iv)("background-color:",n.qo.background.hover,";max-height:calc(100vh - 345px);width:100%;padding:",n.W0[20]," ",n.W0[20],";display:flex;flex-direction:column;gap:",n.W0[16],";",V.iZ.overflowYAuto," padding-bottom:90px;overflow-x:hidden;;label:body;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;align-items:center;gap:",n.W0[10],";padding:",n.W0[12]," ",n.W0[16],";background-color:",n.qo.background.white,";border-top:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.positive,";width:100%;height:56px;position:absolute;bottom:0;;label:footerWrapper;"),divider:(0,i.iv)("width:666px;margin:5px -20px;height:1px;background-color:",n.qo.stroke.neutral,";position:relative;;label:divider;"),textUnitInput:(0,i.iv)("width:525px;padding:",n.W0[12],";font-size:",n.JB[14],";;label:textUnitInput;"),unitInput:{name:"166ip69-unitInput",styles:"width:100px;font-size:12px;text-align:center;label:unitInput;"}};const ia=function(e){var t,r,n=e.closeModal,o=e.title,i=e.closeActiveAction,a=void 0===i?function(){return(0,A.ZT)()}:i,l=e.setIsNextClicked,c=e.form,u=e.savePageContent,d=(0,L.$)(),p=(0,at.v)((function(e){return e.appConfig})),f=[{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION_ENTIRE_SITE"),value:"entire_site"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION_SPECIFIC_PAGES"),value:"specific_pages"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION_SPECIFIC_MENUS"),value:"specific_menus"}],v=[{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CONDITION_ON_SCROLL"),value:"on_scroll"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CONDITION_ON_LANDING"),value:"on_landing"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CONDITION_ON_CLICK"),value:"on_click"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CONDITION_ON_HOVER"),value:"on_hover"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CONDITION_ON_INACTIVITY"),value:"on_inactivity"}],h=[{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_SCROLL_UP"),value:"up"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_SCROLL_DOWN"),value:"down"}],b=[{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CLICK_TYPE_RANDOM"),value:"random"},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CLICK_TYPE_SPECIFIC"),value:"specific"}],y=(null===(t=p.pages.find((function(e){return"Pages"===e.label})))||void 0===t||null===(r=t.options)||void 0===r?void 0:r.map((function(e){return{label:e.label,value:e.value.toLocaleString()}})))||[],m=p.menus.map((function(e){return{label:e.label,value:e.value.toString()}})),g=(0,It.qo)({control:c.control,name:"attribs.visibility"}),E=(0,It.qo)({control:c.control,name:"attribs.exclude_pages_toggle"}),O=(0,It.qo)({control:c.control,name:"attribs.exclude_menus_toggle"}),w=(0,It.qo)({control:c.control,name:"attribs.trigger_condition"}),I=(0,It.qo)({control:c.control,name:"attribs.click_type"});return(0,s.BX)(St.Z,{onClose:function(){null==l||l(!1),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="flex"),a(),n({action:"CLOSE"})},title:o,wrapperCss:oa.wrapper,isOverflowYAuto:!1,children:[(0,s.BX)("div",{css:oa.body,children:[(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.visibility",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Yt.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION"),options:f,placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT")}))})}},"attribs.visibility"),"entire_site"===g&&(0,s.BX)("div",{children:[(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.exclude_pages_toggle",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(jn.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION_EXCLUDE_PAGES"),isInlineLabel:!0,helpText:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_EXCLUDE_PAGES_HELP_TEXT")}))})}},"attribs.exclude_pages_toggle"),1===E&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.excluded_pages",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Rn.Z,ra(ra({},e),{},{placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT"),options:y,isSearchable:!0}))})}},"attribs.excluded_pages"),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.exclude_menus_toggle",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(jn.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_VISIBILITY_OPTION_EXCLUDE_MENUS"),isInlineLabel:!0,helpText:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_EXCLUDE_MENUS_HELP_TEXT")}))})}},"attribs.exclude_menus_toggle"),1===O&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.excluded_menus",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Rn.Z,ra(ra({},e),{},{placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT"),options:m,isSearchable:!0}))})}},"attribs.excluded_menus")]}),"specific_pages"===g&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.selected_pages",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Rn.Z,ra(ra({},e),{},{placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT"),options:y,isSearchable:!0}))})}},"attribs.selected_pages"),"specific_menus"===g&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.selected_menus",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Rn.Z,ra(ra({},e),{},{placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT"),options:m,isSearchable:!0}))})}},"attribs.selected_menus"),(0,s.tZ)("div",{children:(0,s.tZ)("div",{css:oa.divider})}),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.trigger_condition",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Yt.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_OPTION"),options:v,placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT")}))})}},"attribs.trigger_condition"),"on_scroll"===w&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.scroll_direction",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Yt.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_SCROLL_DIRECTION"),options:h,placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT")}))})}},"attribs.scroll_direction"),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.scroll_percentage",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_SCROLL_PERCENTAGE"),type:"number",staticUnit:"%",placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_INPUT_NUMBER_PLACEHOLDER")}))})}},"attribs.scroll_percentage")]}),"on_landing"===w&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.landing_after",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_LANDING_AFTER"),type:"number",staticUnit:"seconds",placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_INPUT_NUMBER_PLACEHOLDER")}))})}},"attribs.landing_after"),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.landing_show_after",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_LANDING_SHOW_AFTER"),type:"number",staticUnit:"times",placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_INPUT_NUMBER_PLACEHOLDER")}))})}},"attribs.landing_show_after")]}),"on_click"===w&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.click_type",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Yt.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CLICK_TYPE"),options:b,placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_SELECT")}))})}},"attribs.click_type"),"specific"===I&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.click_area",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{placeholder:"#container / .container",label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CLICK_AREA"),staticUnit:"css selector"}))})}},"attribs.click_area"),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.click_count",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_CLICK_COUNT"),type:"number",staticUnit:"times",placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_INPUT_NUMBER_PLACEHOLDER")}))})}},"attribs.click_count")]}),"on_hover"===w&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.hover_area",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{placeholder:"#container / .container",label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_HOVER_AREA"),staticUnit:"css selector"}))})}},"attribs.hover_area"),"on_inactivity"===w&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.inactivity_duration",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Qe.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_INACTIVITY_DURATION"),type:"number",staticUnit:"seconds",placeholder:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_OPTION_INPUT_NUMBER_PLACEHOLDER")}))})}},"attribs.inactivity_duration"),!!w&&(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.reappear_after",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)(Ji.Z,ra(ra({},e),{},{label:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TRIGGER_REAPPEARANCE_AFTER"),hasUnit:!0,customUnitOptions:[{label:"seconds",value:"sec"},{label:"minutes",value:"min"},{label:"hours",value:"hr"},{label:"days",value:"day"},{label:"never",value:"never"}],noRangeInput:!0,inputCss:oa.textUnitInput,unitInputStyles:oa.unitInput,disableTextField:"never"===c.watch("attribs.reappear_after.unit")}))})}},"attribs.reappear_after"),(0,s.tZ)("div",{children:(0,s.tZ)("div",{css:oa.divider})}),(0,s.tZ)(It.Qr,{control:c.control,name:"attribs.date_range",render:function(e){return(0,s.tZ)("div",{children:(0,s.tZ)($i,ra(ra({},e),{},{label:"Select Date Range"}))})}},"attribs.date_range")]}),(0,s.BX)("div",{css:oa.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){null==l||l(!1),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="flex"),a(),n({action:"CLOSE"})},children:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_CANCEL")}),(0,s.tZ)(_.Z,{variant:"primary",onClick:function(){null==l||l(!1),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="flex"),u(),a(),n({action:"CLOSE"})},children:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_APPLY")})]})]})};var aa;function la(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const ca=function(e){var t,r,n=e.isPopup,o=void 0!==n&&n,i=e.setIsNextClicked,a=(0,L.$)(),l=(0,Zt.d)().showModal,u=(0,c.useRef)(null),d=(0,ve.p)().showToast,p=(0,It.Gc)(),f=(0,It.Gc)(),v=ji().savePageContent,h=(t=(0,Bi.j)((function(e){return[e.actions,e.activeAction,e.setActiveAction]})),r=3,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return la(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?la(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=h[0],y=h[1],m=h[2],g=(0,Mi.o)((function(e){return e.copiedData})),E=(0,Mi.o)((function(e){return e.resetCopiedData})),O=b.find((function(e){return"documentation"===e.key})),_=!!g.addon||!!g.section;return(0,s.BX)("div",{css:fa.wrapper,children:[(0,s.BX)("div",{css:fa.itemsWrapper,children:[b.map((function(e){if("documentation"!==e.key&&(!o||"settings"!==e.key)&&(o||"popup-triggers"!==e.key)&&(o||"popup-settings"!==e.key)&&(o||"popup-layouts"!==e.key)&&(!o||"layouts"!==e.key)){var t="add-elements"===e.key||"section-library"===e.key;return(0,s.BX)("button",{css:fa.item({isActive:e.key===y,isRotate:t}),onClick:function(){var r=t?["add-elements","section-library"].includes(y)?void 0:e.key:y===e.key?void 0:e.key;return m(r),"layouts"===e.key?(l({component:ki.Z,props:{title:a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LAYOUTS"),form:p},closeOnOutsideClick:!0}),void m(void 0)):"popup-layouts"===e.key?(l({component:Ni.Z,props:{title:a("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LAYOUTS"),form:p},closeOnOutsideClick:!0}),void m(void 0)):"media"===e.key?(l({component:_n,props:{isInInsertMode:!1},closeOnOutsideClick:!0}),void m(void 0)):void("popup-triggers"===e.key&&(null==i||i(!0),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="none"),l({component:ia,props:{title:a("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TITLE"),isPopup:!0,form:f,closeActiveAction:function(){return m(void 0)},setIsNextClicked:function(e){return null==i?void 0:i(e)},savePageContent:v}})))},children:[(0,s.tZ)(I.Z,{name:e.icon,width:20,height:20,style:fa.iconStyle}),(0,s.tZ)("span",{title:a(e.title),children:a(e.title)})]},e.key)}})),(0,s.tZ)("button",{type:"button",disabled:!_,css:fa.cleanerButton({isActive:_}),onClick:function(){E(),d({type:"success",message:a("COM_SPPAGEBUILDER_EDITOR_ACTION_CLEARED_CLIPBOARD_MESSAGE")})},children:(0,s.BX)(Ii.Z,{content:a("COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_CLEAR_CLIPBOARD_TOOLTIP"),placement:"right",disabled:!_,reference:u,children:[(0,s.tZ)(I.Z,{name:"broom",width:40,height:40}),(0,s.tZ)("span",{css:fa.ripple})]})})]}),O&&(0,s.BX)(Jo.rU,{to:Bn.sD,target:"_blank",rel:"noopener noreferrer",css:fa.item({isActive:!1,isLastChild:!0}),children:[(0,s.tZ)(I.Z,{name:O.icon,width:20,height:20,style:fa.iconStyle}),(0,s.tZ)("span",{children:a(O.title)})]})]})};var ua,sa,da={ripple:(0,i.F4)(aa||(ua=["\n 0% {\n opacity: 0.35;\n transform: scale(1);\n }\n 100% {\n opacity: 0;\n transform: scale(2);\n }\n "],sa||(sa=ua.slice(0)),aa=Object.freeze(Object.defineProperties(ua,{raw:{value:Object.freeze(sa)}}))))},pa={name:"1x2nqsn-item",styles:"svg{transform:rotate(45deg);};label:item;"},fa={wrapper:(0,i.iv)("display:flex;flex-direction:column;justify-content:space-between;height:100%;border-right:1px solid ",n.qo.stroke.neutral,";;label:wrapper;"),itemsWrapper:{name:"1wtd5hv-itemsWrapper",styles:"display:flex;flex-direction:column;label:itemsWrapper;"},item:function(e){var t=e.isActive,r=void 0!==t&&t,a=e.isLastChild,l=void 0!==a&&a,c=e.isRotate,u=void 0!==c&&c;return(0,i.iv)(V.iZ.resetButton,";",V.iZ.flexCenter(),";flex-direction:column;word-wrap:break-word;gap:",n.W0[8],";text-align:center;min-height:101px;padding:",n.W0[16]," ",n.W0[12],";border-bottom:1px solid ",n.qo.stroke.neutral,";",!r&&(0,i.iv)("&:hover{background-color:",n.qo.background.neutral,";};label:item;")," svg{transition:transform 0.3s ease;}span{",V.iZ.dynamicTextEllipsis(2)," width:100%;}",r&&(0,i.iv)("&>svg,&>span{color:",n.qo.base.primary,"!important;}",u&&pa,";;label:item;"),";",l&&(0,i.iv)("border-top:1px solid ",n.qo.stroke.neutral,";;label:item;")," &>span{",o.c.caption("medium"),";};label:item;")},iconStyle:(0,i.iv)("color:",n.qo.icon.default,";;label:iconStyle;"),ripple:(0,i.iv)("position:absolute;width:40px;height:40px;top:50%;left:50%;transform:translate(-50%, -50%);z-index:-1;:before{content:'';position:absolute;inset:0;background-color:",n.qo.base.primary,";border-radius:100%;z-index:-1;opacity:0;}:after{content:'';position:absolute;inset:0;background-color:",n.qo.base.primary,";transform:scale(2);border-radius:100%;animation-delay:1s;z-index:-1;opacity:0;};label:ripple;"),cleanerButton:function(e){var t=e.isActive;return(0,i.iv)(V.iZ.resetButton,";min-height:101px;display:flex;align-items:center;justify-content:center;position:relative;path{color:",n.qo.action.primary.default,";transition:color 0.3s ease;}",t&&(0,i.iv)("span{:before,:after{animation:",da.ripple," 1s ease-out;}};label:cleanerButton;")," :hover{",t&&(0,i.iv)("path{color:",n.qo.action.primary.hover,";};label:cleanerButton;"),";}",!t&&(0,i.iv)("path{color:",n.qo.icon.disabled,";};label:cleanerButton;"),";;label:cleanerButton;")}};const va=r.p+"images/25111c477863d51f6425.svg",ha=r.p+"images/8371734f429ed1f93a89.png";var ba=r(270),ya=r(782),ma=(0,ba.Ue)()((0,ya.mW)((function(e){return{isActive:!0,toggleIsActive:function(){return e((function(e){return{isActive:!e.isActive}}))},setIsActive:function(t){return e((function(){return{isActive:t}}))}}}))),ga=r(2847);function Ea(e){return Ea="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ea(e)}function Oa(){Oa=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Ea(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function _a(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function wa(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){_a(i,n,o,a,l,"next",e)}function l(e){_a(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Ia(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Sa(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Sa(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Sa(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ca=function(e){var t,r=e.content,n=Ko(),o=(0,L.$)(),i=(0,$o.Z)(Oo.F.PageEditor).type,a=Ia((0,c.useState)(!(null===(t=r.subRoutes)||void 0===t||!t.find((function(e){return e.route.includes(i)})))),2),l=a[0],u=a[1],d=(0,Ci.T)().closeSettingPanel,p=ma((function(e){return e.setIsActive})),f=(0,Si.mp)(),v=(0,_o.s0)(),h=(0,at.v)((function(e){return e.appConfig})),b="popups"!==r.id||A.Eu?(0,s.tZ)(s.HY,{}):(0,s.tZ)("span",{css:Pa.popupBeta,children:"Beta"});return(0,A.$K)(r.subRoutes)?(0,s.BX)(s.HY,{children:[(0,s.BX)("button",{type:"button",css:Pa.itemContainer,onClick:function(){u((function(e){return!e}))},children:[(0,s.BX)("div",{css:Pa.item(r.pathNames.includes(n),!0),children:[(0,s.tZ)(I.Z,{name:r.icon,width:16,height:16}),(0,s.tZ)("span",{children:o(r.title)}),r.showProBadge&&(0,s.tZ)(ga.Z,{})]}),(0,s.tZ)(I.Z,{style:Pa.chevron(l),name:"chevronRight",width:16,height:16})]}),(0,s.tZ)("div",{css:Pa.subItemContainer,children:l&&r.subRoutes.map((function(e){return(0,s.BX)("button",{type:"button",css:Pa.item(e.route.includes(i)),onClick:wa(Oa().mark((function t(){var r,n,o;return Oa().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(p(!1),d(),!["storefront","single","collection"].includes(e.id)){t.next=28;break}if(h.is_easystore_installed){t.next=6;break}return v(Oo.F.PageEditor.buildLink({id:"storefront","type?":""})),t.abrupt("return");case 6:if("storefront"!==e.id||h.list_product_page_id){t.next=13;break}return t.next=9,f.mutateAsync({type:"storefront",title:""});case 9:if(!(r=t.sent).id){t.next=13;break}return v(Oo.F.PageEditor.buildLink({id:r.id.toString(),"type?":"storefront"})),t.abrupt("return");case 13:if("single"!==e.id||h.single_product_page_id){t.next=20;break}return t.next=16,f.mutateAsync({type:"single",title:""});case 16:if(!(n=t.sent).id){t.next=20;break}return v(Oo.F.PageEditor.buildLink({id:n.id.toString(),"type?":"single"})),t.abrupt("return");case 20:if("collection"!==e.id||h.collection_page_id){t.next=27;break}return t.next=23,f.mutateAsync({type:"collection",title:""});case 23:if(!(o=t.sent).id){t.next=27;break}return v(Oo.F.PageEditor.buildLink({id:o.id.toString(),"type?":"collection"})),t.abrupt("return");case 27:v(e.route);case 28:case"end":return t.stop()}}),t)}))),children:[(0,s.tZ)(I.Z,{name:e.icon,width:16,height:16}),(0,s.tZ)("span",{children:o(e.title)})]},e.id)}))})]}):(0,s.BX)(Jo.rU,{css:Pa.item(r.pathNames.includes(n)),to:r.route,children:[(0,s.tZ)(I.Z,{name:r.icon,width:16,height:16}),(0,s.tZ)("span",{children:o(r.title)}),b,r.showProBadge&&(0,s.tZ)("div",{css:Pa.proBadge,children:(0,s.tZ)(ga.Z,{})})]})};var xa=function(e){var t=e.children,r=ma((function(e){return e.setIsActive})),n=Ia((0,c.useState)(!0),2),o=n[0],i=n[1];return(0,c.useLayoutEffect)((function(){r(!1),i(!1)}),[r]),o?null:(0,s.tZ)(s.HY,{children:t})},Pa={subItemContainer:(0,i.iv)(":hover{color:",n.qo.text.primary,";}&>button{padding-left:",n.W0[32],";};label:subItemContainer;"),itemContainer:(0,i.iv)(V.iZ.resetButton," display:flex;align-items:center;justify-content:space-between;padding:",n.W0[8]," ",n.W0[20],";:hover{background-color:",n.qo.base.white,";span:first-of-type{color:",n.qo.text.primary,";}svg{color:",n.qo.text.primary,";}};label:itemContainer;"),item:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,i.iv)(V.iZ.resetButton,";display:flex;align-items:center;gap:",n.W0[12],";width:100%;position:relative;",!t&&(0,i.iv)("padding:",n.W0[8]," ",n.W0[20],";;label:item;")," transition:background-color 0.3s ease;span:first-of-type{",o.c.body(),";color:",n.qo.text.neutral,";}svg{color:",n.qo.icon.default,";}:hover{background-color:",n.qo.base.white,";span:first-of-type{color:",n.qo.text.primary,";}svg{color:",n.qo.text.primary,";}}",e&&(0,i.iv)("background-color:",n.qo.base.white,";span:first-of-type{color:",n.qo.text.primary,";}svg{color:",n.qo.text.primary,";};label:item;"),";;label:item;")},proBadge:{name:"h9cz2w-proBadge",styles:"position:absolute;top:50%;right:8px;transform:translateY(-50%);label:proBadge;"},chevron:function(e){return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease;transform:rotate(",e?90:0,"deg);;label:chevron;")},popupBeta:{name:"13wdokv-popupBeta",styles:"width:25px;height:12px;border-radius:47px;background-color:#a660ff;padding:0px 2px;gap:2px;line-height:12px;font-size:8px;color:#ffffff;text-align:center;position:absolute;left:44%;top:12%;label:popupBeta;"}};function La(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Aa=function(){var e,t,r=(0,L.$)(),n=(e=(0,c.useState)(!0),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return La(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?La(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=n[0],i=n[1],a=ma((function(e){return e.isActive})),l=(0,at.v)((function(e){return e.appConfig})),u=[{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_PAGES",icon:"filesDuo",route:Oo.F.Home.buildLink(),id:"pages",pathNames:[Oo.F.Home.template,Oo.F.PageList.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_DYNAMIC_CONTENT",icon:"dynamicContentDuo",route:Oo.F.DynamicContent.buildLink(),id:"dynamic-content",showProBadge:A.Eu,pathNames:[Oo.F.DynamicContent.template,Oo.F.DynamicContentSingleCollection.template,Oo.F.DynamicContentCreateItem.template,Oo.F.DynamicContentEditItem.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_EASYSTORE",icon:"easystore",route:"",id:"ecommerce",subRoutes:[{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_SUBMENU_STORE_FRONT",icon:"storefront",route:Oo.F.PageEditor.buildLink({id:l.list_product_page_id.toString(),type:"storefront"}),id:"storefront"},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_SUBMENU_SINGLE",icon:"single",route:Oo.F.PageEditor.buildLink({id:l.single_product_page_id.toString(),type:"single"}),id:"single"},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_SUBMENU_COLLECTION",icon:"collection",route:Oo.F.PageEditor.buildLink({id:l.collection_page_id.toString(),type:"collection"}),id:"collection"}],pathNames:[]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_ADDONS",icon:"addonDuo",route:Oo.F.Addons.buildLink(),id:"addons",pathNames:[Oo.F.Addons.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_CUSTOM_ICONS",icon:"iconsDuo",route:Oo.F.CustomIcons.buildLink(),id:"custom-icons",showProBadge:A.Eu,pathNames:[Oo.F.CustomIcons.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_FONT_BOOK",icon:"fontBook",route:Oo.F.GoogleFonts.buildLink(),id:"font-book",pathNames:[Oo.F.GoogleFonts.template,Oo.F.InstalledFonts.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_MEDIA_MANAGER",icon:"media",route:Oo.F.MediaManager.buildLink(),id:"media-manager",pathNames:[Oo.F.MediaManager.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_INTEGRATIONS",icon:"integrationsDuo",route:Oo.F.Integrations.buildLink(),id:"integrations",pathNames:[Oo.F.Integrations.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_LANGUAGES",icon:"languagesDuo",route:Oo.F.Languages.buildLink(),id:"languages",pathNames:[Oo.F.Languages.template]},{title:"COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_MENU_SETTINGS",icon:"cog",route:Oo.F.Settings.buildLink(),id:"settings",pathNames:[Oo.F.Settings.template,Oo.F.License.template,Oo.F.ColorsLibrary.template]}];return(0,c.useEffect)((function(){var e;return a?e=setTimeout((function(){i(!0)}),400):i(!1),function(){return clearTimeout(e)}}),[a]),(0,s.tZ)("div",{css:Ta.sidebar(a),children:(0,s.BX)("div",{css:Ta.wrapper,children:[(0,s.BX)("div",{children:[(0,s.tZ)("div",{css:Ta.contents,children:u.map((function(e){return(0,s.tZ)(Ca,{content:e},e.id)}))}),A.Eu&&!l.is_pre_release&&(0,s.tZ)("div",{css:Ta.proBanner,children:(0,s.tZ)("a",{href:Bn._y,target:"_blank",rel:"noreferrer",children:(0,s.tZ)("img",{src:ha,alt:"upgrade to pro"})})}),l.is_pre_release&&o&&(0,s.tZ)("div",{css:Ta.feedback,"data-feedback":!0,children:(0,s.BX)("div",{css:Ta.feedbackInner,children:[(0,s.tZ)("img",{src:va,alt:r("COM_SPPAGEBUILDER_EDITOR_FEEDBACK_ALT_TEXT")}),(0,s.tZ)("h5",{children:r("COM_SPPAGEBUILDER_EDITOR_FEEDBACK_TITLE")}),(0,s.tZ)("p",{children:r("COM_SPPAGEBUILDER_EDITOR_FEEDBACK_SUBTITLE")}),(0,s.BX)("a",{href:"https://docs.google.com/forms/d/e/1FAIpQLSc44TV-Y6-203rkL13cdzs3Js9EBm1kZmNUHpDf2zp0YgS27w/viewform",target:"_blank",rel:"noopener noreferrer",css:Ta.submitFeedbackButton,children:[(0,s.tZ)(I.Z,{name:"comment"}),(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_FEEDBACK_SUBMIT_BUTTON")})]})]})})]}),(0,s.tZ)("span",{css:Ta.version,children:r("COM_SPPAGEBUILDER_EDITOR_DASHBOARD_SIDEBAR_VERSION",{version:l.version})})]})})};var Ta={wrapper:(0,i.iv)("background-color:",n.qo.background.neutral,";border-right:1px solid ",n.qo.stroke.neutral,";width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;box-shadow:",n.AF.popover,";;label:wrapper;"),feedback:(0,i.iv)("padding:",n.W0[20],";opacity:1;transition:opacity 0.4s ease;;label:feedback;"),feedbackInner:(0,i.iv)("background-color:",n.qo.background.white,";border-radius:",n.E0[8],";padding:",n.W0[16]," ",n.W0[12],";text-align:center;display:flex;flex-direction:column;gap:",n.W0[8],";h5{",o.c.body("medium"),";}p{",o.c.caption(),";color:",n.qo.text.neutral,";};label:feedbackInner;"),submitFeedbackButton:(0,i.iv)(V.iZ.resetButton,";padding:",n.W0[6]," ",n.W0[12],";display:flex;align-items:center;gap:",n.W0[4],";background-color:",n.qo.icon.success,";color:",n.qo.text.white,";border-radius:",n.E0[8],";margin-top:",n.W0[4],";:hover{color:",n.qo.text.white,";}span:last-of-type{",o.c.body("medium"),";color:",n.qo.text.white,";white-space:nowrap;overflow:hidden;};label:submitFeedbackButton;"),sidebar:function(e){return(0,i.iv)("position:fixed;top:",Bn.g3,"px;left:0;width:",Bn.ZR,"px;height:calc(100vh - ",Bn.g3,"px);transition:margin-left 0.3s ease-out;z-index:",n.W5.sidebar,";",!e&&(0,i.iv)("margin-left:-",Bn.ZR,"px;[data-feedback]{opacity:0;};label:sidebar;"),";;label:sidebar;")},contents:(0,i.iv)("display:flex;flex-direction:column;padding-block:",n.W0[16],";gap:",n.W0[4],";;label:contents;"),version:(0,i.iv)(o.c.caption(),";padding:",n.W0[16]," ",n.W0[20],";color:",n.qo.text.hints,";;label:version;"),proBanner:(0,i.iv)("padding:",n.W0[20],";>a{width:100%;>img{width:100%;}};label:proBanner;")};function Da(e){return Da="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Da(e)}function Za(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ra(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Za(Object(r),!0).forEach((function(t){ja(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Za(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ja(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Da(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Da(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Da(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ba(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ma=function(e){var t,r,n=e.children,o=e.sections,i=(0,zn.Dy)((0,zn.VT)(zn.we,{activationConstraint:{distance:15}}),(0,zn.VT)(zn.MA,{activationConstraint:{distance:15}}),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is})),a=(t=(0,c.useState)(null),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Ba(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ba(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],u=a[1],d=(0,c.useRef)(null),p=(0,c.useRef)(!1),f=(0,c.useCallback)((function(e){var t,r,n,i;if(l&&(null===(t=e.active.data.current)||void 0===t?void 0:t.type)===Bn.t.Section){var a=e.droppableContainers.filter((function(e){return!!o.find((function(t){return t.id===e.id}))}));return(0,zn.pE)(Ra(Ra({},e),{},{droppableContainers:a}))}if(l&&(null===(r=e.active.data.current)||void 0===r?void 0:r.type)===Bn.t.Column){var c=e.active.data.current.sectionIndex;if((0,A.$K)(c)){var u=e.droppableContainers.filter((function(e){return!!o[c].columns.find((function(t){return t.id===e.id}))}));return(0,zn.pE)(Ra(Ra({},e),{},{droppableContainers:u}))}}var s=(0,zn.j2)(e),f=s.length>0?s:(0,zn.Xo)(e),v=(0,zn._8)(f),h=null!==(n=null==v?void 0:v.id)&&void 0!==n?n:null;if((0,A.r3)((0,A.zt)(Bn.Dw),null===(i=e.active.data.current)||void 0===i?void 0:i.type)){if(null!==v&&null!==h){var b,y,m,g,E=null===(b=e.active.data.current)||void 0===b?void 0:b.type,O=((null===(y=v.data)||void 0===y||null===(m=y.droppableContainer)||void 0===m||null===(g=m.data)||void 0===g?void 0:g.current)||{}).type;if((E===Bn.Dw.SavedAddonElement||E===Bn.Dw.SavedSectionElement)&&E===O)return(0,zn.pE)(e);if(O===Bn.t.TableItem)return(0,zn.ey)(e)}return(0,zn.j2)(e)}if(null!==v&&null!==h){var _,w,I,S=(null===(_=v.data)||void 0===_||null===(w=_.droppableContainer)||void 0===w||null===(I=w.data)||void 0===I?void 0:I.current)||{},C=S.content;if(S.type===Bn.t.Column){var x=C.addons;if(x.length>0){var P=(0,zn.pE)(Ra(Ra({},e),{},{droppableContainers:e.droppableContainers.filter((function(e){return e.id!==h&&!!x.find((function(t){return t.id===e.id&&!t.parent}))}))}))[0];(0,A.$K)(P)&&(h=P.id)}}return d.current=h,[{id:h}]}return p.current&&(d.current=l),d.current?[{id:d.current}]:[]}),[l,o]);return(0,s.tZ)(zn.LB,{sensors:i,collisionDetection:f,measuring:{droppable:{strategy:zn.uN.Always}},onDragStart:function(e){var t=e.active;return u(t.id)},children:n})};var ka=function(e){var t=e.option;return(0,s.BX)(s.HY,{children:[!!t.label&&(0,s.tZ)("span",{children:t.label}),!!t.icon&&(0,s.tZ)("span",{children:(0,s.tZ)(I.Z,{name:t.icon,width:16,height:16})})]})};const Na=function(e){var t=e.variant,r=void 0===t?"primary":t,n=e.activeTab,o=e.onChange,i=e.tabList,a=e.disabled,l=void 0!==a&&a,c=e.wrapperCss;return(0,s.tZ)("div",{css:[Ga.wrapper(r),c,";label:Tabs;"],role:"tablist",children:i.map((function(e,t){var i=(0,Rt.H2)(e.value),a=Array.isArray(n)?(0,A.r3)(n,i):n===i;return(0,s.tZ)("button",{onClick:function(){return o(e.value)},css:Ga.tabButton({variant:r,isActive:a}),tabIndex:a?0:-1,disabled:l||e.disabled,type:"button",role:"tab","aria-selected":a?"true":"false",children:e.tooltip?(0,s.tZ)(Ii.Z,{content:e.tooltip,placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)(ka,{option:e})}):(0,s.tZ)(ka,{option:e})},t)}))})};var Ga={wrapper:function(e){return(0,i.iv)("width:100%;display:flex;align-items:center;","primary"===e&&(0,i.iv)("border-bottom:1px solid ",n.qo.stroke.neutral,";;label:wrapper;")," ","secondary"===e&&(0,i.iv)("border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";;label:wrapper;")," overflow:auto hidden;",V.iZ.hideScrollbar,";;label:wrapper;")},tabButton:function(e){var t=e.variant,r=e.isActive;return(0,i.iv)(V.iZ.resetButton,";text-align:center;",o.c.caption("medium"),";color:",n.qo.text.neutral,";position:relative;transition:background-color 0.1s ease-in-out,color 0.1s ease-in-out;flex:1;position:relative;display:flex;gap:",n.W0[4],";justify-content:center;align-items:center;height:100%;","primary"===t&&(0,i.iv)("padding:",n.W0[12]," ",n.W0[4],";&::before{content:'';height:2px;width:100%;background-color:",n.qo.stroke.primary,";position:absolute;left:0;bottom:0;opacity:0;transition:opacity 0.3s ease-in-out;}&:hover::before{opacity:1;}",r&&(0,i.iv)("background-color:",n.qo.background.white,";color:",n.qo.text.primary,";&::before{opacity:1;};label:tabButton;"),";;label:tabButton;")," ","secondary"===t&&(0,i.iv)("font-weight:",n.Ue.regular,";border-right:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[4]," ",n.W0[4],";&:last-of-type{border-right:none;}&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.primary,";color:",n.qo.text.primary,";font-weight:",n.Ue.medium,";;label:tabButton;"),";;label:tabButton;")," &:disabled{color:",n.qo.text.disabled,";border-color:",n.qo.stroke.disabled,";&::before{display:none;}};label:tabButton;")}};function Wa(e){return Wa="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wa(e)}function Ua(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Fa(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ua(Object(r),!0).forEach((function(t){Ha(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ua(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ha(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Wa(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Wa(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Wa(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const qa=function(e){var t=e.id,r=e.data,n=e.children,o=e.disabled,i=void 0!==o&&o,a=e.hasClone,l=void 0!==a&&a,c=e.customStyle,u=(0,zn.O1)({id:t,data:r,disabled:i}),d=u.attributes,p=u.listeners,f=u.setNodeRef,v=u.transform,h=v?Fa({},!l&&{transform:x.ux.Translate.toString(v)}):void 0;return(0,s.tZ)("div",Fa(Fa(Fa({css:[c,za.draggable({isDisabled:i}),";label:Draggable;"],ref:f},p),d),{},{style:h,children:n}))};var Va={name:"1b2a9j8-draggable",styles:"cursor:default;label:draggable;"},za={draggable:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("cursor:grab;",r&&Va,";;label:draggable;")}},Xa=r(4693),Ka=r(6651),$a=r(7230),Ya=r(2967),Qa=r(3169),Ja=r(3935);function el(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var tl=Bn.iq+Bn.P8;const rl=function(e){var t,r,n,o,i=e.data,a=e.isAuthorized,l=e.isDragging,u=(0,c.useRef)(null),d=(0,c.useRef)(),p=(n=(0,c.useState)(!1),o=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(n,o)||function(e,t){if(e){if("string"==typeof e)return el(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?el(e,t):void 0}}(n,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),f=p[0],v=p[1];(0,c.useEffect)((function(){l&&clearTimeout(d.current)}),[l]);var h=null!==(t=null===(r=u.current)||void 0===r?void 0:r.getBoundingClientRect().top)&&void 0!==t?t:0,b=h+384+10;return window.innerHeight-b<0&&(h-=b-window.innerHeight),(0,s.BX)("div",{ref:u,css:nl.sectionThumb,onMouseEnter:function(){a&&(d.current=setTimeout((function(){v(!0)}),300))},onMouseLeave:function(){a&&(v(!1),d.current&&clearTimeout(d.current))},children:[(0,s.tZ)(Qa.Z,{enabled:!a,buttonSize:"small",children:(0,s.tZ)("div",{css:nl.thumbImage,children:(0,s.tZ)("img",{src:i.thumb,alt:i.title,draggable:!1})})}),(0,s.tZ)("div",{css:nl.thumbFooter,children:i.title}),!a&&(0,s.tZ)(ga.Z,{css:nl.proLabel}),f&&(0,Ja.createPortal)((0,s.BX)("div",{css:nl.thumbPreview({left:tl,top:h}),children:[(0,s.tZ)("div",{css:nl.thumbPreviewTitle,children:i.title}),(0,s.tZ)("div",{css:nl.thumbPreviewImage,children:(0,s.tZ)("img",{src:i.thumb,alt:i.title})})]}),document.body)]})};var nl={sectionThumb:(0,i.iv)("background-color:",n.qo.background.white,";border-radius:",n.E0[4],";box-shadow:",n.AF.addon,";overflow:hidden;position:relative;&:hover{box-shadow:",n.AF.addonHover,";};label:sectionThumb;"),proLabel:(0,i.iv)("position:absolute;top:",n.W0[4],";right:",n.W0[4],";;label:proLabel;"),thumbImage:(0,i.iv)("height:80px;width:100%;background-color:",n.qo.background.neutral,";img{width:100%;height:100%;object-fit:contain;};label:thumbImage;"),thumbFooter:(0,i.iv)(o.c.tiny(),";padding:",n.W0[2]," ",n.W0[8],";;label:thumbFooter;"),thumbPreview:function(e){var t=e.left,r=e.top;return(0,i.iv)("position:fixed;left:",t,"px;top:",r,"px;width:468px;height:",384,"px;background-color:",n.qo.background.white,";border-radius:",n.E0[4],";box-shadow:",n.AF.popover,";z-index:",n.W5.highest,";padding:0 ",n.W0[12]," ",n.W0[12],";;label:thumbPreview;")},thumbPreviewTitle:(0,i.iv)(o.c.tiny(),";padding:",n.W0[8]," ",n.W0[12],";;label:thumbPreviewTitle;"),thumbPreviewImage:(0,i.iv)("width:100%;height:calc(100% - 34px);background-color:",n.qo.background.neutral,";border-radius:",n.E0[4]," ",n.E0[4]," 0 0;overflow:hidden;img{width:100%;height:100%;object-fit:contain;};label:thumbPreviewImage;")};function ol(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const il=function(e){var t=e.index,r=e.data,n=e.isActive,o=e.setActiveItem,i=e.isAuthorized,a=void 0===i||i;return(0,s.BX)("div",{children:[(0,s.BX)("button",{type:"button",css:cl.sectionTitleButton(n),onClick:function(){o(n?null:t)},children:[(0,s.tZ)(I.Z,{name:"caretRight"}),(0,s.tZ)("span",{children:r.title})]}),n&&(0,s.tZ)(al,{data:r.blocks,isAuthorized:a})]})};var al=function(e){var t,r,n=e.data,o=e.isAuthorized,i=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return ol(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ol(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],l=i[1];return(0,zn.IJ)({onDragStart:function(){l(!0)},onDragEnd:function(){l(!1)},onDragCancel:function(){l(!1)}}),(0,s.tZ)("div",{css:cl.sectionWrapper,children:n.map((function(e){return(0,s.tZ)(qa,{id:e.id,data:{content:e,type:Bn.Dw.BlockElement},hasClone:!0,disabled:!o,children:(0,s.tZ)(rl,{data:e,isAuthorized:o,isDragging:a})},e.id)}))})},ll={name:"7n927h-sectionTitleButton",styles:"transform:rotate(90deg);label:sectionTitleButton;"},cl={sectionTitleButton:function(e){return(0,i.iv)(V.iZ.resetButton,";",o.c.caption("medium"),";color:",n.qo.text.default,";display:flex;align-items:center;gap:",n.W0[4],";svg{color:",n.qo.icon.default,";transition:transform 0.3s ease-out;",e&&ll,";};label:sectionTitleButton;")},sectionWrapper:(0,i.iv)("display:grid;grid-template-columns:1fr 1fr;row-gap:",n.W0[12],";column-gap:",n.W0[8],";padding-top:",n.W0[12],";;label:sectionWrapper;")};function ul(e){return ul="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ul(e)}function sl(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function dl(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?sl(Object(r),!0).forEach((function(t){pl(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sl(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function pl(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ul(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ul(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ul(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fl(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const vl=function(){var e,t,r=(0,L.$)(),n=(e=(0,c.useState)(0),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return fl(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fl(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=n[0],i=n[1],a=(0,Ya.t)(),l=(0,rt.O)({defaultValues:{search:""}}),u=(0,fe.N)(l.watch("search")),d=(0,c.useMemo)((function(){if(u&&a.data){var e=a.data.blocks,t=Object.values(e).flatMap((function(e){return e.blocks})),r=new RegExp(u,"i");return t.filter((function(e){return r.test(e.title)}))}return[]}),[u,a.data]);if(a.isLoading)return(0,s.tZ)(Ye.g4,{});if(!a.data)return(0,s.tZ)(et,{title:"Something went wrong!"});var p=a.data,f=p.blocks,v=p.authorised,h=function(e){return f[e]},b=0===(0,A.Zt)(f).length||u.length>0&&0===d.length;return(0,s.BX)("div",{children:[(0,s.tZ)("div",{css:hl.searchWrapper,children:(0,s.tZ)(It.Qr,{control:l.control,name:"search",render:function(e){return(0,s.tZ)(Qe.Z,dl(dl({},e),{},{variant:"search",placeholder:r("COM_SPPAGEBUILDER_EDITOR_ELEMENT_SEARCH"),isClearable:!0,hasAutoFocus:!0}))}})}),(0,s.tZ)("div",{css:hl.sectionList,children:u?(0,s.tZ)(al,{data:d,isAuthorized:v}):(0,A.Zt)(f).map((function(e,t){return(0,s.tZ)(il,{index:t,data:h(e),isActive:t===o,setActiveItem:i,isAuthorized:v},t)}))}),b&&(0,s.BX)("div",{css:hl.noSections,children:[(0,s.tZ)(I.Z,{name:"blocksDuo",width:56,height:56}),(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_EMPTY_PREDEFINED_SECTIONS")})]})]})};var hl={searchWrapper:(0,i.iv)("position:sticky;top:0;background-color:",n.qo.base.surface,";padding:",n.W0[16]," ",n.W0[10],";border-bottom:1px solid ",n.qo.stroke.neutral,";transition:border 0.3s ease;z-index:",n.W5.positive,";;label:searchWrapper;"),sectionList:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";padding:",n.W0[16]," ",n.W0[10],";;label:sectionList;"),noSections:(0,i.iv)(V.iZ.centeredFlex,";flex-direction:column;gap:",n.W0[8],";span{",o.c.heading6("medium"),";color:",n.qo.text.neutral,";};label:noSections;")};function bl(e){return bl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},bl(e)}function yl(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ml(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?yl(Object(r),!0).forEach((function(t){gl(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yl(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function gl(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==bl(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==bl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===bl(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function El(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Ol=function(e){return"row"===e.name?Bn.Dw.RowElement:"columns"===e.name?Bn.Dw.ColumnsElement:"div"===e.name?Bn.Dw.DivElement:e.name.startsWith("easystore_single_")?Bn.Dw.SingleAddonElement:e.name.startsWith("easystore_list_")?Bn.Dw.ProductListAddonElement:e.name.startsWith("easystore_common_")?Bn.Dw.CommonAddonElement:Bn.Dw.AddonElement};const _l=function(e){var t,r,n=e.defaultTab,o=void 0===n?"addons":n,i=(0,L.$)(),a=(0,$a.x)((function(e){return e.addonGroups})),l=(t=(0,c.useState)(o),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return El(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?El(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1],p=(0,Bi.j)((function(e){return e.activeAction})),f=(0,Ka.y)((function(e){return e.activeColumn})),v=(0,$o.Z)(Oo.F.PageEditor).id,h=(0,Si.z1)(v).data,b="article"===(null==h?void 0:h.extension_view)||"dynamic_content:detail"===(null==h?void 0:h.extension_view);(0,c.useEffect)((function(){d(o)}),[o]),(0,c.useEffect)((function(){(0,A.$K)(f)&&d("addons")}),[f]);var y=(0,rt.O)({defaultValues:{search:""}}),m=(0,fe.N)(y.watch("search")),g=(0,c.useMemo)((function(){var e=m.toLowerCase().trim();return(0,A.Zt)(a).reduce((function(t,r){var n="Favourite"!==r?a[r].filter((function(e){return e.status})).filter((function(t){return t.title.toLowerCase().includes(e)})):a[r],o=b?n:n.filter((function(e){return"comment"!==e.name}));return o.length>0&&(t[r]=o),t}),{})}),[m,a,b]),E=(0,A.Zt)(g).every((function(e){return 0===g[e].length})),O=[{label:i("COM_SPPAGEBUILDER_EDITOR_ELEMENT_PANEL_TAB_ADDONS"),value:"addons"},{label:i("COM_SPPAGEBUILDER_EDITOR_ELEMENT_PANEL_TAB_SECTIONS"),value:"sections"}];return(0,s.BX)("div",{css:wl.wrapper,children:[(0,s.tZ)(Na,{tabList:O,activeTab:u,onChange:d}),"addons"===u?(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:wl.searchWrapper,children:(0,s.tZ)(It.Qr,{control:y.control,name:"search",render:function(e){return(0,s.tZ)(Qe.Z,ml(ml({},e),{},{variant:"search",placeholder:i("COM_SPPAGEBUILDER_EDITOR_ELEMENT_SEARCH"),isClearable:!0,hasAutoFocus:(0,A.$K)(p)&&"add-elements"===p}))}})}),(0,s.tZ)("div",{css:wl.content,children:E?(0,s.BX)("div",{css:wl.noResult,children:[(0,s.tZ)("img",{src:Xa,alt:i("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND")}),(0,s.tZ)("p",{children:i("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND")})]}):(0,A.Zt)(g).map((function(e){var t=g[e],r=b?t:t.filter((function(e){return"comment"!==e.name})),n="Favourite"===e?"Favourites":e;return(0,s.BX)("div",{children:[(0,s.tZ)("h4",{css:wl.groupHeading,children:n}),(0,s.tZ)("div",{css:wl.addonsWrapper,children:r.map((function(t){var r=A.Eu&&t.pro;return(0,s.tZ)(qa,{id:"".concat(e,"-").concat(t.name),data:{content:t,type:Ol(t)},hasClone:!0,disabled:r,children:(0,s.BX)("div",{css:wl.addonItem({shouldShowProLabel:r}),children:[(0,s.tZ)("span",{dangerouslySetInnerHTML:{__html:t.icon},css:wl.icon}),(0,s.tZ)("span",{title:t.title,children:t.title}),r&&(0,s.tZ)(ga.Z,{})]})},t.name)}))})]},e)}))})]}):(0,s.tZ)(vl,{})]})};var wl={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";background-color:",n.qo.base.surface,";height:100%;border-right:1px solid ",n.qo.stroke.neutral,";;label:wrapper;"),noResult:(0,i.iv)("display:flex;flex-direction:column;align-items:center;margin-top:",n.W0[24],";img{width:80px;}p{",o.c.body(),";text-align:center;margin-top:",n.W0[16],";};label:noResult;"),searchWrapper:(0,i.iv)("position:sticky;top:0;background-color:inherit;padding:",n.W0[16]," ",n.W0[10],";border-bottom:1px solid ",n.qo.stroke.neutral,";transition:border 0.3s ease;z-index:",n.W5.positive,";;label:searchWrapper;"),content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[24],";margin-bottom:",n.W0[16],";padding:",n.W0[8]," ",n.W0[10],";;label:content;"),groupHeading:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";margin-bottom:",n.W0[10],";;label:groupHeading;"),addonsWrapper:(0,i.iv)("display:grid;grid-template-columns:repeat(2, 142px);gap:",n.W0[10],";;label:addonsWrapper;"),addonItem:function(e){var t=e.shouldShowProLabel,r=void 0!==t&&t;return(0,i.iv)("display:flex;align-items:center;background-color:",n.qo.base.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.addon,";padding:",n.W0[4]," ",n.W0[8],";gap:",n.W0[8],";cursor:grab;height:32px;",r&&(0,i.iv)("position:relative;pointer-events:none;background-color:",n.qo.background.disabled,";;label:addonItem;")," &>span:first-of-type{svg,img{color:",n.qo.icon.default,";width:18px;height:18px;}}&>span:last-of-type{",o.c.caption(),";",V.iZ.textEllipsis,";color:",n.qo.text.neutral,";};label:addonItem;")},icon:{name:"f0ns9y-icon",styles:"display:flex;label:icon;"}};const Il=r.p+"images/5612aede402b273f759b.jpg";var Sl=r(3891);function Cl(e){return Cl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Cl(e)}function xl(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Pl(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xl(Object(r),!0).forEach((function(t){Ll(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xl(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ll(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Cl(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Cl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Cl(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Al=function(e){var t=e.addon,r=e.activeDragItemId,n=(0,L.$)(),o=(0,Sl.hX)(),i=(0,$a.x)((function(e){return e.addonStructure})),a=(0,C.nB)({id:t.id,data:{content:t,type:Bn.Dw.SavedAddonElement}}),l=a.attributes,c=a.listeners,u=a.setNodeRef,d=a.transform,p=a.transition,f=a.isDragging,v={transform:x.ux.Transform.toString(d),transition:p,opacity:f?.5:1};return(0,s.tZ)("div",Pl(Pl(Pl({ref:u,style:v},l),c),{},{children:(0,s.BX)("div",{css:Tl.addonItem(r===t.id),children:[(0,s.tZ)("span",{css:Tl.dragIcon,"data-drag-icon":!0,children:(0,s.tZ)(I.Z,{name:"dragger",height:24,width:24})}),(0,s.tZ)("span",{css:Tl.addonIcon,dangerouslySetInnerHTML:{__html:function(e){try{var t=JSON.parse(e.code).name;return i[t].icon}catch(e){return""}}(t)}}),(0,s.tZ)("span",{"data-addon-title":!0,css:Tl.addonTitle,children:t.title}),(0,s.tZ)("button",{onClick:function(){window.confirm(n("COM_SPPAGEBUILDER_EDITOR_SAVED_ADDON_DELETE_MESSAGE"))&&o.mutate(t.id)},children:(0,s.tZ)(I.Z,{name:"trash",height:12,width:12})})]})}))};var Tl={addonItem:function(e){return(0,i.iv)("display:flex;align-items:center;background-color:",n.qo.base.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.addon,";padding:",n.W0[6]," ",n.W0[6]," ",n.W0[6]," ",n.W0[12],";gap:",n.W0[8],";cursor:grab;position:relative;transition:padding 0.3s ease;svg{color:",n.qo.icon.default,";}button{",V.iZ.resetButton,";margin-left:auto;height:24px;width:24px;text-align:center;opacity:0;transition:opacity 0.3s ease;&:hover svg{color:",n.qo.icon.error,";}}&:hover{padding-left:",n.W0[24],";[data-addon-title]{color:",n.qo.text.hover,";}>span>svg{color:",n.qo.icon.primary,";}[data-drag-icon]{opacity:1;}button{opacity:1;}}",e&&(0,i.iv)("padding-left:",n.W0[24],";[data-addon-title]{color:",n.qo.text.hover,";}>span>svg{color:",n.qo.icon.primary,";}[data-drag-icon]{opacity:1;}button{opacity:1;};label:addonItem;"),";;label:addonItem;")},addonIcon:{name:"1awvidx-addonIcon",styles:"line-height:1;svg,img{height:16px;width:16px;};label:addonIcon;"},dragIcon:(0,i.iv)("position:absolute;left:",n.W0[2],";top:0;height:100%;display:flex;align-items:center;opacity:0;transition:opacity 0.3s ease;svg{color:",n.qo.icon.default,";};label:dragIcon;"),addonTitle:(0,i.iv)(o.c.body(),";",V.iZ.textEllipsis,";color:",n.qo.text.default,";transition:opacity 0.3s ease;;label:addonTitle;")};function Dl(e){return Dl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Dl(e)}function Zl(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Rl(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Zl(Object(r),!0).forEach((function(t){jl(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Zl(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function jl(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Dl(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Dl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Dl(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Bl(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ml(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ml(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ml(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const kl=function(){var e=(0,L.$)(),t=(0,Sl.iG)(),r=(0,Sl.uC)(),n=Bl((0,c.useState)([]),2),o=n[0],i=n[1],a=Bl((0,c.useState)(null),2),l=a[0],u=a[1],d=(0,rt.O)({defaultValues:{search:""}}),p=(0,fe.N)(d.watch("search"));return(0,c.useEffect)((function(){var e=new RegExp(p,"i");t.data&&i(t.data.filter((function(t){return e.test(t.title)})))}),[p,t.data]),(0,zn.IJ)({onDragStart:function(e){var t=e.active,r=t.data.current;r&&r.type===Bn.Dw.SavedAddonElement&&u(Number(t.id))},onDragEnd:function(e){var t=e.active,n=e.over,a=t.data.current,l=null==n?void 0:n.data.current;u(null),a&&l&&t.id!==(null==n?void 0:n.id)&&a.type===Bn.Dw.SavedAddonElement&&l.type===Bn.Dw.SavedAddonElement&&i((function(e){var i=e.findIndex((function(e){return e.id===t.id})),a=e.findIndex((function(e){return e.id===(null==n?void 0:n.id)})),l=(0,C.Rp)(o,i,a),c=(0,A.x9)(l),u=Array.from({length:c.length},(function(e,t){return t+1}));return r.mutate({ids:c,orders:u}),l}))},onDragCancel:function(){u(null)}}),A.Eu?(0,s.tZ)("div",{css:Nl.proLabelCss,children:(0,s.tZ)(Yo.Z,{emptyStateImage:Il,imageAltText:"upgrade to pro",title:e("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ADDONS_LIBRARY"),content:e("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ADDONS_LIBRARY_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:Nl.proBannerContentCss})}):t.isLoading?(0,s.tZ)(Ye.g4,{}):t.data?(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:Nl.searchWrapper,children:(0,s.tZ)(It.Qr,{control:d.control,name:"search",render:function(t){return(0,s.tZ)(Qe.Z,Rl(Rl({},t),{},{variant:"search",placeholder:e("COM_SPPAGEBUILDER_EDITOR_ELEMENT_SEARCH"),isClearable:!0}))}})}),(0,s.tZ)("div",{css:Nl.content,children:o.length>0?(0,s.tZ)(C.Fo,{id:"saved-addons",items:o,strategy:C.qw,children:o.map((function(e){return(0,s.tZ)(Al,{addon:e,activeDragItemId:l},e.id)}))}):(0,s.BX)("div",{css:Nl.noResult,children:[(0,s.tZ)("img",{src:Xa,alt:e("COM_SPPAGEBUILDER_EDITOR_NOTHING_FOUND_TEXT")}),(0,s.tZ)("p",{children:e("COM_SPPAGEBUILDER_EDITOR_NOTHING_FOUND_TEXT")})]})})]}):(0,s.tZ)("div",{children:e("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")})};var Nl={searchWrapper:(0,i.iv)("position:sticky;top:0;background-color:inherit;padding:",n.W0[16]," ",n.W0[10],";border-bottom:1px solid ",n.qo.stroke.neutral,";transition:border 0.3s ease;;label:searchWrapper;"),content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";padding:",n.W0[16]," ",n.W0[10],";;label:content;"),noResult:(0,i.iv)("display:flex;flex-direction:column;align-items:center;gap:",n.W0[12],";margin-top:",n.W0[56],";img{width:80px;}p{",o.c.body(),";text-align:center;};label:noResult;"),proLabelCss:(0,i.iv)("padding:",n.W0[12],";;label:proLabelCss;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;")};const Gl=r.p+"images/c0160f779b907eae5fab.jpg";function Wl(e){return Wl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wl(e)}function Ul(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Fl(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ul(Object(r),!0).forEach((function(t){Hl(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ul(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Hl(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Wl(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Wl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Wl(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const ql=function(e){var t=e.section,r=e.activeDragItemId,n=(0,L.$)(),o=(0,Sl.rM)(),i=(0,C.nB)({id:t.id,data:{content:t,type:Bn.Dw.SavedSectionElement}}),a=i.attributes,l=i.listeners,c=i.setNodeRef,u=i.transform,d=i.transition,p=i.isDragging,f={transform:x.ux.Transform.toString(u),transition:d,opacity:p?.5:1};return(0,s.tZ)("div",Fl(Fl(Fl({ref:c,style:f},a),l),{},{children:(0,s.BX)("div",{css:Vl.sectionItem(r===t.id),children:[(0,s.tZ)("span",{css:Vl.dragIcon,"data-drag-icon":!0,children:(0,s.tZ)(I.Z,{name:"dragger",height:24,width:24})}),(0,s.tZ)(I.Z,{name:"blocksDuo",height:16,width:16}),(0,s.tZ)("span",{"data-section-title":!0,css:Vl.sectionTitle,children:t.title}),(0,s.tZ)("button",{onClick:function(){window.confirm(n("COM_SPPAGEBUILDER_EDITOR_SAVED_SECTION_DELETE_MESSAGE"))&&o.mutate(t.id)},children:(0,s.tZ)(I.Z,{name:"trash",height:12,width:12})})]})}))};var Vl={sectionItem:function(e){return(0,i.iv)("display:flex;align-items:center;background-color:",n.qo.base.white,";border-radius:",n.E0[5],";box-shadow:",n.AF.addon,";padding:",n.W0[6]," ",n.W0[6]," ",n.W0[6]," ",n.W0[12],";gap:",n.W0[8],";cursor:grab;position:relative;transition:padding 0.3s ease;svg{color:",n.qo.icon.default,";}button{",V.iZ.resetButton,";margin-left:auto;height:24px;width:24px;text-align:center;opacity:0;transition:opacity 0.3s ease;&:hover svg{color:",n.qo.icon.error,";}}&:hover{padding-left:",n.W0[24],";[data-section-title]{color:",n.qo.text.hover,";}>svg{color:",n.qo.icon.primary,";}[data-drag-icon]{opacity:1;}button{opacity:1;}}",e&&(0,i.iv)("padding-left:",n.W0[24],";[data-section-title]{color:",n.qo.text.hover,";}>svg{color:",n.qo.icon.primary,";}[data-drag-icon]{opacity:1;}button{opacity:1;};label:sectionItem;"),";;label:sectionItem;")},dragIcon:(0,i.iv)("position:absolute;left:",n.W0[2],";top:0;height:100%;display:flex;align-items:center;opacity:0;transition:opacity 0.3s ease;svg{color:",n.qo.icon.default,";};label:dragIcon;"),sectionTitle:(0,i.iv)(o.c.body(),";",V.iZ.textEllipsis,";color:",n.qo.text.default,";transition:opacity 0.3s ease;;label:sectionTitle;")};function zl(e){return zl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zl(e)}function Xl(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Kl(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Xl(Object(r),!0).forEach((function(t){$l(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Xl(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $l(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==zl(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==zl(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zl(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Yl(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ql(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ql(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ql(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Jl=function(){var e=(0,L.$)(),t=(0,Sl.x)(),r=(0,Sl.Gj)(),n=Yl((0,c.useState)([]),2),o=n[0],i=n[1],a=Yl((0,c.useState)(null),2),l=a[0],u=a[1],d=(0,rt.O)({defaultValues:{search:""}}),p=(0,fe.N)(d.watch("search"));return(0,c.useEffect)((function(){var e=new RegExp(p,"i");t.data&&i(t.data.filter((function(t){return e.test(t.title)})))}),[p,t.data]),(0,zn.IJ)({onDragStart:function(e){var t=e.active,r=t.data.current;r&&r.type===Bn.Dw.SavedSectionElement&&u(Number(t.id))},onDragEnd:function(e){var t=e.active,n=e.over,a=t.data.current,l=null==n?void 0:n.data.current;u(null),a&&l&&t.id!==(null==n?void 0:n.id)&&a.type===Bn.Dw.SavedSectionElement&&l.type===Bn.Dw.SavedSectionElement&&i((function(e){var i=e.findIndex((function(e){return e.id===t.id})),a=e.findIndex((function(e){return e.id===(null==n?void 0:n.id)})),l=(0,C.Rp)(o,i,a),c=(0,A.x9)(l),u=Array.from({length:c.length},(function(e,t){return t+1}));return r.mutate({ids:c,orders:u}),l}))},onDragCancel:function(){u(null)}}),A.Eu?(0,s.tZ)("div",{css:ec.proLabelCss,children:(0,s.tZ)(Yo.Z,{emptyStateImage:Gl,imageAltText:"upgrade to pro",title:e("COM_SPPAGEBUILDER_EDITOR_CUSTOM_SECTIONS_LIBRARY"),content:e("COM_SPPAGEBUILDER_EDITOR_CUSTOM_SECTIONS_LIBRARY_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:ec.proBannerContentCss})}):t.isLoading?(0,s.tZ)(Ye.g4,{}):t.data?(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:ec.searchWrapper,children:(0,s.tZ)(It.Qr,{control:d.control,name:"search",render:function(t){return(0,s.tZ)(Qe.Z,Kl(Kl({},t),{},{variant:"search",placeholder:e("COM_SPPAGEBUILDER_EDITOR_ELEMENT_SEARCH"),isClearable:!0}))}})}),(0,s.tZ)("div",{css:ec.content,children:o.length>0?(0,s.tZ)(C.Fo,{id:"saved-sections",items:o,strategy:C.qw,children:o.map((function(e){return(0,s.tZ)(ql,{section:e,activeDragItemId:l},e.id)}))}):(0,s.BX)("div",{css:ec.noResult,children:[(0,s.tZ)("img",{src:Xa,alt:e("COM_SPPAGEBUILDER_EDITOR_NOTHING_FOUND_TEXT")}),(0,s.tZ)("p",{children:e("COM_SPPAGEBUILDER_EDITOR_NOTHING_FOUND_TEXT")})]})})]}):(0,s.tZ)("div",{children:e("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")})};var ec={searchWrapper:(0,i.iv)("position:sticky;top:0;background-color:inherit;padding:",n.W0[16]," ",n.W0[10],";border-bottom:1px solid ",n.qo.stroke.neutral,";transition:border 0.3s ease;;label:searchWrapper;"),content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";padding:",n.W0[16]," ",n.W0[10],";;label:content;"),noResult:(0,i.iv)("display:flex;flex-direction:column;align-items:center;gap:",n.W0[12],";margin-top:",n.W0[56],";img{width:80px;}p{",o.c.body(),";text-align:center;};label:noResult;"),proLabelCss:(0,i.iv)("padding:",n.W0[12],";;label:proLabelCss;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;")};function tc(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const rc=function(){var e,t,r=(0,L.$)(),n=(e=(0,c.useState)("sections"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return tc(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?tc(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=n[0],i=n[1],a=[{label:r("COM_SPPAGEBUILDER_EDITOR_ELEMENT_PANEL_TAB_SAVED_SECTIONS"),value:"sections"},{label:r("COM_SPPAGEBUILDER_EDITOR_ELEMENT_PANEL_TAB_SAVED_ADDONS"),value:"addons"}];return(0,s.BX)("div",{css:nc.wrapper,children:[(0,s.tZ)(Na,{tabList:a,activeTab:o,onChange:i}),"addons"===o?(0,s.tZ)(kl,{}):(0,s.tZ)(Jl,{})]})};var nc={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";background-color:",n.qo.base.surface,";height:100%;border-right:1px solid ",n.qo.stroke.neutral,";;label:wrapper;")};const oc=r.p+"images/d82d034e6dce7362d5f4.svg",ic=function(e){var t,r=e.children,n=e.createdBy,o=(0,L.$)(),i=(0,er.Q)(),a=Xn(),l=(0,$o.Z)(Oo.F.PageEditor).id,c=(0,Si.z1)(l),u=(0,at.v)((function(e){return e.appConfig})),d=(0,_o.s0)(),p=(t=Number(l),(0,be.a)({queryKey:["UserPermissions",t],queryFn:function(){return function(e){return ge.u.get(he.H.PERMISSIONS,{params:{page_id:e}}).then((function(e){return e.data}))}(t)}}));if(p.isLoading||!p.data)return null;var f=p.data.page.edit,v=i.edit_own&&n===u.user_id;return"storefront"===l&&!u.is_easystore_installed||!a.isLoading&&!c.isLoading?f||v?(0,s.tZ)(s.HY,{children:r}):(0,s.tZ)("div",{css:ac.wrapper,children:(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:oc,imageAltText:o("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_IMAGE_ALT"),content:"Oops! Seems like you are not permitted to access this page. Ask your administrator.",wrapperCss:ac.emptyStateCustom,customCss:ac.customCss,action:(0,s.tZ)(_.Z,{onClick:function(){return d(Oo.F.Home.buildLink())},children:o("COM_SPPAGEBUILDER_EDITOR_GO_BACK")})})}):(0,s.tZ)(Ye.fz,{})};var ac={wrapper:(0,i.iv)("height:100vh;display:flex;flex-direction:column;justify-content:center;background-color:",n.qo.base.white,";;label:wrapper;"),emptyStateCustom:(0,i.iv)("max-width:1320px;margin:",n.W0[96]," auto;box-shadow:none;;label:emptyStateCustom;"),customCss:(0,i.iv)(o.c.body(),";margin-top:",n.W0[32],";;label:customCss;")},lc=r(618),cc=r(3);const uc=function(e){var t=e.field,r=e.fieldState,n=e.label,o=e.disabled,i=e.loading,a=e.responsive,l=e.responsiveOrientation,c=e.helpText;return(0,s.tZ)(ne.Z,{field:t,fieldState:r,disabled:o,loading:i,label:n,responsive:a,responsiveOrientation:l,helpText:c,onCodeEditorChange:t.onChange,children:function(){return(0,s.tZ)(cc.Z,{value:t.value,onChange:t.onChange})}})};var sc=r(9371);const dc=function(e){var t=e.generatedImages,r=e.formSubmitHandler,n=e.onGenerateWithPrompt,o=e.isLoading,i=e.isSubmitDisabled,a=void 0!==i&&i,l=e.popover,c=void 0===l?"prompt":l,u=(0,L.$)(),d={prompt:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},variations:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE_VARIATIONS"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},variationsPreview:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE_VARIATIONS"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},generativeFill:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},generativeFillPreview:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},expand:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")},expandPreview:{generate:u("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE"),reGenerate:u("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")}};return(0,s.BX)("div",{css:fc.buttonWrapper({isInVariationsScreen:"variations"===c}),children:[("variations"===c||t.length>0)&&(0,s.tZ)(_.Z,{variant:"secondary",onClick:n,disabled:o,children:u("COM_SPPAGEBUILDER_EDITOR_AI_WRITE_NEW_PROMPT")}),(0,s.tZ)("div",{css:fc.buttonGroupWrapper({isInVariationsScreen:"variations"===c}),children:"variations"!==c&&(0,s.tZ)(_.Z,{onClick:r,buttonCss:V.iZ.generateAiButton(o||a),icon:!o&&(0,s.tZ)(I.Z,{name:t.length>0?"recycle":"generate"}),loading:o,disabled:a,children:t.length>0?d[c].reGenerate:d[c].generate})})]})};var pc={name:"1qa5mwl-buttonWrapper",styles:"justify-content:end;gap:0;label:buttonWrapper;"},fc={buttonWrapper:function(e){var t=e.isInVariationsScreen,r=void 0!==t&&t;return(0,i.iv)("box-shadow:",n.AF.dividerTop,";padding:",n.W0[12]," ",n.W0[16],";display:flex;justify-content:end;gap:",n.W0[16],";",r&&pc,";;label:buttonWrapper;")},buttonGroupWrapper:function(e){var t=e.isInVariationsScreen,r=void 0!==t&&t;return(0,i.iv)(r&&(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[16],";;label:buttonGroupWrapper;"),";;label:buttonGroupWrapper;")}},vc=r(2200);function hc(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var bc=300,yc=300;const mc=function(e){var t,r,n=e.imageFullPath,o=e.scaleSize,i=e.onDrawEnd,a=(t=(0,c.useState)(),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return hc(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?hc(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],u=a[1],d=(0,vc.D)(o),p=(0,c.useRef)(null),f=(0,c.useRef)(null);(0,c.useEffect)((function(){var e,t,r=p.current,n=null==r?void 0:r.getContext("2d"),a=f.current,c=Math.min(null!==(e=(0,Rt.He)(o))&&void 0!==e?e:0,1.95)-1;if(l&&o!==d&&a&&r&&n){var u=l.height-l.height*c,s=l.width-l.width*c,b=v(u,s),y=b.centerX,m=b.centerY;n.clearRect(0,0,r.width,r.height),r.width=yc,r.height=bc,n.drawImage(a,y,m,s,u);var g=null!==(t=h())&&void 0!==t?t:"";i(g)}}),[l,i,d,o]);var v=function(e,t){var r=p.current;return r?{centerX:r.width/2-t/2,centerY:r.height/2-e/2}:{centerX:0,centerY:0}},h=function(){var e=p.current,t=null==e?void 0:e.getContext("2d"),r=f.current;if(e&&t&&r)return e.toDataURL("image/png")};return(0,s.BX)("div",{css:gc.wrapper,children:[(0,s.tZ)("div",{css:gc.canvasWrapper,children:(0,s.tZ)("canvas",{ref:p,css:gc.canvasStyles})}),(0,s.tZ)("img",{ref:f,onLoad:function(){var e,t=p.current,r=f.current;if(t&&r){var n=t.getContext("2d");if(n){var o=r.width,a=r.height;t.width=yc,t.height=bc;var l,c,s=o/a;s>=1?(l=yc,c=bc/s):(l=yc*s,c=bc),u({height:c,width:l});var d=v(c,l),b=d.centerX,y=d.centerY;n.drawImage(r,b,y,l,c),n.globalCompositeOperation="destination-out";var m=null!==(e=h())&&void 0!==e?e:"";i(m)}}},src:n,alt:"canvas hidden item",style:{display:"none"}})]})};var gc={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),canvasWrapper:{name:"1mdetlh-canvasWrapper",styles:"position:relative;label:canvasWrapper;"},canvasStyles:{name:"1aw19z6-canvasStyles",styles:"background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);display:block;margin:0 auto;label:canvasStyles;"}},Ec=function(e){var t=e.prompt,r=e.language,n=e.tone,o=e.useCase,i=e.action,a="".concat(t,"\nTone should be ").concat(n,"\n");return r&&(a+="\nTranslate the generated text to: ".concat(r)),"others"!==o&&(a+="\nUse case should be ".concat(o)),i&&(a+="\nMake it ".concat(i)),a},Oc=function(e){return String(Math.ceil(e/4))};function _c(e){return _c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_c(e)}function wc(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ic(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==_c(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==_c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_c(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Sc=function(e){var t=e.prompt,r=e.maxTokens;return ge.u.post(he.H.AI_CONTENT,{prompt:t,type:"text",max_tokens:r})},Cc=function(){var e=(0,ve.p)().showToast;return(0,me.D)({mutationFn:Sc,onError:function(t){e({type:"danger",message:t.message})}})},xc=function(e){var t=e.prompt,r=e.type,n=void 0===r?"image":r,o=e.imageSize,i=e.imageUri,a=t;return(0,A.$K)(t)&&"image"===n&&(a=function(e){var t=e.prompt,r=void 0===t?"":t,n=e.regenerate,o=e.aspectRatio;return"\n".concat(r,"\n").concat(o?"aspect ratio ".concat(o):"","\n").concat(n?"Re-create":"Create"," a visually appealing image that matches the given specifications.\n")}(e)),ge.u.post(he.H.AI_CONTENT,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wc(Object(r),!0).forEach((function(t){Ic(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wc(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({prompt:a,type:n,image_size:o},i&&{image_uri:i}))},Pc=function(){var e=(0,ve.p)().showToast;return(0,me.D)({mutationFn:xc,onError:function(t){e({type:"danger",message:t.message})}})},Lc=function(e){return ge.u.patch(he.H.AI_CONTENT,{image_uri:e})};function Ac(e){return Ac="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ac(e)}function Tc(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Dc(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Tc(Object(r),!0).forEach((function(t){Zc(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Tc(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Zc(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ac(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ac(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ac(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Rc(){Rc=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Ac(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function jc(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Bc(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Mc(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Mc(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Mc(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const kc=function(e){var t=e.onChange,r=e.imageFullPath,n=e.onGenerateWithPrompt,o=(0,L.$)(),i=Bc((0,c.useState)(""),2),a=i[0],l=i[1],u=Bc((0,c.useState)(1),2),d=u[0],p=u[1],f=Pc(),v=(0,rt.O)({defaultValues:{prompt:"",aspectRatio:"",imageSize:"512x512"}}),h=v.watch("prompt"),b=v.handleSubmit(function(){var e,r=(e=Rc().mark((function e(r){var n,o,i,l,c,u;return Rc().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=r.prompt,o=r.aspectRatio,i=r.imageSize,e.next=3,f.mutateAsync({prompt:n,aspectRatio:o,imageSize:i,imageUri:a,type:"generative_fill"});case 3:l=e.sent,c=l.data,u=c.data.flatMap((function(e){var t=e.url;return(0,A.$K)(t)?t:[]})),t(u,a,n);case 7:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){jc(i,n,o,a,l,"next",e)}function l(e){jc(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return r.apply(this,arguments)}}());return(0,s.BX)("div",{css:Nc.cardInnerSection,children:[(0,s.BX)("div",{css:Nc.wrapper,children:[(0,s.tZ)("div",{css:Nc.leftWrapper,children:(0,s.tZ)(mc,{imageFullPath:r,onDrawEnd:l,scaleSize:d})}),(0,s.tZ)("div",{css:Nc.rightWrapper,children:(0,s.BX)("div",{css:Nc.fieldWrapper,children:[(0,s.BX)("div",{css:Nc.scaleWrapper,children:[(0,s.tZ)("p",{children:o("COM_SPPAGEBUILDER_EDITOR_AI_EDITOR_SCALE_SIZE")}),(0,s.BX)("div",{css:Nc.scaleInputWrapper,children:[(0,s.tZ)(sc.Z,{value:d,onChange:function(e){return p(e)},step:.1,min:1,max:2}),(0,s.BX)("div",{css:Nc.scaleNumber,children:[d,"x"]})]})]}),(0,s.tZ)(It.Qr,{name:"prompt",control:v.control,render:function(e){return(0,s.tZ)(Hn,Dc(Dc({},e),{},{label:o("COM_SPPAGEBUILDER_EDITOR_AI_WHAT_TO_GENERATE")}))}})]})})]}),(0,s.tZ)(dc,{generatedImages:[],formSubmitHandler:b,isLoading:f.isLoading,isSubmitDisabled:0===h.trim().length,onGenerateWithPrompt:n,popover:"expand"})]})};var Nc={cardInnerSection:{name:"1at6rrd-cardInnerSection",styles:"height:432px;label:cardInnerSection;"},wrapper:{name:"1ozqbk0-wrapper",styles:"display:grid;grid-template-columns:360px 378px;height:376px;label:wrapper;"},leftWrapper:(0,i.iv)("display:grid;place-content:center;gap:",n.W0[16],";background-color:",n.qo.background.neutral,";;label:leftWrapper;"),fieldWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";.rc-slider{max-width:100%;};label:fieldWrapper;"),scaleWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";>p{",o.c.caption("regular"),";color:",n.qo.text.default,";};label:scaleWrapper;"),scaleInputWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[24],";;label:scaleInputWrapper;"),scaleNumber:(0,i.iv)(o.c.body("regular"),";background-color:",n.qo.background.disabled,";color:",n.qo.text.neutral,";padding:",n.W0[6]," ",n.W0[12],";width:56px;border-radius:",n.E0[6],";text-align:center;;label:scaleNumber;"),rightWrapper:(0,i.iv)("padding:",n.W0[20],";;label:rightWrapper;")};function Gc(e){return function(e){if(Array.isArray(e))return Fc(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Uc(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wc(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Uc(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Uc(e,t){if(e){if("string"==typeof e)return Fc(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fc(e,t):void 0}}function Fc(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Hc=function(e){var t=e.imageFullPath,r=e.brushSize,n=e.onDrawEnd,o=Wc((0,c.useState)(!1),2),i=o[0],a=o[1],l=Wc((0,c.useState)(!1),2),u=l[0],d=l[1],p=Wc((0,c.useState)([]),2),f=p[0],v=p[1],h=Wc((0,c.useState)([]),2),b=h[0],y=h[1],m=(0,c.useRef)(null),g=(0,c.useRef)(null),E=(0,c.useRef)(null);(0,c.useEffect)((function(){if(f.length>1){var e,t=null!==(e=O())&&void 0!==e?e:"";n(t)}else n("")}),[n,b,f.length]),(0,c.useEffect)((function(){var e=m.current,t=null==e?void 0:e.getContext("2d");t&&(t.lineWidth=r)}),[r]);var O=function(){var e=m.current,t=null==e?void 0:e.getContext("2d"),r=g.current;if(e&&t&&r)return e.toDataURL("image/png")};return(0,s.BX)("div",{css:qc.wrapper,children:[(0,s.BX)("div",{css:qc.canvasWrapper,children:[(0,s.tZ)("canvas",{ref:m,css:qc.canvasStyles,onMouseDown:function(e){if(u&&m.current){var t=m.current,r=t.getContext("2d");if(r){var n=t.getBoundingClientRect(),o=(e.clientX-n.left)*(t.width/n.width),i=(e.clientY-n.top)*(t.height/n.height);r.beginPath(),r.moveTo(o,i),a(!0)}}},onMouseMove:function(e){var t=m.current,r=null==t?void 0:t.getContext("2d");if(t&&r){var n=t.getBoundingClientRect(),o=(e.clientX-n.left)*(t.width/n.width),a=(e.clientY-n.top)*(t.height/n.height);E.current&&(E.current.style.left="".concat(o,"px"),E.current.style.top="".concat(a,"px"),i&&(r.lineTo(o,a),r.stroke()))}},onMouseUp:function(){var e;a(!1);var t=null!==(e=O())&&void 0!==e?e:"";n(t);var r=m.current,o=null==r?void 0:r.getContext("2d");if(r&&o){var i=o.getImageData(0,0,r.width,r.height);v([].concat(Gc(f),[i])),y([])}},onMouseEnter:function(){E.current&&(E.current.style.display="block",document.body.style.cursor="none")},onMouseLeave:function(){E.current&&(E.current.style.display="none",document.body.style.cursor="auto")}}),(0,s.tZ)("div",{ref:E,css:qc.customCursor({brushSize:r})})]}),(0,s.BX)("div",{css:qc.undoRedoWrapper,children:[(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"undo",width:24,height:24}),onClick:function(){if(0!==f.length){var e=Gc(f),t=e.pop();(0,A.$K)(t)&&y([].concat(Gc(b),[t]));var r=m.current,n=null==r?void 0:r.getContext("2d");r&&n&&(n.clearRect(0,0,r.width,r.height),e.forEach((function(e){n.putImageData(e,0,0)})),v(e))}},disabled:1===f.length}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"redo",width:24,height:24}),onClick:function(){if(0!==b.length){var e=Gc(b),t=e.pop();if((0,A.$K)(t)){v((function(e){return[].concat(Gc(e),[t])}));var r=m.current,n=null==r?void 0:r.getContext("2d");r&&n&&(n.putImageData(t,0,0),y(e))}}},disabled:0===b.length})]}),(0,s.tZ)("img",{ref:g,onLoad:function(){var e=m.current,t=g.current;if(e&&t){var n=e.getContext("2d");if(n){d(!0);var o=t.width,i=t.height;e.width=300,e.height=300;var a=o/i;a>=1?(e.width=300,e.height=300/a):(e.width=300*a,e.height=300),n.drawImage(t,0,0,e.width,e.height),n.globalCompositeOperation="destination-out",n.lineWidth=r,n.lineJoin="round",n.lineCap="round";var l=n.getImageData(0,0,e.width,e.height);v([].concat(Gc(f),[l])),y([])}}},src:t,alt:"canvas hidden item",style:{display:"none"}})]})};var qc={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),undoRedoWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[16],";>button{padding:0;};label:undoRedoWrapper;"),canvasWrapper:{name:"1mdetlh-canvasWrapper",styles:"position:relative;label:canvasWrapper;"},canvasStyles:(0,i.iv)("background-color:#3366ff;border-radius:",n.E0[8],";display:block;margin:0 auto;;label:canvasStyles;"),customCursor:function(e){var t=e.brushSize,r=void 0===t?30:t;return(0,i.iv)("position:absolute;width:",r,"px;height:",r,"px;border-radius:50%;background-color:#3366ff;pointer-events:none;transform:translate(-50%, -50%);border:1px solid #ffffffe5;z-index:9999;display:none;;label:customCursor;")}};function Vc(e){return Vc="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Vc(e)}function zc(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Xc(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?zc(Object(r),!0).forEach((function(t){Kc(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zc(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Kc(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Vc(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Vc(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Vc(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $c(){$c=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Vc(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Yc(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Qc(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Jc=function(e){var t,r,n=e.onChange,o=e.imageFullPath,i=e.onGenerateWithPrompt,a=(0,L.$)(),l=(t=(0,c.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Qc(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Qc(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1],p=Pc(),f=(0,rt.O)({defaultValues:{prompt:"",aspectRatio:"",imageSize:"512x512",brushSize:30}}),v=f.watch("brushSize"),h=f.watch("prompt"),b=f.handleSubmit(function(){var e,t=(e=$c().mark((function e(t){var r,o,i,a,l,c;return $c().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.prompt,o=t.aspectRatio,i=t.imageSize,e.next=3,p.mutateAsync({prompt:r,aspectRatio:o,imageSize:i,imageUri:u,type:"generative_fill"});case 3:a=e.sent,l=a.data,c=l.data.flatMap((function(e){var t=e.url;return(0,A.$K)(t)?t:[]})),n(c,u,r);case 7:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Yc(i,n,o,a,l,"next",e)}function l(e){Yc(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}());return(0,s.BX)("div",{css:eu.cardInnerSection,children:[(0,s.BX)("div",{css:eu.wrapper,children:[(0,s.tZ)("div",{css:eu.leftWrapper,children:(0,s.tZ)(Hc,{imageFullPath:o,onDrawEnd:d,brushSize:v})}),(0,s.tZ)("div",{css:eu.rightWrapper,children:(0,s.BX)("div",{css:eu.fieldWrapper,children:[(0,s.tZ)(It.Qr,{name:"brushSize",control:f.control,render:function(e){return(0,s.tZ)(Ji.Z,Xc(Xc({},e),{},{label:a("COM_SPPAGEBUILDER_EDITOR_AI_EDITOR_BRUSH_SIZE"),min:10,max:50}))}}),u&&(0,s.tZ)(It.Qr,{name:"prompt",control:f.control,render:function(e){return(0,s.tZ)(Hn,Xc(Xc({},e),{},{label:a("COM_SPPAGEBUILDER_EDITOR_AI_WHAT_TO_GENERATE")}))}})]})})]}),(0,s.tZ)(dc,{generatedImages:[],formSubmitHandler:b,isLoading:p.isLoading,isSubmitDisabled:!u||0===h.trim().length,onGenerateWithPrompt:i,popover:"generativeFill"})]})};var eu={cardInnerSection:{name:"1at6rrd-cardInnerSection",styles:"height:432px;label:cardInnerSection;"},wrapper:{name:"1ozqbk0-wrapper",styles:"display:grid;grid-template-columns:360px 378px;height:376px;label:wrapper;"},leftWrapper:(0,i.iv)("display:grid;place-content:center;gap:",n.W0[16],";background-color:",n.qo.background.neutral,";;label:leftWrapper;"),fieldWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";.rc-slider{max-width:100%;};label:fieldWrapper;"),rightWrapper:(0,i.iv)("padding:",n.W0[20],";;label:rightWrapper;")};const tu=r.p+"images/8489e1515cd6e8d6e6fc.svg";function ru(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var nu=[{id:"1:1",title:"Square (1:1)"},{id:"3:2",title:"Landscape (3:2)"},{id:"4:3",title:"Landscape (4:3)"},{id:"16:9",title:"Landscape (16:9)"},{id:"2:3",title:"Portrait (2:3)"},{id:"3:4",title:"Portrait (3:4)"},{id:"9:16",title:"Portrait (9:16)"}];const ou=function(e){var t,r,n=e.image,o=e.onInsert,i=e.onEdit,a=e.popover,l=e.isSkeletonOnly,u=void 0!==l&&l,d=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return ru(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ru(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),p=d[0],f=d[1],v=(0,c.useRef)(null),h=(0,c.useRef)(null),b=(0,c.useRef)(null),y=(0,c.useRef)(null);return u?(0,s.tZ)("div",{css:cu.imageButton({isLoaded:p}),children:(0,s.tZ)(Eo.Z,{height:188,animation:!0})}):(0,s.BX)("div",{css:cu.imageButton({isLoaded:p}),children:[(0,s.tZ)("img",{ref:v,src:n,alt:"Generated alt text",style:{display:"none"},onLoad:function(){v.current&&(v.current.style.display="block",f(!0))}}),(0,s.BX)("div",{"data-action-buttons":!0,css:cu.actionButtonWrapper(a),children:["generativeFill"!==a&&(0,s.tZ)(Ii.Z,{content:"Magic Fill",reference:h,isInteractive:!1,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"magicFill"}),buttonCss:cu.actionButtonCss,height:8,width:8,onClick:function(){return i(n,"magicFill")}})}),"variationsPreview"!==a&&(0,s.tZ)(Ii.Z,{content:"Variations",reference:b,isInteractive:!1,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"variations"}),buttonCss:cu.actionButtonCss,height:8,width:8,onClick:function(){return i(n,"variation")}})}),"expandPreview"!==a&&(0,s.tZ)(Ii.Z,{content:"Expand",reference:h,isInteractive:!1,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"expandAll"}),buttonCss:cu.actionButtonCss,height:8,width:8,onClick:function(){return i(n,"expand")}})}),(0,s.tZ)(P.Z,{actions:nu,triggerButtonContent:(0,s.tZ)(Ii.Z,{content:"Insert",reference:y,isInteractive:!1,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"insert"}),buttonCss:cu.actionButtonCss,height:8,width:8})}),onSelect:function(e){o(n,e)}})]}),!p&&(0,s.tZ)(Eo.Z,{height:188,animation:!0})]})};var iu={name:"106sdel-actionButtonWrapper",styles:"max-width:72px;label:actionButtonWrapper;"},au={name:"1nxacg5-imageButton",styles:"pointer-events:none;label:imageButton;"},lu={name:"1nxacg5-imageButton",styles:"pointer-events:none;label:imageButton;"},cu={imageButton:function(e){var t=e.isPlaceholder,r=e.isLoaded;return(0,i.iv)("height:160px;width:160px;position:relative;border-radius:",n.E0[5],";overflow:hidden;",!r&&lu," &::before{content:'';position:absolute;inset:0;background-color:",(0,Ar.m4)(n.qo.base.primary,.4),";border:2px solid ",n.qo.stroke.primary,";opacity:0;transition:opacity 0.25s ease-out;border-radius:",n.E0[5],";}:hover,:focus-within{::before{opacity:1;}>[data-action-buttons]{display:flex;opacity:1;}}",t&&au," img{width:100%;height:100%;object-fit:cover;};label:imageButton;")},actionButtonWrapper:function(e){return(0,i.iv)("display:none;flex-wrap:wrap;justify-content:center;width:100%;gap:",n.W0[8],";opacity:0;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);transition:opacity 0.25s ease-out;",(!e||"variations"===e)&&iu,";;label:actionButtonWrapper;")},actionButtonCss:(0,i.iv)("padding:",n.W0[8],";height:32px;width:32px;;label:actionButtonCss;")};const uu=function(e){var t=e.generatedImages,r=e.isLoading,n=e.onInsert,o=e.onEdit,i=e.popover,a=(0,L.$)();if(0===t.length&&!r)return(0,s.BX)("div",{css:du.emptyImageWrapper,children:[(0,s.tZ)("img",{src:tu,alt:"empty State"}),(0,s.tZ)("p",{children:a("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_CREATE_USING_PROMPT")})]});var l=0===t.length&&r;return(0,s.tZ)("div",{css:du.imageWrapper({isLoading:r}),children:(l?(0,A.w6)(4):t).map((function(e){return(0,s.tZ)(ou,{image:String(e),onInsert:function(e,t){return n(String(e),t)},onEdit:o,popover:i,isSkeletonOnly:l},e)}))})};var su={name:"1giub5n-imageWrapper",styles:"pointer-events:none;label:imageWrapper;"},du={emptyImageWrapper:(0,i.iv)("display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:376px;height:100%;gap:",n.W0[8],";padding:",n.W0[20],";background-color:",n.qo.background.neutral,";>img{width:56px;height:56px;};label:emptyImageWrapper;"),imageWrapper:function(e){var t=e.isLoading,r=void 0!==t&&t;return(0,i.iv)(V.iZ.overflowYAuto,";display:grid;grid-template-columns:repeat(2, 1fr);height:100%;gap:",n.W0[12],";padding:",n.W0[20],";background-color:",n.qo.background.neutral,";",r&&su,";;label:imageWrapper;")}};function pu(e){return pu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pu(e)}function fu(){fu=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==pu(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function vu(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function hu(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){vu(i,n,o,a,l,"next",e)}function l(e){vu(i,n,o,a,l,"throw",e)}a(void 0)}))}}function bu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function yu(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?bu(Object(r),!0).forEach((function(t){mu(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bu(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function mu(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==pu(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==pu(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pu(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function gu(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Eu={prompt:"",imageSize:"256x256",aspectRatio:"1:1"};const Ou=function(e){var t,r,n=e.onClose,o=e.onEdit,i=e.onChange,a=e.isLoading,l=e.prompt,u=e.generatedImages,d=e.imageSize,p=e.setCurrentlyGeneratedItems,f=(0,L.$)(),v=(t=(0,c.useState)(u),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return gu(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gu(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],b=v[1],y=yt(),m=Pc(),g=(0,rt.O)({defaultValues:yu(yu({},Eu),{},{prompt:l,imageSize:d})}),E=g.watch("imageSize"),O=g.handleSubmit(function(){var e=hu(fu().mark((function e(t){var r,n,o;return fu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.prompt.trim().length){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,m.mutateAsync(t);case 4:r=e.sent,n=r.data,o=n.data.flatMap((function(e){var t=e.url;return(0,A.$K)(t)?t:[]})),b(o),p(o);case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());return(0,s.tZ)("div",{css:_u.cardInnerSection,children:y.isLoading||a?(0,s.tZ)("div",{css:_u.loadingWrapper,children:(0,s.tZ)(Ye.g4,{})}):(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:_u.wrapper,children:[(0,s.tZ)(uu,{generatedImages:h,isLoading:m.isLoading,onInsert:function(){var e=hu(fu().mark((function e(t,r){var o,a;return fu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y.mutateAsync({url:t,aspect_ratio:r});case 2:o=e.sent,a=o.data,i(a.path),n();case 6:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),onEdit:function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return o.apply(void 0,t.concat([g.getValues("prompt"),g.getValues("imageSize")]))}}),(0,s.tZ)("form",{children:(0,s.BX)("div",{css:_u.fieldWrapper,children:[(0,s.tZ)(It.Qr,{name:"prompt",control:g.control,render:function(e){return(0,s.tZ)(Hn,yu(yu({},e),{},{label:f("COM_SPPAGEBUILDER_EDITOR_AI_WHAT_TO_GENERATE"),placeholder:f("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_INPUT_PLACEHOLDER")}))}}),(0,s.BX)("div",{css:_u.tabWrapper,children:[(0,s.tZ)("div",{children:f("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_SIZE")}),(0,s.tZ)(Na,{variant:"secondary",activeTab:E,tabList:[{label:"256px",value:"256x256"},{label:"512px",value:"512x512"},{label:"1024px",value:"1024x1024"}],onChange:function(e){g.setValue("imageSize",e)},wrapperCss:_u.tabWrapperCss})]})]})})]}),(0,s.tZ)(dc,{generatedImages:h,formSubmitHandler:O,onGenerateWithPrompt:function(){g.reset(Eu),b([])},isLoading:m.isLoading})]})})};var _u={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:{name:"1l7lc90-cardInnerSection",styles:"max-height:calc(100vh - 80px);label:cardInnerSection;"},crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},loadingWrapper:{name:"uw292e-loadingWrapper",styles:"display:grid;place-content:center;width:736px;height:432px;label:loadingWrapper;"},wrapper:(0,i.iv)("display:grid;grid-template-columns:378px 360px;height:376px;overflow-y:auto;>form{padding:",n.W0[20],";};label:wrapper;"),fieldWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";.rc-slider{max-width:100%;};label:fieldWrapper;"),heightWidthWrapper:(0,i.iv)("display:flex;gap:",n.W0[12],";>div{flex:1;};label:heightWidthWrapper;"),tabWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";>p{",o.c.caption(),";};label:tabWrapper;"),tabWrapperCss:{name:"z2x1bx-tabWrapperCss",styles:"width:100%;height:32px;label:tabWrapperCss;"}};function wu(e){return wu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},wu(e)}function Iu(){Iu=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==wu(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Su(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Cu(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Su(Object(r),!0).forEach((function(t){xu(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Su(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function xu(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==wu(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==wu(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===wu(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Pu(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Lu(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Pu(i,n,o,a,l,"next",e)}function l(e){Pu(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Au(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Tu=function(e){var t,r,n=e.onClose,o=e.onChange,i=e.onInsert,a=e.imageFullPath,l=e.imageUri,u=e.prompt,d=e.onEdit,p=e.popover,f=e.generatedImages,v=e.isLoading,h=void 0!==v&&v,b=e.onGenerateWithPrompt,y=(0,c.useRef)(null),m=(0,c.useRef)(null),g=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Au(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Au(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),E=g[0],O=g[1],_=Pc(),w=yt(),I=(0,rt.O)({defaultValues:{imageSize:"512x512",aspectRatio:"16:9"}}).handleSubmit(function(){var e=Lu(Iu().mark((function e(t){var r,n,i;return Iu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_.mutateAsync(Cu(Cu({},t),{},{prompt:u,imageUri:l,type:"variationsPreview"===p?"variation":"generative_fill"}));case 2:r=e.sent,n=r.data,i=n.data.flatMap((function(e){var t=e.url;return(0,A.$K)(t)?t:[]})),o(i);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}());return(0,c.useEffect)((function(){0===f.length&&I()}),[f.length]),(0,s.tZ)("div",{css:Ru.cardInnerSection,children:h||w.isLoading?(0,s.tZ)("div",{css:Ru.loadingWrapper,children:(0,s.tZ)(Ye.g4,{})}):(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:Ru.wrapper,children:[(0,s.BX)("div",{css:Ru.leftWrapper(p,E),children:[(0,s.tZ)("p",{children:"Original Photo"}),(0,s.tZ)("img",{ref:m,src:a,alt:"selected",onLoad:function(){if(O(!0),"variationsPreview"!==p&&"variations"!==p){var e=y.current,t=m.current;if(e&&t){var r=e.getContext("2d");if(r){var n=t.width,o=t.height;e.width=282,e.height=282;var i=n/o;i>=1?(e.width=282,e.height=282/i):(e.width=282*i,e.height=282),r.drawImage(t,0,0,e.width,e.height)}}}}}),!E&&(0,s.tZ)(Eo.Z,{height:282,width:282,animation:!0}),["generativeFill","expandPreview"].includes(p)&&(0,s.tZ)("canvas",{ref:y})]}),(0,s.tZ)("div",{children:(0,s.tZ)(uu,{generatedImages:f,isLoading:_.isLoading,onInsert:function(){var e=Lu(Iu().mark((function e(t,r){var o,a;return Iu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,w.mutateAsync({url:t,aspect_ratio:r});case 2:o=e.sent,a=o.data,i(a.path),n();case 6:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),onEdit:d,popover:p})})]}),(0,s.tZ)(dc,{generatedImages:f,formSubmitHandler:I,isLoading:_.isLoading,onGenerateWithPrompt:b,popover:p})]})})};var Du={name:"faz8bo-leftWrapper",styles:">img{display:none;};label:leftWrapper;"},Zu={name:"xfdbnp-leftWrapper",styles:">canvas{background-color:transparent;background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);};label:leftWrapper;"},Ru={cardInnerSection:{name:"xefd76-cardInnerSection",styles:"width:736px;height:432px;label:cardInnerSection;"},wrapper:{name:"1mq32rq-wrapper",styles:"display:grid;grid-template-columns:360px 378px;label:wrapper;"},loadingWrapper:{name:"uw292e-loadingWrapper",styles:"display:grid;place-content:center;width:736px;height:432px;label:loadingWrapper;"},leftWrapper:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return(0,i.iv)("padding:",n.W0[20],";display:grid;place-content:center;gap:",n.W0[16],";>p{text-align:center;}>img{height:282px;width:282px;object-fit:contain;}>canvas{background-color:#3366ff;}","expandPreview"===e&&Zu," ",(!t||["generativeFill","expandPreview"].includes(e))&&Du,";;label:leftWrapper;")}};function ju(e){return ju="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ju(e)}function Bu(){Bu=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==ju(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Mu(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ku(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Mu(Object(r),!0).forEach((function(t){Nu(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Mu(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Nu(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ju(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ju(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ju(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Gu(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}const Wu=function(e){var t=e.onChange,r=e.imageFullPath,n=e.imageUri,o=e.onGenerateWithPrompt,i=e.onEdit,a=e.isLoading,l=Pc(),u=(0,c.useRef)(null),d=(0,c.useRef)(null),p=(0,c.useRef)(null),f=(0,rt.O)({defaultValues:{imageSize:"512x512",aspectRatio:"16:9"}}).handleSubmit(function(){var e,r=(e=Bu().mark((function e(r){var o,i,a;return Bu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l.mutateAsync(ku(ku({},r),{},{imageUri:n,type:"variation"}));case 2:o=e.sent,i=o.data,a=i.data.flatMap((function(e){var t=e.url;return(0,A.$K)(t)?t:[]})),t(a);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Gu(i,n,o,a,l,"next",e)}function l(e){Gu(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return r.apply(this,arguments)}}()),v=a||l.isLoading;return(0,s.tZ)("div",{css:Uu.cardInnerSection,children:v?(0,s.tZ)("div",{css:Uu.loadingWrapper,children:(0,s.tZ)(Ye.g4,{})}):(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:Uu.wrapper,children:[(0,s.tZ)("img",{src:r,alt:"variation"}),(0,s.BX)("div",{css:Uu.actionButtonWrapper,children:[(0,s.tZ)(Ii.Z,{content:"Magic Fill",placement:"right",reference:u,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"magicFill",height:16,width:16}),onClick:function(){return i("magicFill")},buttonCss:Uu.actionButtonCss})}),(0,s.tZ)(Ii.Z,{content:"Variations",placement:"right",reference:d,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"variations",height:16,width:16}),onClick:f,buttonCss:Uu.actionButtonCss})}),(0,s.tZ)(Ii.Z,{content:"Expand",placement:"right",reference:p,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"expandAll",height:16,width:16}),onClick:function(){return i("expand")},buttonCss:Uu.actionButtonCss})})]})]}),(0,s.tZ)(dc,{generatedImages:[],formSubmitHandler:f,isLoading:l.isLoading,onGenerateWithPrompt:o,onEdit:i,popover:"variations"})]})})};var Uu={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:{name:"15jfho7-cardInnerSection",styles:"max-height:calc(100vh - 80px);overflow-y:auto;label:cardInnerSection;"},crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},wrapper:(0,i.iv)("width:736px;height:376px;background-color:",n.qo.background.neutral,";padding:",n.W0[20],";display:grid;place-content:center;position:relative;>img{max-height:300px;max-width:100%;object-fit:contain;};label:wrapper;"),actionButtonWrapper:(0,i.iv)("height:100%;position:absolute;top:0;right:24px;margin:auto 0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:",n.W0[8],";;label:actionButtonWrapper;"),actionButtonCss:(0,i.iv)("height:32px;width:32px;padding:",n.W0[8],";display:grid;place-content:center;;label:actionButtonCss;"),loadingWrapper:{name:"uw292e-loadingWrapper",styles:"display:grid;place-content:center;width:736px;height:432px;label:loadingWrapper;"}},Fu=r(8698);function Hu(e){return Hu="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Hu(e)}function qu(){qu=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Hu(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Vu(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function zu(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Vu(i,n,o,a,l,"next",e)}function l(e){Vu(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Xu(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Ku(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ku(e,t){if(e){if("string"==typeof e)return $u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$u(e,t):void 0}}function $u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Yu=function(e){var t,r=e.isOpen,n=e.onClose,o=e.onChange,a=e.imageFullPath,l=e.imageUri,u=e.triggerRef,d=(0,L.$)(),p=l.length>0?"variations":"prompt",f=Xu((0,c.useState)(p),2),v=f[0],h=f[1],b=Xu((0,c.useState)([]),2),y=b[0],m=b[1],g=Xu((0,c.useState)(a),2),E=g[0],O=g[1],w=Xu((0,c.useState)(l),2),S=w[0],C=w[1],x=Xu((0,c.useState)(""),2),P=x[0],A=x[1],T=Xu((0,c.useState)(Bn.Vg[256]),2),D=T[0],Z=T[1],R=Xu((0,c.useState)([]),2),j=R[0],B=R[1],M=(0,pe.l)({isOpen:r,triggerRef:u,gap:20,arrow:"right"}),k=M.position,N=M.popoverRef,G=Pc(),W=(t=(0,ve.p)().showToast,(0,me.D)({mutationFn:Lc,onError:function(e){t({type:"danger",message:e.message})}}));(0,c.useEffect)((function(){h(p),O(a),C(l)}),[a,l]);var U=function(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Bn.Vg[256];B([].concat(function(e){if(Array.isArray(e))return $u(e)}(t=j)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||Ku(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[{popover:v,imagePath:E,imageUriPath:S,generatedImages:y,prompt:r,imageSize:n}])),h(e),A(r),Z(n),"variationsPreview"===e&&m([])},F=function(){B([]),m([]),Z(Bn.Vg[256]),A("")},H=function(){h(p),m([]),n(),A("")};return(0,s.tZ)(pe.h,{isOpen:r,children:(0,s.tZ)("div",{css:(0,i.iv)({position:"absolute",left:k.left,top:k.top},";label:AiImagePopoverController;"),ref:N,children:(0,s.tZ)(Fu.Z,{header:{title:(0,s.BX)("div",{children:[!["prompt","variations"].includes(v)&&(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"arrowLeft",height:20,width:20}),onClick:function(){if(j.length>0){var e=j[j.length-1];B(j.slice(0,j.length-1)),h(e.popover),O(e.imagePath),C(e.imageUriPath),m(e.generatedImages),A(e.prompt),Z(e.imageSize)}},buttonCss:Qu.leftArrowButtonCss}),function(){switch(v){case"variationsPreview":return d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_VARIATIONS");case"generativeFill":case"generativeFillPreview":return d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_MAGIC_FILL");case"expand":return d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_EXPAND_IMAGE");case"expandPreview":return d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_BACK_TO_EDITOR");default:return d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_GENERATOR")}}()]}),subtitle:["generativeFill"].includes(v)?d("COM_SPPAGEBUILDER_EDITOR_AI_IMAGE_MARK_AREA"):"",actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:H,buttonCss:Qu.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:Qu.cardStyle,hideArrow:!0,children:function(){switch(v){case"variations":return(0,s.tZ)(Wu,{isLoading:W.isLoading,onChange:function(e){m(e),U("variationsPreview")},onGenerateWithPrompt:function(){h("prompt"),F()},onEdit:function(){var e=zu(qu().mark((function e(t){var r,n;return qu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(l.length>0&&l.startsWith("http"))){e.next=9;break}return e.next=3,W.mutateAsync(l);case 3:if(r=e.sent,(n=r.data).status){e.next=7;break}return e.abrupt("return");case 7:O(n.dataUrl),C(n.dataUrl);case 9:U("magicFill"===t?"generativeFill":"expand");case 10:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),imageFullPath:E,imageUri:S});case"variationsPreview":return(0,s.tZ)(Tu,{onClose:H,onChange:function(e){return m(e)},onInsert:o,onGenerateWithPrompt:function(){U("prompt"),F()},generatedImages:y,imageFullPath:E,imageUri:S,isLoading:W.isLoading,onEdit:function(){var e=zu(qu().mark((function e(t,r){var n,o;return qu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,W.mutateAsync(t);case 2:if(n=e.sent,(o=n.data).status){e.next=6;break}return e.abrupt("return");case 6:O(o.dataUrl),C(o.dataUrl),U("expand"===r?"expand":"generativeFill");case 9:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),popover:"variationsPreview"});case"generativeFill":return(0,s.tZ)(Jc,{onChange:function(e,t,r){m(e),U("generativeFillPreview",r),O(t),C(t)},onGenerateWithPrompt:function(){h("prompt"),F()},imageFullPath:E,imageUri:S});case"generativeFillPreview":return(0,s.tZ)(Tu,{onClose:H,onChange:function(e){return m(e)},onInsert:o,onGenerateWithPrompt:function(){h("prompt"),F()},prompt:P,generatedImages:y,imageFullPath:E,imageUri:S,isLoading:W.isLoading,onEdit:function(){var e=zu(qu().mark((function e(t,r){var n,o;return qu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("variation"!==r){e.next=5;break}return O(t),C(t),U("variationsPreview"),e.abrupt("return");case 5:return e.next=7,W.mutateAsync(t);case 7:n=e.sent,(o=n.data).status&&(O(o.dataUrl),C(o.dataUrl),U("expand"));case 10:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),popover:"generativeFill"});case"expand":return(0,s.tZ)(kc,{onChange:function(e,t,r){m(e),U("expandPreview",r),O(t),C(t)},onGenerateWithPrompt:function(){h("prompt"),F()},imageFullPath:E,imageUri:S});case"expandPreview":return(0,s.tZ)(Tu,{onClose:H,onChange:function(e){return m(e)},onInsert:o,onGenerateWithPrompt:function(){h("prompt"),F()},prompt:P,generatedImages:y,imageFullPath:E,imageUri:S,isLoading:W.isLoading,onEdit:function(){var e=zu(qu().mark((function e(t,r){var n,o;return qu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("variation"!==r){e.next=5;break}return O(t),C(t),U("variationsPreview"),e.abrupt("return");case 5:return e.next=7,W.mutateAsync(t);case 7:n=e.sent,(o=n.data).status&&(O(o.dataUrl),C(o.dataUrl),U("generativeFill"));case 10:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),popover:"expandPreview"});default:return(0,s.tZ)(Ou,{onClose:H,onChange:o,isLoading:G.isLoading||W.isLoading,prompt:P,imageSize:D,generatedImages:y,setCurrentlyGeneratedItems:function(e){m(e)},onEdit:function(){var e=zu(qu().mark((function e(t,r,n,o){var i,a;return qu().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("variation"!==r){e.next=5;break}return O(t),C(t),U("variationsPreview",n,o),e.abrupt("return");case 5:return e.next=7,W.mutateAsync(t);case 7:i=e.sent,(a=i.data).status&&O(a.dataUrl),U("magicFill"===r?"generativeFill":"expand",n,o);case 11:case"end":return e.stop()}}),e)})));return function(t,r,n,o){return e.apply(this,arguments)}}()})}}()})})})};var Qu={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:{name:"1at6rrd-cardInnerSection",styles:"height:432px;label:cardInnerSection;"},crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},wrapper:{name:"1ozqbk0-wrapper",styles:"display:grid;grid-template-columns:360px 378px;height:376px;label:wrapper;"},leftWrapper:(0,i.iv)("padding:",n.W0[20],";;label:leftWrapper;"),fieldWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";.rc-slider{max-width:100%;};label:fieldWrapper;"),rightWrapper:(0,i.iv)("display:grid;place-content:center;gap:",n.W0[16],";background-color:",n.qo.background.neutral,";;label:rightWrapper;"),leftArrowButtonCss:{name:"1j3qnzr-leftArrowButtonCss",styles:"padding-left:0;label:leftArrowButtonCss;"}};function Ju(e){return Ju="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ju(e)}function es(){es=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Ju(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function ts(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function rs(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){ts(i,n,o,a,l,"next",e)}function l(e){ts(i,n,o,a,l,"throw",e)}a(void 0)}))}}function ns(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return os(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?os(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function os(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function is(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function as(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?is(Object(r),!0).forEach((function(t){ls(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):is(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ls(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ju(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ju(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ju(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var cs=function(e){if(0===e)return"0 Bytes";var t=Math.floor(Math.log(e)/Math.log(1024));return Math.round(e/Math.pow(1024,t)*100)/100+" "+["Bytes","KB","MB","GB"][t]};const us=function(e){var t,r,n,o,i=e.field,a=e.fieldState,l=e.label,u=e.hidePreview,d=void 0!==u&&u,p=e.hideAltText,f=void 0!==p&&p,v=e.previewStyle,h=e.responsive,b=e.responsiveOrientation,y=e.helpText,m=e.allowedMediaType,g=void 0===m?"image":m,E=e.isLottieFile,O=void 0!==E&&E,w=e.placeholder,S=void 0===w?"":w,C=e.showGenAI,x=void 0===C?1:C,P=e.onChange,T=e.onlySource,D=void 0!==T&&T,Z=e.uploadText,R=e.videoPlayIcon,j=e.onlyClearOption,B=e.previewBorderStyle,M=void 0===B?"solid":B,k=(0,L.$)(),N=(0,Zt.d)().showModal,G=(0,c.useRef)(null),W=(0,c.useRef)(null),U=(0,at.v)((function(e){return e.appConfig})),F=ns((0,c.useState)(!1),2),H=F[0],q=F[1],z=ns((0,c.useState)(!1),2),X=z[0],K=z[1],$=ns((0,c.useState)({height:0,width:0,size:0}),2),Y=$[0],Q=$[1],J=function(e,t){return t&&e&&(0,A.HD)(e)?JSON.parse(e):function(e){return(0,A.Kn)(e)&&("src"in e||"alt"in e)}(e)?as(as({},e),{},{src:null!==(r=e.src)&&void 0!==r?r:"",alt:null!==(n=e.alt)&&void 0!==n?n:""}):{src:null!=e?e:"",alt:""};var r,n}(i.value,D);t="string"==typeof J.src?J.src.startsWith("http")?J.src:"".concat(A.Xy.pagebuilderBase).concat(J.src):"",r=!J.src,n=J.src||"",o=J.alt||"";var ee=(0,fe.N)(t);(0,c.useEffect)((function(){var e;null===(e=G.current)||void 0===e||e.load()}),[ee]);var te=function(){var e=rs(es().mark((function e(t){var n,o,i,a,l,c,u,s,d,p;return es().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("image"===g){e.next=2;break}return e.abrupt("return",[0,0,0]);case 2:if(t&&!r){e.next=4;break}return e.abrupt("return",[0,0,0]);case 4:return K(!0),e.prev=5,i=t.startsWith("http://")||t.startsWith("https://"),a=i?t:"".concat(Lr.Z.APPLICATION_ROOT).concat(t),e.next=10,dr(a);case 10:if(l=e.sent,c=null!==(n=null==l?void 0:l.naturalHeight)&&void 0!==n?n:0,u=null!==(o=null==l?void 0:l.naturalWidth)&&void 0!==o?o:0,s=0,i){e.next=26;break}return e.prev=15,e.next=18,fetch(a,{method:"HEAD"});case 18:d=e.sent,(p=d.headers.get("content-length"))&&(s=parseInt(p,10)),e.next=26;break;case 23:e.prev=23,e.t0=e.catch(15),console.warn("Could not fetch file size:",e.t0);case 26:return K(!1),e.abrupt("return",[c,u,s]);case 30:return e.prev=30,e.t1=e.catch(5),console.error("Error loading image metadata:",e.t1),K(!1),e.abrupt("return",[0,0,0]);case 35:case"end":return e.stop()}}),e,null,[[5,30],[15,23]])})));return function(t){return e.apply(this,arguments)}}(),re=function(){N({component:_n,props:{onInsert:function(e){if(O)i.onChange(null==e?void 0:e.path);else{var t,r,n=!d&&(0,A.$K)(null===(t=e.media_attr)||void 0===t?void 0:t.full)?null===(r=e.media_attr)||void 0===r?void 0:r.full:{},o=D?as({},J):{};"image"!==(null==e?void 0:e.type)?D?(i.onChange(JSON.stringify(as(as({},o),{},{src:null==e?void 0:e.path}))),null==P||P(JSON.stringify(as(as({},o),{},{src:null==e?void 0:e.path})))):(i.onChange(as({src:null==e?void 0:e.path},n)),null==P||P(as({src:null==e?void 0:e.path},n))):dr("".concat(Lr.Z.APPLICATION_ROOT).concat(null==e?void 0:e.path)).then((function(t){i.onChange(as({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth,alt:null==J?void 0:J.alt},n)),null==P||P(as({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth,alt:null==J?void 0:J.alt},n))})).catch((function(e){console.log({e})}))}},allowedMediaType:g},closeOnOutsideClick:!0})},oe=function(){O&&i.onChange(""),D?i.onChange(JSON.stringify({src:"",type:null==J?void 0:J.type})):i.onChange({src:"",width:"",height:""})},ie=function(e){return e.replace(/(\.\.\/)+/g,"")};return(0,c.useEffect)((function(){J.src&&!r&&"image"===g?te(J.src).then((function(e){var t=ns(e,3),r=t[0],n=t[1],o=t[2];Q({height:r,width:n,size:o})})):Q({height:0,width:0,size:0})}),[ee,r,g,t]),(0,s.tZ)(ne.Z,{label:l,field:i,fieldState:a,responsive:h,responsiveOrientation:b,helpText:y,children:function(){return(0,s.BX)("div",{css:ss.wrapper,children:[!A.Eu&&U.enable_ai&&(0,Rt.sw)(x)&&(0,s.BX)(s.HY,{children:[("image"===g||"*"===g)&&(0,s.tZ)("div",{css:V.iZ.generateWithAiButtonWrapper,children:(0,s.tZ)(_.Z,{ref:W,onClick:function(){return q(!0)},icon:(0,s.tZ)(I.Z,{name:"wand",height:18,width:18}),css:V.iZ.generateWithAiButton(),children:k("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE_WITH_AI")})}),("image"===g||"*"===g)&&(0,s.tZ)(Yu,{imageFullPath:t,imageUri:J.src,isOpen:H,onClose:function(){q(!1)},onChange:i.onChange,triggerRef:W})]}),!d&&(0,s.tZ)("div",{css:[ss.previewWrapper(M),v,";label:MediaField;"],children:r?(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"upload",height:16,width:16}),buttonContentCss:ss.buttonContentPrimary,onClick:re,children:Z||k("COM_SPPAGEBUILDER_EDITOR_MEDIA_UPLOAD")}):(0,s.BX)(s.HY,{children:["image"===g&&(0,s.tZ)("img",{src:ee,alt:ee,css:ss.imagePreview}),"video"===g&&(0,s.BX)("div",{css:ss.videoWrapper,children:[(0,s.tZ)("video",{muted:!0,ref:G,children:(0,s.tZ)("source",{src:ee,type:"video/mp4"})}),(0,s.tZ)(I.Z,{name:R||"playCircle",height:32,width:32})]}),(0,s.BX)("div",{css:ss.hoverPreview,"data-hover-buttons-wrapper":!0,children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"recycle",height:16,width:16}),buttonContentCss:ss.buttonContentPrimary,onClick:re,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_REPLACE")}),(0,s.tZ)(_.Z,{variant:"secondary",buttonContentCss:ss.buttonContentPrimary,onClick:oe,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")}),"image"===g&&Y.width>0&&(0,s.BX)("div",{css:ss.mediaInfoWrapper,children:[(0,s.BX)("p",{css:ss.mediaInfoText,children:[k("COM_SPPAGEBUILDER_EDITOR_MEDIA_SIZE"),":"," ",Y.size>0?cs(Y.size):"N/A"]}),(0,s.BX)("p",{css:ss.mediaInfoText,children:[k("COM_SPPAGEBUILDER_EDITOR_MEDIA_DIMENSIONS"),": ",Y.width," x ",Y.height," px"]})]})]})]})}),(0,s.BX)("div",{css:ss.inputWrapper,children:[(0,s.tZ)(Kt.Z,{value:n,onChange:function(){var e=rs(es().mark((function e(t){var r,n,o,a,l;return es().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=ie(t),!O){e.next=4;break}return i.onChange(J),e.abrupt("return");case 4:if(D?i.onChange(JSON.stringify(as(as({},J),{},{src:r}))):i.onChange(as(as({},J),{},{src:r})),n=r.startsWith("http")?r:"".concat(A.Xy.pagebuilderBase).concat(r),(0,A.K2)(n,"image")){e.next=8;break}return e.abrupt("return");case 8:return K(!0),e.prev=9,e.next=12,dr(n);case 12:o=e.sent,a=o.naturalHeight,l=o.naturalWidth,i.onChange(as(as({},J),{},{src:r,height:a,width:l}));case 16:return e.prev=16,K(!1),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[9,,16,19]])})));return function(t){return e.apply(this,arguments)}}(),placeholder:S||"",inputCss:ss.inputCss}),r&&!j?(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"upload",height:16,width:16}),buttonContentCss:ss.buttonContent,onClick:re,loading:X,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_UPLOAD")}):(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"cross",height:16,width:16}),buttonContentCss:ss.buttonContent,onClick:oe,loading:X,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]}),!f&&(0,s.tZ)(Kt.Z,{value:o,helperText:"COM_SPPAGEBUILDER_EDITOR_ALT_TEXT_DESC",label:"COM_SPPAGEBUILDER_EDITOR_ALT_TEXT",placeholder:k("COM_SPPAGEBUILDER_EDITOR_ALT_TEXT_PLACEHOLDER"),onChange:function(){var e=rs(es().mark((function e(t){return es().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i.onChange(as(as({},J),{},{alt:t})),P&&P(as(as({},J),{},{alt:t}));case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})]})}})};var ss={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),previewWrapper:function(e){return(0,i.iv)("display:flex;justify-content:center;align-items:center;min-width:200px;width:100%;height:160px;position:relative;overflow:hidden;background-color:",n.qo.base.surface,";border:1px ",e," ",n.qo.stroke.neutral,";border-radius:",n.E0[8],";:hover{[data-hover-buttons-wrapper]{display:flex;opacity:1;}};label:previewWrapper;")},buttonContentPrimary:(0,i.iv)("svg{color:",n.qo.icon.white,";};label:buttonContentPrimary;"),imagePreview:{name:"asd3wq-imagePreview",styles:"height:100%;width:100%;object-fit:contain;label:imagePreview;"},hoverPreview:(0,i.iv)("display:none;justify-content:center;align-items:center;gap:",n.W0[8],";opacity:0;position:absolute;inset:0;background-color:",n.qo.alternate.backdrop,";border-radius:",n.E0[8],";button{height:32px;:last-of-type{background-color:",n.qo.base.white,";}};label:hoverPreview;"),inputWrapper:(0,i.iv)("display:flex;align-items:end;gap:",n.W0[12],";;label:inputWrapper;"),inputCss:(0,i.iv)("padding:0 ",n.W0[12],";;label:inputCss;"),buttonContent:(0,i.iv)(":hover{svg{color:",n.qo.icon.primary,";}}svg{color:",n.qo.icon.default,";};label:buttonContent;"),videoWrapper:(0,i.iv)("position:relative;width:100%;height:100%;>video{width:100%;height:100%;}>svg{position:absolute;left:48%;top:40%;color:",n.qo.icon.white,";};label:videoWrapper;"),mediaInfoWrapper:(0,i.iv)("position:absolute;bottom:",n.W0[12],";padding:",n.W0[4]," ",n.W0[8],";display:flex;flex-direction:column;align-items:center;;label:mediaInfoWrapper;"),mediaInfoText:(0,i.iv)("font-size:12px;color:",n.qo.text.hints,";;label:mediaInfoText;")};function ds(e){return ds="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ds(e)}function ps(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function fs(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ps(Object(r),!0).forEach((function(t){vs(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ps(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function vs(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ds(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ds(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ds(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function hs(){return hs=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},hs.apply(this,arguments)}function bs(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=ms(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}function ys(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||ms(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ms(e,t){if(e){if("string"==typeof e)return gs(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gs(e,t):void 0}}function gs(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Es=function(e,t){return e?t?(0,Gi.Z)(new Date(e.replace(" ","T")),Bn.E_.monthNameDayYearHourMinute):(0,Gi.Z)(new Date(e.replace(" ","T")),Bn.E_.monthNameDayYear):""};const Os=function(e){var t=e.label,r=e.field,o=e.fieldState,i=e.disabled,a=e.loading,l=e.placeholder,u=e.helpText,d=e.isClearable,p=void 0===d||d,f=e.showTime,v=void 0===f||f,h=e.required,b=void 0!==h&&h,y=(0,L.$)(),m=ys((0,c.useState)(!1),2),g=m[0],E=m[1],O=ys((0,c.useState)(r.value),2),w=O[0],S=O[1],C=ys((0,c.useState)({hour:"01",minute:"00",second:"00",period:"AM"}),2),x=C[0],P=C[1],T=ys((0,c.useState)(),2),D=T[0],Z=T[1],R=(0,c.useRef)(null),j=(0,pe.l)({isOpen:g,isDropdown:!0}),B=j.triggerRef,M=j.position,k=j.popoverRef,N=function(e){var t=e.date,n=e.time,o=e.action;if("date"===o&&t){var i=(0,Gi.Z)(t,Bn.E_.altDateFormat),a=(0,A.uf)(x),l="".concat(i," ").concat(a);S(l),r.onChange(l)}if("time"===o&&n){var c,u=null!==(c=null==D?void 0:D.toISOString().split("T")[0])&&void 0!==c?c:(new Date).toISOString().split("T")[0],s="".concat(u," ").concat((0,A.uf)(n));S(s),r.onChange(s)}},G=function(e){var t=e.time,r=e.action,n=e.event;P(t),N({time:t,action:r}),W(n)},W=function(e){var t=null==e?void 0:e.target,r=null==t?void 0:t.parentNode;r&&t&&(r.scrollTop=t.offsetTop-16)},U=function(e){e&&(Z(e),N({date:e,action:"date"}))},F="\n .rdp-day.rdp-selected {\n background-color: ".concat(n.qo.base.primary,";\n color: ").concat(n.qo.base.white,";\n border-radius: ").concat(n.E0[14],";\n }\n ");return(0,c.useEffect)((function(){var e;r.value&&(S(r.value),Z((e=r.value.split(" ")[0],new Date(e))),v&&P(function(e){return(0,A.kl)(e.split(" ")[1])}(r.value)))}),[r.value]),(0,c.useLayoutEffect)((function(){setTimeout((function(){if(g&&v&&R.current){var e,t=bs(R.current.querySelectorAll("ul"));try{for(t.s();!(e=t.n()).done;){var r,n=e.value,o=bs(n.querySelectorAll("li"));try{for(o.s();!(r=o.n()).done;){var i=r.value;"true"===(null==i?void 0:i.getAttribute("data-sppb-isselected"))&&(n.scrollTop=i.offsetTop-16)}}catch(e){o.e(e)}finally{o.f()}n.style.scrollBehavior="smooth"}}catch(e){t.e(e)}finally{t.f()}}}),160)}),[g,v,R.current]),(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:o,disabled:i,loading:a,placeholder:l,helpText:u,required:b,children:function(e){var t=e.attributes,o=hs({},(function(e){if(null==e)throw new TypeError("Cannot destructure "+e)}(t),t));return(0,s.BX)("div",{children:[(0,s.BX)("div",{css:ws.wrapper,ref:B,children:[(0,s.tZ)(Kt.Z,fs(fs({},o),{},{inputCss:ws.input,type:"text",onFocus:function(){return E(!0)},value:Es(w,v),onChange:A.ZT})),(0,s.tZ)("div",{css:ws.icon,children:(0,s.tZ)(I.Z,{name:"collectionDateTimeField"})}),p&&r.value&&(0,s.tZ)(_.Z,{variant:"text",buttonCss:ws.clearButton,onClick:function(){S(""),r.onChange("")},children:(0,s.tZ)(I.Z,{name:"times"})})]}),(0,s.tZ)(pe.h,{isOpen:g,onClickOutside:function(){return E(!1)},children:(0,s.BX)("div",{css:[ws.pickerWrapper(g,v),{left:M.left,top:M.top},";label:DateTimeField;"],ref:k,children:[(0,s.tZ)("div",{css:ws.backdrop,onClick:function(){return E(!1)},role:"presentation"}),(0,s.tZ)("style",{children:F}),(0,s.tZ)(Wi._W,{captionLayout:"dropdown",mode:"single",defaultMonth:D,selected:D,onSelect:U,endMonth:new Date((new Date).getFullYear()+10,11),showOutsideDays:!0,styles:{root:{paddingTop:"".concat(n.W0[8])}},style:vs({},"--rdp-selected-border","none")}),v&&(0,s.BX)("div",{css:ws.timeWrapper,ref:R,children:[(0,s.tZ)("ul",{css:ws.timeColumn,children:["12","01","02","03","04","05","06","07","08","09","10","11"].map((function(e){return(0,s.tZ)("li",{"aria-label":"".concat(e," hours"),"data-sppb-isselected":x.hour===e,css:ws.timeColumnItem({isSelected:x.hour===e}),onClick:function(t){return G({time:fs(fs({},x),{},{hour:e}),action:"time",event:t})},children:e},e)}))}),(0,s.tZ)("ul",{css:ws.timeColumn,children:(0,A.Fw)({start:0,end:60,step:1}).map((function(e){var t=e.toString().padStart(2,"0");return(0,s.tZ)("li",{"aria-label":"".concat(t," minutes"),"data-sppb-isselected":x.minute===t,css:ws.timeColumnItem({isSelected:x.minute===t}),onClick:function(e){G({time:fs(fs({},x),{},{minute:t}),action:"time",event:e})},children:t},e)}))}),(0,s.BX)("ul",{css:ws.timeColumn,children:[(0,s.tZ)("li",{"aria-label":"AM","data-sppb-isselected":"AM"===x.period,css:ws.timeColumnItem({isSelected:"AM"===x.period}),onClick:function(e){return G({time:fs(fs({},x),{},{period:"AM"}),action:"time",event:e})},children:y("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_AM")}),(0,s.tZ)("li",{"aria-label":"PM","data-sppb-isselected":"PM"===x.period,css:ws.timeColumnItem({isSelected:"PM"===x.period}),onClick:function(e){return G({time:fs(fs({},x),{},{period:"PM"}),action:"time",event:e})},children:y("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_PM")})]})]})]})})]})}})};var _s={name:"18vvkfu-pickerWrapper",styles:"visibility:visible;label:pickerWrapper;"},ws={wrapper:{name:"9kz1uc-wrapper",styles:":hover{&>button{opacity:1;}};label:wrapper;"},input:(0,i.iv)("padding-left:",n.W0[40],";caret-color:transparent;;label:input;"),icon:(0,i.iv)("position:absolute;top:50%;padding-left:",n.W0[2],";transform:translateY(-50%);border-right:1px solid ",n.qo.stroke.neutral,";height:100%;display:flex;align-items:center;justify-content:center;width:",n.W0[32],";;label:icon;"),pickerWrapper:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=arguments.length>1?arguments[1]:void 0;return(0,i.iv)("display:flex;position:absolute;background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";max-height:348px;",t?"padding-left: ".concat(n.W0[24],";"):"padding: ".concat(n.W0[12]," ").concat(n.W0[24],";")," visibility:hidden;",e&&_s," .rdp-caption_label{",o.c.heading6(),";}.rdp-day_outside{color:",n.qo.text.disabled,";};label:pickerWrapper;")},backdrop:(0,i.iv)(V.iZ.centeredFlex,";position:fixed;inset:0;z-index:",n.W5.negative,";;label:backdrop;"),clearButton:(0,i.iv)("position:absolute;top:50%;right:",n.W0[4],";transform:translateY(-50%);width:32px;height:32px;",V.iZ.flexCenter(),";opacity:0;transition:background-color 0.3s ease-in-out,opacity 0.3s ease-in-out;:hover{background-color:",n.qo.background.hover,";};label:clearButton;"),timeWrapper:(0,i.iv)("display:flex;padding-left:",n.W0[12],";;label:timeWrapper;"),timeColumn:(0,i.iv)("display:flex;flex-direction:column;gap:12px;overflow:auto;text-align:center;padding-bottom:",n.W0[56],";padding-top:",n.W0[16],";border-left:1px solid ",n.qo.stroke.neutral,";padding-inline:",n.W0[12],";",V.iZ.hideScrollbar,";;label:timeColumn;"),timeColumnItem:function(e){var t=e.isSelected;return(0,i.iv)(o.c.body("medium"),";padding:",n.W0[8],";border-radius:",n.E0[10],";cursor:pointer;user-select:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;&:last-of-type{margin-bottom:",n.W0[256],";}",t&&(0,i.iv)("background:",n.qo.base.primary,";color:",n.qo.base.white,";;label:timeColumnItem;")," &:hover{background:",n.qo.base.primary,";color:",n.qo.base.white,";};label:timeColumnItem;")}};function Is(e,t){var r=null==e?"":String(e);return t.values.some((function(e){return"="===t.sign?r===e:r!==e}))}function Ss(e,t){if(null==e||!e.length)return!0;for(var r=null,n=0;n<e.length;n++){var o=e[n],i=Is(t(o.path),o);r=null!==r?"OR"===(o.op||"AND")?r||i:r&&i:i}return!1!==r}function Cs(e){return Cs="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Cs(e)}function xs(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ps(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xs(Object(r),!0).forEach((function(t){Ls(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xs(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ls(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Cs(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Cs(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Cs(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function As(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Ts=["Article","BlogPosting","Book","Event","JobPosting","Organization","Person","Recipe","Custom"];function Ds(e){if(null==e||!e.length)return{};var t,r={},n=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return As(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?As(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(e);try{for(n.s();!(t=n.n()).done;){var o,i=t.value,a=i.type.toLowerCase();if("hidden"===a)r[i.name]=null!==(o=i.default)&&void 0!==o?o:"";else if("subform"===a)r[i.name]=i.multiple?[]:Ds(i.fields);else{var l;r[i.name]=null!==(l=i.default)&&void 0!==l?l:""}}}catch(e){n.e(e)}finally{n.f()}return r}var Zs=function(e){var t=e.child,r=e.childPrefix,n=(0,It.Gc)();return(0,It.qo)({control:n.control,name:"attribs.schema"}),Ss(t.showon,n.getValues)?(0,s.tZ)("div",{css:ks.based,children:(0,s.tZ)(Rs,{node:t,pathPrefix:r})}):null},Rs=function e(t){var r,n=t.node,o=t.pathPrefix,i=(0,It.Gc)(),a=i.register,l=(0,L.$)(),c="".concat(o,".").concat(n.name),u=n.type.toLowerCase(),d="PLG_SYSTEM_SCHEMAORG_FIELD_SCHEMA_DESCRIPTION_NOT_CONFIGURATED_ADMIN"===n.description?l("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_EMPTY")||n.description:null;if((0,It.qo)({control:i.control,name:"attribs.schema"}),!Ss(n.showon,i.getValues))return null;if("hidden"===u)return(0,s.tZ)("input",Ps(Ps({type:"hidden"},a(c)),{},{defaultValue:null!==(r=n.default)&&void 0!==r?r:""}),c);if("note"===u)return d||n.label?(0,s.BX)("div",{css:ks.note,className:n.class,children:[!!n.label&&(0,s.tZ)("strong",{css:ks.noteTitle,children:n.label}),d&&(0,s.tZ)("span",{children:d})]},c):null;if("subform"===u){var p,f;if(n.multiple)return(0,s.tZ)(Bs,{node:n,arrayPath:c},c);var v,h="".concat(o,".").concat(n.name);return n.loadError?(0,s.tZ)("p",{css:ks.errorText,children:n.loadError},c):Ts.includes(null!==(p=n.valuePath.split(".")[1])&&void 0!==p?p:"")&&3===n.valuePath.split(".").length?(0,s.tZ)(Fu.Z,{header:{title:n.label},children:null===(v=n.fields)||void 0===v?void 0:v.map((function(e){return(0,s.tZ)(Zs,{child:e,childPrefix:h},"".concat(h,".").concat(e.name))}))},c):(0,s.tZ)("div",{css:ks.nested,children:null===(f=n.fields)||void 0===f?void 0:f.map((function(t){return(0,s.tZ)(e,{node:t,pathPrefix:h},"".concat(h,".").concat(t.name))}))},c)}if("list"===u){var b,y=(null!==(b=n.options)&&void 0!==b?b:[]).map((function(e){return{value:e.value,label:e.label}}));return(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Yt.Z,Ps(Ps({},e),{},{label:n.label,helpText:n.description||void 0,options:y,isClearable:!1}))}},c)}return"textarea"===u||"editor"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Hn,Ps(Ps({},e),{},{label:n.label,helpText:n.description||void 0,hideMaxLimit:1}))}},c):"calendar"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Os,Ps(Ps({},e),{},{label:n.label,helpText:n.description||void 0,showTime:!!n.showTime}))}},c):"media"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){var t,r="string"==typeof e.field.value?e.field.value:null!==(t=e.field.value.src)&&void 0!==t?t:"";return(0,s.tZ)(us,Ps(Ps({},e),{},{field:Ps(Ps({},e.field),{},{value:{src:r,alt:""}}),hidePreview:!1,hideAltText:!0,previewStyle:ks.previewStyle,label:n.label,helpText:n.description||void 0,onChange:function(t){var r;e.field.onChange(null!==(r=t.src)&&void 0!==r?r:"")}}))}},c):"checkbox"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:!1,render:function(e){return(0,s.tZ)(ue,Ps(Ps({},e),{},{label:n.label,description:n.description||void 0}))}},c):"number"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Qe.Z,Ps(Ps({},e),{},{type:"number",label:n.label,helpText:n.description||void 0}))}},c):"email"===u?(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Qe.Z,Ps(Ps({},e),{},{type:"email",label:n.label,helpText:n.description||void 0}))}},c):(0,s.tZ)(It.Qr,{control:i.control,name:c,defaultValue:"",render:function(e){return(0,s.tZ)(Qe.Z,Ps(Ps({},e),{},{label:n.label,helpText:n.description||void 0}))}},c)},js=function(e){var t=e.id,r=e.rowTitle,o=e.onRemove,i=e.dragLabel,a=e.removeLabel,l=e.children,c=e.isBorderRadiusBottom,u=(0,C.nB)({id:t}),d=u.attributes,p=u.listeners,f=u.setNodeRef,v=u.transform,h=u.transition,b=u.isDragging,y=c?"".concat(n.E0[6]):"none",m=c?"".concat(n.E0[6]):"none";return(0,s.BX)("div",{ref:f,css:[ks.sortableRow,b&&ks.sortableRowDragging,";label:SortableRepeatableRow;"],style:{transform:x.ux.Transform.toString(v),transition:h,borderBottomLeftRadius:y,borderBottomRightRadius:m},children:[(0,s.BX)("div",{css:ks.repeatableItemToolbar,children:[(0,s.tZ)("button",Ps(Ps(Ps({type:"button",css:ks.dragHandle,"aria-label":i},d),p),{},{children:(0,s.tZ)(I.Z,{name:"dragger",width:16,height:16,style:ks.dragHandleIcon})})),(0,s.tZ)("span",{css:ks.repeatableItemTitle,children:r}),(0,s.tZ)("button",{type:"button",css:ks.removeItemBtn,"aria-label":a,onClick:o,children:(0,s.tZ)(I.Z,{name:"cross",width:14,height:14,style:ks.removeItemIcon})})]}),(0,s.tZ)("div",{css:ks.repeatableItemFields,children:l})]})},Bs=function(e){var t=e.node,r=e.arrayPath,n=(0,It.Gc)(),o=(0,L.$)(),i=(0,It.Dq)({control:n.control,name:r}),a=i.fields,l=i.append,c=i.remove,u=i.move,d=r,p=(0,zn.Dy)((0,zn.VT)(zn.we,{activationConstraint:{distance:8}}),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is}));return(0,s.tZ)(Fu.Z,{header:{title:(0,s.BX)("div",{css:ks.repeatableCardHeader,children:[(0,s.tZ)("span",{css:ks.repeatableCardTitle,children:t.label}),(0,s.tZ)("button",{type:"button",css:ks.repeatableAddIconBtn,"aria-label":o("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SCHEMA_ADD_FIELD"),onClick:function(){return l(Ds(t.fields))},children:(0,s.tZ)(I.Z,{name:"plus",width:12,height:12,style:ks.repeatableAddIconSvg})})]})},titleActionCssReplace:ks.repeatableCardTitleAction,children:(0,s.tZ)("div",{children:(0,s.tZ)(zn.LB,{sensors:p,collisionDetection:zn.pE,onDragEnd:function(e){var t=e.active,r=e.over;if(r&&t.id!==r.id){var n=a.findIndex((function(e){return e.id===t.id})),o=a.findIndex((function(e){return e.id===r.id}));-1!==n&&-1!==o&&u(n,o)}},children:(0,s.tZ)(C.Fo,{items:a.map((function(e){return e.id})),strategy:C.qw,children:(0,s.tZ)("div",{children:a.map((function(e,r){var n;return(0,s.tZ)(js,{id:e.id,rowTitle:o("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SCHEMA_GENERIC_FIELD_N",{n:r+1}),dragLabel:o("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SCHEMA_REPEATABLE_DRAG_ORDER"),removeLabel:o("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SCHEMA_REMOVE_FIELD"),onRemove:function(){return c(r)},isBorderRadiusBottom:r===a.length-1,children:null===(n=t.fields)||void 0===n?void 0:n.map((function(e){return(0,s.tZ)(Rs,{node:e,pathPrefix:"".concat(d,".").concat(r)},"".concat(d,".").concat(r,".").concat(e.name))}))},e.id)}))})})})})})};const Ms=Rs;var ks={nested:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:nested;"),based:(0,i.iv)("padding:",n.W0[8],";;label:based;"),note:(0,i.iv)(o.c.caption(),";;label:note;"),noteTitle:(0,i.iv)("display:block;margin-bottom:",n.W0[8],";;label:noteTitle;"),errorText:(0,i.iv)("color:",n.qo.text.hints,";",o.c.caption(),";;label:errorText;"),repeatableCardTitleAction:{name:"155ywbv-repeatableCardTitleAction",styles:"display:inline;label:repeatableCardTitleAction;"},repeatableCardHeader:(0,i.iv)("display:flex;width:100%;align-items:center;justify-content:space-between;gap:",n.W0[12],";background-color:",n.qo.base.white,";;label:repeatableCardHeader;"),repeatableCardTitle:(0,i.iv)(o.c.caption("medium"),";color:",n.qo.text.default,";;label:repeatableCardTitle;"),repeatableAddIconBtn:(0,i.iv)(V.iZ.resetButton,";width:20px;height:20px;min-width:20px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:",n.E0[4],";background:",n.qo.action.primary.default,";color:",n.qo.base.white,";box-shadow:",n.AF.button,";&:hover:not(:disabled){background:",n.qo.action.primary.hover,";}&:focus-visible{outline:2px solid ",n.qo.action.primary.focus,";outline-offset:2px;};label:repeatableAddIconBtn;"),repeatableAddIconSvg:(0,i.iv)("color:",n.qo.base.white,";;label:repeatableAddIconSvg;"),sortableRow:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12]," ",n.W0[16]," ",n.W0[16],";background-color:",n.qo.base.white,";&+&{border-top:1px solid ",n.qo.stroke.neutral,";};label:sortableRow;"),sortableRowDragging:(0,i.iv)("opacity:0.85;box-shadow:",n.AF.popover,";z-index:1;;label:sortableRowDragging;"),repeatableItemToolbar:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[10],";min-height:28px;;label:repeatableItemToolbar;"),dragHandle:(0,i.iv)(V.iZ.resetButton,";flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:",n.W0[4],";margin:-",n.W0[4]," 0 -",n.W0[4]," -",n.W0[4],";cursor:grab;border-radius:",n.E0[4],";color:",n.qo.icon.default,";&:active{cursor:grabbing;}&:focus-visible{outline:2px solid ",n.qo.action.primary.focus,";outline-offset:1px;};label:dragHandle;"),dragHandleIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:dragHandleIcon;"),repeatableItemTitle:(0,i.iv)("flex:1;",o.c.caption("medium"),";color:",n.qo.text.default,";;label:repeatableItemTitle;"),removeItemBtn:(0,i.iv)(V.iZ.resetButton,";flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border-radius:",n.E0[4],";color:",n.qo.text.neutral,";&:hover{color:",n.qo.text.default,";background-color:",n.qo.background.hover,";}&:focus-visible{outline:2px solid ",n.qo.action.primary.focus,";outline-offset:1px;};label:removeItemBtn;"),removeItemIcon:{name:"10tt9vb-removeItemIcon",styles:"color:inherit;label:removeItemIcon;"},repeatableItemFields:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:repeatableItemFields;"),previewStyle:(0,i.iv)("background-color:",n.qo.background.white,";;label:previewStyle;")};const Ns=function(){var e,t,r=(0,L.$)(),o=(t=(0,ve.p)().showToast,(0,be.a)({queryKey:["ContentArticleSchemaForm"],queryFn:function(){return ge.u.get(he.H.CONTENT_ARTICLE_SCHEMA_FORM).then((function(e){return e.data}))},staleTime:3e5,onError:function(e){t({type:"danger",message:e.message})}}));if(o.isLoading)return(0,s.BX)("div",{css:Gs.centered,children:[(0,s.tZ)(Ye.ZP,{size:24}),(0,s.tZ)("span",{css:Gs.loadingText,children:r("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_LOADING")})]});if(o.isError)return(0,s.tZ)("div",{css:Gs.padded,children:(0,s.tZ)("p",{css:Gs.error,children:r("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_ERROR")})});var i,a=o.data;if(!a.available)return(0,s.tZ)("div",{css:Gs.padded,children:(0,s.tZ)("p",{css:Gs.muted,children:null!==(i=a.message)&&void 0!==i?i:r("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_UNAVAILABLE")})});var l=null!==(e=a.fields)&&void 0!==e?e:[];if(a.form_empty||!l.length){var c=a.link?r("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_NOT_CONFIGURED",{link:a.link}):r("COM_SPPAGEBUILDER_EDITOR_SCHEMA_FORM_EMPTY");return(0,s.tZ)("div",{css:Gs.padded,children:(0,s.tZ)("p",{css:Gs.muted,dangerouslySetInnerHTML:{__html:c}})})}return(0,s.tZ)("div",{style:{paddingTop:0,display:"flex",flexDirection:"column",gap:n.W0[12]},children:l.map((function(e){return(0,s.tZ)(Ms,{node:e,pathPrefix:"attribs.schema"},"".concat(e.name,"-").concat(e.valuePath))}))})};var Gs={fieldsWrapper:(0,i.iv)("padding:",n.W0[16]," ",n.W0[10],";display:flex;flex-direction:column;gap:",n.W0[12],";",V.iZ.overflowYAuto,";max-height:100%;;label:fieldsWrapper;"),padded:(0,i.iv)("background-color:",n.qo.background.white,";border-radius:",n.E0[4],";padding:",n.W0[16]," ",n.W0[10],";;label:padded;"),centered:(0,i.iv)("padding:",n.W0[24],";display:flex;flex-direction:column;align-items:center;gap:",n.W0[12],";;label:centered;"),loadingText:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";;label:loadingText;"),muted:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";margin:0;;label:muted;"),error:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";margin:0;;label:error;")};function Ws(e){return Ws="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ws(e)}function Us(){Us=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Ws(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Fs(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Hs(e,t){if(e){if("string"==typeof e)return qs(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qs(e,t):void 0}}function qs(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Vs(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zs(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Vs(Object(r),!0).forEach((function(t){Xs(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vs(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Xs(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ws(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ws(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ws(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Ks=function(e){var t=e.fields,r=e.type,n=(0,L.$)();return t&&t[r]?(0,s.BX)("div",{css:Qs.dynamicFieldsWrapper,children:[(0,s.tZ)("span",{children:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_AVAILABLE_VARIABLES")}),t[r].map((function(e,t){return(0,s.tZ)("span",{"data-variable":!0,children:e.label},t)}))]}):null},$s=function(e){var t,r,n=e.form,o=n.watch("og_image"),i="dynamic_content:detail"===n.getValues("extension_view"),a=(0,L.$)();return i?(0,s.BX)("div",{css:Qs.openGraphImageWrapper,children:[(0,s.tZ)("span",{css:Qs.openGraphImageLegend,children:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_LEGEND")}),(0,s.BX)("div",{children:[(0,s.tZ)("label",{css:Qs.imageTypeLabel,children:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_SOURCE")}),(0,s.BX)(lc.$x,{onSelect:function(e){n.setValue("og_image",zs(zs({},n.getValues("og_image")),{},{type:e}))},value:(0,A.$K)(o.type)&&o.type&&null!==(t=o.type)&&void 0!==t?t:"fixed",children:[(0,s.tZ)(lc.i4,{children:(0,s.tZ)(lc.ki,{placeholder:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_SOURCE_PLACEHOLDER")})}),(0,s.BX)(lc.Bw,{children:[(0,s.tZ)(lc.Ql,{value:"fixed",children:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_SOURCE_MEDIA_MANAGER")}),(0,s.tZ)(lc.Ql,{value:"variable",children:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_SOURCE_DYNAMIC_VARIABLE")})]})]})]}),(0,s.tZ)("div",{children:"variable"===o.type?(0,s.BX)(s.HY,{children:[(0,s.tZ)("label",{css:Qs.imageTypeLabel,children:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_SOURCE_DYNAMIC_VARIABLE")}),(0,s.BX)(lc.$x,{onSelect:function(e){n.setValue("og_image",{src:e,type:"variable"},{shouldDirty:!0})},value:null!==(r=n.getValues("og_image").src)&&void 0!==r?r:"",children:[(0,s.tZ)(lc.i4,{disabled:!n.getValues("dynamic_fields").image.length,children:(0,s.tZ)(lc.ki,{placeholder:"Choose a variable"})}),!!n.getValues("dynamic_fields").image.length&&(0,s.tZ)(lc.Bw,{children:n.getValues("dynamic_fields").image.map((function(e,t){return(0,s.tZ)(lc.Ql,{value:e.label,children:e.label},t)}))})]})]}):(0,s.tZ)(It.Qr,{control:n.control,name:"og_image",render:function(e){var t=zs(zs({},e),{},{field:zs(zs({},e.field),{},{value:zs(zs({},e.field.value),{},{src:/{{/g.test(e.field.value.src)?"":e.field.value.src,type:"fixed"})})});return(0,s.tZ)(us,zs(zs({},t),{},{hidePreview:!1,label:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE"),previewStyle:Qs.mediaFieldPreview,helpText:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_DESC"),placeholder:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_PLACEHOLDER"),onChange:function(e){var t;n.setValue("og_image",zs(zs({},n.getValues("og_image")),{},{src:null!==(t=e.src)&&void 0!==t?t:"",type:"fixed"}),{shouldDirty:!0})}}))}},"og_image:fixed")})]}):(0,s.tZ)(It.Qr,{control:n.control,name:"og_image",render:function(e){var t,r=zs(zs({},e),{},{field:zs(zs({},e.field),{},{value:zs(zs({},e.field.value),{},{src:/{{/g.test(e.field.value.src)?"":e.field.value.src,type:"fixed",alt:null!==(t=e.field.value.alt)&&void 0!==t?t:""})})});return(0,s.tZ)(us,zs(zs({},r),{},{hidePreview:!1,label:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE"),previewStyle:Qs.mediaFieldPreview,helpText:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_DESC"),placeholder:a("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_IMAGE_PLACEHOLDER"),onChange:function(e){var t,r;n.setValue("og_image",zs(zs({},n.getValues("og_image")),{},{src:null!==(t=e.src)&&void 0!==t?t:"",type:"fixed",alt:null!==(r=e.alt)&&void 0!==r?r:""}),{shouldDirty:!0})}}))}})};const Ys=function(){var e,t,r=(0,It.Gc)(),n=(0,L.$)(),o=(e=(0,c.useState)("basic"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Hs(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=(0,at.v)((function(e){return e.appConfig})),u=(0,er.Q)(),d=(0,$o.Z)(Oo.F.PageEditor),p=d.id,f=d.type,v=(0,Zt.d)().showModal,h=(0,_o.s0)(),b=(0,Si.mp)(),y=ji().savePageContent,m=(0,Ci.T)().closeSettingPanel,g="com_easystore"===r.getValues("extension")&&(0,A.$K)(f),E=function(){var e,t=(e=Us().mark((function e(t){var n,o;return Us().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=r.getValues("language"),t!==n){e.next=3;break}return e.abrupt("return");case 3:return e.next=5,y();case 5:if(e.sent){e.next=8;break}return e.abrupt("return");case 8:return e.next=10,b.mutateAsync({type:f,title:"",language:t});case 10:o=e.sent,(0,A.$K)(o.id)&&(m(),h(Oo.F.PageEditor.buildLink({id:o.id.toString(),type:f})));case 12:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Fs(i,n,o,a,l,"next",e)}function l(e){Fs(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}(),O=[{label:n("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1},{label:n("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0},{label:n("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2}],w=[{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_USE_GLOBAL"),value:"global"},{label:"index, follow",value:"index, follow"},{label:"noindex, follow",value:"noindex, follow"},{label:"index, nofollow",value:"index, nofollow"},{label:"noindex, nofollow",value:"noindex, nofollow"}],S=[{value:"website",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_WEBSITE")},{value:"article",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_ARTICLE")},{value:"video.movie",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_MOVIE")},{value:"video.tv_show",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_TV_SHOW")},{value:"music.album",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_ALBUM")},{value:"book",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_BOOK")},{value:"profile",label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_PROFILE")}],C="article"===r.getValues("extension_view"),x=[{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_BASIC"),value:"basic"}].concat(function(e){return function(e){if(Array.isArray(e))return qs(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Hs(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(C?[]:[{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SEO"),value:"seo"},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_SCHEMA_TAB"),value:"schema"}]),[{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_CSS"),value:"css"}]),P=u.edit_state,T=u.admin||u.manage,D="dynamic_content:detail"===r.getValues("extension_view");return(0,s.BX)("div",{css:Qs.wrapper,children:[(0,s.tZ)(Na,{tabList:x,activeTab:i,onChange:a}),"basic"===i&&(0,s.BX)("div",{css:Qs.fieldsWrapper,children:[(0,s.tZ)(It.Qr,{control:r.control,name:"catid",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_CATEGORY"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_CATEGORY_PLACEHOLDER"),options:l.categories}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"published",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_STATUS"),options:O,disabled:!P}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"language",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{field:g?zs(zs({},e.field),{},{onChange:A.ZT}):e.field,onChange:g?function(e){return E(String(e.value))}:void 0,label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_LANGUAGE"),options:l.languages}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"access",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_ACCESS"),options:l.access_levels}))}}),T&&(0,s.BX)("div",{css:Qs.permissionButtonWrapper,children:[(0,s.tZ)("h5",{children:n("COM_SPPAGEBUILDER_EDITOR_PERMISSION_BUTTON_LABEL")}),(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"cog"}),variant:"secondary",disabled:!r.getValues("asset_id"),onClick:function(){v({component:ei,props:{title:n("COM_SPPAGEBUILDER_EDITOR_PERMISSION_MODAL_TITLE"),id:Number(p)}})},children:n("COM_SPPAGEBUILDER_EDITOR_MANAGE_PERMISSION_BUTTON_LABEL")}),!r.getValues("asset_id")&&(0,s.tZ)("p",{children:n("COM_SPPAGEBUILDER_EDITOR_MANAGE_PERMISSION_HELP_TEXT")})]})]}),"schema"===i&&(0,s.tZ)("div",{css:Qs.fieldsWrapper,children:(0,s.tZ)(Ns,{})}),"css"===i&&(0,s.tZ)("div",{css:Qs.fieldsWrapper,children:(0,s.tZ)(It.Qr,{control:r.control,name:"css",render:function(e){return(0,s.tZ)(uc,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_CUSTOM_CSS")}))}})}),"seo"===i&&(0,s.BX)("div",{css:Qs.fieldsWrapper,children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.meta_description",rules:{maxLength:{value:160,message:n("COM_SPPAGEBUILDER_EDITOR_META_DESCRIPTION_MAX_LENGTH")}},render:function(e){return(0,s.tZ)(Hn,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_DESCRIPTION"),helpText:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_DESCRIPTION_DESC"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_DESCRIPTION_PLACEHOLDER"),isCharacterCountVisible:!1,hideMaxLimit:1}))}}),D&&(0,s.tZ)(Ks,{fields:r.getValues("dynamic_fields"),type:"text"}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.meta_keywords",render:function(e){return(0,s.tZ)(Hn,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_KEYWORDS"),helpText:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_KEYWORDS_DESC"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_META_KEYWORDS_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.robots",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_ROBOTS"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_ROBOTS_PLACEHOLDER"),options:w}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.og_type",render:function(e){return(0,s.tZ)(Yt.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE"),options:S,helpText:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_DESC"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TYPE_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{control:r.control,name:"og_title",render:function(e){return(0,s.tZ)(Qe.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TITLE"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_TITLE_PLACEHOLDER")}))}}),D&&(0,s.tZ)(Ks,{fields:r.getValues("dynamic_fields"),type:"text"}),(0,s.tZ)($s,{form:r}),(0,s.tZ)(It.Qr,{control:r.control,name:"og_description",render:function(e){return(0,s.tZ)(Hn,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_DESCRIPTION"),helpText:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_DESC_DESC"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_OG_DESCRIPTION_PLACEHOLDER")}))}}),D&&(0,s.tZ)(Ks,{fields:r.getValues("dynamic_fields"),type:"text"}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.author",render:function(e){return(0,s.tZ)(Qe.Z,zs(zs({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_AUTHOR"),helpText:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_AUTHOR_DESC"),placeholder:n("COM_SPPAGEBUILDER_EDITOR_PAGE_SETTINGS_AUTHOR_PLACEHOLDER")}))}})]})]})};var Qs={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";background-color:",n.qo.base.surface,";height:100%;border-right:1px solid ",n.qo.stroke.neutral,";;label:wrapper;"),openGraphImageWrapper:(0,i.iv)("position:relative;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";padding:",n.W0[16]," ",n.W0[8],";display:flex;flex-direction:column;gap:",n.W0[16],";margin-block:",n.W0[16],";;label:openGraphImageWrapper;"),openGraphImageLegend:(0,i.iv)("position:absolute;top:-",n.W0[12],";left:",n.W0[8],";background-color:",n.qo.base.surface,";padding:",n.W0[4]," ",n.W0[8],";",o.c.caption(),";color:",n.qo.text.default,";;label:openGraphImageLegend;"),dynamicFieldsWrapper:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";display:flex;align-items:center;flex-wrap:wrap;gap:",n.W0[4],";[data-variable]{color:",n.qo.text.default,";};label:dynamicFieldsWrapper;"),imageTypeLabel:(0,i.iv)(o.c.caption(),";color:",n.qo.text.default,";margin-bottom:",n.W0[4],";;label:imageTypeLabel;"),fieldsWrapper:(0,i.iv)("padding:",n.W0[16]," ",n.W0[10],";display:flex;flex-direction:column;gap:",n.W0[12],";;label:fieldsWrapper;"),mediaFieldPreview:(0,i.iv)("background-color:",n.qo.background.white,";;label:mediaFieldPreview;"),permissionButtonWrapper:(0,i.iv)("h5{",o.c.caption()," color:",n.qo.text.default,";margin-bottom:",n.W0[4],";}p{",o.c.caption(),";color:",n.qo.text.hints,";margin-top:",n.W0[4],";};label:permissionButtonWrapper;")};const Js=function(e){var t=e.title;return(0,s.tZ)("div",{css:ed.separator,children:t&&(0,s.tZ)("div",{css:ed.title,children:t})})};var ed={separator:(0,i.iv)("width:calc(100% + 24px);height:1px;background-color:",n.qo.stroke.neutral,";margin-block:",n.W0[10],";margin-inline:-",n.W0[12],";position:relative;;label:separator;"),title:(0,i.iv)("position:absolute;top:50%;left:10px;transform:translateY(-50%);font-size:12px;line-height:12px;color:",n.qo.text.default,";background-color:#fff;padding-inline:4px;;label:title;")},td=r(3579),rd=r(7870);function nd(e){return nd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},nd(e)}var od=["css"];function id(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ad(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?id(Object(r),!0).forEach((function(t){ld(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):id(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ld(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==nd(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==nd(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nd(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function cd(e){return function(e){if(Array.isArray(e))return sd(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ud(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ud(e,t){if(e){if("string"==typeof e)return sd(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sd(e,t):void 0}}function sd(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const dd=function(e){var t,r,n=e.field,o=e.fieldState,a=e.label,l=e.disabled,u=e.wrapperCss,d=e.responsive,p=e.responsiveOrientation,f=e.helpText,v=(0,L.$)(),h=(t=(0,c.useState)(null),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||ud(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=h[0],y=h[1],m=[{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_FADE"),value:"fade",icon:(0,s.tZ)(I.Z,{name:"fadeIn",width:32,height:34})},{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_ROTATE"),value:"rotate",icon:(0,s.tZ)(I.Z,{name:"spinIn",width:38,height:53})},{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_FLIP"),value:"flip",icon:(0,s.tZ)(I.Z,{name:"flipIn",height:40,width:35})},{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_BOUNCE"),value:"bounce",icon:(0,s.tZ)(I.Z,{name:"bounceIn",height:34,width:54})},{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_ZOOM"),value:"zoom",icon:(0,s.tZ)(I.Z,{name:"zoomIn",width:36,height:36})},{label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_OPTION_SPECIAL"),value:"special",icon:(0,s.tZ)(I.Z,{name:"reveal",width:33,height:35})}],g=(0,c.useCallback)((function(){if(!n.value)return null;for(var e=0,t=["fade","flip","rotate","zoom","bounce"];e<t.length;e++){var r=t[e];if(n.value.includes(r))return r}return"special"}),[n.value]);(0,c.useEffect)((function(){y(g())}),[g]);var E=(0,c.useMemo)((function(){return(0,A.$K)(b)?(0,A.Lg)(Bn.sF[b]):[]}),[b]),O=(0,c.useMemo)((function(){var e;if(0!==E.length)return n.value&&null!==(e=E.find((function(e){return e.value===n.value})))&&void 0!==e?e:E[0]}),[n.value,E]);return(0,s.tZ)(ne.Z,{field:n,fieldState:o,label:a,disabled:l,responsive:d,responsiveOrientation:p,helpText:f,children:function(e){var t=e.attributes,r=(e.data,t.css),o=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,od);return(0,s.BX)("div",{css:[pd.wrapper,u,";label:AnimationField;"],children:[m.map((function(e,t){return(0,i.az)(td.Z,ad(ad({},o),{},{key:t,inputCss:[].concat(cd(r),[pd.radioInput]),value:e.value,checked:e.value===b,label:e.label,icon:e.icon,disabled:l,labelCss:pd.radioLabel({isActive:e.value===b}),iconWrapperCss:pd.iconWrapperCss({isActive:e.value===b}),onChange:function(){y(e.value);var t=(0,A.Lg)(Bn.sF[e.value])[0];n.onChange(t.value)},__source:{fileName:"/Users/sifathaque/Herd/sppb/administrator/components/com_sppagebuilder/assets/editor/src/components/fields/AnimationField.tsx",lineNumber:133,columnNumber:15}}))})),E.length>0&&(0,s.tZ)(rd.Z,{options:E,value:O,label:v("COM_SPPAGEBUILDER_EDITOR_ANIMATION_FIELD_DIRECTION"),onChange:function(e){n.onChange(e.value)}})]})}})};var pd={wrapper:(0,i.iv)("display:flex;flex-wrap:wrap;gap:",n.W0[20],";;label:wrapper;"),radioLabel:function(e){var t=e.isActive,r=void 0!==t&&t;return(0,i.iv)(o.c.caption(),";display:flex;flex-direction:column;flex:1;gap:",n.W0[8],";position:relative;transition:color 0.3s ease;span{transition:border 0.3s ease;color:",n.qo.icon.default,";}&:hover{span{border:1px solid ",n.qo.action.outline.hover,";}}",r&&(0,i.iv)("color:",n.qo.text.primary,";;label:radioLabel;"),";;label:radioLabel;")},iconWrapperCss:function(e){var t=e.isActive,r=void 0!==t&&t;return(0,i.iv)(V.iZ.flexCenter(),";width:74px;height:74px;background-color:",n.qo.base.surface,";border:1px solid transparent;border-radius:",n.E0[8],";transition:background-color 0.3s ease;svg{transition:color 0.3s ease;}",r&&(0,i.iv)("color:",n.qo.text.default,";background-color:",n.qo.background.active,";border:1px solid ",n.qo.action.outline.active,";svg{color:",n.qo.icon.primary,";};label:iconWrapperCss;"),";;label:iconWrapperCss;")},radioInput:{name:"sqhq9v-radioInput",styles:"height:100%;width:100%;label:radioInput;"}},fd=r(3581),vd=r(6486),hd=r.n(vd);function bd(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const yd=function(e){var t,r,n=e.onChange,o=e.onToggle,i=(t=e.value.split(" "),r=4,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return bd(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?bd(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],l=void 0===a?"":a,c=i[1],u=void 0===c?"":c,d=i[2],p=void 0===d?"":d,f=i[3],v=void 0===f?"":f;return(0,s.BX)("div",{css:md.wrapper,children:[(0,s.tZ)("input",{name:"topLeft",value:l,onChange:function(e){n("".concat(e.target.value," ").concat(u," ").concat(p," ").concat(v))}}),(0,s.tZ)("input",{name:"topRight",value:u,onChange:function(e){return n("".concat(l," ").concat(e.target.value," ").concat(p," ").concat(v))}}),(0,s.tZ)("input",{name:"bottomRight",value:p,onChange:function(e){return n("".concat(l," ").concat(u," ").concat(e.target.value," ").concat(v))}}),(0,s.tZ)("input",{name:"bottomLeft",value:v,onChange:function(e){return n("".concat(l," ").concat(u," ").concat(p," ").concat(e.target.value))}}),(0,s.tZ)(_.Z,{variant:"text",buttonCss:md.button,onClick:o,children:(0,s.tZ)(I.Z,{name:"cornerRadius",width:16,height:16})})]})};var md={wrapper:(0,i.iv)("display:flex;height:32px;border:1px solid ",n.qo.stroke.neutral,";overflow:hidden;box-shadow:",n.AF.input,";border-radius:",n.E0[5],";input{",o.c.body(),";width:100%;color:",n.qo.text.default,";appearance:textfield;box-shadow:none;border:none;border-right:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[6]," ",n.W0[12],";:focus{outline:none;box-shadow:none;}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",n.qo.text.disabled,";}};label:wrapper;"),button:(0,i.iv)("border-radius:0;padding:",n.W0[6]," ",n.W0[8],";background-color:",n.qo.action.secondary.default,";svg{color:",n.qo.icon.default,";}:hover{background-color:",n.qo.action.secondary.hover,";svg{color:",n.qo.icon.primary,";}};label:button;")};function gd(e){return gd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gd(e)}function Ed(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Od(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ed(Object(r),!0).forEach((function(t){_d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ed(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _d(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==gd(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==gd(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===gd(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function wd(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Id(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Id(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Id(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Sd={xl:{border_width:"",border_style:"",border_color:""},lg:{border_width:"",border_style:"",border_color:""},md:{border_width:"",border_style:"",border_color:""},sm:{border_width:"",border_style:"",border_color:""},xs:{border_width:"",border_style:"",border_color:""}};const Cd=function(e){var t,r=e.label,n=e.field,o=e.fieldState,i=e.disabled,a=e.loading,l=e.helpText,u=e.responsive,d=e.responsiveOrientation,p=e.hasAlphaField,f=e.title,v=e.noToggle,h=void 0!==v&&v,b=(0,L.$)(),y=[{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_NONE"),value:"none"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_SOLID"),value:"solid"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_DOUBLE"),value:"double"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_DOTTED"),value:"dotted"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_DASHED"),value:"dashed"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_GROOVE"),value:"groove"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_RIDGE"),value:"ridge"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_INSET"),value:"inset"},{label:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_OUTSET"),value:"outset"}],m=n.value;(0,A.$K)(n.value)&&(0,vd.isObject)(n.value)||(m=u?Sd:{border_width:"",border_style:"",border_color:""});var g=wd((0,c.useState)(!1),2),E=g[0],O=g[1],_=(0,c.useRef)(null),w=(0,c.useRef)(""),I=wd((0,c.useState)(w.current.length>1?"box":"slider"),2),S=I[0],C=I[1];return(0,s.tZ)(ne.Z,{label:null!==(t=null!=r?r:f)&&void 0!==t?t:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER"),field:n,fieldState:o,disabled:i,loading:a,helpText:l,responsive:u,isCombineType:!0,responsiveOrientation:d,children:function(e){var t,r=e.data,o=r.device,a=r.responsive;t=a?m[o]:m,w.current=t.border_width;var l=t,c=l.border_width,u=l.border_style,d=l.border_color,f=c.split(" ");return(0,s.BX)("div",{css:xd.wrapper(a),children:[(0,s.BX)("div",{children:[!0===h&&(0,s.tZ)(fd.Z,{value:f[0].replace(/[a-zA-Z%]+/g,""),onChange:function(e){if((0,A.$K)(e))if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_width:"".concat(e,"px")}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_width:"".concat(e,"px")}))},min:0,max:20}),!1===h&&("slider"===S?(0,s.tZ)(fd.Z,{value:f[0].replace(/[a-zA-Z%]+/g,""),onChange:function(e){if((0,A.$K)(e))if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_width:"".concat(e,"px")}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_width:"".concat(e,"px")}))},onToggle:function(){var e=(0,A.$K)(t.border_width)?"".concat(t.border_width," ").concat(t.border_width," ").concat(t.border_width," ").concat(t.border_width):" ".repeat(4);if((0,A.$K)(e))if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_width:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_width:e}));C("box")},min:0,max:20}):(0,s.tZ)(yd,{value:t.border_width,onChange:function(e){if((0,A.$K)(e))if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_width:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_width:e}))},onToggle:function(){var e=(0,A.$K)(t.border_width)?t.border_width.split(/\s+/)[0]:"";if((0,A.$K)(e))if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_width:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_width:e}));C("slider")}}))]}),(0,s.BX)("div",{css:xd.styleColorWrapper,children:[(0,s.tZ)(rd.Z,{value:y.find((function(e){return e.value===u})),placeholder:b("COM_SPPAGEBUILDER_EDITOR_GLOBAL_BORDER_STYLE_PLACEHOLDER"),options:y,onChange:function(e){if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_style:e.value}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_style:e.value}))},isSearchable:!0,isClearable:!1}),(0,s.BX)("div",{children:[(0,s.tZ)(je,{ref:_,color:d||"",onChangeColor:function(e){if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_color:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_color:e}))},onClick:function(){return O(!0)},disabled:i,hasAlphaField:p,hideInput:!0}),(0,s.tZ)(Te,{color:d||"",isOpen:E,triggerRef:_,onChangeColor:function(e){if(a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_color:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_color:e}))},closeColorPicker:function(e){if(O(!1),a){var r=(0,Rt.xU)({previous:m,value:Od(Od({},t),{},{border_color:e}),responsive:a,device:o});n.onChange(r)}else n.onChange(Od(Od({},t),{},{border_color:e}))},popoverGap:20})]})]})]})}})};var xd={wrapper:function(e){return(0,i.iv)("border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";margin-bottom:",n.W0[8],";padding:",e?"".concat(n.W0[20]," ").concat(n.W0[12]," ").concat(n.W0[12]):"".concat(n.W0[12]),";;label:wrapper;")},styleColorWrapper:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;margin-top:",n.W0[8],";gap:",n.W0[6],";&>div:nth-of-type(1){width:50%;}&>div:nth-of-type(2){width:50%;};label:styleColorWrapper;")};function Pd(e){return Pd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pd(e)}function Ld(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ad(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ld(Object(r),!0).forEach((function(t){Td(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ld(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Td(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Pd(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Pd(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Pd(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Dd(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Zd=function(e){var t=e.isLocked,r=e.fieldValue,n=e.device,o=e.onChange,i=1===new Set(r).size;return(0,c.useEffect)((function(){o(i)}),[n,o]),(0,s.tZ)("button",{type:"button",css:jd.lockButton,onClick:function(){return o(!t)},children:(0,s.tZ)(I.Z,{name:t?"lock":"unLock",width:16,height:16})})};const Rd=function(e){var t,r,n=e.label,o=e.field,i=e.fieldState,a=e.disabled,l=e.readOnly,u=e.loading,d=e.placeholder,p=e.helpText,f=e.onChange,v=e.onKeyDown,h=e.responsive,b=e.responsiveOrientation,y=(0,L.$)(),m=(t=(0,c.useState)(!0),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Dd(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Dd(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=m[0],E=m[1],O=[y("COM_SPPAGEBUILDER_EDITOR_BOX_ELEMENT_POSITION_TOP"),y("COM_SPPAGEBUILDER_EDITOR_BOX_ELEMENT_POSITION_RIGHT"),y("COM_SPPAGEBUILDER_EDITOR_BOX_ELEMENT_POSITION_BOTTOM"),y("COM_SPPAGEBUILDER_EDITOR_BOX_ELEMENT_POSITION_LEFT")];return(0,s.tZ)(ne.Z,{label:n,field:o,fieldState:i,disabled:a,readOnly:l,loading:u,placeholder:d,helpText:p,responsive:h,responsiveOrientation:b,children:function(e){var t=e.attributes,r=e.data,n=r.device,i=r.responsive,a=(0,Rt.o5)(o.value,n),l=(0,A.$K)(a)?a.split(" "):[];return(0,s.BX)("div",{css:jd.wrapper,children:[(0,s.tZ)(Zd,{isLocked:g,fieldValue:l,device:n,onChange:E}),(0,s.tZ)("div",{css:jd.inputWrapper({isLocked:g}),children:O.map((function(e,r){return(0,s.tZ)("input",Ad(Ad(Ad({},o),t),{},{id:(0,A.x0)(),type:"text",name:String(r),placeholder:e,value:l[r]||"",onChange:function(e){return function(e,t,r){var n=e.target,i=n.name,a=n.value.replace(/\s/,""),l=(0,Rt.o5)(o.value,r),c=(0,A.$K)(l)?l.split(" "):[];g?c=[a,a,a,a]:c[Number(i)]=a.replace(/\s/,"");var u=(0,Rt.xU)({previous:o.value,value:c.join(" "),responsive:t,device:r});o.onChange(u),f&&f(u)}(e,i,n)},onKeyDown:function(e){v&&v(e.key)},autoComplete:"off"}),r)}))})]})}})};var jd={wrapper:{name:"memc06-wrapper",styles:"position:relative;label:wrapper;"},lockButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:-",n.W0[20],";right:0;color:",n.qo.icon.default,";;label:lockButton;"),inputWrapper:function(e){var t=e.isLocked,r=void 0!==t&&t;return(0,i.iv)("display:flex;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[5],";",r&&(0,i.iv)("&:focus-within{box-shadow:",n.AF.outline,";};label:inputWrapper;")," & input{",o.c.body()," border:none;border-radius:0;&,&:focus{box-shadow:1px 0px 1px ",n.qo.stroke.neutral,",inset -1px 0px 0.25px ",n.qo.stroke.neutral,";}&:first-of-type{border-radius:",n.E0[5]," 0 0 ",n.E0[5],";}&:last-of-type{box-shadow:none;border-radius:0 ",n.E0[5]," ",n.E0[5]," 0;}&:focus{",!r&&(0,i.iv)("border-radius:",n.E0[5],";box-shadow:0px 0px 0px 1px ",n.qo.stroke.neutral,",0px 0px 0px 2px ",n.qo.stroke.white,",0px 0px 0px 4px ",n.qo.stroke.primary,";z-index:",n.W5.positive,";;label:inputWrapper;"),";}};label:inputWrapper;")}},Bd=r(5791);function Md(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function kd(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Md(Object(r),!0).forEach((function(t){Nd(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Md(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Nd(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Gd(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Gd(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Gd(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Gd(e){return Gd="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Gd(e)}function Wd(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ud(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ud(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ud(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Fd={enabled:!1,color:"transparent",ho:0,vo:0,blur:0,spread:0,inset:!1},Hd=function(e,t){var r,n,o,i,a="".concat(e?"box-shadow":"text-shadow",": ").concat(null!==(r=null==t?void 0:t.ho)&&void 0!==r?r:0,"px ").concat(null!==(n=null==t?void 0:t.vo)&&void 0!==n?n:0,"px ").concat(null!==(o=null==t?void 0:t.blur)&&void 0!==o?o:0,"px ").concat(e?"".concat(null!==(i=null==t?void 0:t.spread)&&void 0!==i?i:0,"px"):"");return a.length>25?a.slice(0,25)+"...":a};const qd=function(e){var t=e.label,r=e.field,n=e.fieldState,o=e.disabled,i=e.loading,a=e.onChange,l=e.responsive,u=e.responsiveOrientation,d=e.hasSpread,p=void 0===d||d,f=e.helpText,v=(0,L.$)(),h=Wd((0,c.useState)(!1),2),b=h[0],y=h[1],m=(0,pe.l)({isOpen:b,gap:20,arrow:"right"}),g=m.triggerRef,E=m.position,O=m.popoverRef,_=Wd((0,c.useState)(),2),w=_[0],S=_[1];return(0,s.tZ)(ne.Z,{field:r,fieldState:n,disabled:o,loading:i,responsive:l,responsiveOrientation:u,helpText:f,children:function(e){var n,o=e.data,i=o.device,l=o.responsive,c=(0,A.$K)(r.value)&&"object"===Gd(r.value)?r.value:void 0,u=null!==(n=(0,Rt.oo)(c,i))&&void 0!==n?n:Fd,d=function(e,t){var n=(0,Rt.xU)({previous:c,value:kd(kd({},u),{},Nd({},t,e)),responsive:l,device:i});r.onChange(n),a&&a(n)};return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{ref:g,children:[(0,s.BX)("div",{css:Vd.labelWrapper,children:[(0,s.tZ)("div",{css:Vd.label,children:t}),(0,s.tZ)(Bd.Z,{checked:u.enabled,onChange:function(e){return d(e,"enabled")}})]}),u.enabled&&(0,s.BX)("button",{css:Vd.shadowWrapper,onClick:function(){return y(!0)},children:[(0,s.tZ)("div",{css:Vd.previewWrapper,children:p?(0,s.tZ)("div",{css:Vd.boxPreview(u)}):(0,s.tZ)("div",{css:Vd.textPreview(u),children:"T"})}),(0,s.tZ)("div",{css:Vd.shadowContent,children:Hd(p,u)}),(0,s.tZ)(I.Z,{name:"settings",height:20,width:20})]})]}),(0,s.tZ)(pe.h,{isOpen:b,onClickOutside:function(){return y(!1)},children:(0,s.BX)("div",{css:[Vd.popover,{position:"absolute",left:E.left,top:E.top},";label:BoxShadowField;"],ref:O,children:[(0,s.BX)("div",{css:Vd.header,children:[(0,s.tZ)("span",{children:t}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:function(){return y(!1)},children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:Vd.optionsWrapper,children:[(0,s.tZ)(Fe,{label:v("COM_SPPAGEBUILDER_EDITOR_BOX_SHADOW_COLOR"),color:w||u.color,onChange:function(e){return S(e)},onClose:function(e){return d(e,"color")}}),(0,s.tZ)(fd.Z,{label:v("COM_SPPAGEBUILDER_EDITOR_BOX_SHADOW_HORIZONTAL"),value:(0,Rt.BB)(u.ho),onChange:function(e){return d(null!=e?e:"","ho")}}),(0,s.tZ)(fd.Z,{label:v("COM_SPPAGEBUILDER_EDITOR_BOX_SHADOW_VERTICAL"),value:(0,Rt.BB)(u.vo),onChange:function(e){return d(null!=e?e:"","vo")}}),(0,s.tZ)(fd.Z,{label:v("COM_SPPAGEBUILDER_EDITOR_BOX_SHADOW_BLUR"),value:(0,Rt.BB)(u.blur),onChange:function(e){return d(null!=e?e:"","blur")}}),p&&(0,s.tZ)(fd.Z,{label:v("COM_SPPAGEBUILDER_EDITOR_BOX_SHADOW_SPREAD"),value:(0,Rt.BB)(u.spread),onChange:function(e){return d(null!=e?e:"","spread")}})]})]})})]})}})};var Vd={labelWrapper:(0,i.iv)("display:flex;justify-content:space-between;margin-bottom:",n.W0[4],";;label:labelWrapper;"),label:(0,i.iv)(o.c.caption(),";;label:label;"),shadowWrapper:(0,i.iv)(V.iZ.resetButton,";width:100%;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";display:flex;justify-content:space-between;align-items:center;height:32px;padding-right:",n.W0[8],";&:focus{box-shadow:",n.AF.outline,";};label:shadowWrapper;"),previewWrapper:(0,i.iv)("height:30px;width:30px;display:flex;align-items:center;justify-content:center;border-right:1px solid ",n.qo.stroke.neutral,";;label:previewWrapper;"),boxPreview:function(e){return(0,i.iv)("height:14px;width:14px;background-color:",n.qo.icon.neutral,";border-radius:",n.E0[2],";box-shadow:",Math.min(e.ho,2),"px ",Math.min(e.vo,2),"px ",Math.min(e.blur,2),"px 0 ",e.color,",inset 0px -1px 0.25px rgba(17, 18, 19, 0.24);;label:boxPreview;")},textPreview:function(e){return(0,i.iv)("font-family:",n.I8.sansSerif,";font-size:",n.JB[16],";line-height:",n.Nv[16],";text-shadow:",Math.min(e.ho,2),"px ",Math.min(e.vo,2),"px ",Math.min(e.blur,2),"px ",e.color,";;label:textPreview;")},shadowContent:(0,i.iv)("flex:1;",o.c.body(),";padding-left:",n.W0[8],";;label:shadowContent;"),popover:(0,i.iv)("background-color:",n.qo.background.white,";width:304px;box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:popover;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),optionsWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";;label:optionsWrapper;")};const zd=function(e){var t=e.label,r=e.options,n=e.field,o=e.fieldState,i=e.disabled,a=e.readOnly,l=e.loading,c=e.placeholder,u=e.helpText,d=e.responsive,p=e.responsiveOrientation,f=e.onChange;return(0,s.tZ)(ne.Z,{label:t,field:n,fieldState:o,disabled:i,readOnly:a,loading:l,placeholder:c,helpText:u,responsive:d,responsiveOrientation:p,children:function(e){var t=e.data,o=t.device,i=t.responsive,a=(0,Rt.o5)(n.value,o);return(0,s.tZ)("div",{css:Xd.container,children:(0,s.tZ)(Na,{variant:"secondary",tabList:(0,A.I6)(r),activeTab:a,onChange:function(e){var t=(0,Rt.xU)({previous:n.value,value:e,responsive:i,device:o});n.onChange(t),f&&f(t)}})})}})};var Xd={container:{name:"1m6tfql-container",styles:"position:relative;display:flex;label:container;"}},Kd=[0,1,2,3,4,5,6,7,8];const $d=function(e){var t=e.activeIndex,r=void 0===t?4:t,n=e.onClick,o=void 0===n?function(){}:n;return(0,s.tZ)("div",{css:Yd.wrapper,children:Kd.map((function(e,t){return(0,s.tZ)("div",{css:Yd.buttonWrapper,children:(0,s.tZ)("div",{role:"button",tabIndex:0,onKeyDown:A.ZT,css:Yd.button({index:t,activeIndex:r}),onClick:function(){return o(t)}})},e.toString())}))})};var Yd={wrapper:(0,i.iv)("width:65px;height:65px;position:relative;top:-10px;border:1px solid ",n.qo.stroke.neutral,";background:",n.qo.base.surface,";border-radius:",n.E0[6],";display:grid;grid-template-columns:repeat(3, 1fr);grid-template-rows:repeat(3, 1fr);;label:wrapper;"),buttonWrapper:{name:"jlrtqm-buttonWrapper",styles:"display:flex;justify-content:center;align-items:center;label:buttonWrapper;"},button:function(e){var t=e.index,r=e.activeIndex;return(0,i.iv)("background:",t===r?n.qo.base.primary:n.qo.base.secondary,";height:",n.W0[10],";width:",n.W0[10],";border-radius:",n.E0.circle,";cursor:pointer;;label:button;")}},Qd=r(8710),Jd=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"xl";return"%"===e.top.unit&&"%"===e.left.unit?"0"===e.top[r]&&"0"===e.left[r]?t(0):"0"===e.top[r]&&"50"===e.left[r]?t(1):"0"===e.top[r]&&"100"===e.left[r]?t(2):"50"===e.top[r]&&"0"===e.left[r]?t(3):"50"===e.top[r]&&"50"===e.left[r]?t(4):"50"===e.top[r]&&"100"===e.left[r]?t(5):"100"===e.top[r]&&"0"===e.left[r]?t(6):"100"===e.top[r]&&"50"===e.left[r]?t(7):"100"===e.top[r]&&"100"===e.left[r]?t(8):t(-1):t(-1),e},ep=r(1245),tp=r.n(ep),rp=r(2902);function np(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return op(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?op(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function op(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var ip=[{label:"Position",fieldKey:"position",fields:[{label:"Top",fieldKey:"top"},{label:"Left",fieldKey:"left"}]}],ap={top:{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"},left:{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}};const lp=function(e){var t=e.field,r=e.fieldState,n=e.readOnly,o=e.label,i=e.isInlineLabel,a=e.responsive,l=e.responsiveOrientation,u=e.helpText,d=e.onChange,p=np((0,c.useState)((function(){return(0,A.$K)(t.value)&&(0,A.Kn)(t.value)?t.value:ap})),2),f=p[0],v=p[1],h=(0,fe.N)(f),b=(0,Mn.F)((function(e){return e.payload})),y=b.sectionIndex,m=b.columnIndex,g=b.addonIndex,E=b.tableItem,O=(0,kn.s)((function(e){return e.currentState})),_=(0,c.useRef)("xl");(0,c.useEffect)((function(){v(f),"%"!==f.top.unit||"%"!==f.left.unit||"0"!==f.top[_.current]&&"50"!==f.top[_.current]&&"100"!==f.top[_.current]||"0"!==f.left[_.current]&&"50"!==f.left[_.current]&&"100"!==f.left[_.current]?S(-1):Jd(tp()(f),S,_.current)}),[y,m,g,E,O,_.current]),(0,c.useEffect)((function(){t.onChange(h),d&&d(h)}),[h]),(0,c.useEffect)((function(){hd().isEqual(t.value,f)||(v((0,A.$K)(t.value)?t.value:ap),Jd((0,A.$K)(t.value)?t.value:ap,S,_.current))}),[t.value]);var w=np((0,c.useState)(4),2),I=w[0],S=w[1],C=function(e){var t=tp()(f),r=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"xl";switch(e){case 0:t.top[r]="0",t.left[r]="0";break;case 1:t.top[r]="0",t.left[r]="50";break;case 2:t.top[r]="0",t.left[r]="100";break;case 3:t.top[r]="50",t.left[r]="0";break;case 4:t.top[r]="50",t.left[r]="50";break;case 5:t.top[r]="50",t.left[r]="100";break;case 6:t.top[r]="100",t.left[r]="0";break;case 7:t.top[r]="100",t.left[r]="50";break;case 8:t.top[r]="100",t.left[r]="100"}return t.top.unit="%",t.left.unit="%",t}(e,tp()(t),_.current);tp()(f),v(r),S(e)};return(0,s.tZ)(ne.Z,{field:t,fieldState:r,label:o,isInlineLabel:i,readOnly:n,responsive:a,responsiveOrientation:l,helpText:u,children:function(e){var t=e.data.device;return _.current=t,(0,s.tZ)("div",{css:cp.wrapper,children:ip.map((function(e){return(0,s.tZ)("div",{children:(0,s.BX)("div",{css:cp.groupFieldWrapper,children:[e.fields.map((function(r){var n={value:f[r.fieldKey][t],unit:f[r.fieldKey].unit};return(0,s.tZ)(Qd.Z,{label:r.label,isAngleUnit:e.isAngleUnit,fieldValue:n,isLarge:!0,onChange:function(e){var n=(0,rp.ZP)(tp()(f),(function(n){var o=n;(0,A.$K)(o)&&(o[r.fieldKey][t]=e.value,o[r.fieldKey].unit=e.unit)}));Jd(tp()(n),S,t),v(n)},inputCss:cp.inputCss,unitInputStyles:cp.unitInputStyles},r.fieldKey)})),(0,s.tZ)($d,{activeIndex:I,onClick:C})]})},e.fieldKey)}))})}})};var cp={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),groupLabel:(0,i.iv)(o.c.caption("medium")," color:",n.qo.text.default,";margin-bottom:",n.W0[8],";;label:groupLabel;"),groupFieldWrapper:(0,i.iv)("display:grid;grid-template-columns:repeat(3, 1fr);column-gap:",n.W0[16],";row-gap:",n.W0[16],";margin-top:",n.W0[12],";;label:groupFieldWrapper;"),inputCss:{name:"17gmmrm-inputCss",styles:"width:100%;label:inputCss;"},unitInputStyles:{name:"1v4ejpb-unitInputStyles",styles:"width:45px;label:unitInputStyles;"}};function up(e){return up="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},up(e)}function sp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function dp(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?sp(Object(r),!0).forEach((function(t){pp(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sp(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function pp(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==up(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==up(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===up(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function fp(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return vp(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?vp(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vp(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var hp={color:"",color2:"",pos:45,pos2:65,type:"linear",radialPos:"center center",deg:45};const bp=function(e){var t=e.label,r=e.field,n=e.fieldState,o=e.disabled,i=e.loading,a=e.onChange,l=e.helpText,u=(0,L.$)(),d=(0,A.$K)(r.value)?r.value:hp,p=fp((0,c.useState)(d.color||""),2),f=p[0],v=p[1],h=fp((0,c.useState)(d.color2||""),2),b=h[0],y=h[1];(0,c.useEffect)((function(){v(d.color||"")}),[d.color]),(0,c.useEffect)((function(){y(d.color2||"")}),[d.color2]);var m=d.pos,g=void 0===m?45:m,E=d.pos2,O=void 0===E?65:E,_=d.type,w=void 0===_?"linear":_,I=d.deg,S=void 0===I?45:I,C=d.radialPos,x=void 0===C?"center center":C,P={linear:"linear-gradient(".concat(S,"deg, ").concat(f," ").concat(g,"%, ").concat(b," ").concat(O,"%)"),radial:"radial-gradient(at ".concat(x,", ").concat(f," ").concat(g,"%, ").concat(b," ").concat(O,"%)")},T=[{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_CENTER"),value:"top center"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_LEFT"),value:"top left"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_RIGHT"),value:"top right"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_CENTER"),value:"center center"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_LEFT"),value:"center left"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_RIGHT"),value:"center right"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_CENTER"),value:"bottom center"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_LEFT"),value:"bottom left"},{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_RIGHT"),value:"bottom right"}],D=function(e,t){r.onChange(dp(dp({},d),{},pp({},t,e))),a&&a(dp(dp({},d),{},pp({},t,e)))};return(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:n,disabled:o,loading:i,helpText:l,children:function(){var e;return(0,s.tZ)(s.HY,{children:(0,s.BX)("div",{css:yp.wrapper,children:[(0,s.tZ)("div",{css:yp.colorPallateWrapper,children:(0,s.tZ)("div",{css:yp.colorPallate(P[w])})}),(0,s.BX)("div",{css:yp.colorPickerWrapper,children:[(0,s.BX)("div",{css:yp.colorPickerItem,children:[(0,s.tZ)("div",{css:yp.label(o),children:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_COLOR1")}),(0,s.tZ)(Fe,{color:f,onChange:function(e){return v(e)},onClose:function(e){return D(e,"color")},hasAlphaField:!1})]}),(0,s.BX)("div",{css:yp.colorPickerItem,children:[(0,s.tZ)("div",{css:yp.label(o),children:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_COLOR2")}),(0,s.tZ)(Fe,{color:b,onChange:function(e){return y(e)},onClose:function(e){return D(e,"color2")},hasAlphaField:!1})]})]}),(0,s.tZ)(fd.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_START"),isInlineLabel:!0,value:(0,Rt.BB)(g),onChange:function(e){return D(null!=e?e:"","pos")},inputContent:"%"}),(0,s.tZ)(fd.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_END"),isInlineLabel:!0,value:(0,Rt.BB)(O),onChange:function(e){return D(null!=e?e:"","pos2")},inputContent:"%"}),(0,s.BX)("div",{css:yp.typeWrapper,children:[(0,s.tZ)("div",{css:yp.label(o),children:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_TYPE")}),(0,s.BX)("div",{css:yp.radioWrapper,children:[(0,s.tZ)(td.Z,{showRadioIcon:!0,label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_LINEAR"),checked:"linear"===w,onChange:function(){return D("linear","type")}}),(0,s.tZ)(td.Z,{showRadioIcon:!0,label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_RADIAL"),checked:"radial"===w,onChange:function(){return D("radial","type")}})]})]}),"linear"===w&&(0,s.tZ)(fd.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ANGLE"),isInlineLabel:!0,max:360,value:(0,Rt.BB)(S),onChange:function(e){return D(null!=e?e:"","deg")},inputContent:"deg"}),"radial"===w&&(0,s.tZ)("div",{css:yp.anglePosWrapper,children:(0,s.tZ)(rd.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ANGLE"),isInlineLabel:!0,options:T,value:null!==(e=T.find((function(e){return e.value===x})))&&void 0!==e?e:T[3],onChange:function(e){return D(e.value,"radialPos")},clearOption:function(){return D("center center","radialPos")},isSearchable:!0})})]})})}})};var yp={wrapper:(0,i.iv)("position:relative;display:flex;flex-direction:column;gap:",n.W0[8],";;label:wrapper;"),colorPallateWrapper:(0,i.iv)("height:80px;width:100%;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAAXNSR0IArs4c6QAAAH5JREFUWAntlUsKACEMQ6vMjXr/I/RMOmtdBuRR0mWxGPIhY/0Tx1TVsYnIzGv34t28foUtDFAVBM/g98LoSsDwDBpg+5AMN4mosUMiEhh4Bt0k7SXGexAP0E3ikKgMqPf4kLhJ2kuM9yAeoJvEIVEZUO/xIXGTtJcY70E8wA3sHG3hUj6LrAAAAABJRU5ErkJggg==');border-radius:",n.E0[4],";overflow:hidden;;label:colorPallateWrapper;"),colorPallate:function(e){return(0,i.iv)("background-image:",e,";height:100%;width:100%;;label:colorPallate;")},colorPickerWrapper:{name:"wrklh8-colorPickerWrapper",styles:"display:flex;justify-content:space-between;label:colorPickerWrapper;"},colorPickerItem:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";;label:colorPickerItem;"),typeWrapper:{name:"1vbp8h0-typeWrapper",styles:"display:flex;justify-content:space-between;label:typeWrapper;"},label:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(o.c.caption(),";color:",n.qo.text.default,";",e&&(0,i.iv)("color:",n.qo.text.disabled,";;label:label;"),";;label:label;")},radioWrapper:(0,i.iv)("display:flex;gap:",n.W0[16],";;label:radioWrapper;"),anglePosWrapper:{name:"j3cmgw-anglePosWrapper",styles:"display:flex;justify-content:space-between;label:anglePosWrapper;"}},mp=[{label:"Color",value:"color"},{label:"Image",value:"image"},{label:"Gradient",value:"gradient"}],gp=[{label:"Normal",value:"normal"},{label:"Hover",value:"hover"}],Ep=[{label:"Color",value:"color"},{label:"Image",value:"image"},{label:"Gradient",value:"gradient"}];function Op(e){return Op="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Op(e)}function _p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function wp(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?_p(Object(r),!0).forEach((function(t){Ip(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ip(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Op(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Op(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Op(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Sp(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Cp=function(){var e,t,r=(0,It.Gc)(),n=(0,L.$)(),o=(e=(0,c.useState)("basic"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Sp(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Sp(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=(0,er.Q)(),u=l.admin||l.manage,d=(0,Zt.d)().showModal,p=(0,$o.Z)(Oo.F.PopupEditor).id,f=(0,at.v)((function(e){return e.appConfig})),v=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_ATTACHMENT_FIXED"),value:"fixed"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_ATTACHMENT_SCROLL"),value:"scroll"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_ATTACHMENT_INHERIT"),value:"inherit"}]}(),h=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_LEFT_TOP"),value:"0 0"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_LEFT_CENTER"),value:"0 50%"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_LEFT_BOTTOM"),value:"0 100%"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_CENTER_TOP"),value:"50% 0"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_CENTER_CENTER"),value:"50% 50%"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_CENTER_BOTTOM"),value:"50% 100%"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_RIGHT_TOP"),value:"100% 0"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_RIGHT_CENTER"),value:"100% 50%"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_POSITION_RIGHT_BOTTOM"),value:"100% 100%"}]}(),b=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_NO_REPEAT"),value:"no-repeat"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_REPEAT_ALL"),value:"repeat"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_REPEAT_HORIZONTALLY"),value:"repeat-x"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_REPEAT_VERTICALLY"),value:"repeat-y"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_REPEAT_INHERIT"),value:"inherit"}]}(),y=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_SIZE_COVER"),value:"cover"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_SIZE_CONTAIN"),value:"contain"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_SIZE_INHERIT"),value:"inherit"}]}(),m=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_NORMAL"),value:"normal"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_COLOR"),value:"color"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_COLOR_BURN"),value:"color-burn"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_COLOR_DODGE"),value:"color-dodge"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_DARKEN"),value:"darken"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_DIFFERENCE"),value:"difference"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_EXCLUSION"),value:"exclusion"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_HARD_LIGHT"),value:"hard-light"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_HUE"),value:"hue"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_LIGHTEN"),value:"lighten"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_LUMINOSITY"),value:"luminosity"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_MULTIPLY"),value:"multiply"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_OVERLAY"),value:"overlay"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_SATURATION"),value:"saturation"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_SCREEN"),value:"screen"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BLEND_MODE_SOFT_LIGHT"),value:"soft-light"}]}(),g=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_POSITION_INSIDE"),value:"inside"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_POSITION_OUTSIDE"),value:"outside"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_POSITION_CUSTOM"),value:"custom"}]}(),E=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:"1"},{label:e("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:"0"},{label:e("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:"-2"}]}(),O=function(){var e=(0,L.$)();return[{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BASIC"),value:"basic"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_STYLES"),value:"styles"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_ADVANCED"),value:"advanced"},{label:e("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CSS"),value:"css"}]}(),w=r.watch("attribs.background_type"),S=r.watch("attribs.overlay_background_type"),C=r.watch("attribs.bg_media_overlay"),x=r.watch("attribs.overlay_bg_media_overlay"),P=["width","max_width","height","max_height","position","overlay","toggle_enter_animation","enter_animation","enter_animation_duration","enter_animation_delay","toggle_exit_animation","exit_animation","exit_animation_duration","exit_animation_delay","background_type","bg_color","bg_media","bg_gradient","bg_media_repeat","bg_media_position","bg_media_attachment","bg_media_size","bg_media_overlay","bg_media_overlay_type","bg_media_overlay_blend_mode","overlay_background_type","overlay_bg_media","overlay_bg_color","overlay_bg_gradient","overlay_bg_media_repeat","overlay_bg_media_position","overlay_bg_media_attachment","overlay_bg_media_size","overlay_bg_media_overlay","overlay_bg_media_overlay_type","overlay_bg_media_overlay_blend_mode","padding","margin","border","border_radius","boxshadow","close_btn_position_x","close_btn_position_y","close_btn_color","close_btn_bg_color","close_btn_bg_color_hover","close_btn_padding","close_btn_border","close_btn_border_radius","close_btn_event_type","close_btn_text","auto_close","auto_close_after","close_outside_click","close_on_esc","disable_page_scrolling","css_class","custom_css","close_on_click"];return(0,c.useEffect)((function(){"popup"===r.getValues("extension_view")&&(void 0===r.getValues("attribs.overlay")&&r.setValue("attribs.overlay",1),void 0===r.getValues("attribs.overlay_background_type")&&(r.setValue("attribs.overlay_background_type","color"),void 0===r.getValues("attribs.overlay_bg_color")&&r.setValue("attribs.overlay_bg_color","rgba(0, 0, 0, 0.7)")),void 0===r.getValues("attribs.background_type")&&(r.setValue("attribs.background_type","color"),void 0===r.getValues("attribs.bg_color")&&r.setValue("attribs.bg_color","white")),void 0===r.getValues("attribs.width")&&r.setValue("attribs.width",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}),void 0===r.getValues("attribs.max_width")&&r.setValue("attribs.max_width",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}),void 0===r.getValues("attribs.height")&&r.setValue("attribs.height",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}),void 0===r.getValues("attribs.max_height")&&r.setValue("attribs.max_height",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}),void 0===r.getValues("attribs.border_radius")&&r.setValue("attribs.border_radius",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"px"}),void 0===r.getValues("attribs.close_btn_position_x")&&r.setValue("attribs.close_btn_position_x",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"px"}),void 0===r.getValues("attribs.close_btn_position_y")&&r.setValue("attribs.close_btn_position_y",{xl:"",lg:"",md:"",sm:"",xs:"",unit:"px"}),void 0===r.getValues("attribs.close_btn_border_radius")&&r.setValue("attribs.close_btn_border_radius",0),void 0===r.getValues("attribs.margin")&&r.setValue("attribs.margin","0px 0px 0px 0px"),void 0===r.getValues("attribs.padding")&&r.setValue("attribs.padding","0px 0px 0px 0px"),void 0===r.getValues("attribs.border")&&r.setValue("attribs.border",{border_width:"",border_style:"",border_color:""}),void 0===r.getValues("attribs.position")&&r.setValue("attribs.position",{top:{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"},left:{xl:"",lg:"",md:"",sm:"",xs:"",unit:"%"}}),1===r.getValues("attribs.toggle_enter_animation")&&(r.getValues("attribs.enter_animation")||r.setValue("attribs.enter_animation","fadeIn")),1===r.getValues("attribs.toggle_exit_animation")&&(r.getValues("attribs.exit_animation")||r.setValue("attribs.exit_animation","rotateIn")),void 0===r.getValues("attribs.enter_animation_duration")&&r.setValue("attribs.enter_animation_duration",2e3),void 0===r.getValues("attribs.enter_animation_delay")&&r.setValue("attribs.enter_animation_delay",0),void 0===r.getValues("attribs.exit_animation_duration")&&r.setValue("attribs.exit_animation_duration",2e3),void 0===r.getValues("attribs.exit_animation_delay")&&r.setValue("attribs.exit_animation_delay",0),void 0===r.getValues("attribs.close_btn_color")&&r.setValue("attribs.close_btn_color","black"),void 0===r.getValues("attribs.close_btn_bg_color")&&r.setValue("attribs.close_btn_bg_color","transparent"),void 0===r.getValues("attribs.close_btn_color_hover")&&r.setValue("attribs.close_btn_color_hover","rgba(0, 0, 0, 0.7)"),void 0===r.getValues("attribs.close_btn_bg_color_hover")&&r.setValue("attribs.close_btn_bg_color_hover","transparent"),void 0===r.getValues("attribs.close_btn_icon")&&r.setValue("attribs.close_btn_icon","fas fa-times"),void 0===r.getValues("attribs.close_btn_event_type")&&r.setValue("attribs.close_btn_event_type","normal"),void 0===r.getValues("attribs.close_btn_position")&&r.setValue("attribs.close_btn_position","inside"),P.forEach((function(e){void 0===r.getValues("attribs.".concat(e))&&r.setValue("attribs.".concat(e),"")})))}),[r]),(0,s.BX)("div",{css:xp.wrapper,children:[(0,s.tZ)(Na,{tabList:O,activeTab:i,onChange:a}),"basic"===i&&(0,s.BX)("div",{css:xp.fieldsWrapper,children:[(0,s.BX)(Fu.Z,{header:{title:"Layout"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.width",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_WIDTH"),min:0,max:r.watch("attribs.width")&&"%"===r.watch("attribs.width.unit")?100:2e3,hasUnit:!0,defaultUnit:"%",responsive:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.max_width",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MAX_WIDTH"),min:0,max:r.watch("attribs.max_width")&&"%"===r.watch("attribs.max_width.unit")?100:2e3,hasUnit:!0,defaultUnit:"%",responsive:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.height",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HEIGHT"),min:0,max:r.watch("attribs.height")&&"%"===r.watch("attribs.height.unit")?100:2e3,hasUnit:!0,responsive:!0,defaultUnit:"%"}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.max_height",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MAX_HEIGHT"),min:0,max:r.watch("attribs.max_height")&&"%"===r.watch("attribs.max_height.unit")?100:2e3,hasUnit:!0,responsive:!0,defaultUnit:"%"}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.position",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(lp,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_POSITION"),responsive:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_outside_click",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_ON_OUTSIDE_CLICK"),helpText:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_ON_OUTSIDE_CLICK_DESC"),isInlineLabel:!0}))})}})]}),(0,s.BX)(Fu.Z,{header:{title:"Animation"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.toggle_enter_animation",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_ENTER_ANIMATION"),isInlineLabel:!0}))})}}),1===r.watch("attribs.toggle_enter_animation")&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.enter_animation",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(dd,wp({},e))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.enter_animation_duration",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_GLOBAL_DURATION"),max:1e4}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.enter_animation_delay",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_GLOBAL_DELAY"),max:1e4}))})}})]}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.toggle_exit_animation",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_EXIT_ANIMATION"),isInlineLabel:!0}))})}}),1===r.watch("attribs.toggle_exit_animation")&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.exit_animation",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(dd,wp({},e))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.exit_animation_duration",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_GLOBAL_DURATION"),max:1e4}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.exit_animation_delay",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_GLOBAL_DELAY"),max:1e4}))})}})]})]}),(0,s.BX)(Fu.Z,{header:{title:"General"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"published",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_STATUS"),options:(0,Rt.qb)(E)}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"language",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_LANGUAGE"),options:f.languages}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"access",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_ACCESS"),options:f.access_levels}))})}}),u&&(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.BX)("div",{css:xp.permissionButtonWrapper,children:[(0,s.tZ)("h5",{children:n("COM_SPPAGEBUILDER_EDITOR_PERMISSION_BUTTON_LABEL")}),(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"cog"}),variant:"secondary",disabled:!r.getValues("asset_id"),onClick:function(){d({component:ei,props:{title:n("COM_SPPAGEBUILDER_EDITOR_PERMISSION_MODAL_TITLE"),id:Number(p)}})},children:n("COM_SPPAGEBUILDER_EDITOR_MANAGE_PERMISSION_BUTTON_LABEL")}),!r.getValues("asset_id")&&(0,s.tZ)("p",{children:n("COM_SPPAGEBUILDER_EDITOR_MANAGE_PERMISSION_HELP_TEXT")})]})})]})]}),"styles"===i&&(0,s.BX)("div",{css:xp.fieldsWrapper,children:[(0,s.BX)(Fu.Z,{header:{title:"Popup"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.background_type",defaultValue:"none",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(zd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND"),options:(0,Rt.qb)(mp)}))})}}),"none"!==w&&function(e){switch(e){case"color":return(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_color",defaultValue:"white",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_COLOR"),transparency:!0}))})}},"attribs.bg_color");case"image":return(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(us,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE"),hidePreview:!1,hideAltText:!0}))})}},"attribs.bg_media"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_repeat",defaultValue:"no-repeat",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_REPEAT"),options:(0,Rt.qb)(b)}))})}},"attribs.bg_media_image_repeat"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_size",defaultValue:"cover",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_SIZE"),options:(0,Rt.qb)(y)}))})}},"attribs.bg_media_size"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_attachment",defaultValue:"fixed",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_ATTACHMENT"),options:(0,Rt.qb)(v)}))})}},"attribs.bg_media_attachment"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_position",defaultValue:"50% 50%",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_POSITION"),options:(0,Rt.qb)(h)}))})}},"attribs.bg_media_position"),(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Js,{title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_OVERLAY_OPTIONS")})}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_overlay",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_OVERLAY"),isInlineLabel:!0}))})}},"attribs.bg_media_overlay"),1===C&&(0,s.tZ)(s.HY,{children:(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_media_overlay_blend_mode",defaultValue:"normal",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_OVERLAY_BLEND_MODE"),options:(0,Rt.qb)(m)}))})}},"attribs.bg_media_overlay_blend_mode")})]});case"gradient":return(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.bg_gradient",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(bp,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_GRADIENT")}))})}},"attribs.bg_gradient")}}(w),(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Js,{title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_SPACING_OPTIONS")})}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.padding",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Rd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_PADDING")}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.margin",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Rd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MARGIN")}))})}}),(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Js,{title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BORDER_OPTIONS")})}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.border",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Cd,wp(wp({},e),{},{noToggle:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.border_radius",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BORDER_RADIUS"),hasUnit:!0,max:r.watch("attribs.border_radius")&&"%"===r.watch("attribs.border_radius.unit")?100:2e3,responsive:!0}))})}}),(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Js,{title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_SHADOW_OPTIONS")})}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.boxshadow",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(qd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BOX_SHADOW")}))})}})]}),(0,s.tZ)(Fu.Z,{header:{actionTray:(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay",defaultValue:1,render:function(e){return(0,s.tZ)(jn.Z,wp({},e))}}),title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_OVERLAY")},disabledCaretCollapse:!0,isCollapsed:!r.watch("attribs.overlay"),children:(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_background_type",defaultValue:"color",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(zd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND"),options:(0,Rt.qb)(Ep)}))})}},"attribs.overlay_background_type"),function(){switch(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"color"){case"color":return(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_color",defaultValue:"rgba(0,0,0,0.7)",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_COLOR"),transparency:!0}))})}},"attribs.overlay_bg_color");case"image":return(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(us,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE"),hidePreview:!1,hideAltText:!0}))})}},"attribs.overlay_bg_media"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_repeat",defaultValue:"no-repeat",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_REPEAT"),options:(0,Rt.qb)(b)}))})}},"attribs.overlay_bg_media_repeat"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_size",defaultValue:"cover",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_SIZE"),options:(0,Rt.qb)(y)}))})}},"attribs.overlay_bg_media_size"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_attachment",defaultValue:"fixed",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_ATTACHMENT"),options:(0,Rt.qb)(v)}))})}},"attribs.overlay_bg_media_attachment"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_position",defaultValue:"50% 50%",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_POSITION"),options:(0,Rt.qb)(h)}))})}},"attribs.overlay_bg_media_position"),(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Js,{title:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_OVERLAY_OPTIONS")})}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_overlay",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_OVERLAY"),isInlineLabel:!0}))})}},"attribs.overlay_bg_media_overlay"),1===x&&(0,s.tZ)(s.HY,{children:(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_media_overlay_blend_mode",defaultValue:"normal",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Yt.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_IMAGE_OVERLAY_BLEND_MODE"),options:(0,Rt.qb)(m)}))})}},"attribs.overlay_bg_media_overlay_blend_mode")})]});case"gradient":return(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.overlay_bg_gradient",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(bp,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_BACKGROUND_GRADIENT")}))})}},"attribs.overlay_bg_gradient")}}(S)]})}),(0,s.BX)(Fu.Z,{header:{title:"Close Button"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_position",defaultValue:"inside",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(zd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_POSITION"),options:(0,Rt.qb)(g)}))})}}),"custom"===r.watch("attribs.close_btn_position")&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_position_x",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_CUSTOM_POSITION_X"),hasUnit:!0,max:"%"===r.watch("attribs.close_btn_position_x.unit")?100:2e3,responsive:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_position_y",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_CUSTOM_POSITION_Y"),hasUnit:!0,max:"%"===r.watch("attribs.close_btn_position_x.unit")?100:2e3,responsive:!0}))})}})]}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_event_type",defaultValue:"normal",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(zd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_STATE"),options:(0,Rt.qb)(gp)}))})}}),"normal"===r.watch("attribs.close_btn_event_type")&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_color",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_COLOR"),transparency:!0}))})}},"attribs.close_btn_color"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_bg_color",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_BG_COLOR"),transparency:!0}))})}},"attribs.close_btn_bg_color")]}),"hover"===r.watch("attribs.close_btn_event_type")&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_color_hover",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_COLOR"),transparency:!0}))})}},"attribs.close_btn_color_hover"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_bg_color_hover",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ke,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_BG_COLOR"),transparency:!0}))})}},"attribs.close_btn_bg_color_hover")]}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_padding",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Rd,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_PADDING")}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_icon",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Nt,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_ICON"),chooseIconText:n("COM_SPPAGEBUILDER_EDITOR_CHANGE_ICON_BUTTON_TEXT"),isInlineLabel:!0}))})}},"attribs.close_btn_icon"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_text",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Qe.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_TEXT")}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_border_radius",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_BUTTON_BORDER_RADIUS"),max:2e3}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_btn_border",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Cd,wp(wp({},e),{},{noToggle:!0}))})}})]})]}),"advanced"===i&&(0,s.BX)("div",{css:xp.fieldsWrapper,children:[(0,s.BX)(Fu.Z,{children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.auto_close",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_AUTO_CLOSE"),isInlineLabel:!0}))})}}),1===r.watch("attribs.auto_close")&&(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.auto_close_after",defaultValue:1,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Ji.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_AUTO_CLOSE_DELAY")}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_on_esc",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_ON_ESC_KEY"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.disable_page_scrolling",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_DISABLE_PAGE_SCROLLING"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.close_on_click",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(Qe.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_ON_CLICK"),placeholder:"Ex: .selector",helpText:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CLOSE_ON_CLICK_DESC")}))})}},"attribs.close_on_click"),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.css_class",render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(uc,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CSS_CLASS")}))})}})]}),(0,s.BX)(Fu.Z,{header:{title:"Responsive"},children:[(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.hidden_xl",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HIDDEN_XL"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.hidden_lg",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HIDDEN_LG"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.hidden_md",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HIDDEN_MD"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.hidden_sm",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HIDDEN_SM"),isInlineLabel:!0}))})}}),(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.hidden_xs",defaultValue:0,render:function(e){return(0,s.tZ)("div",{css:xp.popupCardInnerSection,children:(0,s.tZ)(jn.Z,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_HIDDEN_XS"),isInlineLabel:!0}))})}})]})]}),"css"===i&&(0,s.tZ)("div",{css:xp.fieldsWrapper,children:(0,s.tZ)(It.Qr,{control:r.control,name:"attribs.custom_css",render:function(e){return(0,s.tZ)(uc,wp(wp({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_CUSTOM_CSS")}))}})})]})};var xp={wrapper:(0,i.iv)(V.iZ.overflowYAuto,";background-color:",n.qo.base.surface,";height:100%;border-right:1px solid ",n.qo.stroke.neutral,";;label:wrapper;"),fieldsWrapper:(0,i.iv)("padding:",n.W0[16]," ",n.W0[10],";display:flex;flex-direction:column;gap:",n.W0[10],";;label:fieldsWrapper;"),popupCardInnerSection:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[2],";padding:",n.W0[8]," ",n.W0[12],";;label:popupCardInnerSection;"),mediaFieldPreview:(0,i.iv)("background-color:",n.qo.background.white,";;label:mediaFieldPreview;"),permissionButtonWrapper:(0,i.iv)("h5{",o.c.caption()," color:",n.qo.text.default,";margin-bottom:",n.W0[4],";}p{",o.c.caption(),";color:",n.qo.text.hints,";margin-top:",n.W0[4],";};label:permissionButtonWrapper;")},Pp=r(2739);const Lp=r.p+"images/23a8aff50d9e39f0a80e.png";var Ap=r(6795);function Tp(e){return Tp="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Tp(e)}function Dp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Zp(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Dp(Object(r),!0).forEach((function(t){Rp(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Dp(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Rp(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Tp(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Tp(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Tp(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const jp=function(e){var t=(0,at.v)((function(e){return e.appConfig})).access_levels,r=(0,A.I6)(t);return(0,A.Nn)(e)?(0,s.tZ)(Rn.Z,Zp(Zp({},e),{},{options:r,isAccessLevelField:!0})):(0,s.tZ)(Yt.Z,Zp(Zp({},e),{},{options:r}))};var Bp={type:"linear",color:"",color2:"",pos:0,pos2:100,deg:0,radialPos:"center center"},Mp=function(e){var t=Np(e);return(0,s.tZ)("div",{css:Gp.bodyWrapper,children:(0,s.tZ)("div",{css:Gp.body(t)})})},kp=function(e){var t=e.isActive,r=e.type,n=e.activeBackground,o=e.onClick;return(0,s.tZ)("button",{type:"button",css:Gp.button({isActive:t,background:Bn.hF[r],activeBackground:n}),onClick:o})},Np=function(e){var t=e.radialPos,r=void 0===t?"center center":t,n=e.deg,o=void 0===n?0:n,i=e.pos,a=void 0===i?0:i,l=e.pos2,c=void 0===l?100:l,u=e.color,s=e.color2,d=e.type,p="#b5b5b5",f="#f2f2f2",v="linear-gradient(".concat(o,"deg, ").concat(u||p," ").concat(a,"%, ").concat(s||f," ").concat(c,"%)"),h="radial-gradient(at ".concat(r,", ").concat(u||p," ").concat(a,"%, ").concat(s||f," ").concat(c,"%)");return"linear"===d?v:h},Gp={bodyWrapper:(0,i.iv)("display:flex;width:244px;height:124px;border-radius:",n.E0[5],";;label:bodyWrapper;"),body:function(e){return(0,i.iv)("width:100%;border-radius:",n.E0[5],";background:",e,";;label:body;")},button:function(e){var t=e.isActive,r=e.background,o=e.activeBackground;return(0,i.iv)(V.iZ.resetButton," width:20px;height:20px;border-radius:",n.E0.circle,";background:",r,";",t&&(0,i.iv)("border:2px solid ",n.qo.stroke.primary,";background:",o,";;label:button;"),";;label:button;")}};function Wp(e){return Wp="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wp(e)}function Up(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Fp(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Up(Object(r),!0).forEach((function(t){Hp(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Up(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Hp(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Wp(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Wp(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Wp(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const qp=function(e){var t=e.colorProperty,r=e.onChangeColorProperty,n=(0,L.$)(),o=t.deg,i=void 0===o?Bp.deg:o,a=t.pos,l=void 0===a?Bp.pos:a,c=t.pos2,u=void 0===c?Bp.pos2:c,d=t.color,p=t.color2;return(0,s.BX)("div",{children:[(0,s.tZ)(Mp,Fp({},t)),(0,s.BX)("div",{css:Vp.colorPickerWrapper,children:[(0,s.tZ)(Fe,{label:n("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_COLOR_1"),color:d,onChange:function(e){return r(Fp(Fp({},t),{},{color:e}))},onClose:function(e){return r(Fp(Fp({},t),{},{color:e}))},hasAlphaField:!1}),(0,s.tZ)(Fe,{label:n("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_COLOR_2"),color:p,onChange:function(e){return r(Fp(Fp({},t),{},{color2:e}))},onClose:function(e){return r(Fp(Fp({},t),{},{color2:e}))},hasAlphaField:!1})]}),(0,s.BX)("div",{css:Vp.linearProperty,children:[(0,s.tZ)(fd.Z,{label:n("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_START"),isInlineLabel:!0,value:l.toString(),onChange:function(e){return r(Fp(Fp({},t),{},{pos:(0,Rt.He)(e)}))},inputContent:"%"}),(0,s.tZ)(fd.Z,{label:n("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_END"),isInlineLabel:!0,value:u.toString(),onChange:function(e){return r(Fp(Fp({},t),{},{pos2:(0,Rt.He)(e)}))},inputContent:"%"}),(0,s.tZ)(fd.Z,{label:n("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_ANGLE"),isInlineLabel:!0,value:i.toString(),onChange:function(e){return r(Fp(Fp({},t),{},{deg:(0,Rt.He)(e)}))},inputContent:"deg"})]})]})};var Vp={linearWrapper:(0,i.iv)("display:flex;width:244px;height:124px;border-radius:",n.E0[5],";;label:linearWrapper;"),linearBody:function(e){return(0,i.iv)("width:100%;border-radius:",n.E0[5],";background-image:",e,";;label:linearBody;")},colorPickerWrapper:(0,i.iv)("display:flex;justify-content:space-between;margin:",n.W0[12]," 0;;label:colorPickerWrapper;"),linearProperty:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";;label:linearProperty;")};function zp(e){return zp="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},zp(e)}function Xp(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Kp(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Xp(Object(r),!0).forEach((function(t){$p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Xp(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function $p(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==zp(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==zp(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===zp(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Yp=function(e){var t,r=e.colorProperty,n=e.onChangeColorProperty,o=(0,L.$)(),i=r.pos,a=void 0===i?Bp.pos:i,l=r.pos2,c=void 0===l?Bp.pos2:l,u=r.color,d=r.color2,p=[{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_CENTER"),value:"top center"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_LEFT"),value:"top left"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_TOP_RIGHT"),value:"top right"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_CENTER"),value:"center center"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_LEFT"),value:"center left"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_CENTER_RIGHT"),value:"center right"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_CENTER"),value:"bottom center"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_LEFT"),value:"bottom left"},{label:o("COM_SPPAGEBUILDER_EDITOR_GRADIENT_ALIGNMENT_BOTTOM_RIGHT"),value:"bottom right"}];return(0,s.BX)("div",{children:[(0,s.tZ)(Mp,Kp({},r)),(0,s.BX)("div",{css:Qp.colorPickerWrapper,children:[(0,s.tZ)(Fe,{label:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_COLOR_1"),color:u,onChange:function(e){return n(Kp(Kp({},r),{},{color:e}))},onClose:function(e){return n(Kp(Kp({},r),{},{color:e}))},hasAlphaField:!1}),(0,s.tZ)(Fe,{label:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_COLOR_2"),color:d,onChange:function(e){return n(Kp(Kp({},r),{},{color2:e}))},onClose:function(e){return n(Kp(Kp({},r),{},{color2:e}))},hasAlphaField:!1})]}),(0,s.BX)("div",{css:Qp.linearProperty,children:[(0,s.tZ)(fd.Z,{label:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_START"),isInlineLabel:!0,value:a.toString(),onChange:function(e){return n(Kp(Kp({},r),{},{pos:(0,Rt.He)(e)}))},inputContent:"%"}),(0,s.tZ)(fd.Z,{label:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_END"),isInlineLabel:!0,value:c.toString(),onChange:function(e){return n(Kp(Kp({},r),{},{pos2:(0,Rt.He)(e)}))},inputContent:"%"}),(0,s.tZ)(rd.Z,{label:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_PROPERTY_ANGLE"),value:null!==(t=p.find((function(e){return r.radialPos===e.value})))&&void 0!==t?t:p[3],placeholder:o("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_SELECT_ANGLE_PLACEHOLDER"),options:p,onChange:function(e){return n(Kp(Kp({},r),{},{radialPos:e.value}))},clearOption:function(){return n(Kp(Kp({},r),{},{radialPos:"center center"}))},isSearchable:!0})]})]})};var Qp={linearWrapper:(0,i.iv)("display:flex;width:244px;height:124px;border-radius:",n.E0[5],";;label:linearWrapper;"),linearBody:function(e){return(0,i.iv)("width:100%;border-radius:",n.E0[5],";background-image:",e,";;label:linearBody;")},colorPickerWrapper:(0,i.iv)("display:flex;justify-content:space-between;margin:",n.W0[12]," 0;;label:colorPickerWrapper;"),linearProperty:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";;label:linearProperty;")};function Jp(e){return Jp="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Jp(e)}function ef(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function tf(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ef(Object(r),!0).forEach((function(t){rf(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ef(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function rf(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Jp(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Jp(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Jp(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const nf=function(e){var t=e.colorProperty,r=e.onChangeColorProperty,n=e.inputColor,o=e.setInputColor,i=e.handleInputColor;return(0,c.useEffect)((function(){o(t.color)}),[t.color]),(0,s.BX)("div",{css:of.wrapper,children:[(0,s.tZ)(Pe.Jg,{color:(0,A.K6)(t.color).validColor.toRgb(),onChange:function(e){var n=new de.C(e),i=(1===e.a?n.toHexString():n.toRgbString()).toUpperCase();o(i),r(tf(tf({},t),{},{color:i}))}}),(0,s.tZ)("input",{type:"text",css:of.input,value:n,placeholder:"#000000",onChange:function(e){return i(e.target.value)}})]})};var of={wrapper:(0,i.iv)("& .react-colorful{gap:",n.W0[10],";width:244px;height:280px;}& .react-colorful__saturation-pointer{width:10px;height:10px;}& .react-colorful__hue-pointer,& .react-colorful__alpha-pointer{width:10px;height:10px;}& .react-colorful__saturation{border-radius:",n.E0[8],";border-bottom:unset;}& .react-colorful__hue,& .react-colorful__alpha{height:8px;border-radius:",n.E0[8],";};label:wrapper;"),input:(0,i.iv)(o.c.body()," background-color:",n.qo.base.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";outline:none;padding:",n.W0[6]," ",n.W0[12],";margin-top:",n.W0[12],";width:100%;:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;")};function af(e){return af="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},af(e)}function lf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function cf(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?lf(Object(r),!0).forEach((function(t){uf(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lf(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function uf(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==af(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==af(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===af(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function sf(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return df(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?df(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function df(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const pf=function(e){var t=e.colorProperty,r=e.onChangeColorProperty,n=e.isOpen,o=e.triggerRef,i=e.closeColorPicker,a=(0,pe.l)({isOpen:n,triggerRef:o,gap:20,arrow:"right"}),l=a.position,u=a.popoverRef,d=(0,L.$)(),p=sf((0,c.useState)("color"),2),f=p[0],v=p[1],h=sf((0,c.useState)(t.color),2),b=h[0],y=h[1],m=function(e){y(e);var n=(0,A.K6)(e),o=n.validColor,i=n.color,a=n.isCssVariable;(o.isValid||a)&&r(cf(cf({},t),{},{color:i}))};return(0,s.tZ)(pe.h,{isOpen:n,onClickOutside:function(){i()},children:(0,s.BX)("div",{css:[ff.container,{position:"absolute",left:l.left,top:l.top},";label:AdvancedColorPicker;"],ref:u,children:[(0,s.BX)("div",{css:ff.header,children:["solid"===t.type&&(0,s.BX)("div",{css:ff.tabContainer,children:[(0,s.tZ)("span",{css:ff.tabItem("color"===f),onClick:function(){v("color")},children:d("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE")}),(0,s.tZ)("span",{css:ff.tabItem("library"===f),onClick:function(){v("library")},children:d("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE_LIBRARY")})]}),"solid"!==t.type&&(0,s.tZ)("span",{css:ff.tabItem(!1),children:d("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE")}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:i,children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:ff.content,children:["library"===f&&(0,s.tZ)(Ce,{onColorChange:m,globalColorWrapperCss:ff.libraryWrapper,colorListCss:ff.colorListWrapper,selectedColor:t.color}),"library"!==f&&(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:ff.nav,children:[(0,s.tZ)(kp,{type:"solid",isActive:"solid"===t.type,activeBackground:t.color,onClick:function(){return r(cf(cf({},t),{},{type:"solid"}))}}),(0,s.tZ)(kp,{type:"linear",isActive:"linear"===t.type,activeBackground:Np(t),onClick:function(){return r(cf(cf({},t),{},{type:"linear"}))}}),(0,s.tZ)(kp,{type:"radial",isActive:"radial"===t.type,activeBackground:Np(t),onClick:function(){return r(cf(cf({},t),{},{type:"radial"}))}})]}),"solid"===t.type&&(0,s.tZ)(nf,{colorProperty:t,onChangeColorProperty:r,inputColor:b,setInputColor:y,handleInputColor:m}),"linear"===t.type&&(0,s.tZ)(qp,{colorProperty:t,onChangeColorProperty:r}),"radial"===t.type&&(0,s.tZ)(Yp,{colorProperty:t,onChangeColorProperty:r})]})]})]})})};var ff={container:(0,i.iv)("background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.popover,";border-radius:",n.E0[8],";max-width:278px;width:100%;;label:container;"),content:(0,i.iv)("padding:",n.W0[16],";;label:content;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),nav:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[20],";margin-bottom:",n.W0[12],";;label:nav;"),tabContainer:(0,i.iv)("display:flex;gap:",n.W0[4],";;label:tabContainer;"),tabItem:function(e){return(0,i.iv)("background-color:",e?n.qo.background.neutral:n.qo.background.white,";border-radius:",n.E0[4],";padding:",n.W0[4]," ",n.W0[8],";cursor:pointer;;label:tabItem;")},libraryWrapper:{name:"1p52q7o-libraryWrapper",styles:"min-height:364px;label:libraryWrapper;"},colorListWrapper:{name:"12zqoyo-colorListWrapper",styles:"max-height:329px;label:colorListWrapper;"}},vf=(0,c.forwardRef)((function(e,t){var r=e.name,n=e.color,o=e.onClick,i=e.disabled,a=e.clearColor,l=e.isClearable,c=void 0===l||l;return(0,s.BX)("div",{ref:t,css:yf.wrapper,children:[(0,s.tZ)("button",{type:"button",css:yf.colorWrapper,onClick:o,disabled:i,children:n?(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:yf.colorSwatch(n)}),c&&(0,s.tZ)("span",{role:"button",tabIndex:0,css:yf.clearButton,onClick:function(e){e.stopPropagation(),a()},onKeyDown:A.ZT,children:(0,s.tZ)(I.Z,{name:"crossCircled"})})]}):(0,s.tZ)(hf,{})}),(0,s.tZ)("span",{children:r})]})})),hf=function(){return(0,s.tZ)("div",{css:yf.emptyColor})};const bf=vf;var yf={wrapper:(0,i.iv)(V.iZ.resetButton," background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[5],";display:flex;align-items:center;gap:",n.W0[8],";overflow:hidden;&:focus-within{box-shadow:",n.AF.outline,";};label:wrapper;"),colorWrapper:(0,i.iv)(V.iZ.resetButton," position:relative;;label:colorWrapper;"),clearButton:{name:"1imvnip-clearButton",styles:"position:absolute;top:1px;right:-6px;label:clearButton;"},colorSwatch:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#FFFFFF";return(0,i.iv)("width:40px;height:20px;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";background:",e,";overflow:hidden;margin:",n.W0[6]," 0 ",n.W0[6]," ",n.W0[6],";;label:colorSwatch;")},emptyColor:(0,i.iv)("width:40px;height:20px;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";overflow:hidden;margin:",n.W0[6]," 0 ",n.W0[6]," ",n.W0[6],";background-image:url(data:image/svg+xml;utf8,%3Csvg%20width%3D%226%22%20height%3D%226%22%20viewBox%3D%220%200%206%206%22%20fill%3D%22none%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200H3V3H0V0Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M3%200H6V3H3V0Z%22%20fill%3D%22white%22/%3E%3Cpath%20d%3D%22M3%203H6V6H3V3Z%22%20fill%3D%22%23E1E1E1%22/%3E%3Cpath%20d%3D%22M0%203H3V6H0V3Z%22%20fill%3D%22white%22/%3E%3C/svg%3E%0A);;label:emptyColor;")};function mf(e){return mf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},mf(e)}function gf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ef(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?gf(Object(r),!0).forEach((function(t){Of(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):gf(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Of(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==mf(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==mf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===mf(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const wf=function(e){var t,r,n=e.field,o=e.fieldState,i=e.label,a=e.disabled,l=e.loading,u=e.responsive,d=e.responsiveOrientation,p=e.isInlineLabel,f=void 0!==p&&p,v=e.helpText,h=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return _f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_f(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=h[0],y=h[1],m=(0,c.useRef)(null),g=(0,L.$)();return(0,s.tZ)(ne.Z,{field:n,fieldState:o,disabled:a,loading:l,label:i,responsive:u,responsiveOrientation:d,isInlineLabel:f,helpText:v,children:function(){var e,t=null!==(e=n.value)&&void 0!==e?e:Bp,r=t.color,o=Np(t);return(0,s.BX)(s.HY,{children:["solid"===t.type?(0,s.tZ)(je,{ref:m,color:r,onChangeColor:function(e){return n.onChange(Ef(Ef({},t),{},{color:e}))},disabled:a,onClick:function(){return y(!0)}}):(0,s.tZ)(bf,{ref:m,name:g("linear"===t.type?"COM_SPPAGEBUILDER_EDITOR_GRADIENT_LINEAR":"COM_SPPAGEBUILDER_EDITOR_GRADIENT_RADIAL"),color:r?o:"",onClick:function(){return y(!0)},clearColor:function(){return n.onChange(Ef(Ef({},t),{},{color:"",color2:""}))}}),(0,s.tZ)(pf,{colorProperty:t,onChangeColorProperty:n.onChange,isOpen:b,triggerRef:m,closeColorPicker:function(){return y(!1)}})]})}})},If=function(e){var t=e.label,r=e.options,n=e.field,o=e.fieldState,i=e.disabled,a=e.loading,l=e.onChange,c=e.responsive,u=e.responsiveOrientation,d=e.helpText;return 0===r.length?null:(0,s.tZ)(ne.Z,{label:t,field:n,fieldState:o,disabled:i,loading:a,responsive:c,responsiveOrientation:u,helpText:d,children:function(e){var t=e.data,o=t.device,a=t.responsive,c=(0,Rt.o5)(n.value,o);return(0,s.tZ)(s.HY,{children:(0,s.tZ)(Na,{variant:"secondary",activeTab:c,tabList:r,onChange:function(e){var t=(0,Rt.xU)({previous:n.value,value:e,responsive:a,device:o});n.onChange(t),l&&l(t)},disabled:i})})}})},Sf=r.p+"images/1924b8a0608a4b4c1b70.svg",Cf=function(){var e=(0,L.$)(),t=(0,$o.Z)(Oo.F.PageEditor).id,r=ji().savePageContent;return(0,s.BX)("div",{css:xf.wrapper,children:[(0,s.tZ)("img",{src:Sf,width:135,height:152,alt:"Illustration"}),(0,s.tZ)("p",{css:xf.text,children:e("COM_SPPAGEBUILDER_EDITOR_ADVANCED_SETTINGS_MESSAGE")}),(0,s.BX)(Jo.rU,{to:"".concat(Lr.Z.APPLICATION_ROOT,"index.php?option=com_sppagebuilder&view=form&layout=edit&tmpl=component&id=").concat(t),css:xf.permalinkButton,target:"_blank",rel:"noreferrer nofollow",onClick:function(){r()},children:[(0,s.tZ)(I.Z,{name:"parmaLink",width:16,height:16}),(0,s.tZ)("span",{children:e("COM_SPPAGEBUILDER_EDITOR_ADVANCED_SETTINGS_FRONTEND_BUTTON")})]})]})};var xf={wrapper:(0,i.iv)("background-color:",n.qo.base.white,";border-radius:",n.E0[6],";padding:",n.W0[28]," ",n.W0[32],";display:flex;flex-direction:column;justify-content:center;align-items:center;gap:",n.W0[24],";;label:wrapper;"),text:(0,i.iv)(o.c.body(),";text-align:center;;label:text;"),permalinkButton:(0,i.iv)(V.iZ.resetButton,";background-color:",n.qo.base.primary,";border-radius:",n.E0[24],";color:",n.qo.text.white,";padding:",n.W0[2]," ",n.W0[16]," ",n.W0[2]," ",n.W0[4],";display:flex;gap:",n.W0[6],";align-items:center;svg{fill:none;}span{",o.c.body(),";color:",n.qo.text.white,";line-height:",n.Nv[28],";}:hover{svg{color:",n.qo.text.white,";}};label:permalinkButton;")};function Pf(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Lf=function(e){var t,r,n=e.label,o=e.field,i=e.fieldState,a=e.disabled,l=e.loading,u=e.helpText,d=e.onChange,p=e.min,f=e.max,v=e.responsive,h=e.responsiveOrientation,b=(t=(0,c.useState)("slider"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Pf(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Pf(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),y=b[0],m=b[1],g=(0,Rt.o5)(o.value,Bn.zu);return(0,c.useEffect)((function(){if((0,A.$K)(g)){var e=g.replace(/\s+/," ").split(" ");0===g.trim().length&&(e=g.split("")),m(4===e.length?"box":"slider")}else m("slider")}),[g]),(0,s.tZ)(ne.Z,{label:n,field:o,fieldState:i,disabled:a,loading:l,helpText:u,responsive:v,responsiveOrientation:h,children:function(e){var t=e.attributes,r=e.data,n=r.device,i=r.responsive,a=(0,Rt.o5)(o.value,n);return(0,s.tZ)(s.HY,{children:"slider"===y?(0,s.tZ)(fd.Z,{value:a,onChange:function(e){var t,r=(0,Rt.xU)({previous:o.value,value:null!==(t=(0,Rt.BB)(e))&&void 0!==t?t:"",responsive:i,device:n});o.onChange(r),d&&d(r)},onToggle:function(){var e=(0,A.$K)(a)&&a.length>0?"".concat(a,"px ").concat(a,"px ").concat(a,"px ").concat(a,"px"):" ".repeat(4),t=(0,Rt.xU)({previous:o.value,value:e,responsive:i,device:n});o.onChange(t),d&&d(t),m("box")},min:null!=p?p:Bn.a7.min,max:null!=f?f:Bn.a7.max,disabled:t.disabled}):(0,s.tZ)(yd,{value:a,onChange:function(e){var t=(0,Rt.xU)({previous:o.value,value:e,responsive:i,device:n});o.onChange(t),d&&d(t)},onToggle:function(){var e=(0,A.$K)(a)&&a.trim().length>0?parseInt(a.split(/\s+/)[0]):"";o.onChange(e.toString()),d&&d(e.toString()),m("slider")}})})}})},Af=r.p+"images/dbd27c27842b486c246a.svg",Tf=function(e){var t=e.title,r=e.message,n=e.isOldAddon,o=e.variation,i=void 0===o?"warning":o,a=e.field,l=e.fieldState,c=(0,L.$)();return(0,s.tZ)(ne.Z,{field:a,fieldState:l,children:function(){return n?(0,s.tZ)(Yo.Z,{emptyStateImage:Af,imageAltText:c("COM_SPPAGEBUILDER_EDITOR_GROUP_ATTENTION_IMAGE_ALT"),title:t,content:r,orientation:"vertical",wrapperCss:Zf.emptyStateWrapperCss}):(0,s.BX)("div",{css:Zf.alert(i),children:[(0,s.tZ)(I.Z,{name:"exclamationTriangle"}),(0,s.tZ)("span",{children:r})]})}})};var Df={warning:{background:n.qo.background.warning,text:n.qo.text.warning},success:{background:n.qo.background.success,text:n.qo.text.success},error:{background:n.qo.background.error,text:n.qo.text.error}},Zf={emptyStateWrapperCss:(0,i.iv)("padding:",n.W0[36]," ",n.W0[36]," ",n.W0[40],";>img{max-width:104px;};label:emptyStateWrapperCss;"),alert:function(e){return(0,i.iv)("padding:",n.W0[10],";background-color:",Df[e].background,";color:",Df[e].text,";border-radius:",n.E0[6],";display:flex;flex-direction:column;gap:",n.W0[8],";svg{color:",Df[e].text,";width:30px;height:30px;align-self:center;};label:alert;")}};const Rf=function(e){var t=e.label,r=e.options,n=e.field,o=e.fieldState,i=e.disabled,a=e.loading,l=e.onChange,c=e.responsive,u=e.responsiveOrientation,d=e.helpText;return(0,s.tZ)(ne.Z,{label:t,field:n,fieldState:o,disabled:i,loading:a,responsive:c,responsiveOrientation:u,helpText:d,children:function(e){var t=e.data,o=t.device,i=t.responsive,a=(0,Rt.o5)(n.value,o);return(0,s.tZ)(Na,{variant:"secondary",activeTab:a,tabList:r,onChange:function(e){var t=(0,Rt.xU)({previous:n.value,value:e,responsive:i,device:o});n.onChange(t),l&&l(t)}})}})};function jf(e){return jf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},jf(e)}var Bf=["context"],Mf=["context"];function kf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Nf(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?kf(Object(r),!0).forEach((function(t){Gf(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):kf(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Gf(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==jf(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==jf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===jf(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Wf(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}const Uf=function(e){var t=e.context,r=void 0===t?"com_content":t,n=(0,at.v)((function(e){return e.appConfig})),o="com_easystore"===r?n.easystore_categories:n.article_categories,i=(0,A.I6)(o);if((0,A.Nn)(e)){e.context;var a=Wf(e,Bf);return(0,s.tZ)(Rn.Z,Nf(Nf({},a),{},{options:i,hasAllCategory:"com_easystore"!==r}))}e.context;var l=Wf(e,Mf);return(0,s.tZ)(Yt.Z,Nf(Nf({},l),{},{options:i}))};var Ff=r(4999);function Hf(e){return Hf="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Hf(e)}var qf=["fields"];function Vf(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zf(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Vf(Object(r),!0).forEach((function(t){Xf(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Vf(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Xf(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Hf(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Hf(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Hf(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Kf(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return $f(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$f(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Yf=function e(t){var r,n,o,i=t.item,a=t.isReference,l=void 0!==a&&a,u=t.defaultOpen,d=void 0!==u&&u,p=t.isSelected,f=void 0!==p&&p,v=t.onSelect,h=t.value,b=Kf((0,c.useState)(d),2),y=b[0],m=b[1];return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:tv.item(f),children:(0,s.BX)("button",{type:"button",css:tv.itemContent(i.level,y),onClick:function(){m(!y),["reference","multi-reference"].includes(i.type)||v(i)},children:[l&&(0,s.tZ)(I.Z,{name:"chevronRight",width:12,height:12,"data-chevron":!0}),(n=i.type,o=B(n),(0,s.tZ)(I.Z,{name:o,width:16,height:16})),(0,s.tZ)("span",{children:i.name})]})}),l&&y&&(null===(r=i.fields)||void 0===r?void 0:r.map((function(t,r){return(0,s.tZ)(e,{item:t,isReference:["reference","multi-reference"].includes(t.type),defaultOpen:!0,onSelect:v,isSelected:h.path===t.path,value:h},r)})))]})},Qf=[{value:"",label:"Select date time format"},{value:"d M, Y H:i A",label:(0,Gi.Z)(new Date,"d MMM, yyyy h:mm aa")},{value:"d M, Y H:i",label:(0,Gi.Z)(new Date,"d MMM, yyyy h:mm")},{value:"d M, Y",label:(0,Gi.Z)(new Date,"d MMM, yyyy")},{value:"d/m/Y",label:(0,Gi.Z)(new Date,"dd/MM/yyyy")},{value:"d-m-Y",label:(0,Gi.Z)(new Date,"dd-MM-yyyy")},{value:"Y-m-d",label:(0,Gi.Z)(new Date,"yyyy-MM-dd")},{value:"Y-m-d H:i:s",label:(0,Gi.Z)(new Date,"yyyy-MM-dd HH:mm:ss")},{value:"Y-m-d H:i",label:(0,Gi.Z)(new Date,"yyyy-MM-dd HH:mm")},{value:"F j, Y",label:(0,Gi.Z)(new Date,"MMMM d, yyyy")},{value:"l, F j, Y",label:(0,Gi.Z)(new Date,"EEEE, MMMM d, yyyy")},{value:"M d, Y",label:(0,Gi.Z)(new Date,"MMM d, yyyy")},{value:"d M",label:(0,Gi.Z)(new Date,"d MMM")},{value:"H:i",label:(0,Gi.Z)(new Date,"HH:mm")},{value:"h:i A",label:(0,Gi.Z)(new Date,"h:mm aa")},{value:"d-m-Y H:i:s P",label:(0,Gi.Z)(new Date,"dd-MM-yyyy HH:mm:ss zzz")},{value:"D, d M Y H:i:s",label:(0,Gi.Z)(new Date,"EEE, d MMM yyyy HH:mm:ss")},{value:"m/d/y",label:(0,Gi.Z)(new Date,"M/d/yy")},{value:"custom",label:"Custom"}];const Jf=function(e){var t,r,n=e.field,o=e.fieldState,i=e.label,a=e.isInlineLabel,l=e.disabled,u=e.readOnly,d=e.placeholder,p=(e.onChange,e.responsive),f=e.responsiveOrientation,v=e.helpText,h=e.allowedTypes,b=e.collectionId,y=e.hideLinkText,m=(0,Mn.F)((function(e){return e.payload})),g=m.sectionIndex,E=m.columnIndex,O=m.addon,_=Kf((0,c.useState)(!1),2),w=_[0],S=_[1],C=(0,Mi.o)((function(e){return e.page})),x=(0,c.useMemo)((function(){var e;if(!((0,A.$K)(g)&&(0,A.$K)(E)&&(0,A.$K)(O)&&(0,A.$K)(C)))return null;var t=C[g].columns[E].addons,r=(0,Ff.Kt)(t,O);return null==r||null===(e=r.settings)||void 0===e?void 0:e.source}),[g,E,O,C,b]),P=(0,mo.NZ)({id:(0,A.$K)(x)?Number(x):null!=b?b:0,allowed_types:h}),L=(0,pe.l)({isOpen:w,arrow:"right",gap:20}),T=L.position,D=L.popoverRef,Z=L.triggerRef,R=null!==(t=null===(r=n.value)||void 0===r?void 0:r.type)&&void 0!==t?t:null;if(P.isFetching)return(0,s.tZ)("div",{css:tv.wrapper,children:(0,s.tZ)(Ye.ZP,{size:16})});if(!(0,A.$K)(P.data))return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:tv.wrapper,children:(0,s.BX)("button",{type:"button",ref:Z,onClick:function(){return S(!0)},css:tv.trigger,children:[(0,s.BX)("div",{"data-left":!0,children:[(0,s.tZ)(I.Z,{name:"plusCircle",width:16,height:16}),(0,s.tZ)("span",{children:d})]}),(0,s.tZ)(I.Z,{name:"settings",width:20,height:20})]})}),(0,s.tZ)("p",{children:"Please select a source for the parent collection"})]});var j=P.data;return(0,s.tZ)(ne.Z,{field:n,fieldState:o,label:i,isInlineLabel:a,readOnly:u,responsive:p,responsiveOrientation:f,helpText:v,disabled:l,children:function(e){var t,r,o,i,a,l,c,u,p,f,v,h,b,m,g,E,O,_=e.data.device,C=(0,Rt.oo)(n.value,_);return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:tv.wrapper,children:[(0,s.BX)("button",{type:"button",ref:Z,onClick:function(){return S(!0)},css:tv.trigger,children:[(0,s.BX)("div",{"data-left":!0,children:[(0,s.tZ)(I.Z,{name:B(null==C?void 0:C.type),width:16,height:16}),(0,s.tZ)("span",{children:null!==(t=null==C?void 0:C.name)&&void 0!==t?t:d})]}),(0,s.tZ)(I.Z,{name:"settings",width:20,height:20})]}),"date-time"===R&&(0,s.BX)("div",{css:tv.inputWrapper,children:[(0,s.BX)("div",{css:tv.formGroup,children:[(0,s.tZ)("label",{htmlFor:"",children:"Date Time Format"}),(0,s.tZ)("select",{value:null!==(r=null===(o=n.value)||void 0===o?void 0:o.date_format)&&void 0!==r?r:"",onChange:function(e){n.onChange(zf(zf({},n.value),{},{date_format:e.target.value}))},children:Qf.map((function(e){return(0,s.tZ)("option",{value:e.value,children:e.label},e.value)}))})]}),"custom"===(null===(i=n.value)||void 0===i?void 0:i.date_format)&&(0,s.BX)("div",{css:tv.formGroup,children:[(0,s.tZ)("label",{htmlFor:"",children:"Custom Format"}),(0,s.tZ)("input",{type:"text",value:null!==(a=null===(l=n.value)||void 0===l?void 0:l.date_format_custom)&&void 0!==a?a:"",placeholder:"e.g. d M, Y H:i A",onChange:function(e){return n.onChange(zf(zf({},n.value),{},{date_format_custom:e.target.value}))}})]})]}),"link"===R&&(0,s.BX)("div",{css:tv.inputWrapper,children:[!y&&(0,s.BX)("div",{css:tv.formGroup,children:[(0,s.tZ)("label",{htmlFor:"",children:"Link Text"}),(0,s.tZ)("input",{type:"text",value:null!==(c=null===(u=n.value)||void 0===u||null===(p=u.link)||void 0===p?void 0:p.text)&&void 0!==c?c:"",onChange:function(e){return n.onChange(zf(zf({},n.value),{},{link:zf(zf({},n.value.link),{},{text:e.target.value})}))},placeholder:"Enter the link text"})]}),(0,s.BX)("div",{css:tv.formGroup,children:[(0,s.tZ)("label",{htmlFor:"",children:"Link Options"}),(0,s.BX)("div",{css:tv.checkboxGroup,children:[(0,s.tZ)(re.Z,{label:"Open in new tab",checked:"_blank"===(null===(f=n.value)||void 0===f||null===(v=f.link)||void 0===v?void 0:v.target),onChange:function(e){var t,r,o;n.onChange(zf(zf({},n.value),{},{link:zf(zf({text:null!==(t=null===(r=n.value)||void 0===r||null===(o=r.link)||void 0===o?void 0:o.text)&&void 0!==t?t:""},n.value.link),{},{target:e?"_blank":"_self"})}))}}),(0,s.tZ)(re.Z,{label:"No Follow",checked:null===(h=n.value)||void 0===h||null===(b=h.link)||void 0===b?void 0:b.nofollow,onChange:function(e){var t,r,o;n.onChange(zf(zf({},n.value),{},{link:zf(zf({text:null!==(t=null===(r=n.value)||void 0===r||null===(o=r.link)||void 0===o?void 0:o.text)&&void 0!==t?t:""},n.value.link),{},{nofollow:e})}))}}),(0,s.tZ)(re.Z,{label:"No Referrer",checked:null===(m=n.value)||void 0===m||null===(g=m.link)||void 0===g?void 0:g.noreferrer,onChange:function(e){var t,r,o;n.onChange(zf(zf({},n.value),{},{link:zf(zf({text:null!==(t=null===(r=n.value)||void 0===r||null===(o=r.link)||void 0===o?void 0:o.text)&&void 0!==t?t:""},n.value.link),{},{noreferrer:e})}))}}),(0,s.tZ)(re.Z,{label:"No Opener",checked:null===(E=n.value)||void 0===E||null===(O=E.link)||void 0===O?void 0:O.noopener,onChange:function(e){var t,r,o;n.onChange(zf(zf({},n.value),{},{link:zf(zf({text:null!==(t=null===(r=n.value)||void 0===r||null===(o=r.link)||void 0===o?void 0:o.text)&&void 0!==t?t:""},n.value.link),{},{noopener:e})}))}})]})]})]})]}),(0,s.tZ)(pe.h,{isOpen:w,onClickOutside:function(){return S(!1)},children:(0,s.tZ)("div",{css:[tv.list,{left:T.left,top:T.top,maxWidth:180},";label:DynamicContentAttributeField;"],ref:D,children:(0,s.tZ)(Yf,{item:{id:0,name:j.name,fields:j.fields,type:j.type},isReference:!0,defaultOpen:!0,onSelect:function(e){e.fields;var t=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,qf);n.onChange(t),S(!1)},isSelected:!1,value:null!=C?C:{}})})})]})}})};var ev={name:"gk42g-itemContent",styles:"[data-chevron]{transform:rotate(90deg);};label:itemContent;"},tv={wrapper:(0,i.iv)("position:relative;display:flex;flex-direction:column;gap:",n.W0[16],";;label:wrapper;"),inputWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";margin-bottom:",n.W0[8],";;label:inputWrapper;"),formGroup:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";label{",o.c.caption(),";color:",n.qo.text.default,";}select,input{",o.c.body(),";color:",n.qo.text.default,";border-radius:",n.E0[4],";border:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[4]," ",n.W0[8],";width:100%;}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E\");background-repeat:no-repeat;background-position:right ",n.W0[8]," center;padding-right:",n.W0[32],";};label:formGroup;"),checkboxGroup:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";margin-top:",n.W0[8],";;label:checkboxGroup;"),trigger:(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";color:",n.qo.text.default,";border-radius:",n.E0[4],";border:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[4]," ",n.W0[8],";width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:",n.W0[8],";& [data-left]{display:flex;align-items:center;gap:",n.W0[8],";};label:trigger;"),list:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[2],";position:absolute;width:100%;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";max-height:550px;",V.iZ.overflowYAuto,";padding-block:",n.W0[4],";;label:list;"),item:function(e){return(0,i.iv)(o.c.caption(),";color:",n.qo.text.default,";cursor:pointer;transition:background-color 0.3s ease-in-out;padding-left:",n.W0[12],";position:relative;",e&&(0,i.iv)("background-color:",n.qo.background.hover,";&::before{content:'';position:absolute;left:0;top:0;width:3px;height:100%;border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;background-color:",n.qo.base.primary,";};label:item;")," &:first-of-type{position:sticky;top:0;background-color:",n.qo.background.white,";}&:hover{&:not(:first-of-type){background-color:",n.qo.background.hover,";}};label:item;")},itemContent:function(e,t){return(0,i.iv)(V.iZ.resetButton,";display:flex;align-items:center;gap:",n.W0[8],";padding-left:",20*(e-1),"px;width:100%;height:32px;svg{color:",n.qo.icon.default,";}[data-chevron]{transition:transform 0.3s ease-in-out;}",t&&ev,";;label:itemContent;")}};function rv(e){return rv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},rv(e)}function nv(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return ov(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ov(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}function ov(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var iv=function(e){var t,r={},n=nv((0,A.Zt)(e));try{for(n.s();!(t=n.n()).done;){var o=e[t.value];if((0,A.$K)(o)){var i=o.fields;if((0,A.$K)(i)){var a,l=nv((0,A.Zt)(i));try{for(l.s();!(a=l.n()).done;){var c,u=a.value,s=i[u];r[u]=null!==(c=s.std)&&void 0!==c?c:""}}catch(e){l.e(e)}finally{l.f()}}}}}catch(e){n.e(e)}finally{n.f()}return r},av=function(e){var t=e.split(".");return["sp_accordion_item","sp_tab_item"].includes(t[t.length-1])},lv=function(e,t,r){return(0,A.$K)(e.admin_label)&&(0,A.HD)(e.admin_label)&&e.admin_label.length>0?e.admin_label:(0,A.$K)(e.title)&&(0,A.HD)(e.title)&&e.title.length>0?e.title:r("COM_SPPAGEBUILDER_EDITOR_REPEATABLE_ITEM_DEFAULT_TITLE",{index:t+1})},cv=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];if((0,A.$K)(e)&&((0,A.$K)(e.title)||(0,A.$K)(e.admin_label))){var n=e.title||e.admin_label||"",o=n.split(" "),i=o[o.length-1],a=parseInt(i,10);!isNaN(a)&&o.length>1&&o.pop(),n=o.join(" ");var l=new Set;r.forEach((function(e){if(e&&"object"===rv(e)){var t=e,r=(t.title||t.admin_label||"").split(" "),n=parseInt(r[r.length-1],10);isNaN(n)||l.add(n)}}));for(var c=isNaN(a)?2:a+1;l.has(c);)c++;e.admin_label=t("COM_SPPAGEBUILDER_EDITOR_REPEATABLE_ITEM_DEFAULT_TITLE_COPY",{title:n,index:c.toString()}),e.title=t("COM_SPPAGEBUILDER_EDITOR_REPEATABLE_ITEM_DEFAULT_TITLE_COPY",{title:n,index:c.toString()})}return e};function uv(e){return uv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},uv(e)}function sv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function dv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?sv(Object(r),!0).forEach((function(t){pv(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):sv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function pv(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==uv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==uv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===uv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const fv=function(e){var t=e.id,r=e.fieldValue,n=e.isDragOverlay,o=e.visibility,i=void 0===o||o,a=e.onEditItem,l=e.onDuplicateItem,c=e.onDeleteItem,u=e.onVisibility,d=e.addonName,p=void 0===d?"":d,f=(0,C.nB)({id:t}),v=f.attributes,h=f.listeners,b=f.setNodeRef,y=f.transform,m=f.transition,g=f.isDragging,E={transform:x.ux.Transform.toString(y),transition:m,opacity:g?.5:1},O=Bn.Up.includes(p);return(0,s.BX)("div",{css:[bv.repeatableItem({isDragOverlay:n,visibility:i}),E,";label:RepeatableItem;"],ref:b,children:[(0,s.BX)("div",{css:bv.leftWrapper,"data-left-wrapper":!0,children:[(0,s.tZ)("button",dv(dv(dv({type:"button",css:bv.addonDragHandler({visibility:i})},v),h),{},{children:(0,s.tZ)(I.Z,{name:"dragger"})})),(0,s.tZ)("span",{title:r,children:r})]}),!n&&(0,s.BX)("div",{css:bv.actionButtonsWrapper,children:[(0,s.tZ)("button",{type:"button",css:bv.actionButton({visibility:i}),onClick:a,children:(0,s.tZ)(I.Z,{name:"pencilOnBox"})}),(0,s.tZ)("button",{type:"button",css:bv.actionButton({visibility:i}),onClick:l,children:(0,s.tZ)(I.Z,{name:"copy"})}),i&&O&&(0,s.tZ)("button",{type:"button",css:bv.actionButton,onClick:u,children:(0,s.tZ)(I.Z,{name:"eye"})}),!i&&O&&(0,s.tZ)("button",{type:"button",css:bv.actionButton,onClick:u,children:(0,s.tZ)(I.Z,{name:"eyeSlash"})}),(0,s.tZ)("button",{type:"button",css:bv.actionButton({visibility:i}),onClick:c,children:(0,s.tZ)(I.Z,{name:"trash"})})]})]})};var vv={name:"rdnh9p-addonDragHandler",styles:"visibility:hidden;label:addonDragHandler;"},hv={name:"h50izz-actionButton",styles:"visibility:hidden;label:actionButton;"},bv={repeatableItem:function(e){var t=e.isDragOverlay,r=void 0!==t&&t,o=e.visibility,a=void 0===o||o;return(0,i.iv)("display:flex;justify-content:space-between;padding:",n.W0[8]," ",n.W0[12],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";transition:background-color 0.3s ease;:hover{&>[data-left-wrapper]{>span{color:",n.qo.text.hover,";}>button{>svg{color:",n.qo.icon.hover,";}}}}",r&&(0,i.iv)("background-color:",n.qo.background.white,";;label:repeatableItem;")," ",!1===a&&(0,i.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",n.qo.stroke.disabled," 4px 5px);;label:repeatableItem;"),";;label:repeatableItem;")},leftWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[2],";span{max-width:145px;",V.iZ.textEllipsis,";};label:leftWrapper;"),actionButtonsWrapper:(0,i.iv)("height:100%;display:flex;gap:",n.W0[6],";;label:actionButtonsWrapper;"),addButtonWrapper:(0,i.iv)("align-self:center;margin-bottom:",n.W0[8],";;label:addButtonWrapper;"),actionButton:function(e){var t=e.visibility,r=void 0===t||t;return(0,i.iv)(!1===r&&hv," ",V.iZ.resetButton,";svg{color:",n.qo.icon.default,";}:hover{svg{color:",n.qo.icon.hover,";}};label:actionButton;")},addonDragHandler:function(e){var t=e.visibility,r=void 0===t||t;return(0,i.iv)(!1===r&&vv," ",V.iZ.resetButton,";cursor:grab!important;>svg{color:",n.qo.icon.default,";};label:addonDragHandler;")}};function yv(e){return yv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},yv(e)}function mv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function gv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?mv(Object(r),!0).forEach((function(t){Ev(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ev(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==yv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==yv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===yv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Ov(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return _v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_v(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const wv=function(e){var t=e.values,r=e.defaultValue,n=e.onEditItem,o=e.onDuplicateItem,i=e.onDeleteItem,a=e.onAppendItem,l=e.onRearrangeItems,u=e.onBulkInsert,d=e.onVisibility,p=e.bulkImport,f=e.addonName,v=void 0===f?"":f,h=e.hideAddButton,b=void 0!==h&&h,y=(0,L.$)(),m=(0,rt.O)({defaultValues:{items:t}}),g=m.reset,E=m.getValues,O=(0,Zt.d)().showModal,w=Ov((0,c.useState)(null),2),S=w[0],x=w[1],P=Ov((0,c.useState)(""),2),T=P[0],D=P[1],Z=(0,It.Dq)({control:m.control,name:"items"}),R=m.watch("items"),j=Z.fields.map((function(e,t){return gv(gv({index:t},e),R[t])})),B=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is}));return(0,c.useEffect)((function(){g(gv(gv({},E()),{},{items:t}))}),[t,g,E]),(0,c.useEffect)((function(){if(S){var e=j.find((function(e){return e.id===S}));if(e){var t=function(e,t,r){return(0,A.$K)(e.title)&&(0,A.HD)(e.title)&&e.title.length>0?e.title:(0,A.$K)(e.admin_label)&&(0,A.HD)(e.admin_label)&&e.admin_label.length>0?e.admin_label:r("COM_SPPAGEBUILDER_EDITOR_REPEATABLE_ITEM_DEFAULT_TITLE",{index:t+1})}(e,e.index,y);D(t)}}}),[S]),(0,s.BX)(s.HY,{children:[!b&&(0,s.tZ)("div",{css:Iv.addButtonWrapper,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"plus"}),onClick:function(){Z.append(r),a()},children:y("COM_SPPAGEBUILDER_EDITOR_ADD_INNER_ITEM_BUTTON")})}),p&&(0,s.tZ)("div",{css:Iv.addButtonWrapper,children:(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"plus"}),onClick:function(){O({component:_n,closeOnOutsideClick:!0,props:{bulkImport:p,onBulkInsert:function(e){var t=null==e?void 0:e.map((function(e){var t,r,n,o;return{title:null==e?void 0:e.title,thumb:{src:null==e?void 0:e.thumb,width:null==e||null===(t=e.media_attr)||void 0===t||null===(r=t.full)||void 0===r?void 0:r.width,height:null==e||null===(n=e.media_attr)||void 0===n||null===(o=n.full)||void 0===o?void 0:o.height},full:null==e?void 0:e.path,alt:""}}));u(t)}}})},children:y("COM_SPPAGEBUILDER_EDITOR_ADD_INNER_BULK_ITEMS_BUTTON")})}),(0,s.tZ)(zn.LB,{sensors:B,collisionDetection:zn.pE,onDragStart:function(e){x(String(e.active.id))},onDragEnd:function(e){var r=e.active,n=e.over;if(x(null),D(""),null!=n&&n.id&&r.id!==n.id){var o=j.findIndex((function(e){return e.id===r.id})),i=j.findIndex((function(e){return e.id===n.id})),a=(0,C.Rp)(j,o,i);Z.replace(a),l((0,C.Rp)(t,o,i))}},children:(0,s.BX)(C.Fo,{items:j,strategy:C.qw,children:[j.map((function(e,t){var r=e.title||e.admin_label||"Item";return(0,s.tZ)(fv,{id:e.id,fieldValue:r,onEditItem:function(){return n(t)},onDuplicateItem:function(){Z.insert(t+1,gv({},R[t])),o(t)},onDeleteItem:function(){Z.remove(t),i(t)},onVisibility:function(){var r,n=!(null===(r=null==e?void 0:e.item_visibility)||void 0===r||r);m.setValue("items.".concat(t,".item_visibility"),n),d(t,n)},visibility:null==e?void 0:e.item_visibility,addonName:v},e.id)})),(0,s.tZ)(zn.y9,{children:S&&(0,s.tZ)(fv,{id:S,fieldValue:T,visibility:!0,onEditItem:A.ZT,onDuplicateItem:A.ZT,onDeleteItem:A.ZT,onVisibility:A.ZT,isDragOverlay:!0})})]})})]})};var Iv={repeatableItem:(0,i.iv)("display:flex;justify-content:space-between;padding:",n.W0[8]," ",n.W0[12],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";;label:repeatableItem;"),actionButtonsWrapper:(0,i.iv)("display:flex;gap:",n.W0[8],";;label:actionButtonsWrapper;"),addButtonWrapper:(0,i.iv)("align-self:center;margin-bottom:",n.W0[8],";;label:addButtonWrapper;"),actionButton:(0,i.iv)(V.iZ.resetButton,";svg{color:",n.qo.icon.default,";}:hover{svg{color:",n.qo.icon.hover,";}};label:actionButton;")};function Sv(e){return Sv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Sv(e)}function Cv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Cv(Object(r),!0).forEach((function(t){Pv(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Cv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Pv(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Sv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Sv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Sv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const Lv=function(e){var t=e.isOpen,r=e.popoverRef,o=e.position,i=e.field,a=e.title,l=e.values,u=e.index,d=e.onClose,p=e.onApplyChanges,f=(e.collectionId,e.addonName),v=void 0===f?"":f,h=(0,L.$)(),b=(0,rt.O)({defaultValues:(0,c.useMemo)((function(){return l[u]}),[l,u])}),y=b.watch(),m=(0,Ap.VG)(i.attr,y);return(0,s.tZ)(pe.h,{isOpen:t,customZIndex:n.W5.header,children:(0,s.tZ)(It.RV,xv(xv({},b),{},{children:(0,s.BX)("div",{css:[Av.popover,{position:"absolute",left:o.left,top:o.top},";label:RepeatablePortal;"],ref:r,children:[(0,s.BX)("div",{css:Av.header,children:[(0,s.tZ)("span",{children:a||h("COM_SPPAGEBUILDER_EDITOR_INNER_ITEM_POPOVER_HEADER")}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:d,children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.tZ)("div",{css:Av.fieldsWrapper,children:(0,s.tZ)(w_,{settings:m,form:b,fieldNamePrefix:!1,hasBorder:!0,addonName:v})}),(0,s.tZ)("div",{css:Av.footer,children:(0,s.tZ)(_.Z,{onClick:b.handleSubmit((function(e){p(e)})),children:h("COM_SPPAGEBUILDER_EDITOR_APPLY")})})]})}))})};var Av={popover:(0,i.iv)("background-color:",n.qo.background.white,";width:320px;box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";z-index:1;;label:popover;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),footer:(0,i.iv)("border-top:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:end;align-items:center;padding:",n.W0[12]," ",n.W0[16],";;label:footer;"),fieldsWrapper:(0,i.iv)("padding:",n.W0[12],";display:flex;flex-direction:column;gap:",n.W0[8],";max-height:calc(100vh - 140px);overflow-y:auto;;label:fieldsWrapper;")},Tv=r(2238);function Dv(e){return Dv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Dv(e)}function Zv(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Rv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function jv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Rv(Object(r),!0).forEach((function(t){Bv(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Rv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Bv(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Dv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Dv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Dv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Mv(e){return Mv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mv(e)}function kv(e){return function(e){if(Array.isArray(e))return Hv(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Fv(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Nv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Gv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Nv(Object(r),!0).forEach((function(t){Wv(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Nv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Wv(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Mv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Mv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Mv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Uv(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Fv(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Fv(e,t){if(e){if("string"==typeof e)return Hv(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Hv(e,t):void 0}}function Hv(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var qv=(0,c.createContext)(""),Vv=function(){return(0,c.useContext)(qv)};const zv=function(e){var t,r,n,o,i,a,l,u,d,p,f,v,h,b,y,m,g=e.fieldName,E=e.field,O=e.parentKey,_=e.bulkImport,w=e.hideAddButton,I=(0,L.$)(),S=(0,It.Gc)(),C=Uv((0,c.useState)(null),2),x=C[0],P=C[1],T=(0,A.$K)(O)?"".concat(O,".").concat(g):g,D=(0,It.qo)({control:S.control,name:T})||[],Z=(0,It.qo)({control:S.control,name:"repeatable.field_name"}),R=(0,It.qo)({control:S.control,name:"repeatable.field_value"}),j=(a=(0,Mi.o)((function(e){return e.addNestedRowForDeepAddon})),l=(0,Mi.o)((function(e){return e.deleteSection})),u=(0,Mn.F)((function(e){return{type:e.type,payload:e.payload,setSettings:e.setSettings}})),d=u.type,p=u.payload,f=u.setSettings,v=p.addonIndex,h=p.columnIndex,b=p.sectionIndex,y=(0,Pp._)().getSectionById,m=(0,Mi.o)((function(e){return e.page})),(0,L.$)(),{addRepeatableItem:function(e){(0,A.$K)(b)&&(0,A.$K)(h)&&(0,A.$K)(v)&&a({sectionIndex:b,columnIndex:h,addonIndex:v,item:e})},duplicateRepeatableItem:function(e){var t=[],r=jv(jv({},e),{},{title:e.title,content:e.content.map((function(e){var r,n=y(e.id).index,o=(0,A.x0)(),i=(0,Tv.Nk)({sectionIndex:n,sectionId:o,sections:m,independent:!1});return t.push.apply(t,function(e){if(Array.isArray(e))return Zv(e)}(r=i)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return Zv(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Zv(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),jv(jv({},e),{},{id:o})}))});return(0,A.$K)(b)&&(0,A.$K)(h)&&(0,A.$K)(v)&&a({sectionIndex:b,columnIndex:h,addonIndex:v,item:e,sections:t}),r},deleteRepeatableItem:function(e){e.content.forEach((function(e){var t=y(e.id).index;-1!==t&&(0,A.$K)(b)&&t<b&&f(d,jv(jv({},p),{},{sectionIndex:b-1})),l({sectionIndex:t})}))}}),B=j.addRepeatableItem,M=j.duplicateRepeatableItem,k=j.deleteRepeatableItem,N=null!==(t=null===(r=S.getValues())||void 0===r||null===(n=r.settings)||void 0===n?void 0:n.source)&&void 0!==t?t:"",G=Uv((0,c.useState)(!1),2),W=G[0],U=G[1],F=(0,pe.l)({isOpen:W,gap:20,arrow:"right"}),H=F.triggerRef,q=F.position,V=F.popoverRef,z=D.map((function(e,t){var r=e;return(0,A.$K)(r.title)?e:Gv(Gv({},r),{},{admin_label:lv(r,t,I)})}));if(!(0,A.$K)(E.attr))return null;var X=function(){P(null),U(!1)},K=function(e,t){var r=(0,rp.ZP)(z,(function(r){(0,A.kJ)(r)||(r=[]),r.splice(t,0,e)}));S.setValue(T,r)},$=iv(E.attr);return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:Xv.wrapper,ref:H,children:(0,s.tZ)(wv,{values:z,defaultValue:$,onEditItem:function(e){U(!0),P(e)},onDuplicateItem:function(e){if(av(g)){var t=z[e],r=M(t);K(cv(r,I,z),e+1)}else if(g.includes(Bn.pb.headerItemsKey)){var n=z[e],o=Gv(Gv({},n),{},{content:n.content.map((function(e){return Gv(Gv({},e),{},{id:(0,A.x0)()})}))});K(cv(o,I,z),e+1)}else if(g.includes("settings.".concat(Bn.pb.bodyItemsKey))){var i=z[e],a=Gv(Gv({},i),{},{table_advanced_item:i.table_advanced_item.map((function(e){return Gv(Gv({},e),{},{content:e.content.map((function(e){return Gv(Gv({},e),{},{id:(0,A.x0)()})}))})}))});K(cv(a,I,z),e+1)}else if(g.includes(Bn.pb.bodyItemsKey)){var l=z[e],c=Gv(Gv({},l),{},{content:l.content.map((function(e){return Gv(Gv({},e),{},{id:(0,A.x0)()})}))});K(cv(c,I,z),e+1)}else{var u=tp()(z[e]);K(cv(u,I,z),e+1)}},onDeleteItem:function(e){var t=(0,rp.ZP)(z,(function(t){t.splice(e,1)}));if(av(g)){var r=z[e];k(r)}S.setValue(T,t)},onAppendItem:function(){if(av(g)){var e={title:$.title,content:[{id:(0,A.x0)(),name:"row",type:"nested_row"}]};K(e,z.length),B(e)}else if(g.includes(Bn.pb.headerItemsKey)){var t={content:[{id:(0,A.x0)(),name:"text_block",settings:{text:""},collapse:!1,visibility:!0}]};K(t,z.length)}else if(g.includes("settings.".concat(Bn.pb.bodyItemsKey))){var r={table_advanced_item:[{content:[{id:(0,A.x0)(),name:"text_block",settings:{text:""},collapse:!1,visibility:!0}]}]};K(r,z.length)}else if(g.includes(Bn.pb.bodyItemsKey)){var n={content:[{id:(0,A.x0)(),name:"text_block",settings:{text:""},collapse:!1,visibility:!0}]};K(n,z.length)}else{var o;K(iv(null!==(o=E.attr)&&void 0!==o?o:{}),z.length)}},onRearrangeItems:function(e){S.setValue(T,e)},onBulkInsert:function(e){var t,r=null!==(t=S.getValues().settings.sp_gallery_item)&&void 0!==t?t:[],n=[].concat(kv(r),kv(e));S.setValue(T,n)},bulkImport:_,onVisibility:function(e,t){return function(e,t){var r=(0,rp.ZP)(z,(function(r){r[e].item_visibility=t}));S.setValue(T,r)}(e,t)},addonName:null!==(o=e.addonName)&&void 0!==o?o:"",hideAddButton:w})}),(0,A.$K)(x)&&(0,s.tZ)(qv.Provider,{value:N,children:(0,s.tZ)(Lv,{isOpen:W,position:q,popoverRef:V,field:{attr:E.attr},title:E.title||"",onApplyChanges:function(e){var t=(0,rp.ZP)(z,(function(t){(0,A.$K)(Z)&&(0,A.$K)(null==e?void 0:e[Z])?t[x]=Gv(Gv({},e),{},Wv({},Z,R)):t[x]=e}));S.setValue("repeatable.field_name",g),S.setValue("repeatable.field_value",t),S.setValue(T,t),X()},values:z,index:x,onClose:X,collectionId:N,addonName:null!==(i=e.addonName)&&void 0!==i?i:""})})]})};var Xv={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:wrapper;")};function Kv(e){return Kv="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Kv(e)}var $v=["css"];function Yv(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Qv(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Yv(Object(r),!0).forEach((function(t){Jv(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Yv(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Jv(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Kv(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Kv(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Kv(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function eh(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return th(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?th(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function th(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var rh={checkbox:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_CHECKBOX"),value:"checkbox"},radio:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_RADIO"),value:"radio"},button:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_BUTTON"),value:"button"},input:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_INPUT"),value:"input"},slider:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_SLIDER"),value:"slider"},switch:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_SWITCH"),value:"switch"},date:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_DATE"),value:"date"},dateRange:{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_ADDON_DYNAMIC_CONTENT_COLLECTION_FILTER_CONTROL_TYPE_DATE_RANGE"),value:"date-range"}};const nh=function(e){var t=e.field,r=e.fieldState,n=e.onChange,o=void 0===n?A.ZT:n,i=e.label,a=e.placeholder,l=void 0===a?"":a,u=e.disabled,d=e.readOnly,p=e.loading,f=e.isSearchable,v=void 0!==f&&f,h=e.isInlineLabel,b=e.hideCaret,y=e.listLabel,m=e.isClearable,g=void 0===m||m,E=e.responsive,O=e.responsiveOrientation,w=e.showArrowUpDown,S=void 0!==w&&w,C=e.helpText,x=e.removeOptionsMinWidth,P=void 0!==x&&x,T=e.defaultValue,D=void 0===T?null:T,Z=e.required,R=void 0!==Z&&Z,j=(0,L.$)(),B=eh((0,c.useState)([]),2),M=B[0],k=B[1],N=(0,It.Gc)(),G=(0,It.qo)({control:N.control,name:"field_name"}),W=Vv(),U=(0,mo.Lf)(Number(W)),F=U.data,H=function(e,t){var r=t.find((function(t){return t.id===e}));return r?r.type:null}(G,null!=F?F:[]);(0,c.useEffect)((function(){if(F&&H){var e=function(e){switch(e){case"text":case"title":return[rh.input,rh.button,rh.checkbox,rh.radio];case"number":case"rating":return[rh.checkbox,rh.radio,rh.input,rh.slider];case"option":return[rh.checkbox,rh.radio];case"switch":return[rh.switch];case"date-time":return[rh.date,rh.dateRange];default:return[]}}(H);k(e)}}),[U.data,G]);var q=(0,c.useRef)(Bn.zu),V=(0,vc.D)(q.current),z=(0,c.useCallback)((function(){var e,r,n=(0,Rt.o5)(null!==(e=t.value)&&void 0!==e?e:D,q.current);return(null===(r=M.find((function(e){return String(e.value)===n})))||void 0===r?void 0:r.label)||""}),[M,t.value,D]),X=eh((0,c.useState)(z),2),K=X[0],$=X[1],Y=eh((0,c.useState)(""),2),Q=Y[0],J=Y[1],ee=eh((0,c.useState)(!1),2),te=ee[0],re=ee[1],oe=(0,c.useMemo)((function(){return v?M.filter((function(e){return e.label.toLowerCase().startsWith(Q.toLowerCase())})):M}),[Q,v,M]),ie=(0,pe.l)({isOpen:te,isDropdown:!0}),ae=ie.triggerRef,le=ie.triggerWidth,ce=ie.position,ue=ie.popoverRef;return(0,c.useEffect)((function(){$(z)}),[t.value,z]),(0,c.useEffect)((function(){te&&$(z)}),[z,te]),(0,s.tZ)(ne.Z,{fieldState:r,field:t,label:i,disabled:u||0===M.length,readOnly:d,loading:p,isInlineLabel:h,responsive:E,responsiveOrientation:O,helpText:C,required:R,children:function(e){var r=e.attributes,n=e.data,i=r.css,a=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(r,$v),c=n.responsive,u=n.device;return q.current=u,(0,s.BX)("div",{css:ah.mainWrapper,children:[(0,s.BX)("div",{css:ah.inputWrapper,ref:ae,children:[(0,s.tZ)("input",Qv(Qv({},a),{},{onClick:function(){return re((function(e){return!e}))},css:[i,ah.input,";label:DynamicContentFilterControlField;"],autoComplete:"off",readOnly:d||!v,placeholder:l,value:function(){if(V!==u){var e,r=(0,Rt.o5)(t.value,u);return(null===(e=M.find((function(e){return String(e.value)===String(r)})))||void 0===e?void 0:e.label)||""}return K}(),onChange:function(e){$(e.target.value),J(e.target.value)}})),!b&&(0,s.tZ)("button",{type:"button",css:ah.caretButton,onClick:function(){re((function(e){return!e}))},disabled:d||0===M.length,children:S?(0,s.tZ)(I.Z,{name:"arrowUpDown",width:20,height:20,style:ah.arrowUpDown}):(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20,style:ah.toggleIcon({isOpen:te})})})]}),(0,s.tZ)(pe.h,{isOpen:te,onClickOutside:function(){return re(!1)},children:(0,s.tZ)("div",{css:[ah.optionsWrapper,{left:ce.left,top:ce.top,maxWidth:le},";label:DynamicContentFilterControlField;"],ref:ue,children:(0,s.BX)("ul",{css:[ah.options(P),";label:DynamicContentFilterControlField;"],children:[!!y&&(0,s.tZ)("li",{css:ah.listLabel,children:y}),oe.map((function(e){return(0,s.tZ)("li",{css:ah.optionItem({isSelected:String(e.value)===(0,Rt.o5)(t.value,u)}),children:(0,s.tZ)(_.Z,{variant:"text",buttonCss:ah.label,onClick:function(){t.onChange((0,Rt.xU)({previous:t.value,value:e.value,responsive:c,device:u})),J(""),o(e),re(!1)},children:e.label})},String(e.value))})),g&&(0,s.tZ)("div",{css:ah.clearButton({isDisabled:""===K}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===K,icon:(0,s.tZ)(I.Z,{name:"recycleAlt"}),onClick:function(){t.onChange(null),$(""),J(""),re(!1)},children:j("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var oh={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},ih={name:"7k051d-options",styles:"min-width:200px;label:options;"},ah={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,i.iv)(o.c.body(),";width:100%;cursor:pointer;padding-right:",n.W0[32],";",V.iZ.textEllipsis,";:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),listLabel:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",n.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:function(e){return(0,i.iv)("z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";list-style-type:none;box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;margin:0;max-height:500px;border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";",!e&&ih,";;label:options;")},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},label:(0,i.iv)("width:100%;height:100%;display:flex;gap:",n.W0[8],";margin:0 ",n.W0[12],";padding:",n.W0[6]," 0;text-align:left;line-height:",n.Nv[24],";word-break:break-all;;label:label;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&oh,";;label:toggleIcon;")},arrowUpDown:(0,i.iv)("color:",n.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",n.W0[2],";;label:arrowUpDown;"),optionsContainer:{name:"1fif7on-optionsContainer",styles:"position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);label:optionsContainer;"},caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")},lh=function(){var e,t,r=(0,Mn.F)((function(e){return e.payload})).addon;return null!==(e=Number(null==r||null===(t=r.settings)||void 0===t?void 0:t.source))&&void 0!==e?e:null};function ch(e){return ch="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ch(e)}function uh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function sh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?uh(Object(r),!0).forEach((function(t){dh(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):uh(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function dh(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ch(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ch(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ch(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const ph=function(e){var t=e.form,r=e.index,n=e.type,o=e.field,i=e.condition,a=e.collectionId,l=e.fields,u=(0,L.$)(),d=function(){var e=(0,Mn.F)((function(e){return e.payload})),t=(0,Mi.o)((function(e){return e.page})),r=e.sectionIndex,n=e.columnIndex,o=e.addon,i=(0,c.useMemo)((function(){var e,i;if(!(0,A.$K)(r)||!(0,A.$K)(n)||!(0,A.$K)(o))return null;var a=t[r].columns[n].addons,l=(0,Ff.Kt)(a,o);return null!==(e=Number(null==l||null===(i=l.settings)||void 0===i?void 0:i.source))&&void 0!==e?e:null}),[r,n,o]);return i}(),p=lh(),f=(0,mo.dE)({ownCollectionId:p,parentCollectionId:(0,A.$K)(a)?a:null!=d?d:0}),v=(0,c.useMemo)((function(){return f.data?f.data.map((function(e){return{label:e.name,value:e.id}})):[]}),[f.data]),h=(0,c.useMemo)((function(){return null!=o&&o.reference_collection_name?o.reference_collection_name.map((function(e){return{label:e.title,value:e.id.toString()}})):[]}),[null==o?void 0:o.reference_collection_name]);if(!n||!i)return null;switch(n){case"self":case"multi-reference":case"reference":return["is-include-parent"].includes(i)?(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".variable"),render:function(e){var t,r=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(t=e.field.value)&&void 0!==t?t:""})});return(0,s.tZ)(Yt.Z,sh(sh({},r),{},{options:v,isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_VALUE_ASSOCIATION_FIELD"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_VALUE_ASSOCIATION_FIELD_PLACEHOLDER")}))}}):["is-associated-with"].includes(i)?(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".variable"),render:function(e){return(0,s.tZ)(Yt.Z,sh(sh({},e),{},{options:h,isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE_PLACEHOLDER")}))}}):["related"].includes(i)?(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".variable"),render:function(e){var n,o,i,a=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(n=e.field.value)&&void 0!==n?n:"",onChange:function(n){e.field.onChange(n);var o=null==l?void 0:l.find((function(e){return e.id===n||e.id===Number(n)||e.path===n})),i=null==o?void 0:o.type;t.setValue("conditions.".concat(r,".reference_type"),"multi-reference"===i||"reference"===i?i:null)}})});return(0,s.tZ)(Yt.Z,sh(sh({},a),{},{options:null!==(o=null==l||null===(i=l.filter((function(e){return"self"!==e.type})))||void 0===i?void 0:i.map((function(e){return{label:e.name,value:e.id}})))&&void 0!==o?o:[],isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_VALUE_ASSOCIATION_FIELD"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_VALUE_ASSOCIATION_FIELD_PLACEHOLDER")}))}}):["equals","not-equals","equals-in-reference","not-equals-in-reference"].includes(i)?(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r,n=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(t=e.field.value)&&void 0!==t?t:""})});return(0,s.tZ)(Yt.Z,sh(sh({},n),{},{options:null!==(r=null==o?void 0:o.reference_items.map((function(e){return{label:e.title,value:e.id}})))&&void 0!==r?r:[],isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE_PLACEHOLDER")}))}}):(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r,n=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(t=e.field.value)&&void 0!==t?t:[]})});return(0,s.tZ)(Rn.Z,sh(sh({},n),{},{options:null!==(r=null==o?void 0:o.reference_items.map((function(e){return{label:e.title,value:e.id.toString()}})))&&void 0!==r?r:[],isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE_PLACEHOLDER")}))}});case"option":return(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r,n=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(t=e.field.value)&&void 0!==t?t:""})});return(0,s.tZ)(Yt.Z,sh(sh({},n),{},{options:null!==(r=null==o?void 0:o.option_field_values)&&void 0!==r?r:[],isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE_PLACEHOLDER")}))}});case"date-time":return"current-date"===t.getValues("conditions.".concat(r,".value"))&&"is-between-date"!==i?(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:"current-date"===e.field.value?"current-date":"custom-date"})});return(0,s.tZ)(Yt.Z,sh(sh({},t),{},{isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_TITLE"),helpText:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_DESC"),options:[{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_OPTION"),value:"current-date"},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CUSTOM_DATE_OPTION"),value:"custom-date"}]}))}}),(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".date_offset"),defaultValue:0,render:function(e){return(0,s.tZ)(Ji.Z,sh(sh({},e),{},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_DATE_OFFSET_TITLE"),helpText:u("COM_SPPAGEBUILDER_EDITOR_FILTER_DATE_OFFSET_DESC")}))}}),(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".include_time"),defaultValue:!1,render:function(e){var t=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:Number(e.field.value)})});return(0,s.tZ)(jn.Z,sh(sh({},t),{},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_INCLUDE_TIME_TITLE"),helpText:u("COM_SPPAGEBUILDER_EDITOR_FILTER_INCLUDE_TIME_DESC"),isInlineLabel:!0}))}})]}):(0,s.BX)(s.HY,{children:["is-between-date"!==i&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:"current-date"===e.field.value?"current-date":"custom-date"})});return(0,s.tZ)(Yt.Z,sh(sh({},t),{},{isClearable:!1,label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_TITLE"),helpText:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_DESC"),options:[{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CURRENT_DATE_OPTION"),value:"current-date"},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_CUSTOM_DATE_OPTION"),value:"custom-date"}]}))}}),(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:"custom-date"===e.field.value?"":String(null!==(t=e.field.value)&&void 0!==t?t:"")})});return(0,s.tZ)(Os,sh(sh({},r),{},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_ENTER_VALUE_PLACEHOLDER")}))}})]}),"is-between-date"===i&&(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:null!==(t=e.field.value)&&void 0!==t?t:{from:"",to:""}})});return(0,s.tZ)($i,sh(sh({},r),{},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_ENTER_VALUE_PLACEHOLDER")}))}})]});default:return(0,s.tZ)(It.Qr,{control:t.control,name:"conditions.".concat(r,".value"),render:function(e){var t,r=sh(sh({},e),{},{field:sh(sh({},e.field),{},{value:String(null!==(t=e.field.value)&&void 0!==t?t:"")})});return(0,s.tZ)(Qe.Z,sh(sh({},r),{},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_FIELD_VALUE"),placeholder:u("COM_SPPAGEBUILDER_EDITOR_FILTER_ENTER_VALUE_PLACEHOLDER")}))}})}};var fh={"is-set":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_SET"),"is-not-set":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_NOT_SET"),"is-yes":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_YES"),"is-no":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_NO"),equals:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_EQUALS"),contains:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_CONTAINS"),"not-equals":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_NOT_EQUALS"),"not-contains":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_NOT_CONTAINS"),"equals-in-reference":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_EQUALS_IN_REFERENCE"),"not-equals-in-reference":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_NOT_EQUALS_IN_REFERENCE"),"starts-with":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_STARTS_WITH"),"not-starts-with":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_NOT_STARTS_WITH"),"ends-with":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_ENDS_WITH"),"not-ends-with":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_NOT_ENDS_WITH"),"is-greater-than":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_GREATER_THAN"),"is-less-than":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_LESS_THAN"),"is-greater-than-or-equal-to":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_GREATER_THAN_OR_EQUAL_TO"),"is-less-than-or-equal-to":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_LESS_THAN_OR_EQUAL_TO"),"is-include":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_INCLUDE"),"is-not-include":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_NOT_INCLUDE"),"is-include-parent":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_INCLUDE_PARENT"),"is-before":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_BEFORE"),"is-after":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_AFTER"),"is-between-date":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_BETWEEN_DATE"),"is-not-between-date":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_NOT_BETWEEN_DATE"),"is-associated-with":(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_IS_ASSOCIATED_WITH"),related:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_CONDITION_RELATED")},vh=[{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_ALL_LABEL"),value:"all"},{label:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_ANY_LABEL"),value:"any"}];function hh(e){return hh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},hh(e)}function bh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function yh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?bh(Object(r),!0).forEach((function(t){mh(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):bh(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function mh(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==hh(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==hh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===hh(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const gh=function(e){var t,r,n,o=e.index,i=e.form,a=e.fields,l=e.onRemove,c=e.onReset,u=e.collectionId,d=i.watch("conditions.".concat(o,".field")),p=(0,A.$K)(d)?function(e,t){var r=e.find((function(e){return e.path===t}));return null==r?void 0:r.type}(a,d):null,f=p?function(e){var t=function(e){switch(e){case"title":case"alias":case"text":case"rich-text":case"email":case"phone":return["is-set","is-not-set","equals","not-equals","contains","not-contains","starts-with","not-starts-with","ends-with","not-ends-with"];case"switch":return["is-yes","is-no"];case"image":case"color":case"link":case"file":case"video":return["is-set","is-not-set"];case"number":case"rating":return["equals","not-equals","is-greater-than","is-less-than","is-greater-than-or-equal-to","is-less-than-or-equal-to"];case"date-time":return["equals","not-equals","is-before","is-after","is-between-date"];case"option":return["equals","not-equals"];case"reference":case"multi-reference":return["is-include","is-not-include","equals-in-reference","not-equals-in-reference","is-associated-with"];case"self":return["is-include","is-not-include","is-include-parent","related"];default:return[]}}(e);return t.map((function(e){return{label:fh[e],value:e}}))}(p):[],v=i.watch("conditions.".concat(o,".condition")),h=(0,A.$K)(v)&&function(e){return!["is-set","is-not-set","is-yes","is-no"].includes(e)}(v),b=i.watch("conditions.".concat(o)),y="multi-reference"===(null===(t=a.find((function(e){return e.path===b.variable})))||void 0===t?void 0:t.type),m="self"===p&&"related"===v&&y,g=(0,L.$)();return(0,s.BX)("div",{css:Eh.filterItem,children:[(0,s.tZ)(It.Qr,{control:i.control,name:"conditions.".concat(o,".field"),render:function(e){return(0,s.tZ)(Yt.Z,yh(yh({},e),{},{label:g("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_SELECT_FIELD_SOURCE"),placeholder:g("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_SELECT_FIELD_SOURCE_PLACEHOLDER"),options:a.map((function(e){return{label:e.name,value:e.path}})),isClearable:!1,onChange:function(e){c(yh(yh({},b),{},{field:e.value,condition:null,value:null,variable:null}))}}))}}),f.length>0&&(0,s.tZ)(It.Qr,{control:i.control,name:"conditions.".concat(o,".condition"),render:function(e){var t,r=yh(yh({},e),{},{field:yh(yh({},e.field),{},{value:(0,A.$K)(e.field.value)&&null!==(t=e.field.value)&&void 0!==t?t:null})});return(0,s.tZ)(Yt.Z,yh(yh({},r),{},{label:g("COM_SPPAGEBUILDER_EDITOR_CONDITION_LABEL"),placeholder:g("COM_SPPAGEBUILDER_EDITOR_CONDITION_PLACEHOLDER"),options:f,isClearable:!1,onChange:function(e){c(yh(yh({},b),{},{condition:e.value,value:null,variable:null}))}}))}}),h&&(0,s.tZ)(ph,{form:i,index:o,field:null!==(r=a.find((function(e){return e.id===Number(d)})))&&void 0!==r?r:null,type:null!=p?p:null,condition:v,collectionId:u,fields:a}),v&&(n=v,["equals","not-equals","contains","contains","not-contains","starts-with","not-starts-with","ends-with","not-ends-with"].includes(n))&&(0,s.tZ)(It.Qr,{control:i.control,name:"conditions.".concat(o,".is_case_sensitive"),render:function(e){var t=yh(yh({},e),{},{field:yh(yh({},e.field),{},{value:e.field.value?1:0})});return(0,s.tZ)(jn.Z,yh(yh({},t),{},{label:g("COM_SPPAGEBUILDER_EDITOR_CONDITION_CASE_SENSITIVE"),isInlineLabel:!0}))}}),m&&(0,s.tZ)(It.Qr,{control:i.control,name:"conditions.".concat(o,".match_multi_reference"),render:function(e){return(0,s.tZ)(Yt.Z,yh(yh({},e),{},{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_LABEL"),placeholder:g("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_PLACEHOLDER"),options:vh,isClearable:!1}))}}),(0,s.tZ)("button",{type:"button",onClick:function(){return l(o)},css:Eh.removeButton,children:(0,s.tZ)(I.Z,{name:"trash",width:12,height:12})})]})};var Eh={applyButton:{name:"1vfc8dl-applyButton",styles:"display:flex;justify-content:flex-end;label:applyButton;"},filterItem:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";padding:",n.W0[8],";position:relative;background-color:",n.qo.background.white,";;label:filterItem;"),addFilterButton:(0,i.iv)(V.iZ.resetButton,";display:flex;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";;label:addFilterButton;"),removeButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:",n.W0[4],";right:",n.W0[8],";width:16px;height:16px;svg{color:",n.qo.icon.default,";}&:hover{svg{color:",n.qo.icon.error,";}};label:removeButton;")};function Oh(e){return Oh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Oh(e)}function _h(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function wh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ih(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wh(Object(r),!0).forEach((function(t){Sh(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wh(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Sh(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Oh(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Oh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Oh(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Ch={name:"xq6c5w-actionTray",styles:"padding:0;label:actionTray;"};const xh=function(e){var t,r,o,i=e.field,a=e.fieldState,l=e.label,u=e.isInlineLabel,d=e.disabled,p=e.readOnly,f=(e.placeholder,e.onChange,e.responsive),v=e.responsiveOrientation,h=e.helpText,b=e.collectionId,y=(0,L.$)(),m=(r=(0,c.useState)(!1),o=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,o)||function(e,t){if(e){if("string"==typeof e)return _h(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_h(e,t):void 0}}(r,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=m[0],E=m[1],O=lh(),w=(0,pe.l)({isOpen:g,arrow:"right",gap:20}),S=w.triggerRef,C=w.popoverRef,x=w.position,P=(0,rt.O)({defaultValues:{match:"all",conditions:[]}}),T=(0,It.Dq)({control:P.control,name:"conditions"});(0,c.useEffect)((function(){var e;P.reset.call(null,(e=i.value,(0,A.$K)(e)&&e?Ih(Ih({},e),{},{conditions:e.conditions.map((function(e){return Ih(Ih({},e),{},{field:e.field?e.field.path:null})}))}):{match:"all",conditions:[]}))}),[P.reset,i.value]);var D=(0,mo.We)({id:null!=O?O:0}),Z=null!==(t=P.watch("conditions"))&&void 0!==t?t:[],R=T.fields.map((function(e,t){return Ih(Ih({},e),Z[t])})),j=(0,c.useMemo)((function(){return D.data?D.data:[]}),[D.data]);return D.isFetching?(0,s.tZ)("div",{css:Ph.wrapper,children:(0,s.tZ)(Ye.ZP,{size:16})}):(0,s.tZ)(ne.Z,{field:i,fieldState:a,label:l,isInlineLabel:u,readOnly:p,responsive:f,responsiveOrientation:v,helpText:h,disabled:d,children:function(){return(0,s.BX)(s.HY,{children:[(0,s.BX)("button",{type:"button",css:Ph.wrapper,onClick:function(){return E(!0)},ref:S,children:[(0,s.BX)("div",{css:Ph.filterWrapper,children:[(0,s.tZ)(I.Z,{name:"filter",width:12,height:12}),(0,s.tZ)("span",{children:y("COM_SPPAGEBUILDER_EDITOR_FILTER_LABEL")})]}),(0,s.tZ)(I.Z,{name:"settings",width:20,height:20})]}),(0,s.tZ)(pe.h,{isOpen:g,onClickOutside:function(){return E(!1)},children:(0,s.tZ)("form",{css:Ph.popover,ref:C,style:{left:x.left,top:x.top},onSubmit:P.handleSubmit((function(e){i.onChange(function(e,t){return Ih(Ih({},e),{},{conditions:e.conditions.map((function(e){var r=function(e,t){var r;return(0,A.$K)(t)&&null!==(r=e.find((function(e){return e.path===t})))&&void 0!==r?r:null}(t,e.field);return(0,A.$K)(r)?Ih(Ih({},e),{},{field:r}):Ih(Ih({},e),{},{field:{}})}))})}(e,j)),E(!1)})),children:(0,s.BX)(Fu.Z,{header:{title:y("COM_SPPAGEBUILDER_EDITOR_FILTER_LABEL"),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:function(){return E(!1)},buttonCss:Ch,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:Ph.cardStyle,hideArrow:!0,children:[(0,s.BX)("div",{css:[V.iZ.cardInnerSection,{gap:n.W0[16]},V.iZ.cardVerticalHeightLimit,";label:DynamicContentFilterField;"],children:[(0,s.tZ)(It.Qr,{control:P.control,name:"match",render:function(e){return(0,s.tZ)(Yt.Z,Ih(Ih({},e),{},{label:y("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_LABEL"),placeholder:y("COM_SPPAGEBUILDER_EDITOR_FILTER_MATCH_PLACEHOLDER"),options:vh,isClearable:!1}))}}),(0,s.BX)("div",{css:Ph.filterList,children:[(0,s.tZ)("label",{children:y("COM_SPPAGEBUILDER_EDITOR_FILTER_CONDITIONS_LABEL")}),R.map((function(e,t){return(0,s.tZ)(gh,{form:P,index:t,fields:j,onRemove:function(){return T.remove(t)},onReset:function(e){T.update(t,e)},collectionId:b},e.id)})),(0,s.BX)("button",{type:"button",onClick:function(){return T.append({field:null,condition:null,value:null,variable:null,is_case_sensitive:!1})},css:Ph.addFilterButton,children:[(0,s.tZ)(I.Z,{name:"plusCircle",width:16,height:16}),(0,s.tZ)("span",{children:0===R.length?y("COM_SPPAGEBUILDER_EDITOR_FILTER_ADD_NEW_CONDITION"):y("COM_SPPAGEBUILDER_EDITOR_FILTER_ADD_ANOTHER_CONDITION")})]})]})]}),(0,s.tZ)("div",{css:Ph.footer,children:(0,s.tZ)(_.Z,{variant:"primary",type:"submit",disabled:!1,children:y("COM_SPPAGEBUILDER_EDITOR_FILTER_APPLY_BUTTON")})})]})})})]})}})};var Ph={wrapper:(0,i.iv)(V.iZ.resetButton,";width:100%;display:flex;align-items:center;justify-content:space-between;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";padding:",n.W0[8],";;label:wrapper;"),footer:(0,i.iv)("width:100%;display:flex;justify-content:flex-end;border-top:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[8],";;label:footer;"),filterWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";svg{color:",n.qo.icon.default,";};label:filterWrapper;"),popover:{name:"19cq7gz-popover",styles:"position:absolute;max-width:320px;width:100%;label:popover;"},cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";background-color:",n.qo.background.white,";;label:cardStyle;"),filterList:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";;label:filterList;"),fieldWrapper:{name:"1qe0aqe-fieldWrapper",styles:"display:grid;grid-template-columns:1fr 2fr;align-items:start;label:fieldWrapper;"},filterItem:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";padding:",n.W0[8],";position:relative;;label:filterItem;"),addFilterButton:(0,i.iv)(V.iZ.resetButton,";display:flex;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";;label:addFilterButton;"),removeButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:",n.W0[4],";right:",n.W0[8],";width:16px;height:16px;svg{color:",n.qo.icon.default,";}&:hover{svg{color:",n.qo.icon.error,";}};label:removeButton;")};function Lh(e){return Lh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Lh(e)}var Ah=["css"];function Th(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Dh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Th(Object(r),!0).forEach((function(t){Zh(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Th(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Zh(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Lh(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Lh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Lh(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Rh(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Bh(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function jh(e){return function(e){if(Array.isArray(e))return Mh(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Bh(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Bh(e,t){if(e){if("string"==typeof e)return Mh(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Mh(e,t):void 0}}function Mh(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var kh=["alias","self","image","video","file","phone","email","link","rich-text","gallery"];const Nh=function(e){var t,r,n,o=e.field,i=e.fieldState,a=e.onChange,l=void 0===a?A.ZT:a,u=e.label,d=e.placeholder,p=void 0===d?"":d,f=e.disabled,v=e.readOnly,h=e.loading,b=e.isSearchable,y=void 0!==b&&b,m=e.isInlineLabel,g=e.hideCaret,E=e.listLabel,O=e.isClearable,w=void 0===O||O,S=e.responsive,C=e.responsiveOrientation,x=e.showArrowUpDown,P=void 0!==x&&x,T=e.helpText,D=e.removeOptionsMinWidth,Z=void 0!==D&&D,R=e.defaultValue,j=void 0===R?null:R,B=e.required,M=void 0!==B&&B,k=e.excludedTypes,N=void 0===k?[]:k,G=e.augmentations,W=void 0===G?[]:G,U=e.fallbackValue,F=void 0===U?null:U,H=(0,L.$)(),q=(0,Mn.F)((function(e){return e.payload})),V=(0,c.useRef)(Bn.zu),z=(0,vc.D)(V.current),X=Vv()?Vv():null!==(t=null==q||null===(r=q.addon)||void 0===r||null===(n=r.settings)||void 0===n?void 0:n.source)&&void 0!==t?t:"",K=[],$=(0,mo.Lf)(Number(X));if($.data){var Y=$.data;if(K=function(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:kh,n=null===(t=e[0])||void 0===t?void 0:t.collection_id,o=[],i=new Set;return n&&function e(t,n){if(!i.has(n)){i.add(n);var a=t.filter((function(e){return e.collection_id===n&&!r.includes(e.type)})),l=a.filter((function(e){return["reference","multi-reference"].includes(e.type)}));a.filter((function(e){return!["reference","multi-reference"].includes(e.type)})).forEach((function(e){o.push({label:e.name,value:e.id,disabled:!1})})),l.forEach((function(r){o.push({label:r.name,value:r.id,disabled:!0}),null!=r&&r.reference_collection_id&&e(t,null==r?void 0:r.reference_collection_id)}))}}(e,n),o}(Y,N.length>0?N:kh),W.length>0){var Q=W.map((function(e){return{label:e.label,value:e.value}}));K=[].concat(jh(Q),jh(K))}}var J=(0,c.useCallback)((function(){var e,t,r,n=(0,Rt.o5)(null!==(e=null!==(t=o.value)&&void 0!==t?t:j)&&void 0!==e?e:F,V.current);return(null===(r=K.find((function(e){return String(e.value)===n})))||void 0===r?void 0:r.label)||""}),[K,o.value,j,F]),ee=Rh((0,c.useState)(J),2),te=ee[0],re=ee[1],oe=Rh((0,c.useState)(""),2),ie=oe[0],ae=oe[1],le=Rh((0,c.useState)(!1),2),ce=le[0],ue=le[1],se=(0,c.useMemo)((function(){return y?K.filter((function(e){return e.label.toLowerCase().startsWith(ie.toLowerCase())})):K}),[ie,y,K]),de=(0,pe.l)({isOpen:ce,isDropdown:!0}),fe=de.triggerRef,ve=de.triggerWidth,he=de.position,be=de.popoverRef;return(0,c.useEffect)((function(){re(J)}),[o.value,J]),(0,c.useEffect)((function(){ce&&re(J)}),[J,ce]),(0,s.tZ)(ne.Z,{fieldState:i,field:o,label:u,disabled:f||0===K.length,readOnly:v,loading:h,isInlineLabel:m,responsive:S,responsiveOrientation:C,helpText:T,required:M,children:function(e){var t=e.attributes,r=e.data,n=t.css,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,Ah),a=r.responsive,c=r.device;return V.current=c,(0,s.BX)("div",{css:Uh.mainWrapper,children:[(0,s.BX)("div",{css:Uh.inputWrapper,ref:fe,children:[(0,s.tZ)("input",Dh(Dh({},i),{},{onClick:function(){return ue((function(e){return!e}))},css:[n,Uh.input,";label:DynamicContentSchemaField;"],autoComplete:"off",readOnly:v||!y,placeholder:p,value:function(){if(z!==c){var e,t=(0,Rt.o5)(o.value,c);return(null===(e=K.find((function(e){return String(e.value)===String(t)})))||void 0===e?void 0:e.label)||""}return te}(),onChange:function(e){re(e.target.value),ae(e.target.value)}})),!g&&(0,s.tZ)("button",{type:"button",css:Uh.caretButton,onClick:function(){ue((function(e){return!e}))},disabled:v||0===K.length,children:P?(0,s.tZ)(I.Z,{name:"arrowUpDown",width:20,height:20,style:Uh.arrowUpDown}):(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20,style:Uh.toggleIcon({isOpen:ce})})})]}),(0,s.tZ)(pe.h,{isOpen:ce,onClickOutside:function(){return ue(!1)},children:(0,s.tZ)("div",{css:[Uh.optionsWrapper,{left:he.left,top:he.top,maxWidth:ve},";label:DynamicContentSchemaField;"],ref:be,children:(0,s.BX)("ul",{css:[Uh.options(Z),";label:DynamicContentSchemaField;"],children:[!!E&&(0,s.tZ)("li",{css:Uh.listLabel,children:E}),null==se?void 0:se.map((function(e){return(0,s.tZ)("li",{css:Uh.optionItem({isSelected:String(e.value)===(0,Rt.o5)(o.value,c),isHeading:e.disabled||!1}),children:(0,s.tZ)(_.Z,{variant:"text",buttonCss:Uh.label({isHeading:e.disabled}),onClick:function(){o.onChange((0,Rt.xU)({previous:o.value,value:e.value,responsive:a,device:c})),ae(""),l(e),ue(!1)},children:e.label})},String(e.value))})),w&&(0,s.tZ)("div",{css:Uh.clearButton({isDisabled:""===te}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===te,icon:(0,s.tZ)(I.Z,{name:"recycleAlt"}),onClick:function(){o.onChange(null),re(""),ae(""),ue(!1)},children:H("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var Gh={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},Wh={name:"7k051d-options",styles:"min-width:200px;label:options;"},Uh={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,i.iv)(o.c.body(),";width:100%;cursor:pointer;padding-right:",n.W0[32],";",V.iZ.textEllipsis,";:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),listLabel:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",n.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:function(e){return(0,i.iv)("z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";list-style-type:none;box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;margin:0;max-height:500px;border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";",!e&&Wh,";;label:options;")},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t,a=e.isHeading,l=void 0!==a&&a;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;")," ",l&&(0,i.iv)("background-color:",n.qo.background.disabled,";cursor:default;pointer-events:none;;label:optionItem;"),";;label:optionItem;")},label:function(e){var t=e.isHeading,r=void 0!==t&&t;return(0,i.iv)(r&&o.c.body("medium"),";width:100%;height:100%;display:flex;gap:",n.W0[8],";margin:0 ",n.W0[12],";padding:",n.W0[6]," 0;text-align:left;line-height:",n.Nv[24],";word-break:break-all;;label:label;")},toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&Gh,";;label:toggleIcon;")},arrowUpDown:(0,i.iv)("color:",n.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",n.W0[2],";;label:arrowUpDown;"),caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")};function Fh(e){return Fh="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Fh(e)}var Hh=["css"];function qh(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Vh(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?qh(Object(r),!0).forEach((function(t){zh(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qh(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function zh(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Fh(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Fh(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Fh(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Xh(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Kh(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Kh(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Kh(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const $h=function(e){var t=e.field,r=e.fieldState,n=e.onChange,o=void 0===n?A.ZT:n,i=e.label,a=e.placeholder,l=void 0===a?"":a,u=e.disabled,d=e.readOnly,p=e.loading,f=e.isSearchable,v=void 0!==f&&f,h=e.isInlineLabel,b=e.hideCaret,y=e.listLabel,m=e.isClearable,g=void 0===m||m,E=e.responsive,O=e.responsiveOrientation,w=e.showArrowUpDown,S=void 0!==w&&w,C=e.helpText,x=e.removeOptionsMinWidth,P=void 0!==x&&x,T=e.defaultValue,D=void 0===T?null:T,Z=e.required,R=void 0!==Z&&Z,j=(0,L.$)(),B=(0,c.useRef)(Bn.zu),M=(0,vc.D)(B.current),k=(0,mo.lL)({includeArticleSources:!0}),N=[];if(k.data){var G=k.data;N=G.map((function(e){return{label:e.title,value:e.id}}))||[]}var W=(0,c.useCallback)((function(){var e,r,n=(0,Rt.o5)(null!==(e=t.value)&&void 0!==e?e:D,B.current);return(null===(r=N.find((function(e){return String(e.value)===n})))||void 0===r?void 0:r.label)||""}),[N,t.value,D]),U=Xh((0,c.useState)(W),2),F=U[0],H=U[1],q=Xh((0,c.useState)(""),2),V=q[0],z=q[1],X=Xh((0,c.useState)(!1),2),K=X[0],$=X[1],Y=(0,c.useMemo)((function(){return v?N.filter((function(e){return e.label.toLowerCase().startsWith(V.toLowerCase())})):N}),[V,v,N]),Q=(0,pe.l)({isOpen:K,isDropdown:!0}),J=Q.triggerRef,ee=Q.triggerWidth,te=Q.position,re=Q.popoverRef;return(0,c.useEffect)((function(){H(W)}),[t.value,W]),(0,c.useEffect)((function(){K&&H(W)}),[W,K]),(0,s.tZ)(ne.Z,{fieldState:r,field:t,label:i,disabled:u||0===N.length,readOnly:d,loading:p,isInlineLabel:h,responsive:E,responsiveOrientation:O,helpText:C,required:R,children:function(e){var r=e.attributes,n=e.data,i=r.css,a=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(r,Hh),c=n.responsive,u=n.device;return B.current=u,(0,s.BX)("div",{css:Jh.mainWrapper,children:[(0,s.BX)("div",{css:Jh.inputWrapper,ref:J,children:[(0,s.tZ)("input",Vh(Vh({},a),{},{onClick:function(){return $((function(e){return!e}))},css:[i,Jh.input,";label:DynamicContentSourceField;"],autoComplete:"off",readOnly:d||!v,placeholder:l,value:function(){if(M!==u){var e,r=(0,Rt.o5)(t.value,u);return(null===(e=N.find((function(e){return String(e.value)===String(r)})))||void 0===e?void 0:e.label)||""}return F}(),onChange:function(e){H(e.target.value),z(e.target.value)}})),!b&&(0,s.tZ)("button",{type:"button",css:Jh.caretButton,onClick:function(){$((function(e){return!e}))},disabled:d||0===N.length,children:S?(0,s.tZ)(I.Z,{name:"arrowUpDown",width:20,height:20,style:Jh.arrowUpDown}):(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20,style:Jh.toggleIcon({isOpen:K})})})]}),(0,s.tZ)(pe.h,{isOpen:K,onClickOutside:function(){return $(!1)},children:(0,s.tZ)("div",{css:[Jh.optionsWrapper,{left:te.left,top:te.top,maxWidth:ee},";label:DynamicContentSourceField;"],ref:re,children:(0,s.BX)("ul",{css:[Jh.options(P),";label:DynamicContentSourceField;"],children:[!!y&&(0,s.tZ)("li",{css:Jh.listLabel,children:y}),Y.map((function(e){return(0,s.tZ)("li",{css:Jh.optionItem({isSelected:String(e.value)===(0,Rt.o5)(t.value,u)}),children:(0,s.tZ)(_.Z,{variant:"text",buttonCss:Jh.label,onClick:function(){t.onChange((0,Rt.xU)({previous:t.value,value:e.value,responsive:c,device:u})),z(""),o(e),$(!1)},children:e.label})},String(e.value))})),g&&(0,s.tZ)("div",{css:Jh.clearButton({isDisabled:""===F}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===F,icon:(0,s.tZ)(I.Z,{name:"recycleAlt"}),onClick:function(){t.onChange(null),H(""),z(""),$(!1)},children:j("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var Yh={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},Qh={name:"7k051d-options",styles:"min-width:200px;label:options;"},Jh={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,i.iv)(o.c.body(),";width:100%;cursor:pointer;padding-right:",n.W0[32],";",V.iZ.textEllipsis,";:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),listLabel:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",n.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:function(e){return(0,i.iv)("z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";list-style-type:none;box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;margin:0;max-height:500px;border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";",!e&&Qh,";;label:options;")},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},label:(0,i.iv)("width:100%;height:100%;display:flex;gap:",n.W0[8],";margin:0 ",n.W0[12],";padding:",n.W0[6]," 0;text-align:left;line-height:",n.Nv[24],";word-break:break-all;;label:label;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&Yh,";;label:toggleIcon;")},arrowUpDown:(0,i.iv)("color:",n.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",n.W0[2],";;label:arrowUpDown;"),caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")};function eb(e){return eb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},eb(e)}function tb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function rb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?tb(Object(r),!0).forEach((function(t){nb(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):tb(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function nb(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==eb(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==eb(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===eb(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ob(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return ib(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ib(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ib(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var ab={opacity:{label:"Opacity",min:0,max:100,unit:"%"},blur:{label:"Blur",min:0,max:200,unit:"px"},brightness:{label:"Brightness",min:0,max:100,unit:"%"},contrast:{label:"Contrast",min:0,max:200,unit:"%"},saturate:{label:"Saturation",min:0,max:200,unit:"%"},invert:{label:"Invert color",min:0,max:100,unit:"%"},grayscale:{label:"Grayscale",min:0,max:100,unit:"%"},sepia:{label:"Sepia",min:0,max:100,unit:"%"},hue_rotate:{label:"Hue rotate",min:0,max:360,unit:"deg"}};const lb=function(e){var t=e.label,r=e.field,n=e.fieldState,o=e.disabled,i=e.helpText,a=e.onChange,l=e.responsive,u=e.responsiveOrientation,d=e.isInline,p=void 0!==d&&d,f=r.value;(0,A.$K)(f)||(f={});var v=ob((0,c.useState)(f),2),h=v[0],b=v[1],y=(0,fe.N)(h),m=(0,Mn.F)((function(e){return e.payload})),g=m.sectionIndex,E=m.columnIndex,O=m.addonIndex,_=m.tableItem,w=(0,kn.s)((function(e){return e.currentState}));return(0,c.useEffect)((function(){b(f)}),[g,E,O,_,w]),(0,c.useEffect)((function(){r.onChange(y),a&&a(y)}),[y]),(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:n,disabled:o,helpText:i,responsive:l,responsiveOrientation:u,isInlineLabel:p,children:function(e){var t=e.attributes;return(0,A.J0)(ab).map((function(e){var r=ob(e,2),n=r[0],o=r[1];return(0,s.tZ)(fd.Z,{label:o.label,value:h[n],onChange:function(e){b((function(t){return rb(rb({},t),{},nb({},n,e))}))},min:o.min,max:o.max,disabled:t.disabled,isInlineLabel:p,staticUnit:o.unit},o.label)}))}})};var cb=r(7839),ub=r(680);const sb=function(e){var t=e.field,r=e.fieldState,n=e.label,o=e.disabled,i=e.onChange,a=e.responsive,l=e.responsiveOrientation,u=e.helpText,d=(0,L.$)(),p=(0,cb.Sh)(),f=(0,at.v)((function(e){return e.appConfig.is_google_fonts_disabled})),v=(0,c.useMemo)((function(){var e;return(0,ub.c)(null!==(e=p.data)&&void 0!==e?e:[],f)}),[p.data,f]),h=v.find((function(e){return e.value===t.value}));return(0,s.tZ)(ne.Z,{field:t,fieldState:r,label:n,disabled:o,responsive:a,responsiveOrientation:l,helpText:u,children:function(){return(0,s.tZ)(rd.Z,{value:h,options:v,placeholder:d("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),onChange:function(e){t.onChange(e.value),i&&i(e.value)},infiniteScroll:!0})}})};function db(e){return db="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},db(e)}function pb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function fb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?pb(Object(r),!0).forEach((function(t){vb(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):pb(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function vb(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==db(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==db(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===db(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var hb=[{label:"",value:"underline",icon:"underline"},{label:"",value:"italic",icon:"italic"},{label:"",value:"uppercase",icon:"uppercaseDuo"}];const bb=function(e){var t=e.label,r=void 0===t?"":t,n=e.values,o=e.onChange,i=e.wrapperStyle,a=(0,A.Zt)(n).filter((function(e){return!!n[e]}));return(0,s.BX)("div",{css:[yb.textDecorationWrapper({hasLabel:!!r}),i,";label:TextDecoration;"],children:[!!r&&(0,s.tZ)("div",{children:r}),(0,s.tZ)(Na,{variant:"secondary",tabList:hb,activeTab:a,onChange:function(e){var t=fb(fb({},n),{},vb({},e,!n[e]));o(t)},wrapperCss:yb.tabWrapperCss})]})};var yb={textDecorationWrapper:function(e){var t=e.hasLabel,r=void 0!==t&&t;return(0,i.iv)(r&&(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";>p{",o.c.caption(),";};label:textDecorationWrapper;"),";;label:textDecorationWrapper;")},tabWrapperCss:{name:"z2x1bx-tabWrapperCss",styles:"width:100%;height:32px;label:tabWrapperCss;"}};function mb(e){return mb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},mb(e)}function gb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Eb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?gb(Object(r),!0).forEach((function(t){Ob(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):gb(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ob(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==mb(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==mb(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===mb(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const _b=function(e){var t,r=e.field,n=e.fieldState,o=e.onChange,i=e.label,a=e.responsive,l=e.responsiveOrientation,c=e.helpText,u=(0,L.$)(),d=(0,A.$K)(r.value)?r.value:{},p={italic:d.italic,underline:d.underline,uppercase:d.uppercase},f=[{value:"",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_FONT_WEIGHT")},{value:"100",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_THIN")},{value:"200",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_EXTRA_THIN")},{value:"300",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_LIGHT")},{value:"400",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_NORMAL")},{value:"500",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_MEDIUM")},{value:"600",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_SEMI_BOLD")},{value:"700",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_BOLD")},{value:"800",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_EXTRA_BOLD")},{value:"900",label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_BLACK")}],v={label:u("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_FONT_WEIGHT"),value:""},h=null!==(t=f.find((function(e){return e.value===d.weight})))&&void 0!==t?t:v;return(0,s.tZ)(ne.Z,{label:i,field:r,fieldState:n,responsive:a,responsiveOrientation:l,helpText:c,children:function(){return(0,s.BX)("div",{css:wb.wrapper,children:[(0,s.tZ)(bb,{values:p,onChange:function(e){var t=Eb(Eb({},d),e);r.onChange(t),o&&o(t)},wrapperStyle:wb.wrapperStyle}),(0,s.tZ)(rd.Z,{options:f,value:h,onChange:function(e){var t=Eb(Eb({},d),{},{weight:e.value});r.onChange(t),o&&o(t)},wrapperStyle:wb.wrapperStyle,isFontWeight:!0})]})}})};var wb={wrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:wrapper;"),wrapperStyle:{name:"164ecj-wrapperStyle",styles:"max-width:136px;width:100%;height:32px;label:wrapperStyle;"}},Ib=["css"];function Sb(e){return function(e){if(Array.isArray(e))return Ab(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Lb(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Cb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Cb(Object(r),!0).forEach((function(t){Pb(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Cb(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Pb(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Tb(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Tb(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Tb(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Lb(e,t){if(e){if("string"==typeof e)return Ab(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ab(e,t):void 0}}function Ab(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Tb(e){return Tb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Tb(e)}var Db=[{label:"px",value:"px"},{label:"rem",value:"rem"},{label:"em",value:"em"},{label:"%",value:"%"}],Zb="px",Rb=function(e){if(!(0,A.$K)(e))return{column:"",row:"",unit:Zb};if("object"===Tb(e)){var t=e;return{column:(0,A.$K)(t.column)?String(t.column):"",row:(0,A.$K)(t.row)?String(t.row):"",unit:(0,A.$K)(t.unit)&&""!==t.unit?String(t.unit):Zb}}return{column:"",row:"",unit:Zb}},jb=function(e){var t=e.isLinked,r=e.fieldValue,n=e.device,o=e.disabled,i=e.onChange,a=1===new Set([r.column,r.row]).size;return(0,c.useEffect)((function(){i(a)}),[n,i]),(0,s.tZ)("button",{type:"button",css:Mb.linkButton(t),onClick:function(){return i(!t)},disabled:o,children:(0,s.tZ)(I.Z,{name:"chainLink",width:16,height:16})})};const Bb=function(e){var t,r,n=e.label,o=e.field,i=e.fieldState,a=e.disabled,l=e.readOnly,u=e.loading,d=e.helpText,p=e.onChange,f=e.responsive,v=e.responsiveOrientation,h=(t=(0,c.useState)(!0),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||Lb(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=h[0],y=h[1],m=(0,c.useRef)(Bn.zu),g=(0,c.useRef)({column:"",row:"",device:Bn.zu,responsive:!1}),E=function(e){return Rb((0,Rt.oo)(o.value,e)).unit};return(0,s.tZ)(ne.Z,{label:n,field:o,fieldState:i,disabled:a,readOnly:l,loading:u,helpText:d,responsive:f,responsiveOrientation:v,headerElement:function(e){var t,r=e.device,n=e.responsive;return(0,s.tZ)("div",{css:Mb.unitSelectWrapper,children:(0,s.tZ)(rd.Z,{options:Db,value:null!==(t=Db.find((function(e){return e.value===E(r)})))&&void 0!==t?t:Db[0],onChange:function(e){return function(e,t,r){var n=(0,Rt.oo)(o.value,t),i=Rb(n),a={column:i.column,row:i.row,unit:e},l=(0,Rt.xU)({previous:o.value,value:a,responsive:r,device:t});o.onChange(l),p&&p(l)}(e.value,r,n)},isClearable:!1,caretSize:12,inputCss:Mb.unitSelectInput})})},children:function(e){var t=e.attributes,r=e.data,n=t.css,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,Ib),a=r.device,l=r.responsive;m.current=a;var c=(0,Rt.oo)(o.value,a),u=Rb(c),d={column:u.column,row:u.row},f=t.disabled||t.readOnly;g.current={column:u.column,row:u.row,device:a,responsive:l};var v=function(e){var t,r,n,i,c=e.target,u=c.name,s=c.value,f="column"===u||"row"===u?u:null;if(f){var v=function(e){return e.replace(/[^-0-9.]/g,"").replace(/(\..*)\./g,"$1").replace(/(-+)/g,"-")}(s);t=b?{column:v,row:v}:xb(xb({},d),{},Pb({},f,v)),r=E(a),n={column:t.column,row:t.row,unit:r},i=(0,Rt.xU)({previous:o.value,value:n,responsive:l,device:a}),o.onChange(i),p&&p(i)}};return(0,s.BX)("div",{css:Mb.wrapper,children:[(0,s.BX)("div",{css:Mb.inputWrapper,children:[(0,s.BX)("div",{css:Mb.inputField,children:[(0,s.tZ)("span",{css:Mb.inputLabel,children:"Column"}),(0,s.tZ)("input",xb(xb(xb({},o),i),{},{id:(0,A.x0)(),type:"text",name:"column",value:d.column,onChange:v,autoComplete:"off",css:[Mb.input].concat(Sb(n),[""]),disabled:t.disabled,readOnly:t.readOnly}))]}),(0,s.BX)("div",{css:Mb.inputField,children:[(0,s.tZ)("span",{css:Mb.inputLabel,children:"Row"}),(0,s.tZ)("input",xb(xb(xb({},o),i),{},{id:(0,A.x0)(),type:"text",name:"row",value:d.row,onChange:v,autoComplete:"off",css:[Mb.input].concat(Sb(n),[""]),disabled:t.disabled,readOnly:t.readOnly}))]})]}),(0,s.tZ)(jb,{isLinked:b,fieldValue:d,device:a,disabled:f,onChange:y})]})}})};var Mb={wrapper:(0,i.iv)("display:flex;align-items:flex-end;gap:",n.W0[8],";;label:wrapper;"),inputWrapper:(0,i.iv)("display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:",n.W0[12],";flex:1;;label:inputWrapper;"),inputField:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[6],";;label:inputField;"),inputLabel:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";;label:inputLabel;"),input:(0,i.iv)(o.c.body(),";height:32px;border-radius:",n.E0[6],";border:1px solid ",n.qo.stroke.neutral,";padding:0 ",n.W0[12],";box-shadow:",n.AF.input,";&:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),linkButton:function(e){return(0,i.iv)(V.iZ.resetButton,";width:32px;height:32px;border-radius:",n.E0[6],";border:1px solid ",n.qo.stroke.neutral,";display:flex;align-items:center;justify-content:center;color:",e?n.qo.action.primary.default:n.qo.icon.default,";;label:linkButton;")},unitSelectWrapper:{name:"1blvnjn-unitSelectWrapper",styles:"display:flex;align-items:center;margin-left:auto;order:2;label:unitSelectWrapper;"},unitSelectInput:(0,i.iv)("&>input{",o.c.caption(),";border:none;box-shadow:none;padding:",n.W0[6]," ",n.W0[24]," ",n.W0[6]," ",n.W0[10],";height:28px;width:60px;&:focus{box-shadow:",n.AF.outline,";}}&>button{right:",n.W0[6],";};label:unitSelectInput;")};function kb(e){return function(e){if(Array.isArray(e))return Ub(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Wb(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Nb(e){return Nb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Nb(e)}function Gb(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Wb(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Wb(e,t){if(e){if("string"==typeof e)return Ub(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ub(e,t):void 0}}function Ub(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Fb(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Hb(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Fb(Object(r),!0).forEach((function(t){qb(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Fb(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function qb(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Nb(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Nb(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Nb(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Vb={total:0,entries:[]},zb=[{label:"fr",value:"fr"},{label:"px",value:"px"},{label:"rem",value:"rem"},{label:"em",value:"em"},{label:"%",value:"%"}],Xb={value:1,unit:"fr"},Kb=function(e){var t=Number(null!=e?e:0);return Number.isNaN(t)?0:Math.max(0,Math.floor(t))},$b=function(e,t){for(var r=(Array.isArray(e)?e:[]).slice(0,t);r.length<t;)r.push(Hb({},Xb));return r},Yb=function(e){var t,r;if(0===(null===(t=e.entries)||void 0===t?void 0:t.length)||!(0,A.$K)(e.entries))return"0px";var n=null===(r=e.entries)||void 0===r?void 0:r.map((function(e){return"".concat(e.value).concat(e.unit)})).join(" ");return n.length>25?n.slice(0,25)+"...":n},Qb=function(e){var t,r=e.value,n=e.unit,o=e.index,i=e.onChange,a=e.onRemove,l=Gb((0,c.useState)(String(null!=r?r:"")),2),u=l[0],d=l[1];(0,c.useEffect)((function(){d(String(null!=r?r:""))}),[r]);var p=null!==(t=zb.find((function(e){return e.value===n})))&&void 0!==t?t:zb[0],f=function(e){if(function(e){return""===e||"-"===e||"-."===e||"."===e}(e))return!1;var t=Number(e);return!Number.isNaN(t)&&(i(t,n,o),!0)};return(0,s.BX)("div",{css:ey.entry,children:[(0,s.tZ)("span",{css:ey.entryIndex,children:o+1}),(0,s.tZ)(Qd.Z,{fieldValue:{value:u,unit:p.value},onChange:function(e){var t,a=null!==(t=e.value)&&void 0!==t?t:"";e.unit!==n&&i(r,e.unit,o),a!==u&&(d(a),a.endsWith(".")||f(a))},onValueBlur:function(e){f(e)||d(String(null!=r?r:""))},customUnitOptions:zb,inputCss:ey.entryValueInput,unitInputStyles:ey.entryUnitInput,isSeparated:!0}),(0,s.tZ)("button",{type:"button",css:ey.btn,onClick:function(){return a(o)},children:(0,s.tZ)(I.Z,{name:"minus",width:20,height:20,style:ey.icon})})]})};const Jb=function(e){var t=e.label,r=e.field,n=e.fieldState,o=e.disabled,i=e.loading,a=e.onChange,l=e.responsive,u=e.responsiveOrientation,d=e.helpText,p=e.templateType,f=e.min,v=void 0===f?1:f,h=e.max,b=void 0===h?10:h,y=(0,L.$)(),m=Gb((0,c.useState)(!1),2),g=m[0],E=m[1],O=(0,pe.l)({isOpen:g,gap:20,arrow:"right"}),w=O.triggerRef,S=O.position,C=O.popoverRef;return(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:n,disabled:o,loading:i,responsive:l,responsiveOrientation:u,helpText:d,children:function(e){var t,n=e.data,o=n.device,i=n.responsive,l=(0,A.$K)(r.value)&&"object"===Nb(r.value)?r.value:void 0,c=null!==(t=(0,Rt.oo)(l,o))&&void 0!==t?t:Vb,u=Kb(c.total),d=$b(c.entries,u),f=function(e){var t=(0,Rt.xU)({previous:l,value:e,responsive:i,device:o});r.onChange(t),a&&a(t)},h=function(e,t,r){var n=kb(d);n[r]&&(n[r]={value:e,unit:t}),f(Hb(Hb({},c),{},{entries:n}))},m=function(e){var t=d.filter((function(t,r){return r!==e})),r=t.length;f(Hb(Hb({},c),{},{total:r,entries:t}))};return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{ref:w,children:(0,s.BX)("button",{css:ey.templateWrapper,onClick:function(){return E(!0)},children:[(0,s.tZ)("div",{css:ey.previewWrapper,children:(0,s.tZ)(I.Z,{name:"twoBlocks",height:14,width:14,style:ey.flipIcon("row"===p)})}),(0,s.tZ)("div",{css:ey.templateContent,children:Yb(c)}),(0,s.tZ)(I.Z,{name:"settings",height:20,width:20,style:ey.icon})]})}),(0,s.tZ)(pe.h,{isOpen:g,onClickOutside:function(){return E(!1)},children:(0,s.BX)("div",{css:[ey.popover,{position:"absolute",left:S.left,top:S.top},";label:GridTemplateField;"],ref:C,children:[(0,s.BX)("div",{css:ey.header,children:[(0,s.tZ)("span",{children:y("row"===p?"COM_SPPAGEBUILDER_EDITOR_GRID_TEMPLATE_EDIT_ROW_TRACKS":"COM_SPPAGEBUILDER_EDITOR_GRID_TEMPLATE_EDIT_COLUMN_TRACKS")}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:function(){return E(!1)},children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:ey.cardInnerSection,children:[(0,s.BX)("div",{css:ey.entrySection,children:[(0,s.tZ)(fd.Z,{label:y("row"===p?"COM_SPPAGEBUILDER_EDITOR_GRID_TEMPLATE_ROW_TOTAL":"COM_SPPAGEBUILDER_EDITOR_GRID_TEMPLATE_COLUMN_TOTAL"),value:(0,Rt.BB)(u),onChange:function(e){var t=Kb(null!=e?e:0),r=$b(c.entries,t);f(Hb(Hb({},c),{},{total:t,entries:r}))},min:v,max:b}),(0,s.tZ)(_.Z,{variant:"primary",buttonCss:ey.addButton,onClick:function(){var e=[].concat(kb(d),[Hb({},Xb)]),t=e.length;f(Hb(Hb({},c),{},{total:t,entries:e}))},children:(0,s.tZ)(I.Z,{name:"plus",width:16,height:16})})]}),(0,s.tZ)(Js,{}),u>0&&(0,s.tZ)("div",{css:ey.entryList,children:d.map((function(e,t){return(0,s.tZ)(Qb,{value:e.value,unit:e.unit,index:t,onChange:h,onRemove:m},t)}))})]})]})})]})}})};var ey={templateWrapper:(0,i.iv)(V.iZ.resetButton,";width:100%;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";display:flex;justify-content:space-between;align-items:center;height:32px;padding-right:",n.W0[8],";&:focus{box-shadow:",n.AF.outline,";};label:templateWrapper;"),previewWrapper:(0,i.iv)("height:30px;width:30px;display:flex;align-items:center;justify-content:center;border-right:1px solid ",n.qo.stroke.neutral,";;label:previewWrapper;"),templateContent:(0,i.iv)("flex:1;",o.c.body(),";padding-left:",n.W0[8],";;label:templateContent;"),popover:(0,i.iv)("background-color:",n.qo.background.white,";width:304px;box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:popover;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),cardInnerSection:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";;label:cardInnerSection;"),entryList:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:entryList;"),flipIcon:function(e){return(0,i.iv)("transform:",e?"rotate(90deg)":"none",";color:",n.qo.icon.default,";;label:flipIcon;")},entry:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";;label:entry;"),entryIndex:(0,i.iv)(o.c.body(),";width:20px;color:",n.qo.text.default,";;label:entryIndex;"),entryValueInput:{name:"1vndv5s-entryValueInput",styles:"width:105px;label:entryValueInput;"},entryUnitInput:(0,i.iv)("width:105px;padding-right:",n.W0[28],";;label:entryUnitInput;"),btn:{name:"114nsj5-btn",styles:"outline:none;border:none;background:none;cursor:pointer;label:btn;"},icon:(0,i.iv)("color:",n.qo.icon.default,";;label:icon;"),addButton:(0,i.iv)("width:20px;height:20px;padding:",n.W0[12]," ",n.W0[12],";display:flex;align-items:center;justify-content:center;margin-top:14px;svg{color:",n.qo.base.white,";};label:addButton;"),entrySection:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[10],";>div{flex:1;min-width:0;};label:entrySection;")};const ty=function(e){var t=e.label,r=e.field,n=e.fieldState,o=e.disabled,i=e.loading,a=e.onChange,l=e.headingsOnly,c=e.responsive,u=e.responsiveOrientation,d=e.helpText,p=function(){return(arguments.length>0&&void 0!==arguments[0]&&arguments[0]?["h1","h2","h3","h4","h5","h6"]:["h1","h2","h3","h4","h5","h6","div","p"]).map((function(e){return{label:"",value:e,icon:Rt.wx[e]}}))}(!!l);return(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:n,disabled:o,loading:i,responsive:c,responsiveOrientation:u,helpText:d,children:function(e){var t=e.data,n=t.device,o=t.responsive,i=(0,Rt.o5)(r.value,n);return(0,s.tZ)(Na,{variant:"secondary",activeTab:null!=i?i:"",tabList:p,onChange:function(e){var t=(0,Rt.xU)({previous:r.value,value:e,responsive:o,device:n});r.onChange(t),a&&a(t)}})}})};var ry=function(e){return ge.u.post(he.H.IMAGE_SHAPE,{shape:(t=e.shape,r=t.replace(/fill="([^"]+)"/g,'fill="currentColor"'),btoa(r))});var t,r},ny=function(e){return ge.u.delete(he.H.IMAGE_SHAPE,{params:{id:e}})};function oy(e){return oy="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},oy(e)}function iy(){iy=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==oy(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function ay(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function ly(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function cy(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ly(Object(r),!0).forEach((function(t){uy(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ly(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function uy(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==oy(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==oy(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===oy(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var sy=function(e){var t=e.title,r=e.closeModal,n=(0,L.$)(),o=(0,ve.p)().showToast,i=(0,rt.O)({defaultValues:{svg:""}}),a=function(){var e=(0,ve.p)().showToast,t=(0,ye.NL)(),r=(0,L.$)();return(0,me.D)({mutationFn:ry,onSuccess:function(){t.invalidateQueries(["ImageShapes"]),e({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_SUCCESS_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})}();return(0,s.BX)(St.Z,{onClose:function(){return r({action:"CLOSE"})},title:t,headerCss:dy.modalHeaderCss,contentCss:dy.modalContentCss,wrapperCss:dy.modalWrapper,children:[(0,s.tZ)("div",{css:dy.content,children:(0,s.tZ)(It.Qr,{name:"svg",control:i.control,render:function(e){return(0,s.tZ)(Hn,cy(cy({},e),{},{label:n("COM_SPPAGEBUILDER_EDITOR_SVG_SINGLE_PATH_ONLY")}))}})}),(0,s.BX)("div",{css:dy.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return r({action:"CLOSE"})},children:n("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{loading:a.isLoading,onClick:i.handleSubmit(function(){var e,t=(e=iy().mark((function e(t){return iy().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(0,A._V)(t.svg)){e.next=6;break}return e.next=3,a.mutateAsync({shape:t.svg});case 3:r({action:"CLOSE"}),e.next=7;break;case 6:o({type:"danger",message:n("COM_SPPAGEBUILDER_EDITOR_NOT_A_VALID_SVG_SHAPE")});case 7:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){ay(i,n,o,a,l,"next",e)}function l(e){ay(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}()),children:n("COM_SPPAGEBUILDER_EDITOR_SVG_SAVE")})]})]})},dy={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},content:(0,i.iv)("margin:",n.W0[12]," ",n.W0[24],";;label:content;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;gap:",n.W0[8],";padding:",n.W0[16]," ",n.W0[24],";box-shadow:",n.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,i.iv)("padding:",n.W0[12]," ",n.W0[24],";;label:modalHeaderCss;"),modalContentCss:(0,i.iv)("background-color:",n.qo.background.white,";;label:modalContentCss;")};function py(e){return py="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},py(e)}function fy(){fy=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==py(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function vy(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function hy(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){vy(i,n,o,a,l,"next",e)}function l(e){vy(i,n,o,a,l,"throw",e)}a(void 0)}))}}var by=function(e){var t=e.shape,r=atob(t).match(/<path\b[^>]*\bd\s*=\s*(['"])(.*?)\1/i),n=(null==r?void 0:r[2])||"";return(0,s.tZ)("div",{children:(0,s.tZ)("svg",{fill:"none",viewBox:"0 0 100 100",children:(0,s.tZ)("path",{fill:"currentColor",d:n})})})};const yy=function(e){var t,r,n=e.label,o=e.field,i=e.options,a=e.fieldState,l=e.disabled,c=e.loading,u=e.onChange,d=e.helpText,p=e.columns,f=void 0===p?2:p,v=(0,L.$)(),h=(r=(0,ve.p)().showToast,(0,be.a)({queryKey:["ImageShapes"],queryFn:function(){return ge.u.get(he.H.IMAGE_SHAPE).then((function(e){return e.data}))},onError:function(e){r({type:"danger",message:e.message})}})),b=(t=(0,Zt.d)().showModal,function(e){return t({component:sy,props:e,closeOnOutsideClick:!0})}),y=(0,Qt.g)(),m=h.data,g=function(){var e=(0,ye.NL)(),t=(0,ve.p)().showToast,r=(0,L.$)();return(0,me.D)({mutationFn:ny,onSuccess:function(){t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_SVG_SHAPES_DELETE_SUCCESS_MESSAGE")}),e.invalidateQueries(["ImageShapes"])},onError:function(e){t({type:"danger",message:e.message})}})}(),E=function(){var e=hy(fy().mark((function e(t){return fy().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y({title:v("COM_SPPAGEBUILDER_EDITOR_DELETE_SVG_CONTENT_TITLE"),confirmationMessage:v("COM_SPPAGEBUILDER_EDITOR_DELETE_SVG_CONTENT_MESSAGE"),skipMutation:!0});case 2:"CONFIRM"===e.sent.action&&g.mutate(t);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,s.tZ)(ne.Z,{label:n,field:o,fieldState:a,disabled:l,loading:c,helpText:d,children:function(e){var t=e.data,r=t.responsive,n=t.device,a=(0,Rt.o5)(o.value,n);return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:my.addButtonWrapper,children:(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"plus"}),onClick:hy(fy().mark((function e(){return fy().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,b({title:v("COM_SPPAGEBUILDER_EDITOR_INSERT_SVG_SHAPE")});case 2:case"end":return e.stop()}}),e)}))),children:v("COM_SPPAGEBUILDER_EDITOR_SVG")})}),(0,s.BX)("div",{css:my.wrapper({columns:f}),children:[i.map((function(e){return(0,s.tZ)(_.Z,{variant:"text",buttonCss:my.thumbItem({isActive:a===e.value}),onClick:function(){var t=(0,Rt.xU)({previous:o.value,value:e.value,responsive:r,device:n});o.onChange(t),u&&u(t)},children:e.icon&&(0,s.tZ)("span",{css:my.icon({isActive:a===e.value}),dangerouslySetInnerHTML:{__html:e.icon}})},e.value)})),null==m?void 0:m.map((function(e){return(0,s.BX)(_.Z,{variant:"text",buttonCss:my.thumbItem({isActive:a===e.shape}),onClick:function(){var t=(0,Rt.xU)({previous:o.value,value:e.shape,responsive:r,device:n});o.onChange(t),u&&u(t)},children:[(0,s.tZ)("span",{css:[my.icon({isActive:a===e.shape}),my.iconSvg,";label:ImageShapeField;"],children:(0,s.tZ)(by,{shape:e.shape})}),(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"trash"}),buttonCss:my.deleteButton,height:.5,width:.5,onClick:function(){E(e.id)},loading:g.isLoading})]},e.id)}))]})]})}})};var my={wrapper:function(e){var t=e.columns;return(0,i.iv)("display:grid;grid-template-columns:repeat(",t,", 1fr);max-height:375px;",V.iZ.overflowYAuto,";;label:wrapper;")},icon:function(e){var t=e.isActive;return(0,i.iv)("width:100%;border:1px solid ",t?n.qo.icon.primary:n.qo.icon.neutral,";border-radius:",n.E0[6],";;label:icon;")},iconSvg:(0,i.iv)("svg{opacity:0.2;height:80px;width:80px;}background:",n.qo.background.svgShape,";&:hover+button{opacity:1;};label:iconSvg;"),thumbItem:function(e){var t=e.isActive;return(0,i.iv)("padding:",n.W0[6],";",t&&(0,i.iv)("svg{color:",n.qo.icon.primary,";}padding:",n.W0[6],";;label:thumbItem;"),";;label:thumbItem;")},addButtonWrapper:(0,i.iv)("display:grid;place-content:center;margin-bottom:",n.W0[6],";;label:addButtonWrapper;"),deleteButton:(0,i.iv)("position:absolute;top:",n.W0[8],";right:",n.W0[4],";border:0;background:transparent;opacity:0;&:hover{background:transparent;opacity:1;};label:deleteButton;")};function gy(e){return gy="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gy(e)}function Ey(){Ey=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==gy(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Oy(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function _y(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Oy(i,n,o,a,l,"next",e)}function l(e){Oy(i,n,o,a,l,"throw",e)}a(void 0)}))}}function wy(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Sy(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Iy(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Sy(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}function Sy(e,t){if(e){if("string"==typeof e)return Cy(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Cy(e,t):void 0}}function Cy(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function xy(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Py(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xy(Object(r),!0).forEach((function(t){Ly(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xy(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ly(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==gy(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==gy(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===gy(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Ay={type:"url",url:"",menu:"",page:0,popup:0,action:"",is_no_repeat:0,new_tab:!1,nofollow:!1,noreferrer:!1,noopener:!1,close_popup:0};const Ty=function(e){var t=e.label,r=e.field,n=e.fieldState,i=e.disabled,a=e.readOnly,l=e.loading,u=e.helpText,d=e.onChange,p=e.linkPopup,f=void 0!==p&&p,v=e.defaultTab,h=void 0===v?"url":v,b=(0,L.$)(),y=(0,It.Gc)(),m=(0,Mi.o)((function(e){return e.page})),g=(0,at.v)((function(e){return e.appConfig})),E=(0,c.useMemo)((function(){if(!(0,A.$K)(r.value))return Ay;if((0,A.HD)(r.value))return Py(Py({},Ay),{},{url:r.value});if(-2===r.value.page){var e,t=Iy(g.pages);try{for(t.s();!(e=t.n()).done;){var n=e.value;if("articles"===n.icon){var o,i=Iy(n.options);try{for(i.s();!(o=i.n()).done;){var a=o.value;if("/articles/:slug"===a.legend)return Py(Py({},r.value),{},{page:a.value})}}catch(e){i.e(e)}finally{i.f()}}}}catch(e){t.e(e)}finally{t.f()}}return r.value}),[r.value,g.pages]),O=wy((0,c.useState)(E),2),_=O[0],w=O[1],S=(0,fe.N)(_),C=[{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP_OPEN"),value:"open"},{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP_CLOSE"),value:"close"}],x=(0,Mn.F)((function(e){return e.payload})),P=x.addonIndex,T=x.sectionIndex,D=x.columnIndex,Z=x.tableItem,R=x.addon,j=(0,kn.s)((function(e){return e.currentState})),B=(0,c.useMemo)((function(){var e;if(!((0,A.$K)(T)&&(0,A.$K)(D)&&(0,A.$K)(R)&&(0,A.$K)(m)))return null;var t=m[T].columns[D].addons,r=(0,Ff.Kt)(t,R);return null==r||null===(e=r.settings)||void 0===e?void 0:e.source}),[T,D,R,m]),M=y.getValues("settings.source")===zo.u.ARTICLES,k=wy((0,c.useState)(h),2),N=k[0],G=k[1],W=(0,Zt.d)().showModal,U=[{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_URL"),value:"url"},{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_MENU"),value:"menu"},{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_PAGE"),value:"page"},{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP"),value:"popup"}];(0,c.useEffect)((function(){var e;G(null!==(e=_.type)&&void 0!==e?e:h)}),[_]),(0,c.useEffect)((function(){w(E)}),[P,T,D,Z,j]),(0,c.useEffect)((function(){"url"===S.type&&r.onChange(S)}),[S]);var F=function(e,t){var n=Py(Py({},_),{},Ly({},t,e));w(n),d&&d(n),"url"!==t&&r.onChange(n)},H=function(){var e=_y(Ey().mark((function e(){var t,r,n,o;return Ey().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return void 0===(t=y.getValues("id"))&&(r=window.location.href,n=r.match(/\/editor\/(\d+)\/?/),o=r.match(/\/(?:popup-)?editor\/(\d+)\/?/),t=Number(null==n?void 0:n[1])||Number(null==o?void 0:o[1])),e.abrupt("return",t);case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),q=function(){var e=_y(Ey().mark((function e(){var t,n;return Ey().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,H();case 2:t=e.sent,n=Py(Py({},_),{},{close_popup:t}),r.onChange(n);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,c.useEffect)((function(){q()}),[]),(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:n,disabled:i,readOnly:a,loading:l,helpText:u,isCombineType:!0,adjustSpacing:!0,children:function(){return(0,s.tZ)(s.HY,{children:(0,s.tZ)("div",{css:Dy.wrapper,children:(0,s.BX)("div",{css:Dy.optionsWrapper,children:[(0,s.tZ)(Na,{variant:"secondary",activeTab:N,tabList:f?U:U.slice(0,-1),onChange:function(e){G(e);var t=Py(Py({},E),{},{type:e});w(t),d&&d(t),"url"!==e&&r.onChange(t)}}),"url"===N&&(0,s.tZ)(Kt.Z,{value:_.url,onChange:function(e){return F(e,"url")},placeholder:"https://",handleMediaIconClick:function(){W({component:_n,props:{allowedMediaType:"attachment",onInsert:function(e){var t=Py(Py({},_),{},{url:e.path});w(t),d&&d(t)}},closeOnOutsideClick:!0})},isClearable:!0,inputCss:Dy.textInput}),"menu"===N&&(0,s.tZ)(rd.Z,{value:g.menus.find((function(e){return String(e.value)===String(E.menu)})),options:g.menus,onChange:function(e){return F(e.value,"menu")},clearOption:function(){return F("","menu")},placeholder:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_SELECT_MENU")}),"page"===N&&(0,s.BX)(lc.$x,{onSelect:function(e){return F(e,"page")},value:E.page,children:[(0,s.tZ)(lc.i4,{children:(0,s.tZ)(lc.ki,{placeholder:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_SELECT_PAGE"),children:function(e){return c.Children.count(e)>0?c.Children.toArray(e)[0]:e}})}),(0,s.BX)(lc.Bw,{children:[(0,s.tZ)(lc.J3,{children:g.pages.map((function(e,t){return(0,s.BX)(lc.DI,{children:[(0,s.BX)(lc.n5,{children:[(0,s.tZ)(I.Z,{name:e.icon,width:16,height:16,noFill:!0}),e.label]}),e.options.filter((function(e){return function(e,t,r){return!!r||t===zo.u.ARTICLES||e.value!==zo.u.ARTICLES&&"/articles/:slug"!==e.legend}(e,B,M)})).map((function(e,t){return(0,s.BX)(lc.Ql,{value:e.value,css:Dy.pageItem,children:[(0,s.tZ)("span",{"data-label":!0,children:e.label}),e.legend&&(0,s.tZ)("span",{"data-legend":!0,children:e.legend})]},t)}))]},t)}))}),(0,s.tZ)(lc.fK,{children:b("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),"popup"===N&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(rd.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP_ACTION"),value:C.find((function(e){return String(e.value)===String(E.action)})),options:C,onChange:function(e){return F(e.value,"action")},clearOption:function(){return F("","action")}}),"open"===E.action&&(0,s.tZ)(rd.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP_ACTION_SELECT"),value:g.popups.find((function(e){return String(e.value)===String(E.popup)})),options:g.popups,onChange:function(e){return F(e.value,"popup")},clearOption:function(){return F("","popup")},isSearchable:!0}),"close"===E.action&&(0,s.BX)("div",{css:Dy.switchWrapper,children:[(0,s.tZ)("label",{children:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_POPUP_DONT_SHOW")}),(0,s.tZ)(Bd.Z,{checked:(0,Rt.sw)(E.is_no_repeat),onChange:function(e){var t=(0,Rt.sw)(e)?1:0;F(t,"is_no_repeat")}})]})]}),"popup"!==N&&(0,s.BX)("div",{css:Dy.linkOptions,children:[(0,s.tZ)("div",{css:o.c.caption(),children:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_LINK_OPTIONS")}),(0,s.tZ)(re.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NEW_TAB"),labelCss:Dy.label,checked:E.new_tab,onChange:function(e){return F(e,"new_tab")}}),(0,s.tZ)(re.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_FOLLOW"),labelCss:Dy.label,checked:E.nofollow,onChange:function(e){return F(e,"nofollow")}}),(0,s.tZ)(re.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_REFERRER"),labelCss:Dy.label,checked:E.noreferrer,onChange:function(e){return F(e,"noreferrer")}}),(0,s.tZ)(re.Z,{label:b("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_OPENER"),labelCss:Dy.label,checked:E.noopener,onChange:function(e){return F(e,"noopener")}})]})]})})})}})};var Dy={wrapper:(0,i.iv)("display:flex;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";>div{flex:1;}&:focus-within{box-shadow:",n.AF.outline,";}input{&:focus{box-shadow:none;}};label:wrapper;"),pageItem:(0,i.iv)("display:flex;flex-direction:column;align-items:start;gap:",n.W0[4],";&>span[data-label]{",o.c.body(),";color:",n.qo.text.default,";}&>span[data-legend]{",o.c.caption(),";color:",n.qo.text.hints,";};label:pageItem;"),wrapperButton:(0,i.iv)(V.iZ.resetButton,";width:100%;display:flex;align-items:center;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";&:focus,&:focus-within{box-shadow:",n.AF.outline,";}input{border:none;cursor:pointer;&:focus{box-shadow:none;}};label:wrapperButton;"),linkIcon:(0,i.iv)("height:32px;width:32px;border-right:1px solid ",n.qo.stroke.neutral,";color:",n.qo.icon.default,";text-align:center;line-height:",n.Nv[32],";;label:linkIcon;"),popoverWrapper:(0,i.iv)("background-color:",n.qo.background.white,";width:304px;box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:popoverWrapper;"),popoverHeader:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:popoverHeader;"),optionsWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";;label:optionsWrapper;"),textInput:(0,i.iv)("box-shadow:none;:focus{box-shadow:",n.AF.outline,";};label:textInput;"),linkOptions:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";;label:linkOptions;"),label:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";;label:label;"),switchWrapper:{name:"1fh46ae-switchWrapper",styles:"display:flex;justify-content:space-between;label:switchWrapper;"}};function Zy(e){return Zy="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Zy(e)}var Ry=["css"];function jy(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function By(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?jy(Object(r),!0).forEach((function(t){My(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jy(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function My(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Zy(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Zy(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Zy(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ky(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Ny(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ny(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ny(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Gy=function(e){var t=e.field,r=e.fieldState,n=e.onChange,o=void 0===n?A.ZT:n,i=e.label,a=e.placeholder,l=void 0===a?"":a,u=e.disabled,d=e.readOnly,p=e.loading,f=e.moduleType,v=e.isInlineLabel,h=e.isSearchable,b=void 0===h||h,y=e.isClearable,m=void 0===y||y,g=e.responsive,E=void 0!==g&&g,O=e.responsiveOrientation,w=e.helpText,S=(0,L.$)(),C=(0,at.v)((function(e){return e.appConfig})),x=C.module_positions,P=C.modules,T="module"===f?P:x,D=(0,A.I6)(T),Z=(0,c.useMemo)((function(){var e;return(null===(e=D.find((function(e){return String(e.value)===String(t.value)})))||void 0===e?void 0:e.label)||""}),[t.value,D]),R=ky((0,c.useState)(Z),2),j=R[0],B=R[1],M=ky((0,c.useState)(""),2),k=M[0],N=M[1],G=ky((0,c.useState)(!1),2),W=G[0],U=G[1],F=(0,pe.l)({isOpen:W,isDropdown:!0}),H=F.triggerRef,q=F.triggerWidth,V=F.position,z=F.popoverRef,X=(0,c.useMemo)((function(){return b?D.filter((function(e){return e.label.toLowerCase().startsWith(k.toLowerCase())})):D}),[b,D,k]);return(0,c.useEffect)((function(){B(Z)}),[t.value,Z]),(0,s.tZ)(ne.Z,{fieldState:r,field:t,label:i,disabled:u||0===D.length,readOnly:d,loading:p,isInlineLabel:v,responsive:E,responsiveOrientation:O,helpText:w,children:function(e){var r=e.attributes,n=(e.data,r.css),i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(r,Ry);return(0,s.BX)("div",{css:Uy.wrapper,children:[(0,s.BX)("div",{css:Uy.inputWrapper,ref:H,children:[(0,s.tZ)("input",By(By({},i),{},{onClick:function(){return U((function(e){return!e}))},css:[n,Uy.input,";label:ModuleField;"],autoComplete:"off",readOnly:d||!b,placeholder:l,value:j,onChange:function(e){B(e.target.value),N(e.target.value)}})),(0,s.tZ)("button",{type:"button",css:Uy.caretButton,onClick:function(){U((function(e){return!e}))},disabled:d,children:(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20,style:Uy.toggleIcon({isOpen:W})})})]}),(0,s.tZ)(pe.h,{isOpen:W,onClickOutside:function(){return U(!1)},children:(0,s.BX)("div",{css:[Uy.optionsWrapper,{left:V.left,top:V.top,maxWidth:q},";label:ModuleField;"],ref:z,children:[(0,s.tZ)("ul",{css:[Uy.options,";label:ModuleField;"],children:X.map((function(e){return(0,s.tZ)("li",{css:Uy.optionItem({isSelected:e.value===t.value}),children:(0,s.tZ)(_.Z,{variant:"text",buttonCss:Uy.optionButton,onClick:function(){t.onChange(e.value),B(e.label),N(""),o(e),U(!1)},children:e.label})},String(e.value))}))}),m&&(0,s.tZ)("div",{css:Uy.clearButton({isDisabled:""===j}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===j,onClick:function(){t.onChange(null),B(""),N("")},children:S("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})]})}})};var Wy={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},Uy={wrapper:{name:"i3il2f-wrapper",styles:"width:100%;label:wrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,i.iv)(o.c.body(),";width:100%;cursor:pointer;;label:input;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[8]," ",n.W0[12],";&>button{padding:0;",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";};label:clearButton;")},optionsWrapper:(0,i.iv)("position:absolute;width:100%;max-height:500px;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";;label:optionsWrapper;"),options:{name:"1s58vis-options",styles:"list-style-type:none;padding:0;margin:0;label:options;"},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.body(),";min-height:40px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},optionButton:(0,i.iv)("width:100%;padding:",n.W0[10]," ",n.W0[12],";;label:optionButton;"),caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;;label:caretButton;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&Wy,";;label:toggleIcon;")}};function Fy(e){return Fy="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Fy(e)}function Hy(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qy(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Hy(Object(r),!0).forEach((function(t){Vy(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Hy(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Vy(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Fy(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Fy(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Fy(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function zy(){return zy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},zy.apply(this,arguments)}function Xy(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Ky=function(e){var t,r,n,o,i,a=(o=null!==(t=e.pluginType)&&void 0!==t?t:"captcha",i=(0,ve.p)().showToast,(0,be.a)({queryKey:["Plugins",o],queryFn:function(){return function(e){return ge.u.get(he.H.PLUGINS,{params:{pluginsType:e}})}(o).then((function(e){return e.data}))},onSuccess:function(e){return e.plugins},onError:function(e){i({type:"danger",message:e.message})}}).data),l=null!==(r=null==a?void 0:a.plugins)&&void 0!==r?r:[],c=[{label:"Default",value:"default"}].concat(function(e){if(Array.isArray(e))return Xy(e)}(n=l)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(n)||function(e,t){if(e){if("string"==typeof e)return Xy(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Xy(e,t):void 0}}(n)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=zy({},(function(e){if(null==e)throw new TypeError("Cannot destructure "+e)}(e),e));return(0,s.tZ)(Yt.Z,qy(qy({},u),{},{options:c}))};var $y=r(3722);function Yy(e){return Yy="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Yy(e)}var Qy=["css"];function Jy(){Jy=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Yy(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function em(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function tm(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){em(i,n,o,a,l,"next",e)}function l(e){em(i,n,o,a,l,"throw",e)}a(void 0)}))}}function rm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function nm(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?rm(Object(r),!0).forEach((function(t){om(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rm(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function om(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Yy(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Yy(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Yy(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function im(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return am(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?am(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function am(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const lm=function(e){var t=e.options,r=e.field,n=e.fieldState,o=e.onChange,i=void 0===o?A.ZT:o,a=e.label,l=e.placeholder,u=void 0===l?"":l,d=e.disabled,p=e.readOnly,f=e.loading,v=e.isSearchable,h=void 0!==v&&v,b=e.isInlineLabel,y=e.hideCaret,m=e.listLabel,g=e.isClearable,E=void 0===g||g,O=e.responsive,w=e.responsiveOrientation,S=e.showArrowUpDown,C=void 0!==S&&S,x=e.helpText,P=e.removeOptionsMinWidth,T=void 0!==P&&P,D=(0,L.$)(),Z=(0,c.useRef)(Bn.zu),R=(0,vc.D)(Z.current),j=(0,Mn.F)((function(e){return e.payload})),B=(0,Mi.o)((function(e){return e.addCollectionItems})),M=(0,$y.b)(),k=(0,It.Gc)(),N=(0,c.useCallback)((function(){var e,n=(0,Rt.o5)(r.value,Z.current);return(null===(e=t.find((function(e){return String(e.value)===n})))||void 0===e?void 0:e.label)||""}),[t,r.value]),G=im((0,c.useState)(N),2),W=G[0],U=G[1],F=im((0,c.useState)(""),2),H=F[0],q=F[1],V=im((0,c.useState)(!1),2),z=V[0],X=V[1],K=(0,c.useMemo)((function(){return h?t.filter((function(e){return e.label.toLowerCase().startsWith(H.toLowerCase())})):t}),[H,h,t]),$=(0,pe.l)({isOpen:z,isDropdown:!0}),Y=$.triggerRef,Q=$.triggerWidth,J=$.position,ee=$.popoverRef;return(0,c.useEffect)((function(){U(N)}),[r.value,N]),(0,c.useEffect)((function(){z&&U(N)}),[N,z]),(0,s.tZ)(ne.Z,{fieldState:n,field:r,label:a,disabled:d||0===t.length,readOnly:p,loading:f,isInlineLabel:b,responsive:O,responsiveOrientation:w,helpText:x,children:function(e){var n=e.attributes,o=e.data,a=n.css,l=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(n,Qy),c=(o.responsive,o.device);return Z.current=c,(0,s.BX)("div",{css:sm.mainWrapper,children:[(0,s.BX)("div",{css:sm.inputWrapper,ref:Y,children:[(0,s.tZ)("input",nm(nm({},l),{},{onClick:function(){return X((function(e){return!e}))},css:[a,sm.input,";label:PresetField;"],autoComplete:"off",readOnly:p||!h,placeholder:u,value:function(){if(R!==c){var e,n=(0,Rt.o5)(r.value,c);return(null===(e=t.find((function(e){return String(e.value)===n})))||void 0===e?void 0:e.label)||""}return W}(),onChange:function(e){U(e.target.value),q(e.target.value)}})),!y&&(0,s.tZ)("button",{type:"button",css:sm.caretButton,onClick:function(){X((function(e){return!e}))},disabled:p||0===t.length,children:C?(0,s.tZ)(I.Z,{name:"arrowUpDown",width:20,height:20,style:sm.arrowUpDown}):(0,s.tZ)(I.Z,{name:"chevronDown",width:20,height:20,style:sm.toggleIcon({isOpen:z})})})]}),(0,s.tZ)(pe.h,{isOpen:z,onClickOutside:function(){return X(!1)},children:(0,s.tZ)("div",{css:[sm.optionsWrapper,{left:J.left,top:J.top,maxWidth:Q},";label:PresetField;"],ref:ee,children:(0,s.BX)("ul",{css:[sm.options(T),";label:PresetField;"],children:[!!m&&(0,s.tZ)("li",{css:sm.listLabel,children:m}),K.map((function(e){return(0,s.tZ)("li",{css:sm.optionItem({isSelected:String(e.value)===(0,Rt.o5)(r.value,c)}),children:(0,s.tZ)(_.Z,{variant:"text",buttonCss:sm.label,onClick:tm(Jy().mark((function t(){var n,o,a,l,c,u,s;return Jy().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,M.mutateAsync(Number(e.value));case 2:n=t.sent,o=j.sectionIndex,a=j.columnIndex,l=j.addonIndex,(0,A.$K)(o)&&(0,A.$K)(a)&&(0,A.$K)(l)&&B({sectionIndex:o,columnIndex:a,addonIndex:l,preset:n.preset}),c=JSON.parse(n.preset),u=null==c?void 0:c.settings,s=nm(nm({},u),{},{presets:e.value}),k.reset(nm(nm({},k.getValues()),{},{settings:s})),q(""),r.onChange(e.value),i(e),X(!1);case 13:case"end":return t.stop()}}),t)}))),children:e.label})},String(e.value))})),E&&(0,s.tZ)("div",{css:sm.clearButton({isDisabled:""===W}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===W,icon:(0,s.tZ)(I.Z,{name:"recycleAlt"}),onClick:function(){r.onChange(null),U(""),q(""),X(!1)},children:D("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})})]})}})};var cm={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},um={name:"7k051d-options",styles:"min-width:200px;label:options;"},sm={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputWrapper:{name:"39rwmw-inputWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;label:inputWrapper;"},input:(0,i.iv)(o.c.body(),";width:100%;cursor:pointer;padding-right:",n.W0[32],";",V.iZ.textEllipsis,";:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),listLabel:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";min-height:40px;display:flex;align-items:center;padding-left:",n.W0[16],";;label:listLabel;"),clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:{name:"1al3kic-optionsWrapper",styles:"position:absolute;width:100%;label:optionsWrapper;"},options:function(e){return(0,i.iv)("z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";list-style-type:none;box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;margin:0;max-height:500px;border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";",!e&&um,";;label:options;")},optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;&:hover{background-color:",n.qo.background.hover,";}",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},label:(0,i.iv)("width:100%;height:100%;display:flex;gap:",n.W0[8],";margin:0 ",n.W0[12],";padding:",n.W0[6]," 0;text-align:left;line-height:",n.Nv[24],";word-break:break-all;;label:label;"),toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&cm,";;label:toggleIcon;")},arrowUpDown:(0,i.iv)("color:",n.qo.icon.default,";display:flex;justify-content:center;align-items:center;margin-top:",n.W0[2],";;label:arrowUpDown;"),optionsContainer:{name:"1fif7on-optionsContainer",styles:"position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);label:optionsContainer;"},caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;display:flex;align-items:center;;label:caretButton;")},dm=r(1284),pm=r(2393),fm=r(8307);function vm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var hm=pm.tk.theme({"&.cm-editor":{border:"1px solid ".concat(n.qo.stroke.neutral),borderRadius:n.E0[5],overflow:"hidden",fontSize:"12px",height:"600px",background:n.qo.background.white},"&.cm-editor.cm-focused":{outline:"none",boxShadow:"".concat(n.AF.outline)},"&.cm-editor .cm-content":{wordWrap:"break-word",whiteSpace:"pre-wrap",wordBreak:"normal"}});const bm=function(e){var t,r,n=e.content,o=e.onChangeContent,a=e.isOpen,l=e.onClose,u=e.triggerRef,d=e.popoverGap,p=void 0===d?20:d,f=(0,L.$)(),v=/<li><p>(.*?)<\/p><(\/?)(ol|li|ul)>/gi,h=(t=(0,c.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return vm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?vm(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),b=h[0],y=h[1],m=(0,pe.l)({isOpen:a,triggerRef:u,gap:p,arrow:"right"}),g=m.position,E=m.popoverRef;return(0,c.useEffect)((function(){var e=n.replaceAll(v,"<li>$1<$2$3>");y(e)}),[n]),(0,s.tZ)(pe.h,{isOpen:a,onClickOutside:l,children:(0,s.tZ)("div",{css:(0,i.iv)({position:"absolute",left:g.left,top:g.top},";label:CodeEditorPopover;"),ref:E,children:(0,s.BX)(Fu.Z,{header:{title:f("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SOURCE_CODE"),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:l,buttonCss:ym.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:ym.cardStyle,hideArrow:!0,children:[(0,s.tZ)("div",{css:ym.cardInnerSection,children:(0,s.tZ)(fm.ZP,{theme:hm,extensions:[pm.tk.lineWrapping],value:b,onChange:y})}),(0,s.tZ)("div",{css:ym.buttonWrapper,children:(0,s.tZ)(_.Z,{onClick:function(){o(b),l(),y("")},children:f("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_APPLY_BUTTON")})})]})})})};var ym={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:(0,i.iv)(V.iZ.cardInnerSection,";flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";width:600px;;label:cardInnerSection;"),crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},sizeLineHeightSpaceWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:sizeLineHeightSpaceWrapper;"),textDecorationWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:textDecorationWrapper;"),wrapperStyle:{name:"pkzghw-wrapperStyle",styles:"max-width:136px;width:100%;label:wrapperStyle;"},buttonWrapper:(0,i.iv)("display:flex;justify-content:end;padding:",n.W0[12],";&>button{border-radius:",n.E0[8],";};label:buttonWrapper;")};function mm(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return gm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gm(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function gm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Em=function(e){var t,r=e.triggerRef,n=e.editor,o=null!==(t=n.getAttributes("textStyle").color)&&void 0!==t?t:"",i=o&&o.includes("var(--sppb")?"library":"color",a=mm((0,c.useState)(i),2),l=a[0],u=a[1],d=(0,L.$)(),p=mm((0,c.useState)(!1),2),f=p[0],v=p[1],h=mm((0,c.useState)(o),2),b=h[0],y=h[1],m=(0,pe.l)({isOpen:f,triggerRef:r,arrow:"right",gap:20}),g=m.position,E=m.popoverRef,O=function(e){y(e);var t=(0,A.K6)(e),r=t.validColor,o=t.color;r.isValid&&n.chain().focus().setColor(o).run()};return(0,s.BX)("div",{children:[(0,s.tZ)(Ne,{ref:r,color:o,onClick:function(){return v(!0)},onChangeColor:function(e){e||n.chain().focus().unsetColor().run()},dimension:{height:16,width:16},disableOutline:!0}),(0,s.tZ)(pe.h,{isOpen:f,onClickOutside:function(){return v(!1)},children:(0,s.BX)("div",{css:[Om.container,{position:"absolute",left:g.left,top:g.top},";label:ColorPalette;"],ref:E,children:[(0,s.BX)("div",{css:Om.header,children:[(0,s.BX)("div",{css:Om.tabContainer,children:[(0,s.tZ)("span",{css:Om.tabItem("color"===l),onClick:function(){u("color")},children:d("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_COLOR")}),(0,s.tZ)("span",{css:Om.tabItem("library"===l),onClick:function(){u("library")},children:d("COM_SPPAGEBUILDER_EDITOR_COLOR_PICKER_TITLE_LIBRARY")})]}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:function(){return v(!1)},children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:Om.content,children:["color"===l&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(Pe.Jg,{color:(0,A.K6)(o).validColor.toRgb(),onChange:function(e){var t=new de.C(e),r=(1===e.a?t.toHexString():t.toRgbString()).toUpperCase();y(r),n.chain().focus().setColor(r).run()}}),(0,s.tZ)("input",{type:"text",css:Om.input,value:b,placeholder:"#000000",onChange:function(e){return O(e.target.value)}})]}),"library"===l&&(0,s.tZ)(Ce,{onColorChange:O,selectedColor:b})]})]})})]})},Om={content:(0,i.iv)("padding:",n.W0[16],";;label:content;"),header:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:header;"),container:(0,i.iv)("background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.popover,";border-radius:",n.E0[8],";max-width:278px;width:100%;& .react-colorful{width:auto;gap:",n.W0[10],";}& .react-colorful__saturation-pointer{width:10px;height:10px;}& .react-colorful__hue-pointer,& .react-colorful__alpha-pointer{width:10px;height:10px;}& .react-colorful__saturation{border-radius:",n.E0[8],";border-bottom:unset;}& .react-colorful__hue,& .react-colorful__alpha{height:8px;border-radius:",n.E0[8],";};label:container;"),input:(0,i.iv)(o.c.body()," background-color:",n.qo.base.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";outline:none;padding:",n.W0[6]," ",n.W0[12],";margin-top:",n.W0[12],";width:100%;:focus{outline:none;box-shadow:",n.AF.outline,";};label:input;"),tabContainer:(0,i.iv)("display:flex;gap:",n.W0[4],";;label:tabContainer;"),tabItem:function(e){return(0,i.iv)("background-color:",e?n.qo.background.neutral:n.qo.background.white,";border-radius:",n.E0[4],";padding:",n.W0[4]," ",n.W0[8],";cursor:pointer;;label:tabItem;")}};function _m(e){return _m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_m(e)}function wm(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Im(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wm(Object(r),!0).forEach((function(t){Sm(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wm(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Sm(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==_m(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==_m(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Cm(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return xm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?xm(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Pm=["nofollow","noreferrer","noopener"],Lm={type:"url",url:"",menu:"",page:"",new_tab:!1,nofollow:!1,noreferrer:!1,noopener:!1},Am=function(e){var t=e.triggerRef,r=e.label,n=e.isActive,i=e.setLink,a=e.attributes,l=e.unsetLink,u=(0,L.$)(),d=Cm((0,c.useState)(Lm),2),p=d[0],f=d[1],v=Cm((0,c.useState)(null),2),h=v[0],b=v[1];(0,c.useEffect)((function(){if("open"===h){var e={nofollow:!1,noreferrer:!1,noopener:!1};if((0,A.$K)(a.rel)){var t=a.rel.split(" ").filter((function(e){return e}));Object.keys(e).forEach((function(r){t.includes(r)&&(e[r]=!0)}))}var r="url",n={url:"",menu:"",page:""};(0,A.$K)(a.linkType)&&a.linkType?"menu"===(r=a.linkType)&&(0,A.$K)(a.linkValue)?n.menu=a.linkValue:"page"===r&&(0,A.$K)(a.linkValue)?n.page=a.linkValue:"url"===r&&(0,A.$K)(a.linkValue)&&(n.url=a.linkValue):(0,A.$K)(a.url)&&(n.url=a.url),C(r),f(Im(Im(Im({},Lm),{},{type:r},n),{},{new_tab:a.new_tab},e))}}),[a,h]);var y=(0,pe.l)({isOpen:null!==h,gap:20,arrow:"right",triggerRef:t}),m=y.position,g=y.popoverRef,E=(0,at.v)((function(e){return e.appConfig})),O=E.pages.flatMap((function(e){return e.options.map((function(e){return{label:e.label,value:e.value.toString()}}))})),w=Cm((0,c.useState)("url"),2),S=w[0],C=w[1],x=(0,Zt.d)().showModal,P=[{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_URL"),value:"url"},{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_MENU"),value:"menu"},{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_PAGE"),value:"page"}],T=function(e,t){f(Im(Im({},p),{},Sm({},t,e)))};return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:Tm.linkWrapper,children:[(0,s.tZ)(Ii.Z,{content:u("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_LINK"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",title:u("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_LINK"),onClick:function(){return b("open")},css:Tm.selectedItem(n),children:(0,s.tZ)(I.Z,{name:"editorLink"})})}),n&&(0,s.tZ)("span",{role:"button",tabIndex:0,css:Tm.clearButton,onClick:function(e){e.stopPropagation(),l()},onKeyDown:A.ZT,children:(0,s.tZ)(I.Z,{name:"crossCircled"})})]}),(0,s.tZ)(pe.h,{isOpen:null!==h,onClickOutside:function(){f(Im(Im({},p),{},{type:"url"})),C("url"),b(null)},children:(0,s.BX)("div",{css:[Tm.popoverWrapper,{position:"absolute",left:m.left,top:m.top},";label:LinkToolItem;"],ref:g,children:[(0,s.BX)("div",{css:Tm.popoverHeader,children:[(0,s.tZ)("span",{children:r}),(0,s.tZ)("button",{type:"button",css:V.iZ.resetButton,onClick:function(){return b(null)},children:(0,s.tZ)(I.Z,{name:"cross"})})]}),(0,s.BX)("div",{css:Tm.optionsWrapper,children:[(0,s.tZ)(Na,{variant:"secondary",activeTab:S,tabList:P,onChange:function(e){C(e),f(Im(Im({},p),{},{type:e}))}}),"url"===S&&(0,s.tZ)(Kt.Z,{value:p.url,onChange:function(e){return T(e,"url")},placeholder:"https://",handleMediaIconClick:function(){b(null),x({component:_n,props:{allowedMediaType:"*",onInsert:function(e){f(Im(Im({},p),{},{url:e.path})),b("insert")}},closeOnOutsideClick:!0})},isClearable:!0,inputCss:Tm.textInput}),"menu"===S&&(0,s.tZ)(rd.Z,{value:E.menus.find((function(e){return String(e.value)===String(p.menu)})),options:E.menus,onChange:function(e){return T(e.value,"menu")},clearOption:function(){return T("","menu")},placeholder:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_SELECT_MENU")}),"page"===S&&(0,s.tZ)(rd.Z,{value:O.find((function(e){return String(e.value)===String(p[S])})),options:O,onChange:function(e){return T(e.value,"page")},clearOption:function(){return T("","page")},placeholder:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_SELECT_PAGE")}),(0,s.BX)("div",{css:Tm.linkOptions,children:[(0,s.tZ)("div",{css:o.c.caption(),children:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_LINK_OPTIONS")}),(0,s.tZ)(re.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NEW_TAB"),labelCss:Tm.label,checked:p.new_tab,onChange:function(e){return T(e,"new_tab")}}),(0,s.tZ)(re.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_FOLLOW"),labelCss:Tm.label,checked:p.nofollow,onChange:function(e){return T(e,"nofollow")}}),(0,s.tZ)(re.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_REFERRER"),labelCss:Tm.label,checked:p.noreferrer,onChange:function(e){return T(e,"noreferrer")}}),(0,s.tZ)(re.Z,{label:u("COM_SPPAGEBUILDER_EDITOR_LINK_FIELD_NO_OPENER"),labelCss:Tm.label,checked:p.noopener,onChange:function(e){return T(e,"noopener")}})]})]}),(0,s.tZ)("div",{css:Tm.buttonWrapper,children:(0,s.tZ)(_.Z,{onClick:function(){var e,t,r=p.type;if((0,A.$K)(r))if(0===(null===(e=p[r])||void 0===e?void 0:e.toString().trim().length))l();else{var n={href:"page"===r?(t=String(p[r]),"index.php?option=com_sppagebuilder&view=page&id=".concat(t)):String(p[r]),target:p.new_tab?"_blank":null,rel:Pm.filter((function(e){return p[e]})).join(" ")};n.linkType=r,"menu"===r?n.linkValue=String(p.menu):"page"===r?n.linkValue=String(p.page):"url"===r&&(n.linkValue=String(p.url)),i(n)}b(null),C("url"),f(Lm)},children:u("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_APPLY_BUTTON")})})]})})]})},Tm={linkWrapper:{name:"9x0sgj-linkWrapper",styles:">span{visibility:hidden;opacity:0;transition:visibility 0.3s ease,opacity 0.3s ease;}:hover{>span{visibility:visible;opacity:1;}};label:linkWrapper;"},selectedItem:function(e){return(0,i.iv)(V.iZ.resetButton,";color:",n.qo.icon.default,";:hover{svg{color:",n.qo.icon.hover,";}}",e&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:selectedItem;"),";;label:selectedItem;")},clearButton:(0,i.iv)("position:absolute;top:0;right:7px;transform:translate(50%, -50%);color:",n.qo.icon.default,";:hover{color:",n.qo.icon.hover,";};label:clearButton;"),wrapper:(0,i.iv)("display:flex;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";>div{flex:1;}&:focus-within{box-shadow:",n.AF.outline,";}input{border:none;&:focus{box-shadow:none;}};label:wrapper;"),wrapperButton:(0,i.iv)(V.iZ.resetButton,";width:100%;display:flex;align-items:center;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";&:focus,&:focus-within{box-shadow:",n.AF.outline,";}input{border:none;cursor:pointer;&:focus{box-shadow:none;}};label:wrapperButton;"),linkIcon:(0,i.iv)("height:32px;width:32px;border-right:1px solid ",n.qo.stroke.neutral,";color:",n.qo.icon.default,";text-align:center;line-height:",n.Nv[32],";;label:linkIcon;"),popoverWrapper:(0,i.iv)("background-color:",n.qo.background.white,";width:304px;box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:popoverWrapper;"),popoverHeader:(0,i.iv)("padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",o.c.caption("medium"),";};label:popoverHeader;"),optionsWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";;label:optionsWrapper;"),textInput:(0,i.iv)(":focus{box-shadow:",n.AF.outline,";};label:textInput;"),linkOptions:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[10],";;label:linkOptions;"),label:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";;label:label;"),buttonWrapper:(0,i.iv)("display:flex;justify-content:end;padding:",n.W0[12],";&>button{border-radius:",n.E0[8],";};label:buttonWrapper;")};function Dm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Zm={name:"1d8pafg-SystemEditorModal",styles:"display:none;label:SystemEditorModal;"};const Rm=function(e){var t,r,n=e.closeModal,o=e.title,i=e.content,a=e.onChangeContent,l=(0,L.$)(),u=(0,c.useRef)(null),d=(0,c.useRef)(null),p=(t=(0,c.useState)(!0),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Dm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Dm(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),f=p[0],v=p[1];return(0,c.useEffect)((function(){var e;null===(e=u.current)||void 0===e||e.submit()}),[]),(0,s.tZ)(St.Z,{onClose:function(){return n({action:"CLOSE"})},title:o,wrapperCss:jm.modalWrapperStyles,children:(0,s.BX)("div",{css:jm.modalWrapper,children:[(0,s.BX)("div",{css:jm.codeMirror,children:[(0,s.tZ)("form",{method:"post",target:"editorIframe",action:"".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_sppagebuilder&view=systemeditor&layout=default&tmpl=component"),ref:u,css:Zm,children:(0,s.tZ)("input",{type:"hidden",value:i,name:"system_editor_data"})}),f&&(0,s.tZ)("div",{css:jm.loadingWrapper,children:(0,s.tZ)(Ye.g4,{})}),(0,s.tZ)("iframe",{ref:d,onLoad:function(){return v(!1)},name:"editorIframe",title:"editor iframe",style:{display:"block"}})]}),(0,s.BX)("div",{css:jm.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return n({action:"CLOSE"})},children:l("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SYSTEM_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{onClick:function(){var e,t,r=null===(e=d.current)||void 0===e?void 0:e.contentWindow;if(null!=r&&null!==(t=r.tinyMCE)&&void 0!==t&&t.activeEditor){var o,i;null===(o=r.document)||void 0===o||null===(i=o.querySelector('[aria-controls="wf-editor-wysiwyg"]'))||void 0===i||i.click();var l=r.tinyMCE.activeEditor.getContent();a(l)}n({action:"CLOSE"})},children:l("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SYSTEM_EDITOR_APPLY")})]})]})})};var jm={modalWrapperStyles:{name:"167v7r0-modalWrapperStyles",styles:"max-width:2560px;label:modalWrapperStyles;"},modalWrapper:(0,i.iv)("iframe{width:100%;height:max(calc(100vh - 200px), 600px);max-height:2160px;",n.Uo.tablet,"{height:600px;}};label:modalWrapper;"),loadingWrapper:(0,i.iv)("width:100%;height:max(calc(100vh - 200px), 600px);max-height:2160px;",n.Uo.tablet,"{height:600px;}display:flex;justify-content:center;align-items:center;;label:loadingWrapper;"),codeMirror:{name:"1ivh6sh-codeMirror",styles:".cm-editor,.cm-theme{height:300px;}.cm-editor{border-radius:0px;padding:0;margin:0;};label:codeMirror;"},footerWrapper:(0,i.iv)("display:flex;align-items:center;padding:",n.W0[16],";gap:",n.W0[8],";justify-content:flex-end;;label:footerWrapper;")},Bm=function(e){var t=e.name,r=e.icon,n=e.isActive,o=e.onClick,i=e.disabled;return(0,s.tZ)(Ii.Z,{content:t,placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",onClick:o,css:Mm.wrapper(n),disabled:i,children:(0,s.tZ)(I.Z,{name:r})})})},Mm={wrapper:function(e){return(0,i.iv)(V.iZ.resetButton,";color:",n.qo.icon.default,";:hover{svg{color:",n.qo.icon.hover,";}}",e&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:wrapper;"),";;label:wrapper;")}};function km(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Nm=function(e){var t,r,n=e.editor,o=e.activePopover,i=e.setActivePopover,a=e.value,l=e.onChangeContent,u=e.threeDotStyle,d=(0,L.$)(),p=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return km(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?km(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),f=p[0],v=p[1],h=(0,pe.l)({isOpen:f,isDropdown:!0,gap:5}),b=h.triggerRef,y=h.position,m=h.popoverRef,g=(0,Zt.d)().showModal;return(0,s.BX)(s.HY,{children:[(0,s.tZ)("button",{type:"button",ref:b,onClick:function(){return v(!f)},css:[Gm.threeDots(f),u,";label:MoreOptions;"],children:(0,s.tZ)(I.Z,{name:"ellipsisXAlt"})}),(0,s.tZ)(pe.h,{isOpen:f,onClickOutside:function(){v(!1)},children:(0,s.BX)("div",{css:Gm.itemsWrapper({left:y.left,top:y.top}),ref:m,onClick:function(){return v(!1)},role:"button",tabIndex:0,onKeyDown:A.ZT,children:[(0,s.tZ)(Bm,{name:d("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_BLOCKQUOTE"),icon:"editorQuote",onClick:function(){return n.chain().focus().toggleBlockquote().run()},isActive:n.isActive("blockquote"),disabled:!n.can().chain().focus().toggleBlockquote().run()}),(0,s.tZ)(Ii.Z,{content:d("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_INSERT_TABLE"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",css:Gm.buttonCss("table"===o),onClick:function(){return i("table")},children:(0,s.tZ)(I.Z,{name:"editorTable"})})}),(0,s.tZ)(Ii.Z,{content:d("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SOURCE_CODE"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",css:Gm.buttonCss("code-editor"===o),onClick:function(){return i("code-editor")},children:(0,s.tZ)(I.Z,{name:"editorSourceCode"})})}),(0,s.tZ)(Ii.Z,{content:d("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_SYSTEM_EDITOR"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",css:Gm.buttonCss(),onClick:function(){g({component:Rm,props:{title:"System Editor",content:a,onChangeContent:l}})},children:(0,s.tZ)(I.Z,{name:"editorExpand"})})})]})})]})},Gm={threeDots:function(e){return(0,i.iv)(V.iZ.resetButton,";color:",n.qo.icon.default,";width:100%;display:flex;justify-content:center;:hover{color:",n.qo.icon.hover,";}",e&&(0,i.iv)("color:",n.qo.icon.primary,";;label:threeDots;"),";;label:threeDots;")},itemsWrapper:function(e){var t=e.left,r=e.top;return(0,i.iv)("position:absolute;left:",Math.max(0,t-8),"px;top:",r,"px;display:flex;align-items:center;gap:",n.W0[6],";padding:",n.W0[4]," ",n.W0[6],";background:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[2],";;label:itemsWrapper;")},buttonCss:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(V.iZ.resetButton," color:",n.qo.icon.default,";:hover{svg{color:",n.qo.icon.hover,";}}",e&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:buttonCss;"),";;label:buttonCss;")}};function Wm(e){return Wm="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Wm(e)}function Um(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Fm(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Um(Object(r),!0).forEach((function(t){Hm(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Um(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Hm(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Wm(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Wm(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Wm(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function qm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Vm=function(e){var t,r,n=e.onChangeContent,o=e.isOpen,a=e.onClose,l=e.triggerRef,u=e.popoverGap,d=void 0===u?20:u,p=(0,L.$)(),f={rows:3,cols:3,withHeaderRow:!0},v=(t=(0,c.useState)(f),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return qm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qm(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],b=v[1],y=(0,pe.l)({isOpen:o,triggerRef:l,gap:d,arrow:"right"}),m=y.position,g=y.popoverRef;return(0,s.tZ)(pe.h,{isOpen:o,onClickOutside:a,children:(0,s.tZ)("div",{css:(0,i.iv)({position:"absolute",left:m.left,top:m.top},";label:TablePopover;"),ref:g,children:(0,s.BX)(Fu.Z,{header:{title:p("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_INSERT_TABLE"),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:a,buttonCss:zm.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:zm.cardStyle,hideArrow:!0,children:[(0,s.BX)("div",{css:zm.cardInnerSection,children:[(0,s.tZ)(Kt.Z,{label:p("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_TABLE_NUM_OF_ROWS"),type:"number",value:h.rows,onChange:function(e){return b(Fm(Fm({},h),{},{rows:Number(e)}))}}),(0,s.tZ)(Kt.Z,{label:p("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_TABLE_NUM_OF_COLS"),type:"number",value:h.cols,onChange:function(e){return b(Fm(Fm({},h),{},{cols:Number(e)}))}}),(0,s.BX)("div",{css:zm.labelWrapper,children:[(0,s.tZ)("div",{css:zm.label,children:p("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_TABLE_HEADER_ROW")}),(0,s.tZ)(Bd.Z,{checked:h.withHeaderRow,value:h.withHeaderRow,onChange:function(){return b(Fm(Fm({},h),{},{withHeaderRow:!h.withHeaderRow}))}})]})]}),(0,s.tZ)("div",{css:zm.buttonWrapper,children:(0,s.tZ)(_.Z,{onClick:function(){n(h),b(f),a()},children:p("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_INSERT_BUTTON")})})]})})})};var zm={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:(0,i.iv)(V.iZ.cardInnerSection,";flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";width:304px;input[type='text']{:focus{box-shadow:",n.AF.outline,";}};label:cardInnerSection;"),crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},sizeLineHeightSpaceWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:sizeLineHeightSpaceWrapper;"),textDecorationWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:textDecorationWrapper;"),wrapperStyle:{name:"pkzghw-wrapperStyle",styles:"max-width:136px;width:100%;label:wrapperStyle;"},buttonWrapper:(0,i.iv)("display:flex;justify-content:end;padding:",n.W0[12],";&>button{border-radius:",n.E0[8],";};label:buttonWrapper;"),labelWrapper:(0,i.iv)("display:flex;justify-content:space-between;margin-bottom:",n.W0[4],";;label:labelWrapper;"),label:(0,i.iv)(o.c.caption(),";;label:label;")};function Xm(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Km(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Km(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Km(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var $m=function(e){var t=e.items,r=e.defaultItem,n=(0,L.$)(),o=Xm((0,c.useState)(!1),2),i=o[0],a=o[1],l=(0,pe.l)({isOpen:i,isDropdown:!0,gap:5}),u=l.triggerRef,d=l.position,p=l.popoverRef,f=Xm((0,c.useState)(r),2),v=f[0],h=f[1],b=Object.keys(t).find((function(e){return t[e].isActive}));return(0,c.useEffect)((function(){(0,A.$K)(b)&&h(b)}),[b]),(0,s.BX)(s.HY,{children:[(0,s.tZ)(Ii.Z,{content:n(t[v].name),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",ref:u,onClick:function(){return a(!i)},css:Ym.selectedItem(t[v].isActive),children:(0,s.tZ)(I.Z,{name:t[v].icon})})}),(0,s.tZ)(pe.h,{isOpen:i,onClickOutside:function(){a(!1)},children:(0,s.tZ)("div",{css:Ym.itemsWrapper({left:d.left,top:d.top}),ref:p,children:(0,A.Zt)(t).map((function(e){return(0,s.tZ)(Ii.Z,{content:n(t[e].name),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",css:Ym.itemButton({isActive:e===v}),onClick:function(){t[e].action(),h(e),a(!1)},children:(0,s.tZ)(I.Z,{name:t[e].icon})})},e)}))})})]})},Ym={selectedItem:function(e){return(0,i.iv)(V.iZ.resetButton,";color:",n.qo.icon.default,";:hover{svg{color:",n.qo.icon.hover,";}}",e&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:selectedItem;"),";;label:selectedItem;")},itemButton:function(e){var t=e.isActive;return(0,i.iv)(V.iZ.resetButton,";color:",n.qo.icon.default,";:hover{svg{color:",n.qo.icon.hover,";}}",t&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:itemButton;"),";;label:itemButton;")},itemsWrapper:function(e){var t=e.left,r=e.top;return(0,i.iv)("position:absolute;left:",Math.max(0,t-8),"px;top:",r,"px;display:flex;align-items:center;gap:",n.W0[6],";background:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[2],";padding:",n.W0[4]," ",n.W0[6],";;label:itemsWrapper;")}};function Qm(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Jm=function(e){return{h1:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H1",icon:"editorHeading1",isActive:e.isActive("heading",{level:1}),action:function(){return e.chain().focus().toggleHeading({level:1}).run()}},h2:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H2",icon:"editorHeading2",isActive:e.isActive("heading",{level:2}),action:function(){return e.chain().focus().toggleHeading({level:2}).run()}},h3:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H3",icon:"editorHeading3",isActive:e.isActive("heading",{level:3}),action:function(){return e.chain().focus().toggleHeading({level:3}).run()}},h4:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H4",icon:"editorHeading4",isActive:e.isActive("heading",{level:4}),action:function(){return e.chain().focus().toggleHeading({level:4}).run()}},h5:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H5",icon:"editorHeading5",isActive:e.isActive("heading",{level:5}),action:function(){return e.chain().focus().toggleHeading({level:5}).run()}},h6:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_H6",icon:"editorHeading6",isActive:e.isActive("heading",{level:6}),action:function(){return e.chain().focus().toggleHeading({level:6}).run()}}}},eg=function(e){return{list:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_UNORDERED_LIST",icon:"editorList",isActive:e.isActive("bulletList"),action:function(){return e.chain().focus().toggleBulletList().run()}},orderedList:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ORDERED_LIST",icon:"editorOrderedList",isActive:e.isActive("orderedList"),action:function(){return e.chain().focus().toggleOrderedList().run()}}}},tg=function(e){return{left:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ALIGN_LEFT",icon:"textAlignLeft",isActive:e.isActive({textAlign:"left"}),action:function(){return e.chain().focus().setTextAlign("left").run()}},center:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ALIGN_CENTER",icon:"textAlignCenter",isActive:e.isActive({textAlign:"center"}),action:function(){return e.chain().focus().setTextAlign("center").run()}},right:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ALIGN_RIGHT",icon:"textAlignRight",isActive:e.isActive({textAlign:"right"}),action:function(){return e.chain().focus().setTextAlign("right").run()}},justify:{name:"COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ALIGN_JUSTIFY",icon:"textAlignJustify",isActive:e.isActive({textAlign:"justify"}),action:function(){return e.chain().focus().setTextAlign("justify").run()}}}},rg=function(e){var t,r,n=e.editor,o=e.value,i=e.onChange,a=(0,L.$)(),l=(0,c.useRef)(null),u=(t=(0,c.useState)(null),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return Qm(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Qm(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=u[0],p=u[1],f=(0,Zt.d)().showModal;return n?(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:ng.wrapper,ref:l,children:[(0,s.tZ)("div",{css:ng.controlsGroup,children:(0,s.tZ)($m,{items:Jm(n),defaultItem:"h1"})}),(0,s.BX)("div",{css:ng.controlsGroup,children:[(0,s.tZ)(Bm,{name:a("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_BOLD"),icon:"editorBold",onClick:function(){return n.chain().focus().toggleBold().run()},isActive:n.isActive("bold"),disabled:!n.can().chain().focus().toggleBold().run()}),(0,s.tZ)(Bm,{name:a("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_ITALIC"),icon:"editorItalic",onClick:function(){return n.chain().focus().toggleItalic().run()},isActive:n.isActive("italic"),disabled:!n.can().chain().focus().toggleItalic().run()}),(0,s.tZ)(Bm,{name:a("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_UNDERLINE"),icon:"editorUnderline",onClick:function(){return n.chain().focus().toggleUnderline().run()},isActive:n.isActive("italic"),disabled:!n.can().chain().focus().toggleUnderline().run()}),(0,s.tZ)(Ii.Z,{content:a("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_COLOR"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)(Em,{editor:n,triggerRef:l})})]}),(0,s.tZ)("div",{css:ng.controlsGroup,children:(0,s.tZ)($m,{items:tg(n),defaultItem:"left"})}),(0,s.tZ)("div",{css:ng.controlsGroup,children:(0,s.tZ)($m,{items:eg(n),defaultItem:"list"})}),(0,s.tZ)("div",{css:ng.controlsGroup,children:(0,s.tZ)(Ii.Z,{content:a("COM_SPPAGEBUILDER_EDITOR_RICHTEXT_INSERT_IMAGE"),placement:"top",isVisibleOnHover:!0,children:(0,s.tZ)("button",{type:"button",css:ng.buttonCss(),onClick:function(){f({component:_n,props:{onInsert:function(e){null==n||n.chain().focus().setImage({src:e.path,alt:e.title}).run()},allowedMediaType:"image"},closeOnOutsideClick:!0})},children:(0,s.tZ)(I.Z,{name:"image"})})})}),(0,s.tZ)("div",{css:ng.controlsGroup,children:(0,s.tZ)(Am,{isActive:n.isActive("link"),attributes:{url:n.getAttributes("link").href,new_tab:"_blank"===n.getAttributes("link").target,rel:n.getAttributes("link").rel,linkType:n.getAttributes("link")["data-link-type"],linkValue:n.getAttributes("link")["data-link-value"]},setLink:function(e){var t=e.href,r=e.target,o=e.rel,i=e.linkType,a=e.linkValue;if(n.chain().focus().setLink({href:t,target:r,rel:o}).run(),i||a){var l={};i&&(l["data-link-type"]=i),a&&(l["data-link-value"]=a),n.chain().focus().updateAttributes("link",l).run()}},unsetLink:function(){n.chain().focus().unsetLink().run()},triggerRef:l})}),(0,s.tZ)(Nm,{editor:n,activePopover:d,setActivePopover:p,value:o,onChangeContent:function(e){n.commands.setContent(e),i(e)},threeDotStyle:ng.threeDot})]}),(0,s.tZ)(bm,{content:o,onChangeContent:function(e){null==n||n.commands.setContent(e),i(e)},isOpen:"code-editor"===d,onClose:function(){return p(null)},triggerRef:l}),(0,s.tZ)(Vm,{content:o,onChangeContent:function(e){var t=e.rows,r=e.cols,o=e.withHeaderRow;null==n||n.chain().focus().insertTable({rows:t,cols:r,withHeaderRow:o}).run()},isOpen:"table"===d,onClose:function(){return p(null)},triggerRef:l})]}):null},ng={wrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[6],";border-bottom:1px solid ",n.qo.stroke.neutral,";background-color:",n.qo.background.white,";z-index:",n.W5.positive,";border-top-right-radius:",n.E0[4],";border-top-left-radius:",n.E0[4],";padding:",n.W0[8]," ",n.W0[6],";;label:wrapper;"),buttonCss:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,i.iv)(V.iZ.resetButton," svg{color:",n.qo.icon.default,";}",e&&(0,i.iv)("svg{color:",n.qo.icon.primary,";};label:buttonCss;")," :hover{svg{color:",n.qo.icon.hover,";}};label:buttonCss;")},controlsGroup:(0,i.iv)("position:relative;display:flex;align-items:center;gap:",n.W0[6],";padding-right:",n.W0[6],";&:after{content:'';height:100%;width:1px;position:absolute;right:0;top:0;background-color:",n.qo.stroke.neutral,";};label:controlsGroup;"),threeDot:{name:"1prv1r-threeDot",styles:"width:auto;label:threeDot;"}},og=r(9734),ig=r(7937),ag=r(561),lg=r(353),cg=r(336),ug=r(9966),sg=r(5525),dg=r(7490),pg=r(8486),fg=r(3582),vg=r(6484),hg=r(4565),bg=r(1575),yg=r(3237),mg=r(1347),gg=r(658),Eg=r(3626),Og=r(3991),_g=r(2701),wg=r(6279),Ig=r(8510),Sg=r(6761),Cg=function(e){var t=(0,c.useRef)(null),r=e.node,n=r.attrs,o=n.src,i=n.alt;return(0,c.useEffect)((function(){var e;(0,A.$K)(r.attrs.style)&&(null===(e=t.current)||void 0===e||e.setAttribute("style",r.attrs.style))}),[r.attrs.style]),(0,s.tZ)(dm.T5,{children:(0,s.tZ)("img",{ref:t,src:A.Xy.pagebuilderBase+o,alt:i,className:r.attrs.class,height:r.attrs.height,width:r.attrs.width})})},xg=Sg.ZP.extend({addNodeView:function(){return(0,dm.fW)(Cg)},addAttributes:function(){var e,t,r,n,o,i;return{src:{default:null!==(e=this.editor)&&void 0!==e&&e.getAttributes("src")?this.editor.getAttributes("src"):null,parseHTML:function(e){return e.hasAttribute("src")?e.getAttribute("src"):null}},alt:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("alt"),parseHTML:function(e){return e.hasAttribute("alt")?e.getAttribute("alt"):null}},height:{default:null===(r=this.editor)||void 0===r?void 0:r.getAttributes("height"),parseHTML:function(e){return e.hasAttribute("height")?e.getAttribute("height"):null}},width:{default:null===(n=this.editor)||void 0===n?void 0:n.getAttributes("width"),parseHTML:function(e){return e.hasAttribute("width")?e.getAttribute("width"):null}},class:{default:null===(o=this.editor)||void 0===o?void 0:o.getAttributes("class")},style:{default:null===(i=this.editor)||void 0===i?void 0:i.getAttributes("style")}}}}).configure({inline:!0,allowBase64:!0});function Pg(e){return Pg="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Pg(e)}function Lg(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ag(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Lg(Object(r),!0).forEach((function(t){Tg(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Lg(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Tg(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Pg(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Pg(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Pg(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Dg(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Zg(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Zg(e,t){if(e){if("string"==typeof e)return Rg(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Rg(e,t):void 0}}function Rg(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var jg=r(6022).Z.extend({renderHTML:function(e){var t,r=e.HTMLAttributes,n=e.node,o=r.style,i=null!==(t=n.attrs.textAlign)&&void 0!==t?t:null;if(!o)return["p",r,0];var a,l={},c=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Zg(e))){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(o.replace(/\s+/g,"").split(";").filter((function(e){return!!e})).map((function(e){var t=Dg(e.split(":"),2);return{key:t[0],value:t[1]}})));try{for(c.s();!(a=c.n()).done;){var u=a.value,s=u.key,d=u.value;(0,A.$K)(l[s])||(l[s]=d)}}catch(e){c.e(e)}finally{c.f()}for(var p=[],f=0,v=Object.entries(l);f<v.length;f++){var h=Dg(v[f],2),b=h[0],y=h[1];"left"!==i&&p.push("".concat(b,":").concat(y,";"))}return p.length>0&&(r=Ag(Ag({},r),{},{style:p.join(" ")})),["p",r,0]},addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),Bg=jg;function Mg(e){return Mg="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Mg(e)}function kg(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ng(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?kg(Object(r),!0).forEach((function(t){Gg(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):kg(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Gg(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Mg(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Mg(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Mg(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Wg(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||Ug(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ug(e,t){if(e){if("string"==typeof e)return Fg(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Fg(e,t):void 0}}function Fg(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Hg=r(3621).Z.extend({renderHTML:function(e){var t=e.HTMLAttributes,r=t.style;if(!r)return["span",t,0];var n,o={},i=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=Ug(e))){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(r.replace(/\s+/g,"").split(";").filter((function(e){return!!e})).map((function(e){var t=Wg(e.split(":"),2);return{key:t[0],value:t[1]}})));try{for(i.s();!(n=i.n()).done;){var a=n.value,l=a.key,c=a.value;(0,A.$K)(o[l])||(o[l]=c)}}catch(e){i.e(e)}finally{i.f()}for(var u=[],s=0,d=Object.entries(o);s<d.length;s++){var p=Wg(d[s],2),f=p[0],v=p[1];u.push("".concat(f,":").concat(v,";"))}return u.length>0&&(t=Ng(Ng({},t),{},{style:u.join(" ")})),["span",t,0]},addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),qg=Hg;function Vg(e){return Vg="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Vg(e)}function zg(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Xg(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?zg(Object(r),!0).forEach((function(t){Kg(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zg(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Kg(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Vg(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Vg(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Vg(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $g(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Yg=function(e){var t=e.value,r=e.onChange,n=e.editorRef,o=function(e){var t,r,n=e.content,o=e.placeholder,i=e.onChange,a=(0,Mn.F)((function(e){return e.payload})),l=a.addonIndex,u=a.sectionIndex,s=a.columnIndex,d=a.tableItem,p=(0,kn.s)().currentState,f=(0,c.useRef)(null),v=/<li><p>(.*?)<\/p><(\/?)(ol|li|ul)>/gi,h="<li>$1<$2$3>",b=(t=(0,c.useState)(n),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return $g(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$g(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),y=b[0],m=b[1];return(0,c.useEffect)((function(){var e,t,r,o=(null===(e=f.current)||void 0===e||null===(t=e.getHTML())||void 0===t?void 0:t.replaceAll(v,h))||"";n&&o!==n&&(null===(r=f.current)||void 0===r||r.commands.setContent(n))}),[l,u,s,d,p,n]),f.current=(0,dm.jE)({extensions:[cg.Z,_g.Z,pg.Z,sg.Z,wg.Z.configure({types:["heading","paragraph"]}),xg,qg,lg.Z,yg.Z.configure({placeholder:o,emptyEditorClass:"sppb-is-editor-empty"}),dg.Z.extend({addAttributes:function(){var e,t,r;return Xg(Xg({},null===(e=this.parent)||void 0===e?void 0:e.call(this)),{},{class:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("class")},style:{default:null===(r=this.editor)||void 0===r?void 0:r.getAttributes("style")}})}}).configure({levels:[1,2,3,4,5,6]}),vg.Z.extend({addAttributes:function(){var e,t,r,n,o;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")},href:{default:null===(r=this.editor)||void 0===r?void 0:r.getAttributes("href")},target:{default:null===(n=this.editor)||void 0===n?void 0:n.getAttributes("target")},rel:{default:null===(o=this.editor)||void 0===o?void 0:o.getAttributes("rel")},"data-link-type":{default:null,parseHTML:function(e){return e.getAttribute("data-link-type")},renderHTML:function(e){return e["data-link-type"]?{"data-link-type":e["data-link-type"]}:{}}},"data-link-value":{default:null,parseHTML:function(e){return e.getAttribute("data-link-value")},renderHTML:function(e){return e["data-link-value"]?{"data-link-value":e["data-link-value"]}:{}}}}},onCreate:function(){var e=this.editor;e.view.dom.addEventListener("click",(function(t){var r=window.getSelection();if(!r||"Range"!==r.type){var n=t.target.closest("a")||null;if(n&&"A"===n.tagName){var o=e.view.posAtDOM(n,0),i=n.textContent||"";if(i&&i.length>0){var a=o,l=o+i.length;e.commands.setTextSelection({from:a,to:l})}}}}))}}).configure({openOnClick:!1,HTMLAttributes:{rel:"noopener noreferrer nofollow"}}),Bg,ig.ZP.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),fg.ZP.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),Ig.Z.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),og.ZP.extend({addAttributes:function(){var e,t,r;return{class:{default:null!==(e=null===(t=this.editor)||void 0===t?void 0:t.getAttributes("class"))&&void 0!==e?e:"sppb-blockquote-style",parseHTML:function(e){return e.hasAttribute("class")?e.getAttribute("class"):null}},style:{default:null===(r=this.editor)||void 0===r?void 0:r.getAttributes("style")}}}}),ag.ZP.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),bg.ZP.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),hg.Z.extend({addAttributes:function(){var e,t;return{class:{default:null===(e=this.editor)||void 0===e?void 0:e.getAttributes("class")},style:{default:null===(t=this.editor)||void 0===t?void 0:t.getAttributes("style")}}}}),ug.Z,mg.ZP.extend({addAttributes:function(){var e,t,r;return{class:{default:null!==(e=null===(t=this.editor)||void 0===t?void 0:t.getAttributes("class"))&&void 0!==e?e:"sppb-table-style",parseHTML:function(e){return e.hasAttribute("class")?e.getAttribute("class"):null}},style:{default:null===(r=this.editor)||void 0===r?void 0:r.getAttributes("style")}}}}).configure({resizable:!1}),Og.Z,Eg.Z,gg.Z],content:n,onUpdate:function(e){var t=e.editor.getHTML().replaceAll(v,h);t!==y&&(m(t),i(t))}}),f.current}({content:t,onChange:r,placeholder:e.placeholder});return n.current=o,(0,s.tZ)(s.HY,{children:(0,s.BX)("div",{css:Qg.editorWrapper,children:[(0,s.tZ)(rg,{editor:o,value:t,onChange:r}),(0,s.tZ)(dm.kg,{editor:o,spellCheck:!1})]})})};var Qg={editorWrapper:(0,i.iv)("position:relative;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";color:",n.qo.text.default,";background-color:",n.qo.background.white,";.tiptap{padding:",n.W0[6]," ",n.W0[8],";outline:none;min-height:150px;max-height:500px;height:100%;overflow:auto;a{:hover{text-decoration:underline;}}img{max-width:100%;height:auto;}ul,ol{margin-top:0.3125rem;margin-bottom:0.3125rem;margin-left:",n.W0[24],";}ul{list-style:initial;}ol{list-style-type:decimal;}.sppb-blockquote-style{font-size:",n.JB[18],";line-height:1.55;margin:",n.W0[12]," 0;border-top-right-radius:",n.E0[4],";border-bottom-right-radius:",n.E0[4],";padding:",n.W0[12]," ",n.W0[16],";border-left:6px solid ",n.qo.stroke.neutral,";}.sppb-is-editor-empty{position:relative;&::before{content:attr(data-placeholder);",o.c.body(),";color:",n.qo.text.hints,";font-weight:normal;pointer-events:none;position:absolute;}}table.sppb-table-style{border-collapse:collapse;table-layout:fixed;width:100%;margin:0;overflow:hidden;td,th{min-width:1em;border:2px solid #ced4da!important;padding:3px 5px;vertical-align:top;box-sizing:border-box;position:relative;>*{margin-bottom:0;}}th{font-weight:bold;text-align:left;background-color:#f1f3f5;}}.tableWrapper{overflow-x:auto;}*{white-space:break-spaces!important;}};label:editorWrapper;")};function Jg(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function eE(){var e,t,r=(e=(0,c.useState)(null),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Jg(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Jg(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),n=r[0],o=r[1],i=(0,ve.p)();return[n,function(e){try{var t=document.createElement("textarea");return t.value=e,t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t),o(e),i.showToast({type:"success",message:"Copied to clipboard."}),!0}catch(e){return console.warn("Copy failed",e),o(null),!1}}]}function tE(e){return tE="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},tE(e)}function rE(){rE=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==tE(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function nE(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function oE(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?nE(Object(r),!0).forEach((function(t){iE(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):nE(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function iE(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==tE(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==tE(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===tE(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function aE(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function lE(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){aE(i,n,o,a,l,"next",e)}function l(e){aE(i,n,o,a,l,"throw",e)}a(void 0)}))}}function cE(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return uE(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?uE(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function uE(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const sE=function(e){var t=e.generatedValues,r=e.popover,n=void 0===r?"edit":r,o=e.onChange,i=e.onInsert,a=e.onPaginate,l=e.onEdit,u=e.totalItems,d=e.currentIndex,p=(0,L.$)(),f=cE((0,c.useState)(!1),2),v=f[0],h=f[1],b=(0,vc.D)(t.generatedText),y=cE(eE(),2),m=(y[0],y[1]),g=Cc(),E=(0,rt.O)({defaultValues:{text:t.generatedText}});(0,c.useEffect)((function(){t.generatedText!==b&&E.setValue("text",t.generatedText)}),[E,t,b]);var O=E.watch("text"),w=function(){var e=lE(rE().mark((function e(r){var i,a,l;return rE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=Ec(oE(oE({},t),{},{prompt:O,action:r})),e.next=3,g.mutateAsync({prompt:i});case 3:a=e.sent,l=a.data,o(oE(oE({},t),{},{popover:n,generatedText:l.choices[0].message.content}));case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:pE.contentWrapper,children:[(0,s.BX)("div",{css:pE.generatedPrompt,children:[p("COM_SPPAGEBUILDER_EDITOR_AI_WHAT_TO_GENERATE"),(0,s.tZ)(_.Z,{variant:"text",onClick:function(){l()},children:(0,s.tZ)(I.Z,{name:"pencil",width:10,height:10})})]}),(0,s.tZ)("div",{css:pE.promptText,children:t.prompt}),(0,s.BX)("div",{css:pE.historyWrapper,children:[(0,s.BX)("div",{css:pE.paginationWrapper,children:[(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"chevronLeft",height:20,width:20}),disabled:0===d,onClick:function(){return a(d-1)}}),(0,s.tZ)("p",{children:"".concat(d+1,"/").concat(u)}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"chevronRight",height:20,width:20}),disabled:d+1===u,onClick:function(){return a(d+1)}})]}),(0,s.BX)("div",{css:pE.rightSideWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"pencil",height:14,width:14}),onClick:function(){return h(!0)}}),(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"copy",height:14,width:14}),onClick:function(){return m(O)}})]})]}),v?(0,s.tZ)(It.Qr,{name:"text",control:E.control,render:function(e){return(0,s.tZ)(Hn,oE(oE({},e),{},{onKeyDown:function(e){"Escape"===e&&h(!1)},focusOnMount:!0}))}}):(0,s.tZ)("div",{css:pE.generatedText,children:O}),(0,s.tZ)("div",{css:pE.actionsWrapper({isLoading:g.isLoading}),children:[{label:"Fix Grammar & Spelling",value:"fixGrammarAndSpelling"},{label:"Summarize",value:"summarize"},{label:"Para-phrase",value:"paraPhrase"},{label:"Simplify",value:"simplify"}].map((function(e){return(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return w(e.value)},children:e.label},e.value)}))})]}),(0,s.BX)("div",{css:pE.buttonWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){i(t.generatedText)},disabled:g.isLoading,children:p("COM_SPPAGEBUILDER_EDITOR_AI_PLACE_TEXT")}),(0,s.tZ)(_.Z,{buttonCss:V.iZ.generateAiButton(g.isLoading),icon:g.isLoading?"":(0,s.tZ)(I.Z,{name:"recycle"}),onClick:lE(rE().mark((function e(){var r,i,a;return rE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.prompt.trim().length){e.next=2;break}return e.abrupt("return");case 2:return h(!1),r=Ec(oE(oE({},t),{},{popover:n})),e.next=6,g.mutateAsync({prompt:r});case 6:i=e.sent,a=i.data,o(oE(oE({},t),{},{popover:n,generatedText:a.choices[0].message.content}));case 9:case"end":return e.stop()}}),e)}))),loading:g.isLoading,children:p("COM_SPPAGEBUILDER_EDITOR_AI_REGENERATE")})]})]})};var dE={name:"15furcq-actionsWrapper",styles:"pointer-events:none;label:actionsWrapper;"},pE={contentWrapper:(0,i.iv)("padding:",n.W0[20],";display:flex;flex-direction:column;gap:",n.W0[12],";max-height:500px;height:100%;",V.iZ.overflowYAuto,";;label:contentWrapper;"),generatedPrompt:(0,i.iv)(o.c.caption("medium"),";color:",n.qo.text.neutral,";display:flex;align-items:center;margin-right:",n.W0[6],";button{padding:",n.W0[6],";};label:generatedPrompt;"),historyWrapper:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;gap:",n.W0[16],";;label:historyWrapper;"),paginationWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[4],";>button{padding:0;svg{color:",n.qo.icon.default,";}}>p{",o.c.caption("medium"),";color:",n.qo.text.neutral,";};label:paginationWrapper;"),rightSideWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[8],";>button{padding:",n.W0[4],";svg{color:",n.qo.icon.default,";}:hover{svg{color:",n.qo.icon.primary,";}}};label:rightSideWrapper;"),promptText:(0,i.iv)(o.c.body("regular"),";color:",n.qo.text.hints,";white-space:unset;overflow:hidden;text-overflow:ellipsis;;label:promptText;"),generatedText:(0,i.iv)(o.c.body("regular"),";border:1px solid ",n.qo.action.outline.hover,";border-radius:",n.E0[6],";padding:",n.W0[6]," ",n.W0[12],";background-color:",n.qo.background.neutral,";;label:generatedText;"),buttonWrapper:(0,i.iv)("box-shadow:",n.AF.dividerTop,";padding:",n.W0[12]," ",n.W0[16],";display:flex;justify-content:center;align-items:center;justify-content:end;gap:",n.W0[8],";;label:buttonWrapper;"),actionsWrapper:function(e){var t=e.isLoading,r=void 0!==t&&t;return(0,i.iv)("display:flex;flex-wrap:wrap;gap:",n.W0[8],";",r&&dE,";;label:actionsWrapper;")}};function fE(e){return fE="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},fE(e)}function vE(){vE=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==fE(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function hE(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function bE(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?hE(Object(r),!0).forEach((function(t){yE(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hE(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function yE(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==fE(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==fE(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===fE(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function mE(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function gE(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){mE(i,n,o,a,l,"next",e)}function l(e){mE(i,n,o,a,l,"throw",e)}a(void 0)}))}}const EE=function(e){var t=e.popover,r=void 0===t?"prompt":t,n=e.generatedValues,o=e.onChange,i=e.onInsert,a=(0,L.$)(),l=(0,at.v)((function(e){return e.appConfig})),u=Cc(),d=(0,vc.D)(null==n?void 0:n.prompt),p=(0,rt.O)({defaultValues:n}),f=[{label:"Standard",value:"standard"},{label:"Fluency",value:"fluency"},{label:"Formal",value:"formal"},{label:"Academic",value:"academic"},{label:"Simple",value:"simple"},{label:"Creative",value:"creative"},{label:"Expand",value:"expand"},{label:"Shorten",value:"shorten"}],v=[{label:"Heading",value:"heading"},{label:"Paragraph",value:"paragraph"},{label:"Others",value:"others"}];(0,c.useEffect)((function(){(null==n?void 0:n.prompt)!==d&&p.reset(n)}),[p,n,d]);var h=p.handleSubmit(function(){var e=gE(vE().mark((function e(t){var n,i,a,l;return vE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==t.prompt.trim().length){e.next=2;break}return e.abrupt("return");case 2:return n=Ec(bE(bE({},t),{},{popover:r})),i=(0,Rt.He)(p.getValues("characterLimit")),e.next=6,u.mutateAsync({prompt:n,maxTokens:i?Oc(i):void 0});case 6:a=e.sent,l=a.data,o(bE(bE({},t),{},{popover:r,generatedText:l.choices[0].message.content}));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),b=function(){var e=gE(vE().mark((function e(t){var i,a,l,c;return vE().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n){e.next=2;break}return e.abrupt("return");case 2:return i=Ec(bE(bE({},n),{},{prompt:p.getValues("prompt"),action:t})),a=(0,Rt.He)(p.getValues("characterLimit")),e.next=6,u.mutateAsync({prompt:i,maxTokens:a?Oc(a):void 0});case 6:l=e.sent,c=l.data,o(bE(bE({},n),{},{popover:r,generatedText:c.choices[0].message.content}));case 9:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,s.BX)("form",{onSubmit:h,children:[(0,s.BX)("div",{css:_E.fieldWrapper({isLoading:u.isLoading}),children:[(0,s.tZ)(It.Qr,{name:"prompt",control:p.control,render:function(e){return(0,s.tZ)(Hn,bE(bE({},e),{},{label:a("COM_SPPAGEBUILDER_EDITOR_AI_WHAT_TO_GENERATE"),isCharacterCountVisible:!0}))}}),"edit"===r&&(0,s.tZ)("div",{css:_E.actionsWrapper,children:[{label:"Fix Grammar & Spelling",value:"fixGrammarAndSpelling"},{label:"Summarize",value:"summarize"},{label:"Improve",value:"improve"},{label:"Para-phrase",value:"paraPhrase"},{label:"Simplify",value:"simplify"}].map((function(e){return(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return b(e.value)},children:e.label},e.value)}))}),(0,s.tZ)(Fu.Z,{header:{title:"Advance Settings"},cardHeaderCss:_E.cardHeaderCss,cardCss:_E.cardCss,children:(0,s.BX)("div",{css:_E.cardInnerWrapper,children:[(0,s.tZ)(It.Qr,{name:"characterLimit",control:p.control,render:function(e){return(0,s.tZ)(Qe.Z,bE(bE({},e),{},{type:"number",label:a("COM_SPPAGEBUILDER_EDITOR_AI_CHARACTER_LIMIT"),helpText:a("COM_SPPAGEBUILDER_EDITOR_AI_CHARACTER_LIMIT_HELP_TEXT")}))}}),(0,s.tZ)(It.Qr,{name:"language",control:p.control,render:function(e){return(0,s.tZ)(Yt.Z,bE(bE({},e),{},{options:l.languages.filter((function(e){return"*"!==e.value})),label:a("COM_SPPAGEBUILDER_EDITOR_AI_LANGUAGE"),placeholder:"Select a language",helpText:a("COM_SPPAGEBUILDER_EDITOR_AI_LANGUAGE_PLACEHOLDER")}))}}),(0,s.tZ)(It.Qr,{name:"tone",control:p.control,render:function(e){return(0,s.tZ)(Yt.Z,bE(bE({},e),{},{options:f,label:a("COM_SPPAGEBUILDER_EDITOR_AI_SELECT_TONE"),isClearable:!1}))}}),(0,s.tZ)(It.Qr,{name:"useCase",control:p.control,render:function(e){return(0,s.tZ)(Yt.Z,bE(bE({},e),{},{options:v,label:a("COM_SPPAGEBUILDER_EDITOR_AI_SELECT_USE_CASE"),isClearable:!1}))}})]})})]}),(0,s.BX)("div",{css:_E.buttonWrapper,children:["edit"===r&&(0,s.tZ)(_.Z,{variant:"secondary",disabled:u.isLoading,onClick:function(){i&&i(p.getValues("prompt"))},children:a("COM_SPPAGEBUILDER_EDITOR_AI_PLACE_TEXT")}),(0,s.tZ)(_.Z,{type:"submit",buttonCss:V.iZ.generateAiButton(u.isLoading),icon:u.isLoading?"":(0,s.tZ)(I.Z,{name:"generate"}),loading:u.isLoading,children:a("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE")})]})]})};var OE={name:"njl2cv-fieldWrapper",styles:"pointer-events:none;label:fieldWrapper;"},_E={fieldWrapper:function(e){var t=e.isLoading,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[20],";display:flex;flex-direction:column;gap:",n.W0[12],";",r&&OE,";;label:fieldWrapper;")},buttonWrapper:(0,i.iv)("box-shadow:",n.AF.dividerTop,";padding:",n.W0[12]," ",n.W0[16],";display:flex;justify-content:center;align-items:center;justify-content:end;gap:",n.W0[8],";;label:buttonWrapper;"),actionsWrapper:(0,i.iv)("display:flex;flex-wrap:wrap;gap:",n.W0[8],";;label:actionsWrapper;"),cardCss:{name:"1657fld-cardCss",styles:"box-shadow:none;border-radius:0;label:cardCss;"},cardHeaderCss:{name:"8k5c4w-cardHeaderCss",styles:"padding-left:0;label:cardHeaderCss;"},cardInnerWrapper:(0,i.iv)("display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:",n.W0[12],";>div{max-width:194px;width:100%;padding-top:",n.W0[8],";};label:cardInnerWrapper;")};function wE(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||IE(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function IE(e,t){if(e){if("string"==typeof e)return SE(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?SE(e,t):void 0}}function SE(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const CE=function(e){var t=e.isOpen,r=e.fieldValue,n=e.triggerRef,o=e.onChange,a=e.onClose,l=e.popoverGap,u=(0,L.$)(),d=r.trim().length>0,p=wE((0,c.useState)(d?"edit":"prompt"),2),f=p[0],v=p[1],h=wE((0,c.useState)({prompt:d?r:"",popover:d?"edit":"prompt",generatedText:"",characterLimit:"1000",language:"",tone:"standard",useCase:"others"}),2),b=h[0],y=h[1],m=wE((0,c.useState)([]),2),g=m[0],E=m[1],O=wE((0,c.useState)(0),2),w=O[0],S=O[1],C=(0,pe.l)({isOpen:t,triggerRef:n,gap:l,arrow:"right"}),x=C.position,P=C.popoverRef,A=function(){var e=r.trim().length>0;v(e?"edit":"prompt"),y({prompt:e?r:"",popover:e?"edit":"prompt",generatedText:"",characterLimit:"1000",language:"english",tone:"standard",useCase:"others"}),E([])};(0,c.useEffect)((function(){return A(),function(){return A()}}),[r]);var T=function(e){var t;b.prompt!==e.prompt?(E([e]),y(e),S(0)):(E([].concat(function(e){if(Array.isArray(e))return SE(e)}(t=g)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||IE(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[e])),y(e),S(g.length)),v("regenerate")};return(0,s.tZ)(pe.h,{isOpen:t,children:(0,s.tZ)("div",{css:(0,i.iv)({position:"absolute",left:x.left,top:x.top},";label:AiTextPopoverController;"),ref:P,children:(0,s.tZ)(Fu.Z,{header:{title:(0,s.BX)("div",{children:["regenerate"===f&&(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"arrowLeft",height:20,width:20}),onClick:function(){v("prompt"),y({prompt:"",popover:"prompt",generatedText:"",characterLimit:"1000",language:"",tone:"standard",useCase:"others"}),E([])},buttonCss:xE.leftArrowButtonCss}),u("regenerate"===f?"COM_SPPAGEBUILDER_EDITOR_AI_WRITE_NEW_PROMPT":"COM_SPPAGEBUILDER_EDITOR_AI_TEXT_GENERATOR")]}),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:a,buttonCss:xE.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:xE.cardStyle,hideArrow:!0,children:(0,s.tZ)("div",{css:xE.cardInnerSection,children:function(){switch(f){case"regenerate":return(0,s.tZ)(sE,{onEdit:function(){v("prompt")},onInsert:function(e){o(e),a()},onChange:T,generatedValues:b,onPaginate:function(e){var t=g[e];y(t),S(e)},totalItems:g.length,currentIndex:w});case"edit":return(0,s.tZ)(EE,{generatedValues:b,popover:"edit",onChange:T,onInsert:function(e){o(e),a()}});default:return(0,s.tZ)(EE,{generatedValues:b,onChange:T})}}()})})})})};var xE={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},cardInnerSection:{name:"1p0y3sw-cardInnerSection",styles:"width:440px;label:cardInnerSection;"},leftArrowButtonCss:{name:"1j3qnzr-leftArrowButtonCss",styles:"padding-left:0;label:leftArrowButtonCss;"}};function PE(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const LE=function(e){var t,r,n=e.label,o=e.field,i=e.fieldState,a=e.disabled,l=e.loading,u=e.helpText,d=e.responsive,p=e.responsiveOrientation,f=e.showGenAI,v=void 0===f?1:f,h=e.customWrapperCss,b=e.placeholder,y=e.required,m=void 0!==y&&y,g=(0,L.$)(),E=(0,at.v)((function(e){return e.appConfig})),O=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return PE(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?PE(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),w=O[0],S=O[1],C=(0,c.useRef)(null),x=(0,c.useRef)(null),P=(0,Mn.F)((function(e){return e.payload})),T=P.addonIndex,D=P.sectionIndex,Z=P.columnIndex,R=P.tableItem;return(0,s.tZ)(ne.Z,{label:n,field:o,fieldState:i,disabled:a,loading:l,helpText:u,responsive:d,responsiveOrientation:p,required:m,children:function(){var e,t=null!==(e=o.value)&&void 0!==e?e:"",r="".concat(null!=D?D:0,"-").concat(null!=Z?Z:0,"-").concat(null!=T?T:0);if((0,A.$K)(R)){var n=R.rowItemIdx,i=void 0===n?-1:n,a=R.itemIdx,l=R.contentItemIdx;r+="-".concat(i,"-").concat(a,"-").concat(l)}var c=t.replace(/<\/(p|div|h1|h2|h3|h4|h5|h6|ul|ol|li|blockquote)>/g,"\n").replace(/<[^>]*>/g,""),u=c.length>0,d=t.replaceAll(/<li><p>(.*?)<\/p><(\/?)(ol|li|ul)>/gi,"<li>$1<$2$3>");return(0,s.BX)("div",{css:[AE.wrapper,h&&h,";label:RichTextEditorField;"],children:[!A.Eu&&E.enable_ai&&(0,Rt.sw)(v)&&(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:V.iZ.generateWithAiButtonWrapper,children:(0,s.tZ)(_.Z,{ref:C,onClick:function(){return S(!0)},icon:(0,s.tZ)(I.Z,{name:"wand",height:18,width:18}),css:V.iZ.generateWithAiButton(),children:g("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE_WITH_AI")})}),(0,s.tZ)(CE,{isOpen:w,fieldValue:u?c:"",onClose:function(){return S(!1)},onChange:function(e){var t;o.onChange(e),null===(t=x.current)||void 0===t||t.commands.setContent(e),S(!1)},triggerRef:C,popoverGap:20})]}),(0,s.tZ)(Yg,{value:d,onChange:function(e){o.onChange(e)},editorRef:x,placeholder:b},r)]})}})};var AE={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;")},TE=r(8460);function DE(e){return DE="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},DE(e)}function ZE(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function RE(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ZE(Object(r),!0).forEach((function(t){jE(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ZE(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function jE(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==DE(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==DE(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===DE(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function BE(e,t){if(e){if("string"==typeof e)return ME(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ME(e,t):void 0}}function ME(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var kE=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;const NE=function(e){var t,r,n=e.field,o=e.fieldState,i=e.label,a=e.helpText,l=e.placeholder,u=e.disabled,d=e.readOnly,p=e.responsive,f=e.responsiveOrientation,v=e.required,h=void 0!==v&&v,b=e.validateAsEmail,y=void 0===b||b,m=(t=(0,c.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||BE(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),g=m[0],E=m[1],O=n.value,_=(0,A.kJ)(O)?O:"string"==typeof O&&O?[O]:[],w=function(e){var t=e.trim().replace(/,+$/,"");t&&(y&&!kE.test(t)||(_.includes(t)||n.onChange([].concat(function(e){return function(e){if(Array.isArray(e))return ME(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||BE(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(_),[t])),E("")))},I=function(e){n.onChange(_.filter((function(t){return t!==e})))},S=function(e){if("Enter"===e.key||","===e.key||" "===e.key)return e.preventDefault(),void w(g);"Backspace"===e.key&&""===g&&_.length>0&&I(_[_.length-1])};return(0,s.tZ)(ne.Z,{label:i,field:n,fieldState:o,disabled:u,readOnly:d,helpText:a,responsive:p,responsiveOrientation:f,required:h,children:function(e){var t=e.attributes;return(0,s.BX)("div",{css:GE.container,children:[_.map((function(e){return(0,s.tZ)(TE.Z,{label:e,compact:!0,onClick:function(){return I(e)}},e)})),(0,s.tZ)("input",RE(RE({},t),{},{css:GE.input(0===_.length),value:g,placeholder:0===_.length?l:"",onChange:function(e){return E(e.target.value)},onKeyDown:S,onBlur:function(){return w(g)},autoComplete:"off"}))]})}})};var GE={container:(0,i.iv)("width:100%;min-height:32px;display:flex;flex-wrap:wrap;align-items:center;gap:",n.W0[4],";border-radius:",n.E0[6],";border:1px solid ",n.qo.stroke.neutral,";padding:",n.W0[4],";:focus-within{box-shadow:0 0 0 1px ",n.qo.stroke.white,",0 0 0 3px ",n.qo.stroke.primary,";};label:container;"),input:function(e){return(0,i.iv)(o.c.body(),";flex:1 1 auto;min-width:120px;border:none;outline:none;background:transparent;",e?"padding: 0 ".concat(n.W0[8],";"):"padding: ".concat(n.W0[4]," 0;")," ::placeholder{color:",n.qo.text.hints,";};label:input;")}};const WE=function(e){var t=e.label,r=e.field,n=e.options,o=e.fieldState,i=e.disabled,a=e.loading,l=e.onChange,c=e.helpText,u=e.columns,d=void 0===u?2:u;return(0,s.tZ)(ne.Z,{label:t,field:r,fieldState:o,disabled:i,loading:a,helpText:c,children:function(e){var t=e.data,o=t.responsive,i=t.device,a=(0,Rt.o5)(r.value,i);return(0,s.tZ)(s.HY,{children:(0,s.tZ)("div",{css:UE.wrapper({columns:d}),children:n.map((function(e){return(0,s.tZ)(_.Z,{variant:"text",buttonCss:UE.thumbItem({isActive:a===e.value}),onClick:function(){var t=(0,Rt.xU)({previous:r.value,value:e.value,responsive:o,device:i});r.onChange(t),l&&l(t)},children:e.icon&&(0,s.tZ)("span",{css:UE.icon({isActive:a===e.value}),dangerouslySetInnerHTML:{__html:e.icon}})},e.value)}))})})}})};var UE={wrapper:function(e){var t=e.columns;return(0,i.iv)("display:grid;grid-template-columns:repeat(",t,", 1fr);;label:wrapper;")},icon:function(e){var t=e.isActive;return(0,i.iv)("width:100%;border:1px solid ",t?n.qo.icon.primary:n.qo.icon.neutral,";border-radius:",n.E0[6],";;label:icon;")},thumbItem:function(e){var t=e.isActive;return(0,i.iv)("padding:",n.W0[6],";",t&&(0,i.iv)("svg{color:",n.qo.icon.primary,";}padding:",n.W0[6],";;label:thumbItem;"),";;label:thumbItem;")}};function FE(e){return FE="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},FE(e)}function HE(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function qE(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function VE(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?qE(Object(r),!0).forEach((function(t){zE(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qE(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function zE(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==FE(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==FE(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===FE(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var XE=[{label:"Move",fieldKey:"move",fields:[{label:"X",fieldKey:"x"},{label:"Y",fieldKey:"y"}]},{label:"Rotate",fieldKey:"rotate",isAngleUnit:!0,fields:[{label:"X",fieldKey:"x"},{label:"Y",fieldKey:"y"},{label:"Z",fieldKey:"z"}]},{label:"Scale",fieldKey:"scale",isNoUnit:!0,fields:[{label:"X",fieldKey:"x"},{label:"Y",fieldKey:"y"}]},{label:"Skew",fieldKey:"skew",isAngleUnit:!0,fields:[{label:"X",fieldKey:"x"},{label:"Y",fieldKey:"y"}]},{label:"Transform Origin",fieldKey:"transform_origin",fields:[{label:"Top",fieldKey:"top"},{label:"Left",fieldKey:"left"}]}],KE={move:{x:{value:"",unit:"px"},y:{value:"",unit:"px"}},rotate:{x:{value:"",unit:"deg"},y:{value:"",unit:"deg"},z:{value:"",unit:"deg"}},scale:{x:"",y:""},skew:{x:{value:"",unit:"deg"},y:{value:"",unit:"deg"}},transform_origin:{top:{value:"50",unit:"%"},left:{value:"50",unit:"%"}}},$E=function(e){var t,r,n,o,i,a,l,c,u,s,d,p,f,v,h,b,y,m,g,E,O,_,w,I,S,C,x,P,L,T,D,Z,R,j,B,M,k,N,G,W,U,F,H,q,V,z,X,K,$,Y,Q,J,ee,te,re,ne,oe,ie;if(!(0,A.$K)(e)||!(0,A.Kn)(e))return KE;var ae=e;return{move:{x:{value:null!==(t=null===(r=ae.move)||void 0===r||null===(n=r.x)||void 0===n?void 0:n.value)&&void 0!==t?t:KE.move.x.value,unit:null!==(o=null===(i=ae.move)||void 0===i||null===(a=i.x)||void 0===a?void 0:a.unit)&&void 0!==o?o:KE.move.x.unit},y:{value:null!==(l=null===(c=ae.move)||void 0===c||null===(u=c.y)||void 0===u?void 0:u.value)&&void 0!==l?l:KE.move.y.value,unit:null!==(s=null===(d=ae.move)||void 0===d||null===(p=d.y)||void 0===p?void 0:p.unit)&&void 0!==s?s:KE.move.y.unit}},rotate:{x:{value:null!==(f=null===(v=ae.rotate)||void 0===v||null===(h=v.x)||void 0===h?void 0:h.value)&&void 0!==f?f:KE.rotate.x.value,unit:null!==(b=null===(y=ae.rotate)||void 0===y||null===(m=y.x)||void 0===m?void 0:m.unit)&&void 0!==b?b:KE.rotate.x.unit},y:{value:null!==(g=null===(E=ae.rotate)||void 0===E||null===(O=E.y)||void 0===O?void 0:O.value)&&void 0!==g?g:KE.rotate.y.value,unit:null!==(_=null===(w=ae.rotate)||void 0===w||null===(I=w.y)||void 0===I?void 0:I.unit)&&void 0!==_?_:KE.rotate.y.unit},z:{value:null!==(S=null===(C=ae.rotate)||void 0===C||null===(x=C.z)||void 0===x?void 0:x.value)&&void 0!==S?S:KE.rotate.z.value,unit:null!==(P=null===(L=ae.rotate)||void 0===L||null===(T=L.z)||void 0===T?void 0:T.unit)&&void 0!==P?P:KE.rotate.z.unit}},scale:{x:null!==(D=null===(Z=ae.scale)||void 0===Z?void 0:Z.x)&&void 0!==D?D:KE.scale.x,y:null!==(R=null===(j=ae.scale)||void 0===j?void 0:j.y)&&void 0!==R?R:KE.scale.y},skew:{x:{value:null!==(B=null===(M=ae.skew)||void 0===M||null===(k=M.x)||void 0===k?void 0:k.value)&&void 0!==B?B:KE.skew.x.value,unit:null!==(N=null===(G=ae.skew)||void 0===G||null===(W=G.x)||void 0===W?void 0:W.unit)&&void 0!==N?N:KE.skew.x.unit},y:{value:null!==(U=null===(F=ae.skew)||void 0===F||null===(H=F.y)||void 0===H?void 0:H.value)&&void 0!==U?U:KE.skew.y.value,unit:null!==(q=null===(V=ae.skew)||void 0===V||null===(z=V.y)||void 0===z?void 0:z.unit)&&void 0!==q?q:KE.skew.y.unit}},transform_origin:{top:{value:null!==(X=null===(K=ae.transform_origin)||void 0===K||null===($=K.top)||void 0===$?void 0:$.value)&&void 0!==X?X:KE.transform_origin.top.value,unit:null!==(Y=null===(Q=ae.transform_origin)||void 0===Q||null===(J=Q.top)||void 0===J?void 0:J.unit)&&void 0!==Y?Y:KE.transform_origin.top.unit},left:{value:null!==(ee=null===(te=ae.transform_origin)||void 0===te||null===(re=te.left)||void 0===re?void 0:re.value)&&void 0!==ee?ee:KE.transform_origin.left.value,unit:null!==(ne=null===(oe=ae.transform_origin)||void 0===oe||null===(ie=oe.left)||void 0===ie?void 0:ie.unit)&&void 0!==ne?ne:KE.transform_origin.left.unit}}}},YE=function(e,t){if((0,A.SI)(e)){var r,n,o,i,a,l=null!==(r=null!==(n=null!==(o=null!==(i=e.xl)&&void 0!==i?i:e.lg)&&void 0!==o?o:e.md)&&void 0!==n?n:e.sm)&&void 0!==r?r:e.xs;return $E(null!==(a=e[t])&&void 0!==a?a:l)}return $E(e)},QE=["xl","lg","md","sm","xs"],JE=function(e,t,r){if((0,A.SI)(t))return VE(VE({},t),{},zE({},r,e));var n=$E(t),o=QE.reduce((function(e,t){return e[t]=n,e}),{});return o[r]=e,o};const eO=function(e){var t,r,n=e.field,o=e.fieldState,i=e.readOnly,a=e.label,l=e.isInlineLabel,u=e.responsive,d=e.responsiveOrientation,p=e.helpText,f=e.onChange,v=(t=(0,c.useState)((function(){return(0,A.$K)(n.value)&&(0,A.Kn)(n.value)?n.value:KE})),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return HE(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?HE(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],b=v[1],y=(0,fe.N)(h),m=(0,c.useRef)("xl"),g=(0,Mn.F)((function(e){return e.payload})),E=g.sectionIndex,O=g.columnIndex,_=g.addonIndex,w=g.tableItem,I=(0,kn.s)((function(e){return e.currentState}));return(0,c.useEffect)((function(){(0,A.$K)(n.value)&&(0,A.Kn)(n.value)?b(n.value):b(KE)}),[n.value,E,O,_,w,I]),(0,c.useEffect)((function(){n.onChange(y),f&&f(YE(y,m.current))}),[y]),(0,s.tZ)(ne.Z,{field:n,fieldState:o,label:a,isInlineLabel:l,readOnly:i,responsive:u,responsiveOrientation:d,helpText:p,children:function(e){var t=e.data,r=t.device,n=t.responsive;m.current=r;var o=YE(h,r),i=function(e){var t=-1;return function(e,t){"%"===e.transform_origin.top.unit&&"%"===e.transform_origin.left.unit?"0"===e.transform_origin.top.value&&"0"===e.transform_origin.left.value?t(0):"0"===e.transform_origin.top.value&&"50"===e.transform_origin.left.value?t(1):"0"===e.transform_origin.top.value&&"100"===e.transform_origin.left.value?t(2):"50"===e.transform_origin.top.value&&"0"===e.transform_origin.left.value?t(3):"50"===e.transform_origin.top.value&&"50"===e.transform_origin.left.value?t(4):"50"===e.transform_origin.top.value&&"100"===e.transform_origin.left.value?t(5):"100"===e.transform_origin.top.value&&"0"===e.transform_origin.left.value?t(6):"100"===e.transform_origin.top.value&&"50"===e.transform_origin.left.value?t(7):"100"===e.transform_origin.top.value&&"100"===e.transform_origin.left.value?t(8):t(-1):t(-1)}(e,(function(e){t=e})),t}(o);return(0,s.tZ)("div",{css:tO.wrapper,children:XE.map((function(e){return(0,s.BX)("div",{children:[!!e.label&&(0,s.tZ)("div",{css:tO.groupLabel,children:e.label}),(0,s.BX)("div",{css:tO.groupFieldWrapper,children:[e.fields.map((function(t){var i=o[e.fieldKey][t.fieldKey];return e.isNoUnit?(0,s.tZ)(Kt.Z,{label:t.label,value:i,type:"number",onChange:function(i){var a=(0,rp.ZP)(o,(function(r){(0,A.$K)(r[e.fieldKey])&&(r[e.fieldKey][t.fieldKey]=i)}));b(n?function(e){return JE(a,e,r)}:a)}},t.fieldKey):(0,s.tZ)(Qd.Z,{label:t.label,isAngleUnit:e.isAngleUnit,fieldValue:i,isLarge:!0,onChange:function(i){var a=(0,rp.ZP)(o,(function(r){var n=r[e.fieldKey];(0,A.$K)(n)&&(n[t.fieldKey]=i)}));b(n?function(e){return JE(a,e,r)}:a)},inputCss:tO.inputCss,unitInputStyles:tO.unitInputStyles},t.fieldKey)})),"transform_origin"===e.fieldKey&&(0,s.tZ)($d,{activeIndex:i,onClick:function(e){var t=VE({},o.transform_origin),i=function(e,t){switch(e){case 0:t.top.value="0",t.left.value="0";break;case 1:t.top.value="0",t.left.value="50";break;case 2:t.top.value="0",t.left.value="100";break;case 3:t.top.value="50",t.left.value="0";break;case 4:t.top.value="50",t.left.value="50";break;case 5:t.top.value="50",t.left.value="100";break;case 6:t.top.value="100",t.left.value="0";break;case 7:t.top.value="100",t.left.value="50";break;case 8:t.top.value="100",t.left.value="100"}return t.top.unit="%",t.left.unit="%",t}(e,VE({},t)),a=VE(VE({},o),{},{transform_origin:i});b(n?function(e){return JE(a,e,r)}:a)}})]})]},e.fieldKey)}))})}})};var tO={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),groupLabel:(0,i.iv)(o.c.caption("medium")," color:",n.qo.text.default,";margin-bottom:",n.W0[8],";;label:groupLabel;"),groupFieldWrapper:(0,i.iv)("display:grid;grid-template-columns:repeat(3, 1fr);column-gap:",n.W0[16],";row-gap:",n.W0[16],";;label:groupFieldWrapper;"),inputCss:{name:"17gmmrm-inputCss",styles:"width:100%;label:inputCss;"},unitInputStyles:{name:"1v4ejpb-unitInputStyles",styles:"width:45px;label:unitInputStyles;"}},rO=r(8225);function nO(e){return nO="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},nO(e)}function oO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function iO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?oO(Object(r),!0).forEach((function(t){aO(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):oO(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function aO(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==nO(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==nO(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===nO(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function lO(e){return function(e){if(Array.isArray(e))return sO(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||uO(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function cO(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||uO(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function uO(e,t){if(e){if("string"==typeof e)return sO(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sO(e,t):void 0}}function sO(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const dO=function(e){var t,r,n,o,i=e.options,a=e.onChange,l=void 0===a?A.ZT:a,u=e.clearOption,d=void 0===u?A.ZT:u,p=e.label,f=e.readOnly,v=e.isSearchable,h=void 0!==v&&v,b=e.isClearable,y=void 0===b||b,m=e.isInlineLabel,g=void 0!==m&&m,E=e.isFontWeight,O=void 0!==E&&E,w=e.value,S=e.caretSize,C=void 0===S?20:S,x=e.infiniteScroll,P=void 0!==x&&x,T=e.wrapperStyle,D=e.disabled,Z=e.optionsStyleVariant,R=void 0===Z?"regular":Z,j=e.hasGroup,B=void 0!==j&&j,M=e.portalWidth,k=(0,L.$)(),N=(0,A.x0)(),G=(0,cb.Sh)(),W=(0,at.v)((function(e){return e.appConfig.is_google_fonts_disabled})),U=cO((0,c.useState)(""),2),F=U[0],H=U[1],q=cO((0,c.useState)(""),2),V=q[0],z=q[1],X=cO((0,c.useState)(!1),2),K=X[0],$=X[1],Y=cO((0,c.useState)([]),2),Q=Y[0],J=Y[1],ee=(0,c.useState)(function(e){var t={};return e.forEach((function(e,r){e.disabled&&(t[r]=!0)})),t}(i)),te=cO(ee,2),re=te[0],ne=te[1],oe=(0,fe.N)(V),ie=(0,c.useMemo)((function(){return J([]),h?i.filter((function(e){return e.label.toLowerCase().startsWith(oe.toLowerCase())})):i}),[oe,h,i]),ae=(0,pe.l)({isOpen:K,isDropdown:!0}),le=ae.triggerRef,ce=ae.triggerWidth,ue=ae.position,se=ae.popoverRef,de=(0,Jt.Z)(),ve=de.intersectionEntry,he=de.intersectionElementRef,be=ie.length>Q.length;return(0,c.useEffect)((function(){var e,t,r=null!==(e=null===(t=i.find((function(e){return String(e.value)===String(null==w?void 0:w.value)})))||void 0===t?void 0:t.label)&&void 0!==e?e:"";H(r)}),[i,w]),(0,c.useEffect)((function(){if(P){if(null!=ve&&ve.isIntersecting&&be){var e=Q.length,t=e+20;J((function(r){return[].concat(lO(r),lO(ie.slice(e,t)))}))}}else J(ie)}),[ie,null==ve?void 0:ve.isIntersecting]),(0,s.BX)("div",{css:[mO.mainWrapper,T,";label:TypographyPreset;"],children:[(0,s.BX)("div",{css:mO.inputLabelWrapper(g),ref:le,children:[!!p&&(0,s.tZ)("label",{htmlFor:N,css:mO.label(g),children:p}),(0,s.BX)("div",{css:mO.customInputWrapper,children:[w?(0,s.tZ)("div",{css:mO.customInput,onClick:function(){return $((function(e){return!e}))},children:(0,s.BX)("div",{css:mO.presetInputContent,children:[(0,s.tZ)("span",{css:mO.presetPlaceholder({fontWeight:null==w?void 0:w.fontWeight,italic:null==w?void 0:w.italic,underline:null==w?void 0:w.underline,uppercase:null==w?void 0:w.uppercase,fontFamily:null==w?void 0:w.fontFamily}),title:null===(t=w.label)||void 0===t?void 0:t.split(", ")[0],children:null===(r=w.label)||void 0===r?void 0:r.split(", ")[0]}),(0,s.tZ)("span",{css:mO.presetDetails,children:null===(n=w.label)||void 0===n?void 0:n.split(", ")[1]}),(0,s.tZ)("div",{css:mO.separator,children:(0,s.tZ)("span",{})}),(0,s.tZ)("span",{css:mO.presetDetails,children:null===(o=w.label)||void 0===o?void 0:o.split(", ")[2]})]})}):(0,s.tZ)("div",{css:mO.customInput,onClick:function(){return $((function(e){return!e}))},children:(0,s.tZ)("span",{css:mO.placeholderText,children:k("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_PRESET_PLACEHOLDER")})}),(0,s.tZ)("button",{type:"button",css:mO.caretButton,onClick:function(){$((function(e){return!e}))},disabled:D||f||0===i.length,children:(0,s.tZ)(I.Z,{name:"chevronDown",width:C,height:C,style:mO.toggleIcon({isOpen:K})})})]})]}),(0,s.tZ)(pe.h,{isOpen:K,onClickOutside:function(){return $(!1)},children:(0,s.BX)("div",{css:[mO.optionsWrapper,{left:ue.left,top:ue.top,maxWidth:(0,A.$K)(M)?M:ce},";label:TypographyPreset;"],ref:se,children:[(0,s.BX)("ul",{css:mO.options,children:[Q.map((function(e,t){var r,n,o,i;if(console.log("option",e),!function(e,t){if(e.disabled)return!1;for(var r=-1,n=t-1;n>=0;n--)if(Q[n].disabled){r=n;break}return-1!==r&&!re[r]}(e,t)){var a=e;if(null!=a&&a.fontFamily&&G.data){var c=String(a.fontWeight||"400"),u=G.data.find((function(e){return e.family_name===a.fontFamily})),d=(null==u?void 0:u.type)||"google";"google"!==d||W?"local"===d&&(0,ub.pE)({family:a.fontFamily,variants:[c]},"local"):(0,ub.pE)({family:a.fontFamily,variants:[c]},"google",G.data)}return(0,s.BX)("li",{css:mO.optionItem({isSelected:e.value===(null==w?void 0:w.value),optionsStyleVariant:R,isDisabled:!!e.disabled,hasGroup:B,variant:e.variant}),children:[!!e.disabled&&(0,s.tZ)("div",{css:mO.groupHeaderIcon,children:(0,s.tZ)(I.Z,{name:"chevronRight",width:10,height:10,css:mO.toggleGroup({isOpen:re[t]})})}),(0,s.BX)(_.Z,{variant:"text",buttonCss:mO.optionButton({fontWeight:O?e.value:"inherit"}),onClick:function(){e.disabled?function(e){ne((function(t){return iO(iO({},t),{},aO({},e,!t[e]))}))}(t):(H(e.label),z(""),l(e),$(!1))},children:[e.disabled&&e.label,!e.disabled&&(0,s.BX)("div",{css:mO.presetWrapper,children:[(0,s.tZ)("span",{css:mO.presetPlaceholder({fontWeight:null==e?void 0:e.fontWeight,italic:null==e?void 0:e.italic,underline:null==e?void 0:e.underline,uppercase:null==e?void 0:e.uppercase,fontFamily:null==e?void 0:e.fontFamily}),title:null===(r=e.label)||void 0===r?void 0:r.split(", ")[0],children:null===(n=e.label)||void 0===n?void 0:n.split(", ")[0]}),(0,s.tZ)("span",{css:mO.presetDetails,children:null===(o=e.label)||void 0===o?void 0:o.split(", ")[1]}),(0,s.tZ)("div",{css:mO.separator,children:(0,s.tZ)("span",{})}),(0,s.tZ)("span",{css:mO.presetDetails,children:null===(i=e.label)||void 0===i?void 0:i.split(", ")[2]})]})]})]},String(e.value))}})),(0,s.tZ)("div",{ref:he,css:mO.spinnerWrapper({isVisible:be}),children:(0,s.tZ)(Ye.ZP,{})})]}),y&&(0,s.tZ)("div",{css:mO.clearButton({isDisabled:""===F}),children:(0,s.tZ)(_.Z,{variant:"text",disabled:""===F,icon:(0,s.tZ)(I.Z,{name:"recycleAlt"}),onClick:function(){d(),H(""),z(""),$(!1)},children:k("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})})]})})]})};var pO={name:"9jddly-spinnerWrapper",styles:"display:none;label:spinnerWrapper;"},fO={name:"omed8-toggleGroup",styles:"transform:rotate(90deg);label:toggleGroup;"},vO={name:"xs7epg-toggleIcon",styles:"transform:rotate(180deg);label:toggleIcon;"},hO={name:"zjfq51-input",styles:"cursor:pointer;label:input;"},bO={name:"1je746r-label",styles:"flex:1;label:label;"},yO={name:"1nbzsgk-inputLabelWrapper",styles:"display:flex;flex-direction:row;align-items:center;justify-content:space-between;>div{flex:1;};label:inputLabelWrapper;"},mO={mainWrapper:{name:"e9i770-mainWrapper",styles:"width:100%;label:mainWrapper;"},inputLabelWrapper:function(e){return(0,i.iv)("width:100%;display:flex;flex-direction:column;gap:",n.W0[4],";",e&&yO,";;label:inputLabelWrapper;")},label:function(e){return(0,i.iv)(o.c.caption()," ",e&&bO,";;label:label;")},input:function(e){var t=e.isSearchable;return(0,i.iv)(o.c.body(),";width:100%;height:32px;border-radius:",n.E0[5],";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.input,";padding:0 ",n.W0[32]," 0 ",n.W0[12],";color:",n.qo.text.default,";appearance:textfield;",!t&&hO," :focus{outline:none;box-shadow:",n.AF.outline,";}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",n.qo.text.hints,";};label:input;")},clearButton:function(e){var t=e.isDisabled,r=void 0!==t&&t;return(0,i.iv)("padding:",n.W0[4]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.neutral,";display:flex;justify-content:center;min-height:40px;&>button{padding:0;width:100%;font-size:",n.JB[12],";",!r&&(0,i.iv)("color:",n.qo.text.primary,";&:hover{text-decoration:underline;};label:clearButton;"),";>span{justify-content:center;}};label:clearButton;")},optionsWrapper:(0,i.iv)("position:absolute;width:100%;z-index:",n.W5.dropdown,";background-color:",n.qo.base.white,";box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:optionsWrapper;"),options:(0,i.iv)("list-style-type:none;max-height:500px;padding:",n.W0[4]," 0;margin:0;",V.iZ.overflowYAuto,";;label:options;"),optionItem:function(e){var t=e.isSelected,r=void 0!==t&&t,a=e.isDisabled,l=void 0!==a&&a,c=e.optionsStyleVariant,u=void 0===c?"regular":c,s=e.hasGroup,d=void 0!==s&&s,p=e.variant,f=void 0===p?"regular":p;return(0,i.iv)(o.c.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;","critical"===f&&(0,i.iv)(">button>span{color:",n.qo.text.error,";};label:optionItem;")," ",l&&(0,i.iv)("pointer-events:none;>button{",o.c.body("bold"),";color:",d?n.qo.text.default:n.qo.text.disabled,";};label:optionItem;")," ",l&&(0,i.iv)("pointer-events:auto;>button{",o.c.caption("bold"),";color:",n.qo.text.default,";padding:",n.W0[8]," ",n.W0[4],";};label:optionItem;")," ",!l&&(0,i.iv)(">button{padding:",n.W0[8]," ",n.W0[20],";};label:optionItem;")," &:hover{background-color:",n.qo.background.hover,";}","small"===u&&(0,i.iv)(">button{",o.c.caption(),";};label:optionItem;")," ",r&&(0,i.iv)("background-color:",n.qo.background.active,";position:relative;&::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background-color:",n.qo.action.primary.default,";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;};label:optionItem;"),";;label:optionItem;")},optionButton:function(e){var t=e.fontWeight,r=void 0===t?"inherit":t;return(0,i.iv)("width:100%;padding:",n.W0[8]," ",n.W0[12],";font-weight:",r,";text-align:left;;label:optionButton;")},toggleIcon:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&vO,";;label:toggleIcon;")},toggleGroup:function(e){var t=e.isOpen,r=void 0!==t&&t;return(0,i.iv)("color:",n.qo.icon.default,";transition:transform 0.3s ease-in-out;",r&&fO,";;label:toggleGroup;")},caretButton:(0,i.iv)(V.iZ.resetButton,";position:absolute;top:0;bottom:0;right:",n.W0[8],";margin:auto 0;;label:caretButton;"),spinnerWrapper:function(e){var t=e.isVisible,r=void 0!==t&&t;return(0,i.iv)("width:100%;display:flex;justify-content:center;align-items:center;",!r&&pO,";;label:spinnerWrapper;")},groupHeaderIcon:(0,i.iv)("display:flex;align-items:center;margin-left:",n.W0[8],";;label:groupHeaderIcon;"),presetPlaceholder:function(e){var t=e.fontWeight,r=e.italic,o=e.underline,a=e.uppercase,l=e.fontFamily;return(0,i.iv)("font-size:",n.JB[14],";line-height:",n.Nv[18],";font-weight:",t||"normal",";font-style:",r?"italic":"normal",";text-decoration:",o?"underline":"none",";text-transform:",a?"uppercase":"none",";font-family:",l?"".concat(l):"inherit",";",V.iZ.textEllipsis,";max-width:6.5rem;;label:presetPlaceholder;")},presetDetails:(0,i.iv)(o.c.body(),";color:",n.qo.text.hints,";;label:presetDetails;"),presetWrapper:(0,i.iv)("display:flex;gap:",n.W0[6],";align-items:center;;label:presetWrapper;"),separator:(0,i.iv)(V.iZ.flexCenter(),";width:10px;height:10px;span{width:2px;height:2px;background-color:",n.qo.icon.default,";border-radius:",n.E0.circle,";margin:auto;};label:separator;"),customInputWrapper:{name:"18bv533-customInputWrapper",styles:"width:100%;position:relative;label:customInputWrapper;"},customInput:(0,i.iv)(o.c.body(),";width:100%;height:32px;border-radius:",n.E0[5],";border:1px solid ",n.qo.stroke.neutral,";box-shadow:",n.AF.input,";padding:0 ",n.W0[32]," 0 ",n.W0[12],";color:",n.qo.text.default,";display:flex;align-items:center;cursor:pointer;background-color:white;&:focus,&:hover{outline:none;box-shadow:",n.AF.outline,";};label:customInput;"),presetInputContent:(0,i.iv)("display:flex;gap:",n.W0[6],";align-items:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;;label:presetInputContent;"),placeholderText:(0,i.iv)("color:",n.qo.text.hints,";;label:placeholderText;")};function gO(e){return gO="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gO(e)}function EO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function OO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?EO(Object(r),!0).forEach((function(t){_O(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):EO(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _O(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==gO(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==gO(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===gO(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function wO(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||IO(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function IO(e,t){if(e){if("string"==typeof e)return SO(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?SO(e,t):void 0}}function SO(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var CO={100:"Thin",200:"ExtraLight",300:"Light",400:"Normal",500:"Medium",600:"SemiBold",700:"Bold",800:"ExtraBold",900:"Black"};const xO=function(e){var t,r,n,o,a,l,u,d,p=e.isOpen,f=e.onClose,v=e.onChange,h=e.triggerRef,b=e.typographyValues,y=e.device,m=e.popoverGap,g=void 0===m?20:m,E=e.showPresets,O=void 0===E||E,w=(0,L.$)(),S=(0,at.v)((function(e){return e.appConfig.is_google_fonts_disabled})),C=wO((0,c.useState)(Bn.zu),2),x=C[0],P=C[1],T=(0,rO.LY)(),D=null!==(t=null===(r=T.data)||void 0===r?void 0:r.typography)&&void 0!==t?t:[],Z=(0,c.useMemo)((function(){return t=null==(e=D)?void 0:e.flatMap((function(e,t){var r,n,o,i={label:e.name,value:t,disabled:!0},a=null!==(r=null==e||null===(n=e.typography)||void 0===n?void 0:n.map((function(e,r){var n,o,i=e.weight&&CO[e.weight]?"".concat(CO[e.weight]):"Default",a=[],l=a.length>0?" ".concat(a.join(", ")):"",c=e.font||"Default Font",u=(null==e||null===(n=e.size[y])||void 0===n?void 0:n.value)||"00",s=(null==e||null===(o=e.line_height[y])||void 0===o?void 0:o.value)||"00";return{label:"".concat(c).concat(l,", ").concat(i,", ").concat(u,"/").concat(s).trim(),value:"".concat(t,".").concat(r),disabled:!1,fontWeight:e.weight,italic:e.italic,underline:e.underline,uppercase:e.uppercase,fontFamily:e.font}})))&&void 0!==r?r:[];return[i].concat(function(e){if(Array.isArray(e))return SO(e)}(o=a)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(o)||IO(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())})),t;var e,t}),[D,y]),R=function(e,t,r){var n,o,i=wO(String(e).split("."),2),a=i[0],l=i[1],c=t[Number(a)],u=null==c?void 0:c.typography[Number(l)];if(!u)return null;var s=u.weight&&CO[u.weight]?"".concat(CO[u.weight]):"Default",d=[", "],p=d.length>0?" ".concat(d.join(", ")):"",f=u.font||"Default Font",v=(null==u||null===(n=u.size[r])||void 0===n?void 0:n.value)||"00",h=(null==u||null===(o=u.line_height[r])||void 0===o?void 0:o.value)||"00";return{label:"".concat(f).concat(p,", ").concat(s,", ").concat(v,"/").concat(h).trim(),value:e,fontWeight:u.weight,italic:u.italic,underline:u.underline,uppercase:u.uppercase,fontFamily:u.font}},j=wO((0,c.useState)(null!==(n=R(null!==(o=b.preset)&&void 0!==o?o:"",D,y))&&void 0!==n?n:null),2),B=j[0],M=j[1];(0,c.useEffect)((function(){if(null!=b&&b.preset){var e,t=R(null!==(e=b.preset)&&void 0!==e?e:"",D,y);if(!t&&T.isFetched)return M(null),void v(OO(OO({},b),{},{preset:""}));M(t)}else M(null)}),[T.isFetched,D,y]);var k=[{label:"px",value:"px"},{label:"rem",value:"rem"},{label:"em",value:"em"},{label:"%",value:"%"},{label:"None",value:""}],N=(0,pe.l)({isOpen:p,triggerRef:h,gap:g,arrow:"right"}),G=N.position,W=N.popoverRef,U=(0,cb.Sh)(),F=(0,c.useMemo)((function(){var e;return(0,ub.c)(null!==(e=U.data)&&void 0!==e?e:[],S)}),[U.data,S]),H={italic:b.italic,underline:b.underline,uppercase:b.uppercase},q=F.find((function(e){return e.value===b.font})),V=(0,c.useMemo)((function(){var e=[{value:"",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_FONT_WEIGHT")},{value:"100",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_THIN")},{value:"200",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_EXTRA_THIN")},{value:"300",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_LIGHT")},{value:"400",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_NORMAL")},{value:"500",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_MEDIUM")},{value:"600",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_SEMI_BOLD")},{value:"700",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_BOLD")},{value:"800",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_EXTRA_BOLD")},{value:"900",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_BLACK")}];return"local"===(null==q?void 0:q.type)?[{value:"400",label:w("COM_SPPAGEBUILDER_EDITOR_FONT_WEIGHT_LABEL_NORMAL")}]:q&&(0,A.$K)(q.variants)?e.filter((function(e){var t,r;return(null!==(t=null===(r=q.variants)||void 0===r?void 0:r.map((function(e){return(0,ub.vn)(e).weight.toString()})))&&void 0!==t?t:[]).includes(e.value)})):e}),[q,w]);return(0,s.tZ)(pe.h,{isOpen:p,onClickOutside:f,children:(0,s.tZ)("div",{css:(0,i.iv)({position:"absolute",left:G.left,top:G.top},";label:TypographyPopover;"),ref:W,children:(0,s.tZ)(Fu.Z,{header:{title:O?w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_TITLE"):(0,s.BX)("div",{css:AO.tabContainer,children:[(0,s.tZ)("span",{css:AO.tabItem,children:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_TITLE")}),(0,s.tZ)(ne.d,{device:x,onChangeResponsiveDevice:function(e){return P(e)}})]}),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:f,buttonCss:AO.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:AO.cardStyle,hideArrow:!0,children:(0,s.BX)("div",{css:AO.cardInnerSection(O,!!b.preset),children:[O&&(0,s.tZ)("div",{css:AO.presetWrapperStyle,children:(0,s.tZ)(dO,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_PRESET_LABEL"),options:Z,onChange:function(e){var t=wO(String(e.value).split("."),2),r=t[0],n=t[1],o=D[Number(r)].typography[Number(n)];M(e),v(OO(OO({},o),{},{preset:String(e.value)}))},value:B,clearOption:function(){M(null),v(OO(OO({},b),{},{preset:""}))}})}),O&&(""===b.preset||!(0,A.$K)(b.preset))&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(rd.Z,{options:F,value:q,label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LABEL"),placeholder:w("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),onChange:function(e){var t,r;M(null),v(OO(OO({},b),{},{font:e.value,type:null!==(t=e.type)&&void 0!==t?t:"google",weight:"",preset:""}),null!==(r=e.variants)&&void 0!==r?r:[])},clearOption:function(){return v(OO(OO({},b),{},{font:""}))},isSearchable:!0}),(0,s.BX)("div",{css:AO.sizeLineHeightSpaceWrapper,children:[(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_SIZE_LABEL"),fieldValue:b.size[y],onChange:function(e){var t;M(null),v(OO(OO({},b),{},{size:OO(OO({},b.size),{},_O({},y,e)),preset:""}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}}),(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LINE_HEIGHT_LABEL"),fieldValue:null!==(a=null===(l=b.line_height)||void 0===l?void 0:l[y])&&void 0!==a?a:{value:"",unit:"px"},customUnitOptions:k,onChange:function(e){var t;M(null),v(OO(OO({},b),{},{line_height:OO(OO({},b.line_height),{},_O({},y,e)),preset:""}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}}),(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LETTER_SPACE_LABEL"),fieldValue:null!==(u=null===(d=b.letter_spacing)||void 0===d?void 0:d[y])&&void 0!==u?u:{value:"",unit:"px"},onChange:function(e){var t;M(null),v(OO(OO({},b),{},{letter_spacing:OO(OO({},b.letter_spacing),{},_O({},y,e)),preset:""}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}})]}),(0,s.BX)("div",{css:AO.textDecorationWrapper,children:[(0,s.tZ)(bb,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_STYLE_LABEL"),values:H,onChange:function(e){var t;M(null),v(OO(OO(OO({},b),e),{},{preset:""}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])},wrapperStyle:AO.wrapperStyle}),(0,s.tZ)(rd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_WEIGHT_LABEL"),options:V,value:"local"===(null==q?void 0:q.type)?V[0]:V.find((function(e){return String(e.value)===String(b.weight)}))||void 0,onChange:function(e){var t;M(null),v(OO(OO({},b),{},{weight:e.value,preset:""}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])},clearOption:function(){return v(OO(OO({},b),{},{weight:""}))},wrapperStyle:AO.wrapperStyle,isFontWeight:!0,disabled:"local"===(null==q?void 0:q.type),inputCss:"local"===(null==q?void 0:q.type)?AO.disabled:void 0})]})]}),!O&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(rd.Z,{options:F,value:q,label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LABEL"),placeholder:w("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),onChange:function(e){var t,r;v(OO(OO({},b),{},{font:e.value,type:null!==(t=e.type)&&void 0!==t?t:"google",weight:""}),null!==(r=e.variants)&&void 0!==r?r:[])},clearOption:function(){return v(OO(OO({},b),{},{font:""}))},isSearchable:!0}),(0,s.BX)("div",{css:AO.sizeLineHeightSpaceWrapper,children:[(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_SIZE_LABEL"),fieldValue:b.size[x],onChange:function(e){var t;v(OO(OO({},b),{},{size:OO(OO({},b.size),{},_O({},x,e))}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}}),(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LINE_HEIGHT_LABEL"),fieldValue:b.line_height[x],customUnitOptions:k,onChange:function(e){var t;v(OO(OO({},b),{},{line_height:OO(OO({},b.line_height),{},_O({},x,e))}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}}),(0,s.tZ)(Qd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_LETTER_SPACE_LABEL"),fieldValue:b.letter_spacing[x],onChange:function(e){var t;v(OO(OO({},b),{},{letter_spacing:OO(OO({},b.letter_spacing),{},_O({},x,e))}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])}})]}),(0,s.BX)("div",{css:AO.textDecorationWrapper,children:[(0,s.tZ)(bb,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_STYLE_LABEL"),values:H,onChange:function(e){var t;v(OO(OO({},b),e),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])},wrapperStyle:AO.wrapperStyle}),(0,s.tZ)(rd.Z,{label:w("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_FONT_WEIGHT_LABEL"),options:V,value:"local"===(null==q?void 0:q.type)?V[0]:V.find((function(e){return String(e.value)===String(b.weight)}))||void 0,onChange:function(e){var t;v(OO(OO({},b),{},{weight:e.value}),null!==(t=null==q?void 0:q.variants)&&void 0!==t?t:[])},clearOption:function(){return v(OO(OO({},b),{},{weight:""}))},wrapperStyle:AO.wrapperStyle,isFontWeight:!0,inputCss:"local"===(null==q?void 0:q.type)?AO.disabled:void 0,disabled:"local"===(null==q?void 0:q.type)})]})]})]})})})})};var PO={name:"1kynbdc-cardInnerSection",styles:"height:100px;label:cardInnerSection;"},LO={name:"1yndalg-cardInnerSection",styles:"height:298px;label:cardInnerSection;"},AO={cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardInnerSection:function(e,t){return(0,i.iv)(V.iZ.cardInnerSection,";flex-direction:column;gap:",n.W0[12],";padding:",n.W0[12],";width:304px;height:208px;transition:height 0.1s ease-in-out;",e&&LO," ",e&&t&&PO,";;label:cardInnerSection;")},crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},sizeLineHeightSpaceWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:sizeLineHeightSpaceWrapper;"),textDecorationWrapper:(0,i.iv)("display:flex;justify-content:center;gap:",n.W0[8],";;label:textDecorationWrapper;"),wrapperStyle:{name:"pkzghw-wrapperStyle",styles:"max-width:136px;width:100%;label:wrapperStyle;"},presetWrapperStyle:(0,i.iv)("padding-bottom:",n.W0[16],";padding-left:",n.W0[10],";padding-right:",n.W0[10],";padding-top:",n.W0[10],";background-color:",n.qo.background.neutral,";border-radius:",n.E0[8],";>div>div>label{padding-left:",n.W0[4],";};label:presetWrapperStyle;"),tabContainer:(0,i.iv)("display:flex;gap:",n.W0[4],";;label:tabContainer;"),tabItem:(0,i.iv)("border-radius:",n.E0[4],";padding:",n.W0[4]," ",n.W0[8],";cursor:pointer;;label:tabItem;"),disabled:(0,i.iv)("background-color:",n.qo.action.primary.disabled,";color:",n.qo.text.disabled,";pointer-events:none;;label:disabled;")};function TO(e){return TO="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},TO(e)}function DO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ZO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?DO(Object(r),!0).forEach((function(t){RO(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):DO(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function RO(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==TO(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==TO(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===TO(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function jO(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||BO(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function BO(e,t){if(e){if("string"==typeof e)return MO(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?MO(e,t):void 0}}function MO(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var kO={xl:{value:"",unit:"px"},lg:{value:"",unit:"px"},md:{value:"",unit:"px"},sm:{value:"",unit:"px"},xs:{value:"",unit:"px"}},NO={font:"",uppercase:!1,italic:!1,underline:!1,weight:"",size:tp()(kO),line_height:tp()(kO),letter_spacing:tp()(kO),type:"google"};const GO=function(e){var t=e.field,r=e.fieldState,n=e.onChange,o=e.readOnly,i=e.label,a=e.isInlineLabel,l=e.responsive,u=e.responsiveOrientation,d=e.helpText,p=e.fallbacks,f=e.fieldSettings,v=(0,L.$)(),h=(0,rO.LY)(),b=jO((0,c.useState)(!1),2),y=b[0],m=b[1],g=jO((0,c.useState)([]),2),E=g[0],O=g[1],_=(0,c.useRef)(null),w=(0,at.v)((function(e){return e.appConfig.is_google_fonts_disabled})),S=(0,cb.Sh)(),C=(0,c.useMemo)((function(){return function(e){var t=p,r=(0,A.Kn)(t)&&(0,A.Zt)(t).length>0;if((0,A.$K)(e)&&(0,A.Kn)(e)){if((0,A.$K)(e.preset)&&h.data){var n=jO(String(e.preset).split("."),2),o=n[0],i=n[1],a=h.data.typography[Number(o)];if(!a)return e;var l=a.typography[Number(i)];return l?(l.preset=e.preset,l):e}return e}var c=tp()(NO);if(!r)return c;var u,s=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=BO(e))){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}((0,A.Zt)(t));try{for(s.s();!(u=s.n()).done;){var d=u.value,v=jO(t[d].split("."),2),b=v[0],y=v[1];if((0,A.$K)(f[b]))if(y){var m=f[b];if((0,A.$K)(m[y])){if(!(0,A.Kn)(c[d])){c[d]=m[y];continue}if(!(0,A.Kn)(m[y])){c[d][Bn.zu].value=f[b];continue}for(var g=0,E=Object.entries(m[y]);g<E.length;g++){var O=jO(E[g],2),_=O[0],w=O[1],I=(0,A.Kn)(w)?w:{value:w};c[d][_]=ZO(ZO({},c[d][_]),I)}}}else{if(!(0,A.Kn)(c[d])){c[d]=f[b];continue}if(!(0,A.Kn)(f[b])){c[d][Bn.zu].value=f[b];continue}for(var S=0,C=Object.entries(f[b]);S<C.length;S++){var x=jO(C[S],2),P=x[0],L=x[1],T=(0,A.Kn)(L)?L:{value:L};c[d][P]=ZO(ZO({},c[d][P]),T)}}}}catch(e){s.e(e)}finally{s.f()}return c}(t.value)}),[t.value,f,p,h.data]);return(0,c.useEffect)((function(){if(C.font&&S.data){var e=(0,A.$K)(C.type)?C.type:"google";"google"!==e||w?"local"===e&&(0,ub.pE)({family:C.font,variants:E.length>0?E:[String(C.weight)]},"local"):(0,ub.pE)({family:C.font,variants:E.length>0?E:[String(C.weight)]},"google",S.data)}}),[C.font,C.weight,E,S.data]),(0,s.tZ)(s.HY,{children:(0,s.tZ)(ne.Z,{field:t,fieldState:r,label:i,isInlineLabel:a,readOnly:o,responsive:l,responsiveOrientation:u,helpText:d,children:function(e){var r,o=e.data.device,i="".concat(C.size[o].value||"00","/").concat((null===(r=C.line_height)||void 0===r?void 0:r[o].value)||"00");return(0,s.BX)(s.HY,{children:[(0,s.BX)("button",{type:"button",css:HO.wrapper,ref:_,onClick:function(){return m(!0)},children:[(0,s.tZ)("span",{css:HO.font({font:C.font,fontWeight:C.weight,italic:C.italic,underline:C.underline,upperCase:C.uppercase}),title:C.font||v("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_EMPTY_FONT_PLACEHOLDER"),children:C.font||v("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_EMPTY_FONT_PLACEHOLDER")}),(0,s.tZ)("div",{css:HO.separator,children:(0,s.tZ)("span",{})}),(0,s.tZ)("div",{css:HO.sizeAndLineHeight,children:i}),(0,s.tZ)("div",{css:HO.iconWrapper,children:(0,s.tZ)(I.Z,{name:"settings",height:20,width:20})})]}),(0,s.tZ)(xO,{isOpen:y,onClose:function(){return m(!1)},onChange:function(e){O(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]),t.onChange(e),n&&n(e)},device:o,triggerRef:_,typographyValues:C,showPresets:!A.Eu})]})}})})};var WO={name:"1v13n35-font",styles:"text-transform:uppercase;label:font;"},UO={name:"10mr6hu-font",styles:"text-decoration:underline;label:font;"},FO={name:"gwvx45-font",styles:"font-style:italic;label:font;"},HO={wrapper:(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";width:100%;border:1px solid ",n.qo.stroke.neutral,";height:32px;display:flex;align-items:center;padding:0 ",n.W0[8],";border-radius:",n.E0[6],";:focus{box-shadow:",n.AF.outline,";}:hover{color:",n.qo.text.hover,";};label:wrapper;"),font:function(e){var t=e.font,r=e.fontWeight,n=void 0===r?"initial":r,o=e.italic,a=void 0!==o&&o,l=e.underline,c=void 0!==l&&l,u=e.upperCase,s=void 0!==u&&u;return(0,i.iv)("text-align:left;flex:1;font-weight:",n,";",V.iZ.textEllipsis,";",!!t&&(0,i.iv)("font-family:",t,";;label:font;")," ",a&&FO," ",c&&UO," ",s&&WO,";;label:font;")},separator:(0,i.iv)(V.iZ.flexCenter(),";width:16px;height:16px;span{width:2px;height:2px;background-color:",n.qo.icon.default,";border-radius:",n.E0.circle,";margin:auto;};label:separator;"),sizeAndLineHeight:(0,i.iv)("color:",n.qo.text.hints,";max-width:60px;width:100%;;label:sizeAndLineHeight;"),iconWrapper:(0,i.iv)("padding:0;position:relative;svg{color:",n.qo.icon.default,";transition:color 0.3s ease;}:hover{svg{color:",n.qo.icon.hover,";}};label:iconWrapper;")};function qO(e){return qO="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qO(e)}function VO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function zO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?VO(Object(r),!0).forEach((function(t){XO(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):VO(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function XO(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==qO(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==qO(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===qO(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const KO=function(e){var t=e.id,r=e.fieldValue,n=e.isDragOverlay,o=e.onEditItem,i=(0,C.nB)({id:t}),a=i.attributes,l=i.listeners,c=i.setNodeRef,u=i.transform,d=i.transition,p=i.isDragging,f={transform:x.ux.Transform.toString(u),transition:d,opacity:p?.5:1};return(0,s.BX)("div",{css:[$O.repeatableItem({isDragOverlay:n}),f,";label:FixedRepeatableItem;"],ref:c,children:[(0,s.BX)("div",{css:$O.leftWrapper,"data-left-wrapper":!0,children:[(0,s.tZ)("button",zO(zO(zO({type:"button",css:$O.addonDragHandler},a),l),{},{children:(0,s.tZ)(I.Z,{name:"dragger"})})),(0,s.tZ)("span",{title:r,children:r})]}),!n&&(0,s.tZ)("div",{css:$O.actionButtonsWrapper,children:(0,s.tZ)("button",{type:"button",css:$O.actionButton,onClick:o,children:(0,s.tZ)(I.Z,{name:"pencilOnBox"})})})]})};var $O={repeatableItem:function(e){var t=e.isDragOverlay,r=void 0!==t&&t;return(0,i.iv)("display:flex;justify-content:space-between;padding:",n.W0[8]," ",n.W0[12],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";transition:background-color 0.3s ease;:hover{&>[data-left-wrapper]{>span{color:",n.qo.text.hover,";}>button{>svg{color:",n.qo.icon.hover,";}}}}",r&&(0,i.iv)("background-color:",n.qo.background.white,";;label:repeatableItem;"),";;label:repeatableItem;")},leftWrapper:(0,i.iv)("display:flex;justify-content:center;align-items:center;gap:",n.W0[2],";span{max-width:160px;",V.iZ.textEllipsis,";};label:leftWrapper;"),actionButtonsWrapper:(0,i.iv)("height:100%;display:flex;gap:",n.W0[8],";;label:actionButtonsWrapper;"),actionButton:(0,i.iv)(V.iZ.resetButton,";svg{color:",n.qo.icon.default,";}:hover{svg{color:",n.qo.icon.hover,";}};label:actionButton;"),addonDragHandler:(0,i.iv)(V.iZ.resetButton,";cursor:grab!important;>svg{color:",n.qo.icon.default,";};label:addonDragHandler;")};function YO(e){return YO="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},YO(e)}function QO(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function JO(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?QO(Object(r),!0).forEach((function(t){e_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):QO(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function e_(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==YO(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==YO(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===YO(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t_(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return r_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?r_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const n_=function(e){var t=e.values,r=e.onEditItem,n=e.onRearrangeItems,o=(0,L.$)(),i=(0,rt.O)({defaultValues:{items:t}}),a=i.reset,l=i.getValues,u=t_((0,c.useState)(null),2),d=u[0],p=u[1],f=t_((0,c.useState)(""),2),v=f[0],h=f[1],b=(0,It.Dq)({control:i.control,name:"items"}),y=i.watch("items"),m=b.fields.map((function(e,t){return JO(JO({index:t},e),y[t])})),g=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is}));return(0,c.useEffect)((function(){a(JO(JO({},l()),{},{items:t}))}),[t,a,l]),(0,c.useEffect)((function(){if(d){var e=m.find((function(e){return e.id===d}));if(e){var t=function(e,t,r){return(0,A.$K)(e.title)&&(0,A.HD)(e.title)&&e.title.length>0?e.title:(0,A.$K)(e.admin_label)&&(0,A.HD)(e.admin_label)&&e.admin_label.length>0?e.admin_label:r("COM_SPPAGEBUILDER_EDITOR_REPEATABLE_ITEM_DEFAULT_TITLE",{index:t+1})}(e,e.index,o);h(t)}}}),[d]),(0,s.tZ)(s.HY,{children:(0,s.tZ)(zn.LB,{sensors:g,collisionDetection:zn.pE,onDragStart:function(e){p(String(e.active.id))},onDragEnd:function(e){var r=e.active,o=e.over;if(p(null),h(""),null!=o&&o.id&&r.id!==o.id){var i=m.findIndex((function(e){return e.id===r.id})),a=m.findIndex((function(e){return e.id===o.id})),l=(0,C.Rp)(m,i,a);b.replace(l),n((0,C.Rp)(t,i,a))}},children:(0,s.BX)(C.Fo,{items:m,strategy:C.qw,children:[m.map((function(e,t){var n=e.title||e.admin_label||"Item";return(0,s.tZ)(KO,{id:e.id,fieldValue:n,onEditItem:function(){return r(t)}},e.id)})),(0,s.tZ)(zn.y9,{children:d&&(0,s.tZ)(KO,{id:d,fieldValue:v,onEditItem:A.ZT,isDragOverlay:!0})})]})})})};function o_(e){return o_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o_(e)}function i_(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a_(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i_(Object(r),!0).forEach((function(t){l_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i_(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l_(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==o_(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==o_(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===o_(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c_(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return u_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var s_=(0,c.createContext)("");const d_=function(e){var t,r,n,o=e.fieldName,i=e.field,a=e.parentKey,l=(0,L.$)(),u=(0,It.Gc)(),d=c_((0,c.useState)(null),2),p=d[0],f=d[1],v=(0,A.$K)(a)?"".concat(a,".").concat(o):o,h=(0,It.qo)({control:u.control,name:v})||[],b=(0,It.qo)({control:u.control,name:"repeatable.field_name"}),y=(0,It.qo)({control:u.control,name:"repeatable.field_value"}),m=null!==(t=null===(r=u.getValues())||void 0===r||null===(n=r.settings)||void 0===n?void 0:n.source)&&void 0!==t?t:"",g=c_((0,c.useState)(!1),2),E=g[0],O=g[1],_=(0,pe.l)({isOpen:E,gap:20,arrow:"right"}),w=_.triggerRef,I=_.position,S=_.popoverRef,C=h.map((function(e,t){var r=e;return(0,A.$K)(r.title)?e:a_(a_({},r),{},{admin_label:lv(r,t,l)})}));if(!(0,A.$K)(i.attr))return null;var x=function(){f(null),O(!1)},P=iv(i.attr);return(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:p_.wrapper,ref:w,children:(0,s.tZ)(n_,{values:C,defaultValue:P,onEditItem:function(e){O(!0),f(e)},onRearrangeItems:function(e){u.setValue(v,e)}})}),(0,A.$K)(p)&&(0,s.tZ)(s_.Provider,{value:m,children:(0,s.tZ)(Lv,{isOpen:E,position:I,popoverRef:S,field:{attr:i.attr},title:i.title||"",onApplyChanges:function(e){var t=(0,rp.ZP)(C,(function(t){(0,A.$K)(b)&&(0,A.$K)(null==e?void 0:e[b])?t[p]=a_(a_({},e),{},l_({},b,y)):t[p]=e}));u.setValue("repeatable.field_name",o),u.setValue("repeatable.field_value",t),u.setValue(v,t),x()},values:C,index:p,onClose:x,collectionId:m})})]})};var p_={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:wrapper;")};function f_(e,t){if(e){if("string"==typeof e)return v_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v_(e,t):void 0}}function v_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var h_=[{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_FORM_STEP_RENAME"},{id:"delete",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_FORM_STEP_DELETE",variant:"critical"}];const b_=function(e){var t,r,n,o,i,a=e.fieldName,l=e.field,u=e.parentKey,d=e.addonName,p=void 0===d?"":d,f=(0,L.$)(),v=(0,It.Gc)(),h=(0,A.$K)(u)?"".concat(u,".").concat(a):a,b=null!==(t=(0,It.qo)({control:v.control,name:h}))&&void 0!==t?t:[],y=(o=(0,c.useState)(null),i=2,function(e){if(Array.isArray(e))return e}(o)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(o,i)||f_(o,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),m=y[0],g=y[1],E=h.replace(/sp_form_builder_steps$/,"sp_form_builder_item"),O=(0,It.qo)({control:v.control,name:E}),w=(0,c.useRef)(!1);(0,c.useEffect)((function(){if(!w.current){var e=Array.isArray(b)&&b.length>0,t=Array.isArray(O)&&O.length>0;!e&&t&&(w.current=!0,v.setValue(h,[{step_title:"".concat(f("COM_SPPAGEBUILDER_EDITOR_FORM_STEP")," 1"),step_icon:"",sp_form_builder_item:O}]),v.setValue(E,[]))}}),[b,O]);var S=null===(r=l.attr)||void 0===r?void 0:r.step_option,C=null==S||null===(n=S.fields)||void 0===n?void 0:n.sp_form_builder_item;if(!(0,A.$K)(C))return null;var x=function(e){v.setValue(h,e)},T=f("COM_SPPAGEBUILDER_EDITOR_FORM_STEP"),D=function(){var e,t=iv(null!==(e=C.attr)&&void 0!==e?e:{});x([].concat(function(e){return function(e){if(Array.isArray(e))return v_(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||f_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(b),[{step_title:"".concat(T," ").concat(b.length+1),step_icon:"",sp_form_builder_item:[t]}]))};return b.length<=1?(0,s.BX)("div",{css:y_.wrapper,children:[(0,s.tZ)(zv,{fieldName:"sp_form_builder_item",parentKey:"".concat(h,".0"),field:C,addonName:p}),(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"stepAdditon"}),onClick:D,buttonCss:y_.addStepButton,children:f("COM_SPPAGEBUILDER_EDITOR_FORM_ADD_STEP")})]}):(0,s.BX)("div",{css:y_.wrapper,children:[b.map((function(e,t){var r;return(0,s.BX)("div",{css:y_.stepCard,children:[(0,s.BX)("div",{css:y_.stepHeader,children:[m===t?(0,s.tZ)("input",{css:y_.renameInput,autoFocus:!0,value:null!==(r=e.step_title)&&void 0!==r?r:"",onChange:function(e){return function(e,t){x((0,rp.ZP)(b,(function(r){r[e].step_title=t})))}(t,e.target.value)},onBlur:function(){return g(null)},onKeyDown:function(e){"Enter"===e.key&&g(null)}}):(0,s.tZ)("span",{css:y_.stepTitle,children:e.step_title||"".concat(T," ").concat(t+1)}),(0,s.BX)("div",{css:y_.stepActions,children:[(0,s.tZ)("button",{type:"button",css:y_.iconButton,onClick:function(){return function(e){var t,r=iv(null!==(t=C.attr)&&void 0!==t?t:{}),n=(0,rp.ZP)(b,(function(t){var n=t[e];Array.isArray(n.sp_form_builder_item)||(n.sp_form_builder_item=[]),n.sp_form_builder_item.push(r)}));x(n)}(t)},"aria-label":f("COM_SPPAGEBUILDER_EDITOR_ADD_INNER_ITEM_BUTTON"),children:(0,s.tZ)(I.Z,{name:"plus",width:16,height:16})}),(0,s.tZ)(P.Z,{actions:h_,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisY",width:16,height:16}),triggerButtonStyle:y_.iconButton,onSelect:function(e){return function(e,t){"rename"!==t?x((0,rp.ZP)(b,(function(t){t.splice(e,1)}))):g(e)}(t,e)}})]})]}),(0,s.tZ)("div",{css:y_.stepBody,children:(0,s.tZ)(zv,{fieldName:"sp_form_builder_item",parentKey:"".concat(h,".").concat(t),field:C,addonName:p,hideAddButton:!0})})]},t)})),(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"stepAdditon"}),onClick:D,buttonCss:y_.addStepButton,children:f("COM_SPPAGEBUILDER_EDITOR_FORM_ADD_STEP")})]})};var y_={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),stepCard:(0,i.iv)("border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[8],";padding:",n.W0[12],";display:flex;flex-direction:column;gap:",n.W0[12],";;label:stepCard;"),stepHeader:(0,i.iv)("display:flex;align-items:center;justify-content:space-between;gap:",n.W0[8],";;label:stepHeader;"),stepTitle:(0,i.iv)(o.c.body(),";font-weight:600;color:",n.qo.text.default,";;label:stepTitle;"),renameInput:(0,i.iv)(o.c.body(),";font-weight:600;flex:1;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";padding:",n.W0[4]," ",n.W0[8],";color:",n.qo.text.default,";;label:renameInput;"),stepActions:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";;label:stepActions;"),iconButton:(0,i.iv)("display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";background:transparent;cursor:pointer;svg{color:",n.qo.icon.default,";}:hover svg{color:",n.qo.icon.hover,";};label:iconButton;"),stepBody:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:stepBody;"),addStepButton:{name:"1uc0u53-addStepButton",styles:"width:100%;display:flex;justify-content:center;label:addStepButton;"}};function m_(e){return m_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m_(e)}function g_(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function E_(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?g_(Object(r),!0).forEach((function(t){O_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):g_(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function O_(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==m_(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==m_(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m_(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const __=function(e){var t,r,n=e.field,o=e.name,i=e.hideLabel,a=void 0!==i&&i,l=e.form,c=e.fromRepeatableField,u=void 0!==c&&c,d=e.parentKey,p=e.addonName,f=void 0===p?"":p,v=(0,L.$)(),h=null!==(t=l.getValues("extension_view"))&&void 0!==t?t:"page",b=null!==(r=l.getValues("view_id"))&&void 0!==r?r:null;switch(n.type){case"attribute":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t,r;return(0,s.tZ)(Jf,E_(E_({},e),{},{allowedTypes:null!==(t=n.allowed_types)&&void 0!==t?t:[],hideLinkText:null!==(r=null==n?void 0:n.hide_link_text)&&void 0!==r&&r,placeholder:v("COM_SPPAGEBUILDER_EDITOR_ADDON_COLLECTION_TEXT_FIELD_SOURCE_PLACEHOLDER"),label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,collectionId:"dynamic_content:detail"===h?b:null}))}});case"filter":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(xh,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,collectionId:"dynamic_content:detail"===h?b:null}))}});case"hidden":case"gmap":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Qe.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isDebounced:!0}))}});case"text":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Qe.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,placeholder:n.placeholder,isDebounced:!0,isDisabled:n.disabled}))}});case"tagsinput":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(NE,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,placeholder:n.placeholder,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"grid-gap":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Bb,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"preset":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(lm,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:(0,Rt.qb)(n.values),placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"transform":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(eO,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"effects":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(lb,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"select":return n.multiple?(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)(Rn.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:(0,Rt.qb)(n.values),placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,hasAllCategory:null!==(t=null==n?void 0:n.has_all)&&void 0!==t&&t}))}}):(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)(Yt.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:(0,Rt.qb)(n.values),placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isClearable:null===(t=n.is_clearable)||void 0===t||t}))}});case"dynamic_source":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)($h,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isClearable:null===(t=n.is_clearable)||void 0===t||t}))}});case"dynamic_field":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t,r,o;return(0,s.tZ)(Nh,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isClearable:null===(t=n.is_clearable)||void 0===t||t,excludedTypes:null!==(r=null==n?void 0:n.excluded_types)&&void 0!==r?r:[],augmentations:null!==(o=null==n?void 0:n.augmentations)&&void 0!==o?o:[],fallbackValue:null==n?void 0:n.std}))}});case"filter_control":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)(nh,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,placeholder:v("COM_SPPAGEBUILDER_EDITOR_SELECT_FIELD_PLACEHOLDER"),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isClearable:null===(t=n.is_clearable)||void 0===t||t}))}});case"category":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Uf,E_(E_({},e),{},{label:a?void 0:n.title,placeholder:v("COM_SPPAGEBUILDER_EDITOR_FIELD_CATEGORY_PLACEHOLDER"),helpText:n.desc,context:n.context,isMultiSelect:(0,Rt.sw)(n.multiple),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"plugin":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Ky,E_(E_({},e),{},{label:a?void 0:n.title,placeholder:v("COM_SPPAGEBUILDER_EDITOR_FIELD_CATEGORY_PLACEHOLDER"),helpText:n.desc,pluginType:n.plugin_type,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"accesslevel":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(jp,E_(E_({},e),{},{label:a?void 0:n.title,placeholder:v("COM_SPPAGEBUILDER_EDITOR_FIELD_ACCESS_LEVEL_PLACEHOLDER"),helpText:n.desc,isMultiSelect:(0,Rt.sw)(n.multiple),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"animation":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(dd,E_(E_({},e),{},{helpText:n.desc}))}});case"alert":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)(Tf,E_(E_({},e),{},{message:null!==(t=n.message)&&void 0!==t?t:"",isOldAddon:n.is_old_addon,title:n.title,variation:n.variation}))}});case"alignment":var y=(n.vertical?["start","center","end"]:["left","center","right"]).map((function(e){return{label:"",icon:n.vertical?Rt.BI[e]:Rt.C4[e],value:e}}));return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t,r;return(0,s.tZ)(Rf,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:null!==(t=null===(r=n.available_options)||void 0===r?void 0:r.map((function(e){return{label:"",icon:Rt.C4[e],value:e}})))&&void 0!==t?t:y,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"headings":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(ty,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,headingsOnly:!!n.headingsOnly,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"link":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t;return(0,s.tZ)(Ty,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,linkPopup:!!n.link_popup,defaultTab:null!==(t=n.default_tab)&&void 0!==t?t:"url"}))}});case"color":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Ke,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"advancedcolor":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(wf,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"textarea":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Hn,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"number":case"rating":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Qe.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,placeholder:n.placeholder||"",responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isDebounced:!0}))}});case"module":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Gy,E_(E_({},e),{},{label:a?void 0:n.title,moduleType:n.module,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"checkbox":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(jn.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isInlineLabel:!0}))}});case"radio":case"advancedradio":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(If,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:(0,Rt.qb)(n.values),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"icon":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Nt,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,isInlineLabel:!0}))}});case"editor":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(LE,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"media":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(us,E_(E_({},e),{},{label:a?void 0:n.title,allowedMediaType:n.format||n.mediaType,helpText:n.desc,hidePreview:!!n.hide_preview,hideAltText:!!n.hide_alt_text,isLottieFile:!1,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"padding":case"margin":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Rd,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"boxshadow":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t,r;return(0,s.tZ)(qd,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,hasSpread:null===(t=null===(r=n.config)||void 0===r?void 0:r.spread)||void 0===t||t}))}});case"grid-template":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Jb,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,templateType:null==n?void 0:n.template_type,min:n.min,max:n.max}))}});case"slider":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){var t,r;return(0,s.tZ)(Ji.Z,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,min:n.min,max:n.max,step:null!==(t=n.step)&&void 0!==t?t:1,info:n.info,hasUnit:!!n.unit,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,staticUnit:null!==(r=n.default_unit)&&void 0!==r?r:"",defaultUnit:null==n?void 0:n.fallback_unit}))}});case"advancedslider":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Lf,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,min:n.min,max:n.max,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"border":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(Cd,E_(E_({},e),{},{responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation,title:n.title}))}});case"fontstyle":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(_b,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"fonts":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(sb,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"frontend_navigator":return(0,s.tZ)(Cf,{});case"typography":var m=l.getValues(),g="settings"in m?m.settings:m;return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(GO,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,fallbacks:n.fallbacks,fieldSettings:g,responsive:!(0,A.$K)(n.responsive)||(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"codeeditor":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(uc,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"gradient":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(bp,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc}))}});case"buttons":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(zd,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,options:(0,Rt.qb)(n.values),responsive:(0,Rt.sw)(n.responsive),responsiveOrientation:n.responsive_orientation}))}});case"thumbnail":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(WE,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,columns:n.columns,options:(0,Rt.qb)(n.values)}))}});case"image_shape":return(0,s.tZ)(It.Qr,{control:l.control,name:o,render:function(e){return(0,s.tZ)(yy,E_(E_({},e),{},{label:a?void 0:n.title,helpText:n.desc,columns:n.columns,options:(0,Rt.qb)(n.values)}))}});case"repeatable":return u?null:o.endsWith("sp_form_builder_steps")?(0,s.tZ)(b_,{fieldName:o,parentKey:d,field:n,addonName:f}):n.fixed?(0,s.tZ)(d_,{fieldName:o,parentKey:d,field:n}):(0,s.tZ)(zv,{fieldName:o,parentKey:d,field:n,bulkImport:n.bulk_import,addonName:f});case"timeline":case"separator":return(0,s.tZ)(Js,{title:n.title});default:return null}},w_=function(e){var t,r=e.settings,n=e.form,o=e.fieldNamePrefix,i=void 0===o?"settings.":o,a=e.hasBorder,l=void 0!==a&&a,c=e.parentKey,u=e.disabledGroups,d=e.addonName,p=void 0===d?"":d;return(0,s.tZ)("div",{css:I_.wrapper,children:(t=(0,A.Zt)(r),t.map((function(e){var o=r[e],a=o.fields,d=(0,A.Zt)(a),f=(0,Ap.ME)(a),v=(0,Ap.ed)(a);return(0,Rt.uZ)(a)?0===d.length||"frontend"===o.client||(0,A.$K)(o.visibility)&&!o.visibility||(0,A.$K)(u)&&u.includes(e)?null:(0,s.tZ)(Fu.Z,{hasBorder:l,header:function(){if((0,A.$K)(f)||!(t.length<=1))return{title:o.title,actionTray:(0,A.$K)(f)&&(0,s.tZ)(__,{field:f.field,name:"".concat((0,A.HD)(i)?i:"").concat(f.name),hideLabel:!0,form:n})}}(),isCollapsed:v,disabledCaretCollapse:(0,A.$K)(f),children:(0,s.tZ)("div",{css:V.iZ.cardInnerSection,children:d.map((function(e){if((0,A.$K)(a[e].visibility)&&!a[e].visibility||(null==f?void 0:f.name)===e)return null;var t=a[e];return(0,s.tZ)(__,{field:t,name:"".concat((0,A.HD)(i)?i:"").concat(e),parentKey:c,form:n,addonName:p},e)}))})},e):null})))})};var I_={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";;label:wrapper;")};function S_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var C_=[{label:"General",value:"general"},{label:"Style",value:"style"},{label:"Advanced",value:"advanced"}];const x_=function(){var e,t,r=(0,It.Gc)(),n=(0,Mn.F)((function(e){return e.payload})),o=(0,Pp._)(),i=(o.getAddon,o.getTableItem,e=(0,c.useState)("general"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return S_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?S_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],l=i[1],u=(0,$a.x)((function(e){return e.addonStructure})),d=(0,$a.x)((function(e){return e.globalSettings})),p=r.control,f=(0,It.qo)({control:p,name:"settings"}),v=(0,c.useMemo)((function(){var e,t=n.addon;return null!==(e=null==t?void 0:t.name)&&void 0!==e?e:""}),[n]),h=(0,c.useMemo)((function(){return v?u[v].settings:null}),[v,u]),b=(0,c.useMemo)((function(){var e;return null!==(e={general:h,style:d.style,advanced:d.advanced}[a])&&void 0!==e?e:{}}),[a,d,h]);return(0,s.BX)(s.HY,{children:[(0,s.tZ)(Na,{tabList:C_,activeTab:a,variant:"primary",onChange:function(e){l(e)}}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(b,f),form:r,addonName:v})})]})};function P_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var L_=[{label:"General",value:"general"},{label:"Style",value:"style"},{label:"Advanced",value:"advanced"}];const A_=function(){var e,t,r=(0,It.Gc)(),n=(0,Mn.F)((function(e){return e.payload})),o=(0,Pp._)().getCollectionItemAddon,i=(e=(0,c.useState)("general"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return P_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?P_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],l=i[1],u=(0,$a.x)((function(e){return e.addonStructure})),d=(0,$a.x)((function(e){return e.globalSettings})),p=r.control,f=(0,It.qo)({control:p,name:"settings"}),v=(0,c.useMemo)((function(){var e,t=n.sectionIndex,r=n.columnIndex,i=n.addonIndex,a=n.collectionItem;if((0,A.$K)(t)&&(0,A.$K)(r)&&(0,A.$K)(i)&&(0,A.$K)(a))return null===(e=o({sectionIndex:t,columnIndex:r,addonIndex:i,collectionItem:a}))||void 0===e?void 0:e.name}),[n,o]),h=(0,c.useMemo)((function(){return v?u[v].settings:null}),[v,u]),b=(0,c.useMemo)((function(){var e;return null!==(e={general:h,style:d.style,advanced:d.advanced}[a])&&void 0!==e?e:{}}),[a,d,h]);return(0,s.BX)(s.HY,{children:[(0,s.tZ)(Na,{tabList:L_,activeTab:a,variant:"primary",onChange:function(e){l(e)}}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(b,f),form:r})})]})};function T_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var D_=[{label:"General",value:"general"},{label:"Style",value:"style"},{label:"Advanced",value:"advanced"}];const Z_=function(){var e,t,r=(0,It.Gc)(),n=(e=(0,c.useState)("general"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return T_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?T_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),o=n[0],i=n[1],a=(0,$a.x)((function(e){return e.addonStructure})),l=(0,$a.x)((function(e){return e.globalSettings})),u=r.control,d=(0,It.qo)({control:u,name:"settings"}),p=(0,c.useMemo)((function(){var e=a[Bn.oA.productList].settings;return(0,A.$K)(e)?e:null}),[a]),f=(0,c.useMemo)((function(){var e;return null!==(e={general:p,style:l.style,advanced:l.advanced}[o])&&void 0!==e?e:{}}),[o,l,p]);return(0,s.BX)(s.HY,{children:[(0,s.tZ)(Na,{tabList:D_,activeTab:o,variant:"primary",onChange:function(e){i(e)}}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(f,d),form:r})})]})};var R_=r(8331);function j_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const B_=function(){var e,t,r=(0,L.$)(),n=(0,It.Gc)(),o=(e=(0,c.useState)("style"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return j_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?j_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=(0,R_.B)((function(e){return e.config})),u=n.control,d=(0,It.qo)({control:u,name:"settings"}),p=[{label:r("COM_SPPAGEBUILDER_EDITOR_COLUMN_SETTINGS_TAB_STYLE"),value:"style"},{label:r("COM_SPPAGEBUILDER_EDITOR_COLUMN_SETTINGS_TAB_RESPONSIVE"),value:"responsive"},{label:r("COM_SPPAGEBUILDER_EDITOR_COLUMN_SETTINGS_TAB_ANIMATION"),value:"animation"}],f=(0,c.useMemo)((function(){return l.column[i]}),[l.column,i]);return(0,s.BX)("div",{children:[(0,s.tZ)(Na,{tabList:p,activeTab:i,onChange:a}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(f,d),form:n})})]})};var M_=r(765);function k_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var N_=[{label:"General",value:"general"},{label:"Style",value:"style"},{label:"Advanced",value:"advanced"}];const G_=function(){var e,t,r=(0,It.Gc)(),n=(0,Mn.F)((function(e){return e.payload})),o=(0,M_.F)().getDynamicContentCollectionItemAddon,i=(e=(0,c.useState)("general"),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return k_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?k_(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),a=i[0],l=i[1],u=(0,$a.x)((function(e){return e.addonStructure})),d=(0,$a.x)((function(e){return e.globalSettings})),p=r.control,f=(0,It.qo)({control:p,name:"settings"}),v=(0,c.useMemo)((function(){var e,t=n.sectionIndex,r=n.columnIndex,i=n.addon;if((0,A.$K)(t)&&(0,A.$K)(r)&&(0,A.$K)(i))return null===(e=o({sectionIndex:t,columnIndex:r,addon:i}))||void 0===e?void 0:e.name}),[n,o]),h=(0,c.useMemo)((function(){return v?u[v].settings:null}),[v,u]),b=(0,c.useMemo)((function(){var e;return null!==(e={general:h,style:d.style,advanced:d.advanced}[a])&&void 0!==e?e:{}}),[a,d,h]);return(0,s.BX)(s.HY,{children:[(0,s.tZ)(Na,{tabList:N_,activeTab:a,variant:"primary",onChange:function(e){l(e)}}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(b,f),form:r})})]})};function W_(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const U_=function(e){var t,r,n=e.isInnerSection,o=void 0!==n&&n,i=(0,L.$)(),a=(0,It.Gc)(),l=(t=(0,c.useState)("style"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return W_(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?W_(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1],p=(0,R_.B)((function(e){return e.config})),f=a.control,v=(0,It.qo)({control:f,name:"settings"}),h=[{label:i("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS_TAB_STYLE"),value:"style"},{label:i("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS_TAB_TITLE"),value:"title"},{label:i("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS_TAB_RESPONSIVE"),value:"responsive"},{label:i("COM_SPPAGEBUILDER_EDITOR_COLUMN_SETTINGS_TAB_ANIMATION"),value:"animation"}],b=(0,c.useMemo)((function(){return p.section[u]}),[p.section,u]);return(0,s.BX)("div",{children:[(0,s.tZ)(Na,{tabList:h,activeTab:u,onChange:d}),(0,s.tZ)("div",{css:V.M6.settingsPanelContent,children:(0,s.tZ)(w_,{settings:(0,Ap.VG)(b,v),form:a,disabledGroups:o?Bn.f9:void 0})})]})};function F_(e){return F_="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},F_(e)}function H_(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function q_(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==F_(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==F_(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===F_(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var V_=function(){var e=(0,Mn.F)((function(e){return e.type})),t=(0,Mn.F)((function(e){return e.payload})),r=(0,Pp._)(),n=r.getAddon,o=r.getTableItem,i=r.getCollectionItemAddon,a=(0,L.$)();switch(e){case"addon":var l=t.sectionIndex,c=t.columnIndex,u=t.addonIndex,d=t.tableItem;if(!(0,A.$K)(l)||!(0,A.$K)(c)||!(0,A.$K)(u))return null;var p,f,v,h,b="";if((b=(0,A.$K)(d)?null!==(p=null===(f=o({sectionIndex:l,columnIndex:c,addonIndex:u,tableItem:d}))||void 0===f?void 0:f.name)&&void 0!==p?p:"":null!==(v=null===(h=n({sectionIndex:l,columnIndex:c,addonIndex:u}))||void 0===h?void 0:h.name)&&void 0!==v?v:"").startsWith(Bn.HZ.name)){var y=(0,A.VL)(b),m=y.name,g=y.category;return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_EASYSTORE")},{link:null,text:g},{link:null,text:m}]})}return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_ADDON")},{link:null,text:(0,A.Dv)(b)}]});case"collection_item":var E,O,_,w=t.sectionIndex,I=t.columnIndex,S=t.addonIndex,C=t.collectionItem;return(0,A.$K)(w)&&(0,A.$K)(I)&&(0,A.$K)(S)&&(0,A.$K)(C)?(_=null!==(E=null===(O=n({sectionIndex:w,columnIndex:I,addonIndex:S}))||void 0===O?void 0:O.name)&&void 0!==E?E:"",(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_ADDON")},{link:null,text:(0,A.Dv)(_)}]})):null;case"collection_item_addon":var x,P,T=t.sectionIndex,D=t.columnIndex,Z=t.addonIndex,R=t.collectionItem;if(!((0,A.$K)(T)&&(0,A.$K)(D)&&(0,A.$K)(Z)&&(0,A.$K)(R)))return null;var j="";if((j=null!==(x=null===(P=i({sectionIndex:T,columnIndex:D,addonIndex:Z,collectionItem:R}))||void 0===P?void 0:P.name)&&void 0!==x?x:"").startsWith(Bn.HZ.name)){var B=(0,A.VL)(j),M=B.name,k=B.category;return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_EASYSTORE")},{link:null,text:k},{link:null,text:M}]})}return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_ADDON")},{link:null,text:(0,A.Dv)(j)}]});case"dynamic_content_collection_item_addon":var N=t.addon;return(0,A.$K)(N)?(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DYNAMIC")},{link:null,text:N.title}]}):null;case"column":return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_COLUMN")}]});case"section":return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")},{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_SECTION")}]});default:return(0,s.tZ)($t.Z,{routes:[{link:null,text:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_TITLE_DEFAULT")}]})}};const z_=function(){var e=(0,L.$)(),t=(0,Mn.F)((function(e){return{type:e.type,payload:e.payload}})),r=t.type,n=t.payload,o=(0,Mi.o)((function(e){return e.updateSettings})),i=(0,It.Gc)().control,a=(0,c.useDeferredValue)((0,It.qo)({control:i,name:"settings"})),l=(0,vc.D)(a),u=(0,Mi.o)((function(e){return e.page}));(0,c.useEffect)((function(){(0,vd.isEqual)(a,l)||(0,A.$K)(a)&&(0,A.$K)(r)&&o(a,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?H_(Object(r),!0).forEach((function(t){q_(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H_(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({type:r},n),!!l)}),[a,r,n,l,o]);var d=(0,c.useMemo)((function(){return!("section"!==r||!(0,A.$K)(n.sectionIndex)||!u[n.sectionIndex].parent)}),[r,n,u]);return(0,s.BX)("div",{css:X_.wrapper,children:[(0,s.tZ)("div",{css:X_.header,children:(0,s.tZ)(V_,{})}),(0,s.tZ)("div",{css:X_.content,children:function(){switch(r){case"addon":return(0,s.tZ)(x_,{});case"collection_item":return(0,s.tZ)(Z_,{});case"collection_item_addon":return(0,s.tZ)(A_,{});case"dynamic_content_collection_item_addon":return(0,s.tZ)(G_,{});case"section":return(0,s.tZ)(U_,{isInnerSection:d});case"column":return(0,s.tZ)(B_,{});default:return(0,s.BX)("div",{css:X_.emptyState,children:[(0,s.tZ)("h4",{children:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_EMPTY_STATE_PLACEHOLDER")}),(0,s.tZ)("img",{src:Lp,alt:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PANEL_EMPTY_STATE_IMAGE_ALT")})]})}}()})]})};var X_={wrapper:(0,i.iv)("border-left:1px solid ",n.qo.stroke.neutral,";height:calc(100vh - ",Bn.g3,"px);position:relative;;label:wrapper;"),header:(0,i.iv)(o.c.body("medium"),";padding:",n.W0[10]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";;label:header;"),content:(0,i.iv)("height:calc(100vh - ",Bn.g3+40+40,"px);;label:content;"),emptyState:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";color:",n.qo.text.neutral,";padding-inline:",n.W0[56]," ",n.W0[48],";margin-top:",n.W0[48],";h4{",o.c.body(),";color:",n.qo.text.hints,";text-align:center;};label:emptyState;")};const K_=function(e){var t=e.children,r=e.variant,n=void 0===r?"primary":r,o=e.gap,i=e.fullWidth,a=void 0!==i&&i,l=e.disabled,u=void 0!==l&&l;return(0,s.tZ)("div",{css:J_.buttonContainer(o,a),children:c.Children.map(t,(function(e){if(c.isValidElement(e)){var t=e.props,r=t.variant,i=t.disabled,l=t.buttonCss,s={variant:r||n,disabled:i||u,buttonCss:[J_.buttonCss(r||n,o,a),l],buttonContentCss:J_.buttonContentCss(a)};return c.cloneElement(e,s)}return e}))})};var $_={name:"1mnlghg-buttonContentCss",styles:"justify-content:center;label:buttonContentCss;"},Y_={name:"1pk4jv6-buttonCss",styles:"flex:auto;label:buttonCss;"},Q_={name:"1kfszus-buttonContainer",styles:"width:fit-content;label:buttonContainer;"},J_={buttonContainer:function(e,t){return(0,i.iv)("display:flex;overflow:hidden;",!t&&Q_," ",e&&(0,i.iv)("gap:",e,"px;;label:buttonContainer;"),";;label:buttonContainer;")},buttonCss:function(e,t,r){return(0,i.iv)("secondary"===e&&(0,i.iv)("border:none;line-height:",n.Nv[20],";box-shadow:",n.AF.combinedButton,";&:hover{box-shadow:",n.AF.combinedButton,";}",t&&(0,i.iv)("box-shadow:",n.AF.combinedButtonExtend,";&:hover{box-shadow:",n.AF.combinedButtonExtend,";};label:buttonCss;"),";;label:buttonCss;")," &:last-of-type{","secondary"===e&&(0,i.iv)("box-shadow:",n.AF.combinedButtonExtend,";&:hover{box-shadow:",n.AF.combinedButtonExtend,";};label:buttonCss;"),";}",!t&&(0,i.iv)("border-radius:0;&:first-of-type{border-radius:",n.E0[6]," 0px 0px ",n.E0[6],";}&:last-of-type{border-radius:0px ",n.E0[6]," ",n.E0[6]," 0px;};label:buttonCss;")," ",r&&Y_,";;label:buttonCss;")},buttonContentCss:function(e){return(0,i.iv)(e&&$_,";;label:buttonContentCss;")}},ew=r(6248);const tw=function(){var e=ma((function(e){return{isActive:e.isActive,toggleIsActive:e.toggleIsActive}}),ew.X),t=e.isActive,r=e.toggleIsActive;return(0,s.BX)("button",{id:"topbar-burger-menu",type:"button",css:rw.menuButton(t),onClick:r,children:[(0,s.tZ)("span",{}),(0,s.tZ)("span",{}),(0,s.tZ)("span",{})]})};var rw={menuButton:function(e){return(0,i.iv)(V.iZ.resetButton,";padding:0;display:flex;justify-content:center;flex-direction:column;width:40px;height:40px;justify-content:center;cursor:pointer;margin-left:-16px;:hover{span{background-color:",n.qo.icon.hover,";}}span{display:block;width:20px;height:2px;background-color:",n.qo.icon.default,";margin:",n.W0[2]," 0;border-radius:",n.E0[2],";transition:background-color 150ms ease-in,width 150ms ease-in;}",e&&(0,i.iv)("span{background-color:",n.qo.icon.hover,";width:16px;}>span:nth-of-type(2){width:12px;};label:menuButton;"),";;label:menuButton;")}},nw=r(7184),ow=r(2614),iw=r(9194),aw=r(9148),lw=r(5827);const cw=r.p+"images/ab499a0ad1900e77012b.png",uw=r.p+"images/c8e141c0f0b135b048ec.png";var sw,dw;function pw(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function fw(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var vw=function(e){var t,r,n=e.closeModal,o=(t=(0,c.useState)("first"),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return fw(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fw(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=function(){return n({action:"CLOSE"})},u=(0,c.useCallback)((function(e){return a(e)}),[]),d={first:(0,s.tZ)(hw,{handleClose:l,updateStep:u}),second:(0,s.tZ)(bw,{updateStep:u}),third:(0,s.tZ)(yw,{handleClose:l})};return(0,s.tZ)(s.HY,{children:i in d?d[i]:null})},hw=function(e){var t=e.handleClose,r=e.updateStep,n=(0,L.$)();return(0,s.tZ)(St.Z,{onClose:t,title:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_TITLE"),isOverflowYAuto:!1,wrapperCss:Ew.wrapper,children:(0,s.BX)("div",{css:Ew.wrapper,children:[(0,s.BX)("div",{css:Ew.contentWrapper,children:[(0,s.tZ)("div",{css:Ew.fixingImageWrapper,children:(0,s.tZ)("img",{src:uw,alt:"fixing json",draggable:!1})}),(0,s.BX)("div",{css:Ew.text,children:[(0,s.tZ)("h4",{css:o.c.heading4("medium"),children:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_HEADING_1")}),(0,s.BX)("div",{css:Ew.instructions,children:[(0,s.tZ)("p",{children:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_WHAT_HAPPENED")}),(0,s.tZ)("p",{children:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_RECOMMEND")})]})]})]}),(0,s.BX)("div",{css:Ew.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:t,children:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_CANCEL")}),(0,s.tZ)(_.Z,{onClick:function(){r("second")},children:n("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON")})]})]})})},bw=function(e){var t=e.updateStep,r=(0,L.$)(),n=(0,Mi.o)((function(e){return e.validateOldPageContent}));return(0,c.useEffect)((function(){n();var e=setTimeout((function(){t("third")}),6e3);return function(){clearTimeout(e)}}),[n,t]),(0,s.tZ)("div",{css:Ew.secondStepWrapper,children:(0,s.BX)("div",{css:Ew.contentWrapper,children:[(0,s.tZ)("div",{css:Ew.fixingIcon,children:(0,s.tZ)(I.Z,{name:"fixingIcon",width:104,height:104})}),(0,s.BX)("div",{css:Ew.text,children:[(0,s.tZ)("h4",{css:o.c.heading4("medium"),children:r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_HEADING_2")}),(0,s.BX)("div",{css:Ew.fixingText,children:[(0,s.tZ)(I.Z,{name:"arrowPath"}),(0,s.BX)("div",{css:Ew.fixingNow,children:[(0,s.BX)("span",{children:[r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_NOW_FIXING"),":"]}),(0,s.BX)("div",{css:Ew.fixingContentWrapper,children:[(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_SECTION")}),(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_COLUMN")}),(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_ADDON")})]})]})]})]})]})})},yw=function(e){var t=e.handleClose,r=(0,L.$)();return(0,s.tZ)(St.Z,{onClose:t,title:r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_TITLE_2"),isOverflowYAuto:!1,wrapperCss:Ew.wrapper,children:(0,s.BX)("div",{css:Ew.wrapper,children:[(0,s.BX)("div",{css:Ew.contentWrapper,children:[(0,s.tZ)("div",{css:Ew.fixingImageWrapper,children:(0,s.tZ)("img",{src:cw,alt:"fixing json completed",draggable:!1})}),(0,s.BX)("div",{css:Ew.text,children:[(0,s.tZ)("h4",{css:o.c.heading4("medium"),children:r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_HEADING_3")}),(0,s.tZ)("p",{css:o.c.caption(),children:r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_SAVING_INSTRUCTION")})]})]}),(0,s.tZ)("div",{css:Ew.footerWrapper,children:(0,s.tZ)(_.Z,{onClick:t,children:r("COM_SPPAGEBUILDER_EDITOR_VALIDATE_JSON_MODAL_BUTTON_UNDERSTAND")})})]})})},mw=(0,i.F4)(sw||(sw=pw(["\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n"]))),gw=(0,i.F4)(dw||(dw=pw(["\n 0% {\n transform: translateY(100%);\n opacity: 0;\n }\n 20% {\n transform: translateY(0);\n opacity: 1;\n }\n 30% {\n transform: translateY(0);\n opacity: 1;\n }\n 50% {\n transform: translateY(-100%);\n opacity: 0;\n }\n 70% {\n transform: translateY(-100%);\n opacity: 0;\n }\n 80% {\n transform: translateY(100%);\n opacity: 0;\n }\n 100% {\n transform: translateY(100%);\n opacity: 0;\n }\n"]))),Ew={wrapper:{name:"1tm1qml-wrapper",styles:"max-width:650px;label:wrapper;"},secondStepWrapper:(0,i.iv)("background:",n.qo.background.primary,";margin:",n.W0[24],";width:100%;box-shadow:",n.AF.modal,";border-radius:",n.E0[8],";overflow:hidden;max-width:650px;",n.Uo.smallTablet,"{max-width:90%;};label:secondStepWrapper;"),instructions:(0,i.iv)(o.c.caption()," text-align:center;;label:instructions;"),contentWrapper:(0,i.iv)("display:flex;flex-direction:column;align-items:center;padding:",n.W0[20],";gap:",n.W0[16],";background-color:",n.qo.background.white,";;label:contentWrapper;"),text:(0,i.iv)("display:flex;flex-direction:column;align-items:center;gap:",n.W0[12],";;label:text;"),fixingNow:(0,i.iv)(o.c.caption()," display:flex;align-items:center;gap:",n.W0[4],";;label:fixingNow;"),fixingContentWrapper:(0,i.iv)("display:flex;align-items:center;width:50px;height:34px;overflow:hidden;position:relative;color:",n.qo.alternate.viridian,";span{position:absolute;left:0;opacity:0;animation:",gw," 5s ease-in-out forwards;&:nth-of-type(1){animation-delay:0s;}&:nth-of-type(2){animation-delay:2s;}&:nth-of-type(3){animation-delay:4s;}};label:fixingContentWrapper;"),fixingImageWrapper:{name:"1vmt9oz-fixingImageWrapper",styles:"height:126px;img{height:100%;};label:fixingImageWrapper;"},fixingIcon:(0,i.iv)("animation:",mw," 5s linear infinite;;label:fixingIcon;"),fixingText:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[6],";;label:fixingText;"),footerWrapper:(0,i.iv)("background-color:",n.qo.background.white,";box-shadow:",n.AF.dividerTop,";padding:",n.W0[12]," ",n.W0[16],";display:flex;justify-content:end;gap:",n.W0[8],";;label:footerWrapper;")};function Ow(e){return Ow="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ow(e)}var _w=["attribs"];function ww(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function Iw(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Sw(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Iw(Object(r),!0).forEach((function(t){Cw(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Iw(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Cw(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ow(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ow(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ow(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function xw(){xw=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Ow(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function Pw(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Lw(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){Pw(i,n,o,a,l,"next",e)}function l(e){Pw(i,n,o,a,l,"throw",e)}a(void 0)}))}}var Aw=function(e){var t=e.pageType,r=e.extensionView,n=[Bn.HZ.list.type,Bn.HZ.single.type].includes(t)||["article","module","dynamic_content:detail","dynamic_content:index"].includes(r);return[{id:"save-and-close",icon:"saveClose",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AND_CLOSE"},{id:"save-as-copy",icon:"copy",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AS_COPY",isDisabled:n},{id:"save-and-new",icon:"saveNew",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AND_NEW",isDisabled:n}]};const Tw=function(e){var t,r,n=e.isPopup,o=void 0!==n&&n,i=e.isNextClicked,a=e.setIsNextClicked,l=e.previewVersionId,u=e.onRestoreVersion,d=(0,L.$)(),p=(0,$o.Z)(Oo.F.PageEditor),f=p.id,v=p.type,h=(0,It.Gc)(),b=(0,It.Gc)(),y=(0,_o.s0)(),m=(0,_o.TH)(),g=ma((function(e){return e.setIsActive})),E=(0,Zt.d)(),O=E.showModal,w=E.closeModal,S=(0,ve.p)().showToast,C=(0,Qt.g)(),x=(0,lw.L)(),T=(0,Si.J5)(),D=(0,Si.dE)(),Z=(0,rO.U1)(),R=(0,c.useRef)(null),j=function(){var e=new Date,t=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][e.getMonth()],r=e.getDate(),n=e.getFullYear(),o=e.getHours(),i=e.getMinutes().toString().padStart(2,"0"),a=e.getSeconds().toString().padStart(2,"0"),l=o>=12?"PM":"AM",c=o%12||12;return"".concat(t," ").concat(r,", ").concat(n,", ").concat(c,":").concat(i,":").concat(a," ").concat(l)},B=(0,Si.eS)(Number(f)),M=(0,c.useMemo)((function(){return B.data?B.data.url:""}),[B.data]),k=Z.data,N=(0,Bi.j)((function(e){return e.setActiveAction})),G=(0,ow.x)((function(e){return e.setIsLoading})),W=(0,Mn.F)((function(e){return e.payload})),U=W.sectionIndex,F=W.columnIndex,H=W.addonIndex,q=(0,Mn.F)((function(e){return e.type})),V=(0,nw.Xu)(),z=(0,Mi.o)((function(e){return e.clearPageContent})),X=(0,kn.s)((function(e){return e.pastStates})),K=(0,kn.s)((function(e){return e.futureStates})),$=(0,kn.s)((function(e){return e.undo})),Y=(0,kn.s)((function(e){return e.redo})),Q=(0,Ci.T)().closeSettingPanel,J=(0,iw.HX)(),ee=ji(),te=ee.savePageContent,re=ee.isLoading,ne=function(){var e=(0,Zt.d)().showModal;return{showJSONValidationModal:function(t){return e({component:vw,props:t})}}}(),oe=ne.showJSONValidationModal,ie=h.getValues("extension"),ae=h.getValues("extension_view"),le=new URLSearchParams(window.location.href),ce=le.get("article_id"),ue=le.get("module_id"),se=!(null==k||!k.enable_page_versioning),de=[{id:"close",icon:"timesAlt",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_CLOSE"},{id:"export",icon:"exportAlt",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_DROPDOWN_EXPORT",iconNoFill:!0},{id:"import",icon:"importAlt",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_DROPDOWN_IMPORT",iconNoFill:!0},{id:"clear-content",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_DROPDOWN_CLEAR",variant:"critical"},{id:"version-history",icon:"clock",title:"COM_SPPAGEBUILDER_EDITOR_SHOW_VERSION_HISTORY",isDisabled:!se,isProFeature:!0},{id:"validate-content",icon:"command",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_DROPDOWN_CHECK_JSON",variant:"warning"},{id:"delete-page-hits",icon:"clearAll",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_DROPDOWN_DELETE_PAGE_HITS",variant:"critical"}],pe=function(){"com_content"===ie&&"article"===ae&&ce?window.location.href="".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_content&view=article&layout=edit&id=").concat(ce):"mod_sppagebuilder"===ie&&"module"===ae&&ue?window.location.href="".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_modules&view=module&layout=edit&id=").concat(ue,"&client_id=0"):(g(!0),T.mutate({id:h.getValues("id"),action:"check-out"}),(0,A.$K)(m.state)&&m.state.prevPageName===Bn.lr?y(-1):y(Oo.F.Home.buildLink()))},fe=function(){var e=Lw(xw().mark((function e(){var t,r;return xw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C({title:d("COM_SPPAGEBUILDER_EDITOR_CLEAR_PAGE_CONTENT_TITLE"),confirmationMessage:d("COM_SPPAGEBUILDER_EDITOR_CLEAR_PAGE_CONTENT_MESSAGE"),confirmButtonText:d("COM_SPPAGEBUILDER_EDITOR_CLEAR_PAGE_CONTENT_CLEAR_BUTTON"),skipMutation:!0});case 2:"CONFIRM"===e.sent.action&&(Q(),z(),h.setValue("css",""),o&&"popup"===h.getValues("extension_view")&&(t=b.getValues(),r={visibility:t.attribs.visibility,exclude_pages_toggle:t.attribs.exclude_pages_toggle,exclude_menus_toggle:t.attribs.exclude_menus_toggle,excluded_pages:t.attribs.excluded_pages,excluded_menus:t.attribs.excluded_menus,selected_pages:t.attribs.selected_pages,selected_menus:t.attribs.selected_menus,trigger_condition:t.attribs.trigger_condition,scroll_direction:t.attribs.scroll_direction,scroll_percentage:t.attribs.scroll_percentage,landing_after:t.attribs.landing_after,landing_show_after:t.attribs.landing_show_after,exit_after:t.attribs.exit_after,exit_show_after:t.attribs.exit_show_after,click_type:t.attribs.click_type,click_count:t.attribs.click_count,click_area:t.attribs.click_area,hover_area:t.attribs.hover_area,inactivity_duration:t.attribs.inactivity_duration,close_on_click:t.attribs.close_on_click,reappear_after:t.attribs.reappear_after},b.setValue("attribs",{}),b.setValue("attribs",r)));case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),he=function(){var e=Lw(xw().mark((function e(){var t,r,n,i;return xw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,x({title:d(o?"COM_SPPAGEBUILDER_EDITOR_POPUP_EXPORT_TITLE":"COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE"),isPopup:o,confirmationMessage:o?d("COM_SPPAGEBUILDER_EDITOR_POPUP_EXPORT_MESSAGE"):""});case 2:t=e.sent,r=t.action,n=t.seoChecked,i=t.mediaChecked,"CONFIRM"===r&&(i?(0,nw.xW)(f,n):V.mutate({pageId:f,isSeoChecked:n}));case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),be=function(){var e=Lw(xw().mark((function e(){return xw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C({title:d("COM_SPPAGEBUILDER_EDITOR_DELETE_PAGE_HITS_TITLE"),confirmationMessage:d("COM_SPPAGEBUILDER_EDITOR_DELETE_PAGE_HITS_MESSAGE"),confirmButtonText:d("COM_SPPAGEBUILDER_EDITOR_DELETE_PAGE_HITS_CONFIRM_BUTTON"),skipMutation:!0});case 2:"CONFIRM"===e.sent.action&&D.mutate({id:Number(h.getValues("id"))},{onSuccess:function(){return S({type:"success",message:d("COM_SPPAGEBUILDER_EDITOR_PAGE_HITS_DELETED")})}});case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ye=function(){var e=kn.s.getState().currentState,t=Mn.F.getState().type;if((0,A.$K)(t))switch(q){case"addon":(0,A.$K)(U)&&(0,A.$K)(F)&&(0,A.$K)(H)&&h.reset(Sw(Sw({},h.getValues()),{},{settings:e[U].columns[F].addons[H].settings,repeatable:{}}));break;case"column":(0,A.$K)(U)&&(0,A.$K)(F)&&h.reset(Sw(Sw({},h.getValues()),{},{settings:e[U].columns[F].settings}));break;case"section":(0,A.$K)(U)&&h.reset(Sw(Sw({},h.getValues()),{},{settings:e[U].settings}))}},me=o?(0,s.BX)("span",{css:Dw.popupBuilderIcon,children:[(0,s.tZ)(I.Z,{name:"popsDuo",width:16,height:16,style:Dw.popupDuo}),d("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_POPUPS")]}):(0,s.tZ)(s.HY,{}),ge="dynamic_content:index"===ae||"dynamic_content:detail"===ae?(0,s.tZ)("span",{css:Dw.popupBuilderIcon,children:h.getValues("page_type")||d("dynamic_content:index"===ae?"COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_INDEX":"COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_DETAILS")}):(0,s.tZ)(s.HY,{});return(0,s.BX)("div",{css:Dw.wrapper,children:[(0,s.BX)("div",{css:Dw.leftActionWrapper,children:[(0,s.tZ)(tw,{}),(0,s.BX)(_.Z,{variant:"text",buttonCss:Dw.brandName,onClick:function(){return pe()},children:[(0,s.tZ)("div",{children:d("COM_SPPAGEBUILDER_EDITOR_BRAND_NAME")}),me,ge]})]}),(0,s.tZ)("div",{css:Dw.actionWrapper,children:(0,A.$K)(l)&&null!==l?(0,s.tZ)(_.Z,{variant:"primary",onClick:function(){u&&l&&u(l)},icon:(0,s.tZ)(I.Z,{name:"restoreCircle",width:16,height:16,noFill:!0}),children:d("COM_SPPAGEBUILDER_EDITOR_RESTORE_THIS_VERSION")}):(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{css:Dw.resizeButtonWrapper,children:[(0,s.tZ)(_.Z,{variant:"text",buttonCss:Dw.resizeButton,onClick:function(){$(),ye()},disabled:0===X.length,icon:(0,s.tZ)(I.Z,{name:"undo",width:20,height:20})}),(0,s.tZ)(_.Z,{variant:"text",buttonCss:Dw.resizeButton,onClick:function(){Y(),ye()},disabled:0===K.length,icon:(0,s.tZ)(I.Z,{name:"redo",width:20,height:20})})]}),(0,s.tZ)($e.Z,{variant:"secondary",buttonCss:Dw.previewButton,href:M,target:"_blank",children:d("COM_SPPAGEBUILDER_EDITOR_TOPBAR_PREVIEW_BUTTON")}),(t=b.getValues("attribs.visibility"),r=b.getValues("attribs.trigger_condition"),t&&r||!o||!o||i?(0,s.BX)(K_,{children:[(0,s.tZ)(_.Z,{variant:"primary",loading:re,onClick:function(){o&&(null==a||a(!1),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="flex"),w({action:"CLOSE"})),te({version_name:j()})},children:d("COM_SPPAGEBUILDER_EDITOR_TOPBAR_SAVE_BUTTON")}),(0,s.tZ)(P.Z,{actions:Aw({pageType:v,extensionView:ae}),triggerButtonContent:(0,s.tZ)(I.Z,{name:"chevronDown"}),triggerButtonStyle:Dw.triggerButton,onSelect:function(e){var t;switch(e){case"save-and-close":te({version_name:j()}),pe();break;case"save-and-new":if(te({version_name:j()}),"com_content"===ie&&"article"===ae&&ce){window.location.href="".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_content&view=article&layout=edit");break}if("mod_sppagebuilder"===ie&&"module"===ae&&ue){window.location.href="".concat(A.Xy.pagebuilderBase,"administrator/index.php?option=com_modules&view=module&layout=edit&client_id=0");break}O({component:aw.Z,props:{title:d("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_MODAL_TITLE"),pageType:null!==(t=v)&&void 0!==t?t:"page"}});break;case"save-as-copy":te({saveAsCopy:!0})}}})]}):(0,s.tZ)(_.Z,{variant:"primary",loading:re,onClick:function(){null==a||a(!0),document.getElementById("topbar-burger-menu")&&(document.getElementById("topbar-burger-menu").style.display="none"),O({component:ia,props:{title:d("COM_SPPAGEBUILDER_EDITOR_POPUP_SETTINGS_MODAL_TITLE"),isPopup:!0,setIsNextClicked:function(e){return null==a?void 0:a(e)},form:b,savePageContent:te}})},children:d("COM_SPPAGEBUILDER_EDITOR_TOPBAR_NEXT_BUTTON")})),(0,s.tZ)(P.Z,{actions:de.filter((function(e){return!("version-history"===e.id&&!se)})),triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisXAlt"}),triggerButtonStyle:Dw.threeDots,displaceLeft:-90,width:216,onSelect:function(e){var t;switch(e){case"clear-content":fe();break;case"version-history":N("versions");break;case"validate-content":oe({});break;case"delete-page-hits":be();break;case"close":pe();break;case"export":he();break;case"import":null===(t=R.current)||void 0===t||t.click()}}})]})}),(0,s.tZ)("input",{ref:R,type:"file",hidden:!0,onChange:function(){var e=Lw(xw().mark((function e(t){var r,n,i,a,l,c,u,s,d,p,f,v,y,m,g,E,O,_,w,I,C,x,P,L,T;return xw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.target.files){e.next=17;break}return e.prev=1,G(!0),e.next=5,J.mutateAsync(t.target.files[0]);case 5:r=e.sent,n=JSON.parse(r.data.seo),i=n.meta_description,a=void 0===i?"":i,l=n.meta_keywords,c=void 0===l?"":l,u=n.og_type,s=void 0===u?"":u,d=n.robots,p=void 0===d?"":d,f=n.seo_spacer,v=void 0===f?"":f,y=n.og_title,m=void 0===y?"":y,g=n.og_description,E=void 0===g?"":g,O=n.og_image,_=void 0===O?{src:""}:O,w=n.author,I={attribs:{meta_description:a,meta_keywords:c,og_type:s,robots:p,seo_spacer:v,author:void 0===w?"":w},og_title:m,og_description:E,og_image:Sw({},_)},o?(x=JSON.parse(null!==(C=r.data.attribs)&&void 0!==C?C:""),(0,A.$K)(r.data)&&b.reset(Sw(Sw({},b.getValues()),{},{css:r.data.css,attribs:x}))):(0,A.$K)(r.data)&&(P=h.getValues(),L=I.attribs,T=ww(I,_w),h.reset(Sw(Sw(Sw({},P),{},{css:r.data.css},T),{},{attribs:Sw(Sw({},P.attribs),L)}))),e.next=14;break;case 11:e.prev=11,e.t0=e.catch(1),(0,A.VZ)(e.t0)&&S({type:"danger",message:e.t0.message});case 14:return e.prev=14,G(!1),e.finish(14);case 17:t.target.value="";case 18:case"end":return e.stop()}}),e,null,[[1,11,14,17]])})));return function(t){return e.apply(this,arguments)}}()})]})};var Dw={wrapper:(0,i.iv)("background-color:",n.qo.base.white,";box-shadow:",n.AF.topbar,";display:flex;align-items:center;justify-content:space-between;padding:",n.W0[8]," ",n.W0[16],";width:100%;height:100%;;label:wrapper;"),triggerButton:(0,i.iv)(V.iZ.resetButton,";display:inline-block;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;padding:",n.W0[6]," ",n.W0[6],";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;background-color:",n.qo.action.primary.default,";color:",n.qo.base.white,";border-left:1px solid ",n.qo.action.primary.focus,";&:hover{background-color:",n.qo.action.primary.hover,";}&:active{background-color:",n.qo.action.primary.focus,";};label:triggerButton;"),leftActionWrapper:(0,i.iv)(V.iZ.flexCenter(),";padding:0 ",n.W0[16],";;label:leftActionWrapper;"),brandName:(0,i.iv)("padding-left:0;span{",o.c.body(),";};label:brandName;"),actionWrapper:(0,i.iv)("display:flex;gap:",n.W0[10],";;label:actionWrapper;"),resizeButtonWrapper:(0,i.iv)("display:flex;gap:",n.W0[4],";margin-right:",n.W0[24],";;label:resizeButtonWrapper;"),resizeButton:(0,i.iv)("color:",n.qo.icon.default,";padding:",n.W0[6],";;label:resizeButton;"),previewButton:(0,i.iv)("padding:",n.W0[6]," ",n.W0[20],";;label:previewButton;"),threeDots:(0,i.iv)("background-color:",n.qo.action.secondary.default,";border-radius:",n.E0.circle,";padding:",n.W0[6]," ",n.W0[8],";color:",n.qo.icon.default,";transition:background-color 0.3s ease,color 0.3s ease;:hover{color:",n.qo.icon.default,";background-color:",n.qo.action.secondary.hover,";};label:threeDots;"),popupBuilderIcon:{name:"ely8xq-popupBuilderIcon",styles:"display:flex;color:#456ef5!important;padding:4px 8px;background-color:#f0f4fa;border-radius:6px;font-size:14px;gap:2px;height:24px;align-items:center;margin-left:4px;label:popupBuilderIcon;"},popupDuo:(0,i.iv)("color:",n.qo.icon.primary,"!important;;label:popupDuo;"),versionButton:(0,i.iv)("padding:",n.W0[6]," ",n.W0[20],";;label:versionButton;")};function Zw(e){return Zw="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Zw(e)}function Rw(){Rw=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Zw(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function jw(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Bw(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){jw(i,n,o,a,l,"next",e)}function l(e){jw(i,n,o,a,l,"throw",e)}a(void 0)}))}}function Mw(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function kw(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Mw(Object(r),!0).forEach((function(t){Nw(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Mw(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Nw(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Zw(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Zw(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Zw(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Gw=function(e,t){return ge.u.get(he.H.PAGE_VERSIONS,{params:kw({id:e},t&&{search:t})})},Ww=function(e){return ge.u.post(he.H.DELETE_VERSION,{version_id:e})},Uw=function(e,t){return ge.u.post(he.H.DELETE_VERSIONS,{id:e,version_ids:t})},Fw=function(){var e=(0,ve.p)().showToast,t=(0,ye.NL)();return(0,me.D)({mutationFn:function(e){return t=e.pageId,r=e.versionId,ge.u.post(he.H.RESTORE_VERSION,{id:t,version_id:r});var t,r},onSuccess:function(){t.invalidateQueries({queryKey:["PageContent"]}),t.invalidateQueries({queryKey:["PageVersions"]})},onError:function(t){e({type:"danger",message:t.message})}})},Hw=function(e){return ge.u.get(he.H.VERSION_CONTENT,{params:{version_id:e}})};function qw(e){return qw="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},qw(e)}function Vw(){Vw=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==qw(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function zw(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function Xw(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Kw(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Kw(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Kw(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const $w=function(e){var t=e.closeModal,r=e.onSave,n=(0,L.$)(),o=(0,ve.p)().showToast,i=Xw((0,c.useState)(""),2),a=i[0],l=i[1],u=Xw((0,c.useState)(""),2),d=u[0],p=u[1],f=Xw((0,c.useState)(!1),2),v=f[0],h=f[1],b=function(){var e,i=(e=Vw().mark((function e(){return Vw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(a.trim()){e.next=2;break}return e.abrupt("return");case 2:return h(!0),e.prev=3,e.next=6,r(a.trim(),d.trim());case 6:t({action:"CLOSE"}),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(3),o({type:"danger",message:n("COM_SPPAGEBUILDER_EDITOR_VERSION_ADD_ERROR")});case 12:return e.prev=12,h(!1),e.finish(12);case 15:case"end":return e.stop()}}),e,null,[[3,9,12,15]])})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){zw(i,n,o,a,l,"next",e)}function l(e){zw(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(){return i.apply(this,arguments)}}(),y=function(){t({action:"CLOSE"})},m=!a.trim();return(0,s.tZ)(St.Z,{onClose:y,title:"Add to Version",wrapperCss:Yw.modalWrapper,headerCss:Yw.header,children:(0,s.BX)("div",{css:Yw.content,children:[(0,s.tZ)("div",{css:Yw.field,children:(0,s.tZ)(Kt.Z,{value:a,onChange:l,placeholder:"Title",disabled:v})}),(0,s.tZ)("div",{css:Yw.field,children:(0,s.tZ)("textarea",{css:Yw.textarea,value:d,onChange:function(e){return p(e.target.value)},placeholder:"Notes...",disabled:v,rows:4})}),(0,s.BX)("div",{css:Yw.footer,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:y,disabled:v,children:"Cancel"}),(0,s.tZ)(_.Z,{variant:"primary",onClick:b,loading:v,disabled:m,children:"Save"})]})]})})};var Yw={modalWrapper:{name:"lmv8hs-modalWrapper",styles:"max-width:380px;width:100%;label:modalWrapper;"},header:(0,i.iv)(o.c.heading5("regular"),";;label:header;"),content:(0,i.iv)("position:relative;min-height:261px;padding:",n.W0[24]," ",n.W0[20],";background-color:",n.qo.background.primary,";;label:content;"),field:(0,i.iv)("margin-bottom:",n.W0[20],";&:last-of-type{margin-bottom:",n.W0[24],";};label:field;"),textarea:(0,i.iv)(o.c.body(),";width:100%;padding:",n.W0[12],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";background-color:",n.qo.background.white,";color:",n.qo.text.default,";font-family:inherit;outline:none;transition:border-color 0.2s ease;resize:none;&:focus{border-color:",n.qo.action.primary.default,";}&::placeholder{color:",n.qo.text.hints,";}&:disabled{background-color:",n.qo.background.disabled,";cursor:not-allowed;};label:textarea;"),footer:(0,i.iv)("display:flex;justify-content:end;align-items:center;gap:",n.W0[10],";padding:",n.W0[12]," ",n.W0[16],";background-color:",n.qo.background.white,";border-top:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.positive,";width:100%;height:56px;position:absolute;bottom:0;left:0;;label:footer;")},Qw=r(4632);function Jw(e){return Jw="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Jw(e)}function eI(){eI=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Jw(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function tI(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function rI(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){tI(i,n,o,a,l,"next",e)}function l(e){tI(i,n,o,a,l,"throw",e)}a(void 0)}))}}function nI(e){return function(e){if(Array.isArray(e))return aI(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||iI(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function oI(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||iI(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function iI(e,t){if(e){if("string"==typeof e)return aI(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?aI(e,t):void 0}}function aI(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var lI=function(e){return 1===e.active||!0===e.active},cI=function(e){var t=e.version,r=e.isSelected,n=e.onSelectionChange,o=e.selectionDisabled,i=e.onRestore,a=e.onDelete,l=e.onRename,u=e.onUpdateNote,d=e.onVersionClick,p=e.previewVersionId,f=e.setPreviewVersionId,v=e.onExitPreview,h=(0,Zt.d)().showModal,b=oI((0,c.useState)(!1),2),y=b[0],m=b[1],g=oI((0,c.useState)(t.note||""),2),E=g[0],O=g[1],_=(0,c.useRef)(null);(0,c.useEffect)((function(){O(t.note||"")}),[t.note]),(0,c.useEffect)((function(){y&&_.current&&(_.current.focus(),_.current.select())}),[y]);var w=function(){m(!1),E!==t.note&&u(E)},S=lI(t),C=p===t.id,x=S&&null!=p&&p!==t.id,L=Boolean(t.profile_image),A=function(e){for(var t=0,r=0;r<e.length;r+=1)t=e.charCodeAt(r)+((t<<5)-t);var n=Math.abs(t)%360;return"hsl(".concat(n,", 68%, 48%)")}("".concat(t.created_by||"","-").concat(t.created_by_name||"")),T=L?(0,s.tZ)("img",{src:t.profile_image,alt:"Profile",width:16,height:16,style:{borderRadius:"50%"}}):(0,s.tZ)("div",{css:dI.profileImageFallback({backgroundColor:A}),children:t.created_by_name.charAt(0).toUpperCase()});return(0,s.tZ)("div",{css:dI.versionItem({isActive:S,isPreviewed:C,isCurrentVersionPreviewed:x}),onClick:function(e){e.target.closest("[data-note-area]")||e.target.closest("[data-actions-area]")||e.target.closest("[data-selection-area]")||(S&&x?(null==f||f(null),null==v||v()):S||null==d||d(t))},children:S?(0,s.tZ)(s.HY,{children:(0,s.BX)("div",{css:dI.currentVersionHeader,children:[(0,s.tZ)(I.Z,{name:x?"disabledCircle":"activeCircle",width:16,height:16}),(0,s.tZ)("span",{css:dI.currentVersionLabel({isCurrentVersionPreviewed:x}),children:"Current Version"})]})}):(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:dI.rowCheckbox,"data-selection-area":!0,role:"presentation",onClick:function(e){return e.stopPropagation()},onMouseDown:function(e){return e.stopPropagation()},onKeyDown:function(e){return e.stopPropagation()},children:(0,s.tZ)(re.Z,{checked:r,disabled:o,onChange:function(e){return n(e)}})}),(0,s.BX)("div",{css:dI.versionInfo,children:[(0,s.tZ)("div",{css:dI.versionDate({isPreviewed:C}),children:t.name}),(0,s.BX)("div",{css:dI.profileInfoWrapper,children:[T,(0,s.tZ)("div",{css:dI.profileName,children:t.created_by_name})]}),y?(0,s.tZ)("input",{ref:_,css:dI.noteInput({isActive:!0}),value:E,onChange:function(e){return O(e.target.value)},onBlur:function(){w()},onKeyDown:function(e){"Enter"===e.key?(e.preventDefault(),w()):"Escape"===e.key&&(m(!1),O(t.note||""))},placeholder:"Notes....","data-note-area":!0}):(0,s.tZ)("div",{css:dI.noteInput({isActive:!1,hasNote:!!t.note,isPreviewed:C}),onClick:function(e){e.stopPropagation(),m(!0)},"data-note-area":!0,children:t.note||"Notes...."})]}),(0,s.tZ)("div",{css:dI.versionActions({isActive:y}),onClick:function(e){return e.stopPropagation()},"data-actions-area":!0,children:(0,s.tZ)(P.Z,{actions:[{id:"rename",title:"COM_SPPAGEBUILDER_EDITOR_RENAME"},{id:"restore",title:"COM_SPPAGEBUILDER_EDITOR_RESTORE"},{id:"delete",title:"COM_SPPAGEBUILDER_EDITOR_DELETE",variant:"critical"}],triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisY",width:16,height:16}),triggerButtonStyle:dI.contextMenuButton({isPreviewed:C}),onSelect:function(){var e=rI(eI().mark((function e(r){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if("rename"!==r){e.next=6;break}return e.next=3,h({component:Qw.Z,props:{currentName:t.name,onSave:function(){var e=rI(eI().mark((function e(t){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,l(t);case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()}});case 3:e.sent,e.next=7;break;case 6:"restore"===r?i(t):"delete"===r&&a(t);case 7:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),arrowPosition:"bottom",width:140,displaceLeft:-50,displaceTop:117})})]})})};const uI=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.onVersionClick,r=e.onExitPreview,n=e.setPreviewVersionId,o=e.previewVersionId,i=(0,L.$)(),a=(0,$o.Z)(Oo.F.PageEditor).id,l=(0,ve.p)().showToast,u=(0,Qt.g)(),d=function(){var e=(0,ve.p)().showToast,t=(0,ye.NL)();return(0,me.D)({mutationFn:Ww,onSuccess:function(){t.invalidateQueries({queryKey:["PageVersions"]})},onError:function(t){e({type:"danger",message:t.message})}})}(),p=function(){var e,t=(0,ve.p)().showToast,r=(0,ye.NL)();return(0,me.D)({mutationFn:(e=Bw(Rw().mark((function e(t){var r,n,o,i;return Rw().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.pageId,n=t.versionIds,e.next=3,Uw(r,n);case 3:if(o=e.sent,null!=(i=o.data)&&i.status){e.next=7;break}throw new Error((null==i?void 0:i.message)||"Failed to delete versions");case 7:return e.abrupt("return",o);case 8:case"end":return e.stop()}}),e)}))),function(t){return e.apply(this,arguments)}),onSuccess:function(){r.invalidateQueries({queryKey:["PageVersions"]})},onError:function(e){t({type:"danger",message:e.message})}})}(),f=Fw(),v=function(){var e=(0,ve.p)().showToast,t=(0,ye.NL)();return(0,me.D)({mutationFn:function(e){return t=e.versionId,r=e.note,ge.u.post(he.H.UPDATE_VERSION_NOTE,{version_id:t,note:r});var t,r},onSuccess:function(e,r){t.invalidateQueries({queryKey:["PageVersions"]})},onError:function(t){e({type:"danger",message:t.message})}})}(),h=function(){var e=(0,ve.p)().showToast,t=(0,ye.NL)();return(0,me.D)({mutationFn:function(e){return t=e.versionId,r=e.name,ge.u.post(he.H.UPDATE_VERSION_NAME,{version_id:t,name:r});var t,r},onSuccess:function(r,n){t.invalidateQueries({queryKey:["PageVersions"]}),e({type:"success",message:"Version name updated successfully"})},onError:function(t){e({type:"danger",message:t.message})}})}(),b=(0,Bi.j)((function(e){return e.setActiveAction})),y=ji().savePageContent,m=(0,Zt.d)().showModal,g=(0,ye.NL)(),E=oI((0,c.useState)(""),2),O=E[0],w=E[1],S=(0,fe.N)(O,300),C=oI((0,c.useState)((function(){return new Set})),2),x=C[0],P=C[1],A=function(e,t){var r,n=(0,ve.p)().showToast;return(0,be.a)({enabled:!!Number(e),queryKey:["PageVersions",e,t||""],queryFn:(r=Bw(Rw().mark((function r(){var n;return Rw().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,Gw(Number(e),t);case 2:return n=r.sent,r.abrupt("return",n.data);case 4:case"end":return r.stop()}}),r)}))),function(){return r.apply(this,arguments)}),onError:function(e){n({type:"danger",message:e.message})}})}(a,S||void 0),T=A.data,D=A.isLoading,Z=(null==T?void 0:T.data)||[],R=nI(Z).sort((function(e,t){return e.active&&!t.active?-1:!e.active&&t.active?1:new Date(t.created_on).getTime()-new Date(e.created_on).getTime()})),j=(0,c.useMemo)((function(){return R.filter((function(e){return!lI(e)})).map((function(e){return e.id}))}),[R]);(0,c.useEffect)((function(){var e=new Set(j);P((function(t){var r=new Set;return t.forEach((function(t){e.has(t)&&r.add(t)})),r.size===t.size&&nI(t).every((function(e){return r.has(e)}))?t:r}))}),[j]);var B=(0,c.useCallback)((function(e,t){P((function(r){var n=new Set(r);return t?n.add(e):n.delete(e),n}))}),[]),M=(0,c.useCallback)((function(e){P(e?new Set(j):new Set)}),[j]),k=function(){var e=rI(eI().mark((function e(){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(0!==x.size){e.next=2;break}return e.abrupt("return");case 2:return e.next=4,u({title:i("COM_SPPAGEBUILDER_EDITOR_DELETE"),confirmationMessage:x.size>1?i("COM_SPPAGEBUILDER_EDITOR_BULK_DELETE_WARNING"):i("COM_SPPAGEBUILDER_EDITOR_DELETE_WARNING"),confirmButtonText:i("COM_SPPAGEBUILDER_EDITOR_DELETE"),skipMutation:!0});case 4:if("CONFIRM"!==e.sent.action){e.next=16;break}return e.prev=7,e.next=10,p.mutateAsync({pageId:Number(a),versionIds:nI(x)});case 10:P(new Set),l({type:"success",message:i("COM_SPPAGEBUILDER_EDITOR_VERSION_DELETED_SUCCESS")}),e.next=16;break;case 14:e.prev=14,e.t0=e.catch(7);case 16:case"end":return e.stop()}}),e,null,[[7,14]])})));return function(){return e.apply(this,arguments)}}(),N=function(){var e=rI(eI().mark((function e(t){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,u({title:i("COM_SPPAGEBUILDER_EDITOR_DELETE"),confirmationMessage:i("COM_SPPAGEBUILDER_EDITOR_DELETE_WARNING"),confirmButtonText:i("COM_SPPAGEBUILDER_EDITOR_DELETE"),skipMutation:!0});case 2:"CONFIRM"===e.sent.action&&d.mutate(t.id,{onSuccess:function(){l({type:"success",message:i("COM_SPPAGEBUILDER_EDITOR_VERSION_DELETED_SUCCESS")})}});case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),G=function(){var e=rI(eI().mark((function e(t){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:f.mutate({pageId:Number(a),versionId:t.id},{onSuccess:function(){l({type:"success",message:i("COM_SPPAGEBUILDER_EDITOR_VERSION_RESTORED_SUCCESS")}),null==r||r()}});case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),W=function(e){null==t||t(e)},U=function(){var e=rI(eI().mark((function e(){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,m({component:$w,props:{onSave:function(){var e=rI(eI().mark((function e(t,r){return eI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,y({version_name:t,version_note:r,is_triggered_from_versioning:!0});case 2:g.invalidateQueries({queryKey:["PageVersions",a]}),l({type:"success",message:i("COM_SPPAGEBUILDER_EDITOR_VERSION_ADDED_SUCCESSFULLY")});case 4:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}()}});case 2:e.sent;case 3:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return(0,s.BX)("div",{css:dI.wrapper,children:[(0,s.BX)("div",{css:dI.header,children:[(0,s.tZ)("span",{css:dI.title,children:i("COM_SPPAGEBUILDER_EDITOR_VERSIONS")}),(0,s.tZ)(_.Z,{variant:"text",buttonCss:dI.closeButton,onClick:function(){b(void 0),null==n||n(null),null==r||r()},children:(0,s.tZ)(I.Z,{name:"times",width:14,height:14})})]}),(0,s.BX)("div",{css:dI.searchSection,children:[(0,s.tZ)("div",{css:dI.searchInputWrapper,children:(0,s.tZ)(Kt.Z,{variant:"search",value:O,onChange:w,placeholder:"Search",isClearable:!0})}),(0,s.tZ)(_.Z,{variant:"primary",buttonCss:dI.addButton,onClick:U,children:(0,s.tZ)(I.Z,{name:"plus",width:16,height:16})})]}),j.length>0&&(0,s.BX)("div",{css:dI.bulkBar,children:[(0,s.BX)("div",{css:dI.bulkBarLeft,children:[(0,s.tZ)(re.Z,{checked:j.length>0&&x.size===j.length,isIndeterminate:x.size>0&&x.size<j.length,label:i("COM_SPPAGEBUILDER_EDITOR_VERSIONS_SELECT_ALL"),labelCss:dI.bulkSelectAllLabel,onChange:M,disabled:p.isLoading||d.isLoading}),x.size>0&&(0,s.tZ)("span",{css:dI.selectedCount,children:i("COM_SPPAGEBUILDER_EDITOR_VERSIONS_N_SELECTED",{count:x.size})})]}),(0,s.tZ)(_.Z,{type:"button",variant:"secondary",disabled:0===x.size||p.isLoading||d.isLoading,loading:p.isLoading,onClick:k,buttonCss:dI.bulkDeleteButton(0===x.size||p.isLoading||d.isLoading),icon:(0,s.tZ)(I.Z,{name:"trash",width:16,height:16}),children:i("COM_SPPAGEBUILDER_EDITOR_DELETE")})]}),(0,s.tZ)("div",{css:dI.content,children:D?(0,s.tZ)("div",{css:dI.loading,children:i("COM_SPPAGEBUILDER_EDITOR_LOADING")}):0===Z.length?(0,s.tZ)("div",{css:dI.empty,children:i("COM_SPPAGEBUILDER_EDITOR_NO_VERSIONS")}):(0,s.tZ)("div",{css:dI.listCard,children:(0,s.tZ)("div",{css:dI.list,children:R.map((function(e){return(0,s.tZ)(cI,{version:e,isSelected:x.has(e.id),onSelectionChange:function(t){return B(e.id,t)},selectionDisabled:p.isLoading||d.isLoading,onRestore:G,onDelete:N,onRename:function(){var t=rI(eI().mark((function t(r){return eI().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,h.mutateAsync({versionId:e.id,name:r});case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),onUpdateNote:function(t){v.mutate({versionId:e.id,note:t})},onVersionClick:W,previewVersionId:o,setPreviewVersionId:n,onExitPreview:r},e.id)}))})})})]})};var sI={name:"1bdsr38-bulkDeleteButton",styles:"opacity:0.5;cursor:not-allowed;label:bulkDeleteButton;"},dI={wrapper:(0,i.iv)("display:flex;flex-direction:column;height:100%;background-color:",n.qo.base.white,";border-left:1px solid ",n.qo.stroke.neutral,";margin-top:1px;;label:wrapper;"),header:(0,i.iv)("display:flex;align-items:center;justify-content:space-between;padding:",n.W0[12]," ",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";;label:header;"),title:(0,i.iv)(o.c.heading5("medium"),";;label:title;"),closeButton:(0,i.iv)("padding:",n.W0[4],";;label:closeButton;"),searchSection:(0,i.iv)("display:flex;background-color:",n.qo.background.hover,";padding:",n.W0[16]," ",n.W0[16]," ",n.W0[8]," ",n.W0[16],";gap:",n.W0[12],";;label:searchSection;"),searchInputWrapper:{name:"10my3da-searchInputWrapper",styles:"flex:1;label:searchInputWrapper;"},addButton:(0,i.iv)("width:32px;height:32px;padding:0 ",n.W0[12],";display:flex;align-items:center;justify-content:center;svg{color:",n.qo.base.white,";};label:addButton;"),content:(0,i.iv)("background-color:#f0f4fb;padding:",n.W0[8]," ",n.W0[16]," ",n.W0[16]," ",n.W0[16],";height:100%;overflow-y:auto;;label:content;"),loading:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";text-align:center;padding:",n.W0[24],";;label:loading;"),empty:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";text-align:center;padding:",n.W0[24],";;label:empty;"),listCard:(0,i.iv)("background-color:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[6],";overflow:hidden;;label:listCard;"),bulkBar:(0,i.iv)("display:flex;align-items:center;justify-content:space-between;gap:",n.W0[16],";padding:",n.W0[8]," ",n.W0[16],";background-color:",n.qo.base.surface,";;label:bulkBar;"),bulkBarLeft:(0,i.iv)("display:flex;align-items:center;flex-wrap:wrap;gap:",n.W0[8],";min-width:0;;label:bulkBarLeft;"),bulkSelectAllLabel:(0,i.iv)(o.c.body("regular"),";color:",n.qo.text.default,";;label:bulkSelectAllLabel;"),selectedCount:(0,i.iv)(o.c.body("medium"),";color:",n.qo.action.primary.default,";white-space:nowrap;;label:selectedCount;"),bulkDeleteButton:function(e){return(0,i.iv)("color:",n.qo.action.error.default,";background-color:",n.qo.base.surface,";border:1px solid ",n.qo.stroke.neutral,";transition:all 150ms ease-in-out;flex-shrink:0;",e&&sI," svg{color:",n.qo.action.error.default,";}&:hover:not(:disabled){color:",n.qo.action.error.default,";border-color:",n.qo.stroke.error,";background-color:transparent;svg{color:",n.qo.action.error.default,";}};label:bulkDeleteButton;")},list:{name:"qxfi7j-list",styles:"display:flex;flex-direction:column;label:list;"},rowCheckbox:(0,i.iv)("flex-shrink:0;display:flex;align-items:center;align-self:center;margin-right:",n.W0[12],";align-self:start;margin-top:0.05rem;;label:rowCheckbox;"),versionItem:function(e){var t=e.isActive,r=e.isPreviewed,o=e.isCurrentVersionPreviewed;return(0,i.iv)("display:flex;flex-direction:column;padding:",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";transition:box-shadow 0.2s ease;&:last-of-type{border-bottom:none;}",t&&(0,i.iv)("background-color:",o?n.qo.background.white:n.qo.action.secondary.default,";&:hover{background-color:",n.qo.action.secondary.default,";cursor:pointer;};label:versionItem;")," ",!t&&(0,i.iv)("flex-direction:row;justify-content:space-between;align-items:flex-start;cursor:pointer;background-color:",r?n.qo.background.hover:n.qo.background.white,";color:",r?n.qo.base.white:"inherit",";&:hover{background-color:",n.qo.background.hover,";};label:versionItem;"),";;label:versionItem;")},currentVersionHeader:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[8],";svg{fill:none;};label:currentVersionHeader;"),currentVersionLabel:function(e){var t=e.isCurrentVersionPreviewed;return(0,i.iv)(o.c.body("regular"),";color:",t?n.qo.text.neutral:n.qo.action.primary.default,";;label:currentVersionLabel;")},versionInfo:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";flex:1;;label:versionInfo;"),versionDate:function(e){var t=e.isPreviewed;return(0,i.iv)(o.c.body(),";color:",t?n.qo.text.primary:n.qo.text.default,";;label:versionDate;")},profileInfoWrapper:(0,i.iv)("display:flex;align-items:center;justify-content:flex-start;gap:",n.W0[4],";;label:profileInfoWrapper;"),profileImageFallback:function(e){var t=e.backgroundColor;return(0,i.iv)("width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background-color:",t,";color:",n.qo.base.white,";font-size:9px;font-weight:600;line-height:1;text-transform:uppercase;user-select:none;;label:profileImageFallback;")},profileName:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";;label:profileName;"),noteInput:function(e){var t=e.isActive,r=e.hasNote,a=e.isPreviewed;return(0,i.iv)(o.c.body(),";width:100%;min-height:32px;padding:",n.W0[6]," ",n.W0[8],";padding-left:",n.W0[0],";border:1px solid transparent;",t?"box-shadow: 0px 0px 0px 1px #FFFFFF, 0px 0px 0px 3px #3366FF;":"box-shadow: none;",";border-radius:",n.E0[4],";background-color:transparent;color:",a?r?n.qo.text.default:"rgba(255, 255, 255, 0.7)":r&&!t?n.qo.text.default:n.qo.text.neutral,";cursor:",t?"text":"pointer",";outline:none;transition:all 0.2s ease;font-size:13px;line-height:1.4;",!t&&(0,i.iv)("&:hover{background-color:",n.qo.background.hover,";};label:noteInput;")," &::placeholder{color:",n.qo.text.neutral,";}",!r&&!t&&(0,i.iv)("color:",n.qo.text.neutral,";;label:noteInput;"),";;label:noteInput;")},versionActions:function(e){var t=e.isActive;return(0,i.iv)("display:",t?"none":"flex",";gap:",n.W0[8],";align-self:center;;label:versionActions;")},contextMenuButton:function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).isPreviewed;return(0,i.iv)(V.iZ.resetButton,";display:",e?"none":"flex",";align-items:center;justify-content:center;width:28px;height:28px;border-radius:",n.E0[2],";background-color:transparent;transition:all 0.2s ease;svg{color:",e?n.qo.base.white:n.qo.icon.default,";transition:color 0.2s ease;}&:hover{background-color:",e?"rgba(255, 255, 255, 0.2)":"#d6dffa",";box-shadow:0 1px 3px rgba(0, 0, 0, 0.12);svg{color:",e?n.qo.base.white:"#6b46c1",";}};label:contextMenuButton;")}};const pI=r.p+"images/8d9ef21e7df24b67faf9.webp",fI=r.p+"images/e11f46472e94d88f5420.webp",vI=function(){var e=(0,L.$)();return(0,s.tZ)("div",{css:yI.mainWrap,children:(0,s.BX)("div",{css:[yI.bannerWrapper({orientation:"vertical",removeBorderRadius:!1}),";label:EasystoreEmptyState;"],children:[!!fI&&(0,s.tZ)("img",{css:yI.emptyImage,src:fI,srcSet:"".concat(pI," 2x"),alt:e("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_EASYSTORE_IMAGE_ALT"),draggable:!1}),(0,s.BX)("div",{css:yI.messageWrapper({orientation:"vertical"}),children:[(0,s.tZ)("h4",{css:yI.title({orientation:"vertical"}),children:e("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_EASYSTORE_TITLE")}),(0,s.tZ)("p",{css:[yI.content,";label:EasystoreEmptyState;"],children:e("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_EASYSTORE")}),(0,s.tZ)("div",{css:yI.buttonWrapper,children:(0,s.tZ)("a",{css:yI.downloadNow,href:"https://www.joomshaper.com/easystore",target:"_blank",rel:"noreferrer noopenner",children:e("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_EASYSTORE_DOWNLOAD_NOW")})})]})]})})};var hI={name:"1dk76ft-messageWrapper",styles:"text-align:center;label:messageWrapper;"},bI={name:"ce9pem-messageWrapper",styles:"max-width:364px;label:messageWrapper;"},yI={emptyImage:(0,i.iv)("border-radius:",n.E0[10],";;label:emptyImage;"),errorMessage:(0,i.iv)("display:flex;width:100%;padding:",n.W0[32]," 0;background-color:",n.qo.background.error,";justify-content:center;align-items:center;gap:",n.W0[8],";color:",n.qo.base.error,";border-radius:",n.E0[6],";path{fill:",n.qo.icon.error,";};label:errorMessage;"),mainWrap:(0,i.iv)("background-color:",n.qo.background.white,";display:flex;flex-direction:column;justify-content:center;padding:",n.W0[72]," 0;margin:",n.W0[32],";border-radius:",n.E0[6],";;label:mainWrap;"),bannerWrapper:function(e){var t=e.orientation;return(0,i.iv)("display:grid;place-items:center;justify-content:center;","horizontal"===t&&(0,i.iv)("grid-template-columns:278px auto;gap:",n.W0[56],";justify-content:start;;label:bannerWrapper;")," & img{width:100%;};label:bannerWrapper;")},messageWrapper:function(e){var t=e.orientation;return(0,i.iv)("display:flex;flex-direction:column;max-width:432px;gap:",n.W0[12],";","horizontal"===t&&bI," ","vertical"===t&&hI,";;label:messageWrapper;")},title:function(e){var t=e.orientation;return(0,i.iv)(o.c.heading4("medium"),";","vertical"===t&&(0,i.iv)("margin-top:",n.W0[24],";;label:title;"),";;label:title;")},content:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";;label:content;"),buttonWrapper:(0,i.iv)("margin-top:",n.W0[12],";;label:buttonWrapper;"),downloadNow:(0,i.iv)("text-decoration:none;display:inline-block;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:0;padding:",n.W0[6]," ",n.W0[16],";border-radius:",n.E0[6],";z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;background-color:",n.qo.action.primary.default,";color:",n.qo.base.white,";&:hover{color:",n.qo.base.white,";background-color:",n.qo.action.primary.hover,";}&:active{color:",n.qo.base.white,";background-color:",n.qo.action.primary.focus,";};label:downloadNow;")},mI=r(6914),gI=r(5616),EI=["text","attribs"];function OI(e){return OI="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},OI(e)}function _I(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function wI(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?_I(Object(r),!0).forEach((function(t){II(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):_I(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function II(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==OI(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==OI(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===OI(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function SI(){SI=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==OI(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function CI(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function xI(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||PI(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function PI(e,t){if(e){if("string"==typeof e)return LI(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?LI(e,t):void 0}}function LI(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const AI=function(e){var t,r,n=e.isPopup,o=(0,L.$)(),i=(0,$o.Z)(Oo.F.PageEditor),a=i.id,l=i.type,u=(0,Si.z1)(a),d=(0,Mi.o)((function(e){return e.page})),p=(0,Mi.o)((function(e){return e.setPageContent})),f=(0,kn.s)(),v=f.pastStates,h=f.showWarningAtReload,b=(0,at.v)((function(e){return e.appConfig})),y=(0,mI.$x)(l),m=(0,Si.mp)(),g=(0,_o.s0)(),E=(0,ow.x)((function(e){return e.isLoading})),O=xI((0,c.useState)(!1),2),_=O[0],w=O[1],I=xI((0,c.useState)(void 0),2),S=I[0],C=I[1],x=function(e){var t,r=(0,ve.p)().showToast;return(0,be.a)({enabled:!!e,queryKey:["VersionContent",e],queryFn:(t=Bw(Rw().mark((function t(){var r;return Rw().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e){t.next=2;break}return t.abrupt("return",null);case 2:return t.next=4,Hw(e);case 4:return r=t.sent,t.abrupt("return",r.data);case 6:case"end":return t.stop()}}),t)}))),function(){return t.apply(this,arguments)}),onError:function(e){r({type:"danger",message:e.message})}})}(S),P=(0,c.useRef)(null),T=(0,Bi.j)((function(e){return e.activeAction})),D=(0,c.useRef)(null),Z=(0,c.useRef)(null);t=function(e){if(v.length>0&&h)return e.preventDefault(),o("COM_SPPAGEBUILDER_EDITOR_PREVENT_RELOAD")},r=(0,c.useRef)(t),(0,c.useEffect)((function(){r.current=function(e){var r=t(e);return(0,A.HD)(r)?e.returnValue=r:e.defaultPrevented?e.returnValue="":void 0}}),[t]),(0,c.useEffect)((function(){var e=function(e){return r.current(e)};return window.addEventListener("beforeunload",e),function(){window.removeEventListener("beforeunload",e)}}),[]);var R=(0,rt.O)({defaultValues:{id:Number(a),title:"",language:"",published:1,settings:{},catid:0,access:0,css:"",attribs:{meta_description:"",meta_keywords:"",og_type:"",robots:"global",seo_spacer:"",author:"",schema:(0,gI.T)()},og_title:"",og_description:"",og_image:{src:""}},mode:"onChange"});(0,c.useEffect)((function(){var e;"storefront"===a&&b.is_easystore_installed&&(b.list_product_page_id?g(Oo.F.PageEditor.buildLink({id:String(b.list_product_page_id),type:"storefront"})):(e=SI().mark((function e(){var t;return SI().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,m.mutateAsync({type:"storefront",title:"",collection_id:null,page_type:"storefront"});case 2:if(!(t=e.sent).id){e.next=6;break}return g(Oo.F.PageEditor.buildLink({id:t.id.toString(),type:"storefront"})),e.abrupt("return");case 6:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){CI(i,n,o,a,l,"next",e)}function l(e){CI(i,n,o,a,l,"throw",e)}a(void 0)}))})())}),[a,b.is_easystore_installed]),(0,c.useEffect)((function(){if(!u.isLoading&&(0,A.$K)(u.data)&&!S){var e=u.data,t=(e.text,e.attribs),r=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,EI),n=wI(wI(wI({},{meta_description:"",meta_keywords:"",og_type:"",robots:"",seo_spacer:"",author:"",schema:(0,gI.T)()}),t),{},{robots:(0,A.$K)(t.robots)&&""===t.robots?"global":t.robots,schema:(0,gI.h)(t.schema)});R.reset.call(null,wI(wI({},r),{},{attribs:n}))}}),[R.reset,u.data,u.isLoading,S]),(0,c.useEffect)((function(){"versions"!==T&&null===S&&(D.current&&(p(D.current,!1),D.current=null),Z.current&&(R.reset(Z.current),Z.current=null),P.current=null)}),[T,S,R.reset,p]),(0,c.useEffect)((function(){var e;if(S&&null!==(e=x.data)&&void 0!==e&&e.data&&P.current!==S){var t=x.data.data,r=R.getValues();try{var o,i=JSON.parse(t.attribs||"{}"),a=JSON.parse(t.content||"[]");if(n)o=wI(wI({meta_description:"",meta_keywords:"",robots:"",seo_spacer:"",author:""},r.attribs),i);else{var l={meta_description:"",meta_keywords:"",og_type:"",robots:"",seo_spacer:"",author:"",schema:(0,gI.T)()},c=r.attribs,u=i.schema&&"object"===OI(i.schema)?i.schema:{};o=wI(wI(wI(wI({},l),c),i),{},{schema:(0,gI.h)(wI(wI({},(0,gI.h)(c.schema)),u))})}p(a,!1);var s=wI(wI({},r),{},{css:t.css||"",attribs:o});"og_title"in r&&(s.og_title=t.og_title||"",s.og_description=t.og_description||"",s.og_image=t.og_image?JSON.parse(t.og_image):r.og_image),R.reset(s),P.current=S}catch(e){console.error("Error parsing version content:",e)}}}),[S,x.data,R.reset,p]);var j=Fw(),B=(0,ve.p)().showToast,M=((0,ye.NL)(),(0,Mn.F)((function(e){return e.setSettings}))),k=(0,A.$K)(T)&&"versions"!==T,N="add-elements"===T||"section-library"===T,G=N?"add-elements"===T?"addons":"sections":"addons";return"storefront"===a&&!b.is_easystore_installed||!y.isLoading&&!u.isLoading?(0,s.tZ)(rr.Z,{query:u,disableLoader:!0,children:(0,s.tZ)(ic,{createdBy:R.getValues("created_by"),children:(0,s.tZ)(It.RV,wI(wI({},R),{},{children:(0,s.BX)("div",{css:DI.wrapper,children:[(0,s.tZ)("div",{css:DI.topbar,children:(0,s.tZ)(Tw,{isPopup:n,isNextClicked:_,setIsNextClicked:w,previewVersionId:S,onRestoreVersion:function(e){j.mutate({pageId:Number(a),versionId:e},{onSuccess:function(){B({type:"success",message:o("COM_SPPAGEBUILDER_EDITOR_VERSION_RESTORED_SUCCESS")}),C(null),P.current=null,D.current=d,Z.current=R.getValues()}})}})}),(0,s.BX)("div",{css:DI.layout,children:[(0,A.$K)(S)&&(0,s.tZ)("div",{css:DI.versionPreviewOverlay}),(0,s.tZ)("div",{css:DI.action,children:(0,s.tZ)(ca,{isPopup:n,isNextClicked:_,setIsNextClicked:w})}),(0,s.tZ)(Ma,{sections:d,children:(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:DI.element({isActive:N}),children:(0,s.tZ)(_l,{defaultTab:G})}),(0,s.tZ)("div",{css:DI.element({isActive:"saved-items"===T}),children:(0,s.tZ)(rc,{})}),n?(0,s.tZ)("div",{css:DI.element({isActive:"popup-settings"===T}),children:(0,s.tZ)(Cp,{})}):(0,s.tZ)("div",{css:DI.element({isActive:"settings"===T}),children:(0,s.tZ)(Ys,{})}),(0,s.BX)("div",{css:DI.editorWrapper,children:[(0,s.tZ)("div",{css:DI.editor({isActive:k}),children:"storefront"!==a||b.is_easystore_installed?(0,s.tZ)(_o.j3,{}):(0,s.tZ)(vI,{})}),E&&(0,s.tZ)("div",{css:DI.importLoadingOverlay,children:(0,s.tZ)(Ye.fz,{backgroundStyleOverride:DI.loadingBackground})})]})]})}),(0,s.tZ)("div",{css:DI.settings,children:"versions"===T?(0,s.tZ)(uI,{onVersionClick:function(e){var t;D.current||(D.current=function(e){if(Array.isArray(e))return LI(e)}(t=d)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||PI(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),Z.current=R.getValues()),C(e.id),P.current=null,B({type:"dark",message:o("COM_SPPAGEBUILDER_EDITOR_VIEWING_VERSION",{versionName:e.name})})},onExitPreview:function(){D.current&&(p(D.current,!1),D.current=null),Z.current&&(R.reset(Z.current),Z.current=null),C(null),P.current=null,M(null,{sectionIndex:null,columnIndex:null,addonIndex:null})},setPreviewVersionId:C,previewVersionId:S}):(0,s.tZ)(z_,{})})]}),(0,s.tZ)(Aa,{})]})}))})}):(0,s.tZ)(Ye.fz,{})};var TI={name:"1oh93it-element",styles:"margin-left:-420px;opacity:0;label:element;"},DI={dashboardSidebar:function(e){return(0,i.iv)("position:fixed;top:",Bn.g3,"px;left:0;width:",e?230:0,"px;height:calc(100vh - ",Bn.g3,"px);transition:all 0.3s ease;",!e&&(0,i.iv)("margin-left:-",230,"px;opacity:0;;label:dashboardSidebar;"),";;label:dashboardSidebar;")},wrapper:(0,i.iv)("background-color:",n.qo.base.surface,";;label:wrapper;"),topbar:(0,i.iv)("position:fixed;left:0;top:0;width:100%;height:",Bn.g3,"px;z-index:",n.W5.header,";;label:topbar;"),layout:(0,i.iv)("min-height:calc(100vh - ",Bn.g3,"px);margin-top:",Bn.g3,"px;;label:layout;"),action:(0,i.iv)("position:fixed;top:",Bn.g3,"px;left:0;width:",Bn.iq,"px;height:calc(100vh - ",Bn.g3,"px);background-color:#fff;z-index:",n.W5.positive,";;label:action;"),element:function(e){var t=e.isActive;return(0,i.iv)("position:fixed;top:",Bn.g3,"px;left:",Bn.iq,"px;width:",t?Bn.P8:0,"px;height:calc(100vh - ",Bn.g3,"px);",!t&&TI," transition:all 0.3s ease;;label:element;")},editorWrapper:{name:"14l0gds-editorWrapper",styles:"background-color:inherit;display:flex;justify-content:center;label:editorWrapper;"},editor:function(e){var t=e.isActive;return(0,i.iv)("width:100%;max-width:calc(100% - (",Bn.iq+(t?Bn.P8:0),"px + ",Bn.Zs,"px));background-color:",n.qo.background.neutral,";margin-inline:",Bn.iq+(t?Bn.P8:0),"px ",Bn.Zs,"px;min-height:calc(100vh - ",Bn.g3,"px);transition:all 0.3s ease;;label:editor;")},settings:(0,i.iv)("background-color:",n.qo.base.surface,";box-shadow:inset ",n.AF.topbar,";position:fixed;top:",Bn.g3,"px;right:0;width:",Bn.Zs,"px;height:calc(100vh - ",Bn.g3,"px);z-index:",n.W5.header,";;label:settings;"),versionPreviewOverlay:(0,i.iv)("width:calc(100% - 320px);height:-webkit-fill-available;z-index:24;left:0;position:fixed;top:0;margin-top:",Bn.g3,"px;box-shadow:16px 16px 68px 0px #5654ff40 inset;background:#ffffff03;;label:versionPreviewOverlay;"),importLoadingOverlay:(0,i.iv)("position:absolute;top:0;left:0;right:0;bottom:0;z-index:",n.W5.highest,";;label:importLoadingOverlay;"),loadingBackground:{name:"1noklnq-loadingBackground",styles:"background-color:rgba(40, 45, 79, 0.9);opacity:0.9;backdrop-filter:blur(18px);label:loadingBackground;"}},ZI=r(2899);function RI(e){return RI="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},RI(e)}function jI(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function BI(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?jI(Object(r),!0).forEach((function(t){MI(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):jI(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function MI(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==RI(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==RI(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===RI(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var kI=[{text:"COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_PAGE_SIDEBAR_ROUTE_GOOGLE_FONTS",icon:"googleFont",link:Oo.F.GoogleFonts.template,pathnames:[Oo.F.GoogleFonts.template]},{text:"COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_PAGE_SIDEBAR_ROUTE_INSTALLED_FONTS",icon:"fontBook",link:Oo.F.InstalledFonts.template,pathnames:[Oo.F.InstalledFonts.template]}];var NI={wrapper:(0,i.iv)("display:grid;grid-template-columns:180px 1fr;gap:",n.W0[32],";padding:",n.W0[24]," 0;",n.Uo.smallTablet,"{gap:",n.W0[32],";grid-template-columns:1fr;};label:wrapper;"),outletWrapper:(0,i.iv)("width:100%;",n.Uo.smallTablet,"{max-width:100%;};label:outletWrapper;"),sidebar:(0,i.iv)("display:flex;flex-direction:column;align-self:start;gap:",n.W0[24],";position:relative;",n.Uo.smallTablet,"{flex-direction:row;justify-content:left;gap:",n.W0[16],";z-index:",n.W5.sidebar,";};label:sidebar;"),uploadButton:(0,i.iv)("width:100%;&>span{display:flex;gap:",n.W0[8],";align-items:center;justify-content:center;};label:uploadButton;"),routeItem:function(e){var t=e.isActive;return(0,i.iv)(o.c.heading6(),";text-decoration:none;display:flex;align-items:center;gap:",n.W0[8],";color:",n.qo.text.neutral,";svg{color:",n.qo.icon.default,";}",!t&&(0,i.iv)("svg{:first-of-type{filter:grayscale(1);}}:hover{color:",n.qo.text.hover,";svg{color:",n.qo.icon.hover,";}};label:routeItem;")," ",t&&(0,i.iv)("span{color:",n.qo.text.primary,";}svg{color:",n.qo.icon.primary,";};label:routeItem;")," ",n.Uo.smallTablet,"{justify-content:center;min-width:32px;min-height:32px;span{display:none;}:hover{background-color:",n.qo.background.white,";border-radius:",n.E0.circle,";box-shadow:",n.AF.button,";}};label:routeItem;")}};const GI=function(){var e=(0,L.$)(),t=(0,_o.s0)();return(0,s.BX)("div",{css:WI.wrapper,children:[(0,s.BX)("div",{css:WI.leftActionWrapper,children:[(0,s.tZ)(tw,{}),(0,s.tZ)(_.Z,{variant:"text",buttonCss:WI.brandName,onClick:function(){return t(Oo.F.Home.buildLink())},children:e("COM_SPPAGEBUILDER_EDITOR_BRAND_NAME")})]}),(0,s.tZ)("div",{children:(0,s.BX)("a",{href:"".concat(Lr.Z.APPLICATION_ROOT,"administrator/index.php"),css:WI.backButton,children:[(0,s.tZ)(I.Z,{name:"uTurnLeft"}),(0,s.tZ)("span",{children:e("COM_SPPAGEBUILDER_EDITOR_TOPBAR_BACK_TO_DASHBOARD")})]})})]})};var WI={wrapper:(0,i.iv)("background-color:",n.qo.base.white,";box-shadow:",n.AF.topbar,";display:flex;align-items:center;justify-content:space-between;padding:",n.W0[8]," ",n.W0[16],";width:100%;height:100%;;label:wrapper;"),leftActionWrapper:(0,i.iv)(V.iZ.flexCenter(),";padding:0 ",n.W0[16],";;label:leftActionWrapper;"),brandName:(0,i.iv)("padding-left:0;span{",o.c.body(),";};label:brandName;"),backButton:(0,i.iv)("all:unset;display:inline-flex;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;padding:",n.W0[6]," ",n.W0[16],";border-radius:",n.E0[6],";z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";font-weight:",n.Ue.regular,";line-height:",n.Nv[18],";border:1px solid ",n.qo.action.outline.default,";transition:border-color 0.2s ease;svg{fill:none;}&:hover{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.hover,";path{stroke:",n.qo.icon.primary,";}}&:active{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.focus,";};label:backButton;")};var UI={wrapper:(0,i.iv)("background-color:",n.qo.base.surface,";;label:wrapper;"),topbar:(0,i.iv)("position:fixed;left:0;top:0;width:100%;height:",Bn.g3,"px;z-index:",n.W5.header,";;label:topbar;"),layout:(0,i.iv)("min-height:calc(100vh - ",Bn.g3,"px);margin-top:",Bn.g3,"px;;label:layout;"),main:function(e){return(0,i.iv)("width:calc(100% - ",e?Bn.ZR:0,"px);margin-left:",e?Bn.ZR:0,"px;transition:margin-left 0.3s ease,width 0.3s ease;;label:main;")}};const FI=function(e){var t=e.component;return(0,s.tZ)(c.Suspense,{fallback:(0,s.tZ)(s.HY,{}),children:t})};function HI(e){return HI="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},HI(e)}function qI(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function VI(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?qI(Object(r),!0).forEach((function(t){zI(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qI(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function zI(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==HI(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==HI(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===HI(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var XI=[{text:"COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_SIDEBAR_ROUTE_OPTIONS",icon:"settings",link:Oo.F.Settings.template,pathnames:[Oo.F.Settings.template]},{text:"COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_SIDEBAR_ROUTE_GLOBAL_COLORS",icon:"colorBrush",link:Oo.F.ColorsLibrary.template,pathnames:[Oo.F.ColorsLibrary.template],showProLabel:A.Eu},{text:"COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_SIDEBAR_ROUTE_GLOBAL_TYPOGRAPHY",icon:"globalTypography",link:Oo.F.TypographyLibrary.template,pathnames:[Oo.F.TypographyLibrary.template],showProLabel:A.Eu}];A.Eu||XI.push({text:"COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_SIDEBAR_ROUTE_LICENSE",icon:"key",link:Oo.F.License.template,pathnames:[Oo.F.License.template]});var KI={wrapper:(0,i.iv)("display:grid;grid-template-columns:300px 1fr;gap:",n.W0[32],";padding:",n.W0[24]," 0;",n.Uo.smallTablet,"{gap:",n.W0[32],";grid-template-columns:1fr;};label:wrapper;"),outletWrapper:(0,i.iv)("max-width:634px;width:100%;",n.Uo.smallTablet,"{max-width:100%;};label:outletWrapper;"),sidebar:(0,i.iv)("display:flex;flex-direction:column;align-self:start;gap:",n.W0[24],";position:relative;",n.Uo.smallTablet,"{flex-direction:row;justify-content:left;gap:",n.W0[16],";z-index:",n.W5.sidebar,";};label:sidebar;"),routeItem:function(e){var t=e.isActive,r=e.isDisabled,a=void 0!==r&&r;return(0,i.iv)(o.c.heading6(),";text-decoration:none;display:flex;align-items:center;gap:",n.W0[8],";color:",n.qo.text.neutral,";svg{color:",n.qo.icon.default,";}",!t&&(0,i.iv)(":hover{color:",n.qo.text.hover,";svg{color:",n.qo.icon.hover,";}};label:routeItem;")," ",t&&(0,i.iv)("span{color:",n.qo.text.primary,";}svg{color:",n.qo.icon.primary,";};label:routeItem;")," ",n.Uo.smallTablet,"{justify-content:center;min-width:32px;min-height:32px;span{display:none;}:hover{background-color:",n.qo.background.white,";border-radius:",n.E0.circle,";box-shadow:",n.AF.button,";}}",a&&(0,i.iv)("pointer-events:none;span{color:",n.qo.text.disabled,";}svg{color:",n.qo.icon.disabled,";};label:routeItem;"),";;label:routeItem;")}},$I=r(653);function YI(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var QI=c.createContext({tableColumns:{},updateTableColumns:function(){},schema:[],columnOptions:[]});const JI=function(e){var t,r,n=e.children,o=(0,$o.Z)(Oo.F.DynamicContentSingleCollection).collectionId,i=(0,mo.rX)(Number(o)),a=(0,L.$)(),l=(t=c.useState((0,$I.rm)(Number(o))),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return YI(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?YI(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=l[0],d=l[1],p=(0,c.useMemo)((function(){return i.data?0===Object.keys(u).length?i.data:i.data.filter((function(e){return!!$I.Kr.includes(e.type)||!!u[e.key]})):[]}),[i.data,u]),f=(0,c.useCallback)((function(e){d((function(t){return(0,$I.es)(Number(o),(0,$I.N3)(t,e))}))}),[o]);(0,c.useEffect)((function(){var e;if(o&&i.data){var t=null!==(e=(0,$I.rm)(Number(o)))&&void 0!==e?e:{},r=i.data.reduce((function(e,r){var n;return e[r.key]=null===(n=t[r.key])||void 0===n||n,e}),{});d(r),(0,$I.es)(Number(o),r)}}),[o,i.data]);var v=(0,c.useMemo)((function(){return i.data?i.data.filter((function(e){return!$I.Kr.includes(e.type)})).map((function(e){return{label:e.name,value:e.key}})):[]}),[i.data]);return i.isLoading?(0,s.tZ)(Ye.fz,{}):i.data?(0,s.tZ)(QI.Provider,{value:{schema:p,tableColumns:u,updateTableColumns:f,columnOptions:v},children:n}):(0,s.tZ)("div",{children:a("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")})};function eS(e){return eS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},eS(e)}function tS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function rS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?tS(Object(r),!0).forEach((function(t){nS(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):tS(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function nS(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==eS(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==eS(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===eS(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const oS=function(e){var t=e.field,r=e.fieldState,n=e.label,o=e.options,i=void 0===o?[]:o,a=e.disabled,l=e.wrapperCss,c=e.onSelect,u=e.helpText,d=e.name,p=e.labelCss,f=e.inputCss,v=e.iconWrapperCss;return(0,s.tZ)(ne.Z,{field:t,fieldState:r,label:n,disabled:a,helpText:u,children:function(e){return(0,s.tZ)("div",{css:l,children:i.map((function(r,n){return(0,s.BX)("div",{children:[(0,s.tZ)(td.Z,rS(rS({},e),{},{value:r.value,label:r.label,name:d,disabled:r.disabled||a,checked:t.value===r.value,onChange:function(){t.onChange(r.value),c&&c(r)},iconWrapperCss:v,inputCss:f,labelCss:p,showRadioIcon:!0})),r.legend&&(0,s.tZ)("span",{css:iS.radioLegend,children:r.legend})]},n)}))})}})};var iS={radioLegend:(0,i.iv)("margin-left:",n.W0[28],";",o.c.body(),";color:",n.qo.text.neutral,";;label:radioLegend;")},aS=r(2028),lS=r(6216),cS=r(111),uS=r(5785);const sS=function(e){var t,r,n,o=e.field,i=e.item,a=e.schema,l=e.collectionId,u=(0,L.$)(),d=(0,_o.s0)(),p=(0,mo.Bq)(),f=null!==(t=null==i?void 0:i[o.key])&&void 0!==t?t:"—",v=a.find((function(e){return"alias"===e.type})),h=(0,c.useCallback)((function(e){var t=Oo.F.DynamicContentEditItem.buildLink({collectionId:String(l),itemId:String(i.id)});if(2!==e.button)d(t);else{e.preventDefault(),e.stopPropagation();var r="".concat(window.location.origin,"/administrator/index.php?option=com_sppagebuilder&view=editor&tmpl=component#").concat(t);window.open(r,"_blank")}}),[]),b=[{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0},{label:u("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2}];if($I.CN.includes(o.type))return null;if("title"===o.type)return(0,s.BX)("td",{css:dS.title,title:f,onKeyDown:A.ZT,onMouseDown:h,children:[(0,s.tZ)("span",{children:f}),!!v&&(0,s.tZ)("p",{css:dS.alias,title:null!==(r=null==i?void 0:i[v.key])&&void 0!==r?r:"",children:u("COM_SPPAGEBUILDER_EDITOR_COLLECTION_ITEMS_ALIAS",{alias:null!==(n=null==i?void 0:i[v.key])&&void 0!==n?n:"—"})})]},"".concat(i.id,"-").concat(o.key));if("published"===o.key)return(0,s.tZ)("td",{css:V.iZ.textEllipsis,"data-key":o.key,children:(0,s.tZ)(uS.Z,{value:f,options:b,onChange:function(e){p.mutate({item_ids:[i.id],key:"published",value:e.value})}})},"".concat(i.id,"-").concat(o.key));if("image"===o.type){var y=f,m=f;return f.includes("{")&&f.includes("}")&&(y="/"+JSON.parse(f.slice(1,-1)+"}").src||0,m="/"+JSON.parse(f.slice(1,-1)+"}").alt||0),(0,s.tZ)("td",{title:y,"data-key":o.key,onKeyDown:A.ZT,onClick:h,children:y?(0,s.tZ)("div",{css:dS.image,children:(0,s.tZ)("img",{src:y,alt:m})}):(0,s.tZ)("span",{children:"—"})},"".concat(i.id,"-").concat(o.key))}if("location"===o.type){var g=null!=i&&i[o.key]?JSON.parse(null==i?void 0:i[o.key]):[];g.forEach((function(e){null!=e&&e.title&&(null==e?void 0:e.title.length)>30&&(e.title=(null==e?void 0:e.title.substring(0,30))+"...")}));var E=g.map((function(e){return null==e?void 0:e.title})).join(", ");return(0,s.tZ)("td",{css:V.iZ.textEllipsis,title:E||"—","data-key":o.key,onKeyDown:A.ZT,onClick:h,children:E||"—"},"".concat(i.id,"-").concat(o.key))}if("color"===o.type)return(0,s.tZ)("td",{"data-key":o.key,title:f,onKeyDown:A.ZT,onClick:h,children:(0,s.tZ)("div",{"data-color":f,css:dS.color(f)})},"".concat(i.id,"-").concat(o.key));if("switch"===o.type)return(0,s.tZ)("td",{"data-key":o.key,title:f,onKeyDown:A.ZT,onClick:h,children:(0,s.tZ)("div",{css:dS.switch(Number(f)),children:Number(f)?"Yes":"No"})},"".concat(i.id,"-").concat(o.key));if("multi-reference"===o.type){var O,_=null!==(O=null==i?void 0:i[o.key])&&void 0!==O?O:[];return(0,s.BX)("td",{"data-key":o.key,title:_.join(", "),css:V.iZ.textEllipsis,onKeyDown:A.ZT,onClick:h,children:[_.slice(0,3).join(", "),_.length>3&&(0,s.tZ)("span",{children:"..."})]},"".concat(i.id,"-").concat(o.key))}if("date-time"===o.type||"created"===o.key){var w=null==i?void 0:i[o.key],I=w?(0,Gi.Z)(new Date(w),"d MMM, yyyy h:mm aa"):"—";return(0,s.tZ)("td",{css:V.iZ.textEllipsis,title:I,"data-key":o.key,onKeyDown:A.ZT,onClick:h,children:I},"".concat(i.id,"-").concat(o.key))}return"icon"===o.type?(0,s.tZ)("td",{"data-key":o.key,title:f,css:V.iZ.textEllipsis,onKeyDown:A.ZT,onClick:h,children:(0,s.tZ)("i",{className:f})},"".concat(i.id,"-").concat(o.key)):(0,s.tZ)("td",{css:V.iZ.textEllipsis,title:f,"data-key":o.key,onKeyDown:A.ZT,onClick:h,children:f},"".concat(i.id,"-").concat(o.key))};var dS={color:function(e){return(0,i.iv)("background-color:",e,";border-radius:",n.E0[4],";display:flex;align-items:center;justify-content:center;padding:",n.W0[4]," ",n.W0[8],";width:50px;height:22px;;label:color;")},switch:function(e){return(0,i.iv)("background-color:",e?n.qo.background.success:n.qo.background.neutral,";border-radius:",n.E0[4],";display:flex;align-items:center;justify-content:center;padding:",n.W0[4]," ",n.W0[8],";width:fit-content;",o.c.caption(),";color:",e?n.qo.text.success:n.qo.text.neutral,";;label:switch;")},alias:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";",V.iZ.textEllipsis,";;label:alias;"),title:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";",V.iZ.textEllipsis,";max-width:200px!important;width:100%;display:flex;flex-direction:column;gap:",n.W0[4],";;label:title;"),image:(0,i.iv)("position:relative;width:50px;max-width:100%;height:22px;border-radius:",n.E0[4],";overflow:hidden;pointer-events:none;z-index:",n.W5.negative,";img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;};label:image;")};function pS(e){return pS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},pS(e)}function fS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function vS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?fS(Object(r),!0).forEach((function(t){hS(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):fS(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function hS(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==pS(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==pS(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===pS(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const bS=function(e){var t=e.selectedItems,r=e.index,o=e.item,i=e.data,a=e.schema,l=e.lastSelectedIndex,u=e.setLastSelectedIndex,d=e.setSelectedItems,p=e.collectionId,f=(0,cS.K)(),v=(0,at.v)((function(e){return e.appConfig})),h=(0,mo.Bq)(),b=(0,rt.O)({defaultValues:{id:o.id}}),y=((0,L.$)(),(0,_o.s0)()),m=(0,C.nB)({id:o.id}),g=m.attributes,E=m.listeners,O=m.setNodeRef,_=m.transform,w=m.transition,S=m.isDragging,T={transform:x.ux.Transform.toString(_),transition:w,zIndex:S?n.W5.positive:n.W5.level,backgroundColor:S?n.qo.background.hover:""};(0,c.useEffect)((function(){var e=function(e){"Escape"===e.key&&b.reset({id:o.id})};return window.addEventListener("keydown",e),function(){window.removeEventListener("keydown",e)}}),[]);var D=[{id:"edit",icon:"pencilOnBox",title:"COM_SPPAGEBUILDER_EDITOR_COLLECTION_EDIT"},{id:-2===(null==o?void 0:o.published)?"delete":"trash",icon:"trash",title:-2===(null==o?void 0:o.published)?"COM_SPPAGEBUILDER_EDITOR_FILTER_DELETE":"COM_SPPAGEBUILDER_EDITOR_FILTER_TRASH",variant:"critical",isDisabled:!1}];return(0,s.BX)("tr",{css:mS.bodyTr({isSelected:t.ids.includes(o.id),isShownFrontendButton:v.enable_frontend_editing&&!0}),ref:O,style:T,children:[(0,s.BX)("td",{css:mS.checkboxWrapper,"data-checkbox-cell":!0,children:[(0,s.tZ)("div",vS(vS(vS({css:mS.dragPoint,"data-drag-point":!0},g),E),{},{children:(0,s.tZ)(I.Z,{name:"dragger",height:32,width:32})})),(0,s.tZ)(re.Z,{onChange:function(e){var n=(0,A.R5)({itemId:o.id,isShiftHolding:f,lastSelectedIndex:l,currentIndex:r,isChecked:e,selectedItemIds:t.ids,selectedItemsIndex:t.indexes,totalItemsList:i}),a=n.updatedItemIds,c=n.updatedItemIndexes;d({ids:a,indexes:c}),u(r)},checked:t.ids.includes(o.id)})]}),a.map((function(e){return(0,s.tZ)(sS,{field:e,item:o,schema:a,collectionId:Number(p)},"".concat(o.id,"-").concat(e.key))})),(0,s.tZ)("td",{css:mS.actionColumn({isSelected:t.ids.includes(o.id)}),style:{position:"sticky",right:0},children:(0,s.tZ)(P.Z,{actions:D,triggerButtonContent:(0,s.tZ)(I.Z,{name:"ellipsisX",width:24,height:24,style:mS.triggerIcon}),onSelect:function(e){switch(e){case"edit":y(Oo.F.DynamicContentEditItem.buildLink({collectionId:p,itemId:String(o.id)}));break;case"trash":h.mutate({item_ids:[o.id],key:"published",value:-2});break;case"delete":h.mutate({item_ids:[o.id],key:"delete",value:null})}}})})]})};var yS={name:"1qe2gq2-bodyTr",styles:"[data-frontend-editor-button]{display:flex;};label:bodyTr;"},mS={bodyTr:function(e){var t=e.isSelected,r=e.isShownFrontendButton;return(0,i.iv)("height:80px;border-bottom:1px solid ",n.qo.stroke.neutral,";position:relative;td,th{user-select:none;cursor:pointer;}&:hover{background-color:",n.qo.background.hover,";td{background-color:transparent;}td:last-of-type{background-color:",n.qo.background.hover,";}[data-checkbox-cell]{background-color:",n.qo.background.hover,";}",r&&yS," [data-drag-point]{opacity:1;}}",t&&(0,i.iv)("background-color:",n.qo.background.disabled,";tr>td:last-of-type{background-color:",n.qo.background.disabled,";}[data-checkbox-cell]{background-color:",n.qo.background.disabled,";};label:bodyTr;"),";;label:bodyTr;")},alias:(0,i.iv)(o.c.caption(),";color:",n.qo.text.neutral,";",V.iZ.textEllipsis,";;label:alias;"),title:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";",V.iZ.textEllipsis,";max-width:200px!important;width:100%;display:flex;flex-direction:column;gap:",n.W0[4],";;label:title;"),image:(0,i.iv)("position:relative;width:60px;max-width:100%;height:32px;border-radius:",n.E0[6],";overflow:hidden;pointer-events:none;img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;};label:image;"),widthStyles:function(e){var t=e.width;return(0,i.iv)("width:",t,"px;;label:widthStyles;")},checkboxWrapper:(0,i.iv)("position:sticky;left:0;background-color:",n.qo.background.white,";;label:checkboxWrapper;"),dragPoint:(0,i.iv)("position:absolute;top:0;left:0;height:100%;width:32px;display:flex;align-items:center;opacity:0;cursor:grab;svg{color:",n.qo.icon.default,";};label:dragPoint;"),triggerIcon:(0,i.iv)("color:",n.qo.icon.hints,";;label:triggerIcon;"),actionColumn:function(e){var t=e.isSelected;return(0,i.iv)("text-align:right;background-color:",t?n.qo.background.disabled:n.qo.background.white,";;label:actionColumn;")}};function gS(e){return gS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},gS(e)}function ES(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function OS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ES(Object(r),!0).forEach((function(t){_S(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ES(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function _S(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==gS(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==gS(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===gS(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function wS(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return IS(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?IS(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function IS(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const SS=function(e){var t=e.data,r=e.selectedItems,n=e.setSelectedItems,o=e.lastSelectedIndex,i=e.setLastSelectedIndex,a=e.isLoading,l=e.collectionId,u=e.isEmptyState,d=t.length,p=r.ids.length,f=c.useContext(QI),v=f.schema,h=f.columnOptions,b=f.updateTableColumns,y=f.tableColumns,m=(0,L.$)(),g=(0,rt.O)({defaultValues:{columns:Object.entries(y).filter((function(e){var t=wS(e,2);return t[0],t[1]})).map((function(e){return wS(e,1)[0]}))}}),E=(0,c.useRef)(null),O=wS((0,c.useState)(!1),2),_=(O[0],O[1]);return(0,c.useEffect)((function(){var e=new MutationObserver((function(){E.current&&_(E.current.scrollWidth>E.current.clientWidth)}));return E.current&&e.observe(E.current,{attributes:!0,childList:!0,subtree:!0}),function(){return e.disconnect()}}),[]),(0,c.useEffect)((function(){g.reset.call(null,{columns:Object.entries(y).filter((function(e){var t=wS(e,2);return t[0],t[1]})).map((function(e){return wS(e,1)[0]}))})}),[y,g.reset]),u?(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:Xa,imageAltText:m("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_COLLECTION_ITEM_FOUND"),title:m("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_COLLECTION_ITEM_FOUND"),removeBorderRadius:!0,wrapperCss:CS.wrapperCss}):(0,s.tZ)("div",{css:CS.tableContainer,ref:E,children:(0,s.BX)("table",{css:CS.table,children:[(0,s.tZ)("thead",{children:(0,s.BX)("tr",{css:CS.headRow,children:[(0,s.tZ)("th",{"data-checkbox-header":!0,children:(0,s.tZ)(re.Z,{checked:p>0&&p===d,isIndeterminate:p>0&&p<d,onChange:function(){var e=p===d?[]:(0,A.x9)(t),r=p===d?[]:(0,A.w6)(d);n({ids:e,indexes:r}),i(-1)}})}),v.filter((function(e){return!$I.CN.includes(e.type)})).map((function(e,t){return(0,s.tZ)("th",{css:[V.iZ.textEllipsis,";label:DynamicContentTable;"],title:e.name,children:e.name},t)})),(0,s.tZ)("th",{css:CS.showColumn,style:{position:"sticky",right:0,textAlign:"right"},children:(0,s.tZ)(It.Qr,{control:g.control,name:"columns",render:function(e){return(0,s.tZ)(Rn.Z,OS(OS({},e),{},{options:h,placeholder:"Show",showChips:!1,customInputCss:CS.customInputCss,customWrapperCss:CS.customWrapperCss,portalLeftOffset:150,hideSelectNumbers:!0,onChange:function(e){b(e.map((function(e){return e.value})))},isClearable:!1}))}})})]})}),(0,s.BX)("tbody",{children:[a&&Array(10).fill(0).map((function(e,t){return(0,s.tZ)("tr",{css:CS.skeletonWrapper,children:Array(8).fill(0).map((function(e,t){return(0,s.tZ)("td",{css:CS.widthStyles({width:0===t?70:(0,A.sZ)(100,250)}),children:(0,s.tZ)(Eo.Z,{animation:!0,height:20,width:"".concat(0===t?100:(0,A.sZ)(90,100),"%")})},t)}))},t)})),!a&&t.map((function(e,a){return(0,s.tZ)(bS,{index:a,data:t,schema:v,item:e,lastSelectedIndex:o,setLastSelectedIndex:function(e){return i(e)},selectedItems:r,setSelectedItems:function(e){n(e)},collectionId:l},e.id)}))]})]})})};var CS={tableContainer:(0,i.iv)("display:block;width:100%;overflow:auto;::-webkit-scrollbar{background-color:transparent;width:6px;height:6px;}::-webkit-scrollbar-thumb{background-color:",n.qo.base.secondary,";border-radius:",n.E0[6],";transition:background-color 0.2s ease;}scrollbar-width:1px;scrollbar-color:",n.qo.base.secondary," transparent;;label:tableContainer;"),wrapperCss:{name:"1joma9j-wrapperCss",styles:"&>img{width:90px;};label:wrapperCss;"},table:(0,i.iv)("width:100%;th{height:48px;}th,td{",o.c.body(),";padding:",n.W0[16],";display:table-cell;:first-of-type{padding-left:",n.W0[32],";}}th:not(:last-of-type){max-width:140px;}td:not(:last-of-type){max-width:140px;}th:last-of-type{padding-right:0;}td:last-of-type{padding-right:",n.W0[12],";}& td[data-key='id']{max-width:60px;};label:table;"),headRow:(0,i.iv)(o.c.body(),";color:",n.qo.text.default,";background-color:#e0e8ff;[data-checkbox-header]{position:sticky;left:0;background-color:inherit;};label:headRow;"),paginatorWrapper:(0,i.iv)("margin-top:",n.W0[32],";;label:paginatorWrapper;"),widthStyles:function(e){var t=e.width;return(0,i.iv)("width:",t,"px;;label:widthStyles;")},textCenter:{name:"lfnssf-textCenter",styles:"text-align:center;label:textCenter;"},skeletonWrapper:(0,i.iv)("border-bottom:1px solid ",n.qo.stroke.neutral,";height:80px;;label:skeletonWrapper;"),customInputCss:(0,i.iv)(o.c.body(),";cursor:pointer;border:none;width:100%;background-color:transparent;:focus{outline:none;};label:customInputCss;"),customWrapperCss:{name:"k84oqx-customWrapperCss",styles:"width:80px;justify-self:end;label:customWrapperCss;"},showColumn:{name:"ovxkdv-showColumn",styles:"background-color:inherit;min-width:80px;max-width:80px;& div:has(> input){width:65px;justify-self:end;};label:showColumn;"}};function xS(e){return xS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xS(e)}function PS(){PS=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==xS(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function LS(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function AS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function TS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?AS(Object(r),!0).forEach((function(t){DS(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):AS(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function DS(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==xS(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==xS(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===xS(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ZS(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return RS(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?RS(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function RS(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var jS=[5,10,15,20,25,30,50,100,200,500].map((function(e){return{label:e.toString(),value:e}})),BS={name:"fpfuve-DynamicContentCollectionItems",styles:"width:min(280px, 100%);label:DynamicContentCollectionItems;"};const MS=function(e){var t,r=e.data,n=e.collectionId,o=e.pageInfo,i=e.onPageChange,a=e.onFilterItems,l=e.isLoading,u=e.isCompleted,d=e.setLimitValue,p=e.limitValue,f=ZS((0,c.useState)(null!==(t=null==r?void 0:r.results)&&void 0!==t?t:[]),2),v=f[0],h=f[1],b=ZS((0,c.useState)(),2),y=b[0],m=b[1],g=ZS((0,c.useState)(!1),2),E=g[0],O=g[1],w=(0,mo.et)(),S=(0,pe.l)({isOpen:E,isDropdown:!0}),x=S.triggerRef,P=S.position,A=S.popoverRef,T=(0,er.Q)(),D=(0,L.$)(),Z=ZS((0,c.useState)(-1),2),R=Z[0],j=Z[1],B=ZS((0,c.useState)({ids:[],indexes:[]}),2),M=B[0],k=B[1],N=T.edit_state,G=T.delete,W=(0,rt.O)({defaultValues:{search:o.filter.search||"",status:o.filter.status||"*",created:o.filter.created,modified:o.filter.modified}}),U=o.filter.status,F=(0,fe.N)(W.watch("search",""));(0,c.useEffect)((function(){var e,t,r;a(TS(TS({},F.length>0&&{search:F}),{},{status:String(null!==(e=o.filter.status)&&void 0!==e?e:"*"),created:String(null!==(t=o.filter.created)&&void 0!==t?t:"*"),modified:String(null!==(r=o.filter.modified)&&void 0!==r?r:"*")})),F&&i(1)}),[F,o.filter]);var H=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is})),q=[{label:D("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISH"),value:"published",disabled:!N},{label:D("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISH"),value:"unpublished",disabled:!N},{label:D(-2===Number(U)?"COM_SPPAGEBUILDER_EDITOR_FILTER_DELETE":"COM_SPPAGEBUILDER_EDITOR_FILTER_TRASH"),value:-2===Number(U)?"delete":"trash",disabled:!G||!N}],V=(0,_o.s0)(),z=(0,mo.Bq)();(0,c.useEffect)((function(){h(null==r?void 0:r.results)}),[null==r?void 0:r.results]);var X=M.ids.length>0,K="*"!==o.filter.status||"*"!==o.filter.created||"*"!==o.filter.modified;return(0,s.BX)(s.HY,{children:[(0,s.BX)(Fu.Z,{cardCss:kS.cardStyle,hasWrapperShadow:!0,children:[(0,s.BX)("div",{css:kS.tableHeaderWrapper,children:[(0,s.tZ)("div",{css:kS.searchFieldWrapper,children:(0,s.BX)("div",{css:kS.topPanel,children:[X&&(0,s.BX)("div",{css:kS.bulkActionWrapper,children:[M.ids.length>0&&(0,s.tZ)("span",{"data-selection-message":!0,children:D("COM_SPPAGEBUILDER_EDITOR_N_ITEMS_SELECTED",{count:M.ids.length})}),(0,s.tZ)(rd.Z,{options:q,placeholder:D("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_DROPDOWN_PLACEHOLDER"),wrapperStyle:kS.topPanelLeftSelect,isClearable:!1,disabled:0===M.ids.length||!N,value:q.find((function(e){return e.value===y})),onChange:function(e){m(e.value)}}),(0,s.tZ)(_.Z,{onClick:function(){if(M.ids.length&&y){"delete"===y&&z.mutate({item_ids:M.ids,key:"delete",value:""}),"delete"!==y&&z.mutate({item_ids:M.ids,key:"published",value:{published:1,unpublished:0,trash:-2,delete:void 0}[y]}),m(null),k({ids:[],indexes:[]}),j(-1)}},disabled:!y,children:D("COM_SPPAGEBUILDER_EDITOR_APPLY")})]}),!X&&(0,s.tZ)("div",{css:BS,children:(0,s.tZ)(It.Qr,{control:W.control,name:"search",render:function(e){return(0,s.tZ)(Qe.Z,TS(TS({},e),{},{variant:"search",placeholder:D("COM_SPPAGEBUILDER_EDITOR_SEARCH_INPUT_PLACEHOLDER"),isClearable:!0}))}})})]})}),(0,s.tZ)("div",{css:kS.sortByFieldWrapper(K),children:!M.ids.length&&(0,s.BX)(s.HY,{children:[(0,s.tZ)(rd.Z,{options:jS,isClearable:!1,onChange:function(e){d(e.value),(0,lS.pj)(Bn.dR.DYNAMIC_CONTENT_LIMIT_PER_PAGE_LOCAL_STORAGE_KEY,JSON.stringify(e.value))},value:jS.find((function(e){return e.value===p}))}),(0,s.tZ)(_.Z,{ref:x,style:{position:"relative"},onClick:function(){return O(!0)},icon:(0,s.tZ)(I.Z,{name:K?"funnelModified":"funnel",width:20,height:20}),variant:"secondary",children:D("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_FILTER")}),(0,s.tZ)(_.Z,{variant:"primary",onClick:function(){return V(Oo.F.DynamicContentCreateItem.buildLink({collectionId:String(n)}))},icon:(0,s.tZ)(I.Z,{name:"plus"}),children:D("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_ITEM")})]})})]}),(0,s.tZ)(zn.LB,{sensors:H,collisionDetection:zn.pE,onDragEnd:function(e){var t=e.active,r=e.over;null!=r&&r.id&&t.id!==r.id&&h((function(e){var n=e.findIndex((function(e){return e.id===t.id})),o=e.findIndex((function(e){return e.id===r.id})),i=(0,C.Rp)(e,n,o);return w.mutate({pks:i.map((function(e){return e.id}))}),i}))},modifiers:[go.l],children:(0,s.tZ)(C.Fo,{items:v,strategy:C.qw,children:(0,s.tZ)(SS,{data:v,isLoading:l,isEmptyState:u&&(!r||!r.results.length),selectedItems:M,setSelectedItems:k,lastSelectedIndex:R,setLastSelectedIndex:j,collectionId:n})})})]}),(0,s.tZ)("div",{css:kS.paginatorWrapper,children:(0,s.tZ)(aS.Z,{currentPage:o.page,onPageChange:i,totalItems:(null==r?void 0:r.totalItems)||0,itemsPerPage:Number(o.filter.limit)||20})}),(0,s.tZ)(pe.h,{isOpen:E,onClickOutside:function(){return O(!1)},children:(0,s.BX)("div",{css:[kS.sortingPortalWrapper,{left:P.left,top:P.top,maxWidth:136},";label:DynamicContentCollectionItems;"],ref:A,children:[(0,s.BX)("div",{css:kS.portalItem,children:[(0,s.tZ)("div",{css:kS.portalItemLabel,children:D("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_FILTER")}),(0,s.tZ)(_.Z,{variant:"secondary",buttonCss:kS.resetButton,buttonContentCss:kS.resetButtonContent,onClick:function(){a({status:"*",created:"*",modified:"*"}),W.reset(TS(TS({},W.getValues()),{},{status:"*",created:"*",modified:"*"})),O(!1)},children:D("COM_SPPAGEBUILDER_EDITOR_RESET")})]}),(0,s.tZ)("div",{css:kS.portalItem,children:(0,s.tZ)("div",{css:kS.portalItemLabel,children:D("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_STATUS")})}),(0,s.tZ)(It.Qr,{control:W.control,name:"status",render:function(e){var t=TS(TS({},e),{},{field:TS(TS({},e.field),{},{value:"*"!==e.field.value?Number(e.field.value):"*"})});return(0,s.tZ)(oS,TS(TS({},t),{},{options:[{label:D("COM_SPPAGEBUILDER_EDITOR_ALL"),value:"*"},{label:D("COM_SPPAGEBUILDER_EDITOR_STATUS_PUBLISHED"),value:1},{label:D("COM_SPPAGEBUILDER_EDITOR_STATUS_UNPUBLISHED"),value:0},{label:D("COM_SPPAGEBUILDER_EDITOR_STATUS_TRASHED"),value:-2}],wrapperCss:kS.radioWrapper,inputCss:[kS.radioInput],labelCss:kS.radioLabel}))}}),(0,s.tZ)("div",{css:kS.portalItem,children:(0,s.tZ)("div",{css:kS.portalItemLabel,children:D("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_CREATED")})}),(0,s.tZ)(It.Qr,{control:W.control,name:"created",render:function(e){return(0,s.tZ)(oS,TS(TS({},e),{},{options:[{label:D("COM_SPPAGEBUILDER_EDITOR_ALL"),value:"*"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_24_HOURS"),value:"24h"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_7_DAYS"),value:"7d"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_30_DAYS"),value:"30d"}],wrapperCss:kS.radioWrapper,inputCss:[kS.radioInput],labelCss:kS.radioLabel}))}}),(0,s.tZ)("div",{css:kS.portalItem,children:(0,s.tZ)("div",{css:kS.portalItemLabel,children:D("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_MODIFIED")})}),(0,s.tZ)(It.Qr,{control:W.control,name:"modified",render:function(e){return(0,s.tZ)(oS,TS(TS({},e),{},{options:[{label:D("COM_SPPAGEBUILDER_EDITOR_ALL"),value:"*"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_24_HOURS"),value:"24h"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_7_DAYS"),value:"7d"},{label:D("COM_SPPAGEBUILDER_EDITOR_LAST_30_DAYS"),value:"30d"}],wrapperCss:kS.radioWrapper,inputCss:[kS.radioInput],labelCss:kS.radioLabel}))}}),(0,s.tZ)("div",{css:kS.applyBtnContainer,children:(0,s.tZ)(_.Z,{variant:"primary",buttonCss:kS.applyBtnCss,buttonContentCss:kS.applyBtnContentCss,onClick:W.handleSubmit(function(){var e,t=(e=PS().mark((function e(t){var r,n,o;return PS().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:a({search:t.search,status:String(null!==(r=t.status)&&void 0!==r?r:"*"),created:null!==(n=t.created)&&void 0!==n?n:"*",modified:null!==(o=t.modified)&&void 0!==o?o:"*"}),O(!1);case 2:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){LS(i,n,o,a,l,"next",e)}function l(e){LS(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}()),children:D("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_APPLY_FILTER")})})]})})]})};var kS={topPanel:(0,i.iv)("display:flex;justify-content:start;align-items:center;gap:",n.W0[8],";height:34px;;label:topPanel;"),bulkActionWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[16],";&>[data-selection-message]{",o.c.body("medium"),";color:",n.qo.text.default,";};label:bulkActionWrapper;"),topPanelLeftSelect:{name:"1ex2zjt-topPanelLeftSelect",styles:"max-width:128px;label:topPanelLeftSelect;"},cardStyle:(0,i.iv)("border-radius:",n.E0[5],";box-shadow:",n.AF.base,";max-width:1000px;overflow:hidden;;label:cardStyle;"),tableHeaderWrapper:(0,i.iv)("width:100%;display:flex;justify-content:space-between;align-items:center;gap:",n.W0[8],";padding:",n.W0[24]," ",n.W0[28],";;label:tableHeaderWrapper;"),searchFieldWrapper:{name:"35z6zn-searchFieldWrapper",styles:"width:100%;label:searchFieldWrapper;"},sortByFieldWrapper:function(e){return(0,i.iv)("width:min(580px, 100%);display:flex;justify-content:end;gap:",n.W0[16],";align-items:center;>div:first-of-type{max-width:80px;}",e&&(0,i.iv)("& button:first-of-type{color:",n.qo.text.primary,";svg{color:",n.qo.icon.primary,";}};label:sortByFieldWrapper;"),";;label:sortByFieldWrapper;")},paginatorWrapper:(0,i.iv)("margin-top:",n.W0[32],";;label:paginatorWrapper;"),sortingPortalWrapper:(0,i.iv)("width:100%;height:500px;background-color:",n.qo.background.white,";position:absolute;border-radius:",n.E0[5],";display:flex;flex-direction:column;box-shadow:",n.AF.popover,";padding-top:",n.W0[6],";;label:sortingPortalWrapper;"),portalItem:(0,i.iv)("height:",n.W0[28],";padding:",n.W0[6]," ",n.W0[8],";display:flex;gap:",n.W0[16],";align-items:center;;label:portalItem;"),portalItemLabel:(0,i.iv)(o.c.caption("medium"),";;label:portalItemLabel;"),resetButton:(0,i.iv)("padding:",n.W0[6]," ",n.W0[16],";width:60px;height:",n.W0[24],";align-items:center;display:flex;border-radius:4.5px;outline:",n.qo.stroke.default,";justify-content:center;;label:resetButton;"),resetButtonContent:(0,i.iv)(o.c.caption("regular"),";;label:resetButtonContent;"),radioWrapper:(0,i.iv)("padding:",n.W0[6]," ",n.W0[8],";display:flex;gap:",n.W0[12],";display:flex;flex-direction:column;justify-content:flex-start;margin-left:",n.W0[2],";;label:radioWrapper;"),radioInput:{name:"azpnli-radioInput",styles:"width:100%;display:flex;align-items:center;justify-content:flex-start;label:radioInput;"},radioLabel:(0,i.iv)(o.c.caption("regular"),";;label:radioLabel;"),applyBtnContainer:(0,i.iv)("display:flex;align-items:center;justify-content:center;padding:",n.W0[10]," ",n.W0[8],";border-top:1px solid ",n.qo.stroke.default,";;label:applyBtnContainer;"),applyBtnCss:(0,i.iv)("display:flex;align-items:center;justify-content:center;height:",n.W0[24],";width:100%;;label:applyBtnCss;"),applyBtnContentCss:(0,i.iv)(o.c.caption(),";color:",n.qo.text.white,";;label:applyBtnContentCss;")},NS=r(4370);function GS(e){return GS="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},GS(e)}function WS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function US(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?WS(Object(r),!0).forEach((function(t){FS(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):WS(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function FS(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==GS(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==GS(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===GS(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function HS(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const qS=function(){var e,t,r,n,o,i,a,l,u=(0,L.$)(),d=(0,_o.s0)(),p=(a=(0,c.useState)((function(){return Number((0,lS.fp)(Bn.dR.DYNAMIC_CONTENT_LIMIT_PER_PAGE_LOCAL_STORAGE_KEY))||20})),l=2,function(e){if(Array.isArray(e))return e}(a)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(a,l)||function(e,t){if(e){if("string"==typeof e)return HS(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?HS(e,t):void 0}}(a,l)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),f=p[0],v=p[1],h=(0,$o.Z)(Oo.F.DynamicContentSingleCollection).collectionId,b=_i().collections,y=(0,NS.a)({limit:f,isCollectionPage:!0}),m=y.pageInfo,g=y.onPageChange,E=y.onFilterItems,O=y.itemsPerPage;(0,c.useEffect)((function(){var e,t,r,n;E({search:null!==(e=m.filter.search)&&void 0!==e?e:"",status:null!==(t=m.filter.status)&&void 0!==t?t:"*",created:null!==(r=m.filter.created)&&void 0!==r?r:"*",modified:null!==(n=m.filter.modified)&&void 0!==n?n:"*",sortBy:m.sortProperty})}),[h]);var w=(0,mo.YL)({collection_id:Number(h),search:null!==(e=m.filter.search)&&void 0!==e?e:"",status:null!==(t=m.filter.status)&&void 0!==t?t:"*",created:null!==(r=m.filter.created)&&void 0!==r?r:"*",modified:null!==(n=m.filter.modified)&&void 0!==n?n:"*",current_page:m.page,per_page:O}),S=null!==(o=w.data)&&void 0!==o?o:{results:[],totalItems:0,totalPages:0,isTrashItem:!1,isUnpublishItem:!1};return w.isSuccess&&0===(null===(i=b.find((function(e){return e.id===Number(h)})))||void 0===i?void 0:i.total_items)&&!0!==S.isTrashItem&&!0!==S.isUnpublishItem?(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:Xa,imageAltText:u("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),title:u("COM_SPPAGEBUILDER_EDITOR_NO_COLLECTION_ITEMS_YET"),content:u("COM_SPPAGEBUILDER_EDITOR_CREATE_FIRST_COLLECTION_ITEM"),action:(0,s.tZ)(_.Z,{onClick:function(){return d(Oo.F.DynamicContentCreateItem.buildLink({collectionId:h}))},icon:(0,s.tZ)(I.Z,{name:"plus"}),children:u("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_ITEM")}),wrapperCss:VS.emptyCollectionWrapperCss}):(0,s.tZ)(ni.Z,{children:(0,s.tZ)(JI,{children:(0,s.tZ)(MS,{data:S,collectionId:Number(h),pageInfo:US(US({},m),{},{filter:US(US({},m.filter),{},{limit:String(O)})}),onPageChange:g,onFilterItems:E,isLoading:w.isLoading,isCompleted:w.isSuccess,setLimitValue:function(e){v(e),(0,lS.pj)(Bn.dR.ITEMS_PER_PAGE_COLLECTION_LOCAL_STORAGE_KEY,JSON.stringify(e))},limitValue:f})})})};var VS={emptyCollectionWrapperCss:(0,i.iv)("padding:",n.W0[128]," 0 ",n.W0[128],";&>img{width:90px;};label:emptyCollectionWrapperCss;")};function zS(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function XS(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?zS(Object(r),!0).forEach((function(t){KS(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zS(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function KS(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==$S(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==$S(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===$S(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function $S(e){return $S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},$S(e)}function YS(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const QS=function(e){var t,r,n=e.label,o=e.options,i=e.placeholder,a=e.field,l=Object.keys(o),u=(t=(0,c.useState)(l[0]||""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return YS(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?YS(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=u[0],p=u[1],f=o[d]||[],v=Object.keys(o).map((function(e){var t=o[e],r=null==t?void 0:t[0];return{label:e,value:e,icon:null!=r&&r.flag?"/media/mod_languages/images/".concat(r.flag,".gif"):""}})),h=v.find((function(e){return e.value===d}))||void 0;return(0,s.BX)("div",{css:JS.wrapper,children:[n&&(0,s.tZ)("label",{css:JS.label,children:n}),(0,s.BX)("div",{css:JS.container,children:[(0,s.tZ)("div",{css:JS.dropdownContainer,children:(0,s.tZ)(rd.Z,{options:v,value:h,onChange:function(e){return t=e.value,void p(t);var t},clearOption:function(){},placeholder:"Choose a language",disabled:!v.length,isSearchable:!0,isClearable:!1})}),d&&v.length>0&&(0,s.tZ)("div",{css:JS.selectContainer,children:(0,s.tZ)(rd.Z,{options:f,value:a.value&&"object"===$S(a.value[d])&&a.value[d].length>0?f.find((function(e){return e.value===a.value[d][0]})):void 0,onChange:function(e){a.onChange(XS(XS({},a.value||{}),{},KS({},d,[e.value])))},clearOption:function(){a.onChange(XS(XS({},a.value||{}),{},KS({},d,[])))},label:"Select item in ".concat(d),placeholder:i,isSearchable:!0})})]})]})};var JS={wrapper:(0,i.iv)("width:100%;display:flex;flex-direction:column;gap:",n.W0[2],";;label:wrapper;"),label:(0,i.iv)(o.c.caption(),";margin-bottom:",n.W0[2],";;label:label;"),container:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";;label:container;"),dropdownContainer:(0,i.iv)("width:100%;margin-bottom:",n.W0[2],";;label:dropdownContainer;"),selectContainer:{name:"7d3124-selectContainer",styles:"flex:1;label:selectContainer;"}},eC={wrapper:(0,i.iv)("display:flex;justify-content:center;align-items:start;margin-top:",n.W0[20],";;label:wrapper;")};const tC=function(e){var t=e.collectionId,r=e.name,n=(0,Zt.d)().showModal,o=(0,L.$)();return(0,s.tZ)(_.Z,{css:eC.wrapper,variant:"text",onClick:function(){n({component:_x,props:{title:o("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_MODAL_TITLE",{collection:r}),collectionId:t}})},children:(0,s.tZ)(I.Z,{name:"plus"})})};function rC(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const nC=function(e){var t,r,o=e.closeModal,i=e.currentUrl,a=void 0===i?"":i,l=e.title,u=void 0===l?"":l,d=e.onSubmit,p=(0,L.$)(),f=(t=(0,c.useState)(a)||"",r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return rC(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?rC(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),v=f[0],h=f[1];return(0,s.tZ)(St.Z,{onClose:function(){return o({action:"CLOSE"})},title:u,headerCss:oC.modalHeaderCss,contentCss:oC.modalContentCss(n.qo.background.white),wrapperCss:oC.modalWrapper,hideHeader:!0,children:(0,s.BX)("div",{children:[(0,s.BX)("div",{css:oC.content,children:[(0,s.tZ)("label",{children:p("COM_SPPAGEBUILDER_EDITOR_VIDEO_URL")}),(0,s.BX)("div",{css:oC.inputWrapper,children:[(0,s.tZ)("div",{css:oC.svgGap,children:(0,s.tZ)(I.Z,{name:"link",width:16,height:16})}),(0,s.tZ)(Kt.Z,{inputCss:oC.textInputStyle,value:v,onChange:function(e){return h(e)}})]})]}),(0,s.BX)("div",{css:oC.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return o({action:"CLOSE"})},children:p("COM_SPPAGEBUILDER_EDITOR_CONFIRMATION_CANCEL_BUTTON")}),(0,s.tZ)(_.Z,{variant:"primary",onClick:function(){d(v),o({action:"CLOSE"})},children:p("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_OK")})]})]})})};var oC={modalWrapper:{name:"16222vi-modalWrapper",styles:"max-width:400px;label:modalWrapper;"},footerWrapper:(0,i.iv)("display:flex;align-items:center;padding:",n.W0[16],";gap:",n.W0[8],";justify-content:flex-end;;label:footerWrapper;"),modalHeaderCss:(0,i.iv)("padding:",n.W0[12]," ",n.W0[24],";;label:modalHeaderCss;"),modalContentCss:function(e){return(0,i.iv)("background-color:",e,";;label:modalContentCss;")},content:(0,i.iv)("padding:",n.W0[20]," ",n.W0[24]," 0 ",n.W0[24],";",o.c.body(),";color:",n.qo.text.neutral,";;label:content;"),inputWrapper:(0,i.iv)("display:flex;align-items:center;border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.W0[6],";margin-top:",n.W0[4],";;label:inputWrapper;"),textInputStyle:(0,i.iv)("border:none;border-left:1px solid ",n.qo.stroke.neutral,";border-top-left-radius:0;border-bottom-left-radius:0;;label:textInputStyle;"),svgGap:(0,i.iv)("padding:",n.W0[6]," ",n.W0[8],";;label:svgGap;")};function iC(e){return iC="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},iC(e)}function aC(){aC=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==iC(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function lC(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function cC(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){lC(i,n,o,a,l,"next",e)}function l(e){lC(i,n,o,a,l,"throw",e)}a(void 0)}))}}function uC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return sC(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?sC(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function sC(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function dC(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function pC(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?dC(Object(r),!0).forEach((function(t){fC(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):dC(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function fC(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==iC(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==iC(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===iC(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const vC=function(e){var t,r,n,o,i=e.field,a=e.fieldState,l=e.label,u=e.hidePreview,d=void 0!==u&&u,p=e.hideAltText,f=void 0!==p&&p,v=e.previewStyle,h=e.responsive,b=e.responsiveOrientation,y=e.helpText,m=e.allowedMediaType,g=void 0===m?"image":m,E=e.isLottieFile,O=void 0!==E&&E,w=e.placeholder,S=void 0===w?"":w,C=e.showGenAI,x=void 0===C?1:C,P=e.onChange,T=e.onlySource,D=void 0!==T&&T,Z=e.uploadText,R=e.videoPlayIcon,j=e.onlyClearOption,B=e.previewBorderStyle,M=void 0===B?"solid":B,k=(0,L.$)(),N=(0,Zt.d)().showModal,G=(0,c.useRef)(null),W=(0,c.useRef)(null),U=(0,at.v)((function(e){return e.appConfig})),F=uC((0,c.useState)(!1),2),H=F[0],q=F[1],z=uC((0,c.useState)(!1),2),X=z[0],K=z[1],$=function(e,t){return t&&e&&(0,A.HD)(e)?JSON.parse(e):function(e){return(0,A.Kn)(e)&&("src"in e||"alt"in e)}(e)?pC(pC({},e),{},{src:null!==(r=e.src)&&void 0!==r?r:"",alt:null!==(n=e.alt)&&void 0!==n?n:""}):{src:null!=e?e:"",alt:""};var r,n}(i.value,D);t="string"==typeof $.src?$.src.startsWith("http")?$.src:"".concat(A.Xy.pagebuilderBase).concat($.src):"",r=!$.src,n=$.src||"",o=$.alt||"";var Y=(0,fe.N)(t);(0,c.useEffect)((function(){var e;null===(e=G.current)||void 0===e||e.load()}),[Y]);var Q=function(){N({component:_n,props:{onInsert:function(e){if(O)i.onChange(null==e?void 0:e.path);else{var t,r,n=!d&&(0,A.$K)(null===(t=e.media_attr)||void 0===t?void 0:t.full)?null===(r=e.media_attr)||void 0===r?void 0:r.full:{},o=D?pC({},$):{};"image"!==(null==e?void 0:e.type)?D?(i.onChange(JSON.stringify(pC(pC({},o),{},{src:null==e?void 0:e.path,type:"mp4"}))),null==P||P(JSON.stringify(pC(pC({},o),{},{src:null==e?void 0:e.path,type:"mp4"})))):(i.onChange(pC({src:null==e?void 0:e.path},n)),null==P||P(pC({src:null==e?void 0:e.path},n))):dr("".concat(Lr.Z.APPLICATION_ROOT).concat(null==e?void 0:e.path)).then((function(t){i.onChange(pC({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth},n)),null==P||P(pC({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth},n))})).catch((function(e){console.log({e})}))}},allowedMediaType:g,initialCategory:"video"},closeOnOutsideClick:!0})},J=function(){N({component:_n,props:{onInsert:function(e){if(O)i.onChange(null==e?void 0:e.path);else{var t=D?pC({},$):{};D&&(i.onChange(JSON.stringify(pC(pC({},t),{},{poster:null==e?void 0:e.path}))),null==P||P(JSON.stringify(pC(pC({},t),{},{poster:null==e?void 0:e.path}))))}},initialCategory:"image",allowedMediaType:"image"},closeOnOutsideClick:!0})},ee=function(){D&&i.onChange(JSON.stringify(pC(pC({},$),{},{poster:""})))},te=function(){O&&i.onChange(""),D?i.onChange(JSON.stringify({src:"",poster:"",type:null})):i.onChange({src:"",width:"",height:""})};return(0,s.tZ)(ne.Z,{label:l,field:i,fieldState:a,responsive:h,responsiveOrientation:b,helpText:y,children:function(){return(0,s.BX)("div",{css:hC.wrapper,children:[!A.Eu&&U.enable_ai&&(0,Rt.sw)(x)&&(0,s.BX)(s.HY,{children:[("image"===g||"*"===g)&&(0,s.tZ)("div",{css:V.iZ.generateWithAiButtonWrapper,children:(0,s.tZ)(_.Z,{ref:W,onClick:function(){return q(!0)},icon:(0,s.tZ)(I.Z,{name:"wand",height:18,width:18}),css:V.iZ.generateWithAiButton(),children:k("COM_SPPAGEBUILDER_EDITOR_AI_GENERATE_WITH_AI")})}),("image"===g||"*"===g)&&(0,s.tZ)(Yu,{imageFullPath:t,imageUri:$.src,isOpen:H,onClose:function(){q(!1)},onChange:i.onChange,triggerRef:W})]}),!d&&(0,s.tZ)("div",{css:[hC.previewWrapper(M),v,";label:DynamicContentVideoField;"],children:r?(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"upload",height:16,width:16}),buttonContentCss:hC.buttonContentPrimary,onClick:Q,children:Z||k("COM_SPPAGEBUILDER_EDITOR_MEDIA_UPLOAD")}):(0,s.BX)(s.HY,{children:["image"===g&&(0,s.tZ)("img",{src:Y,alt:Y,css:hC.imagePreview}),"video"===g&&(null!=$&&$.poster?(0,s.tZ)("img",{src:(e=$.poster,e&&"string"==typeof e?e.startsWith("http")?e:"".concat(A.Xy.pagebuilderBase).concat(e):""),alt:$.poster,css:hC.imagePreview}):(0,s.BX)("div",{css:hC.videoWrapper,children:[(0,s.tZ)("video",{muted:!0,ref:G,children:(0,s.tZ)("source",{src:Y,type:"video/mp4"})}),(0,s.tZ)(I.Z,{name:R||"playCircle",height:32,width:32})]})),(0,s.BX)("div",{css:hC.hoverPreview,"data-hover-buttons-wrapper":!0,children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"recycle",height:16,width:16}),buttonContentCss:hC.buttonContentPrimary,onClick:Q,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_REPLACE_MEDIA")}),null!=$&&$.poster?(0,s.tZ)(_.Z,{variant:"secondary",buttonContentCss:hC.buttonContentSecondary,onClick:ee,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_VIDEO_REMOVE_POSTER")}):(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"plus",height:16,width:16}),variant:"secondary",buttonContentCss:hC.buttonContentSecondary,onClick:J,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_VIDEO_ADD_POSTER")})]})]})}),(0,s.BX)("div",{css:hC.inputWrapper,children:[(0,s.tZ)(Kt.Z,{value:n,onChange:function(){var e=cC(aC().mark((function e(t){var r,n,o,a;return aC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!O){e.next=3;break}return i.onChange($),e.abrupt("return");case 3:if(D?i.onChange(JSON.stringify(pC(pC({},$),{},{src:t}))):i.onChange(pC(pC({},$),{},{src:t})),r=t.startsWith("http")?t:"".concat(A.Xy.pagebuilderBase).concat(t),(0,A.K2)(r,"image")){e.next=7;break}return e.abrupt("return");case 7:return K(!0),e.prev=8,e.next=11,dr(r);case 11:n=e.sent,o=n.naturalHeight,a=n.naturalWidth,i.onChange(pC(pC({},$),{},{src:t,height:o,width:a}));case 15:return e.prev=15,K(!1),e.finish(15);case 18:case"end":return e.stop()}}),e,null,[[8,,15,18]])})));return function(t){return e.apply(this,arguments)}}(),placeholder:S||"",inputCss:hC.inputCss}),r&&!j?(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"upload",height:16,width:16}),buttonContentCss:hC.buttonContent,onClick:Q,loading:X,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_UPLOAD")}):(0,s.tZ)(_.Z,{variant:"secondary",icon:(0,s.tZ)(I.Z,{name:"cross",height:16,width:16}),buttonContentCss:hC.buttonContent,onClick:te,loading:X,children:k("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]}),!f&&(0,s.tZ)(Kt.Z,{value:o,helperText:"COM_SPPAGEBUILDER_EDITOR_ALT_TEXT_DESC",label:"COM_SPPAGEBUILDER_EDITOR_ALT_TEXT",placeholder:k("COM_SPPAGEBUILDER_EDITOR_ALT_TEXT_PLACEHOLDER"),onChange:function(){var e=cC(aC().mark((function e(t){return aC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:i.onChange(pC(pC({},$),{},{alt:t}));case 1:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})]});var e}})};var hC={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:wrapper;"),previewWrapper:function(e){return(0,i.iv)("display:flex;justify-content:center;align-items:center;min-width:200px;width:100%;height:160px;position:relative;overflow:hidden;background-color:",n.qo.base.surface,";border:1px ",e," ",n.qo.stroke.neutral,";border-radius:",n.E0[8],";:hover{[data-hover-buttons-wrapper]{display:flex;opacity:1;}};label:previewWrapper;")},buttonContentPrimary:(0,i.iv)("svg{color:",n.qo.icon.white,";};label:buttonContentPrimary;"),buttonContentSecondary:(0,i.iv)("svg{color:",n.qo.icon.default,";};label:buttonContentSecondary;"),imagePreview:{name:"asd3wq-imagePreview",styles:"height:100%;width:100%;object-fit:contain;label:imagePreview;"},hoverPreview:(0,i.iv)("display:none;flex-direction:column;justify-content:center;align-items:center;gap:",n.W0[8],";opacity:0;position:absolute;inset:0;background-color:",n.qo.alternate.backdrop,";border-radius:",n.E0[8],";button{height:32px;:last-of-type{background-color:",n.qo.base.white,";}};label:hoverPreview;"),inputWrapper:(0,i.iv)("display:flex;align-items:end;gap:",n.W0[12],";;label:inputWrapper;"),inputCss:(0,i.iv)("padding:0 ",n.W0[12],";;label:inputCss;"),buttonContent:(0,i.iv)(":hover{svg{color:",n.qo.icon.primary,";}}svg{color:",n.qo.icon.default,";};label:buttonContent;"),videoWrapper:(0,i.iv)("position:relative;width:100%;height:100%;>video{width:100%;height:100%;}>svg{position:absolute;left:48%;top:40%;color:",n.qo.icon.white,";};label:videoWrapper;")};function bC(e){return bC="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},bC(e)}function yC(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function mC(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?yC(Object(r),!0).forEach((function(t){gC(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):yC(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function gC(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==bC(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==bC(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===bC(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function EC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return OC(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?OC(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function OC(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const _C=function(e){var t,r,n,o,i=e.field,a=e.fieldState,l=e.label,u=e.hidePreview,d=void 0!==u&&u,p=e.hideAltText,f=void 0!==p&&p,v=e.previewStyle,h=e.responsive,b=e.responsiveOrientation,y=e.helpText,m=e.allowedMediaType,g=void 0===m?"image":m,E=e.isLottieFile,O=void 0!==E&&E,w=e.placeholder,S=void 0===w?"":w,C=e.showGenAI,x=void 0===C?1:C,P=e.onChange,T=e.onlySource,D=void 0!==T&&T,Z=EC((0,c.useState)(void 0),2),R=Z[0],j=Z[1],B=EC((0,c.useState)(i.value),2),M=B[0],k=B[1],N=EC((0,c.useState)(null),2),G=N[0],W=N[1],U=EC((0,c.useState)(null),2),F=U[0],H=U[1],q=(0,L.$)(),V=(0,Zt.d)().showModal,z=function(){var e=D&&M?mC({},JSON.parse(M)):{};V({component:nC,props:{currentUrl:F,onSubmit:function(t){D&&(i.onChange(JSON.stringify(mC(mC({},e),{},{src:t,type:"youtube"}))),null==P||P(JSON.stringify(mC(mC({},e),{},{src:t,type:"youtube"}))))}}})},X=EC((0,c.useState)(""),2),K=X[0],$=X[1];return(0,c.useEffect)((function(){F&&$(function(e){if(!function(e,t){return!!t&&["youtu.be","www.youtube.com","youtube.com","vimeo.com","www.vimeo.com","player.vimeo.com"].some((function(e){return t.includes(e)}))}(0,e))return"";try{var t=new URL(e),r="";switch(t.hostname){case"youtu.be":var n=t.pathname.substring(1);r="//www.youtube.com/embed/".concat(n,"?iv_load_policy=3&rel=0");break;case"www.youtube.com":case"youtube.com":var o=new URLSearchParams(t.search),i=o.get("v")||"";"/playlist"===t.pathname?(i=o.get("list")||"",r="//www.youtube.com/embed/?listType=playlist&list=".concat(i)):r="//www.youtube.com/embed/".concat(i,"?iv_load_policy=3&rel=0");break;case"vimeo.com":case"www.vimeo.com":case"player.vimeo.com":var a=e;if("player.vimeo.com"!==t.hostname){var l=t.pathname.substring(1);a="//player.vimeo.com/video/".concat(l)}r=a}return r}catch(t){return console.error("Invalid video URL:",e),""}}(F))}),[F]),(0,c.useEffect)((function(){var e,t;if((0,A.$K)(i.value))if(j((null===(e=JSON.parse(i.value))||void 0===e?void 0:e.type)||null),k(i.value),"mp4"===R)W(null===(t=JSON.parse(i.value))||void 0===t?void 0:t.src);else if("youtube"===R){var r;H(null===(r=JSON.parse(i.value))||void 0===r?void 0:r.src)}null===i.value&&j(null)}),[i.value,R]),(0,s.BX)("div",{css:wC.container,children:[(0,s.tZ)("label",{css:wC.labelStyle,children:l}),void 0!==R&&(0,s.BX)("div",{css:wC.bodyContainer,children:[(!(0,A.$K)(F)||""===F)&&(!(0,A.$K)(G)||""===G)&&(0,s.BX)("div",{css:wC.previewWrapper("dashed"),children:[(0,s.BX)("div",{children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"upload",height:16,width:16}),buttonContentCss:wC.buttonContentPrimary,onClick:function(){V({component:_n,props:{onInsert:function(e){if(O)i.onChange(null==e?void 0:e.path);else{var t,r,n=!d&&(0,A.$K)(null===(t=e.media_attr)||void 0===t?void 0:t.full)?null===(r=e.media_attr)||void 0===r?void 0:r.full:{},o=D&&M?mC({},JSON.parse(M)):{};"image"!==(null==e?void 0:e.type)?D?(i.onChange(JSON.stringify(mC(mC({},o),{},{src:null==e?void 0:e.path,type:"mp4"}))),null==P||P(JSON.stringify(mC(mC({},o),{},{src:null==e?void 0:e.path,type:"mp4"})))):(i.onChange(mC({src:null==e?void 0:e.path},n)),null==P||P(mC({src:null==e?void 0:e.path},n))):dr("".concat(Lr.Z.APPLICATION_ROOT).concat(null==e?void 0:e.path)).then((function(t){i.onChange(mC({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth},n)),null==P||P(mC({src:null==e?void 0:e.path,height:null==t?void 0:t.naturalHeight,width:null==t?void 0:t.naturalWidth},n))})).catch((function(e){console.log({e})}))}},allowedMediaType:g,initialCategory:"video"},closeOnOutsideClick:!0})},children:q("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_VIDEO_UPLOAD_MESSAGE")}),(0,s.tZ)(_.Z,{onClick:z,variant:"text",buttonCss:wC.buttonSpacingStyle,buttonContentCss:wC.buttonContentText,children:q("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_VIDEO_ADD_FROM_URL")})]}),(0,s.tZ)("div",{children:(0,s.tZ)("span",{children:q("COM_SPPAGEBUILDER_EDITOR_SUPPORTED_VIDEO_TYPES")})})]}),"youtube"===R&&(0,A.$K)(F)&&""!==F&&(0,s.tZ)("div",{css:[wC.previewWrapper("dashed"),v,";label:DynamicContentVideoFieldWrapper;"],children:(0,s.BX)(s.HY,{children:[M&&null!==(t=JSON.parse(M))&&void 0!==t&&t.poster?(0,s.tZ)("img",{src:(o=null===(r=JSON.parse(M))||void 0===r?void 0:r.poster,o&&"string"==typeof o?o.startsWith("http")?o:"".concat(A.Xy.pagebuilderBase).concat(o):""),alt:null===(n=JSON.parse(M))||void 0===n?void 0:n.poster,css:wC.imagePreview}):(0,s.tZ)("div",{css:wC.embedWrapperContainer,children:(0,s.tZ)("div",{role:"button",css:wC.embedWrapper,children:(0,s.tZ)("iframe",{css:wC.embedItem,src:K||"",allow:"accelerometer"})})}),(0,s.BX)("div",{css:wC.hoverPreview,"data-hover-buttons-wrapper":!0,children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"recycle",height:16,width:16}),buttonContentCss:wC.buttonContentPrimary,onClick:z,children:q("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_REPLACE_MEDIA")}),(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){D&&i.onChange(JSON.stringify({src:"",poster:"",type:null}))},children:q("COM_SPPAGEBUILDER_EDITOR_MEDIA_CLEAR")})]})]})}),((0,A.$K)(F)&&""!==F||(0,A.$K)(G)&&""!==G)&&(0,s.tZ)(vC,{field:i,fieldState:a,hidePreview:"mp4"!==R,hideAltText:f,previewStyle:v,responsive:h,responsiveOrientation:b,helpText:y,allowedMediaType:g,isLottieFile:O,placeholder:S,showGenAI:x,onChange:function(e){var t;if("mp4"===R)W(null===(t=JSON.parse(i.value))||void 0===t?void 0:t.src);else if("youtube"===R){var r;H(null===(r=JSON.parse(i.value))||void 0===r?void 0:r.src)}P&&P(e)},onlySource:D,uploadText:q("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_VIDEO_UPLOAD_MESSAGE"),videoPlayIcon:"playCirclePro",onlyClearOption:!0,previewBorderStyle:"dashed"})]})]})};var wC={container:(0,i.iv)("display:flex;flex-direction:column;position:relative;background:inherit;gap:",n.W0[4],";;label:container;"),bodyContainer:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";padding:",n.W0[12],";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.W0[6],";;label:bodyContainer;"),labelStyle:(0,i.iv)("color:",n.qo.text.default,";;label:labelStyle;"),embedWrapperContainer:(0,i.iv)("display:flex;justify-content:center;background-color:",n.qo.base.surface,";border-radius:",n.E0[8],";;label:embedWrapperContainer;"),embedWrapper:{name:"1bn3e03-embedWrapper",styles:"pointer-events:none;label:embedWrapper;"},embedItem:{name:"llzutj-embedItem",styles:"position:relative;top:0;left:0;bottom:0;height:100%;border:0;label:embedItem;"},previewWrapper:function(e){return(0,i.iv)("display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:200px;width:100%;height:160px;position:relative;overflow:hidden;gap:",n.W0[4],";background-color:",n.qo.base.surface,";border:1px ",e," ",n.qo.stroke.neutral,";border-radius:",n.E0[8],";:hover{[data-hover-buttons-wrapper]{display:flex;opacity:1;}};label:previewWrapper;")},buttonContentPrimary:(0,i.iv)("padding:",n.W0[0]," ",n.W0[8],";svg{color:",n.qo.icon.white,";};label:buttonContentPrimary;"),buttonContentText:(0,i.iv)("border:1px solid ",n.qo.action.outline.default,";padding:",n.W0[6]," ",n.W0[24],";border-radius:",n.W0[6],";;label:buttonContentText;"),buttonSpacingStyle:(0,i.iv)("padding:",n.W0[6]," ",n.W0[12],";;label:buttonSpacingStyle;"),hoverPreview:(0,i.iv)("display:none;flex-direction:column;justify-content:center;align-items:center;gap:",n.W0[8],";opacity:0;position:absolute;inset:0;background-color:",n.qo.alternate.backdrop,";border-radius:",n.E0[8],";button{height:32px;:last-of-type{background-color:",n.qo.base.white,";}};label:hoverPreview;"),imagePreview:{name:"asd3wq-imagePreview",styles:"height:100%;width:100%;object-fit:contain;label:imagePreview;"}};function IC(e){return IC="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},IC(e)}function SC(){SC=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==IC(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function CC(e){return function(e){if(Array.isArray(e))return RC(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||ZC(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xC(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function PC(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){xC(i,n,o,a,l,"next",e)}function l(e){xC(i,n,o,a,l,"throw",e)}a(void 0)}))}}function LC(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function AC(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?LC(Object(r),!0).forEach((function(t){TC(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):LC(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function TC(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==IC(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==IC(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===IC(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function DC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||ZC(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ZC(e,t){if(e){if("string"==typeof e)return RC(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?RC(e,t):void 0}}function RC(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var jC=function(){return(0,s.tZ)("span",{css:UC.spinner,children:(0,s.tZ)(Ye.ZP,{})})},BC=(0,c.memo)((function(e){var t=e.id,r=e.src,o=e.isFeatured,a=e.alt,l=e.gridSize,u=e.gapSize,d=e.initialSelected,p=e.onClear,f=e.onSelectChange,v=e.onUpdateAlt,h=(0,L.$)(),b=(0,C.nB)({id:t}),y=b.attributes,m=b.listeners,g=b.setNodeRef,E=b.transform,O=b.transition,w=DC((0,c.useState)(!1),2),S=w[0],P=w[1],A=DC((0,c.useState)(a||""),2),T=A[0],D=A[1],Z=DC((0,c.useState)(!1),2),R=Z[0],j=Z[1],B=(0,c.useRef)(null),M=(0,c.useRef)(d),k=(0,pe.l)({isOpen:S,arrow:"auto"}),N=k.triggerRef,G=k.position,W=k.popoverRef;(0,c.useEffect)((function(){var e;null!==(e=B.current)&&void 0!==e&&e.complete&&j(!1)}),[B.current]);var U=o?2*l+u:l,F=(0,i.iv)("width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid ",n.qo.stroke.neutral,";;label:imageStyle;");return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",AC(AC(AC({ref:g,css:function(e){return(0,i.iv)("transform:",x.ux.Transform.toString(E),";transition:",O,";transform-origin:0 0;position:relative;cursor:grab;width:",U,"px;height:",U,"px;grid-column:",e?"span 2":"span 1",";grid-row:",e?"span 2":"span 1",";display:flex;justify-content:center;align-items:center;box-sizing:border-box;overflow:hidden;:hover [data-hover-buttons-wrapper],",M.current&&"[data-hover-buttons-wrapper]","{visibility:visible;display:flex;opacity:1;};label:containerStyle;")}(o)},y),m),{},{children:[R&&(0,s.tZ)(jC,{}),(0,s.tZ)("img",{src:r,alt:T,css:[F,R&&{display:"none"},";label:SortableImage;"],onLoad:function(){return j(!1)},onError:function(){return j(!1)},ref:B}),(0,s.BX)("div",{css:UC.hoverPreview,"data-hover-buttons-wrapper":!0,children:[(0,s.tZ)("button",{type:"button",onClick:function(){return p(Number(t))},children:(0,s.tZ)(I.Z,{name:"cross",width:16,height:16})}),(0,s.tZ)(re.Z,{onChange:function(e){f(t,e),M.current=e},checked:M.current,labelCss:UC.checkboxLabel}),(0,s.tZ)(_.Z,{variant:"primary",buttonCss:UC.altBtn,buttonContentCss:UC.altBtnContent,ref:N,onClick:function(){return P(!0)},children:h(a?"COM_SPPAGEBUILDER_EDITOR_GALLERY_EDIT_ALT":"COM_SPPAGEBUILDER_EDITOR_GALLERY_ADD_ALT")})]}),a&&(0,s.BX)("span",{css:UC.altCheck,children:[(0,s.tZ)(I.Z,{name:"check",width:12,height:12}),(0,s.tZ)("span",{children:"ALT"})]})]})),(0,s.tZ)(pe.h,{isOpen:S,onClickOutside:function(){return P(!1)},disableDrag:!0,children:(0,s.BX)("div",{css:[UC.portalWrapper,{left:G.left,top:G.top},";label:SortableImage;"],ref:W,children:["middle"!==G.arrowPlacement&&(0,s.tZ)(I.Z,{name:"portalPopupArrow",width:20,height:13,style:UC.popoverArrow(G.arrowPlacement)}),(0,s.BX)(Fu.Z,{header:{title:h("COM_SPPAGEBUILDER_EDITOR_GALLERY_ALT_MODAL"),actionTray:(0,s.tZ)(_.Z,{variant:"text",onClick:function(){return P(!1)},buttonCss:UC.crossButton,children:(0,s.tZ)(I.Z,{name:"cross",height:24,width:24})})},cardCss:UC.cardStyle,cardHeaderCss:UC.cardHeader,hideArrow:!0,children:[(0,s.BX)("div",{css:UC.cardContent,children:[(0,s.tZ)("label",{css:UC.altLabel,children:h("COM_SPPAGEBUILDER_EDITOR_GALLERY_ALT_MODAL")}),(0,s.tZ)("input",{type:"text",css:UC.altInput,placeholder:h("COM_SPPAGEBUILDER_EDITOR_GALLERY_ALT_PLACEHOLDER"),value:T,onChange:function(e){return D(e.target.value)}}),(0,s.tZ)("span",{css:UC.altDesc,children:h("COM_SPPAGEBUILDER_EDITOR_GALLERY_ALT_DESC")})]}),(0,s.BX)("div",{css:UC.footer,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){D(a||""),P(!1)},children:h("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{onClick:function(){v(t,T),P(!1)},children:h("COM_SPPAGEBUILDER_EDITOR_SAVE")})]})]})]})})]})}),(function(e,t){return e.id===t.id&&e.src===t.src&&e.isFeatured===t.isFeatured&&e.alt===t.alt}));const MC=function(e){var t,r=e.field,n=e.fieldState,i=e.label,a=e.responsive,l=e.responsiveOrientation,u=e.helpText,d=e.wrapperHeight,p=void 0===d?200:d,f=e.allowedFileExtensions,v=void 0===f?[]:f,h=e.caption,b=void 0!==h&&h,y=e.customButtonCss,m=e.customButtonContentCss,g=e.required,E=void 0!==g&&g,O=DC((0,c.useState)(!1),2),_=O[0],w=O[1],S=DC((0,c.useState)([]),2),x=S[0],P=S[1],T=DC((0,c.useState)(null),2),D=T[0],Z=T[1],R=DC((0,c.useState)(null!==(t=r.value)&&void 0!==t?t:[]),2),j=R[0],B=R[1],M=j.find((function(e){return e.id===D})),k=(0,c.useRef)(!1),N=(0,zn.Dy)((0,zn.VT)(zn.we,{activationConstraint:{distance:8}})),G=ht(),W=(0,L.$)(),U=(0,ve.p)().showToast,F=(0,Zt.d)().showModal,H=(0,at.v)((function(e){return e.appConfig})).media_upload_max_size,q=(0,c.useRef)(null);(0,c.useEffect)((function(){var e=q.current,t=function(e){e.stopPropagation(),_||w(!0)},r=function(e){e.stopPropagation(),w(!1)};return null==e||e.addEventListener("dragenter",t),null==e||e.addEventListener("dragleave",r),function(){null==e||e.removeEventListener("dragenter",t),null==e||e.removeEventListener("dragleave",r)}}),[]),(0,c.useEffect)((function(){r.value&&!k.current&&(B(r.value),k.current=!0)}),[r.value]);var V=function(e){if(null==v||!v.length)return e;var t=e&&e.split(".").pop();return t&&v.includes(t)?e:(U({type:"danger",message:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_EXTENSION_NOT_ALLOWED")}),"")},z=function(){var e=PC(SC().mark((function e(){return SC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:F({component:_n,props:{onBulkInsert:function(e){var t=e.filter((function(e){return!j.find((function(t){return t.id===e.id}))})).map((function(e){return{id:e.id,src:e.path}}));B((function(e){return[].concat(CC(e),CC(t))}))},initialCategory:"image",allowedMediaType:"image",bulkImport:!0},closeOnOutsideClick:!0});case 1:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),X=function(e){var t;if(!e)return!1;var r=null!==(t=e.split(".").pop())&&void 0!==t?t:"";return["jpg","jpeg","png","gif","svg"].includes(r)},K=function(e){Z(e.active.id)},$=function(e){var t=e.active,r=e.over;r?(t.id!==r.id&&B((function(e){var n=e.findIndex((function(e){return e.id===t.id})),o=e.findIndex((function(e){return e.id===r.id}));return(0,C.Rp)(e,n,o)})),Z(null)):Z(null)},Y=(0,c.useCallback)((function(e,t){B((function(r){return r.map((function(r){return r.id===e?AC(AC({},r),{},{alt:t}):r}))}))}),[]),Q=(0,c.useCallback)((function(e,t){P((function(r){return t?[].concat(CC(r),[e]):r.filter((function(t){return t!==e}))}))}),[]),J=(0,c.useCallback)((function(e){B((function(t){return t.filter((function(t){return t.id!==e}))})),P((function(t){return t.filter((function(t){return t!==e}))}))}),[]);(0,c.useEffect)((function(){j&&r.onChange(j)}),[j]);var ee=function(e){return"string"==typeof e?e.startsWith("http://")||e.startsWith("https://")?e:"".concat(A.Xy.pagebuilderBase).concat(e):""},te=(0,c.useMemo)((function(){return null==j?void 0:j.map((function(e,t){return(0,s.tZ)(BC,{id:null==e?void 0:e.id,src:ee(null==e?void 0:e.src),isFeatured:0===t,alt:(null==e?void 0:e.alt)||"",gridSize:128,gapSize:8,initialSelected:x.includes(null==e?void 0:e.id),onClear:J,onSelectChange:Q,onUpdateAlt:Y},null==e?void 0:e.id)}))}),[j,x,J,Q,Y]),re=(0,c.useMemo)((function(){return(null==x?void 0:x.length)>0&&(0,s.BX)("div",{css:UC.selectionMessageContainer,children:[(0,s.tZ)("p",{css:o.c.caption(),children:"".concat(1===(null==x?void 0:x.length)?W("COM_SPPAGEBUILDER_EDITOR_ITEM_SELECTED",{itemCount:x.length}):W("COM_SPPAGEBUILDER_EDITOR_ITEMS_SELECTED",{itemCount:x.length}))}),(0,s.tZ)("button",{onClick:function(){return B((function(e){return e.filter((function(e){return!x.includes(e.id)}))})),void P([])},children:(0,s.tZ)(I.Z,{name:"trash",style:UC.trashIcon,height:16,width:16})})]})}),[x]);return(0,s.tZ)(ne.Z,{label:i,field:r,fieldState:n,responsive:a,responsiveOrientation:l,helpText:u,required:E,customWrapperCss:UC.fieldWrapper,headerElement:re,children:function(){return(0,s.BX)(s.HY,{children:[0===(null==j?void 0:j.length)&&(0,s.tZ)("div",{ref:q,css:UC.droppableContainer,children:(0,s.tZ)("div",{css:UC.mediaDropzoneWrapper(p),children:(0,s.tZ)(zt,{multiple:!0,onUpload:function(){var e=PC(SC().mark((function e(t){return SC().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!sr(t,H)){e.next=4;break}return U({type:"danger",message:W("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_MEDIA_LARGE",{size:(0,A.td)(H)})}),e.abrupt("return");case 4:return t.forEach((function(e){X(e.name)&&V(e.name)})),w(!1),e.next=8,G.mutateAsync({file:t,multiple:!0}).then((function(e){if(e.data){var t=e.data.filter((function(e){return!j.find((function(t){return t.id===e.id}))})).map((function(e){return{id:e.id,src:e.path}}));B((function(e){return[].concat(CC(e),CC(t))}))}}));case 8:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),onDragLeave:function(){return w(!1)},onClickHandler:z,caption:b,supportedFileExtensions:v,uploadIcon:"upload",uploadButtonText:W("COM_SPPAGEBUILDER_EDITOR_MEDIADROPZONE_MULT_IMAGE_UPLOAD_MESSAGE"),customButtonCss:y,customButtonContentCss:m,wrapperCss:UC.galleryUploadWrapper})})}),(null==j?void 0:j.length)>0&&(0,s.BX)(zn.LB,{sensors:N,collisionDetection:zn.pE,onDragEnd:$,onDragStart:K,children:[(0,s.tZ)(C.Fo,{items:j.map((function(e){return e.id})),strategy:C.U2,children:(0,s.BX)("div",{css:UC.gridContainerStyle(128,8),children:[te,(0,s.tZ)("div",{css:UC.uploader(128),onClick:z,children:(0,s.tZ)("button",{type:"button",children:(0,s.tZ)(I.Z,{name:"upload",width:20,height:20})})})]})}),(0,s.tZ)(zn.y9,{adjustScale:!0,children:D&&M?(0,s.tZ)("div",{css:UC.container(j.length),children:(0,s.tZ)("div",{css:UC.content,children:(0,s.tZ)("div",{css:UC.overlay,children:(0,s.tZ)("img",{src:ee(M.src)})})})}):null})]})]})}})};var kC={name:"ybxfo-auto",styles:"display:none;label:auto;"},NC={name:"uynxfe-middle",styles:"display:none;label:middle;"},GC={name:"hlxxgc-container",styles:"grid-column:1/3;grid-row:1/3;label:container;"},WC={name:"82ulnk-container",styles:"padding-top:19.2%;grid-column:1/6;label:container;"},UC={droppableContainer:{name:"1rzr5rr-droppableContainer",styles:"flex:1;position:relative;label:droppableContainer;"},mediaDropzoneWrapper:function(e){return(0,i.iv)("padding-right:",n.W0[24],";padding-right:0;height:",e,"px;;label:mediaDropzoneWrapper;")},hoverPreview:(0,i.iv)("visibility:hidden;justify-content:center;align-items:center;gap:",n.W0[8],";opacity:0;position:absolute;inset:0;background-color:",n.qo.alternate.backdrop,";border-radius:",n.E0[8],";transition:opacity 0.1s ease-in-out,visibility 0.1s ease-in-out;input{height:20px;width:20px;top:",n.W0[10],";left:",n.W0[10],";border-radius:",n.E0[4],";position:absolute;cursor:pointer;}button:not(:last-of-type){height:20px;width:20px;display:flex;align-items:center;justify-content:center;outline:none;border:none;border-radius:",n.E0[4],";top:",n.W0[10],";right:",n.W0[10],";position:absolute;cursor:pointer;};label:hoverPreview;"),spinner:{name:"k6liae-spinner",styles:"position:absolute;visibility:visible;display:flex;left:50%;top:50%;transform:translateX(-50%) translateY(-50%);label:spinner;"},gridContainerStyle:function(e,t){return(0,i.iv)("display:grid;grid-template-columns:repeat(5, ",e,"px);gap:",t,"px;align-items:start;;label:gridContainerStyle;")},uploader:function(e){return(0,i.iv)("width:",e,"px;height:",e,"px;display:flex;justify-content:center;align-items:center;border:1px dashed ",n.qo.base.primary,";border-radius:",n.E0[8],";cursor:pointer;transition:background-color 0.2s ease-in-out;:hover{background-color:",n.qo.base.primary,";svg{color:",n.qo.base.white,";transition:color 0.2s ease-in-out;}}button{outline:none;border:none;cursor:pointer;background-color:transparent;};label:uploader;")},selectionMessageContainer:(0,i.iv)("display:flex;gap:",n.W0[10],";justify-content:flex-end;position:absolute;right:",n.W0[12],";p{display:flex;align-items:center;}button{border:1px solid ",n.qo.stroke.neutral,";background-color:",n.qo.base.white,";outline:none;height:",n.W0[24],";width:",n.W0[24],";cursor:pointer;border-radius:",n.E0[4],";padding:",n.W0[4],";display:flex;align-items:center;justify-content:center;transition:border-color 0.2s ease-in-out;svg{transition:color 0.2s ease-in-out;}:hover{border-color:",n.qo.stroke.error,";svg{color:",n.qo.icon.error,";}}};label:selectionMessageContainer;"),trashIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:trashIcon;"),fieldWrapper:(0,i.iv)("border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";>div:first-of-type>div:first-of-type{border-bottom:1px solid #eeeef1;padding:",n.W0[12],";position:relative;}>div:first-of-type>div:last-child{padding:",n.W0[12],";};label:fieldWrapper;"),overlay:(0,i.iv)("background-color:",n.qo.background.neutral,";border-radius:",n.E0[6],";overflow:hidden;border:1px solid ",n.qo.stroke.neutral,";position:relative;transform-origin:0 0;display:flex;align-items:center;img{width:100%;};label:overlay;"),content:{name:"uo55x9-content",styles:"position:absolute;inset:0;display:flex;label:content;"},container:function(e){return(0,i.iv)("position:relative;width:100%;padding-top:100%;&:nth-of-type(1){",0===e?WC:GC,";};label:container;")},galleryUploadWrapper:(0,i.iv)("border-radius:",n.E0[4],";;label:galleryUploadWrapper;"),checkboxLabel:(0,i.iv)("position:absolute;left:",n.W0[10],";top:",n.W0[10],";;label:checkboxLabel;"),altBtn:(0,i.iv)("position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);padding:",n.W0[6]," ",n.W0[16],";gap:",n.W0[10],";width:max-content;;label:altBtn;"),altBtnContent:(0,i.iv)(o.c.caption("medium"),";color:",n.qo.base.white,";;label:altBtnContent;"),portalWrapper:{name:"19m55xy-portalWrapper",styles:"position:absolute;width:373px;label:portalWrapper;"},crossButton:{name:"1o5ntf8-crossButton",styles:"padding:0;label:crossButton;"},cardStyle:(0,i.iv)("box-shadow:",n.AF.popover,";border-radius:",n.E0[6],";;label:cardStyle;"),cardContent:(0,i.iv)(V.iZ.cardInnerSection,";gap:",n.W0[2],";background-color:",n.qo.background.hover,";padding:",n.W0[16]," ",n.W0[20],";;label:cardContent;"),cardHeader:(0,i.iv)("padding:14px 16px 14px 24px;div{",o.c.heading5("medium"),";};label:cardHeader;"),altLabel:(0,i.iv)(o.c.tiny(),";;label:altLabel;"),altInput:(0,i.iv)("width:100%;border:",n.qo.stroke.neutral," 1px solid;border-radius:",n.W0[6],";padding:",n.W0[6]," ",n.W0[12],";height:52px;color:",n.qo.text.default,";outline:none;box-shadow:",n.AF.input,";::placeholder{color:",n.qo.text.disabled,";",V.iZ.textEllipsis,";};label:altInput;"),altDesc:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";padding-top:",n.W0[6],";;label:altDesc;"),footer:(0,i.iv)("display:flex;justify-content:end;gap:",n.W0[8],";padding:",n.W0[12]," ",n.W0[20],";box-shadow:",n.AF.dividerTop,";;label:footer;"),altCheck:(0,i.iv)("position:absolute;display:flex;align-items:center;justify-content:center;height:18px;width:max-content;padding:",n.W0[6]," ",n.W0[6]," ",n.W0[6]," ",n.W0[4],";gap:",n.W0[2],";bottom:",n.W0[8],";left:",n.W0[8],";background-color:",n.qo.base.white,";border-radius:",n.E0[4],";svg{color:",n.qo.icon.primary,";};label:altCheck;"),popoverArrow:function(e){var t=(0,i.iv)("position:absolute;color:",n.qo.base.white,";z-index:1;;label:base;");return{top:(0,i.iv)(t,";top:-12px;left:16px;transform:rotate(0deg);;label:top;"),bottom:(0,i.iv)(t,";bottom:-12px;left:16px;transform:rotate(180deg);;label:bottom;"),left:(0,i.iv)(t,";left:-12px;top:16px;transform:rotate(-90deg);;label:left;"),right:(0,i.iv)(t,";right:-12px;top:16px;transform:rotate(90deg);;label:right;"),middle:NC,auto:kC}[e]}};function FC(e){return FC="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},FC(e)}function HC(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function qC(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?HC(Object(r),!0).forEach((function(t){VC(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):HC(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function VC(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==FC(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==FC(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===FC(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function zC(e){return function(e){if(Array.isArray(e))return $C(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||KC(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function XC(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||KC(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function KC(e,t){if(e){if("string"==typeof e)return $C(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?$C(e,t):void 0}}function $C(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var YC=function(e){var t=e.id,r=e.item,n=e.markerItems,o=e.updateItems,i=e.isActive,a=e.setIsActive,l=e.deleteItem,c=e.placeholder,u=void 0===c?"":c,d=(0,C.nB)({id:t}),p=d.attributes,f=d.listeners,v=d.setNodeRef,h=d.transform,b=d.transition,y=d.isDragging,m={transform:x.ux.Transform.toString(h),transition:b,opacity:y?.5:1};return i?(0,s.tZ)(QC,{placeholder:u,item:r,attributes:p,listeners:f,nodeRef:v,dndStyleObject:m,onClose:function(){return a(null)},onSave:function(e){var t=n.findIndex((function(t){return t.id===e.id}));if(-1!==t){var r=zC(n);r[t]=e,o(r)}}}):(0,s.BX)("div",{css:[ex.inactiveMarkerWrapper,m,";label:MarkerItemComponent;"],ref:v,children:[(0,s.tZ)("button",qC(qC(qC({type:"button",css:ex.dragHandle},p),f),{},{children:(0,s.tZ)(I.Z,{name:"dragger",style:ex.icon,width:20,height:20})})),(0,s.tZ)("div",{css:V.iZ.textEllipsis,children:null==r?void 0:r.title}),(0,s.BX)("div",{css:ex.inactiveButtonsWrapper,children:[(0,s.tZ)("button",{type:"button",role:"button",onClick:function(){return a(t)},children:(0,s.tZ)(I.Z,{name:"pencilOnBox",style:ex.icon})}),(0,s.tZ)("button",{type:"button",role:"button",onClick:function(){return l(t)},children:(0,s.tZ)(I.Z,{name:"trash",style:ex.icon})})]})]})},QC=function(e){var t=e.item,r=e.attributes,n=e.listeners,o=e.nodeRef,i=e.dndStyleObject,a=e.placeholder,l=void 0===a?"":a,u=e.addNewItem,d=e.onClose,p=e.onSave,f=(0,L.$)(),v=XC((0,c.useState)(t||{id:"",title:"",lat:void 0,lng:void 0,popupText:void 0}),2),h=v[0],b=v[1],y=XC((0,c.useState)(!1),2),m=y[0],g=y[1],E=(0,fe.N)(h.title),O=(0,mo.Z$)(E).suggestions,w=m&&!(null==E||!E.trim())&&O.length>0;return(0,s.BX)("div",{css:[ex.markerDetailsWrapper,i,";label:MarkerDetailsComponent;"],ref:o,children:[(0,s.tZ)("button",qC(qC(qC({type:"button",css:ex.dragHandle},r||{}),n||{}),{},{children:(0,s.tZ)(I.Z,{name:"dragger",style:ex.icon,width:20,height:20})})),(0,s.BX)("div",{css:ex.inputWrapper,children:[(0,s.tZ)("label",{children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_TITLE_LABEL")}),(0,s.BX)("div",{css:ex.titleInputWrapper,children:[(0,s.tZ)("input",{placeholder:l,value:h.title,onChange:function(e){b(qC(qC({},h),{},{title:e.target.value})),g(!0)},onFocus:function(){g(!0)},onBlur:function(){window.setTimeout((function(){return g(!1)}),150)}}),w&&O.length>0&&(0,s.tZ)("div",{css:ex.suggestionDropdown,role:"listbox",children:O.map((function(e,t){return(0,s.tZ)("div",{css:ex.suggestionItem,role:"option",onMouseDown:function(t){t.preventDefault(),function(e){b(qC(qC({},h),{},{title:e.display_name,lat:parseFloat(e.lat),lng:parseFloat(e.lon)})),g(!1)}(e)},children:e.display_name},e.place_id||t)}))})]})]}),(0,s.BX)("div",{css:ex.latLngWrapper,children:[(0,s.BX)("div",{css:ex.inputWrapper,children:[(0,s.tZ)("label",{children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_LATITUDE_LABEL")}),(0,s.tZ)("input",{type:"number",value:h.lat||"",onChange:function(e){return b(qC(qC({},h),{},{lat:parseFloat(e.target.value)}))}})]}),(0,s.BX)("div",{css:ex.inputWrapper,children:[(0,s.tZ)("label",{children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_LONGITUDE_LABEL")}),(0,s.tZ)("input",{type:"number",value:h.lng||"",onChange:function(e){return b(qC(qC({},h),{},{lng:parseFloat(e.target.value)}))}})]})]}),(0,s.BX)("div",{css:ex.inputWrapper,children:[(0,s.tZ)("label",{children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_POPUP_TEXT_LABEL")}),(0,s.tZ)("textarea",{value:h.popupText||"",onChange:function(e){return b(qC(qC({},h),{},{popupText:e.target.value}))}})]}),(0,s.BX)("div",{css:ex.activeButtonsWrapper,children:[(0,s.tZ)(_.Z,{variant:"primary",onClick:function(){t?(null==p||p(qC(qC({},t),h)),null==d||d()):u&&(u(qC(qC({},h),{},{id:(0,A.x0)()})),b({id:"",title:"",lat:void 0,lng:void 0,popupText:void 0}))},children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_SAVE_BUTTON")}),(0,s.tZ)(_.Z,{variant:"secondary",onClick:d,children:f("COM_SPPAGEBUILDER_EDITOR_LOCATION_ITEM_CANCEL_BUTTON")})]})]})};const JC=function(e){var t=e.field,r=e.label,n=e.helpText,o=e.placeholder,i=e.fieldState,a=e.isSingleLocation,l=void 0!==a&&a,u=e.required,d=void 0!==u&&u,p=e.onChange,f=(0,L.$)(),v=XC((0,c.useState)([]),2),h=v[0],b=v[1],y=(0,c.useRef)(!1),m=XC((0,c.useState)(null),2),g=m[0],E=m[1],O=XC((0,c.useState)(null),2),w=O[0],S=O[1],x=XC((0,c.useState)(!1),2),P=x[0],T=x[1],D=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is}));(0,c.useEffect)((function(){if(!y.current&&(0,A.$K)(null==t?void 0:t.value)){var e=Array.isArray(null==t?void 0:t.value)?null==t?void 0:t.value:JSON.parse(null==t?void 0:t.value);b(e),y.current=!0}}),[null==t?void 0:t.value]),(0,c.useEffect)((function(){var e=Array.isArray(null==t?void 0:t.value)?null==t?void 0:t.value:(0,A.$K)(null==t?void 0:t.value)?JSON.parse(null==t?void 0:t.value):[];(y.current&&0===e.length||null===(null==t?void 0:t.value))&&T(!0)}),[y.current,null==t?void 0:t.value]);var Z=function(e){var r,n=h.filter((function(t){return t.id!==e}));b(n),null===(r=t.onChange)||void 0===r||r.call(t,n),p&&p(n)},R=!l;return(0,s.tZ)(ne.Z,{fieldState:i,field:t,label:r,helpText:n,placeholder:o,required:d,children:function(){var e;return(0,s.BX)("div",{css:ex.wrapperStyle,children:[(0,s.BX)("div",{css:ex.itemsContainer,children:[" ",(0,s.BX)(zn.LB,{sensors:D,collisionDetection:zn.pE,onDragStart:function(e){S(String(e.active.id))},onDragEnd:function(e){var r=e.active,n=e.over;if(S(null),null!=n&&n.id&&r.id!==n.id){var o=h.findIndex((function(e){return e.id===r.id})),i=h.findIndex((function(e){return e.id===n.id}));if(-1!==o&&-1!==i){var a,l=(0,C.Rp)(h,o,i);b(l),null===(a=t.onChange)||void 0===a||a.call(t,l),p&&p(l)}}},children:[(0,s.tZ)(C.Fo,{items:null==h?void 0:h.map((function(e){return e.id})),strategy:C.qw,children:null==h?void 0:h.map((function(e){return(0,s.tZ)(YC,{item:e,markerItems:h,updateItems:function(e){var r;b(e),null===(r=t.onChange)||void 0===r||r.call(t,e),p&&p(e)},isActive:g===e.id,setIsActive:E,deleteItem:Z,id:e.id},e.id)}))}),(0,s.tZ)(zn.y9,{children:w?g===w?(0,s.tZ)(QC,{placeholder:o,item:h.find((function(e){return e.id===w}))}):(0,s.BX)("div",{css:ex.inactiveMarkerWrapper,children:[(0,s.tZ)("button",{type:"button",css:ex.dragHandle,children:(0,s.tZ)(I.Z,{name:"dragger",style:ex.icon,width:20,height:20})}),(0,s.tZ)("div",{css:V.iZ.textEllipsis,children:null===(e=h.find((function(e){return e.id===w})))||void 0===e?void 0:e.title})]}):null})]}),P&&(0,s.tZ)(QC,{item:null,placeholder:o,addNewItem:function(e){!function(e){var r,n={id:(0,A.x0)(),title:e.title,lat:e.lat,lng:e.lng,popupText:e.popupText},o=[].concat(zC(h),[n]);b(o),null===(r=t.onChange)||void 0===r||r.call(t,o),p&&p(o)}(e),T(!1)},onClose:function(){0!==h.length&&T(!1)}})]}),R&&(0,s.tZ)(_.Z,{buttonCss:ex.addItem,icon:(0,s.tZ)(I.Z,{name:"plus"}),variant:"secondary",onClick:function(){return T(!0)},children:f("COM_SPPAGEBUILDER_EDITOR_ADD_LOCATION_ITEM_BUTTON")})]})}})};var ex={wrapperStyle:(0,i.iv)("display:flex;flex-direction:column;border:",n.qo.stroke.neutral," 1px solid;border-radius:",n.W0[4],";padding:",n.W0[12],";padding-left:",n.W0[32],";gap:",n.W0[16],";",V.iZ.overflowYAuto," overflow-x:hidden;;label:wrapperStyle;"),addItem:(0,i.iv)("padding:",n.W0[6]," ",n.W0[24],";gap:",n.W0[8],";align-self:flex-start;;label:addItem;"),itemsContainer:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[12],";;label:itemsContainer;"),inactiveMarkerWrapper:(0,i.iv)("position:relative;padding:",n.W0[6]," ",n.W0[12],";padding-right:",n.W0[0],";border-radius:",n.W0[6],";border:",n.qo.stroke.neutral," 1px solid;display:flex;justify-content:space-between;height:",n.W0[32],";",o.c.caption("regular"),";color:",n.qo.text.hint,";background-color:",n.qo.background.white,";;label:inactiveMarkerWrapper;"),inactiveButtonsWrapper:(0,i.iv)("display:flex;padding:",n.W0[4]," ",n.W0[6],";border-left:1px solid ",n.qo.stroke.neutral,";margin-top:-",n.W0[6],";margin-bottom:-",n.W0[6],";>button{border:none;outline:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;};label:inactiveButtonsWrapper;"),icon:(0,i.iv)("color:",n.qo.icon.default,";&:hover{color:",n.qo.icon.hover,";};label:icon;"),dragHandle:(0,i.iv)("background:none;border:none;cursor:grab;padding:",n.W0[4],";position:absolute;top:",n.W0[2],";left:-",n.W0[24],";;label:dragHandle;"),markerDetailsWrapper:(0,i.iv)("border-radius:",n.W0[6],";border:",n.qo.stroke.neutral," 1px solid;gap:",n.W0[10],";padding:",n.W0[12],";display:flex;flex-direction:column;position:relative;background-color:",n.qo.background.white,";;label:markerDetailsWrapper;"),inputWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";input,textarea{border:",n.qo.stroke.neutral," 1px solid;border-radius:",n.W0[6],";padding:",n.W0[6]," ",n.W0[12],";height:",n.W0[32],";color:",n.qo.text.default,";outline:none;box-shadow:",n.AF.input,";max-width:100%;min-width:100%;:focus{box-shadow:",n.AF.outline,";}}>label{",o.c.tiny("regular"),";color:",n.qo.text.default,";};label:inputWrapper;"),titleInputWrapper:(0,i.iv)("position:relative;>input{width:100%;}>div[role='listbox']{position:absolute;left:0;right:0;top:calc(100% + ",n.W0[4],");background:",n.qo.background.white,";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.W0[6],";max-height:200px;overflow:auto;z-index:50;};label:titleInputWrapper;"),suggestionDropdown:(0,i.iv)("display:flex;flex-direction:column;box-shadow:",n.AF.popover,";padding:",n.W0[4]," 0;z-index:",n.W5.dropdown,";border-radius:",n.E0[6],";",V.iZ.overflowYAuto,";max-height:500px;list-style-type:none;;label:suggestionDropdown;"),suggestionItem:(0,i.iv)("padding:",n.W0[8],";cursor:pointer;",o.c.tiny("regular"),";color:",n.qo.text.default,";&:hover{background:",n.qo.stroke.neutral,";};label:suggestionItem;"),latLngWrapper:(0,i.iv)("display:flex;gap:",n.W0[8],";>div{flex:1;min-width:0;};label:latLngWrapper;"),activeButtonsWrapper:(0,i.iv)("display:flex;gap:",n.W0[8],";align-self:flex-start;;label:activeButtonsWrapper;")};function tx(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return rx(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?rx(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function rx(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var nx={container:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:container;"),label:(0,i.iv)(o.c.caption(),";display:flex;align-items:center;gap:",n.W0[4],";:hover{[data-help-action]{opacity:1;}};label:label;"),labelInner:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[4],";;label:labelInner;"),required:(0,i.iv)(o.c.caption(),";color:",n.qo.text.hints,";;label:required;"),ratingContainer:(0,i.iv)("display:flex;gap:",n.W0[4],";align-items:center;;label:ratingContainer;"),starButton:{name:"4vj3lr-starButton",styles:"background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform 0.1s ease;&:hover:not(:disabled){transform:scale(1.1);}&:disabled{cursor:not-allowed;};label:starButton;"},star:{name:"1qp4yd2-star",styles:"color:#d1d5db;transition:color 0.2s ease;label:star;"},filledStar:{name:"1n99uqj-filledStar",styles:"color:#fbbf24;label:filledStar;"},disabledStar:{name:"s2f3b0-disabledStar",styles:"color:#9ca3af;label:disabledStar;"}};const ox=function(e){var t=e.value,r=void 0===t?0:t,n=e.onChange,o=e.maxRating,i=void 0===o?5:o,a=e.allowHalfStars,l=void 0===a||a,u=e.disabled,d=void 0!==u&&u,p=e.label,f=e.helpText,v=e.required,h=void 0!==v&&v,b=(0,L.$)(),y=tx((0,c.useState)(0),2),m=y[0],g=y[1],E=tx((0,c.useState)(!1),2),O=E[0],_=E[1],w=function(){d||(g(0),_(!1))};return(0,s.BX)("div",{css:nx.container,children:[p&&(0,s.BX)("label",{css:nx.label,children:[f&&(0,s.tZ)("div",{css:nx.labelInner,children:(0,s.BX)(Ii.Z,{content:f,allowHTML:!0,isVisibleOnClick:!0,children:[p,h&&(0,s.tZ)("span",{css:nx.required,children:b("COM_SPPAGEBUILDER_EDITOR_FIELD_LABEL_REQUIRED")})]})}),!f&&p,!f&&h&&(0,s.tZ)("span",{css:nx.required,children:b("COM_SPPAGEBUILDER_EDITOR_FIELD_LABEL_REQUIRED")})]}),(0,s.tZ)("div",{css:nx.ratingContainer,onMouseLeave:w,children:Array.from({length:i},(function(e,t){return function(e){var t=O?m:r,o=t>=e,a=l&&t===e-.5;return(0,s.tZ)("button",{type:"button",css:nx.starButton,onClick:function(t){return function(e,t){if(!d)if(l){var r=t.currentTarget.getBoundingClientRect(),o=t.clientX-r.left,i=r.width;n(o<i/2?e-.5:e)}else n(e)}(e,t)},onMouseEnter:function(t){return function(e,t){if(!d){if(l){var r=t.currentTarget.getBoundingClientRect(),n=t.clientX-r.left,o=r.width;g(n<o/2?e-.5:e)}else g(e);_(!0)}}(e,t)},onMouseMove:function(t){return function(e,t){if(!d&&l){var r=t.currentTarget.getBoundingClientRect(),n=t.clientX-r.left,o=r.width;g(n<o/2?e-.5:e)}}(e,t)},onMouseLeave:w,disabled:d,"aria-label":"Rate ".concat(e," out of ").concat(i," stars"),children:a?(0,s.tZ)(I.Z,{name:"starHalf",width:24,height:24,css:[nx.star,nx.filledStar,d&&nx.disabledStar,";label:renderStar;"]}):(0,s.tZ)(I.Z,{name:"star",width:24,height:24,css:[nx.star,o&&nx.filledStar,d&&nx.disabledStar,";label:renderStar;"]})},e)}(t+1)}))}),(0,s.tZ)("input",{type:"hidden",value:r,readOnly:!0})]})};function ix(e){return ix="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},ix(e)}var ax="/Users/sifathaque/Herd/sppb/administrator/components/com_sppagebuilder/assets/editor/src/components/dynamic-content/collection-items/RenderCollectionItemFormField.tsx";function lx(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function cx(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?lx(Object(r),!0).forEach((function(t){ux(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):lx(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ux(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==ix(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==ix(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===ix(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const sx=function(e){var t,r=e.field,n=e.form,o=e.isNested,a=n.formState.errors,l=(0,L.$)();switch(r.type){case"text":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx(cx({},(t=r.max_length,Z({},(0,A.$K)(t)&&{maxLength:{value:Number(t),message:(0,L.O)("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_FIELD_MAX_LENGTH",{length:t})}}))),N(r.required)),render:function(e){return r.is_textarea?(0,i.az)(Hn,cx(cx({},e),{},{key:"".concat(r.key,"-textarea"),label:r.name,helpText:r.description,placeholder:r.placeholder,required:Boolean(r.required),__source:{fileName:ax,lineNumber:57,columnNumber:17}})):(0,i.az)(Qe.Z,cx(cx({},e),{},{key:"".concat(r.key,"-text"),label:r.name,helpText:r.description,placeholder:r.placeholder,required:Boolean(r.required),__source:{fileName:ax,lineNumber:69,columnNumber:15}}))}},r.key);case"rich-text":return(0,s.tZ)(It.Qr,{control:n.control,rules:cx(cx({},U(r.min_length,r.max_length)),N(r.required)),name:r.key,render:function(e){return(0,s.tZ)(LE,cx(cx({},e),{},{label:r.name,helpText:r.description,placeholder:r.placeholder,showGenAI:0,required:Boolean(r.required)}))}},r.key);case"gallery":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx(cx({},N(r.required)),G(r.min_length,r.max_length)),render:function(e){return(0,s.tZ)(MC,cx(cx({},e),{},{label:r.name,helpText:r.description,wrapperHeight:200,customButtonContentCss:dx.dropFieldButtonContentCss,customButtonCss:dx.dropFieldButtonCss,required:Boolean(r.required)}))}},r.key);case"image":return(0,s.BX)(s.HY,{children:[(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){var t=H(e.field.value);return(0,s.tZ)(Dn,cx(cx({},e),{},{field:cx(cx({},e.field),{},{value:t.src||"",onChange:function(r){e.field.onChange(cx(cx({},t),{},{src:r||""}))}}),label:r.name,helpText:r.description,placeholder:r.placeholder,wrapperHeight:158,customButtonContentCss:dx.dropFieldButtonContentCss,customButtonCss:dx.dropFieldButtonCss,required:Boolean(r.required)}))}},r.key),(0,s.tZ)(It.Qr,{control:n.control,name:"".concat(r.key,"_alt"),render:function(e){var t=n.watch(r.key),o=H(t).alt;return(0,s.tZ)(Qe.Z,cx(cx({},e),{},{field:cx(cx({},e.field),{},{value:o,onChange:function(t){var o="string"==typeof t?t:"",i=n.getValues(r.key),a=H(i);a.alt=o,n.setValue(r.key,a),e.field.onChange(o)}}),label:l("COM_SPPAGEBUILDER_EDITOR_ALT_TEXT"),placeholder:l("COM_SPPAGEBUILDER_EDITOR_ALT_TEXT_PLACEHOLDER")}))}},"".concat(r.key,"_alt"))]});case"icon":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Nt,cx(cx({},e),{},{label:r.name,helpText:r.description,placeholder:r.placeholder}))}},r.key);case"location":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(JC,cx(cx({},e),{},{label:r.name,helpText:r.description,placeholder:r.placeholder,isSingleLocation:Boolean(r.is_single_location),required:Boolean(r.required)}))}},r.key);case"video":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(_C,cx(cx({},e),{},{label:r.name,placeholder:r.placeholder,hidePreview:!1,hideAltText:!0,allowedMediaType:"video",onlySource:!0}))}},r.key);case"email":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Qe.Z,cx(cx({},e),{},{label:r.name,type:r.type,helpText:r.description,placeholder:r.placeholder,required:Boolean(r.required)}))}},r.key);case"phone":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Qe.Z,cx(cx({},e),{},{label:r.name,type:"tel",helpText:r.description,placeholder:r.placeholder,required:Boolean(r.required)}))}},r.key);case"date-time":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Os,cx(cx({},e),{},{label:r.name,placeholder:r.placeholder,helpText:r.description,showTime:Boolean(r.show_time),required:Boolean(r.required)}))}},r.key);case"number":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx(cx({},F(r.min_length,r.max_length,r.allow_negative)),N(r.required)),render:function(e){var t=cx(cx({},e),{},{field:cx(cx({},e.field),{},{value:String(e.field.value)})});return(0,s.tZ)(Qe.Z,cx(cx({},t),{},{label:r.name,type:"number",helpText:r.description,placeholder:r.placeholder,onChange:function(t){var n=""===t?"":function(e){return"integer"===r.number_format?Math.round(Number(e)):e}(t);e.field.onChange(n)},step:Number(r.number_step),allowNegativeValue:Boolean(r.allow_negative),required:Boolean(r.required)}))}},r.key);case"rating":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx(cx({},F(r.min_length,r.max_length,0)),N(r.required)),render:function(e){return(0,s.tZ)(ox,{value:Number(e.field.value)||0,onChange:function(t){var n=function(e){return"integer"===r.number_format?Math.round(e):e}(t);e.field.onChange(n)},maxRating:r.max_length||5,allowHalfStars:"integer"!==r.number_format,label:r.name,helpText:r.description,required:Boolean(r.required)})}},r.key);case"link":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Qe.Z,cx(cx({},e),{},{label:r.name,type:"text",helpText:r.description,placeholder:r.placeholder,required:Boolean(r.required)}))}},r.key);case"switch":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){var t,n,o,i=cx(cx({},e),{},{field:cx(cx({},e.field),{},{value:Number(e.field.value)})});return(0,s.BX)(s.HY,{children:[(0,s.tZ)(jn.Z,cx(cx({},i),{},{label:r.name,helpText:r.description,isInlineLabel:!0,hideErrorMessage:!0,required:Boolean(r.required)})),(null===(t=a[r.key])||void 0===t?void 0:t.message)&&(0,s.tZ)("p",{css:dx.errorLabel,children:null===(n=a[r.key])||void 0===n||null===(o=n.message)||void 0===o?void 0:o.toString()})]})}},r.key);case"color":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,render:function(e){return(0,s.tZ)(Ke,cx(cx({},e),{},{label:r.name,helpText:r.description,required:Boolean(r.required)}))}},r.key);case"option":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Yt.Z,cx(cx({options:r.options},e),{},{label:r.name,helpText:r.description,placeholder:r.placeholder,isSearchable:!0,required:Boolean(r.required)}))}},r.key);case"file":return(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){return(0,s.tZ)(Dn,cx(cx({},e),{},{label:r.name,helpText:r.description,placeholder:r.placeholder,allowedFileExtensions:r.file_extensions,wrapperHeight:158,mode:"file",caption:!0,customButtonContentCss:dx.dropFieldButtonContentCss,customButtonCss:dx.dropFieldButtonCss,noPathInput:!0,required:Boolean(r.required)}))}},r.key);case"reference":return(0,s.BX)("div",{css:[!o&&dx.referenceWrapper,";label:RenderCollectionItemFormField;"],children:[(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){var t,n=cx(cx({},e),{},{field:cx(cx({},e.field),{},{value:Array.isArray(e.field.value)?Number(e.field.value[0]):e.field.value})});return(0,s.tZ)(Yt.Z,cx(cx({},n),{},{label:r.name,options:r.reference_items,placeholder:null!==(t=r.placeholder)&&void 0!==t?t:l("COM_SPPAGEBUILDER_EDITOR_SELECT_PLACEHOLDER"),helpText:r.description,isClearable:!1,required:Boolean(r.required)}))}},r.key),!o&&(0,s.tZ)(tC,{collectionId:r.reference_collection_id,name:r.name})]});case"multi-reference":return(0,s.BX)("div",{css:[!o&&dx.referenceWrapper,";label:RenderCollectionItemFormField;"],children:[(0,s.tZ)(It.Qr,{control:n.control,name:r.key,rules:cx({},N(r.required)),render:function(e){var t;return(0,s.tZ)(Rn.Z,cx(cx({},e),{},{label:r.name,options:r.reference_items,placeholder:null!==(t=r.placeholder)&&void 0!==t?t:l("COM_SPPAGEBUILDER_EDITOR_SELECT_PLACEHOLDER"),helpText:r.description,isClearable:!1,arrowSize:20,required:Boolean(r.required)}))}},r.key),!o&&(0,s.tZ)(tC,{collectionId:r.reference_collection_id,name:r.name})]});default:return null}};var dx={referenceWrapper:(0,i.iv)("display:grid;grid-template-columns:auto ",n.W0[20],";gap:",n.W0[0],";;label:referenceWrapper;"),dropFieldButtonCss:(0,i.iv)("width:196px;height:",n.W0[32],";padding:",n.W0[6]," ",n.W0[16],";display:flex;align-items:center;justify-content:center;gap:",n.W0[4],";border-radius:",n.E0[8],";background-color:",n.qo.action.primary.default,";;label:dropFieldButtonCss;"),dropFieldButtonContentCss:(0,i.iv)(o.c.body("medium"),";color:",n.qo.text.white,";text-align:center;;label:dropFieldButtonContentCss;"),errorLabel:(0,i.iv)(o.c.caption(),";display:flex;align-items:center;margin-top:-",n.W0[20],";color:",n.qo.base.error,";& svg{margin-right:",n.W0[8],";};label:errorLabel;")};function px(e){return px="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},px(e)}function fx(){fx=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==px(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function vx(e){return function(e){if(Array.isArray(e))return hx(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return hx(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?hx(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function hx(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function bx(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function yx(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){bx(i,n,o,a,l,"next",e)}function l(e){bx(i,n,o,a,l,"throw",e)}a(void 0)}))}}function mx(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function gx(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?mx(Object(r),!0).forEach((function(t){Ex(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):mx(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ex(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==px(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==px(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===px(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Ox=["status","access","language","created_by","association"],_x=function(e){var t=e.closeModal,r=e.title,n=e.collectionId,o=(0,L.$)(),i=(0,mo.hF)({mode:"create",collection_id:n}),a=(0,mo.H6)(),l=(0,rt.O)({defaultValues:{}}),u=l.getValues();if((0,c.useEffect)((function(){i.data&&l.reset.call(null,gx({},Object.fromEntries(i.data.map((function(e){return u[e.key]?[e.key,u[e.key]]:"image"===e.type&&e.value?[e.key,H(e.value)]:[e.key,e.value]})))))}),[i.data,l.reset]),i.isLoading)return(0,s.tZ)(Ye.g4,{});if(!i.data)return(0,s.tZ)("div",{children:o("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")});var d=i.data;return(0,s.BX)(St.Z,{onClose:function(){t({action:"CLOSE"})},wrapperCss:Cx.modalWrapper,title:r,isOverflowYAuto:!1,children:[(0,s.tZ)("div",{css:Cx.modalBody,children:(0,s.tZ)(It.RV,gx(gx({},l),{},{children:(0,s.tZ)(Ix,{isNested:!0,fields:d,id:n})}))}),(0,s.BX)("div",{css:Cx.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return t({action:"CLOSE"})},children:o("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_CANCEL")}),(0,s.tZ)(_.Z,{variant:"primary",onClick:l.handleSubmit(function(){var e=yx(fx().mark((function e(r){var o,i,c,u;return fx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return o=vx(d).map((function(e){var t=r[e.key];return"image"===e.type&&t&&(t=q(t)),{field_id:e.id,field_type:e.type,value:t}})),i=o.reduce((function(e,t){return Ox.includes(t.field_type)&&(e[t.field_type]=t.value),e}),{}),c=o.filter((function(e){return!Ox.includes(e.field_type)})),u={collection_id:null!=n?n:0,values:JSON.stringify(c),published:Number(i.status),access:Number(i.access),language:String(i.language),created_by:Number(i.created_by),created:l.getValues("created"),association:i.association?JSON.stringify(i.association):null},e.next=6,a.mutateAsync(u);case 6:if(e.sent.data){e.next=9;break}return e.abrupt("return");case 9:t({action:"CLOSE"});case 10:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),loading:a.isLoading,children:o("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_PUBLISH")})]})]})},wx={name:"janh4w-DynamicContentForm",styles:"overflow:hidden;label:DynamicContentForm;"},Ix=function(e){var t,r,n=e.fields,o=e.isNested,i=void 0!==o&&o,a=e.id,l=e.itemId,c=void 0===l?null:l,u=(0,L.$)(),d=(0,mo.H6)(),p=(0,mo.jQ)(),f=(0,mo.Bd)(),v=(0,It.Gc)(),h=gx(gx({},v),{},{setSubmitError:function(){},submitError:void 0}),b=v.formState.isDirty,y=(0,Qt.g)(),m=(0,_o.s0)(),g=null===(t=n.find((function(e){return"title"===e.type})))||void 0===t?void 0:t.id,E=null===(r=n.find((function(e){return"alias"===e.type})))||void 0===r?void 0:r.id,O=v.watch("".concat(Bn.vH).concat(g)),w=v.watch("".concat(Bn.vH).concat(E)),S=function(){var e=yx(fx().mark((function e(){var t,r;return fx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!b){e.next=8;break}return e.next=3,y({title:u("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_TITLE"),confirmationMessage:u("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_MESSAGE"),confirmButtonText:u("COM_SPPAGEBUILDER_EDITOR_COLLECTION_CONSENT_MODAL_DISCARD"),skipMutation:!0});case 3:if("CONFIRM"!==e.sent.action){e.next=7;break}return e.abrupt("return",m(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:null!==(r=null==a?void 0:a.toString())&&void 0!==r?r:"0"})));case 7:return e.abrupt("return");case 8:return e.abrupt("return",m(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:null!==(t=null==a?void 0:a.toString())&&void 0!==t?t:"0"})));case 9:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),C=[{id:"save-and-close",icon:"saveClose",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AND_CLOSE"},{id:"save-and-new",icon:"saveNew",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AND_NEW",isDisabled:!1},{id:"save-as-copy",icon:"copy",title:"COM_SPPAGEBUILDER_EDITOR_TOPBAR_ACTION_SAVE_AS_COPY",isDisabled:!(0,A.$K)(c)}],x=function(){var e=yx(fx().mark((function e(t){var r,o,i,l;return fx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=vx(n).map((function(e){var r=t[e.key];return"image"===e.type&&r&&(r=q(r)),{field_id:e.id,field_type:e.type,value:r}})),o=r.reduce((function(e,t){return Ox.includes(t.field_type)&&(e[t.field_type]=t.value),e}),{}),i=r.filter((function(e){return!Ox.includes(e.field_type)})),l={collection_id:null!=a?a:0,values:JSON.stringify(i),published:Number(o.status),access:Number(o.access),language:String(o.language),created_by:Number(o.created_by),created:v.getValues("created"),association:o.association?JSON.stringify(o.association):null},(0,A.$K)(c)){e.next=11;break}return e.next=8,d.mutateAsync(l);case 8:case 13:return e.abrupt("return",e.sent);case 11:return e.next=13,p.mutateAsync(gx(gx({},l),{},{item_id:c}));case 14:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}();return(0,s.tZ)("div",{css:Cx.wrapper,children:!A.Eu&&(0,s.tZ)("form",{onSubmit:v.handleSubmit(function(){var e=yx(fx().mark((function e(t){var r,n;return fx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,x(t);case 2:if((n=e.sent).data&&!(0,A.$K)(c)){e.next=5;break}return e.abrupt("return");case 5:m(Oo.F.DynamicContentEditItem.buildLink({collectionId:null!==(r=null==a?void 0:a.toString())&&void 0!==r?r:"0",itemId:n.data.toString()}));case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()),children:(0,s.tZ)(Fu.Z,{hideArrow:!0,isDefaultCardType:!1,hasWrapperShadow:!i,backButton:!0,cardCss:wx,backButtonOnChange:S,header:i?void 0:{title:u("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_ITEM"),actionTray:(0,s.BX)("div",{css:Cx.actionTrayButton,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:S,children:u("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_CANCEL")}),(0,s.BX)(K_,{children:[(0,s.tZ)(_.Z,{loading:d.isLoading||p.isLoading,variant:"primary",type:"submit",children:u("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_ITEM_PUBLISH")}),(0,s.tZ)(P.Z,{actions:C,triggerButtonContent:(0,s.tZ)(I.Z,{name:"chevronDown"}),triggerButtonStyle:Cx.triggerButton,onSelect:function(){var e=yx(fx().mark((function e(t){var r,n,o,i;return fx().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=t,e.next="save-and-close"===e.t0?3:"save-and-new"===e.t0?10:"save-as-copy"===e.t0?17:26;break;case 3:return e.next=5,x(v.getValues());case 5:if(e.sent.data){e.next=8;break}return e.abrupt("return");case 8:return m(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:null!==(r=null==a?void 0:a.toString())&&void 0!==r?r:"0"})),e.abrupt("break",27);case 10:return e.next=12,x(v.getValues());case 12:if(e.sent.data){e.next=15;break}return e.abrupt("return");case 15:return m(Oo.F.DynamicContentCreateItem.buildLink({collectionId:null!==(n=null==a?void 0:a.toString())&&void 0!==n?n:"0"})),e.abrupt("break",27);case 17:if((0,A.$K)(c)){e.next=19;break}return e.abrupt("return");case 19:return e.next=21,f.mutateAsync({id:Number(c)});case 21:if((i=e.sent).data){e.next=24;break}return e.abrupt("return");case 24:return m(Oo.F.DynamicContentEditItem.buildLink({collectionId:null!==(o=null==a?void 0:a.toString())&&void 0!==o?o:"0",itemId:i.data.toString()})),e.abrupt("break",27);case 26:return e.abrupt("break",27);case 27:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()})]})]})},children:(0,s.BX)("div",{css:Cx.contentWrapper,children:[(0,s.tZ)("div",{css:Cx.cardWrapper(i),children:n.map((function(e){return"title"===e.type?(0,s.tZ)(It.Qr,{control:v.control,name:e.key,rules:gx({},N(e.required)),render:function(t){return(0,s.tZ)(Qe.Z,gx(gx({},t),{},{label:e.name,helpText:e.description,placeholder:e.placeholder,required:Boolean(e.required)}))}},e.key):"alias"===e.type?(0,s.tZ)(It.Qr,{control:v.control,name:e.key,render:function(t){var r=e.placeholder;r=w?r:O?(0,A.VH)(O):r;var n=gx(gx({},t),{},{field:gx(gx({},t.field),{},{value:(0,A.VH)(t.field.value)})});return(0,s.tZ)(Qe.Z,gx(gx({},n),{},{label:e.name,helpText:e.description,placeholder:r,required:!1}))}},e.key):(0,s.tZ)(sx,{field:e,form:h,isNested:i},e.key)}))}),(0,s.tZ)("div",{css:Cx.formRightSidebar,children:Ox.map((function(e,t){var r=n.find((function(t){return t.type===e}));return r?"association"===e?(0,s.tZ)(It.Qr,{control:v.control,name:r.key,render:function(e){return(0,s.tZ)(QS,gx(gx({},e),{},{options:r.options,fieldState:e.fieldState,field:e.field,placeholder:r.placeholder,label:r.name,helpText:r.description,isClearable:!1}))}},t):(0,s.tZ)(It.Qr,{control:v.control,name:r.key,render:function(e){return(0,s.tZ)(Yt.Z,gx(gx({},e),{},{placeholder:r.placeholder,label:r.name,options:r.options,helpText:r.description,isClearable:!1}))}},t):null}))})]})})})})};const Sx=Ix;var Cx={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[24],";position:relative;;label:wrapper;"),contentWrapper:{name:"sazaqd-contentWrapper",styles:"display:grid;grid-template-columns:auto 256px;label:contentWrapper;"},formRightSidebar:(0,i.iv)("padding:",n.W0[20]," ",n.W0[24],";background-color:",n.qo.background.white,";border-left:1px solid ",n.qo.stroke.neutral,";display:flex;flex-direction:column;gap:",n.W0[16],";;label:formRightSidebar;"),actionTrayButton:(0,i.iv)("display:flex;gap:",n.W0[12],";;label:actionTrayButton;"),cardWrapper:function(e){return(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";padding:",n.W0[20]," ",n.W0[24]," ",n.W0[24]," ",n.W0[24],";height:calc(100vh - 350px);",V.iZ.overflowYAuto,";",e&&(0,i.iv)("background-color:",n.qo.background.white,";;label:cardWrapper;"),";;label:cardWrapper;")},modalWrapper:(0,i.iv)("width:1000px;height:calc(100vh - 350px);position:relative;background-color:",n.qo.background.white,";;label:modalWrapper;"),modalBody:(0,i.iv)("background-color:",n.qo.background.hover,";max-height:calc(100vh - 410px);height:100%;width:100%;padding:",n.W0[20]," ",n.W0[20],";display:flex;flex-direction:column;gap:",n.W0[16],";",V.iZ.overflowYAuto," padding-bottom:60px;;label:modalBody;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;align-items:center;gap:",n.W0[8],";padding:",n.W0[12]," ",n.W0[24],";background-color:",n.qo.background.white,";border-top:1px solid ",n.qo.stroke.neutral,";z-index:",n.W5.positive,";width:100%;height:60px;position:absolute;bottom:0;;label:footerWrapper;"),triggerButton:(0,i.iv)(V.iZ.resetButton,";display:inline-block;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;padding:",n.W0[6]," ",n.W0[6],";border-radius:0 ",n.E0[6]," ",n.E0[6]," 0;z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;background-color:",n.qo.action.primary.default,";color:",n.qo.base.white,";border-left:1px solid ",n.qo.action.primary.focus,";&:hover{background-color:",n.qo.action.primary.hover,";}&:active{background-color:",n.qo.action.primary.focus,";};label:triggerButton;")};function xx(e){return xx="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},xx(e)}function Px(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Lx(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Px(Object(r),!0).forEach((function(t){Ax(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Px(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ax(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==xx(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==xx(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===xx(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Tx(e){return Tx="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Tx(e)}function Dx(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Zx(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Dx(Object(r),!0).forEach((function(t){Rx(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Dx(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Rx(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Tx(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Tx(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Tx(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function jx(e,t){if(e){if("string"==typeof e)return Bx(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Bx(e,t):void 0}}function Bx(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Mx=r(6626);function kx(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return Nx(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Nx(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Nx(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const Gx=function(e){var t=e.value,r=e.onSave,n=e.isDoubleClick,o=void 0!==n&&n,i=e.editTrigger,a=e.topOffset,l=void 0===a?-12:a,u=e.leftOffset,d=void 0===u?12:u,p=e.form,f=e.afterContent,v=kx((0,c.useState)(!1),2),h=v[0],b=v[1],y=kx((0,c.useState)(""),2),m=y[0],g=y[1],E=(0,c.useRef)(null),O=(0,c.useRef)(null),_=(0,c.useRef)(null);(0,c.useEffect)((function(){g(t)}),[t,null==p?void 0:p.watch("sppb_color_variables")]),(0,c.useEffect)((function(){var e;if(h&&E.current&&_.current&&(E.current.focus(),E.current.select(),O.current&&null!==(e=O.current.parentElement)&&void 0!==e&&e.parentElement)){var t,r,n=O.current.parentElement.parentElement.offsetWidth,o=null!==(t=null===(r=O.current.parentElement.parentElement.parentElement)||void 0===r?void 0:r.offsetHeight)&&void 0!==t?t:0;E.current.style.width="".concat(n,"px"),E.current.style.height="".concat(o-8,"px"),E.current.style.top="".concat(l+4,"px"),E.current.style.paddingLeft="".concat(8,"px"),E.current.style.left="".concat(d+4,"px")}}),[h,l,d]),(0,c.useEffect)((function(){(0,A.$K)(i)&&b(!0)}),[i]);var w=function(){b(!1),""!==m.trim()?r(m):g(t)};return(0,s.tZ)("span",{role:"button",onClick:function(){o||b(!0)},onDoubleClick:function(){o&&b(!0)},onKeyDown:A.ZT,tabIndex:0,css:Wx.editableText,children:(0,s.BX)("div",{ref:_,css:Wx.contentWrapper,children:[(0,s.tZ)("span",{ref:O,title:t,css:Wx.text,style:h?{visibility:"hidden"}:{},children:t.replace(/\s/g," ")}),f,h&&(0,s.tZ)("input",{ref:E,value:m,onChange:function(e){return g(e.target.value)},onBlur:w,onKeyDown:function(e){"Enter"===e.key?w():"Escape"===e.key&&(b(!1),g(t))},css:Wx.editInput})]})})};var Wx={editInput:(0,i.iv)(o.c.body(),";border:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[4],";padding:",n.W0[4]," ",n.W0[8],";background:",n.qo.base.white,";position:absolute;min-width:100%;z-index:1;&:focus{outline:none;border-color:",n.qo.action.outline.default,";};label:editInput;"),editableText:{name:"13batsv-editableText",styles:"cursor:pointer;display:block;padding:0;width:100%;position:relative;background:none;border:none;text-align:left;label:editableText;"},contentWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[4],";position:relative;min-width:0;;label:contentWrapper;"),text:(0,i.iv)("display:inline-block;max-width:100px;",V.iZ.textEllipsis,";;label:text;")},Ux=function(e){var t=e.isOpen,r=e.onClickOutside,n=e.position,o=e.popoverRef,i=e.onSetDefault,a=e.isDefaultMode,l=void 0!==a&&a,c=e.onDuplicate,u=e.onDelete,d=e.leftOffset,p=void 0===d?0:d,f=(0,L.$)();return(0,s.tZ)(pe.h,{isOpen:t,onClickOutside:r,children:(0,s.BX)("div",{css:Hx.contextMenu,style:{left:n.left+p,top:n.top},ref:o,children:[i&&(0,s.BX)("div",{css:[Hx.contextMenuItem,l&&Hx.contextMenuItemDisabled,";label:ContextMenuPortal;"],onClick:function(){l||i()},role:"button",tabIndex:0,"aria-disabled":l,onKeyDown:function(e){l||"Enter"!==e.key&&" "!==e.key||i()},children:[(0,s.tZ)(I.Z,{name:"checkMarkCircle",width:16,height:16}),f("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_SET_DEFAULT_MODE")]}),c&&(0,s.BX)("div",{css:Hx.contextMenuItem,onClick:c,role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||c()},children:[(0,s.tZ)(I.Z,{name:"cloneLine",width:16,height:16}),f("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_DUPLICATE")]}),u&&(0,s.BX)("div",{css:Hx.contextMenuItem,onClick:u,role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||u()},children:[(0,s.tZ)(I.Z,{name:"trash",width:16,height:16}),f("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_DELETE")]})]})})},Fx=function(e){var t=e.isOpen,r=e.onClickOutside,n=e.position,o=e.popoverRef,i=e.onDuplicate,a=e.onDelete,l=(0,L.$)();return(0,s.tZ)(pe.h,{isOpen:t,onClickOutside:r,children:(0,s.BX)("div",{css:Hx.contextMenu,style:{left:n.left,top:n.top},ref:o,children:[i&&(0,s.BX)("div",{css:Hx.contextMenuItem,onClick:i,role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||i()},children:[(0,s.tZ)(I.Z,{name:"cloneLine",width:16,height:16}),l("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_DUPLICATE")]}),a&&(0,s.BX)("div",{css:Hx.contextMenuItem,onClick:a,role:"button",tabIndex:0,onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||a()},children:[(0,s.tZ)(I.Z,{name:"trash",width:16,height:16}),l("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_DELETE")]})]})})},Hx={contextMenu:(0,i.iv)("position:absolute;z-index:1000;background-color:",n.qo.base.white,";border-radius:",n.E0[4],";box-shadow:",n.AF.popover,";min-width:160px;padding:",n.W0[4]," 0;;label:contextMenu;"),contextMenuItem:(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";padding:",n.W0[8]," ",n.W0[16],";display:flex;align-items:center;gap:",n.W0[8],";cursor:pointer;transition:background-color 0.2s ease;&:hover{background-color:",n.qo.background.hover,";}svg{color:",n.qo.icon.default,";};label:contextMenuItem;"),contextMenuItemDisabled:(0,i.iv)("cursor:default;color:",n.qo.text.disabled,";&:hover{background-color:transparent;}svg{color:",n.qo.icon.disabled,";};label:contextMenuItemDisabled;")};function qx(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var Vx=function(e){var t,r,n=e.title,o=e.confirmationMessage,i=e.confirmButtonText,a=e.closeModal,l=(0,L.$)(),u=(t=(0,c.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return qx(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?qx(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=u[0],p=u[1];return(0,s.tZ)(St.Z,{onClose:function(){return a({action:"CLOSE",replaceChecked:d})},title:n||l("COM_SPPAGEBUILDER_EDITOR_COLOR_IMPORT_TITLE"),headerCss:zx.modalHeaderCss,contentCss:zx.modalContentCss,wrapperCss:zx.modalWrapper,children:(0,s.BX)("div",{children:[(0,s.BX)("div",{css:zx.content,children:[(0,s.tZ)("p",{children:o||l("COM_SPPAGEBUILDER_EDITOR_COLOR_IMPORT_MESSAGE")}),(0,s.tZ)(re.Z,{labelCss:zx.labelCss,checked:d,onChange:function(e,t){p(e),t.target.checked=e},label:l("COM_SPPAGEBUILDER_EDITOR_COLOR_IMPORT_LABEL_REPLACE_COLORS")})]}),(0,s.BX)("div",{css:zx.footerWrapper,children:[(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){return a({action:"CLOSE"})},children:l("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,s.tZ)(_.Z,{onClick:function(){a({action:"CONFIRM",replaceChecked:d})},children:i||l("COM_SPPAGEBUILDER_EDITOR_COLOR_IMPORT_CONFIRMATION")})]})]})})},zx={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},content:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[16],";padding:",n.W0[16]," ",n.W0[24],";p{",o.c.body(),";};label:content;"),footerWrapper:(0,i.iv)("display:flex;justify-content:end;gap:",n.W0[8],";padding:",n.W0[12]," ",n.W0[16],";box-shadow:",n.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,i.iv)("padding:",n.W0[12]," ",n.W0[24],";;label:modalHeaderCss;"),modalContentCss:(0,i.iv)("background-color:",n.qo.background.white,";;label:modalContentCss;"),labelCss:(0,i.iv)("width:fit-content;",o.c.body("medium"),";;label:labelCss;")};const Xx=r.p+"images/3be2d24ea2a358822a5e.png";function Kx(e){return Kx="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Kx(e)}function $x(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Yx(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$x(Object(r),!0).forEach((function(t){Qx(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$x(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Qx(e,t,r){return(t=Jx(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function Jx(e){var t=function(e,t){if("object"!==Kx(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Kx(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Kx(t)?t:String(t)}function eP(e){return function(e){if(Array.isArray(e))return rP(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tP(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function tP(e,t){if(e){if("string"==typeof e)return rP(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?rP(e,t):void 0}}function rP(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var nP=function(e,t,r){var n=function(e,t){var r=[];return e.forEach((function(e){t.forEach((function(t){"name"!==t.id&&e[t.id]&&r.push({path:[e.name,t.name],value:e[t.id]||""})}))})),r}(e,t);r("sppb_color_variables",n)},oP=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,r=e.replace(/\s+\d+$/,"");if(!t.includes(e.trim()))return e;var n=0;return t.forEach((function(e){if(e.startsWith(r)){var t=e.match(new RegExp("^".concat(r,"\\s+(\\d+)$")));if(t){var o=parseInt(t[1],10);n=Math.max(n,o)}}})),"".concat(r," ").concat(n+1)};function iP(e){return iP="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},iP(e)}function aP(){aP=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==iP(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function lP(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function cP(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){lP(i,n,o,a,l,"next",e)}function l(e){lP(i,n,o,a,l,"throw",e)}a(void 0)}))}}function uP(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function sP(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?uP(Object(r),!0).forEach((function(t){dP(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):uP(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function dP(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==iP(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==iP(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===iP(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function pP(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return fP(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fP(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fP(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var vP=c.forwardRef((function(e,t){var r,o=e.variable,i=e.index,a=e.headers,l=e.hoveredRow,c=e.selectedColumn,u=e.selectedRow,d=e.rowRefs,p=e.contentRef,f=e.rowTriggerRef,v=e.onMouseEnter,h=e.onMouseLeave,b=e.onColorVariableChangePreview,y=e.onColorVariableChangeCommit,m=e.onRowMenuOpen,g=e.dragHandleProps,E=e.form,O=e.isDragging,_=pP(eE(),2),w=(_[0],_[1]);return(0,s.BX)("div",{css:bP.tableRow(a.length,l===o.id),ref:function(e){e&&(d.current[i]=e),"function"==typeof t?t(e):t&&(t.current=e)},onMouseEnter:function(){return v(o.id)},onMouseLeave:h,children:[(0,s.BX)("div",{css:bP.nameCell("name"===c,l===o.id||!!O),children:[(0,s.tZ)(I.Z,sP({name:"dragger",width:16,height:16,css:bP.dragHandle},g)),(0,s.tZ)(I.Z,{name:"colorPaint",width:16,height:16,css:bP.colorIcon}),(0,s.tZ)(Gx,{value:o.name,topOffset:-14,leftOffset:-8,onSave:function(e){return y(o.id,"name",e)},form:E,afterContent:l===o.id||O?(0,s.tZ)("button",{type:"button",onClick:function(e){e.stopPropagation(),e.preventDefault(),w("--sppb-".concat(o.name.toLowerCase().replaceAll(" ","-")))},css:bP.copyButton,title:"Copy variable name",children:(0,s.tZ)(I.Z,{name:"copy",width:14,height:14})}):null})]}),a.filter((function(e){return"name"!==e.id})).map((function(e){return(0,s.BX)("div",{css:bP.colorCell(c===e.id,l===o.id||!!O),children:[(0,s.tZ)(Fe,{color:o[e.id]||"",onChange:function(t){return b(o.id,e.id,t)},onClose:function(t){return y(o.id,e.id,t)},plainSwatch:!0,dimension:{width:16,height:16},isClearable:!1,isGlobalColorsVisible:!1}),(0,s.tZ)(Gx,{value:o[e.id]||"",topOffset:-14,leftOffset:-8,onSave:function(t){return y(o.id,e.id,t)}})]},e.id)})),l===o.id&&(0,s.tZ)("div",{css:bP.rowActionWrapper,ref:u===o.id?f:void 0,style:{right:p.current?"".concat(window.innerWidth-(p.current.getBoundingClientRect().right-parseInt(n.W0[8])),"px"):n.W0[8],top:(null===(r=d.current[i])||void 0===r?void 0:r.getBoundingClientRect().top)+16},children:(0,s.tZ)("button",{type:"button",css:bP.menuTrigger({}),onClick:function(e){e.stopPropagation(),m(o.id)},children:(0,s.tZ)(I.Z,{name:"ellipsisX",width:16,height:16})})})]})})),hP=function(e){var t=e.id,r=e.children,n=(0,C.nB)({id:t}),o=n.attributes,i=n.listeners,a=n.setNodeRef,l=n.transform,u=n.transition,d=n.isDragging,p=l?sP(sP({},l),{},{x:0}):null,f={transform:x.ux.Transform.toString(p),transition:u,zIndex:d?1:void 0,position:d?"relative":void 0};return(0,s.tZ)("div",{ref:a,style:f,css:bP.sortableItem(d),children:c.cloneElement(r,{dragHandleProps:sP(sP({},o),i),isDragging:d})})};var bP={wrapper:{name:"13ro9lf-wrapper",styles:"min-width:749px;scrollbar-width:none;-ms-overflow-style:none;&::-webkit-scrollbar{display:none;};label:wrapper;"},loadingContainer:(0,i.iv)("display:flex;justify-content:center;align-items:center;min-height:350px;background-color:",n.qo.background.white,";;label:loadingContainer;"),emptyStateWrapper:{name:"hnwdir-emptyStateWrapper",styles:">img{max-width:180px;max-height:180px;};label:emptyStateWrapper;"},header:(0,i.iv)("display:flex;justify-content:space-between;align-items:center;margin-bottom:",n.W0[24],";;label:header;"),title:(0,i.iv)(o.c.heading4(),";margin:0;;label:title;"),container:(0,i.iv)("display:flex;background-color:",n.qo.base.white,";border-radius:",n.E0[8],";box-shadow:",n.AF.card,";min-height:348px;position:relative;;label:container;"),addModeBtn:(0,i.iv)("position:absolute;top:0px;right:0px;z-index:4;height:48px;width:50px;border-top-right-radius:",n.E0[10],";background-color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;border:none;border-left:1px solid ",n.qo.stroke.neutral,";outline:none;box-shadow:-2px 0px 2px -1px rgba(0, 0, 0, 0.08);;label:addModeBtn;"),content:{name:"ljwm9n-content",styles:"flex:1;min-width:0;display:flex;flex-direction:column;position:relative;label:content;"},table:{name:"izjvj1-table",styles:"width:100%;min-width:max-content;position:relative;label:table;"},tableHeader:function(e){return(0,i.iv)("display:grid;grid-template-columns:",749/Math.min(e,3)*.8,"px repeat(\n ",e-1,",\n ",749/Math.min(e,3)*.8,"px\n );border-bottom:1px solid ",n.qo.stroke.neutral,";position:sticky;top:0;z-index:3;background:",n.qo.base.white,";width:100%;min-width:max-content;;label:tableHeader;")},tableBodyWrapper:{name:"cxxrnc-tableBodyWrapper",styles:"position:relative;label:tableBodyWrapper;"},tableBody:{name:"21bll9-tableBody",styles:"position:relative;label:tableBody;"},tableRow:function(e,t){return(0,i.iv)("display:grid;grid-template-columns:",749/Math.min(e,3)*.8,"px repeat(\n ",e-1,",\n ",749/Math.min(e,3)*.8,"px\n );align-items:center;position:relative;width:100%;min-width:max-content;background-color:",t?n.qo.background.hover:"transparent",";;label:tableRow;")},nameCell:function(e,t){return(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";padding:14px;display:flex;align-items:center;gap:",n.W0[8],";background-color:",e?n.qo.background.neutral:t?n.qo.background.hover:n.qo.base.white,";&:hover{background-color:",t?n.qo.background.hover:n.qo.base.white,";}position:sticky;left:0;z-index:2;box-shadow:2px 0 3px 0px rgba(0, 0, 0, 0.08);border-right:1px solid ",n.qo.stroke.neutral,";;label:nameCell;")},nameColumn:function(e){return(0,i.iv)(o.c.body(),";color:",n.qo.text.hint,";display:flex;align-items:center;justify-content:space-between;background-color:",e?n.qo.background.neutral:n.qo.base.white,";cursor:pointer;transition:background-color 0.2s ease;padding:14px;padding-left:42px;position:sticky;left:0;z-index:3;box-shadow:2px 0 3px 0px rgba(0, 0, 0, 0.08);border-right:1px solid ",n.qo.stroke.neutral,";;label:nameColumn;")},colorColumn:function(e){return(0,i.iv)(o.c.body(),";color:",n.qo.text.hint,";display:flex;align-items:center;justify-content:space-between;background-color:",e?n.qo.background.neutral:"transparent",";cursor:pointer;transition:background-color 0.2s ease;padding:14px;;label:colorColumn;")},colorIcon:(0,i.iv)("color:",n.qo.icon.default,";;label:colorIcon;"),newVariableButton:(0,i.iv)("min-width:120px;margin-top:",n.W0[12],";margin-left:",n.W0[12],";margin-bottom:",n.W0[12],";padding:",n.W0[8]," ",n.W0[24],";;label:newVariableButton;"),newModeButton:(0,i.iv)("border-radius:",n.E0[8],";border:1px solid ",n.qo.action.outline.default,";&:hover{color:",n.qo.text.primary,";};label:newModeButton;"),rowActionWrapper:(0,i.iv)("position:fixed;right:0;transform:translateX(",n.W0[8],");display:flex;align-items:center;gap:",n.W0[8],";padding-left:",n.W0[16],";background:linear-gradient(90deg, transparent 0%, ",n.qo.background.hover," 25%);padding-right:",n.W0[8],";;label:rowActionWrapper;"),menuTrigger:function(e){var t=e.isLast,r=void 0!==t&&t;return(0,i.iv)("background:none;border:none;cursor:pointer;display:flex;align-items:center;color:",n.qo.icon.default,";margin-right:",r?n.W0[40]:0,";&:hover{color:",n.qo.icon.hover,";};label:menuTrigger;")},contentWrapper:(0,i.iv)("overflow:auto;border-top-left-radius:",n.E0[8],";border-top-right-radius:",n.E0[8],";::-webkit-scrollbar{background-color:transparent;width:6px;height:6px;}::-webkit-scrollbar-thumb{background-color:",n.qo.base.secondary,";border-radius:",n.E0[6],";transition:background-color 0.2s ease;}scrollbar-width:1px;scrollbar-color:",n.qo.base.secondary," transparent;border-bottom:1px solid ",n.qo.stroke.neutral,";max-height:350px;min-height:20px;;label:contentWrapper;"),sortableItem:function(e){return(0,i.iv)("border-bottom:1px solid ",n.qo.stroke.neutral,";&:hover{background-color:",e?n.qo.background.hover:"transparent",";}&:last-child{border-bottom:none;};label:sortableItem;")},buttonWrapper:(0,i.iv)("display:flex;justify-content:flex-end;margin-top:",n.W0[24],";;label:buttonWrapper;"),dragHandle:(0,i.iv)("color:",n.qo.icon.default,";cursor:grab;outline:none;margin-right:",n.W0[8],";&:active{cursor:grabbing;};label:dragHandle;"),colorCell:function(e,t){return(0,i.iv)(o.c.body(),";color:",n.qo.text.neutral,";padding:14px;display:flex;align-items:center;gap:",n.W0[8],";background-color:",e?n.qo.background.neutral:t?n.qo.background.hover:"transparent",";z-index:0;;label:colorCell;")},copyButton:(0,i.iv)("background:none;border:none;padding:2px;cursor:pointer;color:",n.qo.icon.default,";display:flex;align-items:center;justify-content:center;opacity:0.6;transition:opacity 0.2s ease;min-width:20px;height:20px;&:hover{opacity:1;color:",n.qo.icon.hover,";};label:copyButton;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;"),exportImportWrapper:(0,i.iv)("display:flex;align-items:center;gap:",n.W0[12],";;label:exportImportWrapper;"),defaultBadge:(0,i.iv)(o.c.caption(),";color:",n.qo.text.primary,";background-color:",n.qo.background.active,";margin-left:",n.W0[4],";padding:",n.W0[2]," ",n.W0[8],";border-radius:15px;;label:defaultBadge;")};function yP(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const mP=function(e){var t,r,n=e.isEditingTitle,o=e.colorGroup,i=e.setIsEditingTitle,a=e.onChange,l=e.onDelete,u=e.focusOnMount,d=void 0===u||u,p=e.wrapperCss,f=e.isLeftAlignedPlus,v=void 0!==f&&f,h=e.isAddingNewColor,b=void 0!==h&&h,y=e.setIsAddingNewColor,m=(0,L.$)(),g=(t=(0,c.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return yP(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?yP(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),E=g[0],O=g[1];return(0,s.tZ)("div",{css:[gP.panelHeadWrapper({isEditingTitle:n}),p,";label:GlobalColorGroupHeader;"],children:(0,s.BX)(s.HY,{children:[n?(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:gP.TextInputWrapper,children:(0,s.tZ)(Kt.Z,{placeholder:m("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_GLOBAL_COLOR_TITLE_INPUT_PLACEHOLDER"),value:E,onChange:function(e){return O(e)},onKeyDown:function(e){"Escape"===e&&(O(""),i()),"Enter"===e&&(a(E),O(""),i())},focusOnMount:d})}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"check",height:16,width:16}),buttonCss:gP.actionButton,onClick:function(){a(E),O(""),i()}}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"timesAlt",height:16,width:16}),buttonCss:gP.actionButton,onClick:function(){O(""),i()}})]}):(0,A.$K)(o)&&(0,s.BX)(s.HY,{children:[(0,s.tZ)("div",{css:[gP.panelTitle,";label:GlobalColorGroupHeader;"],children:o.name}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"pencil",height:10,width:10}),onClick:function(){O(o.name),i()}}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"trash",height:10,width:10}),onClick:function(){l&&l()}})]}),v&&(0,s.tZ)(s.HY,{children:b?(0,s.tZ)(s.HY,{}):(0,s.tZ)("div",{css:gP.plusButtonWrapper,children:(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"plusCircle",height:20,width:20}),onClick:function(){y&&y(!0)}})})})]})})};var gP={panelHeadWrapper:function(e){var t=e.isEditingTitle;return(0,i.iv)("display:flex;justify-content:start;align-items:center;gap:",n.W0[16],";padding:",n.W0[12]," ",n.W0[24],";",t&&(0,i.iv)("padding:",n.W0[6]," ",n.W0[24],";;label:panelHeadWrapper;"),">button{padding:0;visibility:hidden;opacity:0;transition:visibility 0.3s ease,opacity 0.3s ease;:last-of-type:hover{svg{color:",n.qo.icon.error,";}}svg{color:",n.qo.icon.default,";transition:color 0.3s ease;}}:hover{>button{visibility:visible;opacity:1;}};label:panelHeadWrapper;")},panelTitle:(0,i.iv)(o.c.heading6("medium"),";line-height:",n.Nv[20],";;label:panelTitle;"),TextInputWrapper:{name:"1l30b44-TextInputWrapper",styles:"max-width:200px;label:TextInputWrapper;"},actionButton:{name:"zt280c-actionButton",styles:"width:20px;height:20px;label:actionButton;"},plusButtonWrapper:(0,i.iv)("margin-left:auto;display:grid;place-items:end;>button{padding:0;svg{color:",n.qo.icon.default,";}};label:plusButtonWrapper;")};const EP=r.p+"images/99334ff86cfc1d71b00f.png";function OP(e){return OP="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},OP(e)}function _P(){_P=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof p?t:p,a=Object.create(i.prototype),l=new S(o||[]);return n(a,"_invoke",{value:O(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function p(){}function f(){}function v(){}var h={};c(h,i,(function(){return this}));var b=Object.getPrototypeOf,y=b&&b(b(C([])));y&&y!==t&&r.call(y,i)&&(h=y);var m=v.prototype=p.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function E(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==OP(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function O(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=_(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function _(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,_(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function w(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function I(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(w,this),this.reset(!0)}function C(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:x}}function x(){return{value:void 0,done:!0}}return f.prototype=v,n(m,"constructor",{value:v,configurable:!0}),n(v,"constructor",{value:f,configurable:!0}),f.displayName=c(v,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,v):(e.__proto__=v,c(e,l,"GeneratorFunction")),e.prototype=Object.create(m),e},e.awrap=function(e){return{__await:e}},g(E.prototype),c(E.prototype,a,(function(){return this})),e.AsyncIterator=E,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new E(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},g(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=C,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(I),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),I(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;I(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:C(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function wP(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function IP(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?wP(Object(r),!0).forEach((function(t){SP(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):wP(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function SP(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==OP(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==OP(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===OP(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function CP(e){return function(e){if(Array.isArray(e))return TP(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||AP(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xP(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function PP(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){xP(i,n,o,a,l,"next",e)}function l(e){xP(i,n,o,a,l,"throw",e)}a(void 0)}))}}function LP(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||AP(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function AP(e,t){if(e){if("string"==typeof e)return TP(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?TP(e,t):void 0}}function TP(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var DP={xl:{value:"",unit:"px"},lg:{value:"",unit:"px"},md:{value:"",unit:"px"},sm:{value:"",unit:"px"},xs:{value:"",unit:"px"}},ZP={font:"",uppercase:!1,italic:!1,underline:!1,weight:"",size:tp()(DP),line_height:tp()(DP),letter_spacing:tp()(DP),type:"google"},RP={100:"Thin",200:"ExtraLight",300:"Light",400:"Normal",500:"Medium",600:"SemiBold",700:"Bold",800:"ExtraBold",900:"Black"},jP=function(e){var t=e.typography,r=e.fontsQuery,n=e.isGoogleFontsDisabled,o=e.typographyIndex,i=e.globalTypographyGroups,a=e.groupIndex,l=(0,It.Gc)(),u=LP((0,c.useState)(!1),2),d=u[0],p=u[1],f=(0,c.useRef)(null),v=LP((0,c.useState)([]),2),h=v[0],b=v[1],y=(0,L.$)(),m=(0,ve.p)().showToast,g=(0,rO.S5)(),E=(0,c.useMemo)((function(){var e;return e=t,(0,A.$K)(e)&&(0,vd.isObject)(e)?e:tp()(ZP)}),[t]);(0,c.useEffect)((function(){if(E.font&&r.data){var e=(0,A.$K)(E.type)?E.type:"google";"google"!==e||n?"local"===e&&(0,ub.pE)({family:E.font,variants:h.length>0?h:[String(E.weight)]},"local"):(0,ub.pE)({family:E.font,variants:h.length>0?h:[String(E.weight)]},"google",r.data)}}),[E.font,E.weight,h,r.data,t]);var O="".concat(E.size.xl.value||"00","/").concat(E.line_height.xl.value||"00");return(0,s.BX)(s.HY,{children:[(0,s.BX)("div",{ref:f,css:GP.typographyElementWrapper,children:[(0,s.tZ)("span",{css:GP.font({font:E.font,fontWeight:E.weight,italic:E.italic,underline:E.underline,upperCase:E.uppercase}),title:E.font||y("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_EMPTY_FONT_PLACEHOLDER"),children:E.font||y("COM_SPPAGEBUILDER_EDITOR_TYPOGRAPHY_EMPTY_FONT_PLACEHOLDER")}),(0,s.tZ)("span",{css:GP.fontWeight,children:E.weight&&E.weight in RP?RP[E.weight]:"Default"}),(0,s.tZ)("div",{css:GP.separator,children:(0,s.tZ)("span",{})}),(0,s.tZ)("div",{css:GP.sizeAndLineHeight,children:O}),(0,s.BX)("div",{css:GP.btnContainer,"data-btn-container":!0,children:[(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"pencil",height:12,width:12}),onClick:function(){return p(!0)}}),(0,s.tZ)(_.Z,{variant:"text",icon:(0,s.tZ)(I.Z,{name:"trash",height:12,width:12}),onClick:PP(_P().mark((function e(){var t,r,n,c,u;return _P().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.mutateAsync({group_index:a,typography_index:o});case 2:if(null==(n=e.sent)||null===(t=n.data)||void 0===t||null===(r=t.data)||void 0===r||!r.is_in_use){e.next=6;break}return m({type:"danger",message:null==n||null===(c=n.data)||void 0===c?void 0:c.message}),e.abrupt("return");case 6:u=i.map((function(e,t){if(t!==a)return e;var r=CP(e.typography);return r.splice(o,1),IP(IP({},e),{},{typography:r})})),l.reset(IP(IP({},l.getValues()),{},{typography:u}));case 8:case"end":return e.stop()}}),e)})))})]})]}),(0,s.tZ)(xO,{isOpen:d,showPresets:!1,onClose:function(){return p(!1)},onChange:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=IP({},tp()(e));b(t);var n=CP(i[a].typography);n[o]=IP(IP({},n[o]),r);var c=i.map((function(e,t){return t!==a?e:IP(IP({},e),{},{typography:n})}));l.reset(IP(IP({},l.getValues()),{},{typography:c}))},device:"xl",triggerRef:f,typographyValues:E})]})},BP=function(e){var t,r=e.typographyGroup,n=e.allInstalledFontsQuery,o=e.isGoogleFontsDisabled,i=e.onChange,a=e.onDelete,l=e.groupIndex,u=e.globalTypographyGroups,d=(0,It.Gc)(),p=LP((0,c.useState)(!1),2),f=p[0],v=p[1],h=LP((0,c.useState)(!1),2),b=h[0],y=h[1],m=(0,c.useRef)(null),g=LP((0,c.useState)(null!==(t=null==r?void 0:r.typography)&&void 0!==t?t:[]),2),E=g[0],O=g[1];return(0,c.useEffect)((function(){(0,A.$K)(r.typography)&&O(r.typography)}),[r]),(0,s.BX)("div",{css:GP.groupWrapper,children:[(0,s.BX)("div",{css:GP.panelWrapper,children:[(0,s.tZ)(mP,{isEditingTitle:f,setIsEditingTitle:function(){return v((function(e){return!e}))},onChange:function(e){return i(IP(IP({},r),{},{name:e}))},onDelete:a,colorGroup:r}),(0,s.tZ)("div",{css:GP.panelItemWrapper,children:(0,s.tZ)("div",{css:GP.plusButtonWrapper,children:(0,s.tZ)(_.Z,{variant:"text",ref:m,icon:(0,s.tZ)(I.Z,{name:"plusCircle",height:24,width:24}),onClick:function(){y(!0);var e=IP({},tp()(ZP)),t=[].concat(CP(E),[e]),r=u.map((function(e,r){return r!==l?e:IP(IP({},e),{},{typography:t})}));O(t),d.reset(IP(IP({},d.getValues()),{},{typography:r}))}})})})]}),(0,s.tZ)("div",{css:GP.typographyWrapper,children:null==E?void 0:E.map((function(e,t){return(0,s.tZ)(jP,{typography:e,fontsQuery:n,isGoogleFontsDisabled:o,typographyIndex:t,globalTypographyGroups:u,groupIndex:l},t)}))}),(0,s.tZ)(xO,{isOpen:b,showPresets:!1,onClose:function(){return y(!1)},onChange:function(e){var t=IP({},tp()(e));null==E||E.pop();var r=[].concat(CP(E),[t]),n=u.map((function(e,t){return t!==l?e:IP(IP({},e),{},{typography:r})}));O(r),d.reset(IP(IP({},d.getValues()),{},{typography:n}))},device:"xl",triggerRef:m,typographyValues:E&&E.length>0?E[E.length-1]:tp()(ZP)})]})};var MP={name:"1v13n35-font",styles:"text-transform:uppercase;label:font;"},kP={name:"10mr6hu-font",styles:"text-decoration:underline;label:font;"},NP={name:"gwvx45-font",styles:"font-style:italic;label:font;"},GP={wrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[24],";;label:wrapper;"),heading:(0,i.iv)(o.c.heading4("medium")," ",V.iZ.flexCenter(),";justify-content:start;gap:",n.W0[4],";;label:heading;"),cardWrapperCss:(0,i.iv)("border-radius:",n.E0[8],";box-shadow:",n.AF.base,";width:630px;;label:cardWrapperCss;"),cardWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[8],";;label:cardWrapper;"),buttonWrapper:(0,i.iv)("display:flex;justify-content:end;&>button{border-radius:",n.E0[8],";};label:buttonWrapper;"),globalColorGroupHeader:(0,i.iv)("padding:",n.W0[24],";;label:globalColorGroupHeader;"),addNewButtonWrapper:(0,i.iv)("padding:",n.W0[24],";;label:addNewButtonWrapper;"),proBannerContentCss:(0,i.iv)("padding:",n.W0[12],";;label:proBannerContentCss;"),panelWrapper:(0,i.iv)("display:flex;justify-content:space-between;margin-top:",n.W0[12],";;label:panelWrapper;"),groupWrapper:(0,i.iv)("display:flex;flex-direction:column;padding-bottom:",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";;label:groupWrapper;"),typographyWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",n.W0[4],";padding:0 ",n.W0[24],";;label:typographyWrapper;"),panelItemWrapper:(0,i.iv)("display:flex;margin-right:",n.W0[24],";;label:panelItemWrapper;"),plusButtonWrapper:(0,i.iv)("display:grid;place-items:center;>button{padding:0;svg{color:",n.qo.icon.default,";}};label:plusButtonWrapper;"),typographyElementWrapper:(0,i.iv)(V.iZ.resetButton,";",o.c.body(),";width:100%;height:32px;display:flex;align-items:center;position:relative;:focus{box-shadow:",n.AF.outline,";}:hover{color:",n.qo.text.hover,";[data-btn-container]{visibility:visible;}};label:typographyElementWrapper;"),font:function(e){var t=e.font,r=e.fontWeight,o=void 0===r?"initial":r,a=e.italic,l=void 0!==a&&a,c=e.underline,u=void 0!==c&&c,s=e.upperCase,d=void 0!==s&&s;return(0,i.iv)("text-align:left;font-weight:",o,";",V.iZ.textEllipsis,";margin-right:",n.W0[8],";",!!t&&(0,i.iv)("font-family:",t,";;label:font;")," ",l&&NP," ",u&&kP," ",d&&MP,";;label:font;")},separator:(0,i.iv)(V.iZ.flexCenter(),";width:16px;height:16px;span{width:2px;height:2px;background-color:",n.qo.icon.default,";border-radius:",n.E0.circle,";margin:auto;};label:separator;"),sizeAndLineHeight:(0,i.iv)("color:",n.qo.text.hints,";max-width:60px;width:100%;;label:sizeAndLineHeight;"),fontWeight:(0,i.iv)("color:",n.qo.text.hints,";max-width:60px;;label:fontWeight;"),btnContainer:(0,i.iv)("visibility:hidden;position:absolute;right:-",n.W0[10],";>button{padding:",n.W0[6]," ",n.W0[8],";cursor:pointer;};label:btnContainer;")},WP=c.lazy((function(){return r.e(850).then(r.bind(r,6850))})),UP=c.lazy((function(){return r.e(863).then(r.bind(r,4977))})),FP=c.lazy((function(){return r.e(359).then(r.bind(r,1736))})),HP=c.lazy((function(){return r.e(556).then(r.bind(r,556))})),qP=c.lazy((function(){return Promise.all([r.e(254),r.e(245)]).then(r.bind(r,4245))})),VP=c.lazy((function(){return Promise.all([r.e(254),r.e(680)]).then(r.bind(r,8178))})),zP=c.lazy((function(){return r.e(513).then(r.bind(r,7513))})),XP=c.lazy((function(){return r.e(357).then(r.bind(r,5357))})),KP=c.lazy((function(){return r.e(81).then(r.bind(r,7081))})),$P=c.lazy((function(){return r.e(983).then(r.bind(r,7639))})),YP=c.lazy((function(){return r.e(4).then(r.bind(r,1004))})),QP=c.lazy((function(){return r.e(68).then(r.bind(r,4068))}));const JP=[{path:Oo.F.Home.template,element:(0,s.tZ)((function(){var e=ma((function(e){return e.isActive}));return(0,s.BX)("div",{css:UI.wrapper,children:[(0,s.tZ)("div",{css:UI.topbar,children:(0,s.tZ)(GI,{})}),(0,s.BX)("div",{css:UI.layout,children:[(0,s.tZ)(Aa,{}),(0,s.tZ)("div",{css:UI.main(e),children:(0,s.tZ)(_o.j3,{})})]})]})}),{}),children:[{index:!0,element:(0,s.tZ)(_o.Fg,{to:Oo.F.PageList.template,replace:!0})},{path:Oo.F.PageList.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(WP,{})})},{path:Oo.F.DynamicContent.template,element:(0,s.tZ)((function(e){var t,r,n,o,i=e.children,a=(n=(0,c.useState)([]),o=2,function(e){if(Array.isArray(e))return e}(n)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(n,o)||function(e,t){if(e){if("string"==typeof e)return Ei(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ei(e,t):void 0}}(n,o)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],u=a[1],d=(0,mo.lL)(),p=(0,L.$)(),f=No(),v=null===(t=(0,er.Q)().collection)||void 0===t?void 0:t.create;return(0,c.useEffect)((function(){d.data&&u(d.data)}),[d.data]),d.isLoading?(0,s.tZ)(Ye.fz,{}):A.Eu?(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:p("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_DYNAMIC_CONTENT"),subtitle:p("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_DYNAMIC_CONTENT")}),(0,s.tZ)(S.Z,{children:(0,s.tZ)(Yo.Z,{emptyStateImage:Qo,imageAltText:"upgrade to pro",title:p("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_PRO_TITLE"),content:p("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_PRO_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:wi.proBannerContentCss,wrapperCss:wi.proPopupWrapperCss})})]}):null!==(r=d.data)&&void 0!==r&&r.length?(0,s.tZ)(Oi.Provider,{value:{collections:l,updateCollections:u},children:i}):(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:p("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_DYNAMIC_CONTENT"),subtitle:p("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_DYNAMIC_CONTENT"),action:(0,s.tZ)(yi,{showExport:!1})}),(0,s.tZ)(S.Z,{children:(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:gi,imageAltText:p("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),title:p("COM_SPPAGEBUILDER_EDITOR_NO_COLLECTION_YET"),content:p("COM_SPPAGEBUILDER_EDITOR_CREATE_FIRST_COLLECTION"),wrapperCss:wi.emptyWrapperCss,action:(0,s.BX)("div",{css:wi.emptyActionWrapper,children:[(0,s.tZ)(_.Z,{onClick:function(){f({isNew:!0,collections:l})},icon:(0,s.tZ)(I.Z,{name:"plus"}),disabled:!v,children:p("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_COLLECTION")}),(0,s.tZ)(Fo,{})]}),removeBorderRadius:!0})})]})}),{children:(0,s.tZ)((function(){var e,t=(0,L.$)(),r=No(),n=_i(),o=n.collections,i=n.updateCollections,a=(0,er.Q)(),l=a.admin,u=null===(e=a.collection)||void 0===e?void 0:e.create,d=(0,mo.TN)(),p=pi((0,c.useState)(null),2),f=p[0],v=p[1],h=(0,_o.s0)(),b=Ko(),y=(0,rt.O)({defaultValues:{collections:o.filter((function(e){return e.id!==zo.u.ARTICLES&&e.id!==zo.u.TAGS})),items:[]}}),m=(0,zn.Dy)((0,zn.VT)(zn.we,{activationConstraint:{distance:10}})),g=o.filter((function(e){return e.id!==zo.u.ARTICLES&&e.id!==zo.u.TAGS})).find((function(e){return e.id===f}));return(0,c.useEffect)((function(){var e=o.filter((function(e){return e.id!==zo.u.ARTICLES&&e.id!==zo.u.TAGS}));b===Oo.F.DynamicContent.template&&e.length&&h(Oo.F.DynamicContentSingleCollection.buildLink({collectionId:e[0].id.toString()}))}),[o,b,h]),A.Eu?(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:t("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_DYNAMIC_CONTENT"),subtitle:t("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_DYNAMIC_CONTENT")}),(0,s.tZ)(S.Z,{children:(0,s.tZ)(Yo.Z,{emptyStateImage:Qo,imageAltText:"upgrade to pro",title:t("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_PRO_TITLE"),content:t("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_PRO_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:mi.proBannerContentCss,wrapperCss:mi.proPopupWrapperCss})})]}):(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:t("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_DYNAMIC_CONTENT"),subtitle:t("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_DYNAMIC_CONTENT"),action:(0,s.tZ)(yi,{})}),(0,s.tZ)(S.Z,{children:(0,s.tZ)(It.RV,li(li({},y),{},{children:(0,s.BX)("div",{css:mi.wrapper,children:[(0,s.BX)("div",{css:mi.sidebar,children:[(0,s.BX)("div",{css:mi.addNewCollectionWrapper,children:[(0,s.tZ)(_.Z,{disabled:!u,onClick:function(){r({isNew:!0,collections:o})},icon:(0,s.tZ)(I.Z,{name:"plus"}),variant:"secondary",children:t("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_COLLECTION")}),(0,s.tZ)(Fo,{})]}),(0,s.BX)(zn.LB,{sensors:m,collisionDetection:zn.pE,onDragStart:function(e){v(e.active.id)},onDragEnd:function(e){var t=e.active,r=e.over;if(r&&t.id!==r.id){var n=o.findIndex((function(e){return e.id===t.id})),a=o.findIndex((function(e){return e.id===r.id}));i((function(e){var t,r=(0,C.Rp)(function(e){if(Array.isArray(e))return vi(e)}(t=e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||fi(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),n,a),o=r.map((function(e){return e.id}));return d.mutateAsync({pks:o}),r}))}},children:[(0,s.tZ)(C.Fo,{items:o.filter((function(e){return e.id!==zo.u.ARTICLES&&e.id!==zo.u.TAGS})),strategy:C.qw,children:o.filter((function(e){return e.id!==zo.u.ARTICLES&&e.id!==zo.u.TAGS})).map((function(e){return(0,s.tZ)(bi,{collection:e,canEditPermissions:l,canCreateCollection:u},e.id)}))}),(0,s.tZ)(zn.y9,{children:g&&(0,s.tZ)(bi,{collection:g,canCreateCollection:u,canEditPermissions:l,isOverlay:!0})})]})]}),(0,s.tZ)("div",{children:(0,s.tZ)(_o.j3,{})})]})}))})]})}),{})}),children:[{index:!0,element:(0,s.tZ)(FI,{component:(0,s.tZ)(qS,{})})},{path:Oo.F.DynamicContentSingleCollection.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(qS,{})})},{path:Oo.F.DynamicContentCreateItem.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)((function(){var e=(0,$o.Z)(Oo.F.DynamicContentSingleCollection).collectionId,t=(0,mo.hF)({mode:"create",collection_id:e}),r=(0,rt.O)({defaultValues:{}}),n=r.getValues();return(0,c.useEffect)((function(){t.data&&r.reset.call(null,Lx({},Object.fromEntries(t.data.map((function(e){return null!=n&&n[e.key]?[e.key,n[e.key]]:[e.key,e.value]})))))}),[t.data,r.reset]),t.isLoading||!t.data?(0,s.tZ)(Ye.ZP,{}):(0,s.tZ)(It.RV,Lx(Lx({},r),{},{children:(0,s.tZ)(Sx,{fields:t.data,isNested:!1,id:e,itemId:null})}))}),{})})},{path:Oo.F.DynamicContentEditItem.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)((function(){var e=(0,$o.Z)(Oo.F.DynamicContentEditItem),t=e.collectionId,r=e.itemId,n=(0,mo.hF)({mode:"edit",item_id:r}),o=(0,rt.O)({defaultValues:{}}),i=o.getValues();return(0,c.useEffect)((function(){n.data&&o.reset.call(null,Zx({},Object.fromEntries(n.data.map((function(e){return null!=i&&i[e.key]?[e.key,i[e.key]]:"image"===e.type&&e.value?[e.key,H(e.value)]:[e.key,e.value]})))))}),[n.data,o.reset]),n.isLoading||!n.data?(0,s.tZ)(Ye.ZP,{}):(0,s.tZ)(It.RV,Zx(Zx({},o),{},{children:(0,s.tZ)(Sx,{fields:n.data,isNested:!1,id:t,itemId:r})}))}),{})})}]},{path:Oo.F.Addons.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(UP,{})})},{path:Oo.F.CustomIcons.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(FP,{})})},{path:Oo.F.MediaManager.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)((function(){var e,t,r=(0,L.$)(),n=(0,c.useRef)(null),o=(e=(0,c.useState)(),t=2,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||jx(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=(0,er.Q)();return(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:r("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_PAGE_TITLE"),subtitle:r("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_PAGE_SUB_TITLE"),action:(0,s.BX)("div",{children:[(0,s.tZ)(_.Z,{icon:(0,s.tZ)(I.Z,{name:"upload"}),onClick:function(){var e;null===(e=n.current)||void 0===e||e.click()},disabled:!l.create,children:r("COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_SIDEBAR_UPLOAD_FILES")}),(0,s.tZ)("input",{ref:n,type:"file","aria-hidden":"true",multiple:!0,hidden:!0,onChange:function(e){var t=e.target.files;t&&l.create&&(a(function(e){return function(e){if(Array.isArray(e))return Bx(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||jx(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t)),e.target.value="")}})]})}),(0,s.tZ)(S.Z,{children:(0,s.tZ)(bn,{isInsideModal:!1,files:i,clearFile:function(){return a([])}})})]})}),{})})},{path:Oo.F.Integrations.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(HP,{})})},{path:Oo.F.Languages.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(zP,{})})},{path:Oo.F.Settings.template,element:(0,s.tZ)((function(){var e=(0,L.$)(),t=Ko(),r=(0,rO.U1)(),n=(0,er.Q)(),o=(0,rt.O)({defaultValues:{disable_google_fonts:0,disable_og:0,disable_tc:0,enable_gravatar:0,disableanimatecss:0,disablecss:0,fb_app_id:"",fontawesome:0,ig_token:{appId:"",appSecret:"",accessToken:"",igId:"",app_id:"",app_secret:""},gmap_api:"",joomshaper_email:"",joomshaper_license_key:"",lazyloadimg:0,lazyplaceholder:"",production_mode:0,colors:[],typography:[],container_max_width:1320,google_font_api_key:"",openai_api_key:"",openai_model:"gpt-3.5-turbo",sppb_color_variables:null,sppb_default_color_mode:"",show_color_switcher:0,max_versions_for_page:20}}),i=o.reset;return(0,c.useEffect)((function(){i(r.data)}),[i,r.data]),(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_TITLE"),subtitle:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_SUB_TITLE")}),(0,s.tZ)(S.Z,{children:(0,s.BX)("div",{css:KI.wrapper,children:[(0,s.tZ)("div",{css:KI.sidebar,children:XI.map((function(r,o){var i=r.pathnames.includes(t),a=!n.admin;return a?(0,s.BX)("div",{"aria-disabled":a,css:KI.routeItem({isActive:!1,isDisabled:a}),children:[(0,s.tZ)(I.Z,{name:r.icon,width:16,height:16}),(0,s.tZ)("span",{children:e(r.text)}),r.showProLabel&&(0,s.tZ)(ga.Z,{})]},o):(0,s.BX)(Jo.rU,{to:r.link,css:KI.routeItem({isActive:i,isDisabled:!1}),title:e(r.text),children:[(0,s.tZ)(I.Z,{name:r.icon,width:16,height:16}),(0,s.tZ)("span",{children:e(r.text)}),r.showProLabel&&(0,s.tZ)(ga.Z,{})]},o)}))}),(0,s.tZ)("form",{css:KI.outletWrapper,children:n.admin?(0,s.tZ)(It.RV,VI(VI({},o),{},{children:(0,s.tZ)(_o.j3,{})})):(0,s.tZ)(Yo.Z,{emptyStateImage:oc,imageAltText:e("COM_SPPAGEBUILDER_EDITOR_RESTRICTED_AREA_TITLE"),title:e("COM_SPPAGEBUILDER_EDITOR_RESTRICTED_AREA_TITLE"),content:e("COM_SPPAGEBUILDER_EDITOR_RESTRICTED_AREA_SUBTITLE"),orientation:"vertical"})})]})})]})}),{}),children:[{index:!0,element:(0,s.tZ)(FI,{component:(0,s.tZ)(XP,{})})},{path:Oo.F.License.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(KP,{})})},{path:Oo.F.ColorsLibrary.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)((function(){var e,t=(0,L.$)(),r=(0,It.Gc)(),n=(0,rO.f2)(),o=function(){var e=(0,ve.p)().showToast,t=(0,L.$)(),r=(0,ye.NL)();return(0,me.D)({mutationKey:["ImportColorPresets"],mutationFn:Ee,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_IMPORT_COLOR_PRESETS_SUCCESS_MESSAGE")}),r.invalidateQueries(["ApplicationSettings"])},onError:function(t){e({type:"danger",message:t.message})}})}(),i=function(){var e=(0,ve.p)().showToast,t=(0,L.$)();return(0,me.D)({mutationKey:["ExportColorPresets"],mutationFn:Oe,onSuccess:function(r){(0,A.OV)(JSON.stringify(r.data)),e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_EXPORT_COLOR_PRESETS_SUCCESS_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})}(),a=(e=(0,Zt.d)().showModal,function(t){return e({component:Vx,props:t,closeOnOutsideClick:!0})}),l=(0,c.useRef)(null),u=(0,c.useRef)([]),d=(0,c.useRef)(null),p=(0,c.useRef)(null),f=(0,c.useRef)([]),v=pP((0,c.useState)([]),2),h=v[0],b=v[1],y=pP((0,c.useState)([]),2),m=y[0],g=y[1],E=pP((0,c.useState)(null),2),O=E[0],S=E[1],x=pP((0,c.useState)(!1),2),P=x[0],T=x[1],D=r.watch("sppb_color_variables"),Z=r.watch("sppb_default_color_mode")||"";(0,c.useEffect)((function(){if(D&&D.length){var e=function(e){if(!e)return[];if(0===e.length)return[{id:"name",name:"Name"},{id:"default",name:"Default"}];var t=new Set;return e.forEach((function(e){t.add(e.path[1])})),[{id:"name",name:"Name"}].concat(eP(Array.from(t).map((function(e){return{id:e.toLowerCase(),name:e}}))))}(D),t=function(e){if(!e)return[];if(0===e.length)return[];var t=new Map;return e.forEach((function(e){var r,n,o=(r=e.path,n=2,function(e){if(Array.isArray(e))return e}(r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,n)||tP(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1],l=t.get(i);l||(l={id:"var-".concat(i.toLowerCase().replace(/\s+/g,"-")),name:i},t.set(i,l)),l[a.toLowerCase()]=e.value})),Array.from(t.values())}(D);b(e),g(t)}}),[D]),(0,c.useEffect)((function(){if(Z){var e=h.filter((function(e){return"name"!==e.id})).map((function(e){return e.name}));e.length>0&&!e.includes(Z)&&r.setValue("sppb_default_color_mode",e[0]||"")}}),[Z,r,h]);var R=pP((0,c.useState)(null),2),j=R[0],B=R[1],M=pP((0,c.useState)(!1),2),k=M[0],N=M[1],G=(0,pe.l)({isOpen:k,isDropdown:!0,gap:5}),W=G.triggerRef,U=G.position,F=G.popoverRef,H=pP((0,c.useState)(null),2),q=H[0],V=H[1],z=pP((0,c.useState)(null),2),X=z[0],K=z[1],$=pP((0,c.useState)(!1),2),Y=$[0],Q=$[1],J=(0,pe.l)({isOpen:Y,isDropdown:!0,gap:5}),ee=J.triggerRef,te=J.position,re=J.popoverRef;(0,c.useEffect)((function(){var e=d.current;if(e){var t=e.scrollTop,r=function(){var r=e.scrollTop;r!==t&&(t=r,null!==q&&V(null))};return e.addEventListener("scroll",r,!0),function(){e.removeEventListener("scroll",r,!0)}}}),[q]),(0,c.useEffect)((function(){var e=p.current;if(e){var t=e.scrollTop,r=function(){var r=e.scrollTop;r!==t&&(t=r,null!==q&&V(null))};return e.addEventListener("scroll",r,!0),function(){e.removeEventListener("scroll",r,!0)}}}),[q]),(0,c.useEffect)((function(){var e=window.pageYOffset,t=function(){var t=window.pageYOffset;t!==e&&(e=t,null!==q&&V(null))};return window.addEventListener("scroll",t,!0),function(){window.removeEventListener("scroll",t,!0)}}),[q]),(0,c.useEffect)((function(){var e=document.documentElement.style,t=[];null!=D&&D.length&&D.forEach((function(r){var n=r.path,o=r.value,i=pP(n||[],1)[0];if(i){var a="--sppb-".concat(i.toLowerCase().replace(/ /g,"-"));t.push(a),e.setProperty(a,o||"")}})),f.current.forEach((function(r){t.includes(r)||e.removeProperty(r)})),f.current=t}),[D]);var ne=function(){var e=function(e,t,r){if(!e.length){for(var n="Variable",o=1;e.some((function(e){return e.name===n}));)n="Variable ".concat(o),o++;var i=[{id:"var-".concat(Date.now()),name:n,default:"#7A7C85"}],a=[{id:"name",name:"Name"},{id:"default",name:"Default"}];return nP(i,a,r),{newVariables:i,newHeaders:a}}for(var l="Variable",c=1;e.some((function(e){return e.name===l}));)l="Variable ".concat(c),c++;var u=t.reduce((function(e,t){return"name"!==t.id&&(e[t.id]="#7A7C85"),e}),{}),s=Yx({id:"var-".concat(Date.now()),name:l},u),d=[].concat(eP(e),[s]);return nP(d,t,r),{newVariables:d,newHeaders:t}}(m,h,r.setValue),t=e.newVariables,n=e.newHeaders;g(t),b(n),setTimeout((function(){d.current&&(d.current.scrollTop=d.current.scrollHeight)}),0)},oe=function(e,t,r){g((function(n){return n.map((function(n){return n.id===e?sP(sP({},n),{},dP({},t,r)):n}))}))},ie=function(e,t,n){var o=function(e,t,r,n,o,i){var a=n.map((function(o){if(o.id===e){if("name"===t){var i=n.filter((function(t){return t.id!==e})).map((function(e){return e.name}));r=oP(r,i)}return Yx(Yx({},o),{},Qx({},t,r))}return o}));return nP(a,o,i),a}(e,t,n,m,h,r.setValue);g(o)},ae=function(e){B(j===e?null:e)},le=function(){var e;return(null===(e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:h).find((function(e){return"name"!==e.id})))||void 0===e?void 0:e.name)||""},ce=Z||le(),ue=function(e){var t=h.find((function(t){return t.id===e})),n=function(e,t,r,n){if(r.length<=2)return null;var o=r.filter((function(t){return t.id!==e})),i=t.map((function(t){return t[e],function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(t,[e].map(Jx))}));return nP(i,o,n),{newVariables:i,newHeaders:o}}(e,m,h,r.setValue);n&&(g(n.newVariables),b(n.newHeaders),t&&Z&&Z===t.name&&r.setValue("sppb_default_color_mode",le(n.newHeaders))),B(null),N(!1)},se=(0,zn.Dy)((0,zn.VT)(zn.we),(0,zn.VT)(zn.Lg,{coordinateGetter:C.is})),de=j?h.find((function(e){return e.id===j})):void 0,fe=Boolean(de&&de.name.trim()),he=Boolean(fe&&(null==de?void 0:de.name)===ce);if(A.Eu)return(0,s.tZ)(Yo.Z,{emptyStateImage:Xx,imageAltText:"upgrade to pro",title:t("COM_SPPAGEBUILDER_EDITOR_CUSTOM_COLOR_LIBRARY"),content:t("COM_SPPAGEBUILDER_EDITOR_CUSTOM_COLOR_LIBRARY_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:bP.proBannerContentCss});function be(){return be=cP(aP().mark((function e(){var t,r,n,i;return aP().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return(t=document.createElement("input")).type="file",t.accept=".json",e.next=5,a({});case 5:r=e.sent,n=r.action,i=r.replaceChecked,t.onchange=function(){var e=cP(aP().mark((function e(t){var r,n;return aP().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(n=null===(r=t.target.files)||void 0===r?void 0:r[0]){e.next=3;break}return e.abrupt("return");case 3:return e.next=5,o.mutateAsync({file:n,override:i});case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),"CONFIRM"===n&&t.click();case 10:case"end":return e.stop()}}),e)}))),be.apply(this,arguments)}function ge(){return(ge=cP(aP().mark((function e(){return aP().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i.mutateAsync();case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}return(0,s.BX)("div",{css:bP.wrapper,children:[(0,s.BX)("div",{css:bP.header,children:[(0,s.tZ)("h1",{css:bP.title,children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_TITLE")}),(0,s.BX)("div",{css:bP.exportImportWrapper,children:[(0,s.tZ)(_.Z,{onClick:function(){return be.apply(this,arguments)},icon:(0,s.tZ)(I.Z,{name:"importAlt",noFill:!0}),variant:"secondary",children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_IMPORT")}),(0,s.tZ)(_.Z,{onClick:function(){return ge.apply(this,arguments)},icon:(0,s.tZ)(I.Z,{name:"exportAlt",noFill:!0}),variant:"secondary",children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_EXPORT")})]})]}),null===D?(0,s.tZ)("div",{css:bP.loadingContainer,children:(0,s.tZ)(Ye.g4,{})}):0===m.length?(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:Xa,imageAltText:t("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),title:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_NO_COLORS"),content:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_NO_COLORS_DESC"),removeBorderRadius:!0,action:(0,s.tZ)(_.Z,{variant:"primary",type:"button",onClick:ne,children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_NEW_VARIABLE")}),wrapperCss:bP.emptyStateWrapper}):(0,s.BX)("div",{css:bP.container,children:[(0,s.BX)("div",{css:bP.content,ref:l,children:[(0,s.tZ)("div",{css:bP.contentWrapper,ref:d,children:(0,s.BX)("div",{css:bP.table,children:[(0,s.tZ)("div",{css:bP.tableHeader(h.length),children:h.map((function(e,n){return(0,s.BX)("div",{ref:e.id===j?W:void 0,css:"name"===e.id?bP.nameColumn(j===e.id):bP.colorColumn(j===e.id),onClick:function(){return"name"!==e.id&&ae(e.id)},onKeyDown:function(t){"Enter"!==t.key&&" "!==t.key||"name"!==e.id&&ae(e.id)},role:"button",tabIndex:0,children:["name"===e.id?(0,s.tZ)(s.HY,{children:e.name}):(0,s.tZ)(Gx,{value:e.name,topOffset:-14,leftOffset:-8,onSave:function(t){return function(e,t){var n=h.find((function(t){return t.id===e})),o=function(e,t,r,n,o){var i=n.filter((function(t){return t.id!==e})).map((function(e){return e.name})),a=oP(t,i),l=n.map((function(t){return t.id===e?Yx(Yx({},t),{},{name:a}):t}));return nP(r,l,o),l}(e,t,m,h,r.setValue);if(b(o),n&&Z&&Z===n.name){var i=o.find((function(t){return t.id===e}));i&&r.setValue("sppb_default_color_mode",i.name)}}(e.id,t)},isDoubleClick:!0,editTrigger:e.name===O?P:void 0,form:r,afterContent:e.name===ce&&e.name.trim()?(0,s.tZ)(Mx.Z,{badgeCss:bP.defaultBadge,children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_DEFAULT_BADGE")}):null}),j===e.id&&"name"!==e.id&&(0,s.tZ)("button",{type:"button",css:bP.menuTrigger({isLast:n===h.length-1}),onClick:function(e){e.stopPropagation(),N(!0)},children:(0,s.tZ)(I.Z,{name:"ellipsisX",width:16,height:16})})]},e.id)}))}),(0,s.tZ)("div",{css:bP.tableBodyWrapper,ref:p,children:(0,s.tZ)(zn.LB,{sensors:se,collisionDetection:zn.pE,onDragEnd:function(e){var t=e.active,n=e.over;null!=n&&n.id&&t.id!==n.id&&g((function(e){var o=e.findIndex((function(e){return e.id===t.id})),i=e.findIndex((function(e){return e.id===n.id})),a=(0,C.Rp)(e,o,i);return nP(a,h,r.setValue),a}))},modifiers:[go.l],children:(0,s.tZ)(C.Fo,{items:m.map((function(e){return e.id})),strategy:C.qw,children:(0,s.tZ)("div",{css:bP.tableBody,children:m.map((function(e,t){return(0,s.tZ)(hP,{id:e.id,children:(0,s.tZ)(vP,{variable:e,index:t,headers:h,hoveredRow:q,selectedColumn:j,selectedRow:X,rowRefs:u,contentRef:l,rowTriggerRef:ee,onMouseEnter:V,onMouseLeave:function(){return V(null)},onColorVariableChangePreview:oe,onColorVariableChangeCommit:ie,onRowMenuOpen:function(e){K(e),Q(!0)},form:r})},e.id)}))})})})})]})}),(0,s.tZ)("div",{children:(0,s.tZ)(_.Z,{variant:"primary",type:"button",onClick:ne,css:bP.newVariableButton,children:t("COM_SPPAGEBUILDER_EDITOR_GLOBAL_COLORS_NEW_VARIABLE")})})]}),m.length>0&&(0,s.tZ)("button",{type:"button",css:bP.addModeBtn,onClick:function(){var e=function(e,t,r){for(var n="Mode",o=1;t.some((function(e){return e.id===n.toLowerCase().replace(/\s+/g,"_")}))||t.some((function(e){return e.name===n}));)n="Mode ".concat(o),o++;var i=n.toLowerCase().replace(/\s+/g,"_"),a=[].concat(eP(t),[{id:i,name:n}]),l=e.map((function(e){return Yx(Yx({},e),{},Qx({},i,"#7A7C85"))}));return nP(l,a,r),{newVariables:l,newHeaders:a}}(m,h,r.setValue),t=e.newVariables,n=e.newHeaders;g(t),b(n),setTimeout((function(){d.current&&(d.current.scrollLeft=d.current.scrollWidth)}),0);var o=n[n.length-1];null!=o&&o.name&&"name"!==o.id&&(S(o.name),T((function(e){return!e})))},children:(0,s.tZ)(I.Z,{name:"plus",width:16,height:16,css:bP.colorIcon})})]}),m.length>=0&&(0,s.tZ)("div",{css:bP.buttonWrapper,children:(0,s.tZ)(_.Z,{type:"submit",loading:n.isLoading,onClick:r.handleSubmit((function(e){n.mutate(e)})),disabled:n.isLoading,children:t("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_BUTTON_TEXT_SAVE_CHANGES")})}),(0,s.tZ)(Ux,{isOpen:k&&null!==j&&"name"!==j,onClickOutside:function(){return N(!1)},position:U,popoverRef:F,onSetDefault:fe?function(){return j&&(e=j,void((t=h.find((function(t){return t.id===e})))&&"name"!==t.id&&t.name.trim()&&(r.setValue("sppb_default_color_mode",t.name),N(!1))));var e,t}:void 0,isDefaultMode:he,onDuplicate:function(){return j&&(e=function(e,t,r,n){var o=r.find((function(t){return t.id===e}));if(!o)return{newVariables:t,newHeaders:r};var i=r.map((function(e){return e.name})),a=oP(o.name,i),l={id:"".concat(e,"_copy_").concat(Date.now()),name:a},c=[].concat(eP(r),[l]),u=t.map((function(t){return Yx(Yx({},t),{},Qx({},l.id,t[e]))}));return nP(u,c,n),{newVariables:u,newHeaders:c}}(j,m,h,r.setValue),g(e.newVariables),b(e.newHeaders),N(!1),void setTimeout((function(){d.current&&(d.current.scrollLeft=d.current.scrollWidth)}),0));var e},onDelete:h.length>2?function(){return j&&ue(j)}:void 0,leftOffset:Math.floor(749/Math.min(h.length,3)*.8/2)}),(0,s.tZ)(Fx,{isOpen:Y&&null!==X,onClickOutside:function(){Q(!1),K(null)},position:te,popoverRef:re,onDuplicate:function(){return X&&(e=function(e,t,r,n){var o=t.find((function(t){return t.id===e}));if(!o)return t;var i=t.map((function(e){return e.name})),a=oP(o.name,i),l=Yx(Yx({},o),{},{id:"var-".concat(Date.now()),name:a}),c=[].concat(eP(t),[l]);return nP(c,r,n),c}(X,m,h,r.setValue),g(e),Q(!1),void setTimeout((function(){d.current&&(d.current.scrollTop=d.current.scrollHeight)}),0));var e},onDelete:function(){return X&&(e=function(e,t,r,n){var o=t.filter((function(t){return t.id!==e}));return nP(o,r,n),o}(X,m,h,r.setValue),g(e),K(null),void Q(!1));var e}})]})}),{})})},{path:Oo.F.TypographyLibrary.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)((function(){var e=(0,cb.Sh)(),t=(0,ve.p)().showToast,r=LP((0,c.useState)(!1),2),n=r[0],o=r[1],i=(0,at.v)((function(e){return e.appConfig.is_google_fonts_disabled})),a=(0,L.$)(),l=(0,It.Gc)(),u=(0,It.qo)({control:l.control,name:"typography"}),d=(0,rO.f2)(),p=(0,rO.S5)();return A.Eu?(0,s.tZ)(Yo.Z,{emptyStateImage:EP,imageAltText:"upgrade to pro",title:a("COM_SPPAGEBUILDER_EDITOR_CUSTOM_TYPOGRAPHY_LIBRARY"),content:a("COM_SPPAGEBUILDER_EDITOR_CUSTOM_TYPOGRAPHY_LIBRARY_CONTENT"),action:(0,s.tZ)(w.Z,{}),orientation:"vertical",customCss:GP.proBannerContentCss}):(0,s.BX)("div",{css:GP.wrapper,children:[(0,s.tZ)("div",{css:GP.heading,children:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_GLOBAL_TYPOGRAPHY_TITLE")}),(0,s.BX)(nt.Z,{wrapperCss:GP.cardWrapperCss,children:[(0,s.tZ)("div",{css:GP.cardWrapper,children:null==u?void 0:u.map((function(r,n){return(0,s.tZ)(BP,{typographyGroup:r,globalTypographyGroups:u,allInstalledFontsQuery:e,isGoogleFontsDisabled:i,groupIndex:n,onChange:function(e){var t=u.map((function(t,r){return r!==n?t:e}));l.reset(IP(IP({},l.getValues()),{},{typography:t}))},onDelete:PP(_P().mark((function e(){var r,o,i,a,c;return _P().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,p.mutateAsync({group_index:n,typography_index:-1});case 2:if(null==(i=e.sent)||null===(r=i.data)||void 0===r||null===(o=r.data)||void 0===o||!o.is_in_use){e.next=6;break}return t({type:"danger",message:null==i||null===(a=i.data)||void 0===a?void 0:a.message}),e.abrupt("return");case 6:c=u.filter((function(e,t){return t!==n})),l.reset(IP(IP({},l.getValues()),{},{typography:c}));case 8:case"end":return e.stop()}}),e)})))},n)}))}),n?(0,s.tZ)(mP,{isEditingTitle:n,setIsEditingTitle:function(){return o((function(e){return!e}))},onChange:function(e){if(e){var t={id:"",name:e,typography:[]};l.reset(IP(IP({},l.getValues()),{},{typography:[].concat(CP(u),[t])}))}},wrapperCss:GP.globalColorGroupHeader}):(0,s.tZ)("div",{css:GP.addNewButtonWrapper,children:(0,s.tZ)(_.Z,{variant:"secondary",onClick:function(){o(!0)},children:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_GLOBAL_TYPOGRAPHY_BUTTON_TEXT_ADD_NEW_TYPOGRAPHY")})})]}),(0,s.tZ)("div",{css:GP.buttonWrapper,children:(0,s.tZ)(_.Z,{type:"submit",loading:d.isLoading,onClick:l.handleSubmit((function(e){d.mutate(e)})),children:a("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_BUTTON_TEXT_SAVE_CHANGES")})})]})}),{})})}]},{path:Oo.F.FontManager.template,element:(0,s.tZ)((function(){var e=(0,L.$)(),t=Ko(),r=(0,cb.Sh)(),n=(0,rt.O)({defaultValues:{disable_google_fonts:0,disable_og:0,disable_tc:0,disableanimatecss:0,disablecss:0,fb_app_id:"",fontawesome:0,ig_token:{appId:"",appSecret:"",accessToken:"",igId:"",app_id:"",app_secret:""},gmap_api:"",joomshaper_email:"",joomshaper_license_key:"",lazyloadimg:0,enable_ai:1,lazyplaceholder:"",production_mode:0,colors:[],show_color_switcher:0}}),o=(0,ZI.n)();return r.isLoading?(0,s.tZ)(Ye.fz,{}):(0,s.BX)(ni.Z,{children:[(0,s.tZ)(oi.Z,{title:e("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_PAGE_TITLE"),subtitle:e("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_PAGE_SUB_TITLE"),action:(0,s.tZ)(_.Z,{buttonCss:NI.uploadButton,onClick:function(){o({title:e("COM_SPPAGEBUILDER_EDITOR_FONT_UPLOAD_MODAL_TITLE")})},icon:(0,s.tZ)(I.Z,{name:"upload"}),children:(0,s.tZ)("span",{children:e("COM_SPPAGEBUILDER_EDITOR_UPLOAD_FONT_BUTTON")})})}),(0,s.tZ)(S.Z,{children:(0,s.BX)("div",{css:NI.wrapper,children:[(0,s.tZ)("div",{css:NI.sidebar,children:kI.map((function(n,o){var i,a=n.pathnames.includes(t);return(0,s.BX)(Jo.rU,{to:n.link,css:NI.routeItem({isActive:a}),title:e(n.text),children:[(0,s.tZ)(I.Z,{name:n.icon,width:16,height:16}),(0,s.tZ)("span",{children:e(n.text)}),n.link===Oo.F.InstalledFonts.template&&(0,s.BX)("span",{children:["(",(null===(i=r.data)||void 0===i?void 0:i.length)||0,")"]})]},o)}))}),(0,s.tZ)("form",{css:NI.outletWrapper,children:(0,s.tZ)(It.RV,BI(BI({},n),{},{children:(0,s.tZ)(_o.j3,{})}))})]})})]})}),{}),children:[{index:!0,element:(0,s.tZ)(_o.Fg,{to:Oo.F.InstalledFonts.template,replace:!0})},{path:Oo.F.InstalledFonts.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(VP,{})})},{path:Oo.F.GoogleFonts.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(qP,{})})}]}]},{path:Oo.F.PageEditor.template,element:(0,s.tZ)(xa,{children:(0,s.tZ)(AI,{})}),children:[{index:!0,element:(0,s.tZ)(FI,{component:(0,s.tZ)(YP,{})})}]},{path:Oo.F.PopupEditor.template,element:(0,s.tZ)(xa,{children:(0,s.tZ)(AI,{isPopup:!0})}),children:[{index:!0,element:!A.Eu&&(0,s.tZ)(FI,{component:(0,s.tZ)(YP,{isPopup:!0})})}]},{path:Oo.F.Icons.template,element:(0,s.tZ)(FI,{component:(0,s.tZ)(QP,{})})},{path:"*",element:(0,s.tZ)(FI,{component:(0,s.tZ)($P,{})})}];var eL=r(2137);const tL=function(e){var t=e.children,r=(0,L.$)(),n=(0,rO.nq)(),o=(0,mI.$x)(),i=Xn(),a=(0,Mi.o)((function(e){return e.loadCopiedAddon})),l=(0,Mi.o)((function(e){return e.loadCopiedSection})),u=(0,Mi.o)((function(e){return e.loadCopiedDataFirstTime}));if((0,c.useEffect)((function(){u();var e=function(e){e.key===Bn.dR.COPIED_ADDON_LOCAL_STORAGE_KEY&&a(e.newValue),e.key===Bn.dR.COPIED_SECTION_LOCAL_STORAGE_KEY&&l(e.newValue)};return window.addEventListener("storage",e),function(){window.removeEventListener("storage",e)}}),[]),n.isLoading||o.isLoading||i.isLoading)return(0,s.tZ)(Ye.fz,{});if((!n.data||!o.data||!i.data)&&((0,A.$K)(n.error)||(0,A.$K)(o.error)||(0,A.$K)(i.error))){var d,p,f,v,h=null!==(d=null===(p=n.error)||void 0===p?void 0:p.message)&&void 0!==d?d:r("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG"),b=eL;return(0,A.$K)(null===(f=n.error)||void 0===f?void 0:f.response)&&403===(null===(v=n.error)||void 0===v?void 0:v.response.status)&&(b=oc),(0,s.tZ)("div",{css:rL.wrapper,children:(0,s.tZ)(Yo.Z,{orientation:"vertical",emptyStateImage:b,imageAltText:r("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_IMAGE_ALT"),content:h,customCss:rL.emptyStateCustom,wrapperCss:rL.emptyStateWrapper,action:(0,s.BX)("a",{href:"".concat(Lr.Z.APPLICATION_ROOT,"administrator/index.php"),css:rL.backButton,children:[(0,s.tZ)(I.Z,{name:"uTurnLeft"}),(0,s.tZ)("span",{children:r("COM_SPPAGEBUILDER_EDITOR_TOPBAR_BACK_TO_DASHBOARD")})]})})})}return(0,s.tZ)(s.HY,{children:t})};var rL={wrapper:(0,i.iv)("height:100vh;display:flex;flex-direction:column;justify-content:center;background-color:",n.qo.base.white,";;label:wrapper;"),emptyStateCustom:(0,i.iv)(o.c.body(),";margin-top:",n.W0[32],";text-align:left;ol{list-style-type:decimal;text-align:left;list-style-position:inside;margin-bottom:",n.W0[16],";}span{font-weight:",n.Ue.bold,";}a{color:",n.qo.text.primary,";text-decoration:underline;}p{margin-bottom:",n.W0[16],";};label:emptyStateCustom;"),emptyStateWrapper:{name:"nx8chx-emptyStateWrapper",styles:"box-shadow:none;label:emptyStateWrapper;"},backButton:(0,i.iv)("all:unset;display:inline-flex;",o.c.body("medium"),";text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;padding:",n.W0[6]," ",n.W0[16],";border-radius:",n.E0[6],";z-index:",n.W5.level,";transition:all 150ms ease-in-out;position:relative;align-items:center;gap:",n.W0[8],";color:",n.qo.text.default,";font-weight:",n.Ue.regular,";line-height:",n.Nv[18],";border:1px solid ",n.qo.action.outline.default,";transition:border-color 0.2s ease;svg{fill:none;}&:hover{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.hover,";path{stroke:",n.qo.icon.primary,";}}&:active{color:",n.qo.text.primary,";border-color:",n.qo.action.outline.focus,";};label:backButton;")},nL=r(6194),oL=r(2443),iL=r(4194),aL=(0,nL.Z)({stylisPlugins:[iL.Z],key:"rtl"});const lL=function(e){var t=e.children;return Bn.dZ?(0,s.tZ)(oL.C,{value:aL,children:t}):(0,s.tZ)(s.HY,{children:t})};var cL=r(948),uL=r(4420),sL=r(9225);function dL(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var pL=r(745),fL=document.querySelector("#pagebuilder-backend-editor");(0,pL.s)(fL).render((0,s.tZ)(c.StrictMode,{children:(0,s.tZ)(Jo.UT,{children:(0,s.tZ)(E,{children:(0,s.tZ)((function(){var e,t,r=(0,_o.TH)(),n=(e=(0,c.useState)((function(){return new cL.S({defaultOptions:{queries:{retry:!1,refetchOnWindowFocus:!1,networkMode:"always"},mutations:{retry:!1,networkMode:"always"}}})})),t=1,function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return dL(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?dL(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];(0,c.useLayoutEffect)((function(){window.scroll({top:0,behavior:"smooth"})}),[r.pathname]);var o=(0,_o.V$)(JP);return(0,s.tZ)(lL,{children:(0,s.tZ)(uL.QueryParamProvider,{adapter:sL.Q,children:(0,s.tZ)(ye.aH,{client:n,children:(0,s.tZ)(ve.Z,{position:"bottom-center",children:(0,s.tZ)(tL,{children:(0,s.BX)(Zt.D,{children:[(0,s.tZ)(i.xB,{styles:(0,V.CN)()}),o]})})})})})})}),{})})})}))},9101:(e,t,r)=>{"use strict";r.d(t,{Z:()=>h});var n=r(2847),o=r(7264),i=r(824),a=r(4185),l=r(917),c=r(1954),u=r(1234),s=r(1921),d=r(7602),p=r(7294),f=r(5944);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const h=function(e){var t,r,i=e.actions,a=e.triggerButtonContent,l=e.triggerButtonStyle,h=e.onSelect,y=e.visibilityStatus,m=e.disabled,g=void 0!==m&&m,E=e.arrowPosition,O=void 0===E?"top":E,_=e.displaceLeft,w=void 0===_?0:_,I=e.displaceTop,S=void 0===I?0:I,C=e.width,x=void 0===C?150:C,P=e.title,L=(0,u.$)(),A=(t=(0,p.useState)(!1),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),T=A[0],D=A[1],Z=(0,c.l)({isOpen:T,isDropdown:!0,arrow:O}),R=Z.triggerRef,j=Z.position,B=Z.popoverRef;return(0,f.BX)(f.HY,{children:[(0,f.tZ)("button",{type:"button",css:[s.iZ.resetButton,l,";label:ActionDropdown;"],onClick:function(e){e.stopPropagation(),D(!0)},ref:R,disabled:g,title:P,children:a}),(0,f.tZ)(c.h,{isOpen:T,onClickOutside:function(e){e.stopPropagation(),D(!1)},children:(0,f.tZ)("div",{css:b.actionContainer({left:j.left+w,top:j.top+S,width:x}),ref:B,children:i.map((function(e){var t=!!e.isProFeature&&d.Eu||!!e.isDisabled;return e.hide?null:"visibility"===e.id?function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,f.BX)("button",{type:"button",css:b.actionItem({isFreeVersion:d.Eu}),onClick:function(t){t.stopPropagation(),h(e.id),D(!1)},disabled:t,children:[(0,f.BX)("div",{css:b.innerWrapper,"data-icon-wrapper":!0,children:[(0,f.tZ)(o.Z,{name:y?"eye":"eyeSlash",width:16,height:16,noFill:e.iconNoFill}),(0,f.tZ)("span",{children:L("COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_".concat(y?"HIDE":"SHOW"))})]}),!!e.isProFeature&&d.Eu&&(0,f.tZ)(n.Z,{css:b.proLabel})]},e.id)}(e,t):(0,f.BX)("button",{type:"button",disabled:t,css:b.actionItem({variant:e.variant,isFreeVersion:d.Eu}),onClick:function(t){t.stopPropagation(),h(e.id),D(!1)},children:[(0,f.BX)("div",{css:b.innerWrapper,"data-icon-wrapper":!0,children:[(0,d.$K)(e.icon)&&(0,f.tZ)(o.Z,{name:e.icon,width:16,height:16,noFill:e.iconNoFill}),(0,f.tZ)("span",{children:L(e.title)})]}),!!e.isProFeature&&d.Eu&&(0,f.tZ)(n.Z,{css:b.proLabel})]},e.id)}))})})]})};var b={actionContainer:function(e){var t=e.left,r=e.top,n=e.width;return(0,l.iv)("position:absolute;left:",Math.max(0,t-8),"px;top:",r,"px;display:flex;flex-direction:column;background:",i.qo.base.white,";box-shadow:",i.AF.popover,";border-radius:",i.E0[5],";padding-block:",i.W0[4],";max-width:",n,"px;width:100%;;label:actionContainer;")},proLabel:(0,l.iv)("position:absolute;top:50%;right:",i.W0[8],";transform:translateY(-50%);;label:proLabel;"),actionItem:function(e){var t=e.variant,r=void 0===t?"regular":t,n=e.isFreeVersion;return(0,l.iv)(s.iZ.resetButton,";padding:",i.W0[8]," ",i.W0[12],";position:relative;",n&&(0,l.iv)("display:flex;gap:",i.W0[2],";justify-content:space-between;align-items:center;;label:actionItem;")," [data-icon-wrapper]{>span{",a.c.caption(),";}svg{color:",i.qo.icon.default,";}}:disabled{pointer-events:none;[data-icon-wrapper]{span{color:",i.qo.text.disabled,";}svg{color:",i.qo.icon.disabled,";}}}:hover{background-color:","warning"===r?i.qo.background.lightYellow:i.qo.background.primary,";[data-icon-wrapper]{","regular"===r&&(0,l.iv)("span,svg{color:",i.qo.text.primary,";}path:{stroke:",i.qo.text.primary,";};label:actionItem;")," ","critical"===r&&(0,l.iv)("span,svg{color:",i.qo.icon.error,";}path:{stroke:",i.qo.icon.error,";};label:actionItem;"),";}};label:actionItem;")},innerWrapper:(0,l.iv)("display:flex;gap:",i.W0[8],";align-items:center;;label:innerWrapper;")}},8698:(e,t,r)=>{"use strict";r.d(t,{Z:()=>p});var n=r(3871),o=r(7264),i=r(824),a=r(4185),l=r(917),c=r(1921),u=r(7294),s=r(5944);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const p=function(e){var t,r,i=e.children,a=e.hasBorder,l=void 0!==a&&a,c=e.hasWrapperShadow,p=void 0===c||c,f=e.isCollapsed,h=void 0!==f&&f,b=e.hideArrow,y=void 0!==b&&b,m=e.backButton,g=void 0!==m&&m,E=e.backButtonOnChange,O=void 0===E?null:E,_=e.header,w=e.cardCss,I=e.cardHeaderCss,S=e.disabledCaretCollapse,C=void 0!==S&&S,x=e.isDefaultCardType,P=void 0===x||x,L=e.defaultCollapsedState,A=void 0!==L&&L,T=e.titleActionCssReplace,D=void 0===T?null:T,Z=(t=(0,u.useState)(A),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),R=Z[0],j=Z[1],B=C?!h:!R;return(0,s.BX)("div",{css:[v.wrapper({hasBorder:l,isDefaultCardType:P,hasWrapperShadow:p}),w,";label:Card;"],children:[!!_&&(0,s.BX)("div",{css:[v.headerWrapper({isCollapsed:!B||!!_.noSeparator,isDefaultCardType:P}),I,";label:Card;"],children:[(0,s.BX)("div",{css:null!=D?D:v.titleAndAction,children:[(0,s.BX)("div",{css:v.title({isDefaultCardType:P}),children:[!y&&(0,s.tZ)(n.Z,{variant:"text",onClick:function(){j((function(e){return!e}))},disabled:!!_.actionTray&&C,children:(0,s.tZ)(o.Z,{style:v.collapsibleIconStyle({isCollapsed:R||!!_.actionTray&&h,isDisabled:!!_.actionTray&&C}),name:"caretRight",height:16,width:16})}),!!g&&(0,s.tZ)("div",{css:v.backButtonWrapperStyle,children:(0,s.tZ)(n.Z,{variant:"text",onClick:function(){if(null===O)return window.history.back();O()},buttonCss:v.backButtonStyle,children:(0,s.tZ)(o.Z,{name:"arrowLeft"})})}),_.title]}),!!_.actionTray&&(0,s.tZ)("div",{children:_.actionTray})]}),!!_.subtitle&&(0,s.tZ)("p",{css:v.subtitle({isDefaultCardType:P}),children:_.subtitle})]}),B&&(0,s.tZ)("div",{css:v.cardBody,children:i})]})};var f={name:"134w5yv-collapsibleIconStyle",styles:"transform:rotate(90deg);label:collapsibleIconStyle;"},v={wrapper:function(e){var t=e.hasBorder,r=void 0!==t&&t,n=e.isDefaultCardType,o=void 0===n||n,a=e.hasWrapperShadow,c=void 0===a||a;return(0,l.iv)("width:100%;border-radius:",i.E0[8],";",c?"box-shadow: ".concat(i.AF.base,";"):""," background-color:",i.qo.base.white,";",o&&(0,l.iv)("border-radius:",i.E0[4],";box-shadow:",i.AF.card,";;label:wrapper;")," ",r&&(0,l.iv)("box-shadow:none;border:1px solid ",i.qo.stroke.neutral,";;label:wrapper;"),";;label:wrapper;")},headerWrapper:function(e){var t=e.isCollapsed,r=void 0!==t&&t,n=e.isDefaultCardType,o=void 0===n||n;return(0,l.iv)("display:flex;flex-direction:column;justify-content:center;gap:",i.W0[4],";padding:",i.W0[16]," ",i.W0[24],";",o&&(0,l.iv)("padding:",i.W0[12],";;label:headerWrapper;")," ",!r&&(0,l.iv)("border-bottom:1px solid ",i.qo.stroke.neutral,";;label:headerWrapper;"),";;label:headerWrapper;")},titleAndAction:{name:"17s6585-titleAndAction",styles:"display:flex;justify-content:space-between;align-items:center;label:titleAndAction;"},subtitle:function(e){var t=e.isDefaultCardType,r=void 0===t||t;return(0,l.iv)(a.c.body(),";color:",i.qo.text.neutral,";",r&&(0,l.iv)(a.c.caption(),";;label:subtitle;"),";;label:subtitle;")},title:function(e){var t=e.isDefaultCardType,r=void 0===t||t;return(0,l.iv)(a.c.heading5("medium"),";",c.iZ.flexCenter(),";color:",i.qo.text.default,";text-transform:capitalize;&>button{padding:0;margin-right:",i.W0[4],";}",r&&(0,l.iv)(a.c.caption("medium"),";;label:title;"),";;label:title;")},backButtonWrapperStyle:(0,l.iv)("margin-right:",i.W0[12],";;label:backButtonWrapperStyle;"),backButtonStyle:(0,l.iv)("padding:",i.W0[4],";radius:",i.W0[6],";background:",i.qo.action.secondary.default,";;label:backButtonStyle;"),collapsibleIconStyle:function(e){var t=e.isCollapsed,r=void 0!==t&&t,n=e.isDisabled,o=void 0!==n&&n;return(0,l.iv)("color:",i.qo.icon.default,";transition:transform 0.3s ease;",!r&&f," ",o&&(0,l.iv)("color:",i.qo.icon.disabled,";;label:collapsibleIconStyle;"),";;label:collapsibleIconStyle;")},cardBody:(0,l.iv)(a.c.caption(),";color:",i.qo.text.neutral,";;label:cardBody;")}},3417:(e,t,r)=>{"use strict";r.d(t,{Z:()=>a});var n=r(824),o=r(917),i=r(5944);const a=function(e){var t=e.children,r=e.header,n=e.wrapperCss,o=e.hasBody,a=void 0===o||o;return(0,i.BX)("div",{css:[l.wrapper,n,";label:CardBox;"],children:[r&&(0,i.tZ)("div",{css:l.header(a),children:r}),a&&t]})};var l={wrapper:(0,o.iv)("width:100%;background-color:",n.qo.background.white,";box-shadow:",n.AF.card,";border-radius:",n.E0[5],";;label:wrapper;"),header:function(e){return(0,o.iv)("background-color:",n.qo.background.white,";padding:",n.W0[16],";border-bottom:1px solid ",n.qo.stroke.neutral,";border-radius:",n.E0[5]," ",n.E0[5]," 0 0;",!e&&(0,o.iv)("border-radius:",n.E0[5],";;label:header;"),";;label:header;")}}},5527:(e,t,r)=>{"use strict";r.d(t,{Z:()=>g});var n=r(3871),o=r(935),i=r(7264),a=r(824),l=r(4185),c=r(917),u=r(1234),s=r(1921),d=r(7294),p=r(463),f=r(5944);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach((function(t){m(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function m(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==v(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===v(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}const g=function(e){var t=e.onUpload,r=e.onDragLeave,a=e.multiple,l=void 0!==a&&a,c=e.isLoading,s=void 0!==c&&c,v=e.uploadButtonText,b=void 0===v?"COM_SPPAGEBUILDER_EDITOR_MEDIA_MANAGER_SIDEBAR_UPLOAD_FILES":v,m=e.uploadMessage,g=void 0===m?"COM_SPPAGEBUILDER_EDITOR_DRAG_AND_DROP_YOUR_FILES":m,O=e.disabled,_=void 0!==O&&O,w=(0,u.$)(),I=(0,d.useRef)(null),S=(0,p.uI)({onDrop:function(e){t(e)},multiple:l,disabled:_}),C=S.getRootProps,x=S.getInputProps;return s?(0,f.tZ)("div",{css:E.spinnerWrapper,children:(0,f.tZ)(o.ZP,{})}):(0,f.BX)("div",y(y({css:E.wrapper(_)},C({onClick:function(e){e.stopPropagation()},onDragLeave:function(e){e.stopPropagation(),r()}})),{},{children:[(0,f.tZ)("input",y({},x())),(0,f.BX)("div",{css:E.dropText(_),children:[(0,f.tZ)("input",{ref:I,type:"file",multiple:!0,"aria-hidden":"true",hidden:!0,onChange:function(e){var r;_||(e.target.files&&t(function(e){if(Array.isArray(e))return h(e)}(r=e.target.files)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return h(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?h(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),e.target.value="")}}),(0,f.tZ)("p",{children:w(_?"COM_SPPAGEBUILDER_EDITOR_DISABLED_DROPZONE":g)}),!_&&(0,f.tZ)(n.Z,{icon:(0,f.tZ)(i.Z,{name:"upload"}),onClick:function(){var e;return null===(e=I.current)||void 0===e?void 0:e.click()},disabled:_,children:w(b)})]})]}))};var E={wrapper:function(e){return(0,c.iv)("z-index:",a.W5.positive,";background:transparent;border-radius:",a.E0[10],";background-color:",a.qo.base.white,";border:1px dashed ",a.qo.stroke.hover,";z-index:",a.W5.positive,";height:100%;",e&&(0,c.iv)("border:1px dashed ",a.qo.stroke.error,";;label:wrapper;"),";;label:wrapper;")},dropText:function(e){return(0,c.iv)(l.c.heading6()," display:flex;flex-direction:column;justify-content:center;align-items:center;gap:",a.W0[24],";color:",a.qo.text.default,";width:100%;height:100%;svg{color:",a.qo.action.outline.disabled,";}",e&&(0,c.iv)("color:",a.qo.text.disabled,";;label:dropText;"),";;label:dropText;")},spinnerWrapper:(0,c.iv)(s.iZ.flexCenter(),";height:100%;width:100%;;label:spinnerWrapper;"),uploadButton:(0,c.iv)(s.iZ.resetButton,";svg{transition:color 0.3s ease;}:hover{svg{color:",a.qo.icon.hover,";}};label:uploadButton;")}},3425:(e,t,r)=>{"use strict";r.d(t,{Z:()=>u});var n=r(7264),o=r(824),i=r(4185),a=r(917),l=r(7602),c=r(5944);const u=function(e){var t=e.emptyStateImage,r=e.emptyState2xImage,o=e.imageAltText,i=e.title,a=e.content,u=e.action,s=e.errorMessage,d=e.orientation,f=void 0===d?"horizontal":d,v=e.removeBorderRadius,h=void 0!==v&&v,b=e.wrapperCss,y=e.customCss;return(0,c.BX)("div",{css:[p.bannerWrapper({orientation:f,removeBorderRadius:h}),b,";label:EmptyState;"],children:[!!t&&(0,c.tZ)("img",{src:t,srcSet:(0,l.$K)(r)?"".concat(r," 2x"):void 0,alt:null!=o?o:"",draggable:!1}),!!s&&(0,c.BX)("div",{css:p.errorMessage,children:[(0,c.tZ)(n.Z,{name:"exclamationCircle",width:20,height:20}),(0,c.tZ)("span",{children:s})]}),(0,c.BX)("div",{css:p.messageWrapper({orientation:f}),children:[!!i&&(0,c.tZ)("h4",{css:p.title({orientation:f}),children:i}),!!a&&(0,c.tZ)("p",{css:[p.content,y,";label:EmptyState;"],dangerouslySetInnerHTML:{__html:a}}),!!u&&(0,c.tZ)("div",{css:p.buttonWrapper,children:u})]})]})};var s={name:"1dk76ft-messageWrapper",styles:"text-align:center;label:messageWrapper;"},d={name:"ce9pem-messageWrapper",styles:"max-width:364px;label:messageWrapper;"},p={errorMessage:(0,a.iv)("display:flex;width:100%;padding:",o.W0[32]," 0;background-color:",o.qo.background.error,";justify-content:center;align-items:center;gap:",o.W0[8],";color:",o.qo.base.error,";border-radius:",o.E0[6],";path{fill:",o.qo.icon.error,";};label:errorMessage;"),bannerWrapper:function(e){var t=e.orientation,r=e.removeBorderRadius;return(0,a.iv)("background-color:",o.qo.background.white,";box-shadow:",o.AF.card,";",!r&&(0,a.iv)("border-radius:",o.E0[8],";;label:bannerWrapper;")," padding:",o.W0[48]," 0 ",o.W0[64],";display:grid;place-items:center;justify-content:center;","horizontal"===t&&(0,a.iv)("grid-template-columns:278px auto;gap:",o.W0[56],";justify-content:start;;label:bannerWrapper;")," & img{max-width:272px;max-height:272px;width:100%;};label:bannerWrapper;")},messageWrapper:function(e){var t=e.orientation;return(0,a.iv)("display:flex;flex-direction:column;max-width:432px;gap:",o.W0[12],";","horizontal"===t&&d," ","vertical"===t&&s,";;label:messageWrapper;")},title:function(e){var t=e.orientation;return(0,a.iv)(i.c.heading4("medium"),";","vertical"===t&&(0,a.iv)("margin-top:",o.W0[24],";;label:title;"),";;label:title;")},content:(0,a.iv)(i.c.caption(),";color:",o.qo.text.hints,";;label:content;"),buttonWrapper:(0,a.iv)("margin-top:",o.W0[12],";;label:buttonWrapper;")}},6511:(e,t,r)=>{"use strict";r.d(t,{Z:()=>h});var n=r(3871),o=r(935),i=r(8138),a=r(824),l=r(4185),c=r(917),u=r(1234),s=r(2137),d=r(7602),p=r(9250),f=r(3425),v=r(5944);const h=function(e){var t=e.query,r=e.children,a=e.disableLoader,l=void 0!==a&&a,c=(0,u.$)(),h=(0,p.s0)();return!l&&t.isLoading?(0,v.tZ)(o.g4,{}):!(0,d.$K)(t.data)&&(0,d.$K)(t.error)?(0,v.tZ)("div",{css:b.wrapper,children:(0,v.tZ)(f.Z,{orientation:"vertical",emptyStateImage:s,imageAltText:c("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_IMAGE_ALT"),content:t.error.message,customCss:b.emptyStateCustom,wrapperCss:b.emptyStateWrapper,action:(0,v.tZ)(n.Z,{onClick:function(){return h(i.F.Home.buildLink())},children:"Go Back"})})}):(0,v.tZ)(v.HY,{children:r})};var b={wrapper:(0,c.iv)("height:100vh;display:flex;flex-direction:column;justify-content:center;background-color:",a.qo.base.white,";;label:wrapper;"),emptyStateCustom:(0,c.iv)(l.c.body(),";margin-top:",a.W0[32],";text-align:left;ol{list-style-type:decimal;text-align:left;list-style-position:inside;margin-bottom:",a.W0[16],";}span{font-weight:",a.Ue.bold,";}a{color:",a.qo.text.primary,";text-decoration:underline;}p{margin-bottom:",a.W0[16],";};label:emptyStateCustom;"),emptyStateWrapper:{name:"nx8chx-emptyStateWrapper",styles:"box-shadow:none;label:emptyStateWrapper;"}}},2028:(e,t,r)=>{"use strict";r.d(t,{Z:()=>p});var n=r(7264),o=r(824),i=r(4185),a=r(917),l=r(1234),c=r(1921),u=r(7294),s=r(5944);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const p=function(e){var t,r,o=e.currentPage,i=e.onPageChange,a=e.totalItems,c=e.itemsPerPage,p=(0,l.$)(),v=(t=(0,u.useState)(""),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,r)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),h=v[0],b=v[1],y=Math.max(Math.ceil(a/c),1);(0,u.useEffect)((function(){b(o.toString())}),[o]);var m=function(e){e<1||e>y||i(e)};return(0,s.BX)("div",{css:f.wrapper,children:[(0,s.BX)("div",{css:f.pageStatus,children:[p("COM_SPPAGEBUILDER_EDITOR_PAGINATION_PAGE"),(0,s.tZ)("span",{children:(0,s.tZ)("input",{type:"text",css:f.paginationInput,value:h,onChange:function(e){var t=e.currentTarget.value.replace(/[^0-9]/g,""),r=Number(t);r>0&&r<=y?(b(t),i(r)):t||b(t)},autoComplete:"off"})}),p("COM_SPPAGEBUILDER_EDITOR_PAGINATION_PAGE_OF")," ",(0,s.tZ)("span",{children:y})]}),(0,s.BX)("div",{css:f.pageController,children:[(0,s.tZ)("button",{type:"button",css:f.paginationButton,onClick:function(){return m(o-1)},disabled:1===o,children:(0,s.tZ)(n.Z,{name:"chevronLeft",width:24,height:24})}),(0,s.tZ)("button",{type:"button",css:f.paginationButton,onClick:function(){return m(o+1)},disabled:o===y,children:(0,s.tZ)(n.Z,{name:"chevronRight",width:24,height:24})})]})]})};var f={wrapper:(0,a.iv)("display:flex;justify-content:end;align-items:center;flex-wrap:wrap;gap:",o.W0[8],";height:36px;;label:wrapper;"),pageStatus:(0,a.iv)(i.c.body()," color:",o.qo.text.neutral,";min-width:100px;;label:pageStatus;"),paginationInput:(0,a.iv)("outline:0;border:1px solid ",o.qo.stroke.neutral,";border-radius:",o.E0[5],";margin:0 ",o.W0[8],";color:",o.qo.text.neutral,";padding:",o.W0[8]," ",o.W0[12],";width:72px;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:",o.W0[0],";};label:paginationInput;"),pageController:(0,a.iv)("gap:",o.W0[8],";display:flex;justify-content:center;align-items:center;height:100%;;label:pageController;"),paginationButton:(0,a.iv)(c.iZ.resetButton,";background-color:",o.qo.background.white,";color:",o.qo.icon.default,";border-radius:",o.E0[6],";height:32px;width:32px;display:grid;place-items:center;transition:background-color 0.2s ease-in-out,color 0.3s ease-in-out;&:hover{background-color:",o.qo.base.primary,";&>svg{color:",o.qo.base.white,";}}&:disabled{background-color:",o.qo.background.disabled,";&>svg{color:",o.qo.icon.disabled,";}};label:paginationButton;")}},3581:(e,t,r)=>{"use strict";r.d(t,{Z:()=>f});var n=r(3871),o=r(9371),i=r(7264),a=r(824),l=r(4185),c=r(917),u=r(7273),s=r(1921),d=r(7602),p=r(5944);const f=function(e){var t=e.value,r=e.onChange,a=e.min,l=e.max,c=e.step,s=e.label,f=e.isInlineLabel,v=void 0!==f&&f,h=e.disabled,b=void 0!==h&&h,m=e.inputContent,g=e.onToggle,E=e.staticUnit,O=(0,d.x0)();return(0,p.BX)("div",{css:y.wrapper({isInlineLabel:!!s&&v}),children:[!!s&&(0,p.tZ)("label",{htmlFor:O,css:y.label({disabled:b,isInlineLabel:!!s&&v}),children:s}),(0,p.BX)("div",{css:y.rangeInputWrapper,children:[(0,p.tZ)(o.Z,{value:(0,u.He)(t),onChange:function(e){r(e.toString())},min:a,max:l,disabled:b,rangeStyle:y.range({isInlineLabel:v}),step:c}),(0,p.BX)("div",{css:y.inputWrapper({isAdvancedField:!!g||!!m||!!E}),children:[(0,p.tZ)("input",{id:O,type:"text",value:null!=t?t:"",onChange:function(e){var t=e.target.value.replace(/[^-0-9.]/g,"").replace(/(\..*)\./g,"$1").replace(/(-+)/g,"-");r(t)},onBlur:function(e){var t=e.target.value.replace(/[^-0-9.]/g,"").replace(/(\..*)\./g,"$1").replace(/(-+)/g,"-");if(a||l){var n=(0,u.ll)(t,a,l);r(String(null!=n?n:""))}},disabled:b,css:y.input({isInlineLabel:!!s&&v,isAdvancedField:!!g||!!m||!!E}),autoComplete:"off"}),!!g&&(0,p.tZ)(n.Z,{variant:"text",buttonCss:y.advancedFieldIconButton,onClick:g,children:(0,p.tZ)(i.Z,{name:"roundedCorner",width:16,height:16})}),!!m&&(0,p.tZ)("div",{css:y.inputContent,children:m}),E&&(0,p.tZ)("span",{css:y.staticUnit,children:E})]})]})]})};var v={name:"1lxcpsm-input",styles:"width:48px;label:input;"},h={name:"1nfiya7-range",styles:"margin-left:auto;label:range;"},b={name:"owj46j-label",styles:"width:100%;label:label;"},y={wrapper:function(e){var t=e.isInlineLabel,r=void 0!==t&&t;return(0,c.iv)("display:flex;flex-direction:column;",r&&(0,c.iv)("flex-direction:row;align-items:center;gap:",a.W0[8],";;label:wrapper;"),";;label:wrapper;")},label:function(e){var t=e.disabled,r=void 0!==t&&t,n=e.isInlineLabel,o=void 0!==n&&n;return(0,c.iv)(l.c.caption(),";",!o&&b," ",r&&(0,c.iv)("color:",a.qo.text.disabled,";;label:label;"),";;label:label;")},rangeInputWrapper:(0,c.iv)("width:100%;flex:1;display:flex;align-items:center;gap:",a.W0[32],";;label:rangeInputWrapper;"),range:function(e){var t=e.isInlineLabel,r=void 0!==t&&t;return(0,c.iv)("max-width:168px;",r&&h,";;label:range;")},inputWrapper:function(e){var t=e.isAdvancedField,r=void 0!==t&&t;return(0,c.iv)("display:flex;justify-content:space-between;&:focus-within{box-shadow:",a.AF.outline,";border-radius:",a.E0[6],";}",r&&(0,c.iv)("height:32px;border-radius:",a.E0[6],";border:1px solid ",a.qo.stroke.neutral,";;label:inputWrapper;"),";;label:inputWrapper;")},input:function(e){var t=e.isInlineLabel,r=void 0!==t&&t,n=e.isAdvancedField,o=void 0!==n&&n;return(0,c.iv)(l.c.body(),";max-width:80px;height:32px;padding:",a.W0[6]," ",a.W0[10],";appearance:textfield;border-radius:",a.E0[6],";border:1px solid ",a.qo.stroke.neutral,";",o&&(0,c.iv)("width:56px;height:auto;border:none;border-radius:",a.E0[6]," 0 0 ",a.E0[6],";border-right:1px solid ",a.qo.stroke.neutral,";;label:input;")," ",r&&v," :focus{outline:none;box-shadow:none;}:disabled{color:",a.qo.text.disabled,";}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",a.qo.text.disabled,";};label:input;")},advancedFieldIconButton:(0,c.iv)("background-color:",a.qo.action.secondary.default,";padding:",a.W0[6]," ",a.W0[8],";border-radius:0 ",a.E0[5]," ",a.E0[5]," 0;svg{color:",a.qo.icon.default,";}:hover{background-color:",a.qo.action.secondary.hover,";svg{color:",a.qo.icon.primary,";}};label:advancedFieldIconButton;"),inputContent:(0,c.iv)(l.c.caption(),";padding:",a.W0[8]," ",a.W0[6],";;label:inputContent;"),staticUnit:(0,c.iv)(s.iZ.flexCenter(),";padding:",a.W0[8],";width:36px;overflow:hidden;;label:staticUnit;")}},8710:(e,t,r)=>{"use strict";r.d(t,{Z:()=>h});var n=r(7870),o=r(7025),i=r(824),a=r(4185),l=r(917),c=r(5944);function u(e){return u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},u(e)}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function d(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function p(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==u(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==u(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===u(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var f=[{label:"px",value:"px"},{label:"rem",value:"rem"},{label:"em",value:"em"},{label:"%",value:"%"}],v=[{label:"deg",value:"deg"},{label:"rad",value:"rad"},{label:"grad",value:"grad"},{label:"turn",value:"turn"}];const h=function(e){var t=e.label,r=void 0===t?"":t,i=e.fieldValue,a=e.onChange,l=e.onValueBlur,u=e.staticUnit,s=e.inputCss,p=e.unitInputStyles,h=e.isAngleUnit,y=void 0!==h&&h,m=e.isLarge,g=void 0!==m&&m,E=e.customUnitOptions,O=void 0===E?null:E,_=e.disableTextField,w=void 0!==_&&_,I=e.isSeparated,S=void 0!==I&&I,C=i.value,x=i.unit,P=O||(y?v:f);return(0,c.BX)("div",{css:b.container({hasLabel:!!r}),children:[!!r&&(0,c.tZ)("div",{children:r}),(0,c.BX)("div",{css:b.inputWrapper({isSeparated:S}),children:[(0,c.tZ)(o.Z,{value:C,type:"number",onChange:function(e){a(d(d({},i),{},{value:e}))},onBlur:function(e){l&&l(e)},inputCss:b.textInputCss(s,S),disabled:w}),u?(0,c.tZ)("span",{css:b.staticUnit,children:u}):(0,c.tZ)(n.Z,{options:P,value:P.find((function(e){return e.value===x})),onChange:function(e){a(d(d({},i),{},{unit:e.value}))},isClearable:!1,caretSize:12,inputCss:b.selectInputCss(p,g,S)})]})]})};var b={container:function(e){var t=e.hasLabel,r=void 0!==t&&t;return(0,l.iv)(r&&(0,l.iv)("display:flex;flex-direction:column;gap:",i.W0[4],";>p{",a.c.caption(),";};label:container;"),";;label:container;")},staticUnit:(0,l.iv)("padding:",i.W0[8],";width:36px;margin-left:-",i.W0[4],";;label:staticUnit;"),inputWrapper:function(e){var t=e.isSeparated,r=void 0!==t&&t;return(0,l.iv)("display:flex;align-items:center;",r?(0,l.iv)("gap:",i.W0[8],";;label:inputWrapper;"):(0,l.iv)("justify-content:center;border-radius:",i.E0[5],";border:1px solid ",i.qo.stroke.neutral,";box-shadow:",i.AF.input,";overflow:hidden;&:focus-within{box-shadow:",i.AF.outline,";};label:inputWrapper;"),";;label:inputWrapper;")},textInputCss:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,l.iv)(!t&&(0,l.iv)(a.c.caption(),";border:none;border-radius:0;box-shadow:none;border-right:1px solid ",i.qo.stroke.neutral,";padding:",i.W0[6]," ",i.W0[4]," ",i.W0[6]," ",i.W0[6],";width:40px;;label:textInputCss;")," ",e,";;label:textInputCss;")},selectInputCss:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return(0,l.iv)(r?(0,l.iv)("&>input{",e,";};label:selectInputCss;"):(0,l.iv)("&>input{",a.c.tiny(),";border:none;border-radius:0;box-shadow:none;padding:",i.W0[8]," ",t?i.W0[0]:i.W0[20]," ",i.W0[8]," ",t?i.W0[4]:i.W0[8],";width:",t?"58px":"48px",";",e,";&:focus{box-shadow:none;}}&>button{right:",i.W0[6],";};label:selectInputCss;"),";;label:selectInputCss;")}}},1073:(e,t,r)=>{"use strict";r.d(t,{j:()=>i});var n=r(270),o=r(782),i=(0,n.Ue)()((0,o.mW)((function(e){return{actions:[{key:"add-elements",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_ADD_ELEMENTS",icon:"plusCircleDuo"},{key:"layouts",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_PAGE_LAYOUTS",icon:"layoutsDuo"},{key:"popup-layouts",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_POPUP_LAYOUTS",icon:"layoutsDuo"},{key:"saved-items",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_SAVED_ITEMS",icon:"cubeDuo"},{key:"media",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_MEDIA_MANAGER_SETTINGS",icon:"mediaDuo"},{key:"settings",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_PAGE_SETTINGS",icon:"toolsDuo"},{key:"popup-settings",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_POPUP_SETTINGS",icon:"toolsDuo"},{key:"popup-triggers",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_POPUP_TRIGGERS",icon:"triggersDuo"},{key:"documentation",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_PANEL_ITEM_LEARNING",icon:"openBook"}],activeAction:void 0,setActiveAction:function(t){return e((function(){return{activeAction:t}}))}}})))},6651:(e,t,r)=>{"use strict";r.d(t,{y:()=>i});var n=r(270),o=r(782),i=(0,n.Ue)()((0,o.mW)((function(e){return{activeColumn:null,setActiveColumn:function(t){return e((function(){return{activeColumn:t}}))}}})))},7230:(e,t,r)=>{"use strict";r.d(t,{x:()=>a});var n=r(2902),o=r(270),i=r(782),a=(0,o.Ue)()((0,i.mW)((function(e){return{addonGroups:{General:[],Content:[],Media:[],Structure:[],Slider:[],Favourite:[]},addonStructure:{},globalSettings:{style:{},advanced:{},interaction:{}},loadGlobalSettings:function(t){return e((function(){return{globalSettings:t}}))},loadAddonGroups:function(t){return e((function(){return{addonGroups:t}}))},loadAddonStructure:function(t){return e((function(){return{addonStructure:t}}))},changeAddonStatus:function(t){return e((function(e){var r=e.addonGroups[t.groupName].findIndex((function(e){return e.name===t.addonName}));return(0,n.ZP)(e,(function(e){e.addonGroups[t.groupName][r].status=!e.addonGroups[t.groupName][r].status}))}))}}}),{name:"Addon Store"}))},6914:(e,t,r)=>{"use strict";r.d(t,{$x:()=>d,Kr:()=>h,LX:()=>f});var n=r(1731),o=r(1234),i=r(6492),a=r(5945),l=r(4469),c=r(5501),u=r(6537),s=r(7230),d=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=(0,n.p)().showToast,r=(0,s.x)((function(e){return e.loadAddonGroups})),o=(0,s.x)((function(e){return e.loadAddonStructure})),a=(0,s.x)((function(e){return e.loadGlobalSettings}));return(0,i.a)({queryKey:["AddonList",e],queryFn:function(){return function(e){return c.u.get(u.H.ADDONS,{params:{type:e}})}(e).then((function(e){return e.data}))},onSuccess:function(e){r(e.groups),o(e.addons),a(e.globals)},onError:function(e){t({type:"danger",message:e.message})}})},p=function(e){var t=e.addonName;return c.u.patch(u.H.ADDONS,{addon_name:t})},f=function(){var e=(0,n.p)().showToast,t=(0,o.$)(),r=(0,s.x)((function(e){return e.addonStructure})),i=(0,a.NL)();return(0,l.D)({mutationFn:p,onSuccess:function(n){var o=n.data,a=o.addon_name,l=o.status;i.invalidateQueries(["AddonList"]),e({type:"success",message:t(l?"COM_SPPAGEBUILDER_EDITOR_MODULE_STATUS_TOGGLING_ENABLED":"COM_SPPAGEBUILDER_EDITOR_MODULE_STATUS_TOGGLING_DISABLED",{addonName:r[a].title})})},onError:function(t){e({type:"danger",message:t.message})}})},v=function(e){return c.u.put(u.H.ADDONS,e).then((function(e){return e.data}))},h=function(){var e=(0,n.p)().showToast,t=(0,o.$)(),r=(0,s.x)((function(e){return e.addonStructure})),i=(0,a.NL)();return(0,l.D)({mutationFn:v,onSuccess:function(n){i.invalidateQueries(["AddonList"]);var o=n.state?"COM_SPPAGEBUILDER_EDITOR_ADD_TO_FAVORITE":"COM_SPPAGEBUILDER_EDITOR_REMOVE_FROM_FAVORITE";e({type:"success",message:t(o,{addon_name:r[n.addon_name].title})})},onError:function(t){e({type:"danger",message:t.message})}})}},2328:(e,t,r)=>{"use strict";r.d(t,{v:()=>i});var n=r(270),o=r(782),i=(0,n.Ue)()((0,o.mW)((function(e){return{appConfig:{pages:[],menus:[],popups:[],categories:[],plugins:[],modules:[],access_levels:[],article_categories:[],easystore_categories:[],languages:[],module_positions:[],font_awesome_icons:[],version:"",editor:{theme:"silver"},media_path:"/images",media_root_paths:["/images"],media_upload_max_size:0,is_pre_release:!1,google_font_categories:[],has_google_font_api_key:!1,is_google_fonts_disabled:!1,enable_frontend_editing:!0,enable_ai:!0,collections:{},permissions:{admin:!1,manage:!1,create:!1,edit:!1,edit_state:!1,edit_own:!1,delete:!1,page:{edit:!1,delete:!1,edit_state:!1,menu_access:!1},collection:{create:!1}},user_id:null,is_easystore_installed:!1,list_product_page_id:0,single_product_page_id:0,collection_page_id:0,quick_cart_modal_page_id:0,allowed_file_extensions:[]},loadAppConfig:function(t){return e((function(){return{appConfig:t}}))}}}),{name:"App Config"}))},8008:(e,t,r)=>{"use strict";r.d(t,{Ap:()=>f,NZ:()=>h,hC:()=>y,uw:()=>d});var n=r(1731),o=r(6537),i=r(1234),a=r(6492),l=r(5945),c=r(4469),u=r(5501),s=r(7602),d=function(){var e=(0,n.p)().showToast;return(0,a.a)({queryKey:["CustomIcons"],queryFn:function(){return u.u.get(o.H.GET_ALL_ICONS).then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},p=function(e){return u.u.post(o.H.GET_ALL_ICONS,{custom_icon:e})},f=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:p,onSuccess:function(n){var o;n.data.status?(null!==(o=n.data.data)&&void 0!==o&&o.css_path&&(0,s.z3)(n.data.data.css_path),t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_FILE_UPLOAD_SUCCESS_MESSAGE")}),e.invalidateQueries(["CustomIcons"]),e.invalidateQueries(["IconList"])):t({type:"danger",message:n.data.output})},onError:function(e){t({type:"danger",message:e.message})}})},v=function(e){return u.u.delete(o.H.GET_ALL_ICONS,{params:{ids:JSON.stringify(e)}})},h=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:v,onSuccess:function(){t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_FILE_DELETE_SUCCESS_MESSAGE")}),e.invalidateQueries(["CustomIcons"])},onError:function(e){t({type:"danger",message:e.message})}})},b=function(e){return u.u.patch(o.H.GET_ALL_ICONS,{status:e.status},{params:{id:e.id}})},y=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:b,onSuccess:function(){t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_CUSTOM_ICON_STATUS_CHANGE_MESSAGE")}),e.invalidateQueries(["CustomIcons"])},onError:function(e){t({type:"danger",message:e.message})}})}},1151:(e,t,r)=>{"use strict";r.d(t,{A0:()=>W,BY:()=>k,Bd:()=>K,Bq:()=>O,Fn:()=>H,H6:()=>A,H9:()=>ee,Lf:()=>Q,N2:()=>G,NZ:()=>U,Qr:()=>P,S0:()=>B,TN:()=>D,VI:()=>g,We:()=>$,YL:()=>w,Z$:()=>ne,dE:()=>Y,et:()=>z,fS:()=>J,hF:()=>I,jQ:()=>C,lL:()=>_,nu:()=>re,rX:()=>q,sd:()=>R});var n=r(1731),o=r(6537),i=r(36),a=r(1234),l=r(5945),c=r(4469),u=r(6492),s=r(5501),d=r(2861),p=r(7294);function f(e){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},f(e)}function v(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||function(e,t){if(e){if("string"==typeof e)return h(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?h(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach((function(t){m(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function m(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==f(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==f(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===f(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var g=function(e){return e.title="title",e.alias="alias",e}({}),E=function(e){return s.u.post(o.H.COLLECTION_UPDATE_BATCH_ITEM_FORM,e,{params:{_context:"collection-items"}})},O=function(){var e=(0,n.p)().showToast,t=(0,l.NL)(),r=(0,a.$)();return(0,c.D)({mutationFn:E,onSuccess:function(){e({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.invalidateQueries(["CollectionItems"]),t.invalidateQueries(["CollectionList"])},onError:function(t){e({type:"danger",message:t.message})}})},_=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).includeArticleSources,t=void 0!==e&&e,r=(0,n.p)().showToast;return(0,u.a)({queryKey:["CollectionList"],queryFn:function(){return function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).includeArticleSources,t=void 0!==e&&e;return s.u.get(o.H.COLLECTION_LIST,{params:{_context:"collections",include_article_sources:t?1:0}})}({includeArticleSources:t}).then((function(e){return e.data}))},onError:function(e){r({type:"danger",message:e.message})}})},w=function(e){var t=(0,n.p)().showToast;return(0,u.a)({queryKey:["CollectionItems",e],queryFn:function(){return function(e){return s.u.get(o.H.COLLECTION_LIST,{params:y(y({},e),{},{_context:"collection-items"})})}(e).then((function(e){return e.data}))},onError:function(e){t({type:"danger",message:e.message})}})},I=function(e){var t=(0,n.p)().showToast;return(0,u.a)({queryKey:["CollectionItemForm",e],queryFn:function(){return function(e){return s.u.get(o.H.COLLECTION_ITEM_FORM,{params:y(y({},e),{},{_context:"collection-items"})})}(e).then((function(e){return e.data}))},onError:function(e){t({type:"danger",message:e.message})}})},S=function(e){return s.u.post(o.H.UPDATE_ACTION,e,{params:{_context:"collection-items"}})},C=function(){var e=(0,n.p)().showToast,t=(0,a.$)(),r=(0,l.NL)();return(0,c.D)({mutationKey:["UpdateCollectionItem"],mutationFn:S,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_UPDATE_COLLECTION_SUCCESS_MESSAGE")}),r.invalidateQueries(["CollectionItems"]),r.invalidateQueries(["CollectionItemForm"])},onError:function(t){e({type:"danger",message:t.message})}})},x=function(e){return s.u.post(o.H.CREATE_COLLECTION,e,{params:{_context:"collections"}})},P=function(){var e=(0,n.p)().showToast,t=(0,a.$)(),r=(0,l.NL)();return(0,c.D)({mutationKey:["CreateCollection"],mutationFn:x,onSuccess:function(){r.invalidateQueries(["CollectionList"]),e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION_SUCCESS_MESSAGE")})},onError:function(r){e({type:"danger",message:r.message}),400===r.response.status&&e({type:"danger",message:t("COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION_VALIDATION_ERROR_MESSAGE")})}})},L=function(e){return s.u.post(o.H.CREATE_COLLECTION,e,{params:{_context:"collection-items"}})},A=function(){var e=(0,n.p)().showToast,t=(0,a.$)(),r=(0,l.NL)();return(0,c.D)({mutationKey:["CreateCollectionItem"],mutationFn:L,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_CREATE_COLLECTION_SUCCESS_MESSAGE")}),r.invalidateQueries(["CollectionList"]),r.invalidateQueries(["CollectionItems"]),r.invalidateQueries(["CollectionItemForm"])},onError:function(t){e({type:"danger",message:t.message})}})},T=function(e){var t=e.pks;return s.u.post(o.H.REORDER_COLLECTION,{pks:JSON.stringify(t)},{params:{_context:"collections"}})},D=function(){var e=(0,n.p)().showToast,t=(0,l.NL)();return(0,c.D)({mutationKey:["ReorderCollections"],mutationFn:T,onSuccess:function(){t.invalidateQueries(["CollectionList"])},onError:function(t){e({type:"danger",message:t.message})}})},Z=function(e){var t=e.id,r=e.title;return s.u.post(o.H.RENAME_COLLECTION,{id:t,title:r},{params:{_context:"collections"}})},R=function(){var e=(0,n.p)().showToast,t=(0,l.NL)();return(0,c.D)({mutationKey:["RenameCollection"],mutationFn:Z,onSuccess:function(){t.invalidateQueries(["CollectionList"])},onError:function(t){e({type:"danger",message:t.message})}})},j=function(e){var t=e.id;return s.u.post(o.H.DUPLICATE_COLLECTION,{id:t},{params:{_context:"collections"}})},B=function(){var e=(0,n.p)().showToast,t=(0,l.NL)();return(0,c.D)({mutationKey:["DuplicateCollection"],mutationFn:j,onSuccess:function(){t.invalidateQueries(["CollectionList"])},onError:function(t){e({type:"danger",message:t.message})}})},M=function(e){var t=e.id,r=e.force,n=void 0!==r&&r;return s.u.post(o.H.DELETE_COLLECTION,{id:t},{params:{_context:"collections",force:n?1:0}})},k=function(){var e=(0,n.p)().showToast,t=(0,l.NL)(),r=(0,a.$)();return(0,c.D)({mutationKey:["DeleteCollection"],mutationFn:M,onSuccess:function(n){!0===n.data&&(t.invalidateQueries(["CollectionList"]),e({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_DELETE_COLLECTION_SUCCESS_MESSAGE")}))},onError:function(t){e({type:"danger",message:t.message})}})},N=function(e){return s.u.post(o.H.UPDATE_ACTION,e,{params:{_context:"collections"}})},G=function(){var e=(0,n.p)().showToast,t=(0,a.$)(),r=(0,l.NL)();return(0,c.D)({mutationKey:["UpdateCollection"],mutationFn:N,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_UPDATE_COLLECTION_SUCCESS_MESSAGE")}),r.invalidateQueries(["CollectionList"]),r.invalidateQueries(["CollectionItems"]),r.invalidateQueries(["CollectionSchemaForItemTable"])},onError:function(t){e({type:"danger",message:t.message})}})},W=function(e){return(0,u.a)({queryKey:["CollectionSchema",e],enabled:!!e,queryFn:function(){return function(e){return s.u.get(o.H.COLLECTION_SCHEMA,{params:{id:e,_context:"collections"}})}(e).then((function(e){return e.data}))}})},U=function(e){var t=e.id,r=e.allowed_types;return(0,u.a)({queryKey:["CollectionAttributes",{id:t,allowed_types:r}],enabled:!!t,queryFn:function(){return function(e){var t=e.id,r=e.allowed_types;return s.u.post(o.H.COLLECTION_ATTRIBUTES,{collection_id:t,allowed_types:r},{params:{_context:"collections"}}).then((function(e){return e.data}))}({id:t,allowed_types:r})}})},F=function(e){var t=e.pks;return s.u.post(o.H.REORDER_COLLECTION_FIELDS,{pks:JSON.stringify(t)},{params:{_context:"collection-fields"}})},H=function(){return(0,c.D)({mutationFn:F})},q=function(e){return(0,u.a)({queryKey:["CollectionSchemaForItemTable",e],enabled:!!e,queryFn:function(){return function(e){return s.u.get(o.H.COLLECTION_SCHEMA,{params:{collection_id:e,_context:"collection-items"}})}(e).then((function(e){return e.data}))}})},V=function(e){var t=e.pks;return s.u.post(o.H.REORDER_COLLECTION,{pks:JSON.stringify(t)},{params:{_context:"collection-items"}})},z=function(){var e=(0,l.NL)();return(0,c.D)({mutationFn:V,onSuccess:function(){e.invalidateQueries(["CollectionList"])}})},X=function(e){var t=e.id;return s.u.post(o.H.DUPLICATE_COLLECTION_ITEM,{id:t},{params:{_context:"collection-items"}})},K=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast;return(0,c.D)({mutationFn:X,onSuccess:function(){e.invalidateQueries(["CollectionItems"])},onError:function(e){t({type:"danger",message:e.message})}})},$=function(e){var t=e.id;return(0,u.a)({queryKey:["CollectionFields",t],enabled:!!t,queryFn:function(){return function(e){var t=e.id;return s.u.get(o.H.COLLECTION_FIELDS,{params:{collection_id:t,_context:"collections"}}).then((function(e){return e.data}))}({id:t})}})},Y=function(e){return(0,u.a)({queryKey:["ReferenceCollectionFields",e],enabled:!!e.ownCollectionId&&!!e.parentCollectionId,queryFn:function(){return r=(t=e).ownCollectionId,n=t.parentCollectionId,s.u.get(o.H.REFERENCE_COLLECTION_FIELDS,{params:{own_collection_id:r,parent_collection_id:n,_context:"collections"}}).then((function(e){return e.data}));var t,r,n}})},Q=function(e){return(0,u.a)({queryKey:["CollectionTotalFields",e],enabled:!!e,queryFn:function(){return function(e){return s.u.get(o.H.COLLECTION_TOTAL_FIELDS,{params:{collection_id:e,_context:"collections"}}).then((function(e){return e.data}))}(e)}})},J=function(){return(0,u.a)({queryKey:["DynamicContentPages"],queryFn:function(){return s.u.get(o.H.DYNAMIC_CONTENT_PAGES,{params:{_context:"collections"}}).then((function(e){return e.data}))}})},ee=function(){return s.u.post(o.H.EXPORT_DYNAMIC_COLLECTION,{},{params:{_context:"collection-import-export"}})},te=function(e){return s.u.post(o.H.IMPORT_DYNAMIC_COLLECTION,e,{params:{_context:"collection-import-export"}})},re=function(){var e=(0,n.p)().showToast,t=(0,a.$)(),r=(0,l.NL)();return(0,c.D)({mutationKey:["ImportDynamicCollection"],mutationFn:te,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_IMPORT_DYNAMIC_COLLECTION_SUCCESS_MESSAGE")}),r.invalidateQueries(["CollectionList"])},onError:function(t){e({type:"danger",message:t.message})}})},ne=function(e){var t=(0,i.N)(e||""),r=v((0,p.useState)([]),2),n=r[0],o=r[1],a=v((0,p.useState)(!1),2),l=a[0],c=a[1];return(0,p.useEffect)((function(){if(!t||""===t.trim())return o([]),void c(!1);var e=new AbortController;return c(!0),d.Z.get("https://nominatim.openstreetmap.org/search",{params:{format:"json",addressdetails:1,limit:5,q:t},signal:e.signal,headers:{Accept:"application/json"}}).then((function(e){o(Array.isArray(e.data)?e.data:[])})).catch((function(e){var t;"CanceledError"===(null==e?void 0:e.name)||null!==(t=d.Z.isCancel)&&void 0!==t&&t.call(d.Z,e)||o([])})).finally((function(){return c(!1)})),function(){e.abort()}}),[t]),{suggestions:n,loading:l}}},7184:(e,t,r)=>{"use strict";r.d(t,{PS:()=>p,Xu:()=>d,nl:()=>h,xW:()=>f});var n=r(1731),o=r(6537),i=r(1234),a=r(4469),l=r(5945),c=r(5501),u=r(7602),s=function(e){return c.u.post(o.H.EXPORT,e)},d=function(){var e=(0,n.p)().showToast,t=(0,i.$)();return(0,a.D)({mutationKey:["ExportPageContent"],mutationFn:s,onSuccess:function(r){(0,u.OV)(JSON.stringify(r.data)),e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})},p=function(e,t,r){var n,i="index.php?option=com_sppagebuilder&task=".concat(o.H.BULK_EXPORT),a=document.createElement("form");a.setAttribute("method","post"),a.setAttribute("id","pageExport"),a.setAttribute("action",i),a.setAttribute("target","_blank");var l=document.createElement("input");l.setAttribute("type","hidden"),l.setAttribute("name","pageIds"),l.setAttribute("value",e),a.appendChild(l);var c=document.createElement("input");c.setAttribute("type","hidden"),c.setAttribute("name","isSeoChecked"),c.setAttribute("value",String(t)),a.appendChild(c);var s=document.createElement("input");s.setAttribute("type","hidden"),s.setAttribute("name","isMediaChecked"),s.setAttribute("value",String(r)),a.appendChild(s);var d=document.createElement("input");d.setAttribute("type","hidden"),d.setAttribute("name","_method"),d.setAttribute("value","POST"),a.appendChild(d);var p=document.createElement("input");p.setAttribute("type","hidden"),p.setAttribute("name",u.Xy.getOptions("csrf.token")),p.setAttribute("value","1"),a.appendChild(p),document.body.appendChild(a),a.submit(),null===(n=document.getElementById("pageExport"))||void 0===n||n.remove()},f=function(e,t){var r,n="index.php?option=com_sppagebuilder&task=".concat(o.H.EXPORT,"&pageId=").concat(e,"&isExportMedia=1&isSeoChecked=").concat(t),i=document.createElement("form");i.setAttribute("method","post"),i.setAttribute("id","pageExport"),i.setAttribute("action",n),i.setAttribute("target","_blank");var a=document.createElement("input");a.setAttribute("type","hidden"),a.setAttribute("name","_method"),a.setAttribute("value","POST"),i.appendChild(a);var l=document.createElement("input");l.setAttribute("type","hidden"),l.setAttribute("name",u.Xy.getOptions("csrf.token")),l.setAttribute("value","1"),i.appendChild(l),document.body.appendChild(i),i.submit(),null===(r=document.getElementById("pageExport"))||void 0===r||r.remove()},v=function(e){return c.u.post(o.H.BULK_IMPORT,{pagesZip:e})},h=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,a.D)({mutationFn:v,onSuccess:function(n){(0,u.$K)(n.data)&&n.data.status&&(t({type:"success",message:n.data.message||r("COM_SPPAGEBUILDER_EDITOR_BULK_IMPORT_SUCCESS")}),e.invalidateQueries(["PageList"]))},onError:function(e){t({type:"danger",message:e.message})}})}},7839:(e,t,r)=>{"use strict";r.d(t,{A6:()=>m,M9:()=>w,Sh:()=>g,Sq:()=>O,a4:()=>x,nZ:()=>S});var n=r(1731),o=r(6537),i=r(1234),a=r(8596),l=r(6492),c=r(5945),u=r(4469),s=r(5501),d=r(2328);function p(e){return p="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(e)}function f(){f=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,o){var i=t&&t.prototype instanceof v?t:v,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function v(){}function h(){}function b(){}var y={};c(y,i,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(P([])));g&&g!==t&&r.call(g,i)&&(y=g);var E=b.prototype=v.prototype=Object.create(y);function O(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=s(e[n],e,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==p(d)&&r.call(d,"__await")?t.resolve(d.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(d).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,d;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[i];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return h.prototype=b,n(E,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:h,configurable:!0}),h.displayName=c(b,l,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===h||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,c(e,l,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),c(_.prototype,a,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(u(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),c(E,l,"Generator"),c(E,i,(function(){return this})),c(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}function v(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function h(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?h(Object(r),!0).forEach((function(t){y(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):h(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function y(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==p(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==p(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===p(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var m=function(e){return(0,a.N)({queryKey:["InstalledFonts",e],queryFn:function(t){var r=t.pageParam,n=void 0===r?1:r,i=e.limit||10,a=(n-1)*i;return function(e){return s.u.get(o.H.FONTS,{params:b(b({},e),{},{installed:!0})}).then((function(e){return e.data}))}(b(b({},e),{},{offset:a,limit:i}))},getNextPageParam:function(e,t){return e.totalPages>t.length?t.length+1:void 0}})},g=function(){var e=(0,n.p)().showToast;return(0,l.a)({queryKey:["AllInstalledFonts"],queryFn:function(){return s.u.get(o.H.ALL_FONTS).then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},E=function(){var e,t=(e=f().mark((function e(t){return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",s.u.get(o.H.FONTS,{params:t}).then((function(e){return e.data})));case 1:case"end":return e.stop()}}),e)})),function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){v(i,n,o,a,l,"next",e)}function l(e){v(i,n,o,a,l,"throw",e)}a(void 0)}))});return function(e){return t.apply(this,arguments)}}(),O=function(e){var t=(0,n.p)().showToast,r=(0,d.v)((function(e){return e.appConfig}));return(0,a.N)({queryKey:["GoogleFonts",e,r.has_google_font_api_key],queryFn:function(t){var r=t.pageParam,n=void 0===r?1:r,o=e.limit||20,i=(n-1)*o;return E(b(b({},e),{},{offset:i,limit:o}))},getNextPageParam:function(e,t){return e.totalPages>t.length?t.length+1:void 0},onError:function(e){t({type:"danger",message:e.message})},enabled:r.has_google_font_api_key})},_=function(e){var t=e.font;return s.u.post(o.H.UPLOAD_FONT,{font:t})},w=function(){var e=(0,c.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,u.D)({mutationFn:_,onSuccess:function(n){n.data.id?(t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_FILE_UPLOAD_SUCCESS_MESSAGE")}),e.invalidateQueries(["InstalledFonts"]),e.invalidateQueries(["AllInstalledFonts"])):t({type:"danger",message:n.data.message})},onError:function(e){t({type:"danger",message:e.message})}})},I=function(e){return s.u.post(o.H.FONTS,e).then((function(e){return e.data}))},S=function(){var e=(0,c.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,u.D)({mutationFn:I,onSuccess:function(n){n.id>0&&(t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_FONT_INSTALL_MESSAGE")}),e.invalidateQueries(["GoogleFonts"]),e.invalidateQueries(["InstalledFonts"]),e.invalidateQueries(["AllInstalledFonts"]))},onError:function(e){t({type:"danger",message:e.message})}})},C=function(e){return s.u.delete(o.H.FONTS,{params:e})},x=function(){var e=(0,i.$)(),t=(0,c.NL)(),r=(0,n.p)().showToast;return(0,u.D)({mutationFn:C,onSuccess:function(){r({type:"success",message:e("COM_SPPAGEBUILDER_EDITOR_SAVED_SECTION_DELETE_SUCCESS")}),t.invalidateQueries(["GoogleFonts"]),t.invalidateQueries(["InstalledFonts"]),t.invalidateQueries(["AllInstalledFonts"])},onError:function(e){r({type:"danger",message:e.message})}})}},2614:(e,t,r)=>{"use strict";r.d(t,{x:()=>i});var n=r(270),o=r(782),i=(0,n.Ue)()((0,o.mW)((function(e){return{isLoading:!1,setIsLoading:function(t){return e((function(){return{isLoading:t}}))}}})))},9194:(e,t,r)=>{"use strict";r.d(t,{HX:()=>b,i8:()=>v,nx:()=>d,u9:()=>p});var n=r(1731),o=r(6537),i=r(1234),a=r(6492),l=r(4469),c=r(5501),u=r(7602),s=r(3896),d=function(){var e=(0,n.p)().showToast;return(0,a.a)({queryKey:["LayoutList"],queryFn:function(){return c.u.get(o.H.PAGE_TEMPLATE_LIST).then((function(e){return e.data}))},keepPreviousData:!0,onError:function(t){e({type:"danger",message:t.message})}})},p=function(){var e=(0,n.p)().showToast;return(0,a.a)({queryKey:["PopupLayoutList"],queryFn:function(){return c.u.get(o.H.POPUP_TEMPLATE_LIST).then((function(e){return e.data}))},keepPreviousData:!0,onError:function(t){e({type:"danger",message:t.message})}})},f=function(e){var t=e.id,r=e.type,n=void 0===r?"":r;return c.u.get(o.H.LAYOUT_IMPORT,{params:{id:t,type:n}})},v=function(){var e=(0,n.p)().showToast;return(0,l.D)({mutationFn:f,onError:function(t){e({type:"danger",message:t.message})}})},h=function(e){return c.u.post(o.H.IMPORT_LAYOUT_FILE,{page:e})},b=function(){var e=(0,i.$)(),t=(0,n.p)().showToast,r=(0,s.o)((function(e){return e.setPageContent}));return(0,l.D)({mutationFn:h,onSuccess:function(n){var o=(0,u.Rx)(n.data.template);(0,u.$K)(o)?(r(o),t({type:"success",message:e("COM_SPPAGEBUILDER_EDITOR_LAYOUT_FILE_IMPORTED_SUCCESSFULLY")})):t({type:"danger",message:e("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")})},onError:function(){t({type:"danger",message:e("COM_SPPAGEBUILDER_EDITOR_GLOBAL_SOMETHING_WENT_WRONG")})}})}},7679:(e,t,r)=>{"use strict";r.d(t,{J5:()=>C,R4:()=>A,dE:()=>P,eS:()=>M,es:()=>B,hh:()=>L,lN:()=>I,mp:()=>R,r7:()=>D,u6:()=>O,z1:()=>_});var n=r(1731),o=r(1234),i=r(6492),a=r(5945),l=r(4469),c=r(5501),u=r(5616),s=r(7602),d=r(6537),p=r(3896),f=r(2423);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}var h=["text","attribs","og_image","version_name","version_note"],b=["id"];function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function m(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach((function(t){g(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function g(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==v(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===v(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function E(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var O=function(e){var t=(0,n.p)().showToast;return(0,i.a)({queryKey:["PageList",e],queryFn:function(){return function(e){return c.u.get(d.H.PAGES,{params:(0,s.fF)(e)})}(e).then((function(e){return e.data}))},onError:function(e){t({type:"danger",message:e.message})}})},_=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=(0,p.o)((function(e){return e.setPageContent})),o=(0,n.p)().showToast;return(0,i.a)({enabled:!!Number(e),queryKey:["PageContent",e],queryFn:function(){return(0,s.cW)(e,"Missing page ID"),function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return c.u.get(d.H.PAGE_CONTENT_BY_ID,{params:{id:e,type:t}})}(Number(e),t).then((function(e){return e.data}))},onSuccess:function(e){r(e.text)},onError:function(e){o({type:"danger",message:e.message})}})},w=function(e){var t,r,n,o,i,a,l,p,f,v=e.id,y=E(e,b);return c.u.put(d.H.PAGES,(r=(t=y).text,n=t.attribs,o=t.og_image,i=t.version_name,a=t.version_note,l=E(t,h),p=m(m(m({},{meta_description:"",meta_keywords:"",robots:"",seo_spacer:"",author:""}),n),{},{robots:(0,s.$K)(n.robots)&&"global"===n.robots?"":n.robots,schema:(0,u.h)(n.schema)}),f=m(m({},l),{},{text:JSON.stringify(r),attribs:JSON.stringify(p),og_image:o.src&&JSON.stringify(o)}),i&&(f.version_name=i),a&&(f.version_note=a),f.is_free_version=s.Eu,f),{params:{id:v}})},I=function(){var e=(0,n.p)().showToast,t=(0,o.$)(),r=(0,f.s)((function(e){return e.setShowWarningAtReload})),i=(0,a.NL)();return(0,l.D)({mutationFn:w,onSuccess:function(n,o){var a="popup"===o.extension_view;e({type:"success",message:t(a?"COM_SPPAGEBUILDER_EDITOR_POPUP_SAVED_SUCCESSFULLY":"COM_SPPAGEBUILDER_EDITOR_PAGE_SAVED_SUCCESSFULLY")}),r(!1),i.invalidateQueries(["PageList"]),i.invalidateQueries({queryKey:["PageVersions"]})},onError:function(t){e({type:"danger",message:t.message})}})},S=function(e){return c.u.patch(d.H.PAGE_PADLOCK,e)},C=function(){var e=(0,n.p)().showToast,t=(0,a.NL)();return(0,l.D)({mutationFn:S,onSuccess:function(){t.invalidateQueries(["PageList"])},onError:function(t){e({type:"danger",message:t.message})}})},x=function(e){return c.u.patch(d.H.DELETE_PAGE_HITS,e)},P=function(){var e=(0,n.p)().showToast,t=(0,a.NL)();return(0,l.D)({mutationFn:x,onSuccess:function(){t.invalidateQueries(["PageList"])},onError:function(t){e({type:"danger",message:t.message})}})},L=function(e){return c.u.patch(d.H.PAGES,e)},A=function(){var e=(0,n.p)().showToast,t=(0,a.NL)(),r=(0,o.$)();return(0,l.D)({mutationFn:L,onSuccess:function(){e({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.invalidateQueries(["PageList"])},onError:function(t){e({type:"danger",message:t.message})}})},T=function(e){var t=e.ids,r=e.orders;return c.u.patch(d.H.PAGE_ORDERING,{ids:t.join(","),orders:r.join(",")})},D=function(){var e=(0,a.NL)(),t=(0,n.p)().showToast;return(0,l.D)({mutationFn:T,onSuccess:function(){e.invalidateQueries(["PageList"])},onError:function(e){t({type:"danger",message:e.message})}})},Z=function(e){var t=e.title,r=e.type,n=e.collection_id,o=e.page_type,i=e.language;return c.u.post(d.H.PAGES,{title:t,type:r,collection_id:n,page_type:o,language:i}).then((function(e){return e.data}))},R=function(){var e=(0,n.p)().showToast,t=(0,a.NL)();return(0,l.D)({mutationFn:Z,onSuccess:function(){t.invalidateQueries(["AppConfig"])},onError:function(t){e({type:"danger",message:t.message})}})},j=function(e){return c.u.get(d.H.DUPLICATE_PAGE,{params:{id:e.id}}).then((function(e){return e.data}))},B=function(e){var t=(0,n.p)().showToast,r=(0,o.$)(),i=(0,a.NL)();return(0,l.D)({mutationFn:j,onSuccess:function(){i.invalidateQueries(["PageList"]),null!=e&&e.hideSuccessMessage||t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_PAGE_DUPLICATED_SUCCESSFULLY")})},onError:function(e){t({type:"danger",message:e.message})}})},M=function(e){return(0,i.a)({enabled:!!e,queryKey:["PreviewUrl",e],queryFn:function(){return(0,s.cW)(e,"Missing page ID"),function(e){return c.u.get(d.H.PREVIEW_URL,{params:{id:e}}).then((function(e){return e.data}))}(e)}})}},3891:(e,t,r)=>{"use strict";r.d(t,{$F:()=>p,E4:()=>E,Gj:()=>I,_s:()=>h,fp:()=>d,hX:()=>y,iG:()=>f,rM:()=>_,uC:()=>C,x:()=>m});var n=r(1731),o=r(6537),i=r(1234),a=r(6492),l=r(5945),c=r(4469),u=r(5501),s=r(7602),d=function(e){return(0,s.Kn)(e)&&"title"in e&&"section"in e},p=function(e){return(0,s.Kn)(e)&&"title"in e&&"code"in e},f=function(){var e=(0,n.p)().showToast;return(0,a.a)({queryKey:["getSavedAddons"],queryFn:function(){return u.u.get(o.H.SAVED_ADDONS).then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},v=function(e){var t=e.title,r=e.code;return u.u.post(o.H.SAVED_ADDONS,{title:t,code:r}).then((function(e){return e.data}))},h=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:v,onSuccess:function(){e.invalidateQueries(["getSavedAddons"]),t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_ADDON_SAVE_MESSAGE")})},onError:function(e){t({type:"danger",message:e.message})}})},b=function(e){return u.u.delete(o.H.SAVED_ADDONS,{params:{id:e}})},y=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:b,onSuccess:function(){e.invalidateQueries(["getSavedAddons"]),t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_SAVED_ADDON_DELETE_SUCCESS")})},onError:function(e){t({type:"danger",message:e.message})}})},m=function(){var e=(0,n.p)().showToast;return(0,a.a)({queryKey:["getSavedSections"],queryFn:function(){return u.u.get(o.H.SAVED_SECTIONS).then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},g=function(e){var t=e.title,r=e.section;return u.u.post(o.H.SAVED_SECTIONS,{title:t,section:r}).then((function(e){return e.data}))},E=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:g,onSuccess:function(){e.invalidateQueries(["getSavedSections"]),t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_SECTION_SAVE_MESSAGE")})},onError:function(e){t({type:"danger",message:e.message})}})},O=function(e){return u.u.delete(o.H.SAVED_SECTIONS,{params:{id:e}})},_=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast,r=(0,i.$)();return(0,c.D)({mutationFn:O,onSuccess:function(){e.invalidateQueries(["getSavedSections"]),t({type:"success",message:r("COM_SPPAGEBUILDER_EDITOR_SAVED_SECTION_DELETE_SUCCESS")})},onError:function(e){t({type:"danger",message:e.message})}})},w=function(e){var t=e.ids,r=e.orders;return u.u.patch(o.H.SAVED_SECTIONS_ORDERING,{ids:t.join(","),orders:r.join(",")})},I=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast;return(0,c.D)({mutationFn:w,onSuccess:function(){e.invalidateQueries(["getSavedSections"])},onError:function(e){t({type:"danger",message:e.message})}})},S=function(e){var t=e.ids,r=e.orders;return u.u.patch(o.H.SAVED_ADDONS_ORDERING,{ids:t.join(","),orders:r.join(",")})},C=function(){var e=(0,l.NL)(),t=(0,n.p)().showToast;return(0,c.D)({mutationFn:S,onSuccess:function(){e.invalidateQueries(["getSavedAddons"])},onError:function(e){t({type:"danger",message:e.message})}})}},3722:(e,t,r)=>{"use strict";r.d(t,{b:()=>u,u:()=>d});var n=r(1731),o=r(6537),i=r(1234),a=r(4469),l=r(5501),c=function(e){return l.u.get(o.H.SAVED_PRESETS,{params:{id:e}}).then((function(e){return e.data}))},u=function(){var e=(0,n.p)().showToast;return(0,a.D)({mutationFn:c,onSuccess:function(){},onError:function(t){e({type:"danger",message:t.message})}})},s=function(e){var t=e.title,r=e.addon_name,n=e.preset;return l.u.post(o.H.SAVED_PRESETS,{title:t,addon_name:r,preset:n}).then((function(e){return e.data}))},d=function(){var e=(0,n.p)().showToast,t=(0,i.$)();return(0,a.D)({mutationFn:s,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_ADDON_SAVE_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})}},8331:(e,t,r)=>{"use strict";r.d(t,{B:()=>i});var n=r(270),o=r(782),i=(0,n.Ue)()((0,o.mW)((function(e){return{config:{section:{style:{},title:{},responsive:{},animation:{}},column:{style:{},responsive:{},animation:{}},sectionDefaults:{},columnDefaults:{}},loadConfig:function(t){return e((function(){return{config:t}}))}}}),{name:"Section Column Settings Store"}))},2967:(e,t,r)=>{"use strict";r.d(t,{L:()=>c,t:()=>u});var n=r(1731),o=r(6492),i=r(5501),a=r(7602),l=r(6537),c=function(e){return(0,a.Kn)(e)&&"json"in e&&"thumb"in e},u=function(){var e=(0,n.p)().showToast;return(0,o.a)({queryKey:["SectionLibrary"],queryFn:function(){return i.u.get(l.H.SECTION_LIBRARY).then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})}},2445:(e,t,r)=>{"use strict";r.d(t,{F:()=>a});var n=r(270),o=r(782),i=r(8753),a=(0,n.Ue)()((0,i.n)((0,o.mW)((function(e){return{type:null,payload:{sectionIndex:null,columnIndex:null,addonIndex:null},setSettings:function(t,r){e((function(e){e.payload=r,e.type=t}))}}}),{name:"Settings Store"})))},8225:(e,t,r)=>{"use strict";r.d(t,{LY:()=>g,S5:()=>_,U1:()=>m,V2:()=>x,es:()=>S,f2:()=>O,nq:()=>b});var n=r(1731),o=r(6537),i=r(1234),a=r(8331),l=r(6492),c=r(5945),u=r(4469),s=r(5501);function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}var p=["ig_token","colors","typography","sppb_color_variables"];function f(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function v(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?f(Object(r),!0).forEach((function(t){h(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):f(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function h(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==d(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==d(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===d(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var b=function(){var e=(0,a.B)((function(e){return e.loadConfig})),t=(0,n.p)().showToast;return(0,l.a)({queryKey:["SectionAndColumnSettings"],queryFn:function(){return s.u.get(o.H.SETTINGS).then((function(e){return e.data}))},onSuccess:function(t){e(t)},onError:function(e){t({type:"danger",message:e.message})}})},y=function(){return s.u.get(o.H.APPLICATION_SETTINGS)},m=function(){var e=(0,n.p)().showToast;return(0,l.a)({queryKey:["ApplicationSettings"],queryFn:function(){return y().then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},g=function(){var e=(0,n.p)().showToast;return(0,l.a)({queryKey:["TypographyPresets"],queryFn:function(){return y().then((function(e){return e.data}))},onError:function(t){e({type:"danger",message:t.message})}})},E=function(e){var t=e.ig_token,r=e.colors,n=e.typography,i=e.sppb_color_variables,a=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(e,p);return s.u.put(o.H.APPLICATION_SETTINGS,v(v({},a),{},{ig_token:JSON.stringify(t),colors:JSON.stringify(r),typography:JSON.stringify(n),sppb_color_variables:JSON.stringify(i)}))},O=function(){var e=(0,n.p)().showToast,t=(0,c.NL)();return(0,u.D)({mutationFn:E,onSuccess:function(){e({type:"success",message:"Settings saved successfully!"}),t.invalidateQueries(["ApplicationSettings"]),t.invalidateQueries(["AppConfig"])},onError:function(t){e({type:"danger",message:t.message})}})},_=function(){return(0,u.D)({mutationFn:w})},w=function(e){var t=e.group_index,r=e.typography_index;return s.u.get(o.H.TYPOGRAPHY_IN_USE,{params:{group_index:t,typography_index:r}})},I=function(){return s.u.get(o.H.PURGE_CSS)},S=function(){var e=(0,n.p)().showToast,t=(0,i.$)();return(0,u.D)({mutationFn:I,onSuccess:function(){e({type:"success",message:t("COM_SPPAGEBUILDER_EDITOR_CSS_PURGED_SUCCESSFULLY")})},onError:function(t){e({type:"danger",message:t.message})}})},C=function(e){return s.u.post(o.H.SAVE_IG_TOKEN,{ig_token:e.ig_token})},x=function(){var e=(0,n.p)().showToast;return(0,u.D)({mutationFn:C,onError:function(t){e({type:"danger",message:t.message})}})}},3896:(e,t,r)=>{"use strict";r.d(t,{o:()=>At});var n=r(2902),o=r(270),i=r(782),a=r(8753),l=r(3106),c=r(2423),u=r(2238),s=r(6216),d=r(7602),p=r(1245),f=r.n(p);function v(e){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},v(e)}var h=["reference_id"];function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach((function(t){m(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function m(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==v(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==v(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===v(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(e){return function(e){if(Array.isArray(e))return _(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||O(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||O(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(e,t){if(e){if("string"==typeof e)return _(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_(e,t):void 0}}function _(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var w=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.childIndex;return e((function(e){var t,a=e.page[r],l=a.columns[n],s=l.addons,p=(0,u.DV)({sections:e.page,rowId:a.id,columnId:l.id,addonList:s,addon:s[o]});if(!(0,d.$K)(p))return e;var f=E(p.addons,1)[0];if((0,d.$K)(f)&&(0,d.$K)(i)&&f.parent){var v,h=s.findIndex((function(e){return e.id===f.parent})),b=s[h];(0,d.$K)(b)&&(null===(v=b.children)||void 0===v||v.splice(i+1,0,f.id))}return s.splice.apply(s,[o+1,0].concat(g(p.addons))),(t=e.page).splice.apply(t,[r+1,0].concat(g(p.sections))),(0,c.m)(e)}),!1,"DUPLICATE_ADDON")}},I=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=i.itemIdx,u=i.rowItemIdx,s=i.contentItemIdx;return e((function(e){var t=e.page[r].columns[n].addons[o];if((0,d.$K)(u)){var i,p=null===(i=t.settings)||void 0===i?void 0:i[l.pb.bodyItemsKey];if((0,d.$K)(p)){var v=p[a].table_advanced_item[u].content[s],h=p[a].table_advanced_item[u].content,b=f()(v);b.id=(0,d.x0)(),h.splice(s+1,0,b)}}else{var y,m=null===(y=t.settings)||void 0===y?void 0:y[l.pb.headerItemsKey];if((0,d.$K)(m)){var g=m[a].content[s],E=m[a].content,O=f()(g);O.id=(0,d.x0)(),E.splice(s+1,0,O)}}return(0,c.m)(e)}),!1,"DUPLICATE_TABLE_ITEM_ADDON")}},S=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex;return e((function(e){var t=e.page[r],i=t.columns[n],a=i.addons,c=(0,u.DV)({sections:e.page,rowId:t.id,columnId:i.id,addonList:a,addon:a[o]});return(0,d.$K)(c)?((0,s.pj)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY,JSON.stringify(c)),e.copiedData.addon=c,e):e}),!1,"COPY_ADDON")}},C=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=i.itemIdx,c=i.rowItemIdx,u=i.contentItemIdx;return e((function(e){var t,i=e.page[r].columns[n].addons[o];if((0,d.$K)(c)){var p,v=null===(p=i.settings)||void 0===p?void 0:p[l.pb.bodyItemsKey];t=null==v?void 0:v[a].table_advanced_item[c].content[u]}else{var b,y=null===(b=i.settings)||void 0===b?void 0:b[l.pb.headerItemsKey];t=null==y?void 0:y[a].content[u]}if(!(0,d.$K)(t))return e;var m=f()(t),g=(m.reference_id,function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(m,h)),E={name:t.name,addons:[g],sections:[]};return(0,s.pj)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY,JSON.stringify(E)),e.copiedData.addon=E,e}),!1,"COPY_TABLE_ITEM_ADDON")}},x=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.childIndex,a=t.parentId,l=t.addonData,s=t.isAbove,p=void 0!==s&&s;return e((function(e){var t,s=e.page[r],f=s.columns[n],v=f.addons,h=(0,u.DV)({sections:l.sections,rowId:s.id,columnId:f.id,addonList:l.addons,addon:l.addons[0]});if(!(0,d.$K)(h))return e;var b=E(h.addons,1)[0];if(b.parent=!1,(0,d.$K)(i)){var y,m=null!=a?a:null===(y=v[o])||void 0===y?void 0:y.parent;if(m){var O,_=v.findIndex((function(e){return e.id===m})),w=v[_];(0,d.$K)(w)&&(null===(O=w.children)||void 0===O||O.splice(p?i:i+1,0,b.id),b.parent=w.id)}}return v.splice.apply(v,[p?o:o+1,0].concat(g(h.addons))),(t=e.page).splice.apply(t,[r,0].concat(g(h.sections))),(0,c.m)(e)}),!1,"PASTE_OR_INSERT_ADDON")}},P=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=t.addonData,u=t.isAbove,s=void 0!==u&&u,p=i.itemIdx,v=i.rowItemIdx,h=i.contentItemIdx;return e((function(e){var t=E(a.addons,1)[0];if(!(0,d.$K)(t))return e;var i=f()(t);i.id=(0,d.x0)();var u=e.page[r].columns[n].addons[o],b=s?h:h+1;if(i.reference_id=u.id,i.parent&&(i.parent=!1),(0,d.$K)(v)){var y,m=null===(y=u.settings)||void 0===y?void 0:y[l.pb.bodyItemsKey];(0,d.$K)(m)&&m[p].table_advanced_item[v].content.splice(b,0,i)}else{var g,O=null===(g=u.settings)||void 0===g?void 0:g[l.pb.headerItemsKey];(0,d.$K)(O)&&O[p].content.splice(b,0,i)}return(0,c.m)(e)}),!1,"PASTE_TABLE_ITEM_ADDON")}},L=function(e){return function(t){var r=t.styleSettings,n=t.globalStyleSettings,o=t.sectionIndex,i=t.columnIndex,a=t.addonIndex;return e((function(e){var t=e.page[o].columns[i].addons[a];return(0,d.$K)(t.settings)&&(t.settings=y(y(y({},t.settings),r),n)),(0,c.m)(e)}),!1,"PASTE_ADDON_STYLE")}},A=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=t.styleSettings,u=t.globalStyleSettings,s=i.itemIdx,p=i.rowItemIdx,f=i.contentItemIdx;return e((function(e){var t,i=e.page[r].columns[n].addons[o];if((0,d.$K)(p)){var v,h=null===(v=i.settings)||void 0===v?void 0:v[l.pb.bodyItemsKey];t=null==h?void 0:h[s].table_advanced_item[p].content[f]}else{var b,m=null===(b=i.settings)||void 0===b?void 0:b[l.pb.headerItemsKey];t=null==m?void 0:m[s].content[f]}return(0,d.$K)(t)&&(0,d.$K)(t.settings)&&(t.settings=y(y(y({},t.settings),a),u)),(0,c.m)(e)}),!1,"PASTE_TABLE_ITEM_ADDON_STYLE")}},T=function(e){return function(){var t=(0,s.fp)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY),r=(0,s.fp)(l.dR.COPIED_SECTION_LOCAL_STORAGE_KEY);return e((function(e){return t&&(e.copiedData.addon=JSON.parse(t)),r&&(e.copiedData.section=JSON.parse(r)),e}),!1,"LOAD_COPIED_DATA_FIRST_TIME")}},D=function(e){return function(t){return e((function(e){return e.copiedData.addon=(0,d.$K)(t)?JSON.parse(t):null,e}),!1,"LOAD_COPIED_ADDON")}},Z=function(e){return function(t){return e((function(e){return e.copiedData.section=(0,d.$K)(t)?JSON.parse(t):null,e}),!1,"LOAD_COPIED_SECTION")}},R=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex;return e((function(e){var t=e.page[r].columns[n].addons,i=t[o];return"div"===i.name?((0,u.u)(i,t),(0,u.iK)(o,t,e.page)):Object.keys(l.RI).includes(i.name)?((0,u.u)(i,t),t.splice(o,1),(0,u.RL)(i,e.page)):((0,u.u)(i,t),t.splice(o,1)),(0,c.m)(e)}),!1,"DELETE_ADDON")}},j=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=i.itemIdx,u=i.rowItemIdx,s=i.contentItemIdx;return e((function(e){var t=e.page[r].columns[n].addons[o];if((0,d.$K)(u)){var i,p=null===(i=t.settings)||void 0===i?void 0:i[l.pb.bodyItemsKey];(0,d.$K)(p)&&p[a].table_advanced_item[u].content.splice(s,1)}else{var f,v=null===(f=t.settings)||void 0===f?void 0:f[l.pb.headerItemsKey];(0,d.$K)(v)&&v[a].content.splice(s,1)}return(0,c.m)(e)}),!1,"DELETE_TABLE_ITEM_ADDON")}},B=r(5587);function M(e){return M="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},M(e)}function k(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function N(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?k(Object(r),!0).forEach((function(t){G(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):k(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function G(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==M(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==M(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===M(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function W(e){return function(e){if(Array.isArray(e))return U(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return U(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?U(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function U(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var F=function(e){var t=e.sections,r=e.sectionsObject,n=e.section,o=[];return n.columns.forEach((function(e){var i=[];e.addons.forEach((function(a){if(!a.parent)if(Object.keys(l.RI).includes(a.name)){var c=H({sections:t,sectionsObject:r,addon:a,options:{rowId:n.id,columnId:e.id}});(0,d.$K)(c)&&(i.push(c.addon),o.push.apply(o,W(c.sections)))}else if("nested_row"===a.type){var u=function(e){var t=e.sections,r=e.sectionsObject,n=e.addon,o=e.options,i=[],a=r[n.id];if(!(0,d.$K)(a))return null;(0,d.$K)(o)&&(a.parent={rowId:o.rowId,columnId:o.columnId}),i.push(a);var l=F({sections:t,sectionsObject:r,section:a});return i.push.apply(i,W(l)),{addon:n,sections:i}}({sections:t,sectionsObject:r,addon:a,options:{rowId:n.id,columnId:e.id}});(0,d.$K)(u)&&(i.push(u.addon),o.push.apply(o,W(u.sections)))}else if("div"===a.name){var s=q({sections:t,sectionsObject:r,addon:a,addonList:e.addons,options:{rowId:n.id,columnId:e.id}}),p=s.divAddon,f=s.children,v=s.nestedSections;i.push.apply(i,[p].concat(W(f))),o.push.apply(o,W(v))}else i.push(a)})),i.length>0&&(e.addons=i)})),o},H=function(e){var t,r=e.sections,n=e.sectionsObject,o=e.addon,i=e.options,a=[];return(null===(t=o.settings)||void 0===t?void 0:t[l.RI[o.name].key]).forEach((function(e){e.content.forEach((function(e){var t=n[e.id];if(!(0,d.$K)(t))return null;(0,d.$K)(i)&&(t.parent={rowId:i.rowId,columnId:i.columnId}),a.push(t);var o=F({sections:r,sectionsObject:n,section:t});a.push.apply(a,W(o))}))})),{addon:o,sections:a}},q=function(e){var t=e.sections,r=e.sectionsObject,n=e.addonList,o=e.addon,i=e.options,a=[],c=[];return function e(o){n.forEach((function(n){var u,s=null===(u=o.children)||void 0===u?void 0:u.findIndex((function(e){return e===n.id}));if((0,d.$K)(s)&&-1!==s){if(Object.keys(l.RI).includes(n.name)){var p=H({sections:t,sectionsObject:r,addon:n,options:{rowId:i.rowId,columnId:i.columnId}});c=p.sections}a.push(n),"div"===n.name&&e(n)}}))}(o),{divAddon:o,children:a,nestedSections:c}},V=function(e){var t=e.sections,r=e.rowId,n=e.columnId,o=e.addonList,i=e.addon,a=Object.fromEntries(t.map((function(e,t){return[e.id,N(N({},e),{},{index:t})]}))),c=null;if("div"===i.name){var u=q({sections:t,sectionsObject:a,addon:i,addonList:o,options:{rowId:r,columnId:n}}),s=u.divAddon,p=u.children,f=u.nestedSections;c={name:s.name,addons:[s].concat(W(p)),sections:f}}else if(Object.keys(l.RI).includes(i.name)){var v=H({sections:t,sectionsObject:a,addon:i,options:{rowId:r,columnId:n}});(0,d.$K)(v)&&(c={name:v.addon.name,addons:[v.addon],sections:v.sections})}else c={name:i.name,addons:[i],sections:[]};return c};function z(e){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},z(e)}function X(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||$(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function K(e){return function(e){if(Array.isArray(e))return Y(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||$(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $(e,t){if(e){if("string"==typeof e)return Y(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Y(e,t):void 0}}function Y(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function J(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(r),!0).forEach((function(t){ee(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ee(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==z(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==z(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===z(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var te=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.itemAddonIndex,a=void 0===i?0:i,l=t.childIndex,u=t.addon,s=t.isAbove,p=e.page[r].columns[n].addons[o].items;return(0,d.$K)(p)?(p.forEach((function(e){var t=J({id:(0,d.x0)(),type:u.type,name:u.name,visibility:!0,title:u.title,icon:u.icon,settings:J({},u.default)},"div"===u.name&&{children:[]}),r=e[a];if((0,d.$K)(r)&&r.parent){var n=r.parent,o=e.findIndex((function(e){return e.id===n})),i=e[o];if((0,d.$K)(i)){var c,p=null!=l?l:0;null===(c=i.children)||void 0===c||c.splice(s?p:p+1,0,t.id),t.parent=n}}else if((0,d.$K)(r)&&"div"===r.name&&(0,d.$K)(l)){var f,v=r,h=null!==(f=v.children)&&void 0!==f?f:[];h.splice(s?l:l+1,0,t.id),t.parent=v.id,e[a].children=h}e.splice(s?a:a+1,0,t)})),(0,c.m)(e)):e}),!1,"ADD_COLLECTION_ADDON")}},re=function(e){return function(t){return e((function(e){var r,n,o=t.sectionIndex,i=t.columnIndex,a=t.addonIndex,c=t.itemIndex,p=t.itemAddonIndex,v=null!==(r=null===(n=e.page[o].columns[i].addons[a].items)||void 0===n?void 0:n[c])&&void 0!==r?r:[],h=v[p],b=f()(h);b.parent=!1;var y=null;if("div"===h.name){var m=(0,u.vH)({addon:b,addonList:v}),g=m.divAddon,E=m.children;y={name:g.name,addons:[g].concat(K(E)),sections:[]}}else b.id=(0,d.x0)(),y={name:b.name,addons:[b],sections:[]};return(0,d.$K)(y)?((0,s.pj)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY,JSON.stringify(y)),e.copiedData.addon=y,e):e}),!1,"COPY_COLLECTION_ITEM_ADDON")}},ne=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.itemIndex,a=t.itemAddonIndex,l=t.childIndex,s=t.parentId,p=t.addonData,v=t.isAbove,h=void 0!==v&&v;return e((function(e){var t,v,b=null!==(t=e.page[r].columns[n].addons[o].items)&&void 0!==t?t:[],y=null!==(v=b[i])&&void 0!==v?v:[],m=y[a],g=f()(p.addons[0]),E=null;if("div"===m.name){var O=(0,u.vH)({addon:g,addonList:y}),_=O.divAddon,w=O.children;E={name:_.name,addons:[_].concat(K(w)),sections:[]}}else g.id=(0,d.x0)(),E={name:g.name,addons:[g],sections:[]};if(!(0,d.$K)(E))return e;var I,S=y.findIndex((function(e){return e.id===s})),C=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=$(e))){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(b);try{for(C.s();!(I=C.n()).done;){var x=I.value,P=X(E.addons,1)[0];if(P.parent=!1,(0,d.$K)(s)&&(0,d.$K)(l)){var L,A=x[S];(0,d.$K)(A)&&(null===(L=A.children)||void 0===L||L.splice(h?l:l+1,0,P.id),P.parent=A.id)}x.splice.apply(x,[h?a:a+1,0].concat(K(E.addons)))}}catch(e){C.e(e)}finally{C.f()}return(0,c.m)(e)}),!1,"PASTE_OR_INSERT_COLLECTION_ITEM_ADDON")}},oe=function(e){return function(t){var r=t.sourceSectionIndex,n=t.destinationSectionIndex,o=t.sourceColumnIndex,i=t.destinationColumnIndex,a=t.sourceAddonIndex,l=t.destinationAddonIndex,s=t.destinationItemAddonIndex,p=t.isAbove;return e((function(e){var t=e.page[r].columns[o].addons,f=t[a],v=e.page[n].columns[i].addons[l].items;return(0,d.$K)(v)?((0,u.u)(f,t),t.splice(a,1),v.forEach((function(e){(0,d.$K)(s)?e.splice(p?s:s+1,0,f):e.push(f)})),(0,c.m)(e)):e}),!1,"SORT_ADDON_WITH_COLLECTION_ITEM_ADDON")}},ie=function(e){return function(t){var r=t.sourceSectionIndex,n=t.sourceColumnIndex,o=t.sourceAddonIndex,i=t.sourceItemAddonIndex,a=t.destinationItemAddonIndex,l=t.sourceChildIndex,s=t.destinationChildIndex,p=t.isEmptyChild,f=t.isAbove;return e((function(e){var t=e.page[r].columns[n].addons[o].items;return(0,d.$K)(t)?(t.forEach((function(r,n){var c=r[i],v=r[a],h=c.parent,b=function(e){var t=e.addonList,r=e.addon,n=null;if("div"===r.name){var o=function(e){var t=e.addonList,r=e.addon,n=[];return function e(r){t.forEach((function(t){var o,i=null===(o=r.children)||void 0===o?void 0:o.findIndex((function(e){return e===t.id}));(0,d.$K)(i)&&-1!==i&&(n.push(t),"div"===t.name&&e(t))}))}(r),{divAddon:r,children:n}}({addon:r,addonList:t}),i=o.divAddon,a=o.children;n={name:i.name,addons:[i].concat(W(a))}}else n={name:r.name,addons:[r]};return n}({addonList:r,addon:c});if(!(0,d.$K)(b))return e;var y=X(b.addons,1)[0];if("div"===v.name&&p){var m=v;m.children=[c.id],(0,u.u)(y,r),y.parent=m.id}else if((0,d.$K)(s)&&(0,d.$K)(v.parent)){var g=r.findIndex((function(e){return e.id===v.parent})),E=r[g];(0,d.$K)(E)&&E.children&&((0,d.$K)(c.parent)&&(0,d.$K)(l)&&c.parent===v.parent?E.children=(0,B.Rp)(E.children,l,s):(E.children.splice(f?s:s+1,0,y.id),(0,u.u)(y,r),y.parent=E.id))}else(0,u.u)(y,r);v.id===h?(o<a&&!f||o>a&&f)&&(t[n]=(0,B.Rp)(r,i,a)):t[n]=(0,B.Rp)(r,i,a)})),(0,c.m)(e)):e}),!1,"SORT_COLLECTION_ADDON")}},ae=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.itemAddonIndex,a=t.childIndex;return e((function(e){var t=e.page[r].columns[n].addons,l=t[o],s=l.items;return(0,d.$K)(s)?(s.forEach((function(e,t){var r,n,o=e[i],l=f()(o);if("div"===o.name){var c=(0,u.vH)({addon:l,addonList:e}),p=c.divAddon,v=c.children;n=[p].concat(K(v))}else l.id=(0,d.x0)(),n=[l];if((0,d.$K)(a)&&l.parent){var h,b=e.findIndex((function(e){return e.id===l.parent})),y=e[b];(0,d.$K)(y)&&(null===(h=y.children)||void 0===h||h.splice(a+1,0,l.id))}(r=s[t]).splice.apply(r,[i+1,0].concat(K(n)))})),t[o]=l,(0,c.m)(e)):e}),!1,"DUPLICATE_COLLECTION_ITEM_ADDON")}},le=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.itemAddonIndex;return e((function(e){var t=e.page[r].columns[n].addons,a=t[o],l=a.items;return(0,d.$K)(l)?(l.forEach((function(e,t){var r=l[t][i];"div"===r.name?((0,u.u)(r,e),(0,u.iK)(i,e,[])):((0,u.u)(r,e),l[t].splice(i,1))})),t[o]=a,(0,c.m)(e)):e}),!1,"DELETE_COLLECTION_ITEM_ADDON")}},ce=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.itemAddonIndex,a=t.visibility,l=e.page[r].columns[n].addons[o].items;return(0,d.$K)(l)?(l.forEach((function(e,t){l[t][i].visibility=!a})),(0,c.m)(e)):e}),!1,"CHANGE_COLLECTION_ITEM_ADDON_VISIBILITY")}},ue=function(e){return function(t){var r=t.styleSettings,n=t.globalStyleSettings,o=t.sectionIndex,i=t.columnIndex,a=t.addonIndex,l=t.itemAddonIndex;return e((function(e){var t=e.page[o].columns[i].addons[a].items;return(0,d.$K)(t)?(t.forEach((function(e,o){var i=t[o][l];(0,d.$K)(i.settings)&&(t[o][l].settings=J(J(J({},i.settings),r),n))})),(0,c.m)(e)):e}),!1,"PASTE_COLLECTION_ITEM_ADDON_STYLE")}},se=["unit"];function de(e){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},de(e)}function pe(e,t){if(e){if("string"==typeof e)return fe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?fe(e,t):void 0}}function fe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function ve(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function he(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ve(Object(r),!0).forEach((function(t){be(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ve(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function be(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==de(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==de(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===de(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ye=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex;return e((function(e){var t,o,i=e.page[r],a=i.columns,l=a[n],s=Object.fromEntries(e.page.map((function(e,t){return[e.id,he(he({},e),{},{index:t})]}))),d=(0,u.Gm)({sections:e.page,sectionsObject:s,sectionId:i.id,column:l}),p=d.column,f=d.sections,v=a.length+1,h=Math.min(12/v,12);return e.page[r].layout=Array(v).fill(h).join("+"),e.page[r].columns.splice(n+1,0,p),(t=e.page).splice.apply(t,[r+1,0].concat(function(e){if(Array.isArray(e))return fe(e)}(o=f)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(o)||pe(o)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())),(0,c.m)(e)}),!1,"DUPLiCATE_COLUMN")}},me=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex;return e((function(e){var t=e.page[r],o=t.columns,i=o[n];if(o.length>1){var a=o.length-1,l=Math.min(12/a,12);t.layout=Array(a).fill(l).join("+"),o.splice(n,1)}else e.page.splice(r,1);return(0,u.p_)(i,e.page),(0,c.m)(e)}),!1,"DELETE_COLUMN")}},ge=function(e){return function(t){var r=t.sectionIndex;return e((function(e){var t=e.page[r],n=t.columns;if(0===n.length)return e;var o=n.length,i=Math.min(12/o,12);return t.layout=Array(o).fill(i).join("+"),n.forEach((function(e){e.settings.width=(0,u.h)(i)})),(0,c.m)(e)}),!1,"RESET_COLUMN_WIDTH")}},Ee=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.width;return e((function(e){var t=o.unit,i=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(o,se);return e.page[r].columns[n].settings.width=Object.fromEntries(Object.entries(i).map((function(e){var r,n,o=(n=2,function(e){if(Array.isArray(e))return e}(r=e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,n)||pe(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),i=o[0],a=o[1];return[i,"".concat(a).concat(t)]}))),e}),!1,"UPDATE_COLUMN_WIDTH")}},Oe=r(251),_e=r.n(Oe),we=r(653),Ie=r(8331);function Se(e){return Se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Se(e)}function Ce(e){return function(e){if(Array.isArray(e))return xe(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return xe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?xe(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function xe(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Pe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Pe(Object(r),!0).forEach((function(t){Ae(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Pe(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Ae(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Se(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Se(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Se(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Te=function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e((function(e){return r&&(0,c.m)(e),e.page=(0,d.MF)(t),e}),!1,"SET_PAGE_CONTENT")}},De=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.preset,a=e.page[r].columns[n].addons[o];if(!(0,d.$K)(a))return e;var l=(0,d.$K)(i)?(0,d.Rx)(i):{},s=(0,d.$K)(l)?l:{items:[],settings:{}},p=s.items,f=s.settings;if(!(0,d.$K)(p))return e;var v=(0,d.w6)(10).map((function(){return(0,u.Jr)(p)}));return a.items=v,a.settings=f,(0,c.m)(e)}),!1,"ADD_COLLECTION_ITEMS")}},Ze=function(e){return function(){return e((function(e){var t=(0,u.sd)(e.page);return e.page=t,e}),!1,"VALIDATE_OLD_PAGE_CONTENT")}},Re=function(e){return function(t){var r=Ie.B.getState().config,n=r.sectionDefaults,o=r.columnDefaults;return e((function(e){var r=t.sectionIndex,i=t.columnIndex,a=t.addonIndex,s=t.childIndex,p=t.emptyDivChild,f=t.addon,v=t.isAbove,h=(0,d.x0)(),b=e.page[r].columns[i].addons,y=e.page[r],m=y.columns[i],g=m.addons[a],E=a,O=Le(Le(Le({id:h,type:f.type,name:f.name,visibility:!0,title:f.title,icon:f.icon,settings:Le({},f.default)},"div"===f.name&&{children:[]}),(0,d.dA)(f.name)&&{items:(0,d.w6)(10).map((function(){return[]}))}),(0,we.Lx)(f.name)&&{child_nodes:[]});if(Object.keys(l.RI).includes(f.name)){var _=l.RI[f.name],w=_.key,I=_.title,S=_.text,C={id:(0,d.x0)(),type:"nested_row",name:"row"},x={id:(0,d.x0)(),name:"text_block",title:"Text Block",visibility:!0,settings:{text:S},icon:""};(0,d.$K)(O.settings)&&(O.settings[w]=[{title:I,content:[C]}]);var P=(0,u.v)({id:C.id,layout:"12",rowSettings:Le(Le({},n),{},{padding:{lg:"5px 0px 5px 0px",md:"5px 0px 5px 0px",sm:"",xl:"",xs:""}}),columnSettings:o,addons:[x],parent:{rowId:y.id,columnId:m.id}});P.parent_addon=h,e.page.splice(r+1,0,P)}if(f.name===l.pb.name&&(0,d.$K)(O.settings)&&(O.settings[l.pb.headerItemsKey]=(0,u.I4)({itemList:O.settings[l.pb.headerItemsKey],tableId:h}),O.settings[l.pb.bodyItemsKey]=(0,u.I4)({itemList:O.settings[l.pb.bodyItemsKey],tableId:h})),(0,d.$K)(g)&&"div"===g.name&&p){var L=g;L.children=[O.id],O.parent=L.id,E++}else if((0,d.$K)(g)&&g.parent){var A=g.parent,T=b.findIndex((function(e){return e.id===A})),D=b[T];if((0,d.$K)(D)){var Z,R=null!=s?s:0;null===(Z=D.children)||void 0===Z||Z.splice(v?R:R+1,0,O.id),O.parent=A}}return b.splice(v?E:E+1,0,O),(0,c.m)(e)}),!1,"ADD_NEW_ADDON")}},je=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=t.addon,u=t.isAbove,s=i.itemIdx,p=i.rowItemIdx,f=i.contentItemIdx;return e((function(e){var t=e.page[r].columns[n].addons[o],i={id:(0,d.x0)(),type:a.type,name:a.name,visibility:!0,title:a.title,icon:a.icon,settings:Le({},a.default)};if((0,d.$K)(p)){var v,h=null===(v=t.settings)||void 0===v?void 0:v[l.pb.bodyItemsKey];if((0,d.$K)(h)){var b=h[s].table_advanced_item[p].content;u?b.splice(f,0,i):b.splice(f+1,0,i)}}else{var y,m=null===(y=t.settings)||void 0===y?void 0:y[l.pb.headerItemsKey];if((0,d.$K)(m)){var g=m[s].content;u?g.splice(f,0,i):g.splice(f+1,0,i)}}return(0,c.m)(e)}),!1,"ADD_NEW_TABLE_ITEM_ADDON")}},Be=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.tableItem,a=t.visibility,u=e.page[r].columns[n].addons[o];if((0,d.$K)(i)){var s=i.itemIdx,p=i.rowItemIdx,f=i.contentItemIdx;if((0,d.$K)(p)){var v,h=null===(v=u.settings)||void 0===v?void 0:v[l.pb.bodyItemsKey];if((0,d.$K)(h)){var b=h[s].table_advanced_item[p].content[f],y=!(0,d.$K)(b.visibility)||b.visibility;b.visibility=!y}}else{var m,g=null===(m=u.settings)||void 0===m?void 0:m[l.pb.headerItemsKey];if((0,d.$K)(g)){var E=g[s].content[f],O=!(0,d.$K)(E.visibility)||E.visibility;E.visibility=!O}}}else u.visibility=!a;return(0,c.m)(e)}),!1,"CHANGE_ADDON_VISIBILITY")}},Me=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.visibility;return e.page[r].columns[n].visibility=!o,(0,c.m)(e)}),!1,"CHANGE_COLUMN_VISIBILITY")}},ke=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.visibility;return e.page[r].visibility=!n,(0,c.m)(e)}),!1,"CHANGE_SECTION_VISIBILITY")}},Ne=function(e){return function(t){var r=t.layout,n=t.index,o=Ie.B.getState().config,i=o.sectionDefaults,a=o.columnDefaults;return e((function(e){var t=(0,u.v)({layout:r,columnSettings:a,rowSettings:i});return e.page.splice(n,0,t),(0,c.m)(e)}),!1,"ADD_NEW_SECTION")}},Ge=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.item,a=t.sections,s=t.layout,p=Ie.B.getState().config,f=p.sectionDefaults,v=p.columnDefaults;return e((function(e){var t,p=e.page[r],h=p.columns[n],b=h.addons[o],y={id:(0,d.x0)(),name:"text_block",title:"Text Block",visibility:!0,settings:{text:l.RI.accordion.text},icon:""},m=i.content.map((function(e){return(0,u.v)({id:e.id,layout:null!=s?s:"12",columnSettings:v,rowSettings:f,parent:{rowId:p.id,columnId:h.id},parent_addon:b.id,addons:[y]})}));return(t=e.page).push.apply(t,Ce(null!=a?a:m)),(0,c.m)(e)}),!1,"ADD_NESTED_ROW_DEEP_ADDON")}},We=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.layout,a=t.isTop,l=Ie.B.getState().config,s=l.sectionDefaults,p=l.columnDefaults;return e((function(e){var t=e.page[r],l=t.columns[n],f=(0,d.x0)(),v={id:f,type:"nested_row",name:"row",title:"Row",visibility:!0,icon:""},h=(0,u.v)({id:f,layout:null!=i?i:"6+6",columnSettings:p,rowSettings:s,parent:{rowId:t.id,columnId:l.id}});return l.addons.splice(a?o:o+1,0,v),e.page.push(h),(0,c.m)(e)}),!1,"ADD_NESTED_ROW")}},Ue=function(e){return function(t){var r=t.index,n=t.layout,o=Ie.B.getState().config.columnDefaults;return e((function(e){var t=e.page[r],i=/[+,]/,a=n.split(i).map((function(e){var t=e.trim();return Number(t)>12?12:Number(t)})).filter(Number),s=t.layout.split(i);if(a.join("+")===t.layout)return e;t.layout=a.join("+");var d=a.map((function(e,r){if(s.length-1>=r){var n=t.columns[r];return n.settings.width=(0,u.h)(e),n}return(0,u.wy)({columnSettings:o,size:e})}));if(s.length<=a.length)return t.columns=d,e;var p=t.columns.slice(a.length).reduce((function(e,t){var r=[];return t.addons.forEach((function(e){r.push(e)})),[].concat(Ce(e),r)}),[]),f=d[d.length-1],v=Object.fromEntries(e.page.map((function(e,t){return[e.id,Le(Le({},e),{},{index:t})]})));return p.forEach((function(r){var n;if(Object.keys(l.RI).includes(r.name))(null===(n=r.settings)||void 0===n?void 0:n[l.RI[r.name].key]).forEach((function(r){r.content.forEach((function(r){var n=v[r.id].index;e.page[n].parent={rowId:t.id,columnId:f.id}}))}));else if("nested_row"===r.type){var o=v[r.id].index;e.page[o].parent={rowId:t.id,columnId:f.id}}})),f.addons=[].concat(Ce(f.addons),Ce(p)),t.columns=d,(0,c.m)(e)}),!1,"UPDATE_SECTION_LAYOUT")}},Fe=function(e){return function(t){var r=t.sectionIndex,n=t.index,o=Ie.B.getState().config.columnDefaults;return e((function(e){var t=e.page[r].columns,i=(0,u.wy)({columnSettings:o,size:l.lk}),a=e.page[r].layout.split(/[+,]/);return a.splice(n,0,String(l.lk)),e.page[r].layout=a.join("+"),t.splice(n,0,i),(0,c.m)(e)}),!1,"ADD_NEW_COLUMN")}},He=function(e){return function(t,r){var o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return e((function(e){var i=r.type,a=r.sectionIndex,u=r.columnIndex,s=r.addon,p=!0;switch(i){case"addon":case"collection_item":case"collection_item_addon":case"dynamic_content_collection_item_addon":if(!(0,d.$K)(s))break;var f=null==s?void 0:s.settings,v=(0,n.mv)(f)?(0,n.Js)(f):f,h=t;p=!_e()(v,h),s.settings=t;break;case"column":if((0,d.$K)(a)&&(0,d.$K)(u)){var b=(0,n.mv)(e.page[a].columns[u].settings)?(0,n.Js)(e.page[a].columns[u].settings):e.page[a].columns[u].settings;p=!_e()(b,t),e.page[a].columns[u].settings=t}break;case"section":if((0,d.$K)(a)){var y=(0,n.mv)(e.page[a].settings)?(0,n.Js)(e.page[a].settings):e.page[a].settings;p=!_e()(y,t),e.page[a].settings=t}}if(p&&(p=o),p){var m=c.s.getState().changesUntilSettingsPanelOpen,g=Math.min(l.Q9,m+1);c.s.setState({changesUntilSettingsPanelOpen:g})}return p?(0,c.m)(e):e}),!1,"UPDATE_SETTINGS")}},qe=function(e){return function(){return e((function(e){return e.copiedData.addon=null,e.copiedData.section=null,(0,s.Rv)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY),(0,s.Rv)(l.dR.COPIED_SECTION_LOCAL_STORAGE_KEY),e}),!1,"RESET_COPIED_DATA")}},Ve=function(e){return function(){return e((function(e){return(0,c.m)(e),e.page=[],e}),!1,"CLEAR_PAGE_CONTENT")}},ze=function(e){return function(t){var r=t.label,n=t.row,o=t.addon,i=t.tableAddonItem,a=t.collectionItemAddon,u=t.dynamicCollectionItemAddon;return e((function(e){if((0,d.$K)(n)&&(e.page[n.sectionIndex].settings.admin_label=r),(0,d.$K)(o)){var t=e.page[o.sectionIndex].columns[o.columnIndex].addons[o.addonIndex].settings;(0,d.$K)(t)&&(t.admin_label=r)}if((0,d.$K)(i)){var s,p,f,v,h=i.sectionIndex,b=i.columnIndex,y=i.addonIndex,m=i.itemIdx,g=i.rowItemIdx,E=i.contentItemIdx,O=e.page[h].columns[b].addons[y];(0,d.$K)(g)?(null!==(s=null===(p=O.settings)||void 0===p?void 0:p[l.pb.bodyItemsKey])&&void 0!==s?s:[])[m].table_advanced_item[g].content[E].settings.admin_label=r:(null!==(f=null===(v=O.settings)||void 0===v?void 0:v[l.pb.headerItemsKey])&&void 0!==f?f:[])[m].content[E].settings.admin_label=r}if((0,d.$K)(a)){var _=a.sectionIndex,w=a.columnIndex,I=a.addonIndex,S=a.itemAddonIndex,C=a.childIndex,x=e.page[_].columns[w].addons[I];(0,d.$K)(x.items)&&x.items.forEach((function(e){if((0,d.$K)(C)){var t=e[C].settings;(0,d.$K)(t)&&(t.admin_label=r)}else{var n=e[S].settings;(0,d.$K)(n)&&(n.admin_label=r)}}))}if((0,d.$K)(u)){var P=u.addon;(0,d.$K)(null==P?void 0:P.settings)&&(P.settings.admin_label=r)}return(0,c.m)(e)}),!1,"UPDATE_ADMIN_LABEL")}},Xe=r(4999);function Ke(e){return Ke="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Ke(e)}function $e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ye(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?$e(Object(r),!0).forEach((function(t){Qe(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):$e(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Qe(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==Ke(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==Ke(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===Ke(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var Je=function(e,t){var r,n;if(t.parent){var o=e.findIndex((function(e){return e.id===t.id}));if(-1!==o){var i=e.find((function(e){return e.id===t.parent})),a=null==i||null===(r=i.children)||void 0===r?void 0:r.indexOf(t.id);(0,d.$K)(a)&&-1!==a&&null!=i&&null!==(n=i.children)&&void 0!==n&&n.length&&(i.children.splice(a,1),e.splice(o,1))}}},et=function(e,t){if(t.parent)return e.find((function(e){return e.id===t.parent}))};function tt(e){return tt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},tt(e)}function rt(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function nt(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?rt(Object(r),!0).forEach((function(t){ot(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):rt(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function ot(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==tt(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==tt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===tt(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var it=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addon,i=t.isAbove,a=t.overItem,l=t.isEmptyState,u=e.page[r].columns[n].addons;if(!a)return e;var s=(0,Xe.k3)(u,a);if(!(0,d.$K)(a)||!(0,d.$K)(s))return e;var p=nt({id:(0,d.x0)(),type:o.type,name:o.name,visibility:!0,title:o.title,icon:o.icon,settings:nt({},o.default)},((0,we.Lx)(o.name)||"div"===o.name)&&{child_nodes:[]});return(0,Xe.Lf)(s,nt(nt({},a),{},{isEmptyState:l}),p,s,0,i),(0,c.m)(e)}),!1,"ADD_COLLECTION_ADDON")}},at=function(e){return function(t){var r=t.source,n=t.destination,o=t.isAbove,i=t.isEmptyState,a=r.sectionIndex,l=r.columnIndex,u=n.sectionIndex,s=n.columnIndex;return e((function(e){var t,p,f,v,h,b,y=e.page[a].columns[l].addons,m=e.page[u].columns[s].addons;if(r.isRegularDivChild&&n.isDynamicContentChild)return function(e){var t,r,n,o=e.state,i=e.source,a=e.destination,l=e.isAbove,u=e.sourceAddons,s=e.destinationAddons,p=e.isEmptyState;if((0,we.Lx)(a.content.name)||p)return null===(n=a.content.child_nodes)||void 0===n||n.push(Ye(Ye({},i.content),{},{parent:!1})),Je(u,i.content),(0,c.m)(o);var f=(0,Xe.k3)(s,a.content);if(!(0,d.$K)(f))return o;var v=(0,Xe.Ow)(f,a.content);if(!(0,d.$K)(v))return o;var h=null===(t=v.child_nodes)||void 0===t?void 0:t.findIndex((function(e){return e.id===a.content.id}));return(0,d.$K)(h)&&-1!==h?(null===(r=v.child_nodes)||void 0===r||r.splice(l?h:h+1,0,Ye(Ye({},i.content),{},{parent:!1})),Je(u,i.content),(0,c.m)(o)):o}({state:e,source:r,destination:n,isAbove:o,sourceAddons:y,destinationAddons:m,isEmptyState:i});if(r.isDynamicContentChild&&n.isRegularDivChild)return function(e){var t,r,n,o=e.state,i=e.source,a=e.destination,l=e.isAbove,u=e.sourceAddons,s=e.destinationAddons,p=e.isEmptyState,f=(0,Xe.k3)(u,i.content);if(!(0,d.$K)(f))return o;var v=(0,Xe.Ow)(f,i.content);if(!(0,d.$K)(v))return o;if(p){var h,b,y=i.content;return y.parent=a.content.id,null===(h=a.content.children)||void 0===h||h.push(y.id),s.push(y),v.child_nodes=null===(b=v.child_nodes)||void 0===b?void 0:b.filter((function(e){return e.id!==y.id})),(0,c.m)(o)}var m=i.content,g=et(s,a.content);if(!(0,d.$K)(g))return o;if(m.parent=g.id,!(0,d.$K)(v)||!(0,d.$K)(g))return o;var E=null===(t=g.children)||void 0===t?void 0:t.indexOf(a.content.id);return(0,d.$K)(E)&&-1!==E?(null===(r=g.children)||void 0===r||r.splice(l?E:E+1,0,m.id),s.push(m),v.child_nodes=null===(n=v.child_nodes)||void 0===n?void 0:n.filter((function(e){return e.id!==m.id})),(0,c.m)(o)):o}({state:e,source:r,destination:n,isAbove:o,sourceAddons:y,destinationAddons:m,isEmptyState:i});if(r.isRegularDivChild&&n.isRegularDivChild)return function(e){var t,r,n,o,i=e.state,a=e.destination,l=e.isAbove,u=e.sourceAddons,s=e.destinationAddons,p=e.source.content,f=a.content,v=et(u,p),h=et(s,f);if(!(0,d.$K)(v)||!(0,d.$K)(h))return i;if(v.id===h.id){if(null==h||!h.children)return i;var b=h.children.indexOf(p.id),y=h.children.indexOf(f.id);return h.children=(0,B.Rp)(null==h?void 0:h.children,b,y),(0,c.m)(i)}var m=u.findIndex((function(e){return e.id===p.id}));if(s.findIndex((function(e){return e.id===f.id})),!(0,d.$K)(v)||!(0,d.$K)(h))return i;var g=null===(t=v.children)||void 0===t?void 0:t.indexOf(p.id),E=null===(r=h.children)||void 0===r?void 0:r.indexOf(f.id);return(0,d.$K)(g)&&(0,d.$K)(E)&&-1!==g&&-1!==E?(p.parent=h.id,v.children=null===(n=v.children)||void 0===n?void 0:n.filter((function(e){return e!==p.id})),null===(o=h.children)||void 0===o||o.splice(l?E:E+1,0,p.id),u.splice(m,1),s.push(p),(0,c.m)(i)):i}({state:e,source:r,destination:n,isAbove:o,sourceAddons:y,destinationAddons:m});var g=(0,Xe.k3)(y,r.content),E=(0,Xe.k3)(m,n.content);if(!(0,d.$K)(g)||!(0,d.$K)(E))return e;var O=(0,Xe.Ow)(g,r.content),_=(0,Xe.Ow)(E,n.content);if(!(0,d.$K)(O)||!(0,d.$K)(_))return e;if(null==_||null===(t=_.child_nodes)||void 0===t||!t.length||null==O||null===(p=O.child_nodes)||void 0===p||!p.length)return e;var w=null==_||null===(f=_.child_nodes)||void 0===f?void 0:f.findIndex((function(e){return e.id===n.content.id})),I=null==O||null===(v=O.child_nodes)||void 0===v?void 0:v.findIndex((function(e){return e.id===r.content.id}));if(i){var S,C=(0,Xe.MI)(E,n.content);return(0,d.$K)(C)&&(0,d.$K)(C.child_nodes)?(null===(S=C.child_nodes)||void 0===S||S.push(O.child_nodes[I]),O.child_nodes.splice(I,1),(0,c.m)(e)):e}return O.id===_.id?(_.child_nodes=(0,B.Rp)(_.child_nodes,I,w),(0,c.m)(e)):(null===(h=_.child_nodes)||void 0===h||h.splice(o?w:w+1,0,O.child_nodes[I]),null===(b=O.child_nodes)||void 0===b||b.splice(I,1),(0,c.m)(e))}))}},lt=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addon,i=e.page[r].columns[n].addons;if(!i.length)return e;var a=(0,Xe.Ln)(i,o);return e.page[r].columns[n].addons=a,(0,c.m)(e)}))}},ct=function(e){return function(t){return e((function(e){var r=t.addon,n=f()(r),o={name:n.name,addons:[n],sections:[]};return(0,s.pj)(l.dR.COPIED_ADDON_LOCAL_STORAGE_KEY,JSON.stringify(o)),e.copiedData.addon=o,e}))}},ut=function(e){return function(t){return e((function(e){var r,n=t.sectionIndex,o=t.columnIndex,i=t.isAbove,a=t.addon,l=t.pasteInside,u=void 0!==l&&l,s=e.copiedData.addon;if(!(0,d.$K)(s)||null===(r=s.addons)||void 0===r||!r.length)return e;var p=s.addons[0];(0,Xe.oY)(p,(function(e){e.id=(0,d.x0)()}));var f=e.page[n].columns[o].addons;return(0,Xe.ez)(f,a,p,i,u),(0,c.m)(e)}))}},st=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addon,i=t.visibility,a=e.page[r].columns[n].addons;return(0,Xe.j$)(a,(function(e){e.id===o.id&&(e.visibility=!i)})),(0,c.m)(e)}))}},dt=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.columnIndex,o=t.addon,i=e.page[r].columns[n].addons,a=f()(o);return(0,Xe.oY)(a,(function(e){e.id=(0,d.x0)()})),(0,Xe.ez)(i,o,a,!1),(0,c.m)(e)}))}};function pt(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||vt(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ft(e){return function(e){if(Array.isArray(e))return ht(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||vt(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vt(e,t){if(e){if("string"==typeof e)return ht(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ht(e,t):void 0}}function ht(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var bt=function(e){return function(t){var r=t.sectionIndex;return e((function(e){var t,n=(0,u.Nk)({sectionIndex:r,sections:e.page});return(t=e.page).splice.apply(t,[r+1,0].concat(ft(n))),(0,c.m)(e)}),!1,"DUPLICATE_SECTION")}},yt=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.nestedSectionIndex;return e((function(e){var t,a=e.page[r],l=a.columns[n],s=l.addons,p=s[o],v=(0,d.x0)(),h=f()(p);h.id=v,s.splice(o+1,0,h);var b=(0,u.Nk)({sectionIndex:i,sectionId:h.id,sections:e.page}),y=pt(b,1)[0];return y.id=v,y.parent={rowId:a.id,columnId:l.id},(t=e.page).splice.apply(t,[i+1,0].concat(ft(b))),(0,c.m)(e)}),!1,"DUPLICATE_NESTED_SECTION")}},mt=function(e){return function(t){var r=t.sectionIndex;return e((function(e){var t=(0,u.Nk)({sectionIndex:r,sections:e.page});return(0,s.pj)(l.dR.COPIED_SECTION_LOCAL_STORAGE_KEY,JSON.stringify(t)),e.copiedData.section=t,e}),!1,"COPY_SECTION")}},gt=function(e){return function(t){var r=t.sectionIndex,n=t.sectionData,o=t.isAbove,i=void 0!==o&&o,a=t.replace,l=void 0!==a&&a;return e((function(e){var t,o,a=(0,u.Nk)({sectionIndex:0,sections:n});return l?(t=e.page).splice.apply(t,[r,1].concat(ft(a))):(o=e.page).splice.apply(o,[i?r:r+1,0].concat(ft(a))),(0,c.m)(e)}),!1,"PASTE_OR_INSERT_SECTION")}},Et=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.nestedSectionIndex,a=t.sectionData,l=t.isAbove,s=t.replace;return e((function(e){var t=e.page[r],d=t.columns[n],p=d.addons,f=(0,u.Nk)({sectionIndex:0,sections:a}),v=pt(f,1)[0],h={id:v.id,type:"nested_row",name:"row",title:"Row",visibility:!0,icon:""};if(v.parent={rowId:t.id,columnId:d.id},s){var b;p.splice(o,1,h);var y=e.page[i];(b=e.page).splice.apply(b,[i,1].concat(ft(f))),(0,u.OE)(y,e.page)}else{var m;p.splice(l?o:o+1,0,h),(m=e.page).splice.apply(m,[i+1,0].concat(ft(f)))}return(0,c.m)(e)}),!1,"PASTE_OR_INSERT_NESTED_SECTION")}},Ot=function(e){return function(t){var r=t.sectionIndex;return e((function(e){var t=e.page[r];return(0,d.$K)(t)?(e.page.splice(r,1),(0,u.OE)(t,e.page),(0,c.m)(e)):e}),!1,"DELETE_SECTION")}},_t=function(e){return function(t){var r=t.sectionIndex,n=t.columnIndex,o=t.addonIndex,i=t.nestedSectionIndex;return e((function(e){var t=e.page[r].columns[n].addons,a=e.page[i];return(0,d.$K)(a)?(t.splice(o,1),e.page.splice(i,1),(0,u.OE)(a,e.page),(0,c.m)(e)):e}),!1,"DELETE_NESTED_SECTION")}};function wt(e,t){if(e){if("string"==typeof e)return It(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?It(e,t):void 0}}function It(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var St=function(e){return function(t){return e((function(e){var r=t.destinationSectionIndex,n=t.sourceSectionIndex;return e.page=(0,B.Rp)(e.page,n,r),(0,c.m)(e)}),!1,"SORT_SECTION")}},Ct=function(e){return function(t){return e((function(e){var r=t.sectionIndex,n=t.destinationColumnIndex,o=t.sourceColumnIndex;return e.page[r].columns=(0,B.Rp)(e.page[r].columns,o,n),(0,c.m)(e)}),!1,"SORT_COLUMN")}},xt=function(e){return function(t){var r=t.sourceSectionIndex,n=t.sourceColumnIndex,o=t.sourceAddonIndex,i=t.sourceChildIndex,a=t.destinationSectionIndex,l=t.destinationColumnIndex,s=t.destinationAddonIndex,p=t.destinationChildIndex,f=t.emptyDivChild,v=t.isAbove;return e((function(e){var t=e.page[r],h=t.columns[n],b=h.addons,y=b[o],m=e.page[a],g=m.columns[l],E=g.addons,O=E[s];if(!(0,d.$K)(y))return e;var _=y.parent,w=V({sections:e.page,rowId:t.id,columnId:h.id,addonList:b,addon:y});if(!(0,d.$K)(w))return e;if(!(0,d.$K)(O)&&0===E.length)return g.addons=w.addons,(0,u.Ag)(o,b),(0,c.m)(e);var I,S,C=(I=w.addons,S=1,function(e){if(Array.isArray(e))return e}(I)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(I,S)||wt(I,S)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0];if("div"===O.name&&f){var x=O;x.children=[y.id],(0,u.u)(C,b),C.parent=x.id}else if("nested_row"!==y.type||r===a&&n===l)if((0,d.$K)(p)&&(0,d.$K)(O.parent)){var P=E.findIndex((function(e){return e.id===O.parent})),L=E[P];(0,d.$K)(L)&&L.children&&((0,d.$K)(y.parent)&&(0,d.$K)(i)&&y.parent===O.parent?L.children=(0,B.Rp)(L.children,i,p):(L.children.splice(v?p:p+1,0,C.id),(0,u.u)(C,b),C.parent=L.id))}else(0,u.u)(C,b);else{var A=e.page.find((function(e){return e.id===y.id}));(0,d.$K)(A)&&(A.parent={rowId:m.id,columnId:g.id})}return r!==a||n!==l?(E.splice.apply(E,[v?s:s+1,0].concat(function(e){return function(e){if(Array.isArray(e))return It(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||wt(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(w.addons))),(0,u.Ag)(o,b)):O.id===_?(o<s&&!v||o>s&&v)&&(g.addons=(0,B.Rp)(b,o,s)):g.addons=(0,B.Rp)(b,o,s),(0,c.m)(e)}),!1,"SORT_ADDON")}},Pt=function(e){return function(t){var r=t.sourceSectionIndex,n=t.sourceColumnIndex,o=t.sourceAddonIndex,i=t.destinationSectionIndex;return e((function(e){var t=e.page[r],a=t.columns[n],l=a.addons,u=l[o],s=e.page[i];if(!(0,d.$K)(u))return e;var p=V({sections:e.page,rowId:t.id,columnId:a.id,addonList:l,addon:u});if(!(0,d.$K)(p))return e;var f=s.parent;if((0,d.$K)(f)&&!(0,d.jn)(f)){var v=f.rowId,h=f.columnId,b=e.page.findIndex((function(e){return e.id===v})),y=e.page[b].columns,m=y.findIndex((function(e){return e.id===h})),g=y[m].addons.findIndex((function(e){return e.id===s.id}));return a.addons=(0,B.Rp)(l,o,g),(0,c.m)(e)}return e}),!1,"SORT_ADDON_AND_NESTED_ROW")}},Lt=[];(0,n.Fl)(!1);var At=(0,o.Ue)()((0,a.n)((0,i.mW)((function(e){return{page:Lt,copiedData:{addon:null,section:null},resetCopiedData:qe(e),setPageContent:Te(e),validateOldPageContent:Ze(e),updateSettings:He(e),updateSectionLayout:Ue(e),addNewAddon:Re(e),addCollectionItems:De(e),addNewTableItemAddon:je(e),changeAddonVisibility:Be(e),changeColumnVisibility:Me(e),changeSectionVisibility:ke(e),addNestedRowForDeepAddon:Ge(e),addNestedRow:We(e),addNewSection:Ne(e),addNewColumn:Fe(e),sortAddon:xt(e),addNewCollectionItemAddon:te(e),copyCollectionItemAddon:re(e),pasteOrInsertCollectionItemAddon:ne(e),changeCollectionItemAddonVisibility:ce(e),pasteCollectionItemAddonStyle:ue(e),sortCollectionItemAddon:ie(e),sortAddonWithCollectionItemAddon:oe(e),duplicateCollectionItemAddon:ae(e),deleteCollectionItemAddon:le(e),sortAddonAndNestedRow:Pt(e),sortColumn:Ct(e),sortSection:St(e),addNewDCCollectionItemAddon:it(e),sortDCCollectionItemAddon:at(e),deleteDynamicContentAddon:lt(e),copyDynamicContentAddon:ct(e),pasteOrInsertDynamicContentAddon:ut(e),changeVisibilityOfDynamicContentAddon:st(e),duplicateDynamicContentAddon:dt(e),copyAddon:S(e),copyTableItemAddon:C(e),pasteOrInsertAddon:x(e),pasteTableItemAddon:P(e),pasteAddonStyle:L(e),pasteTableItemAddonStyle:A(e),loadCopiedDataFirstTime:T(e),loadCopiedAddon:D(e),loadCopiedSection:Z(e),duplicateAddon:w(e),duplicateTableItemAddon:I(e),deleteAddon:R(e),deleteTableItemAddon:j(e),duplicateSection:bt(e),duplicateNestedSection:yt(e),copySection:mt(e),pasteOrInsertSection:gt(e),pasteOrInsertAsNestedSection:Et(e),deleteSection:Ot(e),deleteNestedSection:_t(e),duplicateColumn:ye(e),deleteColumn:me(e),resetColumnWidth:ge(e),updateColumnWidth:Ee(e),clearPageContent:Ve(e),updateAdminLabel:ze(e)}}),{store:"PageStore",name:"Page Store"})))},2423:(e,t,r)=>{"use strict";r.d(t,{m:()=>b,s:()=>h});var n=r(3106),o=r(7602),i=r(251),a=r.n(i),l=r(2902),c=r(270),u=r(782),s=r(8753),d=r(2445),p=r(3896);function f(e){return function(e){if(Array.isArray(e))return v(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var h=(0,c.Ue)()((0,s.n)((0,u.mW)((function(e){return{pastStates:[],futureStates:[],currentState:[],changesUntilSettingsPanelOpen:0,showWarningAtReload:!0,setShowWarningAtReload:function(t){return e((function(e){return e.showWarningAtReload=t,e}))},undo:function(){return e((function(e){if(e.pastStates.length<=0)return e;var t=e.pastStates.length-1,r=e.pastStates[t],n=p.o.getState().page;e.futureStates.push(n),e.pastStates.pop();var o=(0,l.mv)(r)?(0,l.Js)(r):r;return o&&(p.o.setState({page:o}),e.currentState=o,e.changesUntilSettingsPanelOpen-=1,e.changesUntilSettingsPanelOpen<0&&(d.F.setState({type:void 0,payload:{sectionIndex:null,columnIndex:null,addonIndex:null}}),e.changesUntilSettingsPanelOpen=0)),e}),!1,"UNDO")},redo:function(){return e((function(e){if(e.futureStates.length<=0)return e;var t=e.futureStates.length-1,r=e.futureStates[t],i=p.o.getState().page;e.pastStates.push(i),e.futureStates.pop();var a=(0,l.mv)(r)?(0,l.Js)(r):r;if(a){p.o.setState({page:a}),e.currentState=a;var c=d.F.getState().type;(0,o.$K)(c)&&(e.changesUntilSettingsPanelOpen=Math.min(n.Q9,e.changesUntilSettingsPanelOpen+1))}return e}),!1,"REDO")}}}),{name:"UndoRedo",store:"UndoRedo"}))),b=function(e){var t=h.getState(),r=t.pastStates,o=(0,l.mv)(e.page)?(0,l.Js)(e.page):e.page;if(t.setShowWarningAtReload(!0),r.length>0){var i=r[r.length-1];if(a()(i,o))return e}if(o)if(r.length>=n.Q9){var c=r.slice(1);h.setState({pastStates:[].concat(f(c),[o]),futureStates:[]})}else h.setState({pastStates:[].concat(f(r),[o]),futureStates:[]});return e}},2238:(e,t,r)=>{"use strict";r.d(t,{Ag:()=>_,DV:()=>T,Gm:()=>O,I4:()=>A,Jr:()=>Z,K0:()=>B,Nk:()=>D,OE:()=>x,RL:()=>S,a4:()=>M,h:()=>f,iK:()=>I,p_:()=>P,sd:()=>j,u:()=>w,v:()=>v,vH:()=>y,wy:()=>h});var n=r(3106),o=r(1245),i=r.n(o),a=r(7602);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function c(e){return function(e){if(Array.isArray(e))return u(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function s(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function d(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?s(Object(r),!0).forEach((function(t){p(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):s(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function p(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==l(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===l(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var f=function(e){var t="".concat(parseFloat((100/(12/e)).toFixed(6)));return{xl:t=t.length?"".concat(t,"%"):"",lg:t,md:t,sm:"100%",xs:"100%"}},v=function(e){var t=e.id,r=void 0===t?(0,a.x0)():t,n=e.layout,o=e.columnSettings,i=e.rowSettings,l=e.parent,c=void 0!==l&&l,u=e.addons,s=void 0===u?[]:u,p=e.parent_addon,v=n.replace(/\s/,"").split("+").map((function(e){return Math.min(12,Number(e))})),h=v.map((function(e){return{id:(0,a.x0)(),class_name:"row-column",visibility:!0,settings:d(d({},o),{},{width:f(e)}),addons:s}}));return d({id:r,visibility:!0,collapse:!1,settings:i,layout:v.join("+"),columns:h,parent:c},p&&{parent_addon:p})},h=function(e){var t=e.columnSettings,r=e.size;return{id:(0,a.x0)(),class_name:"row-column",visibility:!0,settings:d(d({},t),{},{width:f(r)}),addons:[]}},b=function(e){var t=e.sections,r=e.sectionsObject,o=e.addonList,l=e.addon,c=e.options,u=[],s=[];return l.id=(0,a.x0)(),function e(l){o.forEach((function(o){var d,p=null===(d=l.children)||void 0===d?void 0:d.findIndex((function(e){return e===o.id}));if((0,a.$K)(p)&&-1!==p){var f,v=(0,a.x0)();null===(f=l.children)||void 0===f||f.splice(p,1,v);var h=i()(o);if(h.parent=l.id,Object.keys(n.RI).includes(h.name)){var b=g({sections:t,sectionsObject:r,addon:h,addonId:v,options:{rowId:c.rowId,columnId:c.columnId}});s=b.sections}else h.name===n.pb.name?(h.id=v,h=L(h)):h.id=v;u.push(h),"div"===h.name&&e(h)}}))}(l),{divAddon:l,children:u,nestedSections:s}},y=function(e){var t=e.addonList,r=e.addon,n=[];return r.id=(0,a.x0)(),function e(r){t.forEach((function(t){var o,l=null===(o=r.children)||void 0===o?void 0:o.findIndex((function(e){return e===t.id}));if((0,a.$K)(l)&&-1!==l){var c,u=(0,a.x0)();null===(c=r.children)||void 0===c||c.splice(l,1,u);var s=i()(t);s.parent=r.id,s.id=u,n.push(s),"div"===s.name&&e(s)}}))}(r),{divAddon:r,children:n}},m=function(e){var t=e.sections,r=e.sectionsObject,n=e.addon,o=e.options,l=[],u=n,s=r[u.id];if(!(0,a.$K)(s))return null;u.id=(0,a.x0)();var d=i()(s);d.id=u.id,(0,a.$K)(o)&&(d.parent={rowId:o.rowId,columnId:o.columnId}),l.push(d);var p=E({sections:t,sectionsObject:r,section:d});return l.push.apply(l,c(p)),{addon:u,sections:l}},g=function(e){var t,r=e.sections,o=e.sectionsObject,l=e.addon,u=e.options,s=e.addonId,d=void 0===s?(0,a.x0)():s,p=[],f=l;return f.id=d,(null===(t=f.settings)||void 0===t?void 0:t[n.RI[f.name].key]).forEach((function(e){e.content.forEach((function(e){var t=o[e.id];if(!(0,a.$K)(t))return null;var n=(0,a.x0)();e.id=n;var l=i()(t);l.id=n,l.parent_addon=f.id,(0,a.$K)(u)&&(l.parent={rowId:u.rowId,columnId:u.columnId}),p.push(l);var s=E({sections:r,sectionsObject:o,section:l});p.push.apply(p,c(s))}))})),{addon:f,sections:p}},E=function(e){var t=e.sections,r=e.sectionsObject,o=e.section,i=[];return o.columns.forEach((function(e){e.id=(0,a.x0)();var l=[];e.addons.forEach((function(u){if(!u.parent)if(Object.keys(n.RI).includes(u.name)){var s=g({sections:t,sectionsObject:r,addon:u,options:{rowId:o.id,columnId:e.id}});(0,a.$K)(s)&&(l.push(s.addon),i.push.apply(i,c(s.sections)))}else if("nested_row"===u.type){var d=m({sections:t,sectionsObject:r,addon:u,options:{rowId:o.id,columnId:e.id}});(0,a.$K)(d)&&(l.push(d.addon),i.push.apply(i,c(d.sections)))}else if("div"===u.name){var p=b({sections:t,sectionsObject:r,addon:u,addonList:e.addons,options:{rowId:o.id,columnId:e.id}}),f=p.divAddon,v=p.children,h=p.nestedSections;l.push.apply(l,[f].concat(c(v))),i.push.apply(i,c(h))}else if(u.name===n.pb.name){u.id=(0,a.x0)();var E=L(u);l.push(E)}else if((0,a.dA)(u.name)){var O;u.id=(0,a.x0)();var _=null!==(O=u.items)&&void 0!==O?O:[];_.forEach((function(e,t){var r=[];e.forEach((function(t){if(!t.parent)if("div"===t.name){var n=y({addon:t,addonList:e}),o=n.divAddon,i=n.children;r.push.apply(r,[o].concat(c(i)))}else t.id=(0,a.x0)(),r.push(t)})),_[t]=r})),l.push(u)}else u.id=(0,a.x0)(),l.push(R(u))})),l.length>0&&(e.addons=l)})),i},O=function(e){var t=e.sections,r=e.sectionsObject,o=e.sectionId,l=e.column,u=[],s=[],d=i()(l);return d.id=(0,a.x0)(),d.addons.forEach((function(e){if(!e.parent)if(Object.keys(n.RI).includes(e.name)){var i=g({sections:t,sectionsObject:r,addon:e,options:{rowId:o,columnId:d.id}});(0,a.$K)(i)&&(u.push.apply(u,c(i.sections)),s.push(i.addon))}else if("nested_row"===e.type){var p=m({sections:t,sectionsObject:r,addon:e,options:{rowId:o,columnId:d.id}});(0,a.$K)(p)&&(u.push.apply(u,c(p.sections)),s.push(p.addon))}else if("div"===e.name){var f=b({sections:t,sectionsObject:r,addon:e,addonList:l.addons,options:{rowId:o,columnId:d.id}}),v=f.divAddon,h=f.children,y=f.nestedSections;s.push.apply(s,[v].concat(c(h))),u.push.apply(u,c(y))}else if(e.name===n.pb.name){e.id=(0,a.x0)();var E=L(e);s.push(E)}else e.id=(0,a.x0)(),s.push(e)})),s.length>0&&(d.addons=s),{sections:u,column:d}},_=function(e,t){var r=t[e];w(r,t),t.splice(e,1),function e(r){var n;null===(n=r.children)||void 0===n||n.forEach((function(r){var n=t.findIndex((function(e){return e.id===r}));if((0,a.$K)(n)&&-1!==n){var o=t[n];t.splice(n,1),"div"===o.name&&e(o)}}))}(r)},w=function(e,t){(0,a.$K)(e.parent)&&!(0,a.jn)(e.parent)&&t.forEach((function(t){var r;t.id===e.parent&&(t.children=null===(r=t.children)||void 0===r?void 0:r.filter((function(t){return t!==e.id})),e.parent=!1)}))},I=function(e,t,r){var o=t[e];t.splice(e,1),(0,a.$K)(o)&&function e(o){var i;null===(i=o.children)||void 0===i||i.forEach((function(o){var i=t.findIndex((function(e){return e.id===o}));if((0,a.$K)(i)&&-1!==i){var l=t[i];t.splice(i,1),"div"===l.name?e(l):Object.keys(n.RI).includes(l.name)?S(l,r):"nested_row"===l.type&&C(l,r)}}))}(o)},S=function(e,t){var r;(null===(r=e.settings)||void 0===r?void 0:r[n.RI[e.name].key]).forEach((function(e){e.content.forEach((function(e){var r=t.findIndex((function(t){return t.id===e.id}));if(-1===r)return null;var n=t[r];(0,a.$K)(n)&&(t.splice(r,1),x(n,t))}))}))},C=function(e,t){var r=t.findIndex((function(t){return t.id===e.id}));if(-1===r)return null;var n=t[r];(0,a.$K)(n)&&(t.splice(r,1),x(n,t))},x=function(e,t){(0,a.$K)(e)&&e.columns.forEach((function(e){e.addons.forEach((function(e){Object.keys(n.RI).includes(e.name)?S(e,t):"nested_row"===e.type&&C(e,t)}))}))},P=function(e,t){e.addons.forEach((function(e){Object.keys(n.RI).includes(e.name)?S(e,t):"nested_row"===e.type&&C(e,t)}))},L=function(e){var t=function(t){return t.map((function(t){return n.pb.bodyItemsKey in t?d(d({},t),{},p({},n.pb.bodyItemsKey,t[n.pb.bodyItemsKey].map((function(t){return d(d({},t),{},{content:t.content.map((function(t){return d(d({},t),{},{id:(0,a.x0)(),reference_id:e.id})}))})})))):d(d({},t),{},{content:t.content.map((function(t){return d(d({},t),{},{id:(0,a.x0)(),reference_id:e.id})}))})}))};return(0,a.$K)(e.settings)?(e.settings[n.pb.headerItemsKey]=t(e.settings[n.pb.headerItemsKey]),e.settings[n.pb.bodyItemsKey]=t(e.settings[n.pb.bodyItemsKey]),e):e},A=function(e){var t=e.itemList,r=e.tableId;return t.map((function(e){var t={id:(0,a.x0)(),name:"text_block",visibility:!0,collapse:!1,reference_id:r,settings:{text:""}};if(n.pb.bodyItemsKey in e){var o=e[n.pb.bodyItemsKey].map((function(e){return{content:[d(d({},t),{},{id:(0,a.x0)(),settings:{text:e.content}})]}}));return p({},n.pb.bodyItemsKey,o)}return{content:[d(d({},t),{},{settings:{text:e.content}})]}}))},T=function(e){var t=e.sections,r=e.rowId,o=e.columnId,l=e.addonList,u=e.addon,s=Object.fromEntries(t.map((function(e,t){return[e.id,d(d({},e),{},{index:t})]}))),p=i()(u),f=null;if("div"===p.name){var v=b({sections:t,sectionsObject:s,addon:p,addonList:l,options:{rowId:r,columnId:o}}),h=v.divAddon,m=v.children,E=v.nestedSections;f={name:h.name,addons:[h].concat(c(m)),sections:E}}else if(Object.keys(n.RI).includes(p.name)){var O=g({sections:t,sectionsObject:s,addon:p,options:{rowId:r,columnId:o}});(0,a.$K)(O)&&(f={name:O.addon.name,addons:[O.addon],sections:O.sections})}else if(p.name===n.pb.name)p.id=(0,a.x0)(),f={name:p.name,addons:[L(p)],sections:[]};else if(p.name===n.oA.productList||p.name===n.oA.categoryList){var _;p.id=(0,a.x0)();var w=null!==(_=p.items)&&void 0!==_?_:[];w.forEach((function(e,t){var r=[];e.forEach((function(t){if(!t.parent)if("div"===t.name){var n=y({addon:t,addonList:e}),o=n.divAddon,i=n.children;r.push.apply(r,[o].concat(c(i)))}else t.id=(0,a.x0)(),r.push(t)})),w[t]=r})),f={name:p.name,addons:[p],sections:[]}}else p.id=(0,a.x0)(),f={name:p.name,addons:[p],sections:[]};return f},D=function(e){var t=e.sections,r=e.sectionIndex,n=e.sectionId,o=void 0===n?(0,a.x0)():n,l=e.independent,u=void 0===l||l,s=Object.fromEntries(t.map((function(e,t){return[e.id,d(d({},e),{},{index:t})]}))),p=t[r],f=i()(p);f.id=o,u&&(f.parent=!1),f.parent_addon&&u&&delete f.parent_addon,f.columns.forEach((function(e){e.id=(0,a.x0)()}));var v=E({sections:t,sectionsObject:s,section:f});return[f].concat(c(v))},Z=function(e){return e.map((function(t){if(t.parent)return null;if("div"===t.name){var r=y({addon:t,addonList:e}),n=r.divAddon,o=r.children;return[n].concat(c(o))}return[t]})).filter(a.$K).flat()},R=function e(t){return(0,a.$K)(t.child_nodes)&&t.child_nodes.length&&(t.id=(0,a.x0)(),t.child_nodes=t.child_nodes.map((function(t){return e(t)}))),t},j=function(e){var t=Object.fromEntries(e.map((function(e,t){return[e.id,d(d({},e),{},{index:t})]}))),r=[];return e.forEach((function(n){if(!n.parent){var o=i()(n);o.id=(0,a.x0)(),o.columns.forEach((function(e){e.id=(0,a.x0)()}));var l=E({sections:e,sectionsObject:t,section:o});r=[].concat(c(r),[o],c(l))}})),r},B=function(e){return e!==n.oA.filter&&e.startsWith("easystore_list_")},M=function(e){return e!==n.oA.filter&&e.startsWith("easystore_collection_")}},5501:(e,t,r)=>{"use strict";r.d(t,{u:()=>p});var n=r(1974),o=r(7602),i=r(2861),a=r(7673),l=r(6731);function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){d(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function d(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==c(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==c(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===c(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}i.Z.defaults.paramsSerializer={serialize:function(e){return a.stringify(e)}},i.Z.create({baseURL:n.Z.API_BASE_URL});var p=i.Z.create({baseURL:n.Z.API_BASE_URL});p.interceptors.request.use((function(e){return e.headers["X-CSRF-Token"]=o.Xy.getOptions("csrf.token"),e.method&&["post","put","patch"].includes(e.method.toLocaleLowerCase())&&(e.data&&(e.data=(0,l.wh)(e.data,e.method)),["put","patch"].includes(e.method.toLowerCase())&&(e.method="POST")),e.params&&(e.params=(0,l.tW)(e.params)),e.method&&["get","delete"].includes(e.method.toLowerCase())&&(e.params=s(s({},e.params),{},{_method:e.method,timestamp:(new Date).getTime()})),e}),(function(e){return Promise.reject(e)})),p.interceptors.response.use((function(e){var t=e.headers["content-type"];return t.toLowerCase().includes("application/json")||t.toLowerCase().includes("application/zip")?Promise.resolve(e).then((function(e){return e.data})):Promise.reject({message:"Your session has expired! Please login again to continue. If you reload this page, you may lose your data."})}),(function(e){var t=e.response.data.data,r=s(s({},e),{},{message:(0,o.$K)(t)&&(0,o.$K)(t.message)?t.message:e.message});return Promise.reject(r)}))},5602:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{l:()=>a});var a=function(e){var t=e.draggingNodeRect,r=e.transform,n=e.scrollableAncestorRects[0];return t&&n?l(r,t,n):r},l=function(e,t,r){var n=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?o(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e);return t.top+e.y<=r.top?n.y=r.top-t.top:t.bottom+e.y>=r.top+r.height&&(n.y=r.top+r.height-t.bottom),t.left+e.x<=r.left?n.x=r.left-t.left:t.right+e.x>=r.left+r.width&&(n.x=r.left+r.width-t.right),n}},7273:(e,t,r)=>{"use strict";r.d(t,{BB:()=>f,BI:()=>O,C4:()=>E,H2:()=>h,He:()=>v,jv:()=>b,ll:()=>I,o5:()=>y,oo:()=>m,qb:()=>d,sw:()=>p,uZ:()=>w,wx:()=>_,xU:()=>g});var n=r(7602);function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function l(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){c(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==o(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==o(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===o(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var u=function(e){return(0,n.Kn)(e)&&"icon"in e},s=function(e){return(0,n.Kn)(e)&&"svg"in e},d=function(e){if(!e)return[];var t=function(e){return u(e)?e.icon:s(e)?e.svg:void 0};if((0,n.ee)(e)){var r=e.map((function(e,t){return{label:e,value:t}}));return(0,n.I6)(r)}if(Array.isArray(e)){var o=e.map((function(e){return l({label:u(e.label)||s(e.label)?"":e.label,icon:t(e.label),value:e.value},u(e.label)&&{tooltip:e.label.tooltip})}));return(0,n.I6)(o)}return(0,n.Kn)(e)?Object.entries(e).reduce((function(e,r){var o,a,l=(a=2,function(e){if(Array.isArray(e))return e}(o=r)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(o,a)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?i(e,t):void 0}}(o,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),c=l[0],d=l[1],p={label:u(d)||s(d)?"":d,icon:t(d),value:c};return e.push(p),(0,n.I6)(e)}),[]):[]},p=function(e){return(0,n.HD)(e)?Boolean(Number(e)):Boolean(e)},f=function(e){if((0,n.$K)(e))return String(e)},v=function(e){if((0,n.$K)(e)&&(!(0,n.HD)(e)||0!==e.length))return Number(e)},h=function(e){return(0,n.$K)(e)?(0,n.jn)(e)?f(v(e)):(0,n.hj)(e)?f(e):"true"===e?"1":"false"===e?"0":e:"0"},b=function(e){return e.replace(/[^-0-9.]/g,"")},y=function(e,t){var r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(!(0,n.$K)(e))return"";if((0,n.SI)(e))return e[t]?h(String(e[t])):"";if((0,n.JW)(e)){var o=r?e.unit:"";return e[t]?h(String(e[t]))+o:""}return(0,n.Kn)(e)?"":h(e)},m=function(e,t){if(e)return(0,n.SI)(e)?e[t]:e},g=function(e){var t=e.previous,r=e.value,n=e.responsive,o=e.device;return n?l(l({},t),{},c({},o,r)):r},E={left:"textAlignLeft",center:"textAlignCenter",right:"textAlignRight",justify:"textAlignJustify"},O={start:"verticalAlignStart",center:"verticalAlignCenter",end:"verticalAlignEnd"},_={h1:"tagH1",h2:"tagH2",h3:"tagH3",h4:"tagH4",h5:"tagH5",h6:"tagH6",p:"tagP",div:"tagDiv"},w=function(e){return(0,n.Zt)(e).some((function(t){return e[t].visibility}))},I=function(e,t,r){var o=v(e);if((0,n.$K)(o))return(0,n.$K)(t)&&(o=Math.max(t,o)),(0,n.$K)(r)&&(o=Math.min(r,o)),o}},680:(e,t,r)=>{"use strict";r.d(t,{Js:()=>f,c:()=>v,pE:()=>p,vn:()=>d});var n=r(3106),o=r(1234),i=r(7602);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function l(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return c(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function s(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==a(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===a(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var d=function(e){var t,r,n,o=e.match(/\d+/g)&&(null===(t=e.match(/\d+/g))||void 0===t?void 0:t[0]);return{weight:o?Number(o):400,style:null!==(r=e.match(/[a-zA-Z]+/g)&&(null===(n=e.match(/[a-zA-Z]+/g))||void 0===n?void 0:n[0]))&&void 0!==r?r:""}},p=function(e,t,r){if(!n.Lx.includes(e.family)){var o=window.document,a="sppagebuilder-font-".concat(e.family.replaceAll(/\s/g,"-")).replaceAll(".",""),l="google"===t?"google-fonts":"custom-fonts",c="".concat(i.Xy.pagebuilderBase,"media/com_sppagebuilder/assets/").concat(l,"/").concat(e.family,"/stylesheet.css");if("google"===t&&((null!=r?r:[]).findIndex((function(t){return t.family_name===e.family}))>=0||(c="https://fonts.googleapis.com/css?family=".concat(e.family,":100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic&display=swap"))),!o.querySelector("#".concat(a))){var u=o.createElement("link");u.href=c,u.rel="stylesheet",u.id=a,o.head.appendChild(u)}}},f=function(e){var t,r,n,o,i,a,l,c=(r=(t={family:e.family,variants:e.variants}).family,o=(n=t.variants).join(""),i=o.includes("italic"),a=/\d/.test(o),l=n.map((function(e){var t=d(e),r=t.weight,n=t.style,o=r;return!a||"regular"!==n&&"italic"!==n||o||(o=400),i?a?"".concat("italic"===n?1:0,",").concat(o):"".concat("italic"===n?1:0):"".concat(o)})).sort().join(";"),"".concat(r.split(" ").join("+")).concat(i?":ital":"").concat(i&&a?",":"").concat(!i&&a?":":"").concat(a?"wght":"").concat((a||i)&&l?"@".concat(l):""));return"https://fonts.googleapis.com/css2?family=".concat(c,"&display=swap")},v=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=[{value:"System",label:(0,o.O)("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_SYSTEM_FONTS"),disabled:!0},{value:"Arial",label:"Arial"},{value:"Tahoma",label:"Tahoma"},{value:"Verdana",label:"Verdana"},{value:"Helvetica",label:"Helvetica"},{value:"Times New Roman",label:"Times New Roman"},{value:"Trebuchet MS",label:"Trebuchet MS"},{value:"Georgia",label:"Georgia"}];if(!e.length)return r;var n=e.map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({label:e.family_name,value:e.family_name,type:e.type},"google"===e.type&&{variants:e.data.variants})})),i=n.filter((function(e){return"google"===e.type})),a=n.filter((function(e){return"local"===e.type})),c=[];return i.length>0&&!t&&c.push.apply(c,[{value:"Google Fonts",label:(0,o.O)("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_GOOGLE_FONTS"),disabled:!0}].concat(l(i))),a.length>0&&c.push.apply(c,[{value:"Local Fonts",label:(0,o.O)("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_LOCAL_FONTS"),disabled:!0}].concat(l(a))),c.push.apply(c,r),c}},6731:(e,t,r)=>{"use strict";r.d(t,{GI:()=>v,tW:()=>b,wh:()=>h});var n=r(7602),o=["non_field_errors"];function i(){i=function(){return e};var e={},t=Object.prototype,r=t.hasOwnProperty,n=Object.defineProperty||function(e,t,r){e[t]=r.value},o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",l=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function s(e,t,r,o){var i=t&&t.prototype instanceof v?t:v,a=Object.create(i.prototype),l=new x(o||[]);return n(a,"_invoke",{value:w(e,r,l)}),a}function p(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var f={};function v(){}function h(){}function b(){}var y={};u(y,a,(function(){return this}));var m=Object.getPrototypeOf,g=m&&m(m(P([])));g&&g!==t&&r.call(g,a)&&(y=g);var E=b.prototype=v.prototype=Object.create(y);function O(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function o(n,i,a,l){var c=p(e[n],e,i);if("throw"!==c.type){var u=c.arg,s=u.value;return s&&"object"==d(s)&&r.call(s,"__await")?t.resolve(s.__await).then((function(e){o("next",e,a,l)}),(function(e){o("throw",e,a,l)})):t.resolve(s).then((function(e){u.value=e,a(u)}),(function(e){return o("throw",e,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(e,r){function n(){return new t((function(t,n){o(e,r,t,n)}))}return i=i?i.then(n,n):n()}})}function w(e,t,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=I(a,r);if(l){if(l===f)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=p(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function I(e,t){var r=t.method,n=e.iterator[r];if(void 0===n)return t.delegate=null,"throw"===r&&e.iterator.return&&(t.method="return",t.arg=void 0,I(e,t),"throw"===t.method)||"return"!==r&&(t.method="throw",t.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=p(n,e.iterator,t.arg);if("throw"===o.type)return t.method="throw",t.arg=o.arg,t.delegate=null,f;var i=o.arg;return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,f):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,f)}function S(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(S,this),this.reset(!0)}function P(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,o=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return h.prototype=b,n(E,"constructor",{value:b,configurable:!0}),n(b,"constructor",{value:h,configurable:!0}),h.displayName=u(b,c,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===h||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,b):(e.__proto__=b,u(e,c,"GeneratorFunction")),e.prototype=Object.create(E),e},e.awrap=function(e){return{__await:e}},O(_.prototype),u(_.prototype,l,(function(){return this})),e.AsyncIterator=_,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new _(s(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},O(E),u(E,c,"Generator"),u(E,a,(function(){return this})),u(E,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},e.values=P,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(C),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return a.type="throw",a.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),f},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),f}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},e}function a(e,t,r,n,o,i,a){try{var l=e[i](a),c=l.value}catch(e){return void r(e)}l.done?t(c):Promise.resolve(c).then(n,o)}function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function c(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?c(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):c(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==d(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==d(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===d(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function d(e){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},d(e)}var p=function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return(0,n.Zt)(t).reduce((function(o,i){var a=t[i];return"object"!==d(a)||(0,n.OC)(a)||(0,n.ub)(a)?u(u({},o),{},s({},"".concat(r).concat(i),a)):u(u({},o),e(u({},a),"".concat(r).concat(i,".")))}),{})},f=function(e,t,r){if(!(0,n.IZ)(e)||!e.response)throw e;var i=function(e,t){var r=e;if(404===r.status||403===r.status||500===r.status)return{nonFieldErrors:["Unexpected error!"]};var i=p(t),a=p(r.data.data),c=a.non_field_errors,d=function(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}(a,o),f=(0,n.ee)(c)?c:[];return Object.keys(d).forEach((function(e){if(!(e in i)){var t=a[e];(0,n.ee)(t)&&f.push.apply(f,function(e){if(Array.isArray(e))return l(e)}(r=t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(r)||function(e,t){if(e){if("string"==typeof e)return l(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?l(e,t):void 0}}(r)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())}var r})),{nonFieldErrors:f,fieldErrors:Object.keys(a).filter((function(e){return e in i})).reduce((function(e,t){var r=a[t];return r?u(u({},e),{},s({},t,r)):e}),{})}}(e.response,r),a=i.fieldErrors,c=i.nonFieldErrors;null!=c&&c.length&&t.setSubmitError(c[0]),a&&Object.keys(a).forEach((function(e){var r=a[e];r.length>0&&t.setError(e,{message:r})}))},v=function(e,t){return function(){var r,n=(r=i().mark((function r(n){return i().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return e.setSubmitError(void 0),r.prev=1,r.next=4,t(n);case 4:r.next=9;break;case 6:r.prev=6,r.t0=r.catch(1),f(r.t0,e,n);case 9:case"end":return r.stop()}}),r,null,[[1,6]])})),function(){var e=this,t=arguments;return new Promise((function(n,o){var i=r.apply(e,t);function l(e){a(i,n,o,l,c,"next",e)}function c(e){a(i,n,o,l,c,"throw",e)}l(void 0)}))});return function(e){return n.apply(this,arguments)}}()},h=function(e,t){var r=new FormData;return(0,n.Zt)(e).forEach((function(t){var o=e[t];(0,n.kJ)(o)?o.forEach((function(e,o){(0,n.ub)(e)||(0,n.HD)(e)?r.append("".concat(t,"[").concat(o,"]"),e):(0,n.jn)(e)||(0,n.hj)(e)?r.append("".concat(t,"[").concat(o,"]"),e.toString()):"object"===d(e)&&null!==e?r.append("".concat(t,"[").concat(o,"]"),JSON.stringify(e)):r.append("".concat(t,"[").concat(o,"]"),null!=e?e:"")})):(0,n.ub)(o)||(0,n.HD)(o)?r.append(String(t),o):(0,n.jn)(o)?r.append(String(t),String(o)):(0,n.hj)(o)?r.append(String(t),"".concat(o)):"object"===d(o)&&null!==o?r.append(String(t),JSON.stringify(o)):r.append(String(t),null!=o?o:"")})),r.append("_method",t.toUpperCase()),r},b=function(e){var t={};for(var r in e){var o=e[r];(0,n.$K)(o)?(0,n.jn)(o)?t[r]=!0===o?"true":"false":t[r]=o:t[r]="null"}return t}},6216:(e,t,r)=>{"use strict";r.d(t,{Rv:()=>o,fp:()=>i,hJ:()=>l,ns:()=>c,pj:()=>n});var n=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";localStorage.setItem(e+r,t)},o=function(e){localStorage.removeItem(e)},i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"undefined"!=typeof window&&localStorage.getItem(e+t)||null},a=function(e){if("undefined"!=typeof window){var t=localStorage.getItem(e);if(t)try{return JSON.parse(t)}catch(e){return console.error("Failed to parse local storage map:",e),{}}}return{}},l=function(e,t,r){var n=a(e);n[t]=r,localStorage.setItem(e,JSON.stringify(n))},c=function(e,t){var r=a(e);return void 0!==r[t]?r[t]:null}},5616:(e,t,r)=>{"use strict";function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){l(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function l(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}r.d(t,{T:()=>c,h:()=>s});var c=function(){return{schemaType:"None"}};function u(e,t){for(var r=a({},e),i=0,l=Object.entries(t);i<l.length;i++){var c=(f=l[i],v=2,function(e){if(Array.isArray(e))return e}(f)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(f,v)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(e,t):void 0}}(f,v)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=c[0],d=c[1];if(void 0!==d)if(Array.isArray(d))r[s]=d;else if(null===d||"object"!==n(d)||Array.isArray(d))r[s]=d;else{var p=r[s];r[s]=null===p||"object"!==n(p)||Array.isArray(p)?a({},d):u(p,d)}}var f,v;return r}var s=function(e){var t=c();return e&&"object"===n(e)?u(t,e):t}},9182:(e,t,r)=>{"use strict";r.d(t,{F_:()=>o,Kk:()=>i,jw:()=>n});var n=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";sessionStorage.setItem(e+r,t)},o=function(e){sessionStorage.removeItem(e)},i=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"undefined"!=typeof window&&sessionStorage.getItem(e+t)||null}},1921:(e,t,r)=>{"use strict";r.d(t,{CN:()=>a,M6:()=>u,iZ:()=>c});var n=r(3106),o=r(824),i=r(917),a=function(){return(0,i.iv)("@media (prefers-color-scheme: dark){:root{color-scheme:light;}}*,*::before,*::after{box-sizing:border-box;}html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0;padding:0;font-family:",o.I8.sansSerif,";background-color:#fff;&.contentpane{padding:0;}}#system-message-container{display:none;}main{display:block;}p{margin-top:0;margin-bottom:1rem;}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;}address{margin-bottom:1rem;font-style:normal;line-height:inherit;}ol,ul{padding-left:2rem;}ol,ul,dl{margin-top:0;margin-bottom:1rem;}ol ol,ul ul,ol ul,ul ol{margin-bottom:0;}dt{font-weight:700;}dd{margin-bottom:0.5rem;margin-left:0;}blockquote{margin:0 0 1rem;}b,strong{font-weight:bolder;}small,.small{font-size:0.875em;}mark,.mark{padding:0.1875em;background-color:var(--highlight-bg);}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}a{color:var(--link-color);text-decoration:none;}a:hover{color:var(--link-hover-color);}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none;}pre,code,kbd,samp{font-family:var(--font-monospace);font-size:1em;}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:0.875em;}pre code{font-size:inherit;color:inherit;word-break:normal;}code{font-size:0.875em;color:var(--code-color);word-wrap:break-word;}a>code{color:inherit;}kbd{padding:0.1875rem 0.375rem;font-size:0.875em;color:var(--body-bg);background-color:var(--body-color);border-radius:0.2rem;}kbd kbd{padding:0;font-size:1em;}figure{margin:0 0 1rem;}img,svg{vertical-align:middle;}table{caption-side:bottom;border-collapse:collapse;}caption{padding-top:0.75rem;padding-bottom:0.75rem;color:#666e76;text-align:left;}th{text-align:inherit;text-align:-webkit-match-parent;}thead,tbody,tfoot,tr,td,th{border-color:inherit;border-style:solid;border-width:0;}label{display:inline-block;}button{border-radius:0;}button:focus:not(:focus-visible){outline:0;}input,button,select,optgroup,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit;}button,select{text-transform:none;}h1{font-size:2em;margin:0.67em 0;}ol,ul{",c.ulReset,";}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace,monospace;font-size:1em;}a{background-color:transparent;}a[target='_blank']::before{content:''!important;}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder;}code,kbd,samp{font-family:monospace,monospace;font-size:1em;}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}img{border-style:none;}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible;}button,select{text-transform:none;}button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button;appearance:button;}button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{border-style:none;padding:0;}button:-moz-focusring,[type='button']:-moz-focusring,[type='reset']:-moz-focusring,[type='submit']:-moz-focusring{outline:1px dotted ",o.qo.stroke.default,";}fieldset{padding:0.35em 0.75em 0.625em;}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline;}textarea{overflow:auto;}[type='checkbox'],[type='radio']{box-sizing:border-box;padding:0;}[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button{height:auto;}[type='search']{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px;}[type='search']::-webkit-search-decoration{-webkit-appearance:none;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block;}summary{display:list-item;}template{display:none;}[hidden]{display:none;}:is(h1, h2, h3, h4, h5, h6, p){padding:0;margin:0;};label:createGlobalCss;")},l={name:"13hngts-flexCenter",styles:"flex-direction:column;label:flexCenter;"},c={centeredFlex:{name:"4l3qjc-centeredFlex",styles:"display:flex;justify-content:center;align-items:center;width:100%;height:100%;label:centeredFlex;"},flexCenter:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"row";return(0,i.iv)("display:flex;justify-content:center;align-items:center;flex-direction:row;","column"===e&&l,";;label:flexCenter;")},ulReset:{name:"1o0hw1z-ulReset",styles:"list-style:none;padding:0;margin:0;label:ulReset;"},resetButton:(0,i.iv)("background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;font-family:",o.I8.sansSerif,";cursor:pointer;;label:resetButton;"),cardInnerSection:(0,i.iv)("display:flex;flex-direction:column;gap:",o.W0[8],";padding:",o.W0[16]," ",o.W0[12],";;label:cardInnerSection;"),cardVerticalHeightLimit:{name:"nonvx9-cardVerticalHeightLimit",styles:"max-height:calc(100vh - 100px);overflow-y:auto;label:cardVerticalHeightLimit;"},fieldGroups:function(e){return(0,i.iv)("display:flex;flex-direction:column;gap:",o.W0[e],";;label:fieldGroups;")},addAnotherOptionButton:(0,i.iv)("background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;font-family:",o.I8.sansSerif,";display:flex;gap:",o.W0[8],";align-items:end;color:",o.qo.action.primary.default,";:hover{text-decoration:underline;};label:addAnotherOptionButton;"),titleAliasWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",o.W0[12],";;label:titleAliasWrapper;"),inlineSwitch:{name:"p97bve-inlineSwitch",styles:"display:flex;justify-content:space-between;align-items:center;label:inlineSwitch;"},overflowYAuto:(0,i.iv)("overflow-y:auto;::-webkit-scrollbar{background-color:",o.qo.base.white,";width:6px;}::-webkit-scrollbar-thumb{background-color:",o.qo.base.secondary,";border-radius:",o.E0[6],";}scrollbar-width:6px;;label:overflowYAuto;"),textEllipsis:{name:"q6j1eh-textEllipsis",styles:"text-overflow:ellipsis;overflow:hidden;white-space:nowrap;label:textEllipsis;"},dynamicTextEllipsis:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;return(0,i.iv)("display:-webkit-box;-webkit-line-clamp:",e,";-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;;label:dynamicTextEllipsis;")},hideScrollbar:{name:"1ez62xl-hideScrollbar",styles:"scrollbar-width:none;&::-webkit-scrollbar{display:none;}&::-ms-scrollbar{display:none;};label:hideScrollbar;"},textCenter:{name:"lfnssf-textCenter",styles:"text-align:center;label:textCenter;"},generateAiButton:function(e){return(0,i.iv)(!e&&(0,i.iv)("background-image:",o.qo.background.aiBackground,";;label:generateAiButton;"),">span{justify-content:center;};label:generateAiButton;")},generateWithAiButtonWrapper:(0,i.iv)("background:",o.qo.action.aiAction.default,";padding:1px;border-radius:",o.E0[5],";;label:generateWithAiButtonWrapper;"),generateWithAiButton:function(){return(0,i.iv)("display:flex;justify-content:center;align-items:center;color:",o.qo.text.default,";border-radius:5px;background:",o.qo.background.white,";margin:auto;width:100%;position:relative;&:hover,&:active{background-color:",o.qo.background.white,";}&:before{content:'';position:absolute;inset:0;border-radius:",o.E0[5],";background:transparent;transition:background 0.3s ease;}&:hover{&:before{background:",o.qo.action.aiAction.hover,";}};label:generateWithAiButton;")}},u={methodWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",o.W0[20],";background-color:",o.qo.background.active,";padding:",o.W0[24],";border-radius:",o.E0[6],";position:relative;;label:methodWrapper;"),actionButtonWrapper:(0,i.iv)("display:flex;gap:",o.W0[8],";justify-content:end;margin-top:",o.W0[4],";;label:actionButtonWrapper;"),removeButton:(0,i.iv)("position:absolute;top:",o.W0[8],";right:",o.W0[8],";z-index:",o.W5.positive,";width:32px;height:32px;border-radius:",o.E0.circle,";transition:background-color 0.3s ease-in-out,color 0.3s ease-in-out;",c.flexCenter(),";:hover{background-color:",o.qo.base.white,";color:",o.qo.base.error,";};label:removeButton;"),overflowYAuto:(0,i.iv)("overflow-y:auto;::-webkit-scrollbar{background-color:",o.qo.base.white,";width:10px;}::-webkit-scrollbar-thumb{background-color:",o.qo.base.secondary,";border-radius:",o.E0[6],";};label:overflowYAuto;"),controllerWrapper:(0,i.iv)("display:flex;flex-direction:column;gap:",o.W0[20],";background:",o.qo.background.active,";border-radius:",o.E0[6],";padding:",o.W0[24],";position:relative;;label:controllerWrapper;"),footer:(0,i.iv)("margin-top:",o.W0[32],";text-align:right;display:flex;gap:",o.W0[16],";justify-content:end;;label:footer;"),settingsPanelContent:(0,i.iv)("height:calc(100vh - ",n.g3+40+40,"px);padding:",o.W0[16]," ",o.W0[8],";overflow-y:auto;;label:settingsPanelContent;")}},6795:(e,t,r)=>{"use strict";r.d(t,{ME:()=>v,VG:()=>f,ed:()=>h,m5:()=>s});var n=r(3106),o=r(7273),i=r(7602);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}function l(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=c(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}function c(e,t){if(e){if("string"==typeof e)return u(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?u(e,t):void 0}}function u(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var s=function(e){return"nested_row"===e.type},d=function(e){return!!(0,i.$K)(e)&&((0,i.HD)(e)?"true"===e||"1"===e||"false"!==e&&"0"!==e&&0!==e.length&&e:(0,i.hj)(e)?0!==e&&(1===e||e):e)},p=function(e,t){var r=!0;if(0===e.length)return r;var u,s,p,f,v=l(e);try{for(v.s();!(u=v.n()).done;){var h=u.value,b=h;if((0,i.Kn)(h)){var y=(0,i.Zt)(h),m=(0,i.zt)(h);b=[y[0],"=",m[0]]}var g=(f=3,function(e){if(Array.isArray(e))return e}(p=b)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(p,f)||c(p,f)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),E=g[0],O=g[1],_=g[2],w=d((0,o.oo)((s=t,E.split("?.").reduce((function(e,t){if(e&&"object"===a(e)&&t in e)return e[t]}),s)),n.zu)),I=d(_);"="===O?r&&(r=w===I):"!="===O&&r&&(r=w!==I)}}catch(e){v.e(e)}finally{v.f()}return r},f=function(e,t){var r=(0,i.Zt)(e);if(!t)return e;var o,a,c=l(r);try{for(c.s();!(o=c.n()).done;){var u=e[o.value];if((0,i.$K)(u.depends)){if((0,i.Kn)(u.depends)){var s=(0,i.Zt)(u.depends),d=(0,i.zt)(u.depends);u.depends=[[s[0],"=",d[0]]]}u.visibility=p(u.depends,t)}var f,v=u.fields,h=l((0,i.Zt)(v));try{for(h.s();!(f=h.n()).done;){var b=v[f.value];if(a=b,(0,i.Kn)(a)&&"type"in a&&n.aX.includes(a.type)){var y;if((0,i.Kn)(b.depends)){var m=(0,i.Zt)(b.depends),g=(0,i.zt)(b.depends);b.depends=[[m[0],"=",g[0]]]}b.visibility=p(null!==(y=b.depends)&&void 0!==y?y:[],t)}}}catch(e){h.e(e)}finally{h.f()}}}catch(e){c.e(e)}finally{c.f()}return e},v=function(e){var t,r=l((0,i.Zt)(e));try{for(r.s();!(t=r.n()).done;){var n=t.value,o=e[n];if(o.is_header&&"checkbox"===o.type)return{name:n,field:o}}}catch(e){r.e(e)}finally{r.f()}return null},h=function(e){var t=v(e);return!!(0,i.$K)(t)&&(0,i.Zt)(e).filter((function(e){return e!==t.name})).every((function(t){return!e[t].visibility}))}},7602:(e,t,r)=>{"use strict";r.d(t,{$K:()=>O,Dv:()=>F,Eu:()=>ie,Fw:()=>pe,GN:()=>x,HD:()=>_,I6:()=>q,IQ:()=>j,IZ:()=>D,J0:()=>U,JB:()=>Q,JW:()=>M,K2:()=>P,K6:()=>ae,Kn:()=>S,Lg:()=>oe,M9:()=>ee,MF:()=>ne,Nn:()=>ue,OC:()=>T,OV:()=>J,R5:()=>X,Rx:()=>$,SI:()=>B,VH:()=>he,VL:()=>H,VZ:()=>L,Xy:()=>N,ZT:()=>b,Zt:()=>G,_V:()=>se,cW:()=>E,dA:()=>de,ee:()=>R,fF:()=>K,gX:()=>te,hj:()=>w,jn:()=>I,kJ:()=>C,kl:()=>ve,nr:()=>A,q7:()=>k,r3:()=>g,sZ:()=>V,td:()=>ce,ub:()=>Z,uf:()=>fe,w6:()=>m,x0:()=>y,x9:()=>z,z3:()=>le,zt:()=>W});var n,o=r(3106),i=r(3261),a=r(6214),l=r(8721);function c(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,t)||s(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function s(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?p(Object(r),!0).forEach((function(t){v(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function v(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==h(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==h(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===h(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function h(e){return h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},h(e)}var b=function(){},y=function(){return(0,l.Z)()},m=function(e){return Array.from(Array(e).keys())},g=function(e,t){return void 0!==e.find((function(e){return e===t}))};function E(e,t){if(null==e)throw new Error(t)}var O=function(e){return null!=e};function _(e){return"string"==typeof e||e instanceof String}function w(e){return"number"==typeof e||e instanceof Number}function I(e){return"boolean"==typeof e||e instanceof Boolean}function S(e){return"object"===h(e)&&null!==e&&!Array.isArray(e)}function C(e){return"object"===h(e)&&null!==e&&e instanceof Array&&Array.isArray(e)}var x=function(e){return e%1==0},P=function(e){var t=/(https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|www\.[a-zA-Z0-9][a-zA-Z0-9-]+[a-zA-Z0-9]\.[^\s]{2,}|https?:\/\/(?:www\.|(?!www))[a-zA-Z0-9]+\.[^\s]{2,}|www\.[a-zA-Z0-9]+\.[^\s]{2,})/;"image"===(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"url")&&(t=/(https?:\/\/[^"']*\.(?:png|jpg|jpeg|gif|svg|webp))/i);var r=new RegExp(t);return!!e.match(r)};function L(e){return e instanceof Error}var A=function(e,t){return t in e};function T(e){return!!e&&Array.isArray(e)&&(!e.length||"object"!==h(e[0]))}var D=function(e){return!!e&&"object"===h(e)&&"name"in e&&"response"in e&&"AxiosError"===e.name},Z=function(e){return e instanceof Blob||e instanceof File};function R(e){return T(e)&&(!e.length||"string"==typeof e[0]||e[0]instanceof String)}function j(e){return e.endsWith("/")||!/\.[^/.]+$/.test(e)}function B(e){return"object"===h(e)&&null!==e&&!Array.isArray(e)&&(A(e,"xl")||A(e,"md"))&&!A(e,"unit")}function M(e){return"object"===h(e)&&null!==e&&!Array.isArray(e)&&(A(e,"xl")||A(e,"md"))&&"unit"in e}var k=function(e){return i.G[e]},N=f({},null!==(n=window.Joomla)&&void 0!==n?n:{}),G=function(e){return O(e)&&S(e)?Object.keys(e):[]},W=function(e){return Object.values(e)},U=function(e){return Object.entries(e)},F=function(e){return"dynamic_content_image"===e?"Dynamic Media":e.split("_").map((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})).join(" ")},H=function(e){var t=e.split("_");return{name:t.slice(2).map((function(e){return e.charAt(0).toUpperCase()+e.slice(1)})).join(" "),category:t[1].charAt(0).toUpperCase()+t[1].slice(1)}},q=function(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map((function(e){return f(f({},e),{},{value:String(e.value)})}))},V=function(e,t){return Math.floor(Math.random()*(t-e))+e},z=function(e){return e.map((function(e){return e.id}))},X=function(e){var t=e.itemId,r=e.isShiftHolding,n=e.lastSelectedIndex,o=e.currentIndex,i=e.isChecked,a=e.selectedItemIds,l=e.selectedItemsIndex,c=e.totalItemsList;if(!r||-1===n)return i?{updatedItemIds:[].concat(u(a),[t]),updatedItemIndexes:[].concat(u(l),[o])}:{updatedItemIds:a.filter((function(e){return e!==t})),updatedItemIndexes:l.filter((function(e){return e!==o}))};var s=Math.min(n,o),d=Math.max(n,o),p=c.slice(s,d+1).map((function(e){return e.id})),f=m(d+1).filter((function(e){return e>=s}));return i?{updatedItemIds:u(new Set([].concat(u(a),u(p)))),updatedItemIndexes:u(new Set([].concat(u(l),u(f))))}:{updatedItemIds:a.filter((function(e){return!p.includes(e)})),updatedItemIndexes:l.filter((function(e){return!f.includes(e)}))}},K=function(e){var t,r,n="desc"===(null===(t=e.sort)||void 0===t?void 0:t.direction)?"-":"";return f({limit:e.limit,offset:e.offset,sort:(null===(r=e.sort)||void 0===r?void 0:r.property)&&"".concat(n).concat(e.sort.property),page_type:e.page_type},e.filter)},$=function(e){try{return JSON.parse(e)}catch(e){return null}},Y={image:["jpg","jpeg","png","gif","svg","webp","avif"],video:["mp4","mov","wmv","avi","mpg","ogv","3gp","3g2"],audio:["mp3","m4a","ogg","wav"],attachment:["pdf","doc","docx","key","ppt","pptx","pps","ppsx","odt","xls","xlsx","zip","json"]};function Q(e){for(var t=0,r=Object.entries(Y);t<r.length;t++){var n=c(r[t],2),o=n[0],i=n[1];if(e&&i.includes(e.toLowerCase()))return o}return null}var J=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"template-",r=new Blob([e],{type:"application/json"}),n=URL.createObjectURL(r),o=document.createElement("a");o.href=n,o.target="_blank",o.rel="noreferrer noopener nofollow",o.download="".concat(t).concat(y(),".json"),o.click()},ee=function(e){return{name:e.name,rows:e.sections,addon:e.addons}},te=function(e){return A(e,"rows")&&A(e,"addon")},re=function(e){var t={background_image:"image",background_color:"color",background_gradient:"gradient",background_video:"video",background_video_mp4:"video",background_video_ogv:"video",background_external_video:"video"};if(!O(e.background_type)){var r,n=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=s(e))){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return a=e.done,e},e:function(e){l=!0,i=e},f:function(){try{a||null==r.return||r.return()}finally{if(l)throw i}}}}(G(t));try{for(n.s();!(r=n.n()).done;){var o=r.value;if(e[o]){e.background_type=t[o];break}}}catch(e){n.e(e)}finally{n.f()}}return e},ne=function(e){return e.map((function(e){return f(f({},e),{},{settings:re(e.settings)})}))},oe=function(e){return G(e).map((function(t){return{label:e[t],value:t}}))},ie=!1,ae=function(e){var t=e.toLocaleLowerCase(),r=t.startsWith("var(--")&&t.endsWith(")");if(r){var n=t.replace(/^var\(/,"").replace(/\)$/,"");t=getComputedStyle(document.documentElement).getPropertyValue(n)}var o=new a.C(t),i=e;return o.isValid&&o.format.startsWith("hex")&&!e.startsWith("#")&&!r&&(i="#".concat(e)),{validColor:o,isCssVariable:r,color:i}},le=function(e){var t="".concat(N.pagebuilderBase).concat(e),r=window.document,n=r.createElement("link");n.href=t,n.rel="stylesheet",r.head.appendChild(n)},ce=function(e,t){if(0===e)return"0 Bytes";var r=t||2,n=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,n)).toFixed(r))+" "+["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"][n]},ue=function(e){return!!("object"===h(e)&&e&&"isMultiSelect"in e&&e.isMultiSelect)},se=function(e){if(!/<svg\s+.*?>[\s\S]*?<\/svg>/i.test(e))return!1;try{return"parsererror"!==(new DOMParser).parseFromString(e,"text/xml").documentElement.nodeName||(console.error("Invalid SVG string:",e),!1)}catch(e){return console.error("Error parsing SVG string:",e),!1}},de=function(e){return[o.oA.productList,o.oA.categoryList].includes(e)},pe=function(e){var t=e.start,r=void 0===t?0:t,n=e.end,o=e.step;if(void 0===n&&(n=r,r=0),void 0===o&&(o=1),o>0&&r>=n||o<0&&r<=n)return[];for(var i=[],a=r;o>0?a<n:a>n;a+=o)i.push(a);return i};function fe(e){var t=e.hour,r=e.minute,n=e.second,o=e.period,i=parseInt(t,10);return"PM"===o&&12!==i?i+=12:"AM"===o&&12===i&&(i=0),"".concat(String(i).padStart(2,"0"),":").concat(r,":").concat(n)}function ve(e){var t=c(e.split(":").map(Number),3),r=t[0],n=t[1],o=t[2],i=r>=12?"PM":"AM";return{hour:String(r%12==0?12:r%12).padStart(2,"0"),minute:String(n).padStart(2,"0"),second:String(o).padStart(2,"0"),period:i}}var he=function(e){return e?e.trim().replace(/\s+/g,"-").replace(/[^a-zA-Z0-9-]/g,"").toLowerCase():""}},1030:(e,t,r)=>{"use strict";r.d(t,{$:()=>i,n:()=>o});var n=r(1234),o=function(){return{required:{value:!0,message:(0,n.O)("COM_SPPAGEBUILDER_EDITOR_REQUIRED_FIELD")}}},i=function(){return{validate:function(e){return!(""!==e&&null!=e&&!/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i.test(String(e)))||(0,n.O)("COM_SPPAGEBUILDER_EDITOR_INVALID_EMAIL")}}}},8537:(e,t,r)=>{"use strict";e.exports=r.p+"images/ed8841a7709fb2582a09.svg"},4693:(e,t,r)=>{"use strict";e.exports=r.p+"images/2dc90216f51e02a2bfe8.svg"},2137:(e,t,r)=>{"use strict";e.exports=r.p+"images/f057f8b31082c0ecd133.svg"},4654:()=>{},5574:()=>{},6152:()=>{}},a={};function l(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return i[e].call(r.exports,r,r.exports,l),r.loaded=!0,r.exports}l.m=i,e=[],l.O=(t,r,n,o)=>{if(!r){var i=1/0;for(s=0;s<e.length;s++){for(var[r,n,o]=e[s],a=!0,c=0;c<r.length;c++)(!1&o||i>=o)&&Object.keys(l.O).every((e=>l.O[e](r[c])))?r.splice(c--,1):(a=!1,o<i&&(i=o));if(a){e.splice(s--,1);var u=n();void 0!==u&&(t=u)}}return t}o=o||0;for(var s=e.length;s>0&&e[s-1][2]>o;s--)e[s]=e[s-1];e[s]=[r,n,o]},l.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return l.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,l.t=function(e,n){if(1&n&&(e=this(e)),8&n)return e;if("object"==typeof e&&e){if(4&n&&e.__esModule)return e;if(16&n&&"function"==typeof e.then)return e}var o=Object.create(null);l.r(o);var i={};t=t||[null,r({}),r([]),r(r)];for(var a=2&n&&e;"object"==typeof a&&!~t.indexOf(a);a=r(a))Object.getOwnPropertyNames(a).forEach((t=>i[t]=()=>e[t]));return i.default=()=>e,l.d(o,i),o},l.d=(e,t)=>{for(var r in t)l.o(t,r)&&!l.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},l.f={},l.e=e=>Promise.all(Object.keys(l.f).reduce(((t,r)=>(l.f[r](e,t),t)),[])),l.u=e=>"./js/"+e+"."+{4:"e21cee9be6286f430bce",68:"81f2968af444ef52bd66",81:"67c6e452cdf023453b62",245:"2173dc39db785787996a",254:"e3d84935825c1693bda8",357:"ba2ff23da0a6a64639a1",359:"9e89a7a1f094287933e6",513:"9113795fa95de10af269",556:"c2641d791f45d205d563",680:"30f9af3175ffa9ed93c7",850:"afcb12bdb6a46d25767b",863:"db6f7bbcd03da29eeffd",983:"fba4576367ba6ebbdd37"}[e]+".min.js",l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n={},o="react-typescript-webpack-backend-editor:",l.l=(e,t,r,i)=>{if(n[e])n[e].push(t);else{var a,c;if(void 0!==r)for(var u=document.getElementsByTagName("script"),s=0;s<u.length;s++){var d=u[s];if(d.getAttribute("src")==e||d.getAttribute("data-webpack")==o+r){a=d;break}}a||(c=!0,(a=document.createElement("script")).charset="utf-8",a.timeout=120,l.nc&&a.setAttribute("nonce",l.nc),a.setAttribute("data-webpack",o+r),a.src=e),n[e]=[t];var p=(t,r)=>{a.onerror=a.onload=null,clearTimeout(f);var o=n[e];if(delete n[e],a.parentNode&&a.parentNode.removeChild(a),o&&o.forEach((e=>e(r))),t)return t(r)},f=setTimeout(p.bind(null,void 0,{type:"timeout",target:a}),12e4);a.onerror=p.bind(null,a.onerror),a.onload=p.bind(null,a.onload),c&&document.head.appendChild(a)}},l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;l.g.importScripts&&(e=l.g.location+"");var t=l.g.document;if(!e&&t&&(t.currentScript&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");r.length&&(e=r[r.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),l.p=e+"../"})(),(()=>{var e={296:0};l.f.j=(t,r)=>{var n=l.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,o)=>n=e[t]=[r,o]));r.push(n[2]=o);var i=l.p+l.u(t),a=new Error;l.l(i,(r=>{if(l.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),i=r&&r.target&&r.target.src;a.message="Loading chunk "+t+" failed.\n("+o+": "+i+")",a.name="ChunkLoadError",a.type=o,a.request=i,n[1](a)}}),"chunk-"+t,t)}},l.O.j=t=>0===e[t];var t=(t,r)=>{var n,o,[i,a,c]=r,u=0;if(i.some((t=>0!==e[t]))){for(n in a)l.o(a,n)&&(l.m[n]=a[n]);if(c)var s=c(l)}for(t&&t(r);u<i.length;u++)o=i[u],l.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return l.O(s)},r=self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),l.nc=void 0;var c=l.O(void 0,[216],(()=>l(4974)));c=l.O(c)})();PKCA#]gQ��Mcomponents/com_sppagebuilder/assets/editor/dist/js/vendors.min.js.LICENSE.txtnu�[���/*! Copyright (c) 2018 Jed Watson. Licensed under the MIT License (MIT), see http://jedwatson.github.io/classnames */ /*! * @license deepcopy.js Copyright(c) 2013 sasa+1 * https://github.com/sasaplus1/deepcopy.js * Released under the MIT license. * * type-detect * Copyright(c) 2013 jake luer <jake@alogicalparadox.com> * MIT Licensed */ /*! * CSSJanus. https://github.com/cssjanus/cssjanus * * Copyright 2014 Trevor Parscal * Copyright 2010 Roan Kattouw * Copyright 2008 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * @license * Lodash <https://lodash.com/> * Copyright OpenJS Foundation and other contributors <https://openjsf.org/> * Released under MIT license <https://lodash.com/license> * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE> * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors */ /** * @license React * react-dom.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @license React * react-jsx-runtime.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @license React * react.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @license React * scheduler.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @license React * use-sync-external-store-shim.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @license React * use-sync-external-store-shim/with-selector.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ /** * @remix-run/router v1.8.0 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */ /** * React Router DOM v6.15.0 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */ /** * React Router v6.15.0 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */ /** @license React v16.13.1 * react-is.production.min.js * * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ PKCA#]���LCLCRcomponents/com_sppagebuilder/assets/editor/dist/js/850.afcb12bdb6a46d25767b.min.jsnu�[���/*! For license information please see 850.afcb12bdb6a46d25767b.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[850],{6850:(t,e,r)=>{r.r(e),r.d(e,{default:()=>be});var n=r(3871),o=r(7870),i=r(7264),a=r(1731),l=r(8253),c=r(8122),u=r(5350),s=r(7579),d=r(3039),p=r(7894),f=r(824),h=r(4185),y=r(917),E=r(5944);const _=function(t){var e=t.type,r=void 0===e?"primary":e,n=t.message,o=void 0===n?"":n;return(0,E.tZ)("div",{css:v.modalWrapper(r),children:(0,E.BX)("div",{css:v.content(r),children:[(0,E.tZ)(i.Z,{name:r,width:20,height:20}),o]})})};var v={modalWrapper:function(t){return(0,y.iv)("max-width:450px;min-height:30px;background:",f.qo.background[t],";border-radius:",f.E0[4],";;label:modalWrapper;")},content:function(t){return(0,y.iv)("padding:",f.W0[8]," ",f.W0[12],";",h.c.body()," color:",f.qo.text[t],";display:flex;align-items:center;gap:",f.W0[4],";;label:content;")}},g=r(7898),b=r(1234),m=r(2328),O=r(7602),P=r(7294),L=r(1709),I=r(9781);function S(t){return S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},S(t)}function w(){w=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(T([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==S(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=T,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:T(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function T(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function A(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?T(Object(r),!0).forEach((function(e){R(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function R(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==S(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==S(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===S(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function D(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function C(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){D(i,n,o,a,l,"next",t)}function l(t){D(i,n,o,a,l,"throw",t)}a(void 0)}))}}function x(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var G=function(t){var e,r,i=t.title,a=t.label,l=t.bulkAction,c=t.confirmButtonText,u=t.closeModal,s=t.mutationFn,d=t.invalidateKeys,p=t.skipMutation,f=void 0!==p&&p,h=t.payload,y=(0,b.$)(),v=(0,m.v)((function(t){return t.appConfig})),L={language:"languages",access:"access_levels",category:"categories"},S=(e=(0,P.useState)({label:(0,O.$K)(v[L[l]])&&v[L[l]].length>0?v[L[l]][0].label:"",value:(0,O.$K)(v[L[l]])&&v[L[l]].length>0?v[L[l]][0].value:""}),r=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,r)||function(t,e){if(t){if("string"==typeof t)return x(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?x(t,e):void 0}}(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),T=S[0],R=S[1],D=(0,g.A)({mutationFn:s,invalidateKeys:d});return(0,E.tZ)(I.Z,{onClose:function(){return u({action:"CLOSE"})},title:i,headerCss:B.modalHeaderCss,contentCss:B.modalContentCss,wrapperCss:B.modalWrapper,children:(0,E.BX)("div",{children:[(0,E.BX)("div",{css:B.content,children:[v[L[l]].length>0?(0,E.tZ)(_,{type:"primary",message:y("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_MODAL_INFO")}):(0,E.tZ)(_,{type:"warning",message:y("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_MODAL_WARNING")}),(0,E.tZ)(o.Z,{options:v[L[l]],value:T,label:a,onChange:function(t){R(t)},clearOption:function(){return R({label:"",value:""})}})]}),(0,E.BX)("div",{css:B.footerWrapper,children:[(0,E.tZ)(n.Z,{variant:"secondary",onClick:function(){return u({action:"CLOSE"})},children:y("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,E.tZ)(n.Z,{disabled:0===v[L[l]].length||""===T.value,onClick:C(w().mark((function t(){var e,r;return w().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!f){t.next=3;break}return u({action:"CONFIRM"}),t.abrupt("return");case 3:if(!h){t.next=11;break}return t.next=6,D.mutateAsync(A(A({},h),{},{value:T.value}));case 6:if(e=t.sent,r=e.data,!((0,O.$K)(r.status)?r.status:r)){t.next=11;break}return u({action:"CONFIRM"}),t.abrupt("return");case 11:u({action:"CLOSE"});case 12:case"end":return t.stop()}}),t)}))),loading:D.isLoading,children:c||y("COM_SPPAGEBUILDER_EDITOR_UPDATE")})]})]})})},B={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},content:(0,y.iv)("display:flex;flex-direction:column;gap:",f.W0[16],";padding:",f.W0[16]," ",f.W0[24],";p{",h.c.body(),";};label:content;"),footerWrapper:(0,y.iv)("display:flex;justify-content:end;gap:",f.W0[8],";padding:",f.W0[12]," ",f.W0[16],";box-shadow:",f.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,y.iv)("padding:",f.W0[12]," ",f.W0[24],";;label:modalHeaderCss;"),modalContentCss:(0,y.iv)("background-color:",f.qo.background.white,";;label:modalContentCss;"),labelCss:(0,y.iv)("width:fit-content;",h.c.body("medium"),";;label:labelCss;")},M=r(3816),Z=r(5827),U=r(2847),k=r(9148),j=r(1518),N=r(1151),F=r(1921);function W(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return X(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?X(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const q=P.forwardRef((function(t,e){var r=t.position,n=t.onClose,o=(0,N.fS)(),a=W(P.useState(!1),2),l=a[0],c=a[1],u=W(P.useState(!1),2),s=u[0],d=u[1],p=W((0,P.useState)(null),2),f=p[0],h=p[1],y=W((0,P.useState)(null),2),_=y[0],v=y[1],g=(0,b.$)(),m=(0,L.d)().showModal,I=(0,P.useMemo)((function(){return o.data?o.data:[]}),[o.data]),S=(0,P.useMemo)((function(){return I.filter((function(t){return t.id!==j.u.ARTICLES&&t.id!==j.u.TAGS}))}),[I]),w=(0,P.useMemo)((function(){var t=I.find((function(t){return t.id===j.u.ARTICLES})),e=[];return t&&e.push({id:j.u.ARTICLES,title:t.title,disabled:t.disabled,pages:t.pages}),e}),[I]),T=(0,P.useCallback)((function(t){var e=t.pageType,r=t.collectionId;m({component:k.Z,props:{title:g("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_MODAL_TITLE"),pageType:e,collectionId:r}})}),[m,g]),A=(0,P.useCallback)((function(){c(!1),d(!1),h(null),v(null),n()}),[n]);return(0,E.tZ)("div",{ref:e,css:[$.wrapper,{top:r.top,left:r.left},";label:PageCreationPopover;"],children:(0,E.BX)("div",{css:$.pageTypeList,children:[(0,E.tZ)("button",{type:"button",css:$.pageTypeItem,onMouseEnter:function(){c(!1),d(!1)},onClick:function(){A(),T({pageType:"page",collectionId:null})},children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_OPTION")}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem({disabled:O.Eu||0===w.length}),onMouseEnter:function(){c(!1),d(!0),h(null),v(j.u.ARTICLES)},onClick:function(){O.Eu&&A()},onKeyDown:O.ZT,children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_ARTICLE_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{}),!O.Eu&&w.length>0&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageList(s),children:w.map((function(t,e){return(0,E.tZ)("div",{css:$.dynamicPageItemPages(_===t.id,!0),children:t.pages.map((function(t,e){return(0,E.tZ)("button",{type:"button",css:$.dynamicPageItemPage,disabled:t.disabled,onClick:function(){A(),T({pageType:t.page_type,collectionId:t.collection_id})},children:t.title},e)}))},e)}))})]})]}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem,disabled:O.Eu,onMouseEnter:function(){c(!1),d(!1),h(null),v(null)},onClick:function(){A(),O.Eu||T({pageType:"popup",collectionId:null})},children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_POPUP_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{})]}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem({disabled:O.Eu||0===S.length}),onMouseEnter:function(){d(!1),c(!0),v(null)},onClick:function(){O.Eu&&A()},onKeyDown:O.ZT,children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_DYNAMIC_CONTENT_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{}),!O.Eu&&S.length>0&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageList(l),children:S.map((function(t,e){return(0,E.BX)("div",{css:$.dynamicPageItem(t.disabled),onMouseEnter:function(){h(t.id)},children:[t.title,(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageItemPages(f===t.id,!1),children:t.pages.map((function(t,e){return(0,E.tZ)("button",{type:"button",css:$.dynamicPageItemPage,disabled:t.disabled,onClick:function(){A(),T({pageType:t.page_type,collectionId:t.collection_id})},children:t.title},e)}))})]},e)}))})]})]})]})})}));var H={name:"1wiigg0-dynamicPageItemPages",styles:"visibility:visible;label:dynamicPageItemPages;"},Y={name:"10c0efm-dynamicPageList",styles:"visibility:visible;label:dynamicPageList;"},K={name:"1dca593-pageTypeItem",styles:"&>span{opacity:0.5;}pointer-events:none;cursor:not-allowed;label:pageTypeItem;"},$={wrapper:(0,y.iv)("position:absolute;width:",O.Eu?280:240,"px;background-color:",f.qo.background.white,";border-radius:",f.E0[6],";box-shadow:",f.AF.popover,";;label:wrapper;"),pageTypeList:(0,y.iv)("border-radius:",f.E0[6],";;label:pageTypeList;"),pageTypeItem:function(t){var e=t.disabled,r=void 0!==e&&e;return(0,y.iv)(F.iZ.resetButton,";",h.c.body(),";color:",f.qo.text.default,";width:100%;display:flex;align-items:center;justify-content:space-between;border-radius:0;background-color:",f.qo.background.white,";transition:background-color 0.3s ease-in-out;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";z-index:",f.W5.highest,";position:relative;&:first-of-type{border-top-left-radius:",f.E0[6],";border-top-right-radius:",f.E0[6],";}&:last-of-type{border-bottom-left-radius:",f.E0[6],";border-bottom-right-radius:",f.E0[6],";}&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";&:not(:first-of-type):not(:last-of-type){border-radius:0;}}&:disabled{pointer-events:none;cursor:not-allowed;&>span{opacity:0.5;}}",r&&K,";;label:pageTypeItem;")},dynamicPageList:function(t){return(0,y.iv)("position:absolute;width:180px;background-color:",f.qo.background.white,";box-shadow:",f.AF.popover,";left:-",f.W0[8],";top:0;visibility:hidden;border-radius:",f.E0[6],";transform:translateX(-100%);",t&&Y,";;label:dynamicPageList;")},dynamicPageItem:function(t){return(0,y.iv)(h.c.body(),";color:",f.qo.text.default,";width:100%;display:flex;align-items:center;justify-content:space-between;border-radius:",f.E0[6],";background-color:",f.qo.background.white,";transition:background-color 0.3s ease-in-out;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";border-radius:0;position:relative;&:first-of-type{border-top-left-radius:",f.E0[6],";border-top-right-radius:",f.E0[6],";}&:last-of-type{border-bottom-left-radius:",f.E0[6],";border-bottom-right-radius:",f.E0[6],";}&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";&:not(:first-of-type):not(:last-of-type){border-radius:0;}}",t&&(0,y.iv)("color:",f.qo.text.disabled,";pointer-events:none;cursor:not-allowed;;label:dynamicPageItem;"),";;label:dynamicPageItem;")},dynamicPageItemPages:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,y.iv)("position:absolute;width:100%;background-color:",f.qo.background.white,";box-shadow:",f.AF.popover,";left:-",f.W0[8],";top:0;border-radius:",f.E0[6],";visibility:hidden;transform:",e?"translateX(0)":"translateX(-100%)",";overflow:hidden;",t&&H,";;label:dynamicPageItemPages;")},dynamicPageItemPage:(0,y.iv)(F.iZ.resetButton,";",h.c.body(),";color:",f.qo.text.default,";width:100%;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";border-radius:0;&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";}&:disabled{color:",f.qo.text.disabled,";pointer-events:none;cursor:not-allowed;};label:dynamicPageItemPage;")},Q=r(9085),V=r(9313),z=r(4101),J=r(5785),tt=r(935),et=r(802),rt=r(6537),nt=r(6492),ot=r(4469),it=r(5501),at=function(t){return it.u.put(rt.H.ADD_TO_MENU,t.data)},lt=r(7536);function ct(t){return ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ct(t)}function ut(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function st(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ut(Object(r),!0).forEach((function(e){dt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ut(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function dt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==ct(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==ct(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ct(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function pt(){pt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==ct(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function ft(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}const ht=function(t){var e,r=t.closeModal,o=t.title,i=t.id,l=(0,b.$)(),s=(0,et.O)({defaultValues:{page_id:i,menu_id:0,parent_id:1,menu_type:"mainmenu",title:"",alias:"",ordering:0}}),d=s.setValue,p=s.reset,f=s.getValues,h=s.watch,y=function(t){var e=(0,a.p)().showToast;return(0,nt.a)({queryKey:["MenuByPageId",t],queryFn:function(){return function(t){return it.u.get(rt.H.MENU_BY_PAGE_ID,{params:{id:t}})}(t).then((function(t){return t.data}))},onError:function(t){e({type:"danger",message:t.message})}})}(i),_=(e=(0,a.p)().showToast,(0,nt.a)({queryKey:["MenuList"],queryFn:function(){return it.u.get(rt.H.MENU_LIST).then((function(t){return t.data}))},onError:function(t){e({type:"danger",message:t.message})}})),v=function(t){var e=t.menutype,r=t.id,n=(0,a.p)().showToast;return(0,nt.a)({queryKey:["MenuParentItems",e,r],queryFn:function(){return function(t){var e=t.menutype,r=t.id;return it.u.get(rt.H.MENU_PARENT_ITEMS,{params:{menutype:e,id:r}})}({menutype:e,id:r}).then((function(t){return t.data}))},onError:function(t){n({type:"danger",message:t.message})}})}({menutype:h("menu_type"),id:f("menu_id")}),g=function(){var t=(0,a.p)().showToast,e=(0,b.$)();return(0,ot.D)({mutationFn:at,onSuccess:function(){t({type:"success",message:e("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_SUCCESS_MESSAGE")})},onError:function(e){t({type:"danger",message:e.message})}})}();return(0,P.useEffect)((function(){y.data&&p({menu_id:y.data.id,parent_id:y.data.parent_id,menu_type:y.data.menutype,title:y.data.title,alias:y.data.alias,ordering:y.data.id})}),[y.data,p]),y.isLoading||_.isLoading?(0,E.tZ)(tt.fz,{}):(0,E.tZ)(I.Z,{onClose:function(){return r({action:"CLOSE"})},title:o,wrapperCss:yt.wrapper,children:(0,E.BX)("form",{onSubmit:s.handleSubmit(function(){var t,e=(t=pt().mark((function t(e){return pt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,g.mutateAsync({id:i,data:e});case 2:t.sent.data&&r({action:"CONFIRM"});case 4:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){ft(i,n,o,a,l,"next",t)}function l(t){ft(i,n,o,a,l,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}()),children:[(0,E.BX)("div",{css:yt.fieldWrapper,children:[(0,E.tZ)(lt.Qr,{name:"title",control:s.control,render:function(t){return(0,E.tZ)(u.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_TITLE")}))}}),(0,E.tZ)(lt.Qr,{name:"alias",control:s.control,render:function(t){return(0,E.tZ)(u.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_ALIAS")}))}}),(0,E.tZ)(lt.Qr,{name:"menu_type",control:s.control,render:function(t){var e;return(0,E.tZ)(c.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU"),options:null!==(e=_.data)&&void 0!==e?e:[],isClearable:!1,onChange:function(){d("parent_id",1)}}))}}),(0,E.tZ)(lt.Qr,{name:"parent_id",control:s.control,render:function(t){var e;return(0,E.tZ)(c.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_PARENT"),options:null!==(e=v.data)&&void 0!==e?e:[],isClearable:!1}))}})]}),(0,E.BX)("div",{css:yt.buttonWrapper,children:[(0,E.tZ)(n.Z,{variant:"secondary",onClick:function(){return r({action:"CLOSE"})},children:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_CANCEL")}),(0,E.tZ)(n.Z,{type:"submit",loading:g.isLoading,children:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_SAVE_CHANGES")})]})]})})};var yt={wrapper:{name:"1vd4vqj-wrapper",styles:"max-width:500px;label:wrapper;"},fieldWrapper:(0,y.iv)("background-color:",f.qo.base.white,";padding:",f.W0[20],";display:flex;flex-direction:column;gap:",f.W0[12],";;label:fieldWrapper;"),buttonWrapper:(0,y.iv)("background-color:",f.qo.background.white,";box-shadow:",f.AF.dividerTop,";padding:",f.W0[12]," ",f.W0[16],";display:flex;justify-content:end;gap:",f.W0[8],";;label:buttonWrapper;")},Et=r(1974),_t=r(3106),vt=r(8138),gt=r(5587),bt=r(4285),mt=r(111),Ot=r(2811),Pt=r(908),Lt=r(9101),It=r(1073),St=r(7184),wt=r(7679),Tt=r(6731),At=r(9655);function Rt(t){return Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rt(t)}function Dt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ct(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Dt(Object(r),!0).forEach((function(e){xt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Dt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function xt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Rt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Rt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Rt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Gt(){Gt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Rt(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function Bt(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function Mt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Bt(i,n,o,a,l,"next",t)}function l(t){Bt(i,n,o,a,l,"throw",t)}a(void 0)}))}}function Zt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const Ut=function(t){var e,r,n,o=t.selectedItems,l=t.index,c=t.page,s=t.data,d=t.lastSelectedIndex,p=t.setLastSelectedIndex,y=t.setSelectedItems,_=t.columns,v=t.isPopup,g=(0,b.$)(),I=(0,mt.K)(),S=(0,L.d)().showModal,w=(0,a.p)().showToast,T=(0,M.g)(),A=(r=(0,P.useState)(!1),n=2,function(t){if(Array.isArray(t))return t}(r)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,n)||function(t,e){if(t){if("string"==typeof t)return Zt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Zt(t,e):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),R=A[0],D=A[1],C=(0,m.v)((function(t){return t.appConfig})),x=(0,wt.R4)(),G=(0,wt.es)(),B=(0,St.Xu)(),U=(0,wt.J5)(),k=(0,Ot.T)().closeSettingPanel,j=(0,It.j)((function(t){return t.setActiveAction})),N=(0,Z.L)(),W=(0,Pt.Q)(),X=(0,et.O)({defaultValues:{title:c.title}}),q=(0,gt.nB)({id:c.id}),H=q.attributes,Y=q.listeners,K=q.setNodeRef,$=q.transform,V=q.transition,z=q.isDragging,tt={transform:bt.ux.Transform.toString($),transition:V,zIndex:z?f.W5.positive:f.W5.level,backgroundColor:z?f.qo.background.hover:""};(0,P.useEffect)((function(){var t=function(t){"Escape"===t.key&&(D(!1),X.reset({title:c.title}))};return window.addEventListener("keydown",t),function(){window.removeEventListener("keydown",t)}}),[]);var rt=c.permissions.page.edit,nt=W.edit_own&&c.created_by===C.user_id,ot=rt||nt,it=W.create&&ot,at=c.permissions.page.edit_state,ct=c.permissions.page.delete,ut=c.permissions.page.menu_access,st=["dynamic_content:detail","dynamic_content:index"].includes(c.extension_view),dt=[{id:"view",icon:"eye",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_VIEW"},{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_RENAME",isDisabled:!ot},{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_DUPLICATE",isDisabled:!it||st},{id:"copyLink",icon:"link",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_COPY_LINK"},{id:"addToMenu",icon:"plus",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_ADD_TO_MENU",isDisabled:!ut},{id:"export",icon:"upload",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT",isDisabled:!ot},{id:"remove",icon:"trash",title:-2===c.published?"COM_SPPAGEBUILDER_EDITOR_PAGE_DELETE":"COM_SPPAGEBUILDER_EDITOR_PAGE_TRASH",variant:"critical",isDisabled:!ct}],pt=[{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1,disabled:!at},{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0,disabled:!at},{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2,disabled:!at||!ct}],ft=function(){var t=Mt(Gt().mark((function t(){var e,r,n,o;return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,N({title:g("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE")});case 2:e=t.sent,r=e.action,n=e.seoChecked,o=e.mediaChecked,"CONFIRM"===r&&(o?(0,St.xW)(String(c.id),n):B.mutateAsync({pageId:String(c.id),isSeoChecked:n}));case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();return(0,E.BX)("tr",{css:jt.bodyTr({isSelected:o.ids.includes(c.id),isShownFrontendButton:C.enable_frontend_editing&&ot}),ref:K,style:tt,children:[(0,E.BX)("td",{css:jt.checkboxWrapper,children:[(0,E.tZ)("div",Ct(Ct(Ct({css:jt.dragPoint,"data-drag-point":!0},H),Y),{},{children:(0,E.tZ)(i.Z,{name:"dragger",height:32,width:32})})),(0,E.tZ)(Q.Z,{onChange:function(t){var e=(0,O.R5)({itemId:c.id,isShiftHolding:I,lastSelectedIndex:d,currentIndex:l,isChecked:t,selectedItemIds:o.ids,selectedItemsIndex:o.indexes,totalItemsList:s}),r=e.updatedItemIds,n=e.updatedItemIndexes;y({ids:r,indexes:n}),p(l)},checked:o.ids.includes(c.id)})]}),(0,E.tZ)("td",{children:(0,E.tZ)("div",{css:jt.pageName,children:R?(0,E.tZ)("form",{onSubmit:X.handleSubmit((0,Tt.GI)(X,function(){var t=Mt(Gt().mark((function t(e){var r;return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.title,t.next=3,x.mutateAsync({ids:c.id.toString(),type:"rename",value:r});case 3:D(!1);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())),children:(0,E.tZ)(lt.Qr,{control:X.control,name:"title",render:function(t){return(0,E.tZ)(u.Z,Ct(Ct({},t),{},{hasAutoFocus:!0}))}})}):(0,E.BX)(E.HY,{children:[ot?function(t){return(0,E.tZ)(At.rU,{css:jt.titleButton({canEdit:ot}),to:t?vt.F.PopupEditor.buildLink({id:c.id.toString(),type:""}):vt.F.PageEditor.buildLink({id:c.id.toString(),type:""}),state:{prevPageName:_t.lr},onClick:function(){U.mutate({id:c.id,action:"check-in"}),j(void 0),k()},children:c.title})}(v):(0,E.tZ)("span",{css:jt.titleButton({canEdit:ot}),children:c.title}),0!==c.checked_out&&(0,E.tZ)("button",{type:"button",css:jt.lockButton,onClick:function(){x.mutate({type:"check-out",ids:c.id.toString()})},children:(0,E.tZ)(i.Z,{name:"lock",width:24,height:24})}),C.enable_frontend_editing&&ot&&(0,E.BX)("a",{"data-frontend-editor-button":!0,css:jt.frontendEditorButton,href:c.url,target:"_blank",rel:"noopener noreferrer",children:[(0,E.tZ)(i.Z,{name:"parmaLink",width:16,height:16}),(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_FRONTEND_EDITOR")})]})]})})}),(0,E.tZ)("td",{css:jt.widthStyles({width:200}),children:(0,E.tZ)("pre",{children:c.page_type})}),_.includes("author")&&(0,E.tZ)("td",{css:jt.widthStyles({width:200}),children:(0,E.tZ)("p",{children:c.author})}),_.includes("categories")&&(0,E.tZ)("td",{children:(0,E.tZ)("p",{children:c.category})}),_.includes("access")&&(0,E.tZ)("td",{css:jt.access,children:(0,E.tZ)("p",{children:c.access_title})}),_.includes("id")&&(0,E.tZ)("td",{css:[h.c.body("medium"),F.iZ.textCenter,";label:PageListItem;"],children:(0,E.tZ)("p",{children:c.id})}),_.includes("hits")&&(0,E.tZ)("td",{css:[h.c.body("medium"),F.iZ.textCenter,";label:PageListItem;"],children:c.hits}),_.includes("language")&&(0,E.tZ)("td",{css:F.iZ.textCenter,children:(0,E.tZ)("p",{children:null!==(e=c.language_title)&&void 0!==e?e:g("COM_SPPAGEBUILDER_EDITOR_LANGUAGE_ALL")})}),(0,E.tZ)("td",{css:jt.status,children:(0,E.tZ)(J.Z,{value:c.published,options:pt,onChange:function(t){x.mutate({type:{1:"published",0:"unpublished","-2":"trash"}[t.value],ids:c.id.toString()})},disabled:!at})}),(0,E.tZ)("td",{css:jt.actionColumn,children:(0,E.tZ)(Lt.Z,{actions:dt,triggerButtonContent:(0,E.tZ)(i.Z,{name:"ellipsisX",width:24,height:24,style:jt.triggerIcon}),onSelect:function(){var t=Mt(Gt().mark((function t(e){return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:t.t0=e,t.next="remove"===t.t0?3:"addToMenu"===t.t0?12:"view"===t.t0?14:"copyLink"===t.t0?16:"duplicate"===t.t0?18:"export"===t.t0?20:"rename"===t.t0?22:25;break;case 3:if(-2===c.published){t.next=6;break}return x.mutate({type:"trash",ids:c.id.toString()}),t.abrupt("break",25);case 6:return t.next=8,T({title:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_TITLE"),confirmationMessage:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_MESSAGE_SINGLE_PAGE"),confirmButtonText:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_DELETE_BUTTON_TEXT_SINGLE_ITEM"),mutationFn:wt.hh,payload:{ids:c.id.toString(),type:"delete"},invalidateKeys:[["PageList"]]});case 8:return"CONFIRM"===t.sent.action&&w({type:"success",message:g("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.abrupt("break",25);case 12:return S({component:ht,props:{title:g("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_TITLE"),id:c.id}}),t.abrupt("break",25);case 14:return window.open(c.preview,"_blank","noopener=true,noreferrer=true"),t.abrupt("break",25);case 16:return r="".concat(Et.Z.APPLICATION_ROOT,"index.php?option=com_sppagebuilder&view=page&id=").concat(c.id),n=void 0,(n=document.createElement("textarea")).value=r,n.setAttribute("readonly",""),n.style.position="absolute",n.style.left="-9999px",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n),w({type:"success",message:g("COM_SPPAGEBUILDER_EDITOR_PAGE_COPY_LINK_MESSAGE")}),t.abrupt("break",25);case 18:return G.mutate({id:c.id}),t.abrupt("break",25);case 20:return ft(),t.abrupt("break",25);case 22:return X.setValue("title",c.title),D(!0),t.abrupt("break",25);case 25:case"end":return t.stop()}var r,n}),t)})));return function(e){return t.apply(this,arguments)}}()})})]},c.id)};var kt={name:"1qe2gq2-bodyTr",styles:"[data-frontend-editor-button]{display:flex;};label:bodyTr;"},jt={bodyTr:function(t){var e=t.isSelected,r=t.isShownFrontendButton;return(0,y.iv)("height:80px;border-bottom:1px solid ",f.qo.stroke.neutral,";position:relative;pre{margin-bottom:0;}&:hover{background-color:",f.qo.background.hover,";",r&&kt," [data-drag-point]{opacity:1;}}",e&&(0,y.iv)("background-color:",f.qo.background.disabled,";;label:bodyTr;"),";;label:bodyTr;")},lockButton:(0,y.iv)(F.iZ.resetButton,";svg{color:",f.qo.icon.default,";};label:lockButton;"),titleButton:function(t){var e=t.canEdit;return(0,y.iv)(h.c.heading6(),";padding-inline:0;",e&&(0,y.iv)(":hover{color:",f.qo.text.primary,";};label:titleButton;")," ",!e&&(0,y.iv)("cursor:not-allowed;color:",f.qo.text.disabled,";;label:titleButton;"),";;label:titleButton;")},widthStyles:function(t){var e=t.width;return(0,y.iv)("width:",e,"px;;label:widthStyles;")},pageName:(0,y.iv)("position:relative;display:flex;gap:",f.W0[12],";align-items:center;max-width:400px;width:100%;;label:pageName;"),frontendEditorButton:(0,y.iv)(h.c.body(),";background-color:",f.qo.base.white,";border-radius:",f.E0[24],";padding:",f.W0[4]," ",f.W0[12]," ",f.W0[4]," ",f.W0[4],";width:fit-content;align-items:center;gap:",f.W0[8],";color:",f.qo.text.neutral,";display:none;position:absolute;left:100%;white-space:nowrap;svg{fill:none;}&:hover{color:",f.qo.text.hover,";}&::before,&::after{content:''!important;all:unset!important;};label:frontendEditorButton;"),checkboxWrapper:{name:"l0wqz3-checkboxWrapper",styles:"position:relative;label:checkboxWrapper;"},dragPoint:(0,y.iv)("position:absolute;top:0;left:0;height:100%;width:32px;display:flex;align-items:center;opacity:0;cursor:grab;svg{color:",f.qo.icon.default,";};label:dragPoint;"),access:{name:"sx074l-access",styles:"text-align:center;label:access;"},status:{name:"1n9i8ph-status",styles:"display:grid;place-content:center;height:inherit;label:status;"},triggerIcon:(0,y.iv)("color:",f.qo.icon.hints,";;label:triggerIcon;"),actionColumn:{name:"1m7ix2e-actionColumn",styles:"text-align:right;label:actionColumn;"}};const Nt=function(t){var e=t.data,r=t.selectedItems,n=t.setSelectedItems,o=t.lastSelectedIndex,i=t.setLastSelectedIndex,a=t.isLoading,l=void 0!==a&&a,c=t.columns,u=t.isPopup,s=(0,b.$)(),d=e.length,p=r.ids.length,f=c.length+3;return(0,E.tZ)("div",{css:Wt.tableContainer,children:(0,E.BX)("table",{css:Wt.table({selectedColumns:c.length}),children:[(0,E.tZ)("thead",{children:(0,E.BX)("tr",{css:Wt.headRow,children:[(0,E.tZ)("th",{css:Wt.widthStyles({width:70}),children:(0,E.tZ)(Q.Z,{checked:p>0&&p===d,isIndeterminate:p>0&&p<d,onChange:function(){var t=p===d?[]:(0,O.x9)(e),r=p===d?[]:(0,O.w6)(d);n({ids:t,indexes:r}),i(-1)}})}),(0,E.tZ)("th",{css:Wt.widthStyles({width:250}),children:s(u?"COM_SPPAGEBUILDER_EDITOR_POPUP_LIST_POPUP_NAME":"COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_NAME")}),(0,E.tZ)("th",{css:Wt.widthStyles({width:180}),children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_TYPE")}),c.includes("author")&&(0,E.tZ)("th",{css:Wt.widthStyles({width:180}),children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_AUTHOR")}),c.includes("categories")&&(0,E.tZ)("th",{children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_CATEGORIES")}),c.includes("access")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_ACCESS")}),c.includes("id")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_ID")}),c.includes("hits")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_HITS")}),c.includes("language")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_LANGUAGE")}),(0,E.tZ)("th",{css:[Wt.widthStyles({width:160}),Wt.textCenter,";label:PageListTable;"],children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_STATUS")}),(0,E.tZ)("th",{css:Wt.widthStyles({width:100})})]})}),(0,E.tZ)("tbody",{children:l?Array(10).fill(0).map((function(t,e){return(0,E.tZ)("tr",{css:Wt.skeletonWrapper,children:Array(f).fill(0).map((function(t,e){return(0,E.tZ)("td",{css:Wt.widthStyles({width:0===e?70:(0,O.sZ)(100,250)}),children:(0,E.tZ)(V.Z,{animation:!0,height:20,width:"".concat(0===e?100:(0,O.sZ)(90,100),"%")})},e)}))},e)})):e.map((function(t,a){return(0,E.tZ)(Ut,{index:a,data:e,page:t,lastSelectedIndex:o,setLastSelectedIndex:function(t){return i(t)},selectedItems:r,setSelectedItems:function(t){n(t)},columns:c,isPopup:"popup"===t.extension_view},t.id)}))})]})})};var Ft={name:"3vid4o-table",styles:"tr:hover{td{:nth-of-type(3)>*{visibility:hidden;}}};label:table;"},Wt={tableContainer:{name:"1c7p8s-tableContainer",styles:"display:block;width:100%;overflow-x:auto;label:tableContainer;"},table:function(t){var e=t.selectedColumns;return(0,y.iv)("width:100%;th{background-color:",(0,z.m4)(f.qo.base.primary,.15),";color:",f.qo.text.default,";height:49px;}th,td{",h.c.body(),";padding:",f.W0[16],";:first-of-type{padding-left:",f.W0[32],";}:last-of-type{padding-right:",f.W0[24],";}}",e>0&&Ft,";;label:table;")},headRow:(0,y.iv)("th{",h.c.body(),";};label:headRow;"),paginatorWrapper:(0,y.iv)("margin-top:",f.W0[32],";;label:paginatorWrapper;"),widthStyles:function(t){var e=t.width;return(0,y.iv)("width:",e,"px;;label:widthStyles;")},textCenter:{name:"lfnssf-textCenter",styles:"text-align:center;label:textCenter;"},skeletonWrapper:(0,y.iv)("border-bottom:1px solid ",f.qo.stroke.neutral,";height:80px;;label:skeletonWrapper;")},Xt=r(9752),qt=r(36),Ht=r(4370),Yt=r(1954),Kt=r(2200),$t=r(8698),Qt=r(3425),Vt=r(6511),zt=r(618);function Jt(t){return Jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jt(t)}function te(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function ee(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?te(Object(r),!0).forEach((function(e){re(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function re(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Jt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Jt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Jt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}const ne=function(t){var e=t.values,r=t.onChange,o=t.wrapperCss,a=t.clearButtonStatus,l=t.onClearFilter,c=(0,b.$)(),u=(0,m.v)((function(t){return t.appConfig})),s=e.status,d=e.access,p=e.category,f=e.language,h=e.type,y=[{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1},{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0},{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2}];return(0,E.BX)("div",{css:[oe.wrapper,o,";label:FilterSelectGroup;"],children:[(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{type:t}))},value:h,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_PAGE_TYPES")})}),(0,E.BX)(zt.Bw,{children:[(0,E.tZ)(zt.Ql,{value:"page",children:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_PAGE")}),(0,E.tZ)(zt.Ql,{value:"popup",children:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_POPUP")}),(0,E.tZ)(zt.U$,{}),(0,E.BX)(zt.Ql,{value:"dynamic_content:index",children:[(0,E.tZ)(i.Z,{name:"dynamicContent",width:16,height:16}),c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_INDEX")]}),(0,E.BX)(zt.Ql,{value:"dynamic_content:detail",children:[(0,E.tZ)(i.Z,{name:"dynamicContent",width:16,height:16}),c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_DETAIL")]}),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{status:t}))},value:s,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_STATUS")})}),(0,E.BX)(zt.Bw,{children:[y.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{access:t}))},value:d,disabled:0===u.access_levels.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_ACCESS")})}),(0,E.BX)(zt.Bw,{children:[u.access_levels.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{category:t}))},value:p,disabled:0===u.categories.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_CATEGORY")})}),(0,E.BX)(zt.Bw,{children:[u.categories.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{language:t}))},value:f,disabled:0===u.languages.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_LANGUAGE")})}),(0,E.BX)(zt.Bw,{children:[u.languages.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.tZ)(n.Z,{variant:"secondary",disabled:!a,buttonCss:oe.itemCss,onClick:function(){r({status:null,access:null,category:null,language:null,type:null}),l()},children:c("COM_SPPAGEBUILDER_EDITOR_CLEAR")})]})};var oe={wrapper:(0,y.iv)("display:flex;border:1px solid ",f.qo.stroke.neutral,";border-radius:",f.E0[5],";overflow:hidden;box-shadow:",f.AF.input,";input,button,[data-page-type]{border:none;border-radius:0;box-shadow:none;}input,[data-page-type]{border-right:1px solid ",f.qo.stroke.neutral,";:focus{box-shadow:none;}}button:last-of-type{display:flex;justify-content:center;align-items:center;}[data-placeholder='true']{color:",f.qo.text.hints,";};label:wrapper;"),itemCss:{name:"ebky32-itemCss",styles:"min-width:140px;label:itemCss;"}},ie=r(2028),ae=r(8537),le=r(4693),ce=r(5602),ue=r(7273),se=r(6216);function de(t){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},de(t)}function pe(){pe=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==de(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function fe(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function he(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){fe(i,n,o,a,l,"next",t)}function l(t){fe(i,n,o,a,l,"throw",t)}a(void 0)}))}}function ye(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ee(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ye(Object(r),!0).forEach((function(e){_e(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ye(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function _e(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==de(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==de(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===de(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function ve(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ge(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ge(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const be=function(){var t,e,r=ve((0,P.useState)([]),2),f=r[0],h=r[1],y=ve((0,P.useState)(),2),_=y[0],v=y[1],g=ve((0,P.useState)((function(){return Number((0,se.fp)(_t.dR.ITEMS_PER_PAGE_LOCAL_STORAGE_KEY))})),2),m=g[0],I=g[1],S=ve((0,P.useState)((function(){return(0,se.fp)(_t.dR.TABLE_COLUMNS_LOCAL_STORAGE_KEY)})),2),w=S[0],T=S[1],A=(0,Pt.Q)(),R=(0,P.useRef)(null),D=(0,St.nl)(),C=(0,b.$)(),x=((0,L.d)().showModal,(0,M.g)()),B=(0,a.p)().showToast,U=(e=(0,L.d)().showModal,function(t){return e({component:G,props:t,closeOnOutsideClick:!0})}),k=(0,Z.L)(),j=ve((0,P.useState)(-1),2),N=j[0],F=j[1],W=ve((0,P.useState)({ids:[],indexes:[]}),2),X=W[0],H=W[1],Y=A.edit_state,K=A.delete,$=(0,Ht.a)(),Q=$.pageInfo,V=$.onPageChange,z=$.onFilterItems,J=$.offset,tt=(0,wt.R4)(),rt=(0,wt.r7)(),nt=Number(Q.filter.limit)||_t.Hy,ot=(0,wt.u6)({offset:J,limit:nt,filter:Q.filter,page_type:"page"}),it=(0,et.O)({defaultValues:{search:Q.filter.search||"",sortBy:Q.filter.sortBy||"title",limit:Number(m)||_t.Hy,status:Number(Q.filter.status)||null,type:Q.filter.type||null,access:Number(Q.filter.access)||null,category:Number(Q.filter.category)||null,language:Q.filter.language||void 0}}),at=(0,et.O)({defaultValues:{columns:["author","categories","access","id","hits","language"]}}),ct=(0,qt.N)(it.watch("search","")),ut=it.watch("limit"),st=it.watch("sortBy"),dt=it.watch("status"),pt=it.watch("type"),ft=it.watch("access"),ht=it.watch("category"),yt=it.watch("language"),Et=!!(ct||(0,ue.BB)(dt)||ft||ht||yt),vt=(0,Kt.D)(ct);(0,P.useEffect)((function(){if((0,O.$K)(w))try{var t=JSON.parse(w);at.setValue("columns",t)}catch(t){console.error(t)}}),[]),(0,P.useEffect)((function(){z(Ee(Ee(Ee(Ee(Ee(Ee(Ee(Ee({},ct.length>0&&{search:ct}),(0,O.$K)(dt)&&{status:dt.toString()}),(0,O.$K)(pt)&&{type:pt}),(0,O.$K)(ft)&&{access:ft.toString()}),(0,O.$K)(ht)&&{category:ht.toString()}),yt&&{language:yt}),ut&&{limit:String(ut)}),st&&{sortBy:st})),ct!==vt&&V(1)}),[z,ct,ut,st,pt,dt,ft,ht,yt,vt,V]);var bt=!!ct||(0,O.$K)(dt)||(0,O.$K)(ft)||(0,O.$K)(ht)||!!yt||(0,O.$K)(pt),mt=(0,Xt.Dy)((0,Xt.VT)(Xt.we),(0,Xt.VT)(Xt.Lg,{coordinateGetter:gt.is})),Ot=[{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISH"),value:"published",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISH"),value:"unpublished",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_ACTION_CHECKOUT"),value:"check-out",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE"),value:"language",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS"),value:"access",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY"),value:"category",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT"),value:"export",disabled:!Y},{label:C(-2===dt?"COM_SPPAGEBUILDER_EDITOR_FILTER_DELETE":"COM_SPPAGEBUILDER_EDITOR_FILTER_TRASH"),value:-2===dt?"delete":"trash",disabled:!K||!Y,variant:"critical"}],Lt={language:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE_CHANGE"),access:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS_CHANGE"),category:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY_CHANGE")},It={language:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE"),access:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS"),category:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY")},Tt=[{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_TITLE_ASC"),value:"title"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_TITLE_DESC"),value:"-title"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ORDERING_ASC"),value:"ordering"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ORDERING_DESC"),value:"-ordering"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_DATE_ASC"),value:"created_on"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_DATE_DESC"),value:"-created_on"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_STATUS_ASC"),value:"published"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_STATUS_DESC"),value:"-published"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_HITS_ASC"),value:"hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_HITS_DESC"),value:"-hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ID_ASC"),value:"id"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ID_DESC"),value:"-id"}],At=[{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_AUTHOR"),value:"author"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_CATEGORIES"),value:"categories"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_ACCESS"),value:"access"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_ID"),value:"id"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_HITS"),value:"hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_LANGUAGE"),value:"language"}],Rt=[5,10,15,20,25,30,50,100,200,500].map((function(t){return{label:t.toString(),value:t}}));(0,P.useEffect)((function(){ot.data&&h(ot.data.results)}),[ot.data]);var Dt=at.watch("columns",[]);(0,P.useEffect)((function(){(0,se.pj)(_t.dR.TABLE_COLUMNS_LOCAL_STORAGE_KEY,JSON.stringify(Dt)),(0,se.pj)(_t.dR.ITEMS_PER_PAGE_LOCAL_STORAGE_KEY,JSON.stringify(ut)),I(Number(JSON.stringify(ut))),T(JSON.stringify(Dt))}),[Dt,ut]);var Ct=ve((0,P.useState)(!1),2),xt=Ct[0],Gt=Ct[1],Bt=ve((0,P.useState)(!1),2),Mt=Bt[0],Zt=Bt[1],Ut=(0,Yt.l)({isOpen:xt,arrow:"top"}),kt=Ut.triggerRef,jt=Ut.popoverRef,Ft=Ut.position,Wt=(0,Yt.l)({isOpen:Mt,arrow:"top"}),zt=Wt.triggerRef,Jt=Wt.popoverRef,te=Wt.position;return(0,E.BX)(d.Z,{children:[(0,E.tZ)(p.Z,{title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_PAGES"),subtitle:C("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_PAGES"),action:A.create&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(n.Z,{variant:"secondary",buttonCss:me.importButtonCss,onClick:function(){var t;return null===(t=R.current)||void 0===t?void 0:t.click()},children:C("COM_SPPAGEBUILDER_EDITOR_PAGE_BULK_IMPORT")}),(0,E.tZ)(n.Z,{icon:(0,E.tZ)(i.Z,{name:"plus"}),onClick:function(){Gt(!0)},ref:kt,children:C("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_BUTTON")})]})}),(0,E.tZ)("input",{ref:R,type:"file",hidden:!0,onChange:function(){var t=he(pe().mark((function t(e){var r,n;return pe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=null===(r=e.target.files)||void 0===r?void 0:r[0]){t.next=3;break}return t.abrupt("return");case 3:D.mutate(n),e.target.value="";case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}),(0,E.tZ)(s.Z,{children:(0,E.BX)(Vt.Z,{query:ot,disableLoader:!0,children:[(0,E.BX)("div",{css:me.topPanel,children:[(0,E.BX)("div",{css:me.topPanelLeft,children:[(0,E.tZ)(o.Z,{options:Ot,placeholder:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_DROPDOWN_PLACEHOLDER"),wrapperStyle:me.topPanelLeftSelect,isClearable:!1,disabled:0===X.ids.length||!Y,value:Ot.find((function(t){return t.value===_})),onChange:function(t){v(t.value)}}),(0,E.tZ)(n.Z,{onClick:he(pe().mark((function t(){var e,r,n,o,i;return pe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(X.ids.length&&_){t.next=2;break}return t.abrupt("return");case 2:if("export"!==_){t.next=12;break}return t.next=5,k({title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE"),confirmationMessage:C("COM_SPPAGEBUILDER_EDITOR_EXPORT_PAGES_MESSAGE")});case 5:e=t.sent,r=e.action,n=e.seoChecked,o=e.mediaChecked,"CONFIRM"===r&&(0,St.PS)(X.ids.join(","),n,o),t.next=30;break;case 12:if("language"!==_&&"access"!==_&&"category"!==_){t.next=20;break}return t.next=15,U({title:Lt[_],label:It[_],bulkAction:_,mutationFn:wt.hh,payload:{ids:X.ids.join(","),type:_},invalidateKeys:[["PageList"]]});case 15:"CONFIRM"===t.sent.action&&B({type:"success",message:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.next=30;break;case 20:if("delete"===_){t.next=24;break}tt.mutate({ids:X.ids.join(","),type:_}),t.next=30;break;case 24:return i=X.ids.length,t.next=27,x({title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_TITLE"),confirmationMessage:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_MESSAGE_MULTIPLE_PAGES",{totalPages:i.toString().padStart(2,"0")}),confirmButtonText:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_DELETE_BUTTON_TEXT",{totalPages:i.toString().padStart(2,"0")}),mutationFn:wt.hh,payload:{ids:X.ids.join(","),type:_},invalidateKeys:[["PageList"]]});case 27:"CONFIRM"===t.sent.action&&B({type:"success",message:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")});case 30:v(null),H({ids:[],indexes:[]}),F(-1);case 33:case"end":return t.stop()}}),t)}))),disabled:!_,children:C("COM_SPPAGEBUILDER_EDITOR_APPLY")})]}),(0,E.tZ)("div",{css:me.topPanelRight,children:(0,E.tZ)(ne,{clearButtonStatus:bt,onClearFilter:function(){return it.reset({search:"",status:null,access:null,category:null,language:void 0,type:null})},values:{status:dt,type:pt,access:ft,category:ht,language:yt},onChange:function(t){it.reset(Ee(Ee({},it.getValues()),{},{status:t.status,type:t.type,access:t.access,category:Number(t.category),language:t.language||void 0}))}})})]}),(0,E.BX)($t.Z,{cardCss:me.cardStyle,children:[(0,E.BX)("div",{css:me.tableHeaderWrapper,children:[(0,E.tZ)("div",{css:me.searchFieldWrapper,children:(0,E.tZ)(lt.Qr,{control:it.control,name:"search",render:function(t){return(0,E.tZ)(u.Z,Ee(Ee({},t),{},{variant:"search",placeholder:C("COM_SPPAGEBUILDER_EDITOR_SEARCH_INPUT_PLACEHOLDER"),isClearable:!0}))}})}),(0,E.BX)("div",{css:me.sortByFieldWrapper,children:[(0,E.tZ)(lt.Qr,{control:it.control,name:"limit",render:function(t){return(0,E.tZ)(c.Z,Ee(Ee({},t),{},{options:Rt,isClearable:!1,removeOptionsMinWidth:!0}))}}),(0,E.tZ)(lt.Qr,{control:at.control,name:"columns",render:function(t){return(0,E.tZ)(l.Z,Ee(Ee({},t),{},{options:At,placeholder:C("COM_SPPAGEBUILDER_EDITOR_PAGE_TABLE_COLUMNS"),disabled:ot.isSuccess&&!ot.data.results.length,showChips:!1,hideSelectNumbers:!0,isClearable:!1}))}}),(0,E.tZ)(lt.Qr,{control:it.control,name:"sortBy",render:function(t){return(0,E.tZ)(c.Z,Ee(Ee({},t),{},{options:Tt,placeholder:C("COM_SPPAGEBUILDER_EDITOR_PAGE_SORT_TABLE_BY_PLACEHOLDER"),showArrowUpDown:!0,disabled:ot.isSuccess&&!ot.data.results.length}))}})]})]}),ot.isSuccess&&!ot.data.results.length?Et?(0,E.tZ)(Qt.Z,{orientation:"vertical",emptyStateImage:le,imageAltText:C("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),title:C("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),removeBorderRadius:!0,wrapperCss:me.wrapperCss}):(0,E.tZ)(Qt.Z,{orientation:"vertical",emptyStateImage:ae,imageAltText:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_IMAGE_ALT"),title:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_TITLE"),content:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_CONTENT"),removeBorderRadius:!0,action:(0,E.tZ)(n.Z,{icon:(0,E.tZ)(i.Z,{name:"plus"}),onClick:function(){Zt(!0)},ref:zt,children:C("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_BUTTON")})}):(0,E.tZ)(Xt.LB,{sensors:mt,collisionDetection:Xt.pE,onDragEnd:function(t){var e=t.active,r=t.over;null!=r&&r.id&&e.id!==r.id&&h((function(t){var n=t.findIndex((function(t){return t.id===e.id})),o=t.findIndex((function(t){return t.id===r.id})),i=(0,gt.Rp)(f,n,o),a=(0,O.x9)(i),l=Array.from({length:a.length},(function(t,e){return e+1}));return rt.mutate({ids:a,orders:l}),it.reset(Ee(Ee({},it.getValues()),{},{sortBy:"ordering"})),i}))},modifiers:[ce.l],children:(0,E.tZ)(gt.Fo,{items:f,strategy:gt.qw,children:(0,E.tZ)(Nt,{data:f,isLoading:ot.isLoading,selectedItems:X,setSelectedItems:H,lastSelectedIndex:N,setLastSelectedIndex:F,columns:Dt})})})]}),(0,E.tZ)("div",{css:me.paginatorWrapper,children:(0,E.tZ)(ie.Z,{currentPage:Q.page,onPageChange:V,totalItems:(null===(t=ot.data)||void 0===t?void 0:t.totalItems)||0,itemsPerPage:Number(Q.filter.limit)||_t.Hy})})]})}),(0,E.tZ)(Yt.h,{isOpen:xt,onClickOutside:function(){return Gt(!1)},hasBackdropBackground:!0,children:(0,E.tZ)(q,{ref:jt,position:Ft,onClose:function(){return Gt(!1)}})}),(0,E.tZ)(Yt.h,{isOpen:Mt,onClickOutside:function(){return Zt(!1)},hasBackdropBackground:!0,children:(0,E.tZ)(q,{ref:Jt,position:te,onClose:function(){return Zt(!1)}})})]})};var me={topPanel:(0,y.iv)("display:flex;justify-content:space-between;align-items:center;gap:",f.W0[8],";margin:",f.W0[16]," 0 ",f.W0[32]," 0;;label:topPanel;"),topPanelLeft:(0,y.iv)("display:flex;justify-content:center;align-items:center;gap:",f.W0[16],";;label:topPanelLeft;"),topPanelLeftSelect:{name:"1ex2zjt-topPanelLeftSelect",styles:"max-width:128px;label:topPanelLeftSelect;"},topPanelRight:{name:"3pet9h-topPanelRight",styles:"max-width:840px;width:100%;height:32px;label:topPanelRight;"},pageName:(0,y.iv)(h.c.heading6(),";color:",f.qo.text.default,";;label:pageName;"),cardStyle:(0,y.iv)("border-radius:",f.E0[5],";box-shadow:",f.AF.base,";overflow:hidden;;label:cardStyle;"),tableHeaderWrapper:(0,y.iv)("width:100%;display:flex;justify-content:space-between;align-items:center;gap:",f.W0[8],";padding:",f.W0[24],";;label:tableHeaderWrapper;"),searchFieldWrapper:{name:"tjtfnx-searchFieldWrapper",styles:"width:min(280px, 100%);label:searchFieldWrapper;"},sortByFieldWrapper:(0,y.iv)("width:min(500px, 100%);display:flex;gap:",f.W0[16],";>div:first-of-type{max-width:80px;};label:sortByFieldWrapper;"),tableRowStyle:{name:"1l9y7ek-tableRowStyle",styles:":last-of-type{border-bottom:none;};label:tableRowStyle;"},paginatorWrapper:(0,y.iv)("margin-top:",f.W0[32],";;label:paginatorWrapper;"),wrapperCss:{name:"1kd73z9-wrapperCss",styles:">img{max-width:180px;max-height:180px;};label:wrapperCss;"},importButtonCss:(0,y.iv)("margin-right:",f.W0[10],";;label:importButtonCss;")}}}]);PKCA#]qB�LCLCRcomponents/com_sppagebuilder/assets/editor/dist/js/850.d11644325d7e39e4733f.min.jsnu�[���/*! For license information please see 850.d11644325d7e39e4733f.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[850],{6850:(t,e,r)=>{r.r(e),r.d(e,{default:()=>be});var n=r(3871),o=r(7870),i=r(7264),a=r(1731),l=r(4353),c=r(8122),u=r(5350),s=r(7579),d=r(3039),p=r(7894),f=r(824),h=r(4185),y=r(917),E=r(5944);const _=function(t){var e=t.type,r=void 0===e?"primary":e,n=t.message,o=void 0===n?"":n;return(0,E.tZ)("div",{css:v.modalWrapper(r),children:(0,E.BX)("div",{css:v.content(r),children:[(0,E.tZ)(i.Z,{name:r,width:20,height:20}),o]})})};var v={modalWrapper:function(t){return(0,y.iv)("max-width:450px;min-height:30px;background:",f.qo.background[t],";border-radius:",f.E0[4],";;label:modalWrapper;")},content:function(t){return(0,y.iv)("padding:",f.W0[8]," ",f.W0[12],";",h.c.body()," color:",f.qo.text[t],";display:flex;align-items:center;gap:",f.W0[4],";;label:content;")}},g=r(7898),b=r(1234),m=r(2328),O=r(7602),P=r(7294),L=r(1709),I=r(9781);function S(t){return S="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},S(t)}function w(){w=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(T([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==S(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function T(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=T,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:T(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function T(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function A(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?T(Object(r),!0).forEach((function(e){R(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function R(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==S(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==S(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===S(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function D(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function C(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){D(i,n,o,a,l,"next",t)}function l(t){D(i,n,o,a,l,"throw",t)}a(void 0)}))}}function x(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var G=function(t){var e,r,i=t.title,a=t.label,l=t.bulkAction,c=t.confirmButtonText,u=t.closeModal,s=t.mutationFn,d=t.invalidateKeys,p=t.skipMutation,f=void 0!==p&&p,h=t.payload,y=(0,b.$)(),v=(0,m.v)((function(t){return t.appConfig})),L={language:"languages",access:"access_levels",category:"categories"},S=(e=(0,P.useState)({label:(0,O.$K)(v[L[l]])&&v[L[l]].length>0?v[L[l]][0].label:"",value:(0,O.$K)(v[L[l]])&&v[L[l]].length>0?v[L[l]][0].value:""}),r=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(e,r)||function(t,e){if(t){if("string"==typeof t)return x(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?x(t,e):void 0}}(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),T=S[0],R=S[1],D=(0,g.A)({mutationFn:s,invalidateKeys:d});return(0,E.tZ)(I.Z,{onClose:function(){return u({action:"CLOSE"})},title:i,headerCss:B.modalHeaderCss,contentCss:B.modalContentCss,wrapperCss:B.modalWrapper,children:(0,E.BX)("div",{children:[(0,E.BX)("div",{css:B.content,children:[v[L[l]].length>0?(0,E.tZ)(_,{type:"primary",message:y("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_MODAL_INFO")}):(0,E.tZ)(_,{type:"warning",message:y("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_MODAL_WARNING")}),(0,E.tZ)(o.Z,{options:v[L[l]],value:T,label:a,onChange:function(t){R(t)},clearOption:function(){return R({label:"",value:""})}})]}),(0,E.BX)("div",{css:B.footerWrapper,children:[(0,E.tZ)(n.Z,{variant:"secondary",onClick:function(){return u({action:"CLOSE"})},children:y("COM_SPPAGEBUILDER_EDITOR_CANCEL")}),(0,E.tZ)(n.Z,{disabled:0===v[L[l]].length||""===T.value,onClick:C(w().mark((function t(){var e,r;return w().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!f){t.next=3;break}return u({action:"CONFIRM"}),t.abrupt("return");case 3:if(!h){t.next=11;break}return t.next=6,D.mutateAsync(A(A({},h),{},{value:T.value}));case 6:if(e=t.sent,r=e.data,!((0,O.$K)(r.status)?r.status:r)){t.next=11;break}return u({action:"CONFIRM"}),t.abrupt("return");case 11:u({action:"CLOSE"});case 12:case"end":return t.stop()}}),t)}))),loading:D.isLoading,children:c||y("COM_SPPAGEBUILDER_EDITOR_UPDATE")})]})]})})},B={modalWrapper:{name:"1utdhwa-modalWrapper",styles:"max-width:450px;label:modalWrapper;"},content:(0,y.iv)("display:flex;flex-direction:column;gap:",f.W0[16],";padding:",f.W0[16]," ",f.W0[24],";p{",h.c.body(),";};label:content;"),footerWrapper:(0,y.iv)("display:flex;justify-content:end;gap:",f.W0[8],";padding:",f.W0[12]," ",f.W0[16],";box-shadow:",f.AF.dividerTop,";;label:footerWrapper;"),modalHeaderCss:(0,y.iv)("padding:",f.W0[12]," ",f.W0[24],";;label:modalHeaderCss;"),modalContentCss:(0,y.iv)("background-color:",f.qo.background.white,";;label:modalContentCss;"),labelCss:(0,y.iv)("width:fit-content;",h.c.body("medium"),";;label:labelCss;")},M=r(3816),Z=r(5827),U=r(2847),k=r(9148),j=r(1518),N=r(1151),F=r(1921);function W(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return X(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?X(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const q=P.forwardRef((function(t,e){var r=t.position,n=t.onClose,o=(0,N.fS)(),a=W(P.useState(!1),2),l=a[0],c=a[1],u=W(P.useState(!1),2),s=u[0],d=u[1],p=W((0,P.useState)(null),2),f=p[0],h=p[1],y=W((0,P.useState)(null),2),_=y[0],v=y[1],g=(0,b.$)(),m=(0,L.d)().showModal,I=(0,P.useMemo)((function(){return o.data?o.data:[]}),[o.data]),S=(0,P.useMemo)((function(){return I.filter((function(t){return t.id!==j.u.ARTICLES&&t.id!==j.u.TAGS}))}),[I]),w=(0,P.useMemo)((function(){var t=I.find((function(t){return t.id===j.u.ARTICLES})),e=[];return t&&e.push({id:j.u.ARTICLES,title:t.title,disabled:t.disabled,pages:t.pages}),e}),[I]),T=(0,P.useCallback)((function(t){var e=t.pageType,r=t.collectionId;m({component:k.Z,props:{title:g("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_MODAL_TITLE"),pageType:e,collectionId:r}})}),[m,g]),A=(0,P.useCallback)((function(){c(!1),d(!1),h(null),v(null),n()}),[n]);return(0,E.tZ)("div",{ref:e,css:[$.wrapper,{top:r.top,left:r.left},";label:PageCreationPopover;"],children:(0,E.BX)("div",{css:$.pageTypeList,children:[(0,E.tZ)("button",{type:"button",css:$.pageTypeItem,onMouseEnter:function(){c(!1),d(!1)},onClick:function(){A(),T({pageType:"page",collectionId:null})},children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_OPTION")}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem({disabled:O.Eu||0===w.length}),onMouseEnter:function(){c(!1),d(!0),h(null),v(j.u.ARTICLES)},onClick:function(){O.Eu&&A()},onKeyDown:O.ZT,children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_ARTICLE_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{}),!O.Eu&&w.length>0&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageList(s),children:w.map((function(t,e){return(0,E.tZ)("div",{css:$.dynamicPageItemPages(_===t.id,!0),children:t.pages.map((function(t,e){return(0,E.tZ)("button",{type:"button",css:$.dynamicPageItemPage,disabled:t.disabled,onClick:function(){A(),T({pageType:t.page_type,collectionId:t.collection_id})},children:t.title},e)}))},e)}))})]})]}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem,disabled:O.Eu,onMouseEnter:function(){c(!1),d(!1),h(null),v(null)},onClick:function(){A(),O.Eu||T({pageType:"popup",collectionId:null})},children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_POPUP_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{})]}),(0,E.BX)("button",{type:"button",css:$.pageTypeItem({disabled:O.Eu||0===S.length}),onMouseEnter:function(){d(!1),c(!0),v(null)},onClick:function(){O.Eu&&A()},onKeyDown:O.ZT,children:[(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_DYNAMIC_CONTENT_PAGE_OPTION")}),O.Eu&&(0,E.tZ)(U.Z,{}),!O.Eu&&S.length>0&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageList(l),children:S.map((function(t,e){return(0,E.BX)("div",{css:$.dynamicPageItem(t.disabled),onMouseEnter:function(){h(t.id)},children:[t.title,(0,E.tZ)(i.Z,{name:"chevronRight",width:12,height:12}),(0,E.tZ)("div",{css:$.dynamicPageItemPages(f===t.id,!1),children:t.pages.map((function(t,e){return(0,E.tZ)("button",{type:"button",css:$.dynamicPageItemPage,disabled:t.disabled,onClick:function(){A(),T({pageType:t.page_type,collectionId:t.collection_id})},children:t.title},e)}))})]},e)}))})]})]})]})})}));var H={name:"1wiigg0-dynamicPageItemPages",styles:"visibility:visible;label:dynamicPageItemPages;"},Y={name:"10c0efm-dynamicPageList",styles:"visibility:visible;label:dynamicPageList;"},K={name:"1dca593-pageTypeItem",styles:"&>span{opacity:0.5;}pointer-events:none;cursor:not-allowed;label:pageTypeItem;"},$={wrapper:(0,y.iv)("position:absolute;width:",O.Eu?280:240,"px;background-color:",f.qo.background.white,";border-radius:",f.E0[6],";box-shadow:",f.AF.popover,";;label:wrapper;"),pageTypeList:(0,y.iv)("border-radius:",f.E0[6],";;label:pageTypeList;"),pageTypeItem:function(t){var e=t.disabled,r=void 0!==e&&e;return(0,y.iv)(F.iZ.resetButton,";",h.c.body(),";color:",f.qo.text.default,";width:100%;display:flex;align-items:center;justify-content:space-between;border-radius:0;background-color:",f.qo.background.white,";transition:background-color 0.3s ease-in-out;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";z-index:",f.W5.highest,";position:relative;&:first-of-type{border-top-left-radius:",f.E0[6],";border-top-right-radius:",f.E0[6],";}&:last-of-type{border-bottom-left-radius:",f.E0[6],";border-bottom-right-radius:",f.E0[6],";}&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";&:not(:first-of-type):not(:last-of-type){border-radius:0;}}&:disabled{pointer-events:none;cursor:not-allowed;&>span{opacity:0.5;}}",r&&K,";;label:pageTypeItem;")},dynamicPageList:function(t){return(0,y.iv)("position:absolute;width:180px;background-color:",f.qo.background.white,";box-shadow:",f.AF.popover,";left:-",f.W0[8],";top:0;visibility:hidden;border-radius:",f.E0[6],";transform:translateX(-100%);",t&&Y,";;label:dynamicPageList;")},dynamicPageItem:function(t){return(0,y.iv)(h.c.body(),";color:",f.qo.text.default,";width:100%;display:flex;align-items:center;justify-content:space-between;border-radius:",f.E0[6],";background-color:",f.qo.background.white,";transition:background-color 0.3s ease-in-out;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";border-radius:0;position:relative;&:first-of-type{border-top-left-radius:",f.E0[6],";border-top-right-radius:",f.E0[6],";}&:last-of-type{border-bottom-left-radius:",f.E0[6],";border-bottom-right-radius:",f.E0[6],";}&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";&:not(:first-of-type):not(:last-of-type){border-radius:0;}}",t&&(0,y.iv)("color:",f.qo.text.disabled,";pointer-events:none;cursor:not-allowed;;label:dynamicPageItem;"),";;label:dynamicPageItem;")},dynamicPageItemPages:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return(0,y.iv)("position:absolute;width:100%;background-color:",f.qo.background.white,";box-shadow:",f.AF.popover,";left:-",f.W0[8],";top:0;border-radius:",f.E0[6],";visibility:hidden;transform:",e?"translateX(0)":"translateX(-100%)",";overflow:hidden;",t&&H,";;label:dynamicPageItemPages;")},dynamicPageItemPage:(0,y.iv)(F.iZ.resetButton,";",h.c.body(),";color:",f.qo.text.default,";width:100%;padding-inline:",f.W0[16],";padding-block:",f.W0[8],";border-radius:0;&:hover{background-color:",f.qo.background.hover,";color:",f.qo.text.hover,";}&:disabled{color:",f.qo.text.disabled,";pointer-events:none;cursor:not-allowed;};label:dynamicPageItemPage;")},Q=r(9085),V=r(9313),z=r(4101),J=r(5785),tt=r(935),et=r(802),rt=r(6537),nt=r(6492),ot=r(4469),it=r(5501),at=function(t){return it.u.put(rt.H.ADD_TO_MENU,t.data)},lt=r(7536);function ct(t){return ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ct(t)}function ut(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function st(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ut(Object(r),!0).forEach((function(e){dt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ut(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function dt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==ct(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==ct(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ct(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function pt(){pt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==ct(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function ft(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}const ht=function(t){var e,r=t.closeModal,o=t.title,i=t.id,l=(0,b.$)(),s=(0,et.O)({defaultValues:{page_id:i,menu_id:0,parent_id:1,menu_type:"mainmenu",title:"",alias:"",ordering:0}}),d=s.setValue,p=s.reset,f=s.getValues,h=s.watch,y=function(t){var e=(0,a.p)().showToast;return(0,nt.a)({queryKey:["MenuByPageId",t],queryFn:function(){return function(t){return it.u.get(rt.H.MENU_BY_PAGE_ID,{params:{id:t}})}(t).then((function(t){return t.data}))},onError:function(t){e({type:"danger",message:t.message})}})}(i),_=(e=(0,a.p)().showToast,(0,nt.a)({queryKey:["MenuList"],queryFn:function(){return it.u.get(rt.H.MENU_LIST).then((function(t){return t.data}))},onError:function(t){e({type:"danger",message:t.message})}})),v=function(t){var e=t.menutype,r=t.id,n=(0,a.p)().showToast;return(0,nt.a)({queryKey:["MenuParentItems",e,r],queryFn:function(){return function(t){var e=t.menutype,r=t.id;return it.u.get(rt.H.MENU_PARENT_ITEMS,{params:{menutype:e,id:r}})}({menutype:e,id:r}).then((function(t){return t.data}))},onError:function(t){n({type:"danger",message:t.message})}})}({menutype:h("menu_type"),id:f("menu_id")}),g=function(){var t=(0,a.p)().showToast,e=(0,b.$)();return(0,ot.D)({mutationFn:at,onSuccess:function(){t({type:"success",message:e("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_SUCCESS_MESSAGE")})},onError:function(e){t({type:"danger",message:e.message})}})}();return(0,P.useEffect)((function(){y.data&&p({menu_id:y.data.id,parent_id:y.data.parent_id,menu_type:y.data.menutype,title:y.data.title,alias:y.data.alias,ordering:y.data.id})}),[y.data,p]),y.isLoading||_.isLoading?(0,E.tZ)(tt.fz,{}):(0,E.tZ)(I.Z,{onClose:function(){return r({action:"CLOSE"})},title:o,wrapperCss:yt.wrapper,children:(0,E.BX)("form",{onSubmit:s.handleSubmit(function(){var t,e=(t=pt().mark((function t(e){return pt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,g.mutateAsync({id:i,data:e});case 2:t.sent.data&&r({action:"CONFIRM"});case 4:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){ft(i,n,o,a,l,"next",t)}function l(t){ft(i,n,o,a,l,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}()),children:[(0,E.BX)("div",{css:yt.fieldWrapper,children:[(0,E.tZ)(lt.Qr,{name:"title",control:s.control,render:function(t){return(0,E.tZ)(u.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_TITLE")}))}}),(0,E.tZ)(lt.Qr,{name:"alias",control:s.control,render:function(t){return(0,E.tZ)(u.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_ALIAS")}))}}),(0,E.tZ)(lt.Qr,{name:"menu_type",control:s.control,render:function(t){var e;return(0,E.tZ)(c.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU"),options:null!==(e=_.data)&&void 0!==e?e:[],isClearable:!1,onChange:function(){d("parent_id",1)}}))}}),(0,E.tZ)(lt.Qr,{name:"parent_id",control:s.control,render:function(t){var e;return(0,E.tZ)(c.Z,st(st({},t),{},{label:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_MENU_PARENT"),options:null!==(e=v.data)&&void 0!==e?e:[],isClearable:!1}))}})]}),(0,E.BX)("div",{css:yt.buttonWrapper,children:[(0,E.tZ)(n.Z,{variant:"secondary",onClick:function(){return r({action:"CLOSE"})},children:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_CANCEL")}),(0,E.tZ)(n.Z,{type:"submit",loading:g.isLoading,children:l("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_SAVE_CHANGES")})]})]})})};var yt={wrapper:{name:"1vd4vqj-wrapper",styles:"max-width:500px;label:wrapper;"},fieldWrapper:(0,y.iv)("background-color:",f.qo.base.white,";padding:",f.W0[20],";display:flex;flex-direction:column;gap:",f.W0[12],";;label:fieldWrapper;"),buttonWrapper:(0,y.iv)("background-color:",f.qo.background.white,";box-shadow:",f.AF.dividerTop,";padding:",f.W0[12]," ",f.W0[16],";display:flex;justify-content:end;gap:",f.W0[8],";;label:buttonWrapper;")},Et=r(1974),_t=r(3106),vt=r(8138),gt=r(5587),bt=r(4285),mt=r(111),Ot=r(2811),Pt=r(908),Lt=r(9101),It=r(1073),St=r(7184),wt=r(7679),Tt=r(6731),At=r(9655);function Rt(t){return Rt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Rt(t)}function Dt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ct(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Dt(Object(r),!0).forEach((function(e){xt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Dt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function xt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Rt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Rt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Rt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Gt(){Gt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==Rt(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function Bt(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function Mt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Bt(i,n,o,a,l,"next",t)}function l(t){Bt(i,n,o,a,l,"throw",t)}a(void 0)}))}}function Zt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const Ut=function(t){var e,r,n,o=t.selectedItems,l=t.index,c=t.page,s=t.data,d=t.lastSelectedIndex,p=t.setLastSelectedIndex,y=t.setSelectedItems,_=t.columns,v=t.isPopup,g=(0,b.$)(),I=(0,mt.K)(),S=(0,L.d)().showModal,w=(0,a.p)().showToast,T=(0,M.g)(),A=(r=(0,P.useState)(!1),n=2,function(t){if(Array.isArray(t))return t}(r)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(r,n)||function(t,e){if(t){if("string"==typeof t)return Zt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Zt(t,e):void 0}}(r,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),R=A[0],D=A[1],C=(0,m.v)((function(t){return t.appConfig})),x=(0,wt.R4)(),G=(0,wt.es)(),B=(0,St.Xu)(),U=(0,wt.J5)(),k=(0,Ot.T)().closeSettingPanel,j=(0,It.j)((function(t){return t.setActiveAction})),N=(0,Z.L)(),W=(0,Pt.Q)(),X=(0,et.O)({defaultValues:{title:c.title}}),q=(0,gt.nB)({id:c.id}),H=q.attributes,Y=q.listeners,K=q.setNodeRef,$=q.transform,V=q.transition,z=q.isDragging,tt={transform:bt.ux.Transform.toString($),transition:V,zIndex:z?f.W5.positive:f.W5.level,backgroundColor:z?f.qo.background.hover:""};(0,P.useEffect)((function(){var t=function(t){"Escape"===t.key&&(D(!1),X.reset({title:c.title}))};return window.addEventListener("keydown",t),function(){window.removeEventListener("keydown",t)}}),[]);var rt=c.permissions.page.edit,nt=W.edit_own&&c.created_by===C.user_id,ot=rt||nt,it=W.create&&ot,at=c.permissions.page.edit_state,ct=c.permissions.page.delete,ut=c.permissions.page.menu_access,st=["dynamic_content:detail","dynamic_content:index"].includes(c.extension_view),dt=[{id:"view",icon:"eye",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_VIEW"},{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_RENAME",isDisabled:!ot},{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_DUPLICATE",isDisabled:!it||st},{id:"copyLink",icon:"link",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_COPY_LINK"},{id:"addToMenu",icon:"plus",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_ADD_TO_MENU",isDisabled:!ut},{id:"export",icon:"upload",title:"COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT",isDisabled:!ot},{id:"remove",icon:"trash",title:-2===c.published?"COM_SPPAGEBUILDER_EDITOR_PAGE_DELETE":"COM_SPPAGEBUILDER_EDITOR_PAGE_TRASH",variant:"critical",isDisabled:!ct}],pt=[{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1,disabled:!at},{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0,disabled:!at},{label:g("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2,disabled:!at||!ct}],ft=function(){var t=Mt(Gt().mark((function t(){var e,r,n,o;return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,N({title:g("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE")});case 2:e=t.sent,r=e.action,n=e.seoChecked,o=e.mediaChecked,"CONFIRM"===r&&(o?(0,St.xW)(String(c.id),n):B.mutateAsync({pageId:String(c.id),isSeoChecked:n}));case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();return(0,E.BX)("tr",{css:jt.bodyTr({isSelected:o.ids.includes(c.id),isShownFrontendButton:C.enable_frontend_editing&&ot}),ref:K,style:tt,children:[(0,E.BX)("td",{css:jt.checkboxWrapper,children:[(0,E.tZ)("div",Ct(Ct(Ct({css:jt.dragPoint,"data-drag-point":!0},H),Y),{},{children:(0,E.tZ)(i.Z,{name:"dragger",height:32,width:32})})),(0,E.tZ)(Q.Z,{onChange:function(t){var e=(0,O.R5)({itemId:c.id,isShiftHolding:I,lastSelectedIndex:d,currentIndex:l,isChecked:t,selectedItemIds:o.ids,selectedItemsIndex:o.indexes,totalItemsList:s}),r=e.updatedItemIds,n=e.updatedItemIndexes;y({ids:r,indexes:n}),p(l)},checked:o.ids.includes(c.id)})]}),(0,E.tZ)("td",{children:(0,E.tZ)("div",{css:jt.pageName,children:R?(0,E.tZ)("form",{onSubmit:X.handleSubmit((0,Tt.GI)(X,function(){var t=Mt(Gt().mark((function t(e){var r;return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return r=e.title,t.next=3,x.mutateAsync({ids:c.id.toString(),type:"rename",value:r});case 3:D(!1);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}())),children:(0,E.tZ)(lt.Qr,{control:X.control,name:"title",render:function(t){return(0,E.tZ)(u.Z,Ct(Ct({},t),{},{hasAutoFocus:!0}))}})}):(0,E.BX)(E.HY,{children:[ot?function(t){return(0,E.tZ)(At.rU,{css:jt.titleButton({canEdit:ot}),to:t?vt.F.PopupEditor.buildLink({id:c.id.toString(),type:""}):vt.F.PageEditor.buildLink({id:c.id.toString(),type:""}),state:{prevPageName:_t.lr},onClick:function(){U.mutate({id:c.id,action:"check-in"}),j(void 0),k()},children:c.title})}(v):(0,E.tZ)("span",{css:jt.titleButton({canEdit:ot}),children:c.title}),0!==c.checked_out&&(0,E.tZ)("button",{type:"button",css:jt.lockButton,onClick:function(){x.mutate({type:"check-out",ids:c.id.toString()})},children:(0,E.tZ)(i.Z,{name:"lock",width:24,height:24})}),C.enable_frontend_editing&&ot&&(0,E.BX)("a",{"data-frontend-editor-button":!0,css:jt.frontendEditorButton,href:c.url,target:"_blank",rel:"noopener noreferrer",children:[(0,E.tZ)(i.Z,{name:"parmaLink",width:16,height:16}),(0,E.tZ)("span",{children:g("COM_SPPAGEBUILDER_EDITOR_FRONTEND_EDITOR")})]})]})})}),(0,E.tZ)("td",{css:jt.widthStyles({width:200}),children:(0,E.tZ)("pre",{children:c.page_type})}),_.includes("author")&&(0,E.tZ)("td",{css:jt.widthStyles({width:200}),children:(0,E.tZ)("p",{children:c.author})}),_.includes("categories")&&(0,E.tZ)("td",{children:(0,E.tZ)("p",{children:c.category})}),_.includes("access")&&(0,E.tZ)("td",{css:jt.access,children:(0,E.tZ)("p",{children:c.access_title})}),_.includes("id")&&(0,E.tZ)("td",{css:[h.c.body("medium"),F.iZ.textCenter,";label:PageListItem;"],children:(0,E.tZ)("p",{children:c.id})}),_.includes("hits")&&(0,E.tZ)("td",{css:[h.c.body("medium"),F.iZ.textCenter,";label:PageListItem;"],children:c.hits}),_.includes("language")&&(0,E.tZ)("td",{css:F.iZ.textCenter,children:(0,E.tZ)("p",{children:null!==(e=c.language_title)&&void 0!==e?e:g("COM_SPPAGEBUILDER_EDITOR_LANGUAGE_ALL")})}),(0,E.tZ)("td",{css:jt.status,children:(0,E.tZ)(J.Z,{value:c.published,options:pt,onChange:function(t){x.mutate({type:{1:"published",0:"unpublished","-2":"trash"}[t.value],ids:c.id.toString()})},disabled:!at})}),(0,E.tZ)("td",{css:jt.actionColumn,children:(0,E.tZ)(Lt.Z,{actions:dt,triggerButtonContent:(0,E.tZ)(i.Z,{name:"ellipsisX",width:24,height:24,style:jt.triggerIcon}),onSelect:function(){var t=Mt(Gt().mark((function t(e){return Gt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:t.t0=e,t.next="remove"===t.t0?3:"addToMenu"===t.t0?12:"view"===t.t0?14:"copyLink"===t.t0?16:"duplicate"===t.t0?18:"export"===t.t0?20:"rename"===t.t0?22:25;break;case 3:if(-2===c.published){t.next=6;break}return x.mutate({type:"trash",ids:c.id.toString()}),t.abrupt("break",25);case 6:return t.next=8,T({title:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_TITLE"),confirmationMessage:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_MESSAGE_SINGLE_PAGE"),confirmButtonText:g("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_DELETE_BUTTON_TEXT_SINGLE_ITEM"),mutationFn:wt.hh,payload:{ids:c.id.toString(),type:"delete"},invalidateKeys:[["PageList"]]});case 8:return"CONFIRM"===t.sent.action&&w({type:"success",message:g("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.abrupt("break",25);case 12:return S({component:ht,props:{title:g("COM_SPPAGEBUILDER_EDITOR_ADD_TO_MENU_MODAL_TITLE"),id:c.id}}),t.abrupt("break",25);case 14:return window.open(c.preview,"_blank","noopener=true,noreferrer=true"),t.abrupt("break",25);case 16:return r="".concat(Et.Z.APPLICATION_ROOT,"index.php?option=com_sppagebuilder&view=page&id=").concat(c.id),n=void 0,(n=document.createElement("textarea")).value=r,n.setAttribute("readonly",""),n.style.position="absolute",n.style.left="-9999px",document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n),w({type:"success",message:g("COM_SPPAGEBUILDER_EDITOR_PAGE_COPY_LINK_MESSAGE")}),t.abrupt("break",25);case 18:return G.mutate({id:c.id}),t.abrupt("break",25);case 20:return ft(),t.abrupt("break",25);case 22:return X.setValue("title",c.title),D(!0),t.abrupt("break",25);case 25:case"end":return t.stop()}var r,n}),t)})));return function(e){return t.apply(this,arguments)}}()})})]},c.id)};var kt={name:"1qe2gq2-bodyTr",styles:"[data-frontend-editor-button]{display:flex;};label:bodyTr;"},jt={bodyTr:function(t){var e=t.isSelected,r=t.isShownFrontendButton;return(0,y.iv)("height:80px;border-bottom:1px solid ",f.qo.stroke.neutral,";position:relative;pre{margin-bottom:0;}&:hover{background-color:",f.qo.background.hover,";",r&&kt," [data-drag-point]{opacity:1;}}",e&&(0,y.iv)("background-color:",f.qo.background.disabled,";;label:bodyTr;"),";;label:bodyTr;")},lockButton:(0,y.iv)(F.iZ.resetButton,";svg{color:",f.qo.icon.default,";};label:lockButton;"),titleButton:function(t){var e=t.canEdit;return(0,y.iv)(h.c.heading6(),";padding-inline:0;",e&&(0,y.iv)(":hover{color:",f.qo.text.primary,";};label:titleButton;")," ",!e&&(0,y.iv)("cursor:not-allowed;color:",f.qo.text.disabled,";;label:titleButton;"),";;label:titleButton;")},widthStyles:function(t){var e=t.width;return(0,y.iv)("width:",e,"px;;label:widthStyles;")},pageName:(0,y.iv)("position:relative;display:flex;gap:",f.W0[12],";align-items:center;max-width:400px;width:100%;;label:pageName;"),frontendEditorButton:(0,y.iv)(h.c.body(),";background-color:",f.qo.base.white,";border-radius:",f.E0[24],";padding:",f.W0[4]," ",f.W0[12]," ",f.W0[4]," ",f.W0[4],";width:fit-content;align-items:center;gap:",f.W0[8],";color:",f.qo.text.neutral,";display:none;position:absolute;left:100%;white-space:nowrap;svg{fill:none;}&:hover{color:",f.qo.text.hover,";}&::before,&::after{content:''!important;all:unset!important;};label:frontendEditorButton;"),checkboxWrapper:{name:"l0wqz3-checkboxWrapper",styles:"position:relative;label:checkboxWrapper;"},dragPoint:(0,y.iv)("position:absolute;top:0;left:0;height:100%;width:32px;display:flex;align-items:center;opacity:0;cursor:grab;svg{color:",f.qo.icon.default,";};label:dragPoint;"),access:{name:"sx074l-access",styles:"text-align:center;label:access;"},status:{name:"1n9i8ph-status",styles:"display:grid;place-content:center;height:inherit;label:status;"},triggerIcon:(0,y.iv)("color:",f.qo.icon.hints,";;label:triggerIcon;"),actionColumn:{name:"1m7ix2e-actionColumn",styles:"text-align:right;label:actionColumn;"}};const Nt=function(t){var e=t.data,r=t.selectedItems,n=t.setSelectedItems,o=t.lastSelectedIndex,i=t.setLastSelectedIndex,a=t.isLoading,l=void 0!==a&&a,c=t.columns,u=t.isPopup,s=(0,b.$)(),d=e.length,p=r.ids.length,f=c.length+3;return(0,E.tZ)("div",{css:Wt.tableContainer,children:(0,E.BX)("table",{css:Wt.table({selectedColumns:c.length}),children:[(0,E.tZ)("thead",{children:(0,E.BX)("tr",{css:Wt.headRow,children:[(0,E.tZ)("th",{css:Wt.widthStyles({width:70}),children:(0,E.tZ)(Q.Z,{checked:p>0&&p===d,isIndeterminate:p>0&&p<d,onChange:function(){var t=p===d?[]:(0,O.x9)(e),r=p===d?[]:(0,O.w6)(d);n({ids:t,indexes:r}),i(-1)}})}),(0,E.tZ)("th",{css:Wt.widthStyles({width:250}),children:s(u?"COM_SPPAGEBUILDER_EDITOR_POPUP_LIST_POPUP_NAME":"COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_PAGE_NAME")}),(0,E.tZ)("th",{css:Wt.widthStyles({width:180}),children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_TYPE")}),c.includes("author")&&(0,E.tZ)("th",{css:Wt.widthStyles({width:180}),children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_AUTHOR")}),c.includes("categories")&&(0,E.tZ)("th",{children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_CATEGORIES")}),c.includes("access")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_ACCESS")}),c.includes("id")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_ID")}),c.includes("hits")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_HITS")}),c.includes("language")&&(0,E.tZ)("th",{css:Wt.textCenter,children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_LANGUAGE")}),(0,E.tZ)("th",{css:[Wt.widthStyles({width:160}),Wt.textCenter,";label:PageListTable;"],children:s("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_STATUS")}),(0,E.tZ)("th",{css:Wt.widthStyles({width:100})})]})}),(0,E.tZ)("tbody",{children:l?Array(10).fill(0).map((function(t,e){return(0,E.tZ)("tr",{css:Wt.skeletonWrapper,children:Array(f).fill(0).map((function(t,e){return(0,E.tZ)("td",{css:Wt.widthStyles({width:0===e?70:(0,O.sZ)(100,250)}),children:(0,E.tZ)(V.Z,{animation:!0,height:20,width:"".concat(0===e?100:(0,O.sZ)(90,100),"%")})},e)}))},e)})):e.map((function(t,a){return(0,E.tZ)(Ut,{index:a,data:e,page:t,lastSelectedIndex:o,setLastSelectedIndex:function(t){return i(t)},selectedItems:r,setSelectedItems:function(t){n(t)},columns:c,isPopup:"popup"===t.extension_view},t.id)}))})]})})};var Ft={name:"3vid4o-table",styles:"tr:hover{td{:nth-of-type(3)>*{visibility:hidden;}}};label:table;"},Wt={tableContainer:{name:"1c7p8s-tableContainer",styles:"display:block;width:100%;overflow-x:auto;label:tableContainer;"},table:function(t){var e=t.selectedColumns;return(0,y.iv)("width:100%;th{background-color:",(0,z.m4)(f.qo.base.primary,.15),";color:",f.qo.text.default,";height:49px;}th,td{",h.c.body(),";padding:",f.W0[16],";:first-of-type{padding-left:",f.W0[32],";}:last-of-type{padding-right:",f.W0[24],";}}",e>0&&Ft,";;label:table;")},headRow:(0,y.iv)("th{",h.c.body(),";};label:headRow;"),paginatorWrapper:(0,y.iv)("margin-top:",f.W0[32],";;label:paginatorWrapper;"),widthStyles:function(t){var e=t.width;return(0,y.iv)("width:",e,"px;;label:widthStyles;")},textCenter:{name:"lfnssf-textCenter",styles:"text-align:center;label:textCenter;"},skeletonWrapper:(0,y.iv)("border-bottom:1px solid ",f.qo.stroke.neutral,";height:80px;;label:skeletonWrapper;")},Xt=r(9752),qt=r(36),Ht=r(4370),Yt=r(1954),Kt=r(2200),$t=r(8698),Qt=r(3425),Vt=r(6511),zt=r(618);function Jt(t){return Jt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jt(t)}function te(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function ee(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?te(Object(r),!0).forEach((function(e){re(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function re(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Jt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Jt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Jt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}const ne=function(t){var e=t.values,r=t.onChange,o=t.wrapperCss,a=t.clearButtonStatus,l=t.onClearFilter,c=(0,b.$)(),u=(0,m.v)((function(t){return t.appConfig})),s=e.status,d=e.access,p=e.category,f=e.language,h=e.type,y=[{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISHED"),value:1},{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISHED"),value:0},{label:c("COM_SPPAGEBUILDER_EDITOR_FILTER_TRASHED"),value:-2}];return(0,E.BX)("div",{css:[oe.wrapper,o,";label:FilterSelectGroup;"],children:[(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{type:t}))},value:h,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_PAGE_TYPES")})}),(0,E.BX)(zt.Bw,{children:[(0,E.tZ)(zt.Ql,{value:"page",children:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_PAGE")}),(0,E.tZ)(zt.Ql,{value:"popup",children:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_POPUP")}),(0,E.tZ)(zt.U$,{}),(0,E.BX)(zt.Ql,{value:"dynamic_content:index",children:[(0,E.tZ)(i.Z,{name:"dynamicContent",width:16,height:16}),c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_INDEX")]}),(0,E.BX)(zt.Ql,{value:"dynamic_content:detail",children:[(0,E.tZ)(i.Z,{name:"dynamicContent",width:16,height:16}),c("COM_SPPAGEBUILDER_EDITOR_FILTER_PAGE_TYPE_DETAIL")]}),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{status:t}))},value:s,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_STATUS")})}),(0,E.BX)(zt.Bw,{children:[y.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{access:t}))},value:d,disabled:0===u.access_levels.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_ACCESS")})}),(0,E.BX)(zt.Bw,{children:[u.access_levels.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{category:t}))},value:p,disabled:0===u.categories.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_CATEGORY")})}),(0,E.BX)(zt.Bw,{children:[u.categories.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.BX)(zt.$x,{onSelect:function(t){r(ee(ee({},e),{},{language:t}))},value:f,disabled:0===u.languages.length,children:[(0,E.tZ)(zt.i4,{"data-page-type":!0,children:(0,E.tZ)(zt.ki,{placeholder:c("COM_SPPAGEBUILDER_EDITOR_FILTER_PLACEHOLDER_LANGUAGE")})}),(0,E.BX)(zt.Bw,{children:[u.languages.map((function(t,e){return(0,E.tZ)(zt.Ql,{value:t.value,children:t.label},e)})),(0,E.tZ)(zt.fK,{children:c("COM_SPPAGEBUILDER_EDITOR_FORM_SELECT_CLEAR")})]})]}),(0,E.tZ)(n.Z,{variant:"secondary",disabled:!a,buttonCss:oe.itemCss,onClick:function(){r({status:null,access:null,category:null,language:null,type:null}),l()},children:c("COM_SPPAGEBUILDER_EDITOR_CLEAR")})]})};var oe={wrapper:(0,y.iv)("display:flex;border:1px solid ",f.qo.stroke.neutral,";border-radius:",f.E0[5],";overflow:hidden;box-shadow:",f.AF.input,";input,button,[data-page-type]{border:none;border-radius:0;box-shadow:none;}input,[data-page-type]{border-right:1px solid ",f.qo.stroke.neutral,";:focus{box-shadow:none;}}button:last-of-type{display:flex;justify-content:center;align-items:center;}[data-placeholder='true']{color:",f.qo.text.hints,";};label:wrapper;"),itemCss:{name:"ebky32-itemCss",styles:"min-width:140px;label:itemCss;"}},ie=r(2028),ae=r(8537),le=r(4693),ce=r(5602),ue=r(7273),se=r(6216);function de(t){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},de(t)}function pe(){pe=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,r){return t[e]=r}}function u(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new I(o||[]);return n(a,"_invoke",{value:m(t,r,l)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=u;var d={};function p(){}function f(){}function h(){}var y={};c(y,i,(function(){return this}));var E=Object.getPrototypeOf,_=E&&E(E(S([])));_&&_!==e&&r.call(_,i)&&(y=_);var v=h.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function b(t,e){function o(n,i,a,l){var c=s(t[n],t,i);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==de(d)&&r.call(d,"__await")?e.resolve(d.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(d).then((function(t){u.value=t,a(u)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function m(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var l=O(a,r);if(l){if(l===d)continue;return l}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(t,e,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),d;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,d;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,d):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,d)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function L(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function I(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:w}}function w(){return{value:void 0,done:!0}}return f.prototype=h,n(v,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:f,configurable:!0}),f.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(b.prototype),c(b.prototype,a,(function(){return this})),t.AsyncIterator=b,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new b(u(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),c(v,l,"Generator"),c(v,i,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,I.prototype={constructor:I,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(L),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var l=r.call(i,"catchLoc"),c=r.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,d):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),d},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),L(r),d}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;L(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},t}function fe(t,e,r,n,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void r(t)}l.done?e(c):Promise.resolve(c).then(n,o)}function he(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){fe(i,n,o,a,l,"next",t)}function l(t){fe(i,n,o,a,l,"throw",t)}a(void 0)}))}}function ye(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ee(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ye(Object(r),!0).forEach((function(e){_e(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ye(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function _e(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==de(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==de(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===de(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function ve(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,l=[],c=!0,u=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=i.call(r)).done)&&(l.push(n.value),l.length!==e);c=!0);}catch(t){u=!0,o=t}finally{try{if(!c&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(u)throw o}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ge(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ge(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const be=function(){var t,e,r=ve((0,P.useState)([]),2),f=r[0],h=r[1],y=ve((0,P.useState)(),2),_=y[0],v=y[1],g=ve((0,P.useState)((function(){return Number((0,se.fp)(_t.dR.ITEMS_PER_PAGE_LOCAL_STORAGE_KEY))})),2),m=g[0],I=g[1],S=ve((0,P.useState)((function(){return(0,se.fp)(_t.dR.TABLE_COLUMNS_LOCAL_STORAGE_KEY)})),2),w=S[0],T=S[1],A=(0,Pt.Q)(),R=(0,P.useRef)(null),D=(0,St.nl)(),C=(0,b.$)(),x=((0,L.d)().showModal,(0,M.g)()),B=(0,a.p)().showToast,U=(e=(0,L.d)().showModal,function(t){return e({component:G,props:t,closeOnOutsideClick:!0})}),k=(0,Z.L)(),j=ve((0,P.useState)(-1),2),N=j[0],F=j[1],W=ve((0,P.useState)({ids:[],indexes:[]}),2),X=W[0],H=W[1],Y=A.edit_state,K=A.delete,$=(0,Ht.a)(),Q=$.pageInfo,V=$.onPageChange,z=$.onFilterItems,J=$.offset,tt=(0,wt.R4)(),rt=(0,wt.r7)(),nt=Number(Q.filter.limit)||_t.Hy,ot=(0,wt.u6)({offset:J,limit:nt,filter:Q.filter,page_type:"page"}),it=(0,et.O)({defaultValues:{search:Q.filter.search||"",sortBy:Q.filter.sortBy||"title",limit:Number(m)||_t.Hy,status:Number(Q.filter.status)||null,type:Q.filter.type||null,access:Number(Q.filter.access)||null,category:Number(Q.filter.category)||null,language:Q.filter.language||void 0}}),at=(0,et.O)({defaultValues:{columns:["author","categories","access","id","hits","language"]}}),ct=(0,qt.N)(it.watch("search","")),ut=it.watch("limit"),st=it.watch("sortBy"),dt=it.watch("status"),pt=it.watch("type"),ft=it.watch("access"),ht=it.watch("category"),yt=it.watch("language"),Et=!!(ct||(0,ue.BB)(dt)||ft||ht||yt),vt=(0,Kt.D)(ct);(0,P.useEffect)((function(){if((0,O.$K)(w))try{var t=JSON.parse(w);at.setValue("columns",t)}catch(t){console.error(t)}}),[]),(0,P.useEffect)((function(){z(Ee(Ee(Ee(Ee(Ee(Ee(Ee(Ee({},ct.length>0&&{search:ct}),(0,O.$K)(dt)&&{status:dt.toString()}),(0,O.$K)(pt)&&{type:pt}),(0,O.$K)(ft)&&{access:ft.toString()}),(0,O.$K)(ht)&&{category:ht.toString()}),yt&&{language:yt}),ut&&{limit:String(ut)}),st&&{sortBy:st})),ct!==vt&&V(1)}),[z,ct,ut,st,pt,dt,ft,ht,yt,vt,V]);var bt=!!ct||(0,O.$K)(dt)||(0,O.$K)(ft)||(0,O.$K)(ht)||!!yt||(0,O.$K)(pt),mt=(0,Xt.Dy)((0,Xt.VT)(Xt.we),(0,Xt.VT)(Xt.Lg,{coordinateGetter:gt.is})),Ot=[{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_PUBLISH"),value:"published",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_UNPUBLISH"),value:"unpublished",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_ACTION_CHECKOUT"),value:"check-out",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE"),value:"language",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS"),value:"access",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY"),value:"category",disabled:!Y},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT"),value:"export",disabled:!Y},{label:C(-2===dt?"COM_SPPAGEBUILDER_EDITOR_FILTER_DELETE":"COM_SPPAGEBUILDER_EDITOR_FILTER_TRASH"),value:-2===dt?"delete":"trash",disabled:!K||!Y,variant:"critical"}],Lt={language:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE_CHANGE"),access:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS_CHANGE"),category:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY_CHANGE")},It={language:C("COM_SPPAGEBUILDER_EDITOR_FILTER_LANGUAGE"),access:C("COM_SPPAGEBUILDER_EDITOR_FILTER_ACCESS"),category:C("COM_SPPAGEBUILDER_EDITOR_FILTER_CATEGORY")},Tt=[{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_TITLE_ASC"),value:"title"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_TITLE_DESC"),value:"-title"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ORDERING_ASC"),value:"ordering"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ORDERING_DESC"),value:"-ordering"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_DATE_ASC"),value:"created_on"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_DATE_DESC"),value:"-created_on"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_STATUS_ASC"),value:"published"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_STATUS_DESC"),value:"-published"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_HITS_ASC"),value:"hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_HITS_DESC"),value:"-hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ID_ASC"),value:"id"},{label:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_SORT_BY_ID_DESC"),value:"-id"}],At=[{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_AUTHOR"),value:"author"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_CATEGORIES"),value:"categories"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_ACCESS"),value:"access"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_ID"),value:"id"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_HITS"),value:"hits"},{label:C("COM_SPPAGEBUILDER_EDITOR_COLUMN_LIST_LANGUAGE"),value:"language"}],Rt=[5,10,15,20,25,30,50,100,200,500].map((function(t){return{label:t.toString(),value:t}}));(0,P.useEffect)((function(){ot.data&&h(ot.data.results)}),[ot.data]);var Dt=at.watch("columns",[]);(0,P.useEffect)((function(){(0,se.pj)(_t.dR.TABLE_COLUMNS_LOCAL_STORAGE_KEY,JSON.stringify(Dt)),(0,se.pj)(_t.dR.ITEMS_PER_PAGE_LOCAL_STORAGE_KEY,JSON.stringify(ut)),I(Number(JSON.stringify(ut))),T(JSON.stringify(Dt))}),[Dt,ut]);var Ct=ve((0,P.useState)(!1),2),xt=Ct[0],Gt=Ct[1],Bt=ve((0,P.useState)(!1),2),Mt=Bt[0],Zt=Bt[1],Ut=(0,Yt.l)({isOpen:xt,arrow:"top"}),kt=Ut.triggerRef,jt=Ut.popoverRef,Ft=Ut.position,Wt=(0,Yt.l)({isOpen:Mt,arrow:"top"}),zt=Wt.triggerRef,Jt=Wt.popoverRef,te=Wt.position;return(0,E.BX)(d.Z,{children:[(0,E.tZ)(p.Z,{title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_TITLE_PAGES"),subtitle:C("COM_SPPAGEBUILDER_EDITOR_PAGE_SUBTITLE_PAGES"),action:A.create&&(0,E.BX)(E.HY,{children:[(0,E.tZ)(n.Z,{variant:"secondary",buttonCss:me.importButtonCss,onClick:function(){var t;return null===(t=R.current)||void 0===t?void 0:t.click()},children:C("COM_SPPAGEBUILDER_EDITOR_PAGE_BULK_IMPORT")}),(0,E.tZ)(n.Z,{icon:(0,E.tZ)(i.Z,{name:"plus"}),onClick:function(){Gt(!0)},ref:kt,children:C("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_BUTTON")})]})}),(0,E.tZ)("input",{ref:R,type:"file",hidden:!0,onChange:function(){var t=he(pe().mark((function t(e){var r,n;return pe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=null===(r=e.target.files)||void 0===r?void 0:r[0]){t.next=3;break}return t.abrupt("return");case 3:D.mutate(n),e.target.value="";case 5:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}()}),(0,E.tZ)(s.Z,{children:(0,E.BX)(Vt.Z,{query:ot,disableLoader:!0,children:[(0,E.BX)("div",{css:me.topPanel,children:[(0,E.BX)("div",{css:me.topPanelLeft,children:[(0,E.tZ)(o.Z,{options:Ot,placeholder:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_DROPDOWN_PLACEHOLDER"),wrapperStyle:me.topPanelLeftSelect,isClearable:!1,disabled:0===X.ids.length||!Y,value:Ot.find((function(t){return t.value===_})),onChange:function(t){v(t.value)}}),(0,E.tZ)(n.Z,{onClick:he(pe().mark((function t(){var e,r,n,o,i;return pe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(X.ids.length&&_){t.next=2;break}return t.abrupt("return");case 2:if("export"!==_){t.next=12;break}return t.next=5,k({title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_EXPORT_TITLE"),confirmationMessage:C("COM_SPPAGEBUILDER_EDITOR_EXPORT_PAGES_MESSAGE")});case 5:e=t.sent,r=e.action,n=e.seoChecked,o=e.mediaChecked,"CONFIRM"===r&&(0,St.PS)(X.ids.join(","),n,o),t.next=30;break;case 12:if("language"!==_&&"access"!==_&&"category"!==_){t.next=20;break}return t.next=15,U({title:Lt[_],label:It[_],bulkAction:_,mutationFn:wt.hh,payload:{ids:X.ids.join(","),type:_},invalidateKeys:[["PageList"]]});case 15:"CONFIRM"===t.sent.action&&B({type:"success",message:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")}),t.next=30;break;case 20:if("delete"===_){t.next=24;break}tt.mutate({ids:X.ids.join(","),type:_}),t.next=30;break;case 24:return i=X.ids.length,t.next=27,x({title:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_TITLE"),confirmationMessage:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_MESSAGE_MULTIPLE_PAGES",{totalPages:i.toString().padStart(2,"0")}),confirmButtonText:C("COM_SPPAGEBUILDER_EDITOR_PAGE_LIST_DELETE_MODAL_DELETE_BUTTON_TEXT",{totalPages:i.toString().padStart(2,"0")}),mutationFn:wt.hh,payload:{ids:X.ids.join(","),type:_},invalidateKeys:[["PageList"]]});case 27:"CONFIRM"===t.sent.action&&B({type:"success",message:C("COM_SPPAGEBUILDER_EDITOR_BULK_ACTION_PERFORMED_SUCCESSFULLY")});case 30:v(null),H({ids:[],indexes:[]}),F(-1);case 33:case"end":return t.stop()}}),t)}))),disabled:!_,children:C("COM_SPPAGEBUILDER_EDITOR_APPLY")})]}),(0,E.tZ)("div",{css:me.topPanelRight,children:(0,E.tZ)(ne,{clearButtonStatus:bt,onClearFilter:function(){return it.reset({search:"",status:null,access:null,category:null,language:void 0,type:null})},values:{status:dt,type:pt,access:ft,category:ht,language:yt},onChange:function(t){it.reset(Ee(Ee({},it.getValues()),{},{status:t.status,type:t.type,access:t.access,category:Number(t.category),language:t.language||void 0}))}})})]}),(0,E.BX)($t.Z,{cardCss:me.cardStyle,children:[(0,E.BX)("div",{css:me.tableHeaderWrapper,children:[(0,E.tZ)("div",{css:me.searchFieldWrapper,children:(0,E.tZ)(lt.Qr,{control:it.control,name:"search",render:function(t){return(0,E.tZ)(u.Z,Ee(Ee({},t),{},{variant:"search",placeholder:C("COM_SPPAGEBUILDER_EDITOR_SEARCH_INPUT_PLACEHOLDER"),isClearable:!0}))}})}),(0,E.BX)("div",{css:me.sortByFieldWrapper,children:[(0,E.tZ)(lt.Qr,{control:it.control,name:"limit",render:function(t){return(0,E.tZ)(c.Z,Ee(Ee({},t),{},{options:Rt,isClearable:!1,removeOptionsMinWidth:!0}))}}),(0,E.tZ)(lt.Qr,{control:at.control,name:"columns",render:function(t){return(0,E.tZ)(l.Z,Ee(Ee({},t),{},{options:At,placeholder:C("COM_SPPAGEBUILDER_EDITOR_PAGE_TABLE_COLUMNS"),disabled:ot.isSuccess&&!ot.data.results.length,showChips:!1,hideSelectNumbers:!0,isClearable:!1}))}}),(0,E.tZ)(lt.Qr,{control:it.control,name:"sortBy",render:function(t){return(0,E.tZ)(c.Z,Ee(Ee({},t),{},{options:Tt,placeholder:C("COM_SPPAGEBUILDER_EDITOR_PAGE_SORT_TABLE_BY_PLACEHOLDER"),showArrowUpDown:!0,disabled:ot.isSuccess&&!ot.data.results.length}))}})]})]}),ot.isSuccess&&!ot.data.results.length?Et?(0,E.tZ)(Qt.Z,{orientation:"vertical",emptyStateImage:le,imageAltText:C("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),title:C("COM_SPPAGEBUILDER_EDITOR_ADDONS_NO_MATCH_FOUND"),removeBorderRadius:!0,wrapperCss:me.wrapperCss}):(0,E.tZ)(Qt.Z,{orientation:"vertical",emptyStateImage:ae,imageAltText:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_IMAGE_ALT"),title:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_TITLE"),content:C("COM_SPPAGEBUILDER_EDITOR_EMPTY_PAGE_LIST_CONTENT"),removeBorderRadius:!0,action:(0,E.tZ)(n.Z,{icon:(0,E.tZ)(i.Z,{name:"plus"}),onClick:function(){Zt(!0)},ref:zt,children:C("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_PAGE_BUTTON")})}):(0,E.tZ)(Xt.LB,{sensors:mt,collisionDetection:Xt.pE,onDragEnd:function(t){var e=t.active,r=t.over;null!=r&&r.id&&e.id!==r.id&&h((function(t){var n=t.findIndex((function(t){return t.id===e.id})),o=t.findIndex((function(t){return t.id===r.id})),i=(0,gt.Rp)(f,n,o),a=(0,O.x9)(i),l=Array.from({length:a.length},(function(t,e){return e+1}));return rt.mutate({ids:a,orders:l}),it.reset(Ee(Ee({},it.getValues()),{},{sortBy:"ordering"})),i}))},modifiers:[ce.l],children:(0,E.tZ)(gt.Fo,{items:f,strategy:gt.qw,children:(0,E.tZ)(Nt,{data:f,isLoading:ot.isLoading,selectedItems:X,setSelectedItems:H,lastSelectedIndex:N,setLastSelectedIndex:F,columns:Dt})})})]}),(0,E.tZ)("div",{css:me.paginatorWrapper,children:(0,E.tZ)(ie.Z,{currentPage:Q.page,onPageChange:V,totalItems:(null===(t=ot.data)||void 0===t?void 0:t.totalItems)||0,itemsPerPage:Number(Q.filter.limit)||_t.Hy})})]})}),(0,E.tZ)(Yt.h,{isOpen:xt,onClickOutside:function(){return Gt(!1)},hasBackdropBackground:!0,children:(0,E.tZ)(q,{ref:jt,position:Ft,onClose:function(){return Gt(!1)}})}),(0,E.tZ)(Yt.h,{isOpen:Mt,onClickOutside:function(){return Zt(!1)},hasBackdropBackground:!0,children:(0,E.tZ)(q,{ref:Jt,position:te,onClose:function(){return Zt(!1)}})})]})};var me={topPanel:(0,y.iv)("display:flex;justify-content:space-between;align-items:center;gap:",f.W0[8],";margin:",f.W0[16]," 0 ",f.W0[32]," 0;;label:topPanel;"),topPanelLeft:(0,y.iv)("display:flex;justify-content:center;align-items:center;gap:",f.W0[16],";;label:topPanelLeft;"),topPanelLeftSelect:{name:"1ex2zjt-topPanelLeftSelect",styles:"max-width:128px;label:topPanelLeftSelect;"},topPanelRight:{name:"3pet9h-topPanelRight",styles:"max-width:840px;width:100%;height:32px;label:topPanelRight;"},pageName:(0,y.iv)(h.c.heading6(),";color:",f.qo.text.default,";;label:pageName;"),cardStyle:(0,y.iv)("border-radius:",f.E0[5],";box-shadow:",f.AF.base,";overflow:hidden;;label:cardStyle;"),tableHeaderWrapper:(0,y.iv)("width:100%;display:flex;justify-content:space-between;align-items:center;gap:",f.W0[8],";padding:",f.W0[24],";;label:tableHeaderWrapper;"),searchFieldWrapper:{name:"tjtfnx-searchFieldWrapper",styles:"width:min(280px, 100%);label:searchFieldWrapper;"},sortByFieldWrapper:(0,y.iv)("width:min(500px, 100%);display:flex;gap:",f.W0[16],";>div:first-of-type{max-width:80px;};label:sortByFieldWrapper;"),tableRowStyle:{name:"1l9y7ek-tableRowStyle",styles:":last-of-type{border-bottom:none;};label:tableRowStyle;"},paginatorWrapper:(0,y.iv)("margin-top:",f.W0[32],";;label:paginatorWrapper;"),wrapperCss:{name:"1kd73z9-wrapperCss",styles:">img{max-width:180px;max-height:180px;};label:wrapperCss;"},importButtonCss:(0,y.iv)("margin-right:",f.W0[10],";;label:importButtonCss;")}}}]);PKCA#]��i���^components/com_sppagebuilder/assets/editor/dist/js/556.c2641d791f45d205d563.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]@lx� � Qcomponents/com_sppagebuilder/assets/editor/dist/js/81.67c6e452cdf023453b62.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[81],{7081:(e,r,t)=>{t.r(r),t.d(r,{default:()=>h});var n=t(3871),i=t(5350),a=t(824),o=t(4185),c=t(917),l=t(1234),p=t(3417),s=t(8225),u=t(7602),d=t(1030),b=t(7536),E=t(5944);function _(e){return _="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_(e)}function f(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r&&(n=n.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,n)}return t}function y(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?f(Object(t),!0).forEach((function(r){m(e,r,t[r])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):f(Object(t)).forEach((function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}))}return e}function m(e,r,t){return(r=function(e){var r=function(e,r){if("object"!==_(e)||null===e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!==_(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===_(r)?r:String(r)}(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const h=function(){var e=(0,l.$)(),r=(0,b.Gc)(),t=(0,s.f2)();return u.Eu?null:(0,E.BX)("div",{css:S.wrapper,children:[(0,E.BX)("div",{css:S.headingWrapper,children:[(0,E.tZ)("div",{css:S.heading,children:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_LICENSE_TITLE")}),(0,E.tZ)("a",{css:S.licenseLink,href:"https://www.joomshaper.com/dashboard",target:"_blank",rel:"noreferrer",children:"Find My License Key."})]}),(0,E.tZ)(p.Z,{wrapperCss:S.cardWrapperCss,children:(0,E.BX)("div",{css:S.cardWrapper,children:[(0,E.tZ)(b.Qr,{control:r.control,name:"joomshaper_email",rules:(0,d.$)(),render:function(r){return(0,E.tZ)(i.Z,y(y({},r),{},{label:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_LICENSE_EMAIL_LABEL"),helpText:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_LICENSE_LICENSE_EMAIL_HELP_TEXT")}))}}),(0,E.tZ)(b.Qr,{control:r.control,name:"joomshaper_license_key",render:function(r){return(0,E.tZ)(i.Z,y(y({},r),{},{type:"password",label:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_LICENSE_LICENSE_KEY_LABEL")}))}})]})}),(0,E.tZ)("div",{css:S.buttonWrapper,children:(0,E.tZ)(n.Z,{type:"submit",loading:t.isLoading,onClick:r.handleSubmit((function(e){t.mutate(e)})),children:e("COM_SPPAGEBUILDER_EDITOR_SETTINGS_PAGE_BUTTON_TEXT_SAVE_CHANGES")})})]})};var S={wrapper:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[24],";;label:wrapper;"),headingWrapper:{name:"1ks5eyn-headingWrapper",styles:"display:flex;align-items:center;justify-content:space-between;label:headingWrapper;"},heading:(0,c.iv)(o.c.heading4("medium"),";;label:heading;"),licenseLink:(0,c.iv)(o.c.heading6("medium"),";color:",a.qo.text.primary,";;label:licenseLink;"),cardWrapperCss:(0,c.iv)("border-radius:",a.E0[8],";box-shadow:",a.AF.base,";;label:cardWrapperCss;"),cardWrapper:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[10],";padding:",a.W0[20]," ",a.W0[24]," ",a.W0[24]," ",a.W0[24],";;label:cardWrapper;"),buttonWrapper:(0,c.iv)("display:flex;justify-content:end;&>button{border-radius:",a.E0[8],";};label:buttonWrapper;")}}}]);PKCA#]��ڠ�Qcomponents/com_sppagebuilder/assets/editor/dist/js/68.81f2968af444ef52bd66.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[68],{4068:(e,t,r)=>{r.r(t),r.d(t,{default:()=>u});var c=r(7264),a=r(7579),i=r(3261),n=r(824),o=r(4185),p=r(917),d=r(1921),l=r(5944);const u=function(){return(0,l.tZ)(a.Z,{children:(0,l.tZ)("div",{css:s.wrapper,children:Object.keys(i.G).map((function(e){return(0,l.BX)("button",{type:"button",css:s.iconWrapper,onClick:function(){navigator.clipboard.writeText(e).catch((function(){var t=document.createElement("textarea");t.value=e,t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}))},children:[(0,l.tZ)(c.Z,{name:e,width:40,height:40}),(0,l.tZ)("p",{children:e})]},e)}))})})};var s={wrapper:(0,p.iv)("display:flex;flex-wrap:wrap;gap:",n.W0[16],";;label:wrapper;"),iconWrapper:(0,p.iv)(d.iZ.resetButton,";display:flex;flex-direction:column;align-items:center;justify-content:center;gap:",n.W0[16],";padding:",n.W0[16],";box-shadow:",n.AF.card,";border-radius:",n.E0[6],";width:120px;height:120px;svg,path{color:",n.qo.icon.default,";fill:",n.qo.icon.default,";}&>p{",o.c.caption("medium"),";",d.iZ.textEllipsis,";width:100%;text-align:center;color:",n.qo.text.neutral,";}&:hover{background-color:",n.qo.background.neutral,";}&:active{background-color:",n.qo.background.primary,";};label:iconWrapper;")}}}]);PKCA#],w+��(�(Acomponents/com_sppagebuilder/assets/editor/dist/js/vendors.min.jsnu�[���/*! For license information please see vendors.min.js.LICENSE.txt */ (self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[216],{6214:(e,t,n)=>{"use strict";function r(e,t){(function(e){return"string"==typeof e&&-1!==e.indexOf(".")&&1===parseFloat(e)})(e)&&(e="100%");var n=function(e){return"string"==typeof e&&-1!==e.indexOf("%")}(e);return e=360===t?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:e=360===t?(e<0?e%t+t:e%t)/parseFloat(String(t)):e%t/parseFloat(String(t))}function o(e){return Math.min(1,Math.max(0,e))}function i(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function s(e){return e<=1?"".concat(100*Number(e),"%"):e}function a(e){return 1===e.length?"0"+e:String(e)}function l(e,t,n){e=r(e,255),t=r(t,255),n=r(n,255);var o=Math.max(e,t,n),i=Math.min(e,t,n),s=0,a=0,l=(o+i)/2;if(o===i)a=0,s=0;else{var c=o-i;switch(a=l>.5?c/(2-o-i):c/(o+i),o){case e:s=(t-n)/c+(t<n?6:0);break;case t:s=(n-e)/c+2;break;case n:s=(e-t)/c+4}s/=6}return{h:s,s:a,l}}function c(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*n*(t-e):n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function u(e,t,n){e=r(e,255),t=r(t,255),n=r(n,255);var o=Math.max(e,t,n),i=Math.min(e,t,n),s=0,a=o,l=o-i,c=0===o?0:l/o;if(o===i)s=0;else{switch(o){case e:s=(t-n)/l+(t<n?6:0);break;case t:s=(n-e)/l+2;break;case n:s=(e-t)/l+4}s/=6}return{h:s,s:c,v:a}}function h(e,t,n,r){var o=[a(Math.round(e).toString(16)),a(Math.round(t).toString(16)),a(Math.round(n).toString(16))];return r&&o[0].startsWith(o[0].charAt(1))&&o[1].startsWith(o[1].charAt(1))&&o[2].startsWith(o[2].charAt(1))?o[0].charAt(0)+o[1].charAt(0)+o[2].charAt(0):o.join("")}function d(e){return f(e)/255}function f(e){return parseInt(e,16)}n.d(t,{C:()=>w});var p={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};var m="(?:".concat("[-\\+]?\\d*\\.\\d+%?",")|(?:").concat("[-\\+]?\\d+%?",")"),g="[\\s|\\(]+(".concat(m,")[,|\\s]+(").concat(m,")[,|\\s]+(").concat(m,")\\s*\\)?"),y="[\\s|\\(]+(".concat(m,")[,|\\s]+(").concat(m,")[,|\\s]+(").concat(m,")[,|\\s]+(").concat(m,")\\s*\\)?"),v={CSS_UNIT:new RegExp(m),rgb:new RegExp("rgb"+g),rgba:new RegExp("rgba"+y),hsl:new RegExp("hsl"+g),hsla:new RegExp("hsla"+y),hsv:new RegExp("hsv"+g),hsva:new RegExp("hsva"+y),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function b(e){return Boolean(v.CSS_UNIT.exec(String(e)))}var w=function(){function e(t,n){var o;if(void 0===t&&(t=""),void 0===n&&(n={}),t instanceof e)return t;"number"==typeof t&&(t=function(e){return{r:e>>16,g:(65280&e)>>8,b:255&e}}(t)),this.originalInput=t;var a=function(e){var t,n,o,a={r:0,g:0,b:0},l=1,u=null,h=null,m=null,g=!1,y=!1;return"string"==typeof e&&(e=function(e){if(0===(e=e.trim().toLowerCase()).length)return!1;var t=!1;if(p[e])e=p[e],t=!0;else if("transparent"===e)return{r:0,g:0,b:0,a:0,format:"name"};var n=v.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=v.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=v.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=v.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=v.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=v.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=v.hex8.exec(e))?{r:f(n[1]),g:f(n[2]),b:f(n[3]),a:d(n[4]),format:t?"name":"hex8"}:(n=v.hex6.exec(e))?{r:f(n[1]),g:f(n[2]),b:f(n[3]),format:t?"name":"hex"}:(n=v.hex4.exec(e))?{r:f(n[1]+n[1]),g:f(n[2]+n[2]),b:f(n[3]+n[3]),a:d(n[4]+n[4]),format:t?"name":"hex8"}:!!(n=v.hex3.exec(e))&&{r:f(n[1]+n[1]),g:f(n[2]+n[2]),b:f(n[3]+n[3]),format:t?"name":"hex"}}(e)),"object"==typeof e&&(b(e.r)&&b(e.g)&&b(e.b)?(t=e.r,n=e.g,o=e.b,a={r:255*r(t,255),g:255*r(n,255),b:255*r(o,255)},g=!0,y="%"===String(e.r).substr(-1)?"prgb":"rgb"):b(e.h)&&b(e.s)&&b(e.v)?(u=s(e.s),h=s(e.v),a=function(e,t,n){e=6*r(e,360),t=r(t,100),n=r(n,100);var o=Math.floor(e),i=e-o,s=n*(1-t),a=n*(1-i*t),l=n*(1-(1-i)*t),c=o%6;return{r:255*[n,a,s,s,l,n][c],g:255*[l,n,n,a,s,s][c],b:255*[s,s,l,n,n,a][c]}}(e.h,u,h),g=!0,y="hsv"):b(e.h)&&b(e.s)&&b(e.l)&&(u=s(e.s),m=s(e.l),a=function(e,t,n){var o,i,s;if(e=r(e,360),t=r(t,100),n=r(n,100),0===t)i=n,s=n,o=n;else{var a=n<.5?n*(1+t):n+t-n*t,l=2*n-a;o=c(l,a,e+1/3),i=c(l,a,e),s=c(l,a,e-1/3)}return{r:255*o,g:255*i,b:255*s}}(e.h,u,m),g=!0,y="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(l=e.a)),l=i(l),{ok:g,format:e.format||y,r:Math.min(255,Math.max(a.r,0)),g:Math.min(255,Math.max(a.g,0)),b:Math.min(255,Math.max(a.b,0)),a:l}}(t);this.originalInput=t,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=null!==(o=n.format)&&void 0!==o?o:a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}return e.prototype.isDark=function(){return this.getBrightness()<128},e.prototype.isLight=function(){return!this.isDark()},e.prototype.getBrightness=function(){var e=this.toRgb();return(299*e.r+587*e.g+114*e.b)/1e3},e.prototype.getLuminance=function(){var e=this.toRgb(),t=e.r/255,n=e.g/255,r=e.b/255;return.2126*(t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))},e.prototype.getAlpha=function(){return this.a},e.prototype.setAlpha=function(e){return this.a=i(e),this.roundA=Math.round(100*this.a)/100,this},e.prototype.isMonochrome=function(){return 0===this.toHsl().s},e.prototype.toHsv=function(){var e=u(this.r,this.g,this.b);return{h:360*e.h,s:e.s,v:e.v,a:this.a}},e.prototype.toHsvString=function(){var e=u(this.r,this.g,this.b),t=Math.round(360*e.h),n=Math.round(100*e.s),r=Math.round(100*e.v);return 1===this.a?"hsv(".concat(t,", ").concat(n,"%, ").concat(r,"%)"):"hsva(".concat(t,", ").concat(n,"%, ").concat(r,"%, ").concat(this.roundA,")")},e.prototype.toHsl=function(){var e=l(this.r,this.g,this.b);return{h:360*e.h,s:e.s,l:e.l,a:this.a}},e.prototype.toHslString=function(){var e=l(this.r,this.g,this.b),t=Math.round(360*e.h),n=Math.round(100*e.s),r=Math.round(100*e.l);return 1===this.a?"hsl(".concat(t,", ").concat(n,"%, ").concat(r,"%)"):"hsla(".concat(t,", ").concat(n,"%, ").concat(r,"%, ").concat(this.roundA,")")},e.prototype.toHex=function(e){return void 0===e&&(e=!1),h(this.r,this.g,this.b,e)},e.prototype.toHexString=function(e){return void 0===e&&(e=!1),"#"+this.toHex(e)},e.prototype.toHex8=function(e){return void 0===e&&(e=!1),function(e,t,n,r,o){var i,s=[a(Math.round(e).toString(16)),a(Math.round(t).toString(16)),a(Math.round(n).toString(16)),a((i=r,Math.round(255*parseFloat(i)).toString(16)))];return o&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}(this.r,this.g,this.b,this.a,e)},e.prototype.toHex8String=function(e){return void 0===e&&(e=!1),"#"+this.toHex8(e)},e.prototype.toHexShortString=function(e){return void 0===e&&(e=!1),1===this.a?this.toHexString(e):this.toHex8String(e)},e.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},e.prototype.toRgbString=function(){var e=Math.round(this.r),t=Math.round(this.g),n=Math.round(this.b);return 1===this.a?"rgb(".concat(e,", ").concat(t,", ").concat(n,")"):"rgba(".concat(e,", ").concat(t,", ").concat(n,", ").concat(this.roundA,")")},e.prototype.toPercentageRgb=function(){var e=function(e){return"".concat(Math.round(100*r(e,255)),"%")};return{r:e(this.r),g:e(this.g),b:e(this.b),a:this.a}},e.prototype.toPercentageRgbString=function(){var e=function(e){return Math.round(100*r(e,255))};return 1===this.a?"rgb(".concat(e(this.r),"%, ").concat(e(this.g),"%, ").concat(e(this.b),"%)"):"rgba(".concat(e(this.r),"%, ").concat(e(this.g),"%, ").concat(e(this.b),"%, ").concat(this.roundA,")")},e.prototype.toName=function(){if(0===this.a)return"transparent";if(this.a<1)return!1;for(var e="#"+h(this.r,this.g,this.b,!1),t=0,n=Object.entries(p);t<n.length;t++){var r=n[t],o=r[0];if(e===r[1])return o}return!1},e.prototype.toString=function(e){var t=Boolean(e);e=null!=e?e:this.format;var n=!1,r=this.a<1&&this.a>=0;return t||!r||!e.startsWith("hex")&&"name"!==e?("rgb"===e&&(n=this.toRgbString()),"prgb"===e&&(n=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(n=this.toHexString()),"hex3"===e&&(n=this.toHexString(!0)),"hex4"===e&&(n=this.toHex8String(!0)),"hex8"===e&&(n=this.toHex8String()),"name"===e&&(n=this.toName()),"hsl"===e&&(n=this.toHslString()),"hsv"===e&&(n=this.toHsvString()),n||this.toHexString()):"name"===e&&0===this.a?this.toName():this.toRgbString()},e.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},e.prototype.clone=function(){return new e(this.toString())},e.prototype.lighten=function(t){void 0===t&&(t=10);var n=this.toHsl();return n.l+=t/100,n.l=o(n.l),new e(n)},e.prototype.brighten=function(t){void 0===t&&(t=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(-t/100*255))),n.g=Math.max(0,Math.min(255,n.g-Math.round(-t/100*255))),n.b=Math.max(0,Math.min(255,n.b-Math.round(-t/100*255))),new e(n)},e.prototype.darken=function(t){void 0===t&&(t=10);var n=this.toHsl();return n.l-=t/100,n.l=o(n.l),new e(n)},e.prototype.tint=function(e){return void 0===e&&(e=10),this.mix("white",e)},e.prototype.shade=function(e){return void 0===e&&(e=10),this.mix("black",e)},e.prototype.desaturate=function(t){void 0===t&&(t=10);var n=this.toHsl();return n.s-=t/100,n.s=o(n.s),new e(n)},e.prototype.saturate=function(t){void 0===t&&(t=10);var n=this.toHsl();return n.s+=t/100,n.s=o(n.s),new e(n)},e.prototype.greyscale=function(){return this.desaturate(100)},e.prototype.spin=function(t){var n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)},e.prototype.mix=function(t,n){void 0===n&&(n=50);var r=this.toRgb(),o=new e(t).toRgb(),i=n/100;return new e({r:(o.r-r.r)*i+r.r,g:(o.g-r.g)*i+r.g,b:(o.b-r.b)*i+r.b,a:(o.a-r.a)*i+r.a})},e.prototype.analogous=function(t,n){void 0===t&&(t=6),void 0===n&&(n=30);var r=this.toHsl(),o=360/n,i=[this];for(r.h=(r.h-(o*t>>1)+720)%360;--t;)r.h=(r.h+o)%360,i.push(new e(r));return i},e.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new e(t)},e.prototype.monochromatic=function(t){void 0===t&&(t=6);for(var n=this.toHsv(),r=n.h,o=n.s,i=n.v,s=[],a=1/t;t--;)s.push(new e({h:r,s:o,v:i})),i=(i+a)%1;return s},e.prototype.splitcomplement=function(){var t=this.toHsl(),n=t.h;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]},e.prototype.onBackground=function(t){var n=this.toRgb(),r=new e(t).toRgb(),o=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/o,g:(n.g*n.a+r.g*r.a*(1-n.a))/o,b:(n.b*n.a+r.b*r.a*(1-n.a))/o,a:o})},e.prototype.triad=function(){return this.polyad(3)},e.prototype.tetrad=function(){return this.polyad(4)},e.prototype.polyad=function(t){for(var n=this.toHsl(),r=n.h,o=[this],i=360/t,s=1;s<t;s++)o.push(new e({h:(r+s*i)%360,s:n.s,l:n.l}));return o},e.prototype.equals=function(t){return this.toRgbString()===new e(t).toRgbString()},e}()},9752:(e,t,n)=>{"use strict";n.d(t,{LB:()=>Ge,y9:()=>pt,g4:()=>ie,Lg:()=>ue,uN:()=>ke,MA:()=>ve,we:()=>me,pE:()=>E,ey:()=>A,Ai:()=>ut,VK:()=>F,_8:()=>M,hI:()=>z,j2:()=>R,Xo:()=>D,Cj:()=>et,IJ:()=>h,O1:()=>Xe,Zj:()=>rt,VT:()=>y,Dy:()=>v});var r=n(7294),o=n(3935),i=n(4285);const s={display:"none"};function a(e){let{id:t,value:n}=e;return r.createElement("div",{id:t,style:s},n)}const l={position:"fixed",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};function c(e){let{id:t,announcement:n}=e;return r.createElement("div",{id:t,style:l,role:"status","aria-live":"assertive","aria-atomic":!0},n)}const u=(0,r.createContext)(null);function h(e){const t=(0,r.useContext)(u);(0,r.useEffect)((()=>{if(!t)throw new Error("useDndMonitor must be used within a children of <DndContext>");return t(e)}),[e,t])}const d={draggable:"\n To pick up a draggable item, press the space bar.\n While dragging, use the arrow keys to move the item.\n Press space again to drop the item in its new position, or press escape to cancel.\n "},f={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was moved over droppable area "+n.id+".":"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:n}=e;return n?"Draggable item "+t.id+" was dropped over droppable area "+n.id:"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function p(e){let{announcements:t=f,container:n,hiddenTextDescribedById:s,screenReaderInstructions:l=d}=e;const{announce:u,announcement:p}=function(){const[e,t]=(0,r.useState)("");return{announce:(0,r.useCallback)((e=>{null!=e&&t(e)}),[]),announcement:e}}(),m=(0,i.Ld)("DndLiveRegion"),[g,y]=(0,r.useState)(!1);if((0,r.useEffect)((()=>{y(!0)}),[]),h((0,r.useMemo)((()=>({onDragStart(e){let{active:n}=e;u(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&u(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;u(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;u(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;u(t.onDragCancel({active:n,over:r}))}})),[u,t])),!g)return null;const v=r.createElement(r.Fragment,null,r.createElement(a,{id:s,value:l.draggable}),r.createElement(c,{id:m,announcement:p}));return n?(0,o.createPortal)(v,n):v}var m;function g(){}function y(e,t){return(0,r.useMemo)((()=>({sensor:e,options:null!=t?t:{}})),[e,t])}function v(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,r.useMemo)((()=>[...t].filter((e=>null!=e))),[...t])}!function(e){e.DragStart="dragStart",e.DragMove="dragMove",e.DragEnd="dragEnd",e.DragCancel="dragCancel",e.DragOver="dragOver",e.RegisterDroppable="registerDroppable",e.SetDroppableDisabled="setDroppableDisabled",e.UnregisterDroppable="unregisterDroppable"}(m||(m={}));const b=Object.freeze({x:0,y:0});function w(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function x(e,t){const n=(0,i.DC)(e);return n?(n.x-t.left)/t.width*100+"% "+(n.y-t.top)/t.height*100+"%":"0 0"}function S(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function k(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function C(e){let{left:t,top:n,height:r,width:o}=e;return[{x:t,y:n},{x:t+o,y:n},{x:t,y:n+r},{x:t+o,y:n+r}]}function M(e,t){if(!e||0===e.length)return null;const[n]=e;return t?n[t]:n}function O(e,t,n){return void 0===t&&(t=e.left),void 0===n&&(n=e.top),{x:t+.5*e.width,y:n+.5*e.height}}const E=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=O(t,t.left,t.top),i=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=w(O(r),o);i.push({id:t,data:{droppableContainer:e,value:n}})}}return i.sort(S)},A=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=C(t),i=[];for(const e of r){const{id:t}=e,r=n.get(t);if(r){const n=C(r),s=o.reduce(((e,t,r)=>e+w(n[r],t)),0),a=Number((s/4).toFixed(4));i.push({id:t,data:{droppableContainer:e,value:a}})}}return i.sort(S)};function T(e,t){const n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),o=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),s=o-r,a=i-n;if(r<o&&n<i){const n=t.width*t.height,r=e.width*e.height,o=s*a;return Number((o/(n+r-o)).toFixed(4))}return 0}const D=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e;const o=[];for(const e of r){const{id:r}=e,i=n.get(r);if(i){const n=T(i,t);n>0&&o.push({id:r,data:{droppableContainer:e,value:n}})}}return o.sort(k)};function _(e,t){const{top:n,left:r,bottom:o,right:i}=t;return n<=e.y&&e.y<=o&&r<=e.x&&e.x<=i}const R=e=>{let{droppableContainers:t,droppableRects:n,pointerCoordinates:r}=e;if(!r)return[];const o=[];for(const e of t){const{id:t}=e,i=n.get(t);if(i&&_(r,i)){const n=C(i).reduce(((e,t)=>e+w(r,t)),0),s=Number((n/4).toFixed(4));o.push({id:t,data:{droppableContainer:e,value:s}})}}return o.sort(S)};function N(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:b}function P(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce(((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x})),{...t})}}const I=P(1);function L(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}const j={ignoreTransform:!1};function F(e,t){void 0===t&&(t=j);let n=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:t,transformOrigin:r}=(0,i.Jj)(e).getComputedStyle(e);t&&(n=function(e,t,n){const r=L(t);if(!r)return e;const{scaleX:o,scaleY:i,x:s,y:a}=r,l=e.left-s-(1-o)*parseFloat(n),c=e.top-a-(1-i)*parseFloat(n.slice(n.indexOf(" ")+1)),u=o?e.width/o:e.width,h=i?e.height/i:e.height;return{width:u,height:h,top:c,right:l+u,bottom:c+h,left:l}}(n,t,r))}const{top:r,left:o,width:s,height:a,bottom:l,right:c}=n;return{top:r,left:o,width:s,height:a,bottom:l,right:c}}function B(e){return F(e,{ignoreTransform:!0})}function z(e,t){const n=[];return e?function r(o){if(null!=t&&n.length>=t)return n;if(!o)return n;if((0,i.qk)(o)&&null!=o.scrollingElement&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!(0,i.Re)(o)||(0,i.vZ)(o))return n;if(n.includes(o))return n;const s=(0,i.Jj)(e).getComputedStyle(o);return o!==e&&function(e,t){void 0===t&&(t=(0,i.Jj)(e).getComputedStyle(e));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some((e=>{const r=t[e];return"string"==typeof r&&n.test(r)}))}(o,s)&&n.push(o),function(e,t){return void 0===t&&(t=(0,i.Jj)(e).getComputedStyle(e)),"fixed"===t.position}(o,s)?n:r(o.parentNode)}(e):n}function $(e){const[t]=z(e,1);return null!=t?t:null}function H(e){return i.Nq&&e?(0,i.FJ)(e)?e:(0,i.UG)(e)?(0,i.qk)(e)||e===(0,i.r3)(e).scrollingElement?window:(0,i.Re)(e)?e:null:null:null}function W(e){return(0,i.FJ)(e)?e.scrollX:e.scrollLeft}function U(e){return(0,i.FJ)(e)?e.scrollY:e.scrollTop}function V(e){return{x:W(e),y:U(e)}}var q;function K(e){return!(!i.Nq||!e)&&e===document.scrollingElement}function Y(e){const t={x:0,y:0},n=K(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}!function(e){e[e.Forward=1]="Forward",e[e.Backward=-1]="Backward"}(q||(q={}));const G={x:.2,y:.2};function J(e,t,n,r,o){let{top:i,left:s,right:a,bottom:l}=n;void 0===r&&(r=10),void 0===o&&(o=G);const{isTop:c,isBottom:u,isLeft:h,isRight:d}=Y(e),f={x:0,y:0},p={x:0,y:0},m=t.height*o.y,g=t.width*o.x;return!c&&i<=t.top+m?(f.y=q.Backward,p.y=r*Math.abs((t.top+m-i)/m)):!u&&l>=t.bottom-m&&(f.y=q.Forward,p.y=r*Math.abs((t.bottom-m-l)/m)),!d&&a>=t.right-g?(f.x=q.Forward,p.x=r*Math.abs((t.right-g-a)/g)):!h&&s<=t.left+g&&(f.x=q.Backward,p.x=r*Math.abs((t.left+g-s)/g)),{direction:f,speed:p}}function Q(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:n,right:r,bottom:o}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:o,width:e.clientWidth,height:e.clientHeight}}function Z(e){return e.reduce(((e,t)=>(0,i.IH)(e,V(t))),b)}function X(e,t){if(void 0===t&&(t=F),!e)return;const{top:n,left:r,bottom:o,right:i}=t(e);$(e)&&(o<=0||i<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:"center",inline:"center"})}const ee=[["x",["left","right"],function(e){return e.reduce(((e,t)=>e+W(t)),0)}],["y",["top","bottom"],function(e){return e.reduce(((e,t)=>e+U(t)),0)}]];class te{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const n=z(t),r=Z(n);this.rect={...e},this.width=e.width,this.height=e.height;for(const[e,t,o]of ee)for(const i of t)Object.defineProperty(this,i,{get:()=>{const t=o(n),s=r[e]-t;return this.rect[i]+s},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class ne{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach((e=>{var t;return null==(t=this.target)?void 0:t.removeEventListener(...e)}))},this.target=e}add(e,t,n){var r;null==(r=this.target)||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}}function re(e,t){const n=Math.abs(e.x),r=Math.abs(e.y);return"number"==typeof t?Math.sqrt(n**2+r**2)>t:"x"in t&&"y"in t?n>t.x&&r>t.y:"x"in t?n>t.x:"y"in t&&r>t.y}var oe,ie;function se(e){e.preventDefault()}function ae(e){e.stopPropagation()}!function(e){e.Click="click",e.DragStart="dragstart",e.Keydown="keydown",e.ContextMenu="contextmenu",e.Resize="resize",e.SelectionChange="selectionchange",e.VisibilityChange="visibilitychange"}(oe||(oe={})),function(e){e.Space="Space",e.Down="ArrowDown",e.Right="ArrowRight",e.Left="ArrowLeft",e.Up="ArrowUp",e.Esc="Escape",e.Enter="Enter"}(ie||(ie={}));const le={start:[ie.Space,ie.Enter],cancel:[ie.Esc],end:[ie.Space,ie.Enter]},ce=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case ie.Right:return{...n,x:n.x+25};case ie.Left:return{...n,x:n.x-25};case ie.Down:return{...n,y:n.y+25};case ie.Up:return{...n,y:n.y-25}}};class ue{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:t}}=e;this.props=e,this.listeners=new ne((0,i.r3)(t)),this.windowListeners=new ne((0,i.Jj)(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(oe.Resize,this.handleCancel),this.windowListeners.add(oe.VisibilityChange,this.handleCancel),setTimeout((()=>this.listeners.add(oe.Keydown,this.handleKeyDown)))}handleStart(){const{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&X(n),t(b)}handleKeyDown(e){if((0,i.vd)(e)){const{active:t,context:n,options:r}=this.props,{keyboardCodes:o=le,coordinateGetter:s=ce,scrollBehavior:a="smooth"}=r,{code:l}=e;if(o.end.includes(l))return void this.handleEnd(e);if(o.cancel.includes(l))return void this.handleCancel(e);const{collisionRect:c}=n.current,u=c?{x:c.left,y:c.top}:b;this.referenceCoordinates||(this.referenceCoordinates=u);const h=s(e,{active:t,context:n.current,currentCoordinates:u});if(h){const t=(0,i.$X)(h,u),r={x:0,y:0},{scrollableAncestors:o}=n.current;for(const n of o){const o=e.code,{isTop:i,isRight:s,isLeft:l,isBottom:c,maxScroll:u,minScroll:d}=Y(n),f=Q(n),p={x:Math.min(o===ie.Right?f.right-f.width/2:f.right,Math.max(o===ie.Right?f.left:f.left+f.width/2,h.x)),y:Math.min(o===ie.Down?f.bottom-f.height/2:f.bottom,Math.max(o===ie.Down?f.top:f.top+f.height/2,h.y))},m=o===ie.Right&&!s||o===ie.Left&&!l,g=o===ie.Down&&!c||o===ie.Up&&!i;if(m&&p.x!==h.x){const e=n.scrollLeft+t.x,i=o===ie.Right&&e<=u.x||o===ie.Left&&e>=d.x;if(i&&!t.y)return void n.scrollTo({left:e,behavior:a});r.x=i?n.scrollLeft-e:o===ie.Right?n.scrollLeft-u.x:n.scrollLeft-d.x,r.x&&n.scrollBy({left:-r.x,behavior:a});break}if(g&&p.y!==h.y){const e=n.scrollTop+t.y,i=o===ie.Down&&e<=u.y||o===ie.Up&&e>=d.y;if(i&&!t.x)return void n.scrollTo({top:e,behavior:a});r.y=i?n.scrollTop-e:o===ie.Down?n.scrollTop-u.y:n.scrollTop-d.y,r.y&&n.scrollBy({top:-r.y,behavior:a});break}}this.handleMove(e,(0,i.IH)((0,i.$X)(h,this.referenceCoordinates),r))}}}handleMove(e,t){const{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}function he(e){return Boolean(e&&"distance"in e)}function de(e){return Boolean(e&&"delay"in e)}ue.activators=[{eventName:"onKeyDown",handler:(e,t,n)=>{let{keyboardCodes:r=le,onActivation:o}=t,{active:i}=n;const{code:s}=e.nativeEvent;if(r.start.includes(s)){const t=i.activatorNode.current;return!(t&&e.target!==t||(e.preventDefault(),null==o||o({event:e.nativeEvent}),0))}return!1}}];class fe{constructor(e,t,n){var r;void 0===n&&(n=function(e){const{EventTarget:t}=(0,i.Jj)(e);return e instanceof t?e:(0,i.r3)(e)}(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;const{event:o}=e,{target:s}=o;this.props=e,this.events=t,this.document=(0,i.r3)(s),this.documentListeners=new ne(this.document),this.listeners=new ne(n),this.windowListeners=new ne((0,i.Jj)(s)),this.initialCoordinates=null!=(r=(0,i.DC)(o))?r:b,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),this.windowListeners.add(oe.Resize,this.handleCancel),this.windowListeners.add(oe.DragStart,se),this.windowListeners.add(oe.VisibilityChange,this.handleCancel),this.windowListeners.add(oe.ContextMenu,se),this.documentListeners.add(oe.Keydown,this.handleKeydown),t){if(he(t))return;if(de(t))return void(this.timeoutId=setTimeout(this.handleStart,t.delay))}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),null!==this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handleStart(){const{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(oe.Click,ae,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(oe.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){var t;const{activated:n,initialCoordinates:r,props:o}=this,{onMove:s,options:{activationConstraint:a}}=o;if(!r)return;const l=null!=(t=(0,i.DC)(e))?t:b,c=(0,i.$X)(r,l);if(!n&&a){if(de(a))return re(c,a.tolerance)?this.handleCancel():void 0;if(he(a))return null!=a.tolerance&&re(c,a.tolerance)?this.handleCancel():re(c,a.distance)?this.handleStart():void 0}e.cancelable&&e.preventDefault(),s(l)}handleEnd(){const{onEnd:e}=this.props;this.detach(),e()}handleCancel(){const{onCancel:e}=this.props;this.detach(),e()}handleKeydown(e){e.code===ie.Esc&&this.handleCancel()}removeTextSelection(){var e;null==(e=this.document.getSelection())||e.removeAllRanges()}}const pe={move:{name:"pointermove"},end:{name:"pointerup"}};class me extends fe{constructor(e){const{event:t}=e,n=(0,i.r3)(t.target);super(e,pe,n)}}me.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!(!n.isPrimary||0!==n.button||(null==r||r({event:n}),0))}}];const ge={move:{name:"mousemove"},end:{name:"mouseup"}};var ye;!function(e){e[e.RightClick=2]="RightClick"}(ye||(ye={}));class ve extends fe{constructor(e){super(e,ge,(0,i.r3)(e.event.target))}}ve.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button!==ye.RightClick&&(null==r||r({event:n}),!0)}}];const be={move:{name:"touchmove"},end:{name:"touchend"}};var we,xe;(class extends fe{constructor(e){super(e,be)}static setup(){return window.addEventListener(be.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(be.move.name,e)};function e(){}}}).activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;const{touches:o}=n;return!(o.length>1||(null==r||r({event:n}),0))}}],function(e){e[e.Pointer=0]="Pointer",e[e.DraggableRect=1]="DraggableRect"}(we||(we={})),function(e){e[e.TreeOrder=0]="TreeOrder",e[e.ReversedTreeOrder=1]="ReversedTreeOrder"}(xe||(xe={}));const Se={x:{[q.Backward]:!1,[q.Forward]:!1},y:{[q.Backward]:!1,[q.Forward]:!1}};var ke,Ce;!function(e){e[e.Always=0]="Always",e[e.BeforeDragging=1]="BeforeDragging",e[e.WhileDragging=2]="WhileDragging"}(ke||(ke={})),function(e){e.Optimized="optimized"}(Ce||(Ce={}));const Me=new Map;function Oe(e,t){return(0,i.Gj)((n=>e?n||("function"==typeof t?t(e):e):null),[t,e])}function Ee(e){let{callback:t,disabled:n}=e;const o=(0,i.zX)(t),s=(0,r.useMemo)((()=>{if(n||"undefined"==typeof window||void 0===window.ResizeObserver)return;const{ResizeObserver:e}=window;return new e(o)}),[n]);return(0,r.useEffect)((()=>()=>null==s?void 0:s.disconnect()),[s]),s}function Ae(e){return new te(F(e),e)}function Te(e,t,n){void 0===t&&(t=Ae);const[o,s]=(0,r.useReducer)((function(r){if(!e)return null;var o;if(!1===e.isConnected)return null!=(o=null!=r?r:n)?o:null;const i=t(e);return JSON.stringify(r)===JSON.stringify(i)?r:i}),null),a=function(e){let{callback:t,disabled:n}=e;const o=(0,i.zX)(t),s=(0,r.useMemo)((()=>{if(n||"undefined"==typeof window||void 0===window.MutationObserver)return;const{MutationObserver:e}=window;return new e(o)}),[o,n]);return(0,r.useEffect)((()=>()=>null==s?void 0:s.disconnect()),[s]),s}({callback(t){if(e)for(const n of t){const{type:t,target:r}=n;if("childList"===t&&r instanceof HTMLElement&&r.contains(e)){s();break}}}}),l=Ee({callback:s});return(0,i.LI)((()=>{s(),e?(null==l||l.observe(e),null==a||a.observe(document.body,{childList:!0,subtree:!0})):(null==l||l.disconnect(),null==a||a.disconnect())}),[e]),o}const De=[];function _e(e,t){void 0===t&&(t=[]);const n=(0,r.useRef)(null);return(0,r.useEffect)((()=>{n.current=null}),t),(0,r.useEffect)((()=>{const t=e!==b;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)}),[e]),n.current?(0,i.$X)(e,n.current):b}function Re(e){return(0,r.useMemo)((()=>e?function(e){const t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}(e):null),[e])}const Ne=[];function Pe(e){if(!e)return null;if(e.children.length>1)return e;const t=e.children[0];return(0,i.Re)(t)?t:e}const Ie=[{sensor:me,options:{}},{sensor:ue,options:{}}],Le={current:{}},je={draggable:{measure:B},droppable:{measure:B,strategy:ke.WhileDragging,frequency:Ce.Optimized},dragOverlay:{measure:F}};class Fe extends Map{get(e){var t;return null!=e&&null!=(t=super.get(e))?t:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter((e=>{let{disabled:t}=e;return!t}))}getNodeFor(e){var t,n;return null!=(t=null==(n=this.get(e))?void 0:n.node.current)?t:void 0}}const Be={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new Fe,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:g},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:je,measureDroppableContainers:g,windowRect:null,measuringScheduled:!1},ze={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:g,draggableNodes:new Map,over:null,measureDroppableContainers:g},$e=(0,r.createContext)(ze),He=(0,r.createContext)(Be);function We(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new Fe}}}function Ue(e,t){switch(t.type){case m.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case m.DragMove:return e.draggable.active?{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}}:e;case m.DragEnd:case m.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case m.RegisterDroppable:{const{element:n}=t,{id:r}=n,o=new Fe(e.droppable.containers);return o.set(r,n),{...e,droppable:{...e.droppable,containers:o}}}case m.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;const s=new Fe(e.droppable.containers);return s.set(n,{...i,disabled:o}),{...e,droppable:{...e.droppable,containers:s}}}case m.UnregisterDroppable:{const{id:n,key:r}=t,o=e.droppable.containers.get(n);if(!o||r!==o.key)return e;const i=new Fe(e.droppable.containers);return i.delete(n),{...e,droppable:{...e.droppable,containers:i}}}default:return e}}function Ve(e){let{disabled:t}=e;const{active:n,activatorEvent:o,draggableNodes:s}=(0,r.useContext)($e),a=(0,i.D9)(o),l=(0,i.D9)(null==n?void 0:n.id);return(0,r.useEffect)((()=>{if(!t&&!o&&a&&null!=l){if(!(0,i.vd)(a))return;if(document.activeElement===a.target)return;const e=s.get(l);if(!e)return;const{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame((()=>{for(const e of[t.current,n.current]){if(!e)continue;const t=(0,i.so)(e);if(t){t.focus();break}}}))}}),[o,t,s,l,a]),null}function qe(e,t){let{transform:n,...r}=t;return null!=e&&e.length?e.reduce(((e,t)=>t({transform:e,...r})),n):n}const Ke=(0,r.createContext)({...b,scaleX:1,scaleY:1});var Ye;!function(e){e[e.Uninitialized=0]="Uninitialized",e[e.Initializing=1]="Initializing",e[e.Initialized=2]="Initialized"}(Ye||(Ye={}));const Ge=(0,r.memo)((function(e){var t,n,s,a;let{id:l,accessibility:c,autoScroll:h=!0,children:d,sensors:f=Ie,collisionDetection:g=D,measuring:y,modifiers:v,...w}=e;const x=(0,r.useReducer)(Ue,void 0,We),[S,k]=x,[C,O]=function(){const[e]=(0,r.useState)((()=>new Set)),t=(0,r.useCallback)((t=>(e.add(t),()=>e.delete(t))),[e]);return[(0,r.useCallback)((t=>{let{type:n,event:r}=t;e.forEach((e=>{var t;return null==(t=e[n])?void 0:t.call(e,r)}))}),[e]),t]}(),[E,A]=(0,r.useState)(Ye.Uninitialized),T=E===Ye.Initialized,{draggable:{active:_,nodes:R,translate:P},droppable:{containers:L}}=S,j=_?R.get(_):null,B=(0,r.useRef)({initial:null,translated:null}),W=(0,r.useMemo)((()=>{var e;return null!=_?{id:_,data:null!=(e=null==j?void 0:j.data)?e:Le,rect:B}:null}),[_,j]),U=(0,r.useRef)(null),[Y,G]=(0,r.useState)(null),[Q,X]=(0,r.useState)(null),ee=(0,i.Ey)(w,Object.values(w)),ne=(0,i.Ld)("DndDescribedBy",l),re=(0,r.useMemo)((()=>L.getEnabled()),[L]),oe=(ie=y,(0,r.useMemo)((()=>({draggable:{...je.draggable,...null==ie?void 0:ie.draggable},droppable:{...je.droppable,...null==ie?void 0:ie.droppable},dragOverlay:{...je.dragOverlay,...null==ie?void 0:ie.dragOverlay}})),[null==ie?void 0:ie.draggable,null==ie?void 0:ie.droppable,null==ie?void 0:ie.dragOverlay]));var ie;const{droppableRects:se,measureDroppableContainers:ae,measuringScheduled:le}=function(e,t){let{dragging:n,dependencies:o,config:s}=t;const[a,l]=(0,r.useState)(null),{frequency:c,measure:u,strategy:h}=s,d=(0,r.useRef)(e),f=function(){switch(h){case ke.Always:return!1;case ke.BeforeDragging:return n;default:return!n}}(),p=(0,i.Ey)(f),m=(0,r.useCallback)((function(e){void 0===e&&(e=[]),p.current||l((t=>null===t?e:t.concat(e.filter((e=>!t.includes(e))))))}),[p]),g=(0,r.useRef)(null),y=(0,i.Gj)((t=>{if(f&&!n)return Me;if(!t||t===Me||d.current!==e||null!=a){const t=new Map;for(let n of e){if(!n)continue;if(a&&a.length>0&&!a.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}const e=n.node.current,r=e?new te(u(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t}),[e,a,n,f,u]);return(0,r.useEffect)((()=>{d.current=e}),[e]),(0,r.useEffect)((()=>{f||m()}),[n,f]),(0,r.useEffect)((()=>{a&&a.length>0&&l(null)}),[JSON.stringify(a)]),(0,r.useEffect)((()=>{f||"number"!=typeof c||null!==g.current||(g.current=setTimeout((()=>{m(),g.current=null}),c))}),[c,f,m,...o]),{droppableRects:y,measureDroppableContainers:m,measuringScheduled:null!=a}}(re,{dragging:T,dependencies:[P.x,P.y],config:oe.droppable}),ce=function(e,t){const n=null!==t?e.get(t):void 0,r=n?n.node.current:null;return(0,i.Gj)((e=>{var n;return null===t?null:null!=(n=null!=r?r:e)?n:null}),[r,t])}(R,_),ue=(0,r.useMemo)((()=>Q?(0,i.DC)(Q):null),[Q]),he=function(){const e=!1===(null==Y?void 0:Y.autoScrollEnabled),t="object"==typeof h?!1===h.enabled:!1===h,n=T&&!e&&!t;return"object"==typeof h?{...h,enabled:n}:{enabled:n}}(),de=function(e,t){return Oe(e,t)}(ce,oe.draggable.measure);!function(e){let{activeNode:t,measure:n,initialRect:o,config:s=!0}=e;const a=(0,r.useRef)(!1),{x:l,y:c}="boolean"==typeof s?{x:s,y:s}:s;(0,i.LI)((()=>{if(!l&&!c||!t)return void(a.current=!1);if(a.current||!o)return;const e=null==t?void 0:t.node.current;if(!e||!1===e.isConnected)return;const r=N(n(e),o);if(l||(r.x=0),c||(r.y=0),a.current=!0,Math.abs(r.x)>0||Math.abs(r.y)>0){const t=$(e);t&&t.scrollBy({top:r.y,left:r.x})}}),[t,l,c,o,n])}({activeNode:_?R.get(_):null,config:he.layoutShiftCompensation,initialRect:de,measure:oe.draggable.measure});const fe=Te(ce,oe.draggable.measure,de),pe=Te(ce?ce.parentElement:null),me=(0,r.useRef)({activatorEvent:null,active:null,activeNode:ce,collisionRect:null,collisions:null,droppableRects:se,draggableNodes:R,draggingNode:null,draggingNodeRect:null,droppableContainers:L,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ge=L.getNodeFor(null==(t=me.current.over)?void 0:t.id),ye=function(e){let{measure:t}=e;const[n,o]=(0,r.useState)(null),s=Ee({callback:(0,r.useCallback)((e=>{for(const{target:n}of e)if((0,i.Re)(n)){o((e=>{const r=t(n);return e?{...e,width:r.width,height:r.height}:r}));break}}),[t])}),a=(0,r.useCallback)((e=>{const n=Pe(e);null==s||s.disconnect(),n&&(null==s||s.observe(n)),o(n?t(n):null)}),[t,s]),[l,c]=(0,i.wm)(a);return(0,r.useMemo)((()=>({nodeRef:l,rect:n,setRef:c})),[n,l,c])}({measure:oe.dragOverlay.measure}),ve=null!=(n=ye.nodeRef.current)?n:ce,be=T?null!=(s=ye.rect)?s:fe:null,Ce=Boolean(ye.nodeRef.current&&ye.rect),Ae=N(Fe=Ce?null:fe,Oe(Fe));var Fe;const Be=Re(ve?(0,i.Jj)(ve):null),ze=function(e){const t=(0,r.useRef)(e),n=(0,i.Gj)((n=>e?n&&n!==De&&e&&t.current&&e.parentNode===t.current.parentNode?n:z(e):De),[e]);return(0,r.useEffect)((()=>{t.current=e}),[e]),n}(T?null!=ge?ge:ce:null),Ge=function(e,t){void 0===t&&(t=F);const[n]=e,o=Re(n?(0,i.Jj)(n):null),[s,a]=(0,r.useReducer)((function(){return e.length?e.map((e=>K(e)?o:new te(t(e),e))):Ne}),Ne),l=Ee({callback:a});return e.length>0&&s===Ne&&a(),(0,i.LI)((()=>{e.length?e.forEach((e=>null==l?void 0:l.observe(e))):(null==l||l.disconnect(),a())}),[e]),s}(ze),Je=qe(v,{transform:{x:P.x-Ae.x,y:P.y-Ae.y,scaleX:1,scaleY:1},activatorEvent:Q,active:W,activeNodeRect:fe,containerNodeRect:pe,draggingNodeRect:be,over:me.current.over,overlayNodeRect:ye.rect,scrollableAncestors:ze,scrollableAncestorRects:Ge,windowRect:Be}),Qe=ue?(0,i.IH)(ue,P):null,Ze=function(e){const[t,n]=(0,r.useState)(null),o=(0,r.useRef)(e),s=(0,r.useCallback)((e=>{const t=H(e.target);t&&n((e=>e?(e.set(t,V(t)),new Map(e)):null))}),[]);return(0,r.useEffect)((()=>{const t=o.current;if(e!==t){r(t);const i=e.map((e=>{const t=H(e);return t?(t.addEventListener("scroll",s,{passive:!0}),[t,V(t)]):null})).filter((e=>null!=e));n(i.length?new Map(i):null),o.current=e}return()=>{r(e),r(t)};function r(e){e.forEach((e=>{const t=H(e);null==t||t.removeEventListener("scroll",s)}))}}),[s,e]),(0,r.useMemo)((()=>e.length?t?Array.from(t.values()).reduce(((e,t)=>(0,i.IH)(e,t)),b):Z(e):b),[e,t])}(ze),Xe=_e(Ze),et=_e(Ze,[fe]),tt=(0,i.IH)(Je,Xe),nt=be?I(be,Je):null,rt=W&&nt?g({active:W,collisionRect:nt,droppableRects:se,droppableContainers:re,pointerCoordinates:Qe}):null,ot=M(rt,"id"),[it,st]=(0,r.useState)(null),at=function(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}(Ce?Je:(0,i.IH)(Je,et),null!=(a=null==it?void 0:it.rect)?a:null,fe),lt=(0,r.useCallback)(((e,t)=>{let{sensor:n,options:r}=t;if(null==U.current)return;const i=R.get(U.current);if(!i)return;const s=e.nativeEvent,a=new n({active:U.current,activeNode:i,event:s,options:r,context:me,onStart(e){const t=U.current;if(null==t)return;const n=R.get(t);if(!n)return;const{onDragStart:r}=ee.current,i={active:{id:t,data:n.data,rect:B}};(0,o.unstable_batchedUpdates)((()=>{null==r||r(i),A(Ye.Initializing),k({type:m.DragStart,initialCoordinates:e,active:t}),C({type:"onDragStart",event:i})}))},onMove(e){k({type:m.DragMove,coordinates:e})},onEnd:l(m.DragEnd),onCancel:l(m.DragCancel)});function l(e){return async function(){const{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=me.current;let a=null;if(t&&i){const{cancelDrop:o}=ee.current;a={activatorEvent:s,active:t,collisions:n,delta:i,over:r},e===m.DragEnd&&"function"==typeof o&&await Promise.resolve(o(a))&&(e=m.DragCancel)}U.current=null,(0,o.unstable_batchedUpdates)((()=>{k({type:e}),A(Ye.Uninitialized),st(null),G(null),X(null);const t=e===m.DragEnd?"onDragEnd":"onDragCancel";if(a){const e=ee.current[t];null==e||e(a),C({type:t,event:a})}}))}}(0,o.unstable_batchedUpdates)((()=>{G(a),X(e.nativeEvent)}))}),[R]),ct=(0,r.useCallback)(((e,t)=>(n,r)=>{const o=n.nativeEvent,i=R.get(r);if(null!==U.current||!i||o.dndKit||o.defaultPrevented)return;const s={active:i};!0===e(n,t.options,s)&&(o.dndKit={capturedBy:t.sensor},U.current=r,lt(n,t))}),[R,lt]),ut=function(e,t){return(0,r.useMemo)((()=>e.reduce(((e,n)=>{const{sensor:r}=n;return[...e,...r.activators.map((e=>({eventName:e.eventName,handler:t(e.handler,n)})))]}),[])),[e,t])}(f,ct);!function(e){(0,r.useEffect)((()=>{if(!i.Nq)return;const t=e.map((e=>{let{sensor:t}=e;return null==t.setup?void 0:t.setup()}));return()=>{for(const e of t)null==e||e()}}),e.map((e=>{let{sensor:t}=e;return t})))}(f),(0,i.LI)((()=>{fe&&E===Ye.Initializing&&A(Ye.Initialized)}),[fe,E]),(0,r.useEffect)((()=>{const{onDragMove:e}=ee.current,{active:t,activatorEvent:n,collisions:r,over:i}=me.current;if(!t||!n)return;const s={active:t,activatorEvent:n,collisions:r,delta:{x:tt.x,y:tt.y},over:i};(0,o.unstable_batchedUpdates)((()=>{null==e||e(s),C({type:"onDragMove",event:s})}))}),[tt.x,tt.y]),(0,r.useEffect)((()=>{const{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=me.current;if(!e||null==U.current||!t||!i)return;const{onDragOver:s}=ee.current,a=r.get(ot),l=a&&a.rect.current?{id:a.id,rect:a.rect.current,data:a.data,disabled:a.disabled}:null,c={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:l};(0,o.unstable_batchedUpdates)((()=>{st(l),null==s||s(c),C({type:"onDragOver",event:c})}))}),[ot]),(0,i.LI)((()=>{me.current={activatorEvent:Q,active:W,activeNode:ce,collisionRect:nt,collisions:rt,droppableRects:se,draggableNodes:R,draggingNode:ve,draggingNodeRect:be,droppableContainers:L,over:it,scrollableAncestors:ze,scrollAdjustedTranslate:tt},B.current={initial:be,translated:nt}}),[W,ce,rt,nt,R,ve,be,se,L,it,ze,tt]),function(e){let{acceleration:t,activator:n=we.Pointer,canScroll:o,draggingRect:s,enabled:a,interval:l=5,order:c=xe.TreeOrder,pointerCoordinates:u,scrollableAncestors:h,scrollableAncestorRects:d,delta:f,threshold:p}=e;const m=function(e){let{delta:t,disabled:n}=e;const r=(0,i.D9)(t);return(0,i.Gj)((e=>{if(n||!r||!e)return Se;const o=Math.sign(t.x-r.x),i=Math.sign(t.y-r.y);return{x:{[q.Backward]:e.x[q.Backward]||-1===o,[q.Forward]:e.x[q.Forward]||1===o},y:{[q.Backward]:e.y[q.Backward]||-1===i,[q.Forward]:e.y[q.Forward]||1===i}}}),[n,t,r])}({delta:f,disabled:!a}),[g,y]=(0,i.Yz)(),v=(0,r.useRef)({x:0,y:0}),b=(0,r.useRef)({x:0,y:0}),w=(0,r.useMemo)((()=>{switch(n){case we.Pointer:return u?{top:u.y,bottom:u.y,left:u.x,right:u.x}:null;case we.DraggableRect:return s}}),[n,s,u]),x=(0,r.useRef)(null),S=(0,r.useCallback)((()=>{const e=x.current;if(!e)return;const t=v.current.x*b.current.x,n=v.current.y*b.current.y;e.scrollBy(t,n)}),[]),k=(0,r.useMemo)((()=>c===xe.TreeOrder?[...h].reverse():h),[c,h]);(0,r.useEffect)((()=>{if(a&&h.length&&w){for(const e of k){if(!1===(null==o?void 0:o(e)))continue;const n=h.indexOf(e),r=d[n];if(!r)continue;const{direction:i,speed:s}=J(e,r,w,t,p);for(const e of["x","y"])m[e][i[e]]||(s[e]=0,i[e]=0);if(s.x>0||s.y>0)return y(),x.current=e,g(S,l),v.current=s,void(b.current=i)}v.current={x:0,y:0},b.current={x:0,y:0},y()}else y()}),[t,S,o,y,a,l,JSON.stringify(w),JSON.stringify(m),g,h,k,d,JSON.stringify(p)])}({...he,delta:P,draggingRect:nt,pointerCoordinates:Qe,scrollableAncestors:ze,scrollableAncestorRects:Ge});const ht=(0,r.useMemo)((()=>({active:W,activeNode:ce,activeNodeRect:fe,activatorEvent:Q,collisions:rt,containerNodeRect:pe,dragOverlay:ye,draggableNodes:R,droppableContainers:L,droppableRects:se,over:it,measureDroppableContainers:ae,scrollableAncestors:ze,scrollableAncestorRects:Ge,measuringConfiguration:oe,measuringScheduled:le,windowRect:Be})),[W,ce,fe,Q,rt,pe,ye,R,L,se,it,ae,ze,Ge,oe,le,Be]),dt=(0,r.useMemo)((()=>({activatorEvent:Q,activators:ut,active:W,activeNodeRect:fe,ariaDescribedById:{draggable:ne},dispatch:k,draggableNodes:R,over:it,measureDroppableContainers:ae})),[Q,ut,W,fe,k,ne,R,it,ae]);return r.createElement(u.Provider,{value:O},r.createElement($e.Provider,{value:dt},r.createElement(He.Provider,{value:ht},r.createElement(Ke.Provider,{value:at},d)),r.createElement(Ve,{disabled:!1===(null==c?void 0:c.restoreFocus)})),r.createElement(p,{...c,hiddenTextDescribedById:ne}))})),Je=(0,r.createContext)(null),Qe="button",Ze="Droppable";function Xe(e){let{id:t,data:n,disabled:o=!1,attributes:s}=e;const a=(0,i.Ld)(Ze),{activators:l,activatorEvent:c,active:u,activeNodeRect:h,ariaDescribedById:d,draggableNodes:f,over:p}=(0,r.useContext)($e),{role:m=Qe,roleDescription:g="draggable",tabIndex:y=0}=null!=s?s:{},v=(null==u?void 0:u.id)===t,b=(0,r.useContext)(v?Ke:Je),[w,x]=(0,i.wm)(),[S,k]=(0,i.wm)(),C=function(e,t){return(0,r.useMemo)((()=>e.reduce(((e,n)=>{let{eventName:r,handler:o}=n;return e[r]=e=>{o(e,t)},e}),{})),[e,t])}(l,t),M=(0,i.Ey)(n);return(0,i.LI)((()=>(f.set(t,{id:t,key:a,node:w,activatorNode:S,data:M}),()=>{const e=f.get(t);e&&e.key===a&&f.delete(t)})),[f,t]),{active:u,activatorEvent:c,activeNodeRect:h,attributes:(0,r.useMemo)((()=>({role:m,tabIndex:y,"aria-disabled":o,"aria-pressed":!(!v||m!==Qe)||void 0,"aria-roledescription":g,"aria-describedby":d.draggable})),[o,m,y,v,g,d.draggable]),isDragging:v,listeners:o?void 0:C,node:w,over:p,setNodeRef:x,setActivatorNodeRef:k,transform:b}}function et(){return(0,r.useContext)(He)}const tt="Droppable",nt={timeout:25};function rt(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:s}=e;const a=(0,i.Ld)(tt),{active:l,dispatch:c,over:u,measureDroppableContainers:h}=(0,r.useContext)($e),d=(0,r.useRef)({disabled:n}),f=(0,r.useRef)(!1),p=(0,r.useRef)(null),g=(0,r.useRef)(null),{disabled:y,updateMeasurementsFor:v,timeout:b}={...nt,...s},w=(0,i.Ey)(null!=v?v:o),x=Ee({callback:(0,r.useCallback)((()=>{f.current?(null!=g.current&&clearTimeout(g.current),g.current=setTimeout((()=>{h(Array.isArray(w.current)?w.current:[w.current]),g.current=null}),b)):f.current=!0}),[b]),disabled:y||!l}),S=(0,r.useCallback)(((e,t)=>{x&&(t&&(x.unobserve(t),f.current=!1),e&&x.observe(e))}),[x]),[k,C]=(0,i.wm)(S),M=(0,i.Ey)(t);return(0,r.useEffect)((()=>{x&&k.current&&(x.disconnect(),f.current=!1,x.observe(k.current))}),[k,x]),(0,i.LI)((()=>(c({type:m.RegisterDroppable,element:{id:o,key:a,disabled:n,node:k,rect:p,data:M}}),()=>c({type:m.UnregisterDroppable,key:a,id:o}))),[o]),(0,r.useEffect)((()=>{n!==d.current.disabled&&(c({type:m.SetDroppableDisabled,id:o,key:a,disabled:n}),d.current.disabled=n)}),[o,a,n,c]),{active:l,rect:p,isOver:(null==u?void 0:u.id)===o,node:k,over:u,setNodeRef:C}}function ot(e){let{animation:t,children:n}=e;const[o,s]=(0,r.useState)(null),[a,l]=(0,r.useState)(null),c=(0,i.D9)(n);return n||o||!c||s(c),(0,i.LI)((()=>{if(!a)return;const e=null==o?void 0:o.key,n=null==o?void 0:o.props.id;null!=e&&null!=n?Promise.resolve(t(n,a)).then((()=>{s(null)})):s(null)}),[t,o,a]),r.createElement(r.Fragment,null,n,o?(0,r.cloneElement)(o,{ref:l}):null)}const it={x:0,y:0,scaleX:1,scaleY:1};function st(e){let{children:t}=e;return r.createElement($e.Provider,{value:ze},r.createElement(Ke.Provider,{value:it},t))}const at={position:"fixed",touchAction:"none"},lt=e=>(0,i.vd)(e)?"transform 250ms ease":void 0,ct=(0,r.forwardRef)(((e,t)=>{let{as:n,activatorEvent:o,adjustScale:s,children:a,className:l,rect:c,style:u,transform:h,transition:d=lt}=e;if(!c)return null;const f=s?h:{...h,scaleX:1,scaleY:1},p={...at,width:c.width,height:c.height,top:c.top,left:c.left,transform:i.ux.Transform.toString(f),transformOrigin:s&&o?x(o,c):void 0,transition:"function"==typeof d?d(o):d,...u};return r.createElement(n,{className:l,style:p,ref:t},a)})),ut=e=>t=>{let{active:n,dragOverlay:r}=t;const o={},{styles:i,className:s}=e;if(null!=i&&i.active)for(const[e,t]of Object.entries(i.active))void 0!==t&&(o[e]=n.node.style.getPropertyValue(e),n.node.style.setProperty(e,t));if(null!=i&&i.dragOverlay)for(const[e,t]of Object.entries(i.dragOverlay))void 0!==t&&r.node.style.setProperty(e,t);return null!=s&&s.active&&n.node.classList.add(s.active),null!=s&&s.dragOverlay&&r.node.classList.add(s.dragOverlay),function(){for(const[e,t]of Object.entries(o))n.node.style.setProperty(e,t);null!=s&&s.active&&n.node.classList.remove(s.active)}},ht={duration:250,easing:"ease",keyframes:e=>{let{transform:{initial:t,final:n}}=e;return[{transform:i.ux.Transform.toString(t)},{transform:i.ux.Transform.toString(n)}]},sideEffects:ut({styles:{active:{opacity:"0"}}})};let dt=0;function ft(e){return(0,r.useMemo)((()=>{if(null!=e)return dt++,dt}),[e])}const pt=r.memo((e=>{let{adjustScale:t=!1,children:n,dropAnimation:o,style:s,transition:a,modifiers:l,wrapperElement:c="div",className:u,zIndex:h=999}=e;const{activatorEvent:d,active:f,activeNodeRect:p,containerNodeRect:m,draggableNodes:g,droppableContainers:y,dragOverlay:v,over:b,measuringConfiguration:w,scrollableAncestors:x,scrollableAncestorRects:S,windowRect:k}=et(),C=(0,r.useContext)(Ke),M=ft(null==f?void 0:f.id),O=qe(l,{activatorEvent:d,active:f,activeNodeRect:p,containerNodeRect:m,draggingNodeRect:v.rect,over:b,overlayNodeRect:v.rect,scrollableAncestors:x,scrollableAncestorRects:S,transform:C,windowRect:k}),E=Oe(p),A=function(e){let{config:t,draggableNodes:n,droppableContainers:r,measuringConfiguration:o}=e;return(0,i.zX)(((e,s)=>{if(null===t)return;const a=n.get(e);if(!a)return;const l=a.node.current;if(!l)return;const c=Pe(s);if(!c)return;const{transform:u}=(0,i.Jj)(s).getComputedStyle(s),h=L(u);if(!h)return;const d="function"==typeof t?t:function(e){const{duration:t,easing:n,sideEffects:r,keyframes:o}={...ht,...e};return e=>{let{active:i,dragOverlay:s,transform:a,...l}=e;if(!t)return;const c=s.rect.left-i.rect.left,u=s.rect.top-i.rect.top,h={scaleX:1!==a.scaleX?i.rect.width*a.scaleX/s.rect.width:1,scaleY:1!==a.scaleY?i.rect.height*a.scaleY/s.rect.height:1},d={x:a.x-c,y:a.y-u,...h},f=o({...l,active:i,dragOverlay:s,transform:{initial:a,final:d}}),[p]=f,m=f[f.length-1];if(JSON.stringify(p)===JSON.stringify(m))return;const g=null==r?void 0:r({active:i,dragOverlay:s,...l}),y=s.node.animate(f,{duration:t,easing:n,fill:"forwards"});return new Promise((e=>{y.onfinish=()=>{null==g||g(),e()}}))}}(t);return X(l,o.draggable.measure),d({active:{id:e,data:a.data,node:l,rect:o.draggable.measure(l)},draggableNodes:n,dragOverlay:{node:s,rect:o.dragOverlay.measure(c)},droppableContainers:r,measuringConfiguration:o,transform:h})}))}({config:o,draggableNodes:g,droppableContainers:y,measuringConfiguration:w}),T=E?v.setRef:void 0;return r.createElement(st,null,r.createElement(ot,{animation:A},f&&M?r.createElement(ct,{key:M,id:f.id,ref:T,as:c,activatorEvent:d,adjustScale:t,className:u,transition:a,rect:E,style:{zIndex:h,...s},transform:O},n):null))}))},5587:(e,t,n)=>{"use strict";n.d(t,{Fo:()=>g,PG:()=>u,Rp:()=>s,U2:()=>h,is:()=>O,nB:()=>k,qw:()=>f});var r=n(7294),o=n(9752),i=n(4285);function s(e,t,n){const r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function a(e,t){return e.reduce(((e,n,r)=>{const o=t.get(n);return o&&(e[r]=o),e}),Array(e.length))}function l(e){return null!==e&&e>=0}const c={scaleX:1,scaleY:1},u=e=>{var t;let{rects:n,activeNodeRect:r,activeIndex:o,overIndex:i,index:s}=e;const a=null!=(t=n[o])?t:r;if(!a)return null;const l=function(e,t,n){const r=e[t],o=e[t-1],i=e[t+1];return r&&(o||i)?n<t?o?r.left-(o.left+o.width):i.left-(r.left+r.width):i?i.left-(r.left+r.width):r.left-(o.left+o.width):0}(n,s,o);if(s===o){const e=n[i];return e?{x:o<i?e.left+e.width-(a.left+a.width):e.left-a.left,y:0,...c}:null}return s>o&&s<=i?{x:-a.width-l,y:0,...c}:s<o&&s>=i?{x:a.width+l,y:0,...c}:{x:0,y:0,...c}},h=e=>{let{rects:t,activeIndex:n,overIndex:r,index:o}=e;const i=s(t,r,n),a=t[o],l=i[o];return l&&a?{x:l.left-a.left,y:l.top-a.top,scaleX:l.width/a.width,scaleY:l.height/a.height}:null},d={scaleX:1,scaleY:1},f=e=>{var t;let{activeIndex:n,activeNodeRect:r,index:o,rects:i,overIndex:s}=e;const a=null!=(t=i[n])?t:r;if(!a)return null;if(o===n){const e=i[s];return e?{x:0,y:n<s?e.top+e.height-(a.top+a.height):e.top-a.top,...d}:null}const l=function(e,t,n){const r=e[t],o=e[t-1],i=e[t+1];return r?n<t?o?r.top-(o.top+o.height):i?i.top-(r.top+r.height):0:i?i.top-(r.top+r.height):o?r.top-(o.top+o.height):0:0}(i,o,n);return o>n&&o<=s?{x:0,y:-a.height-l,...d}:o<n&&o>=s?{x:0,y:a.height+l,...d}:{x:0,y:0,...d}},p="Sortable",m=r.createContext({activeIndex:-1,containerId:p,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:h,disabled:{draggable:!1,droppable:!1}});function g(e){let{children:t,id:n,items:s,strategy:l=h,disabled:c=!1}=e;const{active:u,dragOverlay:d,droppableRects:f,over:g,measureDroppableContainers:y}=(0,o.Cj)(),v=(0,i.Ld)(p,n),b=Boolean(null!==d.rect),w=(0,r.useMemo)((()=>s.map((e=>"object"==typeof e&&"id"in e?e.id:e))),[s]),x=null!=u,S=u?w.indexOf(u.id):-1,k=g?w.indexOf(g.id):-1,C=(0,r.useRef)(w),M=!function(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(w,C.current),O=-1!==k&&-1===S||M,E=function(e){return"boolean"==typeof e?{draggable:e,droppable:e}:e}(c);(0,i.LI)((()=>{M&&x&&y(w)}),[M,w,x,y]),(0,r.useEffect)((()=>{C.current=w}),[w]);const A=(0,r.useMemo)((()=>({activeIndex:S,containerId:v,disabled:E,disableTransforms:O,items:w,overIndex:k,useDragOverlay:b,sortedRects:a(w,f),strategy:l})),[S,v,E.draggable,E.droppable,O,w,k,f,b,l]);return r.createElement(m.Provider,{value:A},t)}const y=e=>{let{id:t,items:n,activeIndex:r,overIndex:o}=e;return s(n,r,o).indexOf(t)},v=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:o,items:i,newIndex:s,previousItems:a,previousContainerId:l,transition:c}=e;return!(!c||!r||a!==i&&o===s||!n&&(s===o||t!==l))},b={duration:200,easing:"ease"},w="transform",x=i.ux.Transition.toString({property:w,duration:0,easing:"linear"}),S={roleDescription:"sortable"};function k(e){let{animateLayoutChanges:t=v,attributes:n,disabled:s,data:a,getNewIndex:c=y,id:u,strategy:h,resizeObserverConfig:d,transition:f=b}=e;const{items:p,containerId:g,activeIndex:k,disabled:C,disableTransforms:M,sortedRects:O,overIndex:E,useDragOverlay:A,strategy:T}=(0,r.useContext)(m),D=function(e,t){var n,r;return"boolean"==typeof e?{draggable:e,droppable:!1}:{draggable:null!=(n=null==e?void 0:e.draggable)?n:t.draggable,droppable:null!=(r=null==e?void 0:e.droppable)?r:t.droppable}}(s,C),_=p.indexOf(u),R=(0,r.useMemo)((()=>({sortable:{containerId:g,index:_,items:p},...a})),[g,a,_,p]),N=(0,r.useMemo)((()=>p.slice(p.indexOf(u))),[p,u]),{rect:P,node:I,isOver:L,setNodeRef:j}=(0,o.Zj)({id:u,data:R,disabled:D.droppable,resizeObserverConfig:{updateMeasurementsFor:N,...d}}),{active:F,activatorEvent:B,activeNodeRect:z,attributes:$,setNodeRef:H,listeners:W,isDragging:U,over:V,setActivatorNodeRef:q,transform:K}=(0,o.O1)({id:u,data:R,attributes:{...S,...n},disabled:D.draggable}),Y=(0,i.HB)(j,H),G=Boolean(F),J=G&&!M&&l(k)&&l(E),Q=!A&&U,Z=Q&&J?K:null,X=J?null!=Z?Z:(null!=h?h:T)({rects:O,activeNodeRect:z,activeIndex:k,overIndex:E,index:_}):null,ee=l(k)&&l(E)?c({id:u,items:p,activeIndex:k,overIndex:E}):_,te=null==F?void 0:F.id,ne=(0,r.useRef)({activeId:te,items:p,newIndex:ee,containerId:g}),re=p!==ne.current.items,oe=t({active:F,containerId:g,isDragging:U,isSorting:G,id:u,index:_,items:p,newIndex:ne.current.newIndex,previousItems:ne.current.items,previousContainerId:ne.current.containerId,transition:f,wasDragging:null!=ne.current.activeId}),ie=function(e){let{disabled:t,index:n,node:s,rect:a}=e;const[l,c]=(0,r.useState)(null),u=(0,r.useRef)(n);return(0,i.LI)((()=>{if(!t&&n!==u.current&&s.current){const e=a.current;if(e){const t=(0,o.VK)(s.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&c(n)}}n!==u.current&&(u.current=n)}),[t,n,s,a]),(0,r.useEffect)((()=>{l&&c(null)}),[l]),l}({disabled:!oe,index:_,node:I,rect:P});return(0,r.useEffect)((()=>{G&&ne.current.newIndex!==ee&&(ne.current.newIndex=ee),g!==ne.current.containerId&&(ne.current.containerId=g),p!==ne.current.items&&(ne.current.items=p)}),[G,ee,g,p]),(0,r.useEffect)((()=>{if(te===ne.current.activeId)return;if(te&&!ne.current.activeId)return void(ne.current.activeId=te);const e=setTimeout((()=>{ne.current.activeId=te}),50);return()=>clearTimeout(e)}),[te]),{active:F,activeIndex:k,attributes:$,data:R,rect:P,index:_,newIndex:ee,items:p,isOver:L,isSorting:G,isDragging:U,listeners:W,node:I,overIndex:E,over:V,setNodeRef:Y,setActivatorNodeRef:q,setDroppableNodeRef:j,setDraggableNodeRef:H,transform:null!=ie?ie:X,transition:ie||re&&ne.current.newIndex===_?x:Q&&!(0,i.vd)(B)||!f?void 0:G||oe?i.ux.Transition.toString({...f,property:w}):void 0}}function C(e){if(!e)return!1;const t=e.data.current;return!!(t&&"sortable"in t&&"object"==typeof t.sortable&&"containerId"in t.sortable&&"items"in t.sortable&&"index"in t.sortable)}const M=[o.g4.Down,o.g4.Right,o.g4.Up,o.g4.Left],O=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:s,droppableContainers:a,over:l,scrollableAncestors:c}}=t;if(M.includes(e.code)){if(e.preventDefault(),!n||!r)return;const t=[];a.getEnabled().forEach((n=>{if(!n||null!=n&&n.disabled)return;const i=s.get(n.id);if(i)switch(e.code){case o.g4.Down:r.top<i.top&&t.push(n);break;case o.g4.Up:r.top>i.top&&t.push(n);break;case o.g4.Left:r.left>i.left&&t.push(n);break;case o.g4.Right:r.left<i.left&&t.push(n)}}));const d=(0,o.ey)({active:n,collisionRect:r,droppableRects:s,droppableContainers:t,pointerCoordinates:null});let f=(0,o._8)(d,"id");if(f===(null==l?void 0:l.id)&&d.length>1&&(f=d[1].id),null!=f){const e=a.get(n.id),t=a.get(f),l=t?s.get(t.id):null,d=null==t?void 0:t.node.current;if(d&&l&&e&&t){const n=(0,o.hI)(d).some(((e,t)=>c[t]!==e)),s=E(e,t),a=(h=t,!(!C(u=e)||!C(h))&&!!E(u,h)&&u.data.current.sortable.index<h.data.current.sortable.index),f=n||!s?{x:0,y:0}:{x:a?r.width-l.width:0,y:a?r.height-l.height:0},p={x:l.left,y:l.top};return f.x&&f.y?p:(0,i.$X)(p,f)}}}var u,h};function E(e,t){return!(!C(e)||!C(t))&&e.data.current.sortable.containerId===t.data.current.sortable.containerId}},4285:(e,t,n)=>{"use strict";n.d(t,{$X:()=>C,D9:()=>b,DC:()=>O,Ey:()=>g,FJ:()=>s,Gj:()=>y,HB:()=>o,IH:()=>k,Jj:()=>l,LI:()=>f,Ld:()=>x,Nq:()=>i,Re:()=>u,UG:()=>a,Yz:()=>m,qk:()=>c,r3:()=>d,so:()=>T,ux:()=>E,vZ:()=>h,vd:()=>M,wm:()=>v,zX:()=>p});var r=n(7294);function o(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,r.useMemo)((()=>e=>{t.forEach((t=>t(e)))}),t)}const i="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement;function s(e){const t=Object.prototype.toString.call(e);return"[object Window]"===t||"[object global]"===t}function a(e){return"nodeType"in e}function l(e){var t,n;return e?s(e)?e:a(e)&&null!=(t=null==(n=e.ownerDocument)?void 0:n.defaultView)?t:window:window}function c(e){const{Document:t}=l(e);return e instanceof t}function u(e){return!s(e)&&e instanceof l(e).HTMLElement}function h(e){return e instanceof l(e).SVGElement}function d(e){return e?s(e)?e.document:a(e)?c(e)?e:u(e)?e.ownerDocument:document:document:document}const f=i?r.useLayoutEffect:r.useEffect;function p(e){const t=(0,r.useRef)(e);return f((()=>{t.current=e})),(0,r.useCallback)((function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];return null==t.current?void 0:t.current(...n)}),[])}function m(){const e=(0,r.useRef)(null);return[(0,r.useCallback)(((t,n)=>{e.current=setInterval(t,n)}),[]),(0,r.useCallback)((()=>{null!==e.current&&(clearInterval(e.current),e.current=null)}),[])]}function g(e,t){void 0===t&&(t=[e]);const n=(0,r.useRef)(e);return f((()=>{n.current!==e&&(n.current=e)}),t),n}function y(e,t){const n=(0,r.useRef)();return(0,r.useMemo)((()=>{const t=e(n.current);return n.current=t,t}),[...t])}function v(e){const t=p(e),n=(0,r.useRef)(null),o=(0,r.useCallback)((e=>{e!==n.current&&(null==t||t(e,n.current)),n.current=e}),[]);return[n,o]}function b(e){const t=(0,r.useRef)();return(0,r.useEffect)((()=>{t.current=e}),[e]),t.current}let w={};function x(e,t){return(0,r.useMemo)((()=>{if(t)return t;const n=null==w[e]?0:w[e]+1;return w[e]=n,e+"-"+n}),[e,t])}function S(e){return function(t){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce(((t,n)=>{const r=Object.entries(n);for(const[n,o]of r){const r=t[n];null!=r&&(t[n]=r+e*o)}return t}),{...t})}}const k=S(1),C=S(-1);function M(e){if(!e)return!1;const{KeyboardEvent:t}=l(e.target);return t&&e instanceof t}function O(e){if(function(e){if(!e)return!1;const{TouchEvent:t}=l(e.target);return t&&e instanceof t}(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return function(e){return"clientX"in e&&"clientY"in e}(e)?{x:e.clientX,y:e.clientY}:null}const E=Object.freeze({Translate:{toString(e){if(!e)return;const{x:t,y:n}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(e){if(!e)return;const{scaleX:t,scaleY:n}=e;return"scaleX("+t+") scaleY("+n+")"}},Transform:{toString(e){if(e)return[E.Translate.toString(e),E.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:n,easing:r}=e;return t+" "+n+"ms "+r}}}),A="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function T(e){return e.matches(A)?e:e.querySelector(A)}},6194:(e,t,n)=>{"use strict";n.d(t,{Z:()=>m});var r=function(){function e(e){var t=this;this._insertTag=function(e){var n;n=0===t.tags.length?t.insertionPoint?t.insertionPoint.nextSibling:t.prepend?t.container.firstChild:t.before:t.tags[t.tags.length-1].nextSibling,t.container.insertBefore(e,n),t.tags.push(e)},this.isSpeedy=void 0===e.speedy||e.speedy,this.tags=[],this.ctr=0,this.nonce=e.nonce,this.key=e.key,this.container=e.container,this.prepend=e.prepend,this.insertionPoint=e.insertionPoint,this.before=null}var t=e.prototype;return t.hydrate=function(e){e.forEach(this._insertTag)},t.insert=function(e){this.ctr%(this.isSpeedy?65e3:1)==0&&this._insertTag(function(e){var t=document.createElement("style");return t.setAttribute("data-emotion",e.key),void 0!==e.nonce&&t.setAttribute("nonce",e.nonce),t.appendChild(document.createTextNode("")),t.setAttribute("data-s",""),t}(this));var t=this.tags[this.tags.length-1];if(this.isSpeedy){var n=function(e){if(e.sheet)return e.sheet;for(var t=0;t<document.styleSheets.length;t++)if(document.styleSheets[t].ownerNode===e)return document.styleSheets[t]}(t);try{n.insertRule(e,n.cssRules.length)}catch(e){}}else t.appendChild(document.createTextNode(e));this.ctr++},t.flush=function(){this.tags.forEach((function(e){return e.parentNode&&e.parentNode.removeChild(e)})),this.tags=[],this.ctr=0},e}(),o=n(6411),i=n(6686),s=n(7563),a=n(211),l=n(2190),c=function(e,t,n){for(var r=0,i=0;r=i,i=(0,o.fj)(),38===r&&12===i&&(t[n]=1),!(0,o.r)(i);)(0,o.lp)();return(0,o.tP)(e,o.FK)},u=new WeakMap,h=function(e){if("rule"===e.type&&e.parent&&!(e.length<1)){for(var t=e.value,n=e.parent,r=e.column===n.column&&e.line===n.line;"rule"!==n.type;)if(!(n=n.parent))return;if((1!==e.props.length||58===t.charCodeAt(0)||u.get(n))&&!r){u.set(e,!0);for(var s=[],a=function(e,t){return(0,o.cE)(function(e,t){var n=-1,r=44;do{switch((0,o.r)(r)){case 0:38===r&&12===(0,o.fj)()&&(t[n]=1),e[n]+=c(o.FK-1,t,n);break;case 2:e[n]+=(0,o.iF)(r);break;case 4:if(44===r){e[++n]=58===(0,o.fj)()?"&\f":"",t[n]=e[n].length;break}default:e[n]+=(0,i.Dp)(r)}}while(r=(0,o.lp)());return e}((0,o.un)(e),t))}(t,s),l=n.props,h=0,d=0;h<a.length;h++)for(var f=0;f<l.length;f++,d++)e.props[d]=s[h]?a[h].replace(/&\f/g,l[f]):l[f]+" "+a[h]}}},d=function(e){if("decl"===e.type){var t=e.value;108===t.charCodeAt(0)&&98===t.charCodeAt(2)&&(e.return="",e.value="")}};function f(e,t){switch((0,i.vp)(e,t)){case 5103:return s.G$+"print-"+e+e;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return s.G$+e+e;case 5349:case 4246:case 4810:case 6968:case 2756:return s.G$+e+s.uj+e+s.MS+e+e;case 6828:case 4268:return s.G$+e+s.MS+e+e;case 6165:return s.G$+e+s.MS+"flex-"+e+e;case 5187:return s.G$+e+(0,i.gx)(e,/(\w+).+(:[^]+)/,s.G$+"box-$1$2"+s.MS+"flex-$1$2")+e;case 5443:return s.G$+e+s.MS+"flex-item-"+(0,i.gx)(e,/flex-|-self/,"")+e;case 4675:return s.G$+e+s.MS+"flex-line-pack"+(0,i.gx)(e,/align-content|flex-|-self/,"")+e;case 5548:return s.G$+e+s.MS+(0,i.gx)(e,"shrink","negative")+e;case 5292:return s.G$+e+s.MS+(0,i.gx)(e,"basis","preferred-size")+e;case 6060:return s.G$+"box-"+(0,i.gx)(e,"-grow","")+s.G$+e+s.MS+(0,i.gx)(e,"grow","positive")+e;case 4554:return s.G$+(0,i.gx)(e,/([^-])(transform)/g,"$1"+s.G$+"$2")+e;case 6187:return(0,i.gx)((0,i.gx)((0,i.gx)(e,/(zoom-|grab)/,s.G$+"$1"),/(image-set)/,s.G$+"$1"),e,"")+e;case 5495:case 3959:return(0,i.gx)(e,/(image-set\([^]*)/,s.G$+"$1$`$1");case 4968:return(0,i.gx)((0,i.gx)(e,/(.+:)(flex-)?(.*)/,s.G$+"box-pack:$3"+s.MS+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+s.G$+e+e;case 4095:case 3583:case 4068:case 2532:return(0,i.gx)(e,/(.+)-inline(.+)/,s.G$+"$1$2")+e;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if((0,i.to)(e)-1-t>6)switch((0,i.uO)(e,t+1)){case 109:if(45!==(0,i.uO)(e,t+4))break;case 102:return(0,i.gx)(e,/(.+:)(.+)-([^]+)/,"$1"+s.G$+"$2-$3$1"+s.uj+(108==(0,i.uO)(e,t+3)?"$3":"$2-$3"))+e;case 115:return~(0,i.Cw)(e,"stretch")?f((0,i.gx)(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(115!==(0,i.uO)(e,t+1))break;case 6444:switch((0,i.uO)(e,(0,i.to)(e)-3-(~(0,i.Cw)(e,"!important")&&10))){case 107:return(0,i.gx)(e,":",":"+s.G$)+e;case 101:return(0,i.gx)(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+s.G$+(45===(0,i.uO)(e,14)?"inline-":"")+"box$3$1"+s.G$+"$2$3$1"+s.MS+"$2box$3")+e}break;case 5936:switch((0,i.uO)(e,t+11)){case 114:return s.G$+e+s.MS+(0,i.gx)(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return s.G$+e+s.MS+(0,i.gx)(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return s.G$+e+s.MS+(0,i.gx)(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return s.G$+e+s.MS+e+e}return e}var p=[function(e,t,n,r){if(e.length>-1&&!e.return)switch(e.type){case s.h5:e.return=f(e.value,e.length);break;case s.lK:return(0,a.q)([(0,o.JG)(e,{value:(0,i.gx)(e.value,"@","@"+s.G$)})],r);case s.Fr:if(e.length)return(0,i.$e)(e.props,(function(t){switch((0,i.EQ)(t,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return(0,a.q)([(0,o.JG)(e,{props:[(0,i.gx)(t,/:(read-\w+)/,":"+s.uj+"$1")]})],r);case"::placeholder":return(0,a.q)([(0,o.JG)(e,{props:[(0,i.gx)(t,/:(plac\w+)/,":"+s.G$+"input-$1")]}),(0,o.JG)(e,{props:[(0,i.gx)(t,/:(plac\w+)/,":"+s.uj+"$1")]}),(0,o.JG)(e,{props:[(0,i.gx)(t,/:(plac\w+)/,s.MS+"input-$1")]})],r)}return""}))}}];const m=function(e){var t=e.key;if("css"===t){var n=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(n,(function(e){-1!==e.getAttribute("data-emotion").indexOf(" ")&&(document.head.appendChild(e),e.setAttribute("data-s",""))}))}var o,s,c=e.stylisPlugins||p,u={},f=[];o=e.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+t+' "]'),(function(e){for(var t=e.getAttribute("data-emotion").split(" "),n=1;n<t.length;n++)u[t[n]]=!0;f.push(e)}));var m,g,y,v,b=[h,d],w=[a.P,(v=function(e){m.insert(e)},function(e){e.root||(e=e.return)&&v(e)})],x=(g=b.concat(c,w),y=(0,i.Ei)(g),function(e,t,n,r){for(var o="",i=0;i<y;i++)o+=g[i](e,t,n,r)||"";return o});s=function(e,t,n,r){var o;m=n,o=e?e+"{"+t.styles+"}":t.styles,(0,a.q)((0,l.MY)(o),x),r&&(S.inserted[t.name]=!0)};var S={key:t,sheet:new r({key:t,container:o,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:u,registered:{},insert:s};return S.sheet.hydrate(f),S}},2443:(e,t,n)=>{"use strict";n.d(t,{C:()=>u,E:()=>g,T:()=>d,c:()=>p,h:()=>l,w:()=>h});var r=n(7294),o=n(6194),i=n(444),s=n(8947),a=n(7278),l={}.hasOwnProperty,c=(0,r.createContext)("undefined"!=typeof HTMLElement?(0,o.Z)({key:"css"}):null),u=c.Provider,h=function(e){return(0,r.forwardRef)((function(t,n){var o=(0,r.useContext)(c);return e(t,o,n)}))},d=(0,r.createContext)({}),f="__EMOTION_TYPE_PLEASE_DO_NOT_USE__",p=function(e,t){var n={};for(var r in t)l.call(t,r)&&(n[r]=t[r]);return n[f]=e,n},m=function(e){var t=e.cache,n=e.serialized,r=e.isStringTag;return(0,i.hC)(t,n,r),(0,a.L)((function(){return(0,i.My)(t,n,r)})),null},g=h((function(e,t,n){var o=e.css;"string"==typeof o&&void 0!==t.registered[o]&&(o=t.registered[o]);var a=e[f],c=[o],u="";"string"==typeof e.className?u=(0,i.fp)(t.registered,c,e.className):null!=e.className&&(u=e.className+" ");var h=(0,s.O)(c,void 0,(0,r.useContext)(d));u+=t.key+"-"+h.name;var p={};for(var g in e)l.call(e,g)&&"css"!==g&&g!==f&&(p[g]=e[g]);return p.ref=n,p.className=u,(0,r.createElement)(r.Fragment,null,(0,r.createElement)(m,{cache:t,serialized:h,isStringTag:"string"==typeof a}),(0,r.createElement)(a,p))}))},917:(e,t,n)=>{"use strict";n.d(t,{F4:()=>h,az:()=>l,iv:()=>u,xB:()=>c});var r=n(7294),o=(n(6194),n(2443)),i=(n(8679),n(444)),s=n(8947),a=n(7278),l=function(e,t){var n=arguments;if(null==t||!o.h.call(t,"css"))return r.createElement.apply(void 0,n);var i=n.length,s=new Array(i);s[0]=o.E,s[1]=(0,o.c)(e,t);for(var a=2;a<i;a++)s[a]=n[a];return r.createElement.apply(null,s)},c=(0,o.w)((function(e,t){var n=e.styles,l=(0,s.O)([n],void 0,(0,r.useContext)(o.T)),c=(0,r.useRef)();return(0,a.j)((function(){var e=t.key+"-global",n=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy}),r=!1,o=document.querySelector('style[data-emotion="'+e+" "+l.name+'"]');return t.sheet.tags.length&&(n.before=t.sheet.tags[0]),null!==o&&(r=!0,o.setAttribute("data-emotion",e),n.hydrate([o])),c.current=[n,r],function(){n.flush()}}),[t]),(0,a.j)((function(){var e=c.current,n=e[0];if(e[1])e[1]=!1;else{if(void 0!==l.next&&(0,i.My)(t,l.next,!0),n.tags.length){var r=n.tags[n.tags.length-1].nextElementSibling;n.before=r,n.flush()}t.insert("",l,n,!1)}}),[t,l.name]),null}));function u(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return(0,s.O)(t)}var h=function(){var e=u.apply(void 0,arguments),t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}},5944:(e,t,n)=>{"use strict";n.d(t,{BX:()=>a,HY:()=>i,tZ:()=>s}),n(7294),n(6194);var r=n(2443),o=(n(8679),n(8947),n(7278),n(5893)),i=o.Fragment;function s(e,t,n){return r.h.call(t,"css")?(0,o.jsx)(r.E,(0,r.c)(e,t),n):(0,o.jsx)(e,t,n)}function a(e,t,n){return r.h.call(t,"css")?(0,o.jsxs)(r.E,(0,r.c)(e,t),n):(0,o.jsxs)(e,t,n)}},8947:(e,t,n)=>{"use strict";n.d(t,{O:()=>p});const r=function(e){for(var t,n=0,r=0,o=e.length;o>=4;++r,o-=4)t=1540483477*(65535&(t=255&e.charCodeAt(r)|(255&e.charCodeAt(++r))<<8|(255&e.charCodeAt(++r))<<16|(255&e.charCodeAt(++r))<<24))+(59797*(t>>>16)<<16),n=1540483477*(65535&(t^=t>>>24))+(59797*(t>>>16)<<16)^1540483477*(65535&n)+(59797*(n>>>16)<<16);switch(o){case 3:n^=(255&e.charCodeAt(r+2))<<16;case 2:n^=(255&e.charCodeAt(r+1))<<8;case 1:n=1540483477*(65535&(n^=255&e.charCodeAt(r)))+(59797*(n>>>16)<<16)}return(((n=1540483477*(65535&(n^=n>>>13))+(59797*(n>>>16)<<16))^n>>>15)>>>0).toString(36)},o={animationIterationCount:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};var i=/[A-Z]|^ms/g,s=/_EMO_([^_]+?)_([^]*?)_EMO_/g,a=function(e){return 45===e.charCodeAt(1)},l=function(e){return null!=e&&"boolean"!=typeof e},c=function(e){var t=Object.create(null);return function(e){return void 0===t[e]&&(t[e]=a(n=e)?n:n.replace(i,"-$&").toLowerCase()),t[e];var n}}(),u=function(e,t){switch(e){case"animation":case"animationName":if("string"==typeof t)return t.replace(s,(function(e,t,n){return d={name:t,styles:n,next:d},t}))}return 1===o[e]||a(e)||"number"!=typeof t||0===t?t:t+"px"};function h(e,t,n){if(null==n)return"";if(void 0!==n.__emotion_styles)return n;switch(typeof n){case"boolean":return"";case"object":if(1===n.anim)return d={name:n.name,styles:n.styles,next:d},n.name;if(void 0!==n.styles){var r=n.next;if(void 0!==r)for(;void 0!==r;)d={name:r.name,styles:r.styles,next:d},r=r.next;return n.styles+";"}return function(e,t,n){var r="";if(Array.isArray(n))for(var o=0;o<n.length;o++)r+=h(e,t,n[o])+";";else for(var i in n){var s=n[i];if("object"!=typeof s)null!=t&&void 0!==t[s]?r+=i+"{"+t[s]+"}":l(s)&&(r+=c(i)+":"+u(i,s)+";");else if(!Array.isArray(s)||"string"!=typeof s[0]||null!=t&&void 0!==t[s[0]]){var a=h(e,t,s);switch(i){case"animation":case"animationName":r+=c(i)+":"+a+";";break;default:r+=i+"{"+a+"}"}}else for(var d=0;d<s.length;d++)l(s[d])&&(r+=c(i)+":"+u(i,s[d])+";")}return r}(e,t,n);case"function":if(void 0!==e){var o=d,i=n(e);return d=o,h(e,t,i)}}if(null==t)return n;var s=t[n];return void 0!==s?s:n}var d,f=/label:\s*([^\s;\n{]+)\s*(;|$)/g,p=function(e,t,n){if(1===e.length&&"object"==typeof e[0]&&null!==e[0]&&void 0!==e[0].styles)return e[0];var o=!0,i="";d=void 0;var s=e[0];null==s||void 0===s.raw?(o=!1,i+=h(n,t,s)):i+=s[0];for(var a=1;a<e.length;a++)i+=h(n,t,e[a]),o&&(i+=s[a]);f.lastIndex=0;for(var l,c="";null!==(l=f.exec(i));)c+="-"+l[1];return{name:r(i)+c,styles:i,next:d}}},7278:(e,t,n)=>{"use strict";var r;n.d(t,{L:()=>s,j:()=>a});var o=n(7294),i=!!(r||(r=n.t(o,2))).useInsertionEffect&&(r||(r=n.t(o,2))).useInsertionEffect,s=i||function(e){return e()},a=i||o.useLayoutEffect},444:(e,t,n)=>{"use strict";function r(e,t,n){var r="";return n.split(" ").forEach((function(n){void 0!==e[n]?t.push(e[n]+";"):r+=n+" "})),r}n.d(t,{My:()=>i,fp:()=>r,hC:()=>o});var o=function(e,t,n){var r=e.key+"-"+t.name;!1===n&&void 0===e.registered[r]&&(e.registered[r]=t.styles)},i=function(e,t,n){o(e,t,n);var r=e.key+"-"+t.name;if(void 0===e.inserted[t.name]){var i=t;do{e.insert(t===i?"."+r:"",i,e.sheet,!0),i=i.next}while(void 0!==i)}}},8144:(e,t,n)=>{"use strict";n.d(t,{q:()=>zn,Z5:()=>be,q_:()=>bn,Yz:()=>wn});var r=b(),o=e=>m(e,r),i=b();o.write=e=>m(e,i);var s=b();o.onStart=e=>m(e,s);var a=b();o.onFrame=e=>m(e,a);var l=b();o.onFinish=e=>m(e,l);var c=[];o.setTimeout=(e,t)=>{let n=o.now()+t,r=()=>{let e=c.findIndex((e=>e.cancel==r));~e&&c.splice(e,1),f-=~e?1:0},i={time:n,handler:e,cancel:r};return c.splice(u(n),0,i),f+=1,g(),i};var u=e=>~(~c.findIndex((t=>t.time>e))||~c.length);o.cancel=e=>{s.delete(e),a.delete(e),l.delete(e),r.delete(e),i.delete(e)},o.sync=e=>{p=!0,o.batchedUpdates(e),p=!1},o.throttle=e=>{let t;function n(){try{e(...t)}finally{t=null}}function r(...e){t=e,o.onStart(n)}return r.handler=e,r.cancel=()=>{s.delete(n),t=null},r};var h=typeof window<"u"?window.requestAnimationFrame:()=>{};o.use=e=>h=e,o.now=typeof performance<"u"?()=>performance.now():Date.now,o.batchedUpdates=e=>e(),o.catch=console.error,o.frameLoop="always",o.advance=()=>{"demand"!==o.frameLoop?console.warn("Cannot call the manual advancement of rafz whilst frameLoop is not set as demand"):v()};var d=-1,f=0,p=!1;function m(e,t){p?(t.delete(e),e(0)):(t.add(e),g())}function g(){d<0&&(d=0,"demand"!==o.frameLoop&&h(y))}function y(){~d&&(h(y),o.batchedUpdates(v))}function v(){let e=d;d=o.now();let t=u(d);t&&(w(c.splice(0,t),(e=>e.handler())),f-=t),f?(s.flush(),r.flush(e?Math.min(64,d-e):16.667),a.flush(),i.flush(),l.flush()):d=-1}function b(){let e=new Set,t=e;return{add(n){f+=t!=e||e.has(n)?0:1,e.add(n)},delete:n=>(f-=t==e&&e.has(n)?1:0,e.delete(n)),flush(n){t.size&&(e=new Set,f-=t.size,w(t,(t=>t(n)&&e.add(t))),f+=e.size,t=e)}}}function w(e,t){e.forEach((e=>{try{t(e)}catch(e){o.catch(e)}}))}var x=n(7294),S=Object.defineProperty,k={};function C(){}((e,t)=>{for(var n in t)S(e,n,{get:t[n],enumerable:!0})})(k,{assign:()=>F,colors:()=>I,createStringInterpolator:()=>_,skipAnimation:()=>L,to:()=>R,willAdvance:()=>j});var M={arr:Array.isArray,obj:e=>!!e&&"Object"===e.constructor.name,fun:e=>"function"==typeof e,str:e=>"string"==typeof e,num:e=>"number"==typeof e,und:e=>void 0===e};function O(e,t){if(M.arr(e)){if(!M.arr(t)||e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}return e===t}var E=(e,t)=>e.forEach(t);function A(e,t,n){if(M.arr(e))for(let r=0;r<e.length;r++)t.call(n,e[r],`${r}`);else for(let r in e)e.hasOwnProperty(r)&&t.call(n,e[r],r)}var T=e=>M.und(e)?[]:M.arr(e)?e:[e];function D(e,t){if(e.size){let n=Array.from(e);e.clear(),E(n,t)}}var _,R,N=(e,...t)=>D(e,(e=>e(...t))),P=()=>typeof window>"u"||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent),I=null,L=!1,j=C,F=e=>{e.to&&(R=e.to),e.now&&(o.now=e.now),void 0!==e.colors&&(I=e.colors),null!=e.skipAnimation&&(L=e.skipAnimation),e.createStringInterpolator&&(_=e.createStringInterpolator),e.requestAnimationFrame&&o.use(e.requestAnimationFrame),e.batchedUpdates&&(o.batchedUpdates=e.batchedUpdates),e.willAdvance&&(j=e.willAdvance),e.frameLoop&&(o.frameLoop=e.frameLoop)},B=new Set,z=[],$=[],H=0,W={get idle(){return!B.size&&!z.length},start(e){H>e.priority?(B.add(e),o.onStart(U)):(V(e),o(K))},advance:K,sort(e){if(H)o.onFrame((()=>W.sort(e)));else{let t=z.indexOf(e);~t&&(z.splice(t,1),q(e))}},clear(){z=[],B.clear()}};function U(){B.forEach(V),B.clear(),o(K)}function V(e){z.includes(e)||q(e)}function q(e){z.splice(function(e,t){let n=e.findIndex(t);return n<0?e.length:n}(z,(t=>t.priority>e.priority)),0,e)}function K(e){let t=$;for(let n=0;n<z.length;n++){let r=z[n];H=r.priority,r.idle||(j(r),r.advance(e),r.idle||t.push(r))}return H=0,($=z).length=0,(z=t).length>0}var Y="[-+]?\\d*\\.?\\d+",G=Y+"%";function J(...e){return"\\(\\s*("+e.join(")\\s*,\\s*(")+")\\s*\\)"}var Q=new RegExp("rgb"+J(Y,Y,Y)),Z=new RegExp("rgba"+J(Y,Y,Y,Y)),X=new RegExp("hsl"+J(Y,G,G)),ee=new RegExp("hsla"+J(Y,G,G,Y)),te=/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,ne=/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,re=/^#([0-9a-fA-F]{6})$/,oe=/^#([0-9a-fA-F]{8})$/;function ie(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function se(e,t,n){let r=n<.5?n*(1+t):n+t-n*t,o=2*n-r,i=ie(o,r,e+1/3),s=ie(o,r,e),a=ie(o,r,e-1/3);return Math.round(255*i)<<24|Math.round(255*s)<<16|Math.round(255*a)<<8}function ae(e){let t=parseInt(e,10);return t<0?0:t>255?255:t}function le(e){return(parseFloat(e)%360+360)%360/360}function ce(e){let t=parseFloat(e);return t<0?0:t>1?255:Math.round(255*t)}function ue(e){let t=parseFloat(e);return t<0?0:t>100?1:t/100}function he(e){let t=function(e){let t;return"number"==typeof e?e>>>0===e&&e>=0&&e<=4294967295?e:null:(t=re.exec(e))?parseInt(t[1]+"ff",16)>>>0:I&&void 0!==I[e]?I[e]:(t=Q.exec(e))?(ae(t[1])<<24|ae(t[2])<<16|ae(t[3])<<8|255)>>>0:(t=Z.exec(e))?(ae(t[1])<<24|ae(t[2])<<16|ae(t[3])<<8|ce(t[4]))>>>0:(t=te.exec(e))?parseInt(t[1]+t[1]+t[2]+t[2]+t[3]+t[3]+"ff",16)>>>0:(t=oe.exec(e))?parseInt(t[1],16)>>>0:(t=ne.exec(e))?parseInt(t[1]+t[1]+t[2]+t[2]+t[3]+t[3]+t[4]+t[4],16)>>>0:(t=X.exec(e))?(255|se(le(t[1]),ue(t[2]),ue(t[3])))>>>0:(t=ee.exec(e))?(se(le(t[1]),ue(t[2]),ue(t[3]))|ce(t[4]))>>>0:null}(e);return null===t?e:(t=t||0,`rgba(${(4278190080&t)>>>24}, ${(16711680&t)>>>16}, ${(65280&t)>>>8}, ${(255&t)/255})`)}var de=(e,t,n)=>{if(M.fun(e))return e;if(M.arr(e))return de({range:e,output:t,extrapolate:n});if(M.str(e.output[0]))return _(e);let r=e,o=r.output,i=r.range||[0,1],s=r.extrapolateLeft||r.extrapolate||"extend",a=r.extrapolateRight||r.extrapolate||"extend",l=r.easing||(e=>e);return e=>{let t=function(e,t){for(var n=1;n<t.length-1&&!(t[n]>=e);++n);return n-1}(e,i);return function(e,t,n,r,o,i,s,a,l){let c=l?l(e):e;if(c<t){if("identity"===s)return c;"clamp"===s&&(c=t)}if(c>n){if("identity"===a)return c;"clamp"===a&&(c=n)}return r===o?r:t===n?e<=t?r:o:(t===-1/0?c=-c:n===1/0?c-=t:c=(c-t)/(n-t),c=i(c),r===-1/0?c=-c:o===1/0?c+=r:c=c*(o-r)+r,c)}(e,i[t],i[t+1],o[t],o[t+1],l,s,a,r.map)}},fe=1.70158,pe=1.525*fe,me=fe+1,ge=2*Math.PI/3,ye=2*Math.PI/4.5,ve=e=>e<1/2.75?7.5625*e*e:e<2/2.75?7.5625*(e-=1.5/2.75)*e+.75:e<2.5/2.75?7.5625*(e-=2.25/2.75)*e+.9375:7.5625*(e-=2.625/2.75)*e+.984375,be={linear:e=>e,easeInQuad:e=>e*e,easeOutQuad:e=>1-(1-e)*(1-e),easeInOutQuad:e=>e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2,easeInCubic:e=>e*e*e,easeOutCubic:e=>1-Math.pow(1-e,3),easeInOutCubic:e=>e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2,easeInQuart:e=>e*e*e*e,easeOutQuart:e=>1-Math.pow(1-e,4),easeInOutQuart:e=>e<.5?8*e*e*e*e:1-Math.pow(-2*e+2,4)/2,easeInQuint:e=>e*e*e*e*e,easeOutQuint:e=>1-Math.pow(1-e,5),easeInOutQuint:e=>e<.5?16*e*e*e*e*e:1-Math.pow(-2*e+2,5)/2,easeInSine:e=>1-Math.cos(e*Math.PI/2),easeOutSine:e=>Math.sin(e*Math.PI/2),easeInOutSine:e=>-(Math.cos(Math.PI*e)-1)/2,easeInExpo:e=>0===e?0:Math.pow(2,10*e-10),easeOutExpo:e=>1===e?1:1-Math.pow(2,-10*e),easeInOutExpo:e=>0===e?0:1===e?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2,easeInCirc:e=>1-Math.sqrt(1-Math.pow(e,2)),easeOutCirc:e=>Math.sqrt(1-Math.pow(e-1,2)),easeInOutCirc:e=>e<.5?(1-Math.sqrt(1-Math.pow(2*e,2)))/2:(Math.sqrt(1-Math.pow(-2*e+2,2))+1)/2,easeInBack:e=>me*e*e*e-fe*e*e,easeOutBack:e=>1+me*Math.pow(e-1,3)+fe*Math.pow(e-1,2),easeInOutBack:e=>e<.5?Math.pow(2*e,2)*(2*(pe+1)*e-pe)/2:(Math.pow(2*e-2,2)*((pe+1)*(2*e-2)+pe)+2)/2,easeInElastic:e=>0===e?0:1===e?1:-Math.pow(2,10*e-10)*Math.sin((10*e-10.75)*ge),easeOutElastic:e=>0===e?0:1===e?1:Math.pow(2,-10*e)*Math.sin((10*e-.75)*ge)+1,easeInOutElastic:e=>0===e?0:1===e?1:e<.5?-Math.pow(2,20*e-10)*Math.sin((20*e-11.125)*ye)/2:Math.pow(2,-20*e+10)*Math.sin((20*e-11.125)*ye)/2+1,easeInBounce:e=>1-ve(1-e),easeOutBounce:ve,easeInOutBounce:e=>e<.5?(1-ve(1-2*e))/2:(1+ve(2*e-1))/2,steps:(e,t="end")=>n=>{let r=(n="end"===t?Math.min(n,.999):Math.max(n,.001))*e;return((e,t,n)=>Math.min(Math.max(n,0),1))(0,0,("end"===t?Math.floor(r):Math.ceil(r))/e)}},we=Symbol.for("FluidValue.get"),xe=Symbol.for("FluidValue.observers"),Se=e=>!(!e||!e[we]),ke=e=>e&&e[we]?e[we]():e,Ce=e=>e[xe]||null;function Me(e,t){let n=e[xe];n&&n.forEach((e=>{!function(e,t){e.eventObserved?e.eventObserved(t):e(t)}(e,t)}))}var Oe=class{[we];[xe];constructor(e){if(!e&&!(e=this.get))throw Error("Unknown getter");Ee(this,e)}},Ee=(e,t)=>_e(e,we,t);function Ae(e,t){if(e[we]){let n=e[xe];n||_e(e,xe,n=new Set),n.has(t)||(n.add(t),e.observerAdded&&e.observerAdded(n.size,t))}return t}function Te(e,t){let n=e[xe];if(n&&n.has(t)){let r=n.size-1;r?n.delete(t):e[xe]=null,e.observerRemoved&&e.observerRemoved(r,t)}}var De,_e=(e,t,n)=>Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0}),Re=/[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,Ne=/(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi,Pe=new RegExp(`(${Re.source})(%|[a-z]+)`,"i"),Ie=/rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi,Le=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/,je=e=>{let[t,n]=Fe(e);if(!t||P())return e;let r=window.getComputedStyle(document.documentElement).getPropertyValue(t);return r?r.trim():n&&n.startsWith("--")?window.getComputedStyle(document.documentElement).getPropertyValue(n)||e:n&&Le.test(n)?je(n):n||e},Fe=e=>{let t=Le.exec(e);if(!t)return[,];let[,n,r]=t;return[n,r]},Be=(e,t,n,r,o)=>`rgba(${Math.round(t)}, ${Math.round(n)}, ${Math.round(r)}, ${o})`,ze=e=>{De||(De=I?new RegExp(`(${Object.keys(I).join("|")})(?!\\w)`,"g"):/^\b$/);let t=e.output.map((e=>ke(e).replace(Le,je).replace(Ne,he).replace(De,he))),n=t.map((e=>e.match(Re).map(Number))),r=n[0].map(((e,t)=>n.map((e=>{if(!(t in e))throw Error('The arity of each "output" value must be equal');return e[t]})))).map((t=>de({...e,output:t})));return e=>{let n=!Pe.test(t[0])&&t.find((e=>Pe.test(e)))?.replace(Re,""),o=0;return t[0].replace(Re,(()=>`${r[o++](e)}${n||""}`)).replace(Ie,Be)}},$e="react-spring: ",He=e=>{let t=e,n=!1;if("function"!=typeof t)throw new TypeError(`${$e}once requires a function parameter`);return(...e)=>{n||(t(...e),n=!0)}},We=He(console.warn),Ue=He(console.warn);function Ve(e){return M.str(e)&&("#"==e[0]||/\d/.test(e)||!P()&&Le.test(e)||e in(I||{}))}new WeakMap,new Set,new WeakMap,new WeakMap,new WeakMap;var qe=P()?x.useEffect:x.useLayoutEffect,Ke=()=>{let e=(0,x.useRef)(!1);return qe((()=>(e.current=!0,()=>{e.current=!1})),[]),e};function Ye(){let e=(0,x.useState)()[1],t=Ke();return()=>{t.current&&e(Math.random())}}var Ge=e=>(0,x.useEffect)(e,Je),Je=[];function Qe(e){let t=(0,x.useRef)();return(0,x.useEffect)((()=>{t.current=e})),t.current}var Ze=Symbol.for("Animated:node"),Xe=e=>e&&e[Ze],et=(e,t)=>((e,t,n)=>Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0}))(e,Ze,t),tt=e=>e&&e[Ze]&&e[Ze].getPayload(),nt=class{payload;constructor(){et(this,this)}getPayload(){return this.payload||[]}},rt=class extends nt{constructor(e){super(),this._value=e,M.num(this._value)&&(this.lastPosition=this._value)}done=!0;elapsedTime;lastPosition;lastVelocity;v0;durationProgress=0;static create(e){return new rt(e)}getPayload(){return[this]}getValue(){return this._value}setValue(e,t){return M.num(e)&&(this.lastPosition=e,t&&(e=Math.round(e/t)*t,this.done&&(this.lastPosition=e))),this._value!==e&&(this._value=e,!0)}reset(){let{done:e}=this;this.done=!1,M.num(this._value)&&(this.elapsedTime=0,this.durationProgress=0,this.lastPosition=this._value,e&&(this.lastVelocity=null),this.v0=null)}},ot=class extends rt{_string=null;_toString;constructor(e){super(0),this._toString=de({output:[e,e]})}static create(e){return new ot(e)}getValue(){return this._string??(this._string=this._toString(this._value))}setValue(e){if(M.str(e)){if(e==this._string)return!1;this._string=e,this._value=1}else{if(!super.setValue(e))return!1;this._string=null}return!0}reset(e){e&&(this._toString=de({output:[this.getValue(),e]})),this._value=0,super.reset()}},it={dependencies:null},st=class extends nt{constructor(e){super(),this.source=e,this.setValue(e)}getValue(e){let t={};return A(this.source,((n,r)=>{var o;(o=n)&&o[Ze]===o?t[r]=n.getValue(e):Se(n)?t[r]=ke(n):e||(t[r]=n)})),t}setValue(e){this.source=e,this.payload=this._makePayload(e)}reset(){this.payload&&E(this.payload,(e=>e.reset()))}_makePayload(e){if(e){let t=new Set;return A(e,this._addToPayload,t),Array.from(t)}}_addToPayload(e){it.dependencies&&Se(e)&&it.dependencies.add(e);let t=tt(e);t&&E(t,(e=>this.add(e)))}},at=class extends st{constructor(e){super(e)}static create(e){return new at(e)}getValue(){return this.source.map((e=>e.getValue()))}setValue(e){let t=this.getPayload();return e.length==t.length?t.map(((t,n)=>t.setValue(e[n]))).some(Boolean):(super.setValue(e.map(lt)),!0)}};function lt(e){return(Ve(e)?ot:rt).create(e)}function ct(e){let t=Xe(e);return t?t.constructor:M.arr(e)?at:Ve(e)?ot:rt}var ut=(e,t)=>{let n=!M.fun(e)||e.prototype&&e.prototype.isReactComponent;return(0,x.forwardRef)(((r,i)=>{let s=(0,x.useRef)(null),a=n&&(0,x.useCallback)((e=>{s.current=function(e,t){return e&&(M.fun(e)?e(t):e.current=t),t}(i,e)}),[i]),[l,c]=function(e,t){let n=new Set;return it.dependencies=n,e.style&&(e={...e,style:t.createAnimatedStyle(e.style)}),e=new st(e),it.dependencies=null,[e,n]}(r,t),u=Ye(),h=()=>{let e=s.current;n&&!e||!1===(!!e&&t.applyAnimatedValues(e,l.getValue(!0)))&&u()},d=new ht(h,c),f=(0,x.useRef)();qe((()=>(f.current=d,E(c,(e=>Ae(e,d))),()=>{f.current&&(E(f.current.deps,(e=>Te(e,f.current))),o.cancel(f.current.update))}))),(0,x.useEffect)(h,[]),Ge((()=>()=>{let e=f.current;E(e.deps,(t=>Te(t,e)))}));let p=t.getComponentProps(l.getValue());return x.createElement(e,{...p,ref:a})}))},ht=class{constructor(e,t){this.update=e,this.deps=t}eventObserved(e){"change"==e.type&&o.write(this.update)}},dt=Symbol.for("AnimatedComponent"),ft=e=>M.str(e)?e:e&&M.str(e.displayName)?e.displayName:M.fun(e)&&e.name||null;function pt(e,...t){return M.fun(e)?e(...t):e}var mt=(e,t)=>!0===e||!!(t&&e&&(M.fun(e)?e(t):T(e).includes(t))),gt=(e,t)=>M.obj(e)?t&&e[t]:e,yt=(e,t)=>!0===e.default?e[t]:e.default?e.default[t]:void 0,vt=e=>e,bt=(e,t=vt)=>{let n=wt;e.default&&!0!==e.default&&(e=e.default,n=Object.keys(e));let r={};for(let o of n){let n=t(e[o],o);M.und(n)||(r[o]=n)}return r},wt=["config","onProps","onStart","onChange","onPause","onResume","onRest"],xt={config:1,from:1,to:1,ref:1,loop:1,reset:1,pause:1,cancel:1,reverse:1,immediate:1,default:1,delay:1,onProps:1,onStart:1,onChange:1,onPause:1,onResume:1,onRest:1,onResolve:1,items:1,trail:1,sort:1,expires:1,initial:1,enter:1,update:1,leave:1,children:1,onDestroyed:1,keys:1,callId:1,parentId:1};function St(e){let t=function(e){let t={},n=0;if(A(e,((e,r)=>{xt[r]||(t[r]=e,n++)})),n)return t}(e);if(t){let n={to:t};return A(e,((e,r)=>r in t||(n[r]=e))),n}return{...e}}function kt(e){return e=ke(e),M.arr(e)?e.map(kt):Ve(e)?k.createStringInterpolator({range:[0,1],output:[e,e]})(1):e}function Ct(e){for(let t in e)return!0;return!1}function Mt(e){return M.fun(e)||M.arr(e)&&M.obj(e[0])}function Ot(e,t){e.ref?.delete(e),t?.delete(e)}function Et(e,t){t&&e.ref!==t&&(e.ref?.delete(e),t.add(e),e.ref=t)}var At={tension:170,friction:26,mass:1,damping:1,easing:be.linear,clamp:!1};function Tt(e,t){if(M.und(t.decay)){let n=!M.und(t.tension)||!M.und(t.friction);(n||!M.und(t.frequency)||!M.und(t.damping)||!M.und(t.mass))&&(e.duration=void 0,e.decay=void 0),n&&(e.frequency=void 0)}else e.duration=void 0}var Dt=[];function _t(e,{key:t,props:n,defaultProps:r,state:i,actions:s}){return new Promise(((a,l)=>{let c,u,h=mt(n.cancel??r?.cancel,t);if(h)p();else{M.und(n.pause)||(i.paused=mt(n.pause,t));let e=r?.pause;!0!==e&&(e=i.paused||mt(e,t)),c=pt(n.delay||0,t),e?(i.resumeQueue.add(f),s.pause()):(s.resume(),f())}function d(){i.resumeQueue.add(f),i.timeouts.delete(u),u.cancel(),c=u.time-o.now()}function f(){c>0&&!k.skipAnimation?(i.delayed=!0,u=o.setTimeout(p,c),i.pauseQueue.add(d),i.timeouts.add(u)):p()}function p(){i.delayed&&(i.delayed=!1),i.pauseQueue.delete(d),i.timeouts.delete(u),e<=(i.cancelId||0)&&(h=!0);try{s.start({...n,callId:e,cancel:h},a)}catch(e){l(e)}}}))}var Rt=(e,t)=>1==t.length?t[0]:t.some((e=>e.cancelled))?It(e.get()):t.every((e=>e.noop))?Nt(e.get()):Pt(e.get(),t.every((e=>e.finished))),Nt=e=>({value:e,noop:!0,finished:!0,cancelled:!1}),Pt=(e,t,n=!1)=>({value:e,finished:t,cancelled:n}),It=e=>({value:e,cancelled:!0,finished:!1});function Lt(e,t,n,r){let{callId:i,parentId:s,onRest:a}=t,{asyncTo:l,promise:c}=n;return s||e!==l||t.reset?n.promise=(async()=>{n.asyncId=i,n.asyncTo=e;let u,h,d,f=bt(t,((e,t)=>"onRest"===t?void 0:e)),p=new Promise(((e,t)=>(u=e,h=t))),m=e=>{let t=i<=(n.cancelId||0)&&It(r)||i!==n.asyncId&&Pt(r,!1);if(t)throw e.result=t,h(e),e},g=(e,t)=>{let o=new Ft,s=new Bt;return(async()=>{if(k.skipAnimation)throw jt(n),s.result=Pt(r,!1),h(s),s;m(o);let a=M.obj(e)?{...e}:{...t,to:e};a.parentId=i,A(f,((e,t)=>{M.und(a[t])&&(a[t]=e)}));let l=await r.start(a);return m(o),n.paused&&await new Promise((e=>{n.resumeQueue.add(e)})),l})()};if(k.skipAnimation)return jt(n),Pt(r,!1);try{let t;t=M.arr(e)?(async e=>{for(let t of e)await g(t)})(e):Promise.resolve(e(g,r.stop.bind(r))),await Promise.all([t.then(u),p]),d=Pt(r.get(),!0,!1)}catch(e){if(e instanceof Ft)d=e.result;else{if(!(e instanceof Bt))throw e;d=e.result}}finally{i==n.asyncId&&(n.asyncId=s,n.asyncTo=s?l:void 0,n.promise=s?c:void 0)}return M.fun(a)&&o.batchedUpdates((()=>{a(d,r,r.item)})),d})():c}function jt(e,t){D(e.timeouts,(e=>e.cancel())),e.pauseQueue.clear(),e.resumeQueue.clear(),e.asyncId=e.asyncTo=e.promise=void 0,t&&(e.cancelId=t)}var Ft=class extends Error{result;constructor(){super("An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.")}},Bt=class extends Error{result;constructor(){super("SkipAnimationSignal")}},zt=e=>e instanceof Ht,$t=1,Ht=class extends Oe{id=$t++;_priority=0;get priority(){return this._priority}set priority(e){this._priority!=e&&(this._priority=e,this._onPriorityChange(e))}get(){let e=Xe(this);return e&&e.getValue()}to(...e){return k.to(this,e)}interpolate(...e){return We(`${$e}The "interpolate" function is deprecated in v9 (use "to" instead)`),k.to(this,e)}toJSON(){return this.get()}observerAdded(e){1==e&&this._attach()}observerRemoved(e){0==e&&this._detach()}_attach(){}_detach(){}_onChange(e,t=!1){Me(this,{type:"change",parent:this,value:e,idle:t})}_onPriorityChange(e){this.idle||W.sort(this),Me(this,{type:"priority",parent:this,priority:e})}},Wt=Symbol.for("SpringPhase"),Ut=e=>(1&e[Wt])>0,Vt=e=>(2&e[Wt])>0,qt=e=>(4&e[Wt])>0,Kt=(e,t)=>t?e[Wt]|=3:e[Wt]&=-3,Yt=(e,t)=>t?e[Wt]|=4:e[Wt]&=-5,Gt=class extends Ht{key;animation=new class{changed=!1;values=Dt;toValues=null;fromValues=Dt;to;from;config=new class{tension;friction;frequency;damping;mass;velocity=0;restVelocity;precision;progress;duration;easing;clamp;bounce;decay;round;constructor(){Object.assign(this,At)}};immediate=!1};queue;defaultProps={};_state={paused:!1,delayed:!1,pauseQueue:new Set,resumeQueue:new Set,timeouts:new Set};_pendingCalls=new Set;_lastCallId=0;_lastToId=0;_memoizedDuration=0;constructor(e,t){if(super(),!M.und(e)||!M.und(t)){let n=M.obj(e)?{...e}:{...t,from:e};M.und(n.default)&&(n.default=!0),this.start(n)}}get idle(){return!(Vt(this)||this._state.asyncTo)||qt(this)}get goal(){return ke(this.animation.to)}get velocity(){let e=Xe(this);return e instanceof rt?e.lastVelocity||0:e.getPayload().map((e=>e.lastVelocity||0))}get hasAnimated(){return Ut(this)}get isAnimating(){return Vt(this)}get isPaused(){return qt(this)}get isDelayed(){return this._state.delayed}advance(e){let t=!0,n=!1,r=this.animation,{toValues:o}=r,{config:i}=r,s=tt(r.to);!s&&Se(r.to)&&(o=T(ke(r.to))),r.values.forEach(((a,l)=>{if(a.done)return;let c=a.constructor==ot?1:s?s[l].lastPosition:o[l],u=r.immediate,h=c;if(!u){if(h=a.lastPosition,i.tension<=0)return void(a.done=!0);let t,n=a.elapsedTime+=e,o=r.fromValues[l],s=null!=a.v0?a.v0:a.v0=M.arr(i.velocity)?i.velocity[l]:i.velocity,d=i.precision||(o==c?.005:Math.min(1,.001*Math.abs(c-o)));if(M.und(i.duration))if(i.decay){let e=!0===i.decay?.998:i.decay,r=Math.exp(-(1-e)*n);h=o+s/(1-e)*(1-r),u=Math.abs(a.lastPosition-h)<=d,t=s*r}else{t=null==a.lastVelocity?s:a.lastVelocity;let n,r=i.restVelocity||d/10,l=i.clamp?0:i.bounce,f=!M.und(l),p=o==c?a.v0>0:o<c,m=!1,g=1,y=Math.ceil(e/g);for(let e=0;e<y&&(n=Math.abs(t)>r,n||(u=Math.abs(c-h)<=d,!u));++e)f&&(m=h==c||h>c==p,m&&(t=-t*l,h=c)),t+=(1e-6*-i.tension*(h-c)+.001*-i.friction*t)/i.mass*g,h+=t*g}else{let r=1;i.duration>0&&(this._memoizedDuration!==i.duration&&(this._memoizedDuration=i.duration,a.durationProgress>0&&(a.elapsedTime=i.duration*a.durationProgress,n=a.elapsedTime+=e)),r=(i.progress||0)+n/this._memoizedDuration,r=r>1?1:r<0?0:r,a.durationProgress=r),h=o+i.easing(r)*(c-o),t=(h-a.lastPosition)/e,u=1==r}a.lastVelocity=t,Number.isNaN(h)&&(console.warn("Got NaN while animating:",this),u=!0)}s&&!s[l].done&&(u=!1),u?a.done=!0:t=!1,a.setValue(h,i.round)&&(n=!0)}));let a=Xe(this),l=a.getValue();if(t){let e=ke(r.to);l===e&&!n||i.decay?n&&i.decay&&this._onChange(l):(a.setValue(e),this._onChange(e)),this._stop()}else n&&this._onChange(l)}set(e){return o.batchedUpdates((()=>{this._stop(),this._focus(e),this._set(e)})),this}pause(){this._update({pause:!0})}resume(){this._update({pause:!1})}finish(){if(Vt(this)){let{to:e,config:t}=this.animation;o.batchedUpdates((()=>{this._onStart(),t.decay||this._set(e,!1),this._stop()}))}return this}update(e){return(this.queue||(this.queue=[])).push(e),this}start(e,t){let n;return M.und(e)?(n=this.queue||[],this.queue=[]):n=[M.obj(e)?e:{...t,to:e}],Promise.all(n.map((e=>this._update(e)))).then((e=>Rt(this,e)))}stop(e){let{to:t}=this.animation;return this._focus(this.get()),jt(this._state,e&&this._lastCallId),o.batchedUpdates((()=>this._stop(t,e))),this}reset(){this._update({reset:!0})}eventObserved(e){"change"==e.type?this._start():"priority"==e.type&&(this.priority=e.priority+1)}_prepareNode(e){let t=this.key||"",{to:n,from:r}=e;n=M.obj(n)?n[t]:n,(null==n||Mt(n))&&(n=void 0),r=M.obj(r)?r[t]:r,null==r&&(r=void 0);let o={to:n,from:r};return Ut(this)||(e.reverse&&([n,r]=[r,n]),r=ke(r),M.und(r)?Xe(this)||this._set(n):this._set(r)),o}_update({...e},t){let{key:n,defaultProps:r}=this;e.default&&Object.assign(r,bt(e,((e,t)=>/^on/.test(t)?gt(e,n):e))),nn(this,e,"onProps"),rn(this,"onProps",e,this);let o=this._prepareNode(e);if(Object.isFrozen(this))throw Error("Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?");let i=this._state;return _t(++this._lastCallId,{key:n,props:e,defaultProps:r,state:i,actions:{pause:()=>{qt(this)||(Yt(this,!0),N(i.pauseQueue),rn(this,"onPause",Pt(this,Jt(this,this.animation.to)),this))},resume:()=>{qt(this)&&(Yt(this,!1),Vt(this)&&this._resume(),N(i.resumeQueue),rn(this,"onResume",Pt(this,Jt(this,this.animation.to)),this))},start:this._merge.bind(this,o)}}).then((n=>{if(e.loop&&n.finished&&(!t||!n.noop)){let t=Qt(e);if(t)return this._update(t,!0)}return n}))}_merge(e,t,n){if(t.cancel)return this.stop(!0),n(It(this));let r=!M.und(e.to),i=!M.und(e.from);if(r||i){if(!(t.callId>this._lastToId))return n(It(this));this._lastToId=t.callId}let{key:s,defaultProps:a,animation:l}=this,{to:c,from:u}=l,{to:h=c,from:d=u}=e;i&&!r&&(!t.default||M.und(h))&&(h=d),t.reverse&&([h,d]=[d,h]);let f=!O(d,u);f&&(l.from=d),d=ke(d);let p=!O(h,c);p&&this._focus(h);let m=Mt(t.to),{config:g}=l,{decay:y,velocity:v}=g;(r||i)&&(g.velocity=0),t.config&&!m&&function(e,t,n){n&&(Tt(n={...n},t),t={...n,...t}),Tt(e,t),Object.assign(e,t);for(let t in At)null==e[t]&&(e[t]=At[t]);let{frequency:r,damping:o}=e,{mass:i}=e;M.und(r)||(r<.01&&(r=.01),o<0&&(o=0),e.tension=Math.pow(2*Math.PI/r,2)*i,e.friction=4*Math.PI*o*i/r)}(g,pt(t.config,s),t.config!==a.config?pt(a.config,s):void 0);let b=Xe(this);if(!b||M.und(h))return n(Pt(this,!0));let w=M.und(t.reset)?i&&!t.default:!M.und(d)&&mt(t.reset,s),x=w?d:this.get(),S=kt(h),k=M.num(S)||M.arr(S)||Ve(S),C=!m&&(!k||mt(a.immediate||t.immediate,s));if(p){let e=ct(h);if(e!==b.constructor){if(!C)throw Error(`Cannot animate between ${b.constructor.name} and ${e.name}, as the "to" prop suggests`);b=this._set(S)}}let A=b.constructor,D=Se(h),_=!1;if(!D){let e=w||!Ut(this)&&f;(p||e)&&(_=O(kt(x),S),D=!_),(!O(l.immediate,C)&&!C||!O(g.decay,y)||!O(g.velocity,v))&&(D=!0)}if(_&&Vt(this)&&(l.changed&&!w?D=!0:D||this._stop(c)),!m&&((D||Se(c))&&(l.values=b.getPayload(),l.toValues=Se(h)?null:A==ot?[1]:T(S)),l.immediate!=C&&(l.immediate=C,!C&&!w&&this._set(c)),D)){let{onRest:e}=l;E(tn,(e=>nn(this,t,e)));let r=Pt(this,Jt(this,c));N(this._pendingCalls,r),this._pendingCalls.add(n),l.changed&&o.batchedUpdates((()=>{l.changed=!w,e?.(r,this),w?pt(a.onRest,r):l.onStart?.(r,this)}))}w&&this._set(x),m?n(Lt(t.to,t,this._state,this)):D?this._start():Vt(this)&&!p?this._pendingCalls.add(n):n(Nt(x))}_focus(e){let t=this.animation;e!==t.to&&(Ce(this)&&this._detach(),t.to=e,Ce(this)&&this._attach())}_attach(){let e=0,{to:t}=this.animation;Se(t)&&(Ae(t,this),zt(t)&&(e=t.priority+1)),this.priority=e}_detach(){let{to:e}=this.animation;Se(e)&&Te(e,this)}_set(e,t=!0){let n=ke(e);if(!M.und(n)){let e=Xe(this);if(!e||!O(n,e.getValue())){let r=ct(n);e&&e.constructor==r?e.setValue(n):et(this,r.create(n)),e&&o.batchedUpdates((()=>{this._onChange(n,t)}))}}return Xe(this)}_onStart(){let e=this.animation;e.changed||(e.changed=!0,rn(this,"onStart",Pt(this,Jt(this,e.to)),this))}_onChange(e,t){t||(this._onStart(),pt(this.animation.onChange,e,this)),pt(this.defaultProps.onChange,e,this),super._onChange(e,t)}_start(){let e=this.animation;Xe(this).reset(ke(e.to)),e.immediate||(e.fromValues=e.values.map((e=>e.lastPosition))),Vt(this)||(Kt(this,!0),qt(this)||this._resume())}_resume(){k.skipAnimation?this.finish():W.start(this)}_stop(e,t){if(Vt(this)){Kt(this,!1);let n=this.animation;E(n.values,(e=>{e.done=!0})),n.toValues&&(n.onChange=n.onPause=n.onResume=void 0),Me(this,{type:"idle",parent:this});let r=t?It(this.get()):Pt(this.get(),Jt(this,e??n.to));N(this._pendingCalls,r),n.changed&&(n.changed=!1,rn(this,"onRest",r,this))}}};function Jt(e,t){let n=kt(t);return O(kt(e.get()),n)}function Qt(e,t=e.loop,n=e.to){let r=pt(t);if(r){let o=!0!==r&&St(r),i=(o||e).reverse,s=!o||o.reset;return Zt({...e,loop:t,default:!1,pause:void 0,to:!i||Mt(n)?n:void 0,from:s?e.from:void 0,reset:s,...o})}}function Zt(e){let{to:t,from:n}=e=St(e),r=new Set;return M.obj(t)&&en(t,r),M.obj(n)&&en(n,r),e.keys=r.size?Array.from(r):null,e}function Xt(e){let t=Zt(e);return M.und(t.default)&&(t.default=bt(t)),t}function en(e,t){A(e,((e,n)=>null!=e&&t.add(n)))}var tn=["onStart","onRest","onChange","onPause","onResume"];function nn(e,t,n){e.animation[n]=t[n]!==yt(t,n)?gt(t[n],e.key):void 0}function rn(e,t,...n){e.animation[t]?.(...n),e.defaultProps[t]?.(...n)}var on=["onStart","onChange","onRest"],sn=1,an=class{id=sn++;springs={};queue=[];ref;_flush;_initialProps;_lastAsyncId=0;_active=new Set;_changed=new Set;_started=!1;_item;_state={paused:!1,pauseQueue:new Set,resumeQueue:new Set,timeouts:new Set};_events={onStart:new Map,onChange:new Map,onRest:new Map};constructor(e,t){this._onFrame=this._onFrame.bind(this),t&&(this._flush=t),e&&this.start({default:!0,...e})}get idle(){return!this._state.asyncTo&&Object.values(this.springs).every((e=>e.idle&&!e.isDelayed&&!e.isPaused))}get item(){return this._item}set item(e){this._item=e}get(){let e={};return this.each(((t,n)=>e[n]=t.get())),e}set(e){for(let t in e){let n=e[t];M.und(n)||this.springs[t].set(n)}}update(e){return e&&this.queue.push(Zt(e)),this}start(e){let{queue:t}=this;return e?t=T(e).map(Zt):this.queue=[],this._flush?this._flush(this,t):(pn(this,t),ln(this,t))}stop(e,t){if(e!==!!e&&(t=e),t){let n=this.springs;E(T(t),(t=>n[t].stop(!!e)))}else jt(this._state,this._lastAsyncId),this.each((t=>t.stop(!!e)));return this}pause(e){if(M.und(e))this.start({pause:!0});else{let t=this.springs;E(T(e),(e=>t[e].pause()))}return this}resume(e){if(M.und(e))this.start({pause:!1});else{let t=this.springs;E(T(e),(e=>t[e].resume()))}return this}each(e){A(this.springs,e)}_onFrame(){let{onStart:e,onChange:t,onRest:n}=this._events,r=this._active.size>0,o=this._changed.size>0;(r&&!this._started||o&&!this._started)&&(this._started=!0,D(e,(([e,t])=>{t.value=this.get(),e(t,this,this._item)})));let i=!r&&this._started,s=o||i&&n.size?this.get():null;o&&t.size&&D(t,(([e,t])=>{t.value=s,e(t,this,this._item)})),i&&(this._started=!1,D(n,(([e,t])=>{t.value=s,e(t,this,this._item)})))}eventObserved(e){if("change"==e.type)this._changed.add(e.parent),e.idle||this._active.add(e.parent);else{if("idle"!=e.type)return;this._active.delete(e.parent)}o.onFrame(this._onFrame)}};function ln(e,t){return Promise.all(t.map((t=>cn(e,t)))).then((t=>Rt(e,t)))}async function cn(e,t,n){let{keys:r,to:i,from:s,loop:a,onRest:l,onResolve:c}=t,u=M.obj(t.default)&&t.default;a&&(t.loop=!1),!1===i&&(t.to=null),!1===s&&(t.from=null);let h=M.arr(i)||M.fun(i)?i:void 0;h?(t.to=void 0,t.onRest=void 0,u&&(u.onRest=void 0)):E(on,(n=>{let r=t[n];if(M.fun(r)){let o=e._events[n];t[n]=({finished:e,cancelled:t})=>{let n=o.get(r);n?(e||(n.finished=!1),t&&(n.cancelled=!0)):o.set(r,{value:null,finished:e||!1,cancelled:t||!1})},u&&(u[n]=t[n])}}));let d=e._state;t.pause===!d.paused?(d.paused=t.pause,N(t.pause?d.pauseQueue:d.resumeQueue)):d.paused&&(t.pause=!0);let f=(r||Object.keys(e.springs)).map((n=>e.springs[n].start(t))),p=!0===t.cancel||!0===yt(t,"cancel");(h||p&&d.asyncId)&&f.push(_t(++e._lastAsyncId,{props:t,state:d,actions:{pause:C,resume:C,start(t,n){p?(jt(d,e._lastAsyncId),n(It(e))):(t.onRest=l,n(Lt(h,t,d,e)))}}})),d.paused&&await new Promise((e=>{d.resumeQueue.add(e)}));let m=Rt(e,await Promise.all(f));if(a&&m.finished&&(!n||!m.noop)){let n=Qt(t,a,i);if(n)return pn(e,[n]),cn(e,n,!0)}return c&&o.batchedUpdates((()=>c(m,e,e.item))),m}function un(e,t){let n={...e.springs};return t&&E(T(t),(e=>{M.und(e.keys)&&(e=Zt(e)),M.obj(e.to)||(e={...e,to:void 0}),fn(n,e,(e=>dn(e)))})),hn(e,n),n}function hn(e,t){A(t,((t,n)=>{e.springs[n]||(e.springs[n]=t,Ae(t,e))}))}function dn(e,t){let n=new Gt;return n.key=e,t&&Ae(n,t),n}function fn(e,t,n){t.keys&&E(t.keys,(r=>{(e[r]||(e[r]=n(r)))._prepareNode(t)}))}function pn(e,t){E(t,(t=>{fn(e.springs,t,(t=>dn(t,e)))}))}var mn,gn=({children:e,...t})=>{let n=(0,x.useContext)(yn),r=t.pause||!!n.pause,o=t.immediate||!!n.immediate;t=function(e,t){let[n]=(0,x.useState)((()=>({inputs:t,result:e()}))),r=(0,x.useRef)(),o=r.current,i=o;return i?t&&i.inputs&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(t,i.inputs)||(i={inputs:t,result:e()}):i=n,(0,x.useEffect)((()=>{r.current=i,o==n&&(n.inputs=n.result=void 0)}),[i]),i.result}((()=>({pause:r,immediate:o})),[r,o]);let{Provider:i}=yn;return x.createElement(i,{value:t},e)},yn=(mn=gn,Object.assign(mn,x.createContext({})),mn.Provider._context=mn,mn.Consumer._context=mn,mn);gn.Provider=yn.Provider,gn.Consumer=yn.Consumer;var vn=()=>{let e=[],t=function(t){Ue(`${$e}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions`);let r=[];return E(e,((e,o)=>{if(M.und(t))r.push(e.start());else{let i=n(t,e,o);i&&r.push(e.start(i))}})),r};t.current=e,t.add=function(t){e.includes(t)||e.push(t)},t.delete=function(t){let n=e.indexOf(t);~n&&e.splice(n,1)},t.pause=function(){return E(e,(e=>e.pause(...arguments))),this},t.resume=function(){return E(e,(e=>e.resume(...arguments))),this},t.set=function(t){E(e,((e,n)=>{let r=M.fun(t)?t(n,e):t;r&&e.set(r)}))},t.start=function(t){let n=[];return E(e,((e,r)=>{if(M.und(t))n.push(e.start());else{let o=this._getProps(t,e,r);o&&n.push(e.start(o))}})),n},t.stop=function(){return E(e,(e=>e.stop(...arguments))),this},t.update=function(t){return E(e,((e,n)=>e.update(this._getProps(t,e,n)))),this};let n=function(e,t,n){return M.fun(e)?e(n,t):e};return t._getProps=n,t};function bn(e,t){let n=M.fun(e),[[r],o]=function(e,t,n){let r=M.fun(t)&&t;r&&!n&&(n=[]);let o=(0,x.useMemo)((()=>r||3==arguments.length?vn():void 0),[]),i=(0,x.useRef)(0),s=Ye(),a=(0,x.useMemo)((()=>({ctrls:[],queue:[],flush(e,t){let n=un(e,t);return i.current>0&&!a.queue.length&&!Object.keys(n).some((t=>!e.springs[t]))?ln(e,t):new Promise((r=>{hn(e,n),a.queue.push((()=>{r(ln(e,t))})),s()}))}})),[]),l=(0,x.useRef)([...a.ctrls]),c=[],u=Qe(e)||0;function h(e,n){for(let o=e;o<n;o++){let e=l.current[o]||(l.current[o]=new an(null,a.flush)),n=r?r(o,e):t[o];n&&(c[o]=Xt(n))}}(0,x.useMemo)((()=>{E(l.current.slice(e,u),(e=>{Ot(e,o),e.stop(!0)})),l.current.length=e,h(u,e)}),[e]),(0,x.useMemo)((()=>{h(0,Math.min(u,e))}),n);let d=l.current.map(((e,t)=>un(e,c[t]))),f=(0,x.useContext)(gn),p=Qe(f),m=f!==p&&Ct(f);qe((()=>{i.current++,a.ctrls=l.current;let{queue:e}=a;e.length&&(a.queue=[],E(e,(e=>e()))),E(l.current,((e,t)=>{o?.add(e),m&&e.start({default:f});let n=c[t];n&&(Et(e,n.ref),e.ref?e.queue.push(n):e.start(n))}))})),Ge((()=>()=>{E(a.ctrls,(e=>e.stop(!0)))}));let g=d.map((e=>({...e})));return o?[g,o]:g}(1,n?e:[e],n?t||[]:t);return n||2==arguments.length?[r,o]:r}function wn(e,t,n){let r=M.fun(t)&&t,{reset:o,sort:i,trail:s=0,expires:a=!0,exitBeforeEnter:l=!1,onDestroyed:c,ref:u,config:h}=r?r():t,d=(0,x.useMemo)((()=>r||3==arguments.length?vn():void 0),[]),f=T(e),p=[],m=(0,x.useRef)(null),g=o?null:m.current;qe((()=>{m.current=p})),Ge((()=>(E(p,(e=>{d?.add(e.ctrl),e.ctrl.ref=d})),()=>{E(m.current,(e=>{e.expired&&clearTimeout(e.expirationId),Ot(e.ctrl,d),e.ctrl.stop(!0)}))})));let y=function(e,{key:t,keys:n=t},r){if(null===n){let t=new Set;return e.map((e=>{let n=r&&r.find((n=>n.item===e&&"leave"!==n.phase&&!t.has(n)));return n?(t.add(n),n.key):xn++}))}return M.und(n)?e:M.fun(n)?e.map(n):T(n)}(f,r?r():t,g),v=o&&m.current||[];qe((()=>E(v,(({ctrl:e,item:t,key:n})=>{Ot(e,d),pt(c,t,n)}))));let b=[];if(g&&E(g,((e,t)=>{e.expired?(clearTimeout(e.expirationId),v.push(e)):~(t=b[t]=y.indexOf(e.key))&&(p[t]=e)})),E(f,((e,t)=>{p[t]||(p[t]={key:y[t],item:e,phase:"mount",ctrl:new an},p[t].ctrl.item=e)})),b.length){let e=-1,{leave:n}=r?r():t;E(b,((t,r)=>{let o=g[r];~t?(e=p.indexOf(o),p[e]={...o,item:f[t]}):n&&p.splice(++e,0,o)}))}M.fun(i)&&p.sort(((e,t)=>i(e.item,t.item)));let w=-s,S=Ye(),k=bt(t),C=new Map,O=(0,x.useRef)(new Map),A=(0,x.useRef)(!1);E(p,((e,n)=>{let o,i,c=e.key,d=e.phase,f=r?r():t,p=pt(f.delay||0,c);if("mount"==d)o=f.enter,i="enter";else{let e=y.indexOf(c)<0;if("leave"!=d)if(e)o=f.leave,i="leave";else{if(!(o=f.update))return;i="update"}else{if(e)return;o=f.enter,i="enter"}}if(o=pt(o,e.item,n),o=M.obj(o)?St(o):{to:o},!o.config){let t=h||k.config;o.config=pt(t,e.item,n,i)}w+=s;let v={...k,delay:p+w,ref:u,immediate:f.immediate,reset:!1,...o};if("enter"==i&&M.und(v.from)){let o=r?r():t,i=M.und(o.initial)||g?o.from:o.initial;v.from=pt(i,e.item,n)}let{onResolve:b}=v;v.onResolve=e=>{pt(b,e);let t=m.current,n=t.find((e=>e.key===c));if(n&&(!e.cancelled||"update"==n.phase)&&n.ctrl.idle){let e=t.every((e=>e.ctrl.idle));if("leave"==n.phase){let t=pt(a,n.item);if(!1!==t){let r=!0===t?0:t;if(n.expired=!0,!e&&r>0)return void(r<=2147483647&&(n.expirationId=setTimeout(S,r)))}}e&&t.some((e=>e.expired))&&(O.current.delete(n),l&&(A.current=!0),S())}};let x=un(e.ctrl,v);"leave"===i&&l?O.current.set(e,{phase:i,springs:x,payload:v}):C.set(e,{phase:i,springs:x,payload:v})}));let D=(0,x.useContext)(gn),_=Qe(D),R=D!==_&&Ct(D);qe((()=>{R&&E(p,(e=>{e.ctrl.start({default:D})}))}),[D]),E(C,((e,t)=>{if(O.current.size){let e=p.findIndex((e=>e.key===t.key));p.splice(e,1)}})),qe((()=>{E(O.current.size?O.current:C,(({phase:e,payload:t},n)=>{let{ctrl:r}=n;n.phase=e,d?.add(r),R&&"enter"==e&&r.start({default:D}),t&&(Et(r,t.ref),!r.ref&&!d||A.current?(r.start(t),A.current&&(A.current=!1)):r.update(t))}))}),o?void 0:n);let N=e=>x.createElement(x.Fragment,null,p.map(((t,n)=>{let{springs:r}=C.get(t)||t.ctrl,o=e({...r},t.item,t,n);return o&&o.type?x.createElement(o.type,{...o.props,key:M.str(t.key)||M.num(t.key)?t.key:t.ctrl.id,ref:o.ref}):o})));return d?[N,d]:N}var xn=1,Sn=class extends Ht{constructor(e,t){super(),this.source=e,this.calc=de(...t);let n=this._get(),r=ct(n);et(this,r.create(n))}key;idle=!0;calc;_active=new Set;advance(e){let t=this._get();O(t,this.get())||(Xe(this).setValue(t),this._onChange(t,this.idle)),!this.idle&&Cn(this._active)&&Mn(this)}_get(){let e=M.arr(this.source)?this.source.map(ke):T(ke(this.source));return this.calc(...e)}_start(){this.idle&&!Cn(this._active)&&(this.idle=!1,E(tt(this),(e=>{e.done=!1})),k.skipAnimation?(o.batchedUpdates((()=>this.advance())),Mn(this)):W.start(this))}_attach(){let e=1;E(T(this.source),(t=>{Se(t)&&Ae(t,this),zt(t)&&(t.idle||this._active.add(t),e=Math.max(e,t.priority+1))})),this.priority=e,this._start()}_detach(){E(T(this.source),(e=>{Se(e)&&Te(e,this)})),this._active.clear(),Mn(this)}eventObserved(e){"change"==e.type?e.idle?this.advance():(this._active.add(e.parent),this._start()):"idle"==e.type?this._active.delete(e.parent):"priority"==e.type&&(this.priority=T(this.source).reduce(((e,t)=>Math.max(e,(zt(t)?t.priority:0)+1)),0))}};function kn(e){return!1!==e.idle}function Cn(e){return!e.size||Array.from(e).every(kn)}function Mn(e){e.idle||(e.idle=!0,E(tt(e),(e=>{e.done=!0})),Me(e,{type:"idle",parent:e}))}k.assign({createStringInterpolator:ze,to:(e,t)=>new Sn(e,t)}),W.advance;var On=n(3935),En=/^--/;function An(e,t){return null==t||"boolean"==typeof t||""===t?"":"number"!=typeof t||0===t||En.test(e)||Dn.hasOwnProperty(e)&&Dn[e]?(""+t).trim():t+"px"}var Tn={},Dn={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},_n=["Webkit","Ms","Moz","O"];Dn=Object.keys(Dn).reduce(((e,t)=>(_n.forEach((n=>e[((e,t)=>e+t.charAt(0).toUpperCase()+t.substring(1))(n,t)]=e[t])),e)),Dn);var Rn=/^(matrix|translate|scale|rotate|skew)/,Nn=/^(translate)/,Pn=/^(rotate|skew)/,In=(e,t)=>M.num(e)&&0!==e?e+t:e,Ln=(e,t)=>M.arr(e)?e.every((e=>Ln(e,t))):M.num(e)?e===t:parseFloat(e)===t,jn=class extends st{constructor({x:e,y:t,z:n,...r}){let o=[],i=[];(e||t||n)&&(o.push([e||0,t||0,n||0]),i.push((e=>[`translate3d(${e.map((e=>In(e,"px"))).join(",")})`,Ln(e,0)]))),A(r,((e,t)=>{if("transform"===t)o.push([e||""]),i.push((e=>[e,""===e]));else if(Rn.test(t)){if(delete r[t],M.und(e))return;let n=Nn.test(t)?"px":Pn.test(t)?"deg":"";o.push(T(e)),i.push("rotate3d"===t?([e,t,r,o])=>[`rotate3d(${e},${t},${r},${In(o,n)})`,Ln(o,0)]:e=>[`${t}(${e.map((e=>In(e,n))).join(",")})`,Ln(e,t.startsWith("scale")?1:0)])}})),o.length&&(r.transform=new Fn(o,i)),super(r)}},Fn=class extends Oe{constructor(e,t){super(),this.inputs=e,this.transforms=t}_value=null;get(){return this._value||(this._value=this._get())}_get(){let e="",t=!0;return E(this.inputs,((n,r)=>{let o=ke(n[0]),[i,s]=this.transforms[r](M.arr(o)?o:n.map(ke));e+=" "+i,t=t&&s})),t?"none":e}observerAdded(e){1==e&&E(this.inputs,(e=>E(e,(e=>Se(e)&&Ae(e,this)))))}observerRemoved(e){0==e&&E(this.inputs,(e=>E(e,(e=>Se(e)&&Te(e,this)))))}eventObserved(e){"change"==e.type&&(this._value=null),Me(this,e)}};k.assign({batchedUpdates:On.unstable_batchedUpdates,createStringInterpolator:ze,colors:{transparent:0,aliceblue:4042850303,antiquewhite:4209760255,aqua:16777215,aquamarine:2147472639,azure:4043309055,beige:4126530815,bisque:4293182719,black:255,blanchedalmond:4293643775,blue:65535,blueviolet:2318131967,brown:2771004159,burlywood:3736635391,burntsienna:3934150143,cadetblue:1604231423,chartreuse:2147418367,chocolate:3530104575,coral:4286533887,cornflowerblue:1687547391,cornsilk:4294499583,crimson:3692313855,cyan:16777215,darkblue:35839,darkcyan:9145343,darkgoldenrod:3095792639,darkgray:2846468607,darkgreen:6553855,darkgrey:2846468607,darkkhaki:3182914559,darkmagenta:2332068863,darkolivegreen:1433087999,darkorange:4287365375,darkorchid:2570243327,darkred:2332033279,darksalmon:3918953215,darkseagreen:2411499519,darkslateblue:1211993087,darkslategray:793726975,darkslategrey:793726975,darkturquoise:13554175,darkviolet:2483082239,deeppink:4279538687,deepskyblue:12582911,dimgray:1768516095,dimgrey:1768516095,dodgerblue:512819199,firebrick:2988581631,floralwhite:4294635775,forestgreen:579543807,fuchsia:4278255615,gainsboro:3705462015,ghostwhite:4177068031,gold:4292280575,goldenrod:3668254975,gray:2155905279,green:8388863,greenyellow:2919182335,grey:2155905279,honeydew:4043305215,hotpink:4285117695,indianred:3445382399,indigo:1258324735,ivory:4294963455,khaki:4041641215,lavender:3873897215,lavenderblush:4293981695,lawngreen:2096890111,lemonchiffon:4294626815,lightblue:2916673279,lightcoral:4034953471,lightcyan:3774873599,lightgoldenrodyellow:4210742015,lightgray:3553874943,lightgreen:2431553791,lightgrey:3553874943,lightpink:4290167295,lightsalmon:4288707327,lightseagreen:548580095,lightskyblue:2278488831,lightslategray:2005441023,lightslategrey:2005441023,lightsteelblue:2965692159,lightyellow:4294959359,lime:16711935,limegreen:852308735,linen:4210091775,magenta:4278255615,maroon:2147483903,mediumaquamarine:1724754687,mediumblue:52735,mediumorchid:3126187007,mediumpurple:2473647103,mediumseagreen:1018393087,mediumslateblue:2070474495,mediumspringgreen:16423679,mediumturquoise:1221709055,mediumvioletred:3340076543,midnightblue:421097727,mintcream:4127193855,mistyrose:4293190143,moccasin:4293178879,navajowhite:4292783615,navy:33023,oldlace:4260751103,olive:2155872511,olivedrab:1804477439,orange:4289003775,orangered:4282712319,orchid:3664828159,palegoldenrod:4008225535,palegreen:2566625535,paleturquoise:2951671551,palevioletred:3681588223,papayawhip:4293907967,peachpuff:4292524543,peru:3448061951,pink:4290825215,plum:3718307327,powderblue:2967529215,purple:2147516671,rebeccapurple:1714657791,red:4278190335,rosybrown:3163525119,royalblue:1097458175,saddlebrown:2336560127,salmon:4202722047,sandybrown:4104413439,seagreen:780883967,seashell:4294307583,sienna:2689740287,silver:3233857791,skyblue:2278484991,slateblue:1784335871,slategray:1887473919,slategrey:1887473919,snow:4294638335,springgreen:16744447,steelblue:1182971135,tan:3535047935,teal:8421631,thistle:3636451583,tomato:4284696575,turquoise:1088475391,violet:4001558271,wheat:4125012991,white:4294967295,whitesmoke:4126537215,yellow:4294902015,yellowgreen:2597139199}});var Bn=((e,{applyAnimatedValues:t=(()=>!1),createAnimatedStyle:n=(e=>new st(e)),getComponentProps:r=(e=>e)}={})=>{let o={applyAnimatedValues:t,createAnimatedStyle:n,getComponentProps:r},i=e=>{let t=ft(e)||"Anonymous";return(e=M.str(e)?i[e]||(i[e]=ut(e,o)):e[dt]||(e[dt]=ut(e,o))).displayName=`Animated(${t})`,e};return A(e,((t,n)=>{M.arr(e)&&(n=ft(t)),i[n]=i(t)})),{animated:i}})(["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr","circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"],{applyAnimatedValues:function(e,t){if(!e.nodeType||!e.setAttribute)return!1;let n="filter"===e.nodeName||e.parentNode&&"filter"===e.parentNode.nodeName,{style:r,children:o,scrollTop:i,scrollLeft:s,viewBox:a,...l}=t,c=Object.values(l),u=Object.keys(l).map((t=>n||e.hasAttribute(t)?t:Tn[t]||(Tn[t]=t.replace(/([A-Z])/g,(e=>"-"+e.toLowerCase())))));void 0!==o&&(e.textContent=o);for(let t in r)if(r.hasOwnProperty(t)){let n=An(t,r[t]);En.test(t)?e.style.setProperty(t,n):e.style[t]=n}u.forEach(((t,n)=>{e.setAttribute(t,c[n])})),void 0!==i&&(e.scrollTop=i),void 0!==s&&(e.scrollLeft=s),void 0!==a&&e.setAttribute("viewBox",a)},createAnimatedStyle:e=>new jn(e),getComponentProps:({scrollTop:e,scrollLeft:t,...n})=>n}),zn=Bn.animated},2599:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}var o;n.d(t,{Ep:()=>h,J0:()=>a,RQ:()=>R,WK:()=>j,Zn:()=>A,Zq:()=>D,aU:()=>o,cP:()=>d,fp:()=>p,pC:()=>_,q_:()=>s}),function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(o||(o={}));const i="popstate";function s(e){return void 0===e&&(e={}),function(e,t,n,s){void 0===s&&(s={});let{window:l=document.defaultView,v5Compat:d=!1}=s,f=l.history,p=o.Pop,m=null,g=y();function y(){return(f.state||{idx:null}).idx}function v(){p=o.Pop;let e=y(),t=null==e?null:e-g;g=e,m&&m({action:p,location:w.location,delta:t})}function b(e){let t="null"!==l.location.origin?l.location.origin:l.location.href,n="string"==typeof e?e:h(e);return a(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==g&&(g=0,f.replaceState(r({},f.state,{idx:g}),""));let w={get action(){return p},get location(){return e(l,f)},listen(e){if(m)throw new Error("A history only accepts one active listener");return l.addEventListener(i,v),m=e,()=>{l.removeEventListener(i,v),m=null}},createHref:e=>t(l,e),createURL:b,encodeLocation(e){let t=b(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){p=o.Push;let r=u(w.location,e,t);n&&n(r,e),g=y()+1;let i=c(r,g),s=w.createHref(r);try{f.pushState(i,"",s)}catch(e){if(e instanceof DOMException&&"DataCloneError"===e.name)throw e;l.location.assign(s)}d&&m&&m({action:p,location:w.location,delta:1})},replace:function(e,t){p=o.Replace;let r=u(w.location,e,t);n&&n(r,e),g=y();let i=c(r,g),s=w.createHref(r);f.replaceState(i,"",s),d&&m&&m({action:p,location:w.location,delta:0})},go:e=>f.go(e)};return w}((function(e,t){let{pathname:n="/",search:r="",hash:o=""}=d(e.location.hash.substr(1));return n.startsWith("/")||n.startsWith(".")||(n="/"+n),u("",{pathname:n,search:r,hash:o},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){let n=e.document.querySelector("base"),r="";if(n&&n.getAttribute("href")){let t=e.location.href,n=t.indexOf("#");r=-1===n?t:t.slice(0,n)}return r+"#"+("string"==typeof t?t:h(t))}),(function(e,t){l("/"===e.pathname.charAt(0),"relative pathnames are not supported in hash history.push("+JSON.stringify(t)+")")}),e)}function a(e,t){if(!1===e||null==e)throw new Error(t)}function l(e,t){if(!e){"undefined"!=typeof console&&console.warn(t);try{throw new Error(t)}catch(e){}}}function c(e,t){return{usr:e.state,key:e.key,idx:t}}function u(e,t,n,o){return void 0===n&&(n=null),r({pathname:"string"==typeof e?e:e.pathname,search:"",hash:""},"string"==typeof t?d(t):t,{state:n,key:t&&t.key||o||Math.random().toString(36).substr(2,8)})}function h(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&"?"!==n&&(t+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(t+="#"===r.charAt(0)?r:"#"+r),t}function d(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}var f;function p(e,t,n){void 0===n&&(n="/");let r=A(("string"==typeof t?d(t):t).pathname||"/",n);if(null==r)return null;let o=m(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){return e.length===t.length&&e.slice(0,-1).every(((e,n)=>e===t[n]))?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(o);let i=null;for(let e=0;null==i&&e<o.length;++e)i=M(o[e],E(r));return i}function m(e,t,n,r){void 0===t&&(t=[]),void 0===n&&(n=[]),void 0===r&&(r="");let o=(e,o,i)=>{let s={relativePath:void 0===i?e.path||"":i,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};s.relativePath.startsWith("/")&&(a(s.relativePath.startsWith(r),'Absolute route path "'+s.relativePath+'" nested under path "'+r+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),s.relativePath=s.relativePath.slice(r.length));let l=R([r,s.relativePath]),c=n.concat(s);e.children&&e.children.length>0&&(a(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+l+'".'),m(e.children,t,c,l)),(null!=e.path||e.index)&&t.push({path:l,score:C(l,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?"))for(let n of g(e.path))o(e,t,n);else o(e,t)})),t}function g(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,o=n.endsWith("?"),i=n.replace(/\?$/,"");if(0===r.length)return o?[i,""]:[i];let s=g(r.join("/")),a=[];return a.push(...s.map((e=>""===e?i:[i,e].join("/")))),o&&a.push(...s),a.map((t=>e.startsWith("/")&&""===t?"/":t))}!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(f||(f={})),new Set(["lazy","caseSensitive","path","id","index","children"]);const y=/^:\w+$/,v=3,b=2,w=1,x=10,S=-2,k=e=>"*"===e;function C(e,t){let n=e.split("/"),r=n.length;return n.some(k)&&(r+=S),t&&(r+=b),n.filter((e=>!k(e))).reduce(((e,t)=>e+(y.test(t)?v:""===t?w:x)),r)}function M(e,t){let{routesMeta:n}=e,r={},o="/",i=[];for(let e=0;e<n.length;++e){let s=n[e],a=e===n.length-1,l="/"===o?t:t.slice(o.length)||"/",c=O({path:s.relativePath,caseSensitive:s.caseSensitive,end:a},l);if(!c)return null;Object.assign(r,c.params);let u=s.route;i.push({params:r,pathname:R([o,c.pathname]),pathnameBase:N(R([o,c.pathnameBase])),route:u}),"/"!==c.pathnameBase&&(o=R([o,c.pathnameBase]))}return i}function O(e,t){"string"==typeof e&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=function(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!0),l("*"===e||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were "'+e.replace(/\*$/,"/*")+'" because the `*` character must always follow a `/` in the pattern. To get rid of this warning, please change the route path to "'+e.replace(/\*$/,"/*")+'".');let r=[],o="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^$?{}|()[\]]/g,"\\$&").replace(/\/:(\w+)/g,((e,t)=>(r.push(t),"/([^\\/]+)")));return e.endsWith("*")?(r.push("*"),o+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":""!==e&&"/"!==e&&(o+="(?:(?=\\/|$))"),[new RegExp(o,t?void 0:"i"),r]}(e.path,e.caseSensitive,e.end),o=t.match(n);if(!o)return null;let i=o[0],s=i.replace(/(.)\/+$/,"$1"),a=o.slice(1);return{params:r.reduce(((e,t,n)=>{if("*"===t){let e=a[n]||"";s=i.slice(0,i.length-e.length).replace(/(.)\/+$/,"$1")}return e[t]=function(e,t){try{return decodeURIComponent(e)}catch(n){return l(!1,'The value for the URL param "'+t+'" will not be decoded because the string "'+e+'" is a malformed URL segment. This is probably due to a bad percent encoding ('+n+")."),e}}(a[n]||"",t),e}),{}),pathname:i,pathnameBase:s,pattern:e}}function E(e){try{return decodeURI(e)}catch(t){return l(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function A(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}function T(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the `to."+n+'` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.'}function D(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function _(e,t,n,o){let i;void 0===o&&(o=!1),"string"==typeof e?i=d(e):(i=r({},e),a(!i.pathname||!i.pathname.includes("?"),T("?","pathname","search",i)),a(!i.pathname||!i.pathname.includes("#"),T("#","pathname","hash",i)),a(!i.search||!i.search.includes("#"),T("#","search","hash",i)));let s,l=""===e||""===i.pathname,c=l?"/":i.pathname;if(o||null==c)s=n;else{let e=t.length-1;if(c.startsWith("..")){let t=c.split("/");for(;".."===t[0];)t.shift(),e-=1;i.pathname=t.join("/")}s=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let{pathname:n,search:r="",hash:o=""}="string"==typeof e?d(e):e,i=n?n.startsWith("/")?n:function(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(n,t):t;return{pathname:i,search:P(r),hash:I(o)}}(i,s),h=c&&"/"!==c&&c.endsWith("/"),f=(l||"."===c)&&n.endsWith("/");return u.pathname.endsWith("/")||!h&&!f||(u.pathname+="/"),u}const R=e=>e.join("/").replace(/\/\/+/g,"/"),N=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),P=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",I=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class L extends Error{}function j(e){return null!=e&&"number"==typeof e.status&&"string"==typeof e.statusText&&"boolean"==typeof e.internal&&"data"in e}const F=["post","put","patch","delete"],B=(new Set(F),["get",...F]);new Set(B),new Set([301,302,303,307,308]),new Set([307,308]),Symbol("deferred")},3126:(e,t,n)=>{"use strict";function r(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function o(e){return e instanceof r(e).Element||e instanceof Element}function i(e){return e instanceof r(e).HTMLElement||e instanceof HTMLElement}function s(e){return"undefined"!=typeof ShadowRoot&&(e instanceof r(e).ShadowRoot||e instanceof ShadowRoot)}n.d(t,{ZP:()=>at});var a=Math.max,l=Math.min,c=Math.round;function u(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}function h(){return!/^((?!chrome|android).)*safari/i.test(u())}function d(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var s=e.getBoundingClientRect(),a=1,l=1;t&&i(e)&&(a=e.offsetWidth>0&&c(s.width)/e.offsetWidth||1,l=e.offsetHeight>0&&c(s.height)/e.offsetHeight||1);var u=(o(e)?r(e):window).visualViewport,d=!h()&&n,f=(s.left+(d&&u?u.offsetLeft:0))/a,p=(s.top+(d&&u?u.offsetTop:0))/l,m=s.width/a,g=s.height/l;return{width:m,height:g,top:p,right:f+m,bottom:p+g,left:f,x:f,y:p}}function f(e){var t=r(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function p(e){return e?(e.nodeName||"").toLowerCase():null}function m(e){return((o(e)?e.ownerDocument:e.document)||window.document).documentElement}function g(e){return d(m(e)).left+f(e).scrollLeft}function y(e){return r(e).getComputedStyle(e)}function v(e){var t=y(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function b(e,t,n){void 0===n&&(n=!1);var o,s,a=i(t),l=i(t)&&function(e){var t=e.getBoundingClientRect(),n=c(t.width)/e.offsetWidth||1,r=c(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),u=m(t),h=d(e,l,n),y={scrollLeft:0,scrollTop:0},b={x:0,y:0};return(a||!a&&!n)&&(("body"!==p(t)||v(u))&&(y=(o=t)!==r(o)&&i(o)?{scrollLeft:(s=o).scrollLeft,scrollTop:s.scrollTop}:f(o)),i(t)?((b=d(t,!0)).x+=t.clientLeft,b.y+=t.clientTop):u&&(b.x=g(u))),{x:h.left+y.scrollLeft-b.x,y:h.top+y.scrollTop-b.y,width:h.width,height:h.height}}function w(e){var t=d(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function x(e){return"html"===p(e)?e:e.assignedSlot||e.parentNode||(s(e)?e.host:null)||m(e)}function S(e){return["html","body","#document"].indexOf(p(e))>=0?e.ownerDocument.body:i(e)&&v(e)?e:S(x(e))}function k(e,t){var n;void 0===t&&(t=[]);var o=S(e),i=o===(null==(n=e.ownerDocument)?void 0:n.body),s=r(o),a=i?[s].concat(s.visualViewport||[],v(o)?o:[]):o,l=t.concat(a);return i?l:l.concat(k(x(a)))}function C(e){return["table","td","th"].indexOf(p(e))>=0}function M(e){return i(e)&&"fixed"!==y(e).position?e.offsetParent:null}function O(e){for(var t=r(e),n=M(e);n&&C(n)&&"static"===y(n).position;)n=M(n);return n&&("html"===p(n)||"body"===p(n)&&"static"===y(n).position)?t:n||function(e){var t=/firefox/i.test(u());if(/Trident/i.test(u())&&i(e)&&"fixed"===y(e).position)return null;var n=x(e);for(s(n)&&(n=n.host);i(n)&&["html","body"].indexOf(p(n))<0;){var r=y(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}var E="top",A="bottom",T="right",D="left",_="auto",R=[E,A,T,D],N="start",P="end",I="viewport",L="popper",j=R.reduce((function(e,t){return e.concat([t+"-"+N,t+"-"+P])}),[]),F=[].concat(R,[_]).reduce((function(e,t){return e.concat([t,t+"-"+N,t+"-"+P])}),[]),B=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function z(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}var $={placement:"bottom",modifiers:[],strategy:"absolute"};function H(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some((function(e){return!(e&&"function"==typeof e.getBoundingClientRect)}))}function W(e){void 0===e&&(e={});var t=e,n=t.defaultModifiers,r=void 0===n?[]:n,i=t.defaultOptions,s=void 0===i?$:i;return function(e,t,n){void 0===n&&(n=s);var i,a,l={placement:"bottom",orderedModifiers:[],options:Object.assign({},$,s),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},c=[],u=!1,h={state:l,setOptions:function(n){var i="function"==typeof n?n(l.options):n;d(),l.options=Object.assign({},s,l.options,i),l.scrollParents={reference:o(e)?k(e):e.contextElement?k(e.contextElement):[],popper:k(t)};var a,u,f=function(e){var t=z(e);return B.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])}((a=[].concat(r,l.options.modifiers),u=a.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{}),Object.keys(u).map((function(e){return u[e]}))));return l.orderedModifiers=f.filter((function(e){return e.enabled})),l.orderedModifiers.forEach((function(e){var t=e.name,n=e.options,r=void 0===n?{}:n,o=e.effect;if("function"==typeof o){var i=o({state:l,name:t,instance:h,options:r});c.push(i||function(){})}})),h.update()},forceUpdate:function(){if(!u){var e=l.elements,t=e.reference,n=e.popper;if(H(t,n)){l.rects={reference:b(t,O(n),"fixed"===l.options.strategy),popper:w(n)},l.reset=!1,l.placement=l.options.placement,l.orderedModifiers.forEach((function(e){return l.modifiersData[e.name]=Object.assign({},e.data)}));for(var r=0;r<l.orderedModifiers.length;r++)if(!0!==l.reset){var o=l.orderedModifiers[r],i=o.fn,s=o.options,a=void 0===s?{}:s,c=o.name;"function"==typeof i&&(l=i({state:l,options:a,name:c,instance:h})||l)}else l.reset=!1,r=-1}}},update:(i=function(){return new Promise((function(e){h.forceUpdate(),e(l)}))},function(){return a||(a=new Promise((function(e){Promise.resolve().then((function(){a=void 0,e(i())}))}))),a}),destroy:function(){d(),u=!0}};if(!H(e,t))return h;function d(){c.forEach((function(e){return e()})),c=[]}return h.setOptions(n).then((function(e){!u&&n.onFirstUpdate&&n.onFirstUpdate(e)})),h}}var U={passive:!0};function V(e){return e.split("-")[0]}function q(e){return e.split("-")[1]}function K(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Y(e){var t,n=e.reference,r=e.element,o=e.placement,i=o?V(o):null,s=o?q(o):null,a=n.x+n.width/2-r.width/2,l=n.y+n.height/2-r.height/2;switch(i){case E:t={x:a,y:n.y-r.height};break;case A:t={x:a,y:n.y+n.height};break;case T:t={x:n.x+n.width,y:l};break;case D:t={x:n.x-r.width,y:l};break;default:t={x:n.x,y:n.y}}var c=i?K(i):null;if(null!=c){var u="y"===c?"height":"width";switch(s){case N:t[c]=t[c]-(n[u]/2-r[u]/2);break;case P:t[c]=t[c]+(n[u]/2-r[u]/2)}}return t}var G={top:"auto",right:"auto",bottom:"auto",left:"auto"};function J(e){var t,n=e.popper,o=e.popperRect,i=e.placement,s=e.variation,a=e.offsets,l=e.position,u=e.gpuAcceleration,h=e.adaptive,d=e.roundOffsets,f=e.isFixed,p=a.x,g=void 0===p?0:p,v=a.y,b=void 0===v?0:v,w="function"==typeof d?d({x:g,y:b}):{x:g,y:b};g=w.x,b=w.y;var x=a.hasOwnProperty("x"),S=a.hasOwnProperty("y"),k=D,C=E,M=window;if(h){var _=O(n),R="clientHeight",N="clientWidth";_===r(n)&&"static"!==y(_=m(n)).position&&"absolute"===l&&(R="scrollHeight",N="scrollWidth"),(i===E||(i===D||i===T)&&s===P)&&(C=A,b-=(f&&_===M&&M.visualViewport?M.visualViewport.height:_[R])-o.height,b*=u?1:-1),i!==D&&(i!==E&&i!==A||s!==P)||(k=T,g-=(f&&_===M&&M.visualViewport?M.visualViewport.width:_[N])-o.width,g*=u?1:-1)}var I,L=Object.assign({position:l},h&&G),j=!0===d?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:c(n*o)/o||0,y:c(r*o)/o||0}}({x:g,y:b},r(n)):{x:g,y:b};return g=j.x,b=j.y,u?Object.assign({},L,((I={})[C]=S?"0":"",I[k]=x?"0":"",I.transform=(M.devicePixelRatio||1)<=1?"translate("+g+"px, "+b+"px)":"translate3d("+g+"px, "+b+"px, 0)",I)):Object.assign({},L,((t={})[C]=S?b+"px":"",t[k]=x?g+"px":"",t.transform="",t))}const Q={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},o=t.elements[e];i(o)&&p(o)&&(Object.assign(o.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?o.removeAttribute(e):o.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],o=t.attributes[e]||{},s=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});i(r)&&p(r)&&(Object.assign(r.style,s),Object.keys(o).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};var Z={left:"right",right:"left",bottom:"top",top:"bottom"};function X(e){return e.replace(/left|right|bottom|top/g,(function(e){return Z[e]}))}var ee={start:"end",end:"start"};function te(e){return e.replace(/start|end/g,(function(e){return ee[e]}))}function ne(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&s(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function re(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function oe(e,t,n){return t===I?re(function(e,t){var n=r(e),o=m(e),i=n.visualViewport,s=o.clientWidth,a=o.clientHeight,l=0,c=0;if(i){s=i.width,a=i.height;var u=h();(u||!u&&"fixed"===t)&&(l=i.offsetLeft,c=i.offsetTop)}return{width:s,height:a,x:l+g(e),y:c}}(e,n)):o(t)?function(e,t){var n=d(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):re(function(e){var t,n=m(e),r=f(e),o=null==(t=e.ownerDocument)?void 0:t.body,i=a(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=a(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),l=-r.scrollLeft+g(e),c=-r.scrollTop;return"rtl"===y(o||n).direction&&(l+=a(n.clientWidth,o?o.clientWidth:0)-i),{width:i,height:s,x:l,y:c}}(m(e)))}function ie(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function se(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}function ae(e,t){void 0===t&&(t={});var n=t,r=n.placement,s=void 0===r?e.placement:r,c=n.strategy,u=void 0===c?e.strategy:c,h=n.boundary,f=void 0===h?"clippingParents":h,g=n.rootBoundary,v=void 0===g?I:g,b=n.elementContext,w=void 0===b?L:b,S=n.altBoundary,C=void 0!==S&&S,M=n.padding,D=void 0===M?0:M,_=ie("number"!=typeof D?D:se(D,R)),N=w===L?"reference":L,P=e.rects.popper,j=e.elements[C?N:w],F=function(e,t,n,r){var s="clippingParents"===t?function(e){var t=k(x(e)),n=["absolute","fixed"].indexOf(y(e).position)>=0&&i(e)?O(e):e;return o(n)?t.filter((function(e){return o(e)&&ne(e,n)&&"body"!==p(e)})):[]}(e):[].concat(t),c=[].concat(s,[n]),u=c[0],h=c.reduce((function(t,n){var o=oe(e,n,r);return t.top=a(o.top,t.top),t.right=l(o.right,t.right),t.bottom=l(o.bottom,t.bottom),t.left=a(o.left,t.left),t}),oe(e,u,r));return h.width=h.right-h.left,h.height=h.bottom-h.top,h.x=h.left,h.y=h.top,h}(o(j)?j:j.contextElement||m(e.elements.popper),f,v,u),B=d(e.elements.reference),z=Y({reference:B,element:P,strategy:"absolute",placement:s}),$=re(Object.assign({},P,z)),H=w===L?$:B,W={top:F.top-H.top+_.top,bottom:H.bottom-F.bottom+_.bottom,left:F.left-H.left+_.left,right:H.right-F.right+_.right},U=e.modifiersData.offset;if(w===L&&U){var V=U[s];Object.keys(W).forEach((function(e){var t=[T,A].indexOf(e)>=0?1:-1,n=[E,A].indexOf(e)>=0?"y":"x";W[e]+=V[n]*t}))}return W}function le(e,t,n){return a(e,l(t,n))}function ce(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function ue(e){return[E,T,A,D].some((function(t){return e[t]>=0}))}var he=W({defaultModifiers:[{name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,o=e.options,i=o.scroll,s=void 0===i||i,a=o.resize,l=void 0===a||a,c=r(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&u.forEach((function(e){e.addEventListener("scroll",n.update,U)})),l&&c.addEventListener("resize",n.update,U),function(){s&&u.forEach((function(e){e.removeEventListener("scroll",n.update,U)})),l&&c.removeEventListener("resize",n.update,U)}},data:{}},{name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=Y({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}},{name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,s=void 0===i||i,a=n.roundOffsets,l=void 0===a||a,c={placement:V(t.placement),variation:q(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,J(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,J(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}},Q,{name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,i=void 0===o?[0,0]:o,s=F.reduce((function(e,n){return e[n]=function(e,t,n){var r=V(e),o=[D,E].indexOf(r)>=0?-1:1,i="function"==typeof n?n(Object.assign({},t,{placement:e})):n,s=i[0],a=i[1];return s=s||0,a=(a||0)*o,[D,T].indexOf(r)>=0?{x:a,y:s}:{x:s,y:a}}(n,t.rects,i),e}),{}),a=s[t.placement],l=a.x,c=a.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=c),t.modifiersData[r]=s}},{name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,i=void 0===o||o,s=n.altAxis,a=void 0===s||s,l=n.fallbackPlacements,c=n.padding,u=n.boundary,h=n.rootBoundary,d=n.altBoundary,f=n.flipVariations,p=void 0===f||f,m=n.allowedAutoPlacements,g=t.options.placement,y=V(g),v=l||(y!==g&&p?function(e){if(V(e)===_)return[];var t=X(e);return[te(e),t,te(t)]}(g):[X(g)]),b=[g].concat(v).reduce((function(e,n){return e.concat(V(n)===_?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,s=n.padding,a=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?F:l,u=q(r),h=u?a?j:j.filter((function(e){return q(e)===u})):R,d=h.filter((function(e){return c.indexOf(e)>=0}));0===d.length&&(d=h);var f=d.reduce((function(t,n){return t[n]=ae(e,{placement:n,boundary:o,rootBoundary:i,padding:s})[V(n)],t}),{});return Object.keys(f).sort((function(e,t){return f[e]-f[t]}))}(t,{placement:n,boundary:u,rootBoundary:h,padding:c,flipVariations:p,allowedAutoPlacements:m}):n)}),[]),w=t.rects.reference,x=t.rects.popper,S=new Map,k=!0,C=b[0],M=0;M<b.length;M++){var O=b[M],P=V(O),I=q(O)===N,L=[E,A].indexOf(P)>=0,B=L?"width":"height",z=ae(t,{placement:O,boundary:u,rootBoundary:h,altBoundary:d,padding:c}),$=L?I?T:D:I?A:E;w[B]>x[B]&&($=X($));var H=X($),W=[];if(i&&W.push(z[P]<=0),a&&W.push(z[$]<=0,z[H]<=0),W.every((function(e){return e}))){C=O,k=!1;break}S.set(O,W)}if(k)for(var U=function(e){var t=b.find((function(t){var n=S.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return C=t,"break"},K=p?3:1;K>0&&"break"!==U(K);K--);t.placement!==C&&(t.modifiersData[r]._skip=!0,t.placement=C,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}},{name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,i=void 0===o||o,s=n.altAxis,c=void 0!==s&&s,u=n.boundary,h=n.rootBoundary,d=n.altBoundary,f=n.padding,p=n.tether,m=void 0===p||p,g=n.tetherOffset,y=void 0===g?0:g,v=ae(t,{boundary:u,rootBoundary:h,padding:f,altBoundary:d}),b=V(t.placement),x=q(t.placement),S=!x,k=K(b),C="x"===k?"y":"x",M=t.modifiersData.popperOffsets,_=t.rects.reference,R=t.rects.popper,P="function"==typeof y?y(Object.assign({},t.rects,{placement:t.placement})):y,I="number"==typeof P?{mainAxis:P,altAxis:P}:Object.assign({mainAxis:0,altAxis:0},P),L=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,j={x:0,y:0};if(M){if(i){var F,B="y"===k?E:D,z="y"===k?A:T,$="y"===k?"height":"width",H=M[k],W=H+v[B],U=H-v[z],Y=m?-R[$]/2:0,G=x===N?_[$]:R[$],J=x===N?-R[$]:-_[$],Q=t.elements.arrow,Z=m&&Q?w(Q):{width:0,height:0},X=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},ee=X[B],te=X[z],ne=le(0,_[$],Z[$]),re=S?_[$]/2-Y-ne-ee-I.mainAxis:G-ne-ee-I.mainAxis,oe=S?-_[$]/2+Y+ne+te+I.mainAxis:J+ne+te+I.mainAxis,ie=t.elements.arrow&&O(t.elements.arrow),se=ie?"y"===k?ie.clientTop||0:ie.clientLeft||0:0,ce=null!=(F=null==L?void 0:L[k])?F:0,ue=H+oe-ce,he=le(m?l(W,H+re-ce-se):W,H,m?a(U,ue):U);M[k]=he,j[k]=he-H}if(c){var de,fe="x"===k?E:D,pe="x"===k?A:T,me=M[C],ge="y"===C?"height":"width",ye=me+v[fe],ve=me-v[pe],be=-1!==[E,D].indexOf(b),we=null!=(de=null==L?void 0:L[C])?de:0,xe=be?ye:me-_[ge]-R[ge]-we+I.altAxis,Se=be?me+_[ge]+R[ge]-we-I.altAxis:ve,ke=m&&be?function(e,t,n){var r=le(e,t,n);return r>n?n:r}(xe,me,Se):le(m?xe:ye,me,m?Se:ve);M[C]=ke,j[C]=ke-me}t.modifiersData[r]=j}},requiresIfExists:["offset"]},{name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,r=e.name,o=e.options,i=n.elements.arrow,s=n.modifiersData.popperOffsets,a=V(n.placement),l=K(a),c=[D,T].indexOf(a)>=0?"height":"width";if(i&&s){var u=function(e,t){return ie("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:se(e,R))}(o.padding,n),h=w(i),d="y"===l?E:D,f="y"===l?A:T,p=n.rects.reference[c]+n.rects.reference[l]-s[l]-n.rects.popper[c],m=s[l]-n.rects.reference[l],g=O(i),y=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,v=p/2-m/2,b=u[d],x=y-h[c]-u[f],S=y/2-h[c]/2+v,k=le(b,S,x),C=l;n.modifiersData[r]=((t={})[C]=k,t.centerOffset=k-S,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&ne(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},{name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,i=t.modifiersData.preventOverflow,s=ae(t,{elementContext:"reference"}),a=ae(t,{altBoundary:!0}),l=ce(s,r),c=ce(a,o,i),u=ue(l),h=ue(c);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:u,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":h})}}]}),de="tippy-content",fe="tippy-backdrop",pe="tippy-arrow",me="tippy-svg-arrow",ge={passive:!0,capture:!0},ye=function(){return document.body};function ve(e,t,n){if(Array.isArray(e)){var r=e[t];return null==r?Array.isArray(n)?n[t]:n:r}return e}function be(e,t){var n={}.toString.call(e);return 0===n.indexOf("[object")&&n.indexOf(t+"]")>-1}function we(e,t){return"function"==typeof e?e.apply(void 0,t):e}function xe(e,t){return 0===t?e:function(r){clearTimeout(n),n=setTimeout((function(){e(r)}),t)};var n}function Se(e){return[].concat(e)}function ke(e,t){-1===e.indexOf(t)&&e.push(t)}function Ce(e){return[].slice.call(e)}function Me(e){return Object.keys(e).reduce((function(t,n){return void 0!==e[n]&&(t[n]=e[n]),t}),{})}function Oe(e){return["Element","Fragment"].some((function(t){return be(e,t)}))}function Ee(e,t){e.forEach((function(e){e&&(e.style.transitionDuration=t+"ms")}))}function Ae(e,t){e.forEach((function(e){e&&e.setAttribute("data-state",t)}))}function Te(e,t,n){var r=t+"EventListener";["transitionend","webkitTransitionEnd"].forEach((function(t){e[r](t,n)}))}function De(e,t){for(var n=t;n;){var r;if(e.contains(n))return!0;n=null==n.getRootNode||null==(r=n.getRootNode())?void 0:r.host}return!1}var _e={isTouch:!1},Re=0;function Ne(){_e.isTouch||(_e.isTouch=!0,window.performance&&document.addEventListener("mousemove",Pe))}function Pe(){var e=performance.now();e-Re<20&&(_e.isTouch=!1,document.removeEventListener("mousemove",Pe)),Re=e}function Ie(){var e,t=document.activeElement;if((e=t)&&e._tippy&&e._tippy.reference===e){var n=t._tippy;t.blur&&!n.state.isVisible&&t.blur()}}var Le=!("undefined"==typeof window||"undefined"==typeof document||!window.msCrypto),je=Object.assign({appendTo:ye,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:!0,ignoreAttributes:!1,interactive:!1,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function(){},onBeforeUpdate:function(){},onCreate:function(){},onDestroy:function(){},onHidden:function(){},onHide:function(){},onMount:function(){},onShow:function(){},onShown:function(){},onTrigger:function(){},onUntrigger:function(){},onClickOutside:function(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:!1,touch:!0,trigger:"mouseenter focus",triggerTarget:null},{animateFill:!1,followCursor:!1,inlinePositioning:!1,sticky:!1},{allowHTML:!1,animation:"fade",arrow:!0,content:"",inertia:!1,maxWidth:350,role:"tooltip",theme:"",zIndex:9999}),Fe=Object.keys(je);function Be(e){var t=(e.plugins||[]).reduce((function(t,n){var r,o=n.name,i=n.defaultValue;return o&&(t[o]=void 0!==e[o]?e[o]:null!=(r=je[o])?r:i),t}),{});return Object.assign({},e,t)}function ze(e,t){var n=Object.assign({},t,{content:we(t.content,[e])},t.ignoreAttributes?{}:function(e,t){return(t?Object.keys(Be(Object.assign({},je,{plugins:t}))):Fe).reduce((function(t,n){var r=(e.getAttribute("data-tippy-"+n)||"").trim();if(!r)return t;if("content"===n)t[n]=r;else try{t[n]=JSON.parse(r)}catch(e){t[n]=r}return t}),{})}(e,t.plugins));return n.aria=Object.assign({},je.aria,n.aria),n.aria={expanded:"auto"===n.aria.expanded?t.interactive:n.aria.expanded,content:"auto"===n.aria.content?t.interactive?null:"describedby":n.aria.content},n}function $e(e){var t=e.firstElementChild,n=Ce(t.children);return{box:t,content:n.find((function(e){return e.classList.contains(de)})),arrow:n.find((function(e){return e.classList.contains(pe)||e.classList.contains(me)})),backdrop:n.find((function(e){return e.classList.contains(fe)}))}}var He=1,We=[],Ue=[];function Ve(e,t){var n,r,o,i,s,a,l,c,u=ze(e,Object.assign({},je,Be(Me(t)))),h=!1,d=!1,f=!1,p=!1,m=[],g=xe(K,u.interactiveDebounce),y=He++,v=(c=u.plugins).filter((function(e,t){return c.indexOf(e)===t})),b={id:y,reference:e,popper:document.createElement("div"),popperInstance:null,props:u,state:{isEnabled:!0,isVisible:!1,isDestroyed:!1,isMounted:!1,isShown:!1},plugins:v,clearDelayTimeouts:function(){clearTimeout(n),clearTimeout(r),cancelAnimationFrame(o)},setProps:function(t){if(!b.state.isDestroyed){N("onBeforeUpdate",[b,t]),V();var n=b.props,r=ze(e,Object.assign({},n,Me(t),{ignoreAttributes:!0}));b.props=r,U(),n.interactiveDebounce!==r.interactiveDebounce&&(L(),g=xe(K,r.interactiveDebounce)),n.triggerTarget&&!r.triggerTarget?Se(n.triggerTarget).forEach((function(e){e.removeAttribute("aria-expanded")})):r.triggerTarget&&e.removeAttribute("aria-expanded"),I(),R(),S&&S(n,r),b.popperInstance&&(Q(),X().forEach((function(e){requestAnimationFrame(e._tippy.popperInstance.forceUpdate)}))),N("onAfterUpdate",[b,t])}},setContent:function(e){b.setProps({content:e})},show:function(){var e=b.state.isVisible,t=b.state.isDestroyed,n=!b.state.isEnabled,r=_e.isTouch&&!b.props.touch,o=ve(b.props.duration,0,je.duration);if(!(e||t||n||r||A().hasAttribute("disabled")||(N("onShow",[b],!1),!1===b.props.onShow(b)))){if(b.state.isVisible=!0,E()&&(x.style.visibility="visible"),R(),z(),b.state.isMounted||(x.style.transition="none"),E()){var i=D();Ee([i.box,i.content],0)}var s,l,c;a=function(){var e;if(b.state.isVisible&&!p){if(p=!0,x.offsetHeight,x.style.transition=b.props.moveTransition,E()&&b.props.animation){var t=D(),n=t.box,r=t.content;Ee([n,r],o),Ae([n,r],"visible")}P(),I(),ke(Ue,b),null==(e=b.popperInstance)||e.forceUpdate(),N("onMount",[b]),b.props.animation&&E()&&function(e,t){H(e,(function(){b.state.isShown=!0,N("onShown",[b])}))}(o)}},l=b.props.appendTo,c=A(),(s=b.props.interactive&&l===ye||"parent"===l?c.parentNode:we(l,[c])).contains(x)||s.appendChild(x),b.state.isMounted=!0,Q()}},hide:function(){var e=!b.state.isVisible,t=b.state.isDestroyed,n=!b.state.isEnabled,r=ve(b.props.duration,1,je.duration);if(!(e||t||n)&&(N("onHide",[b],!1),!1!==b.props.onHide(b))){if(b.state.isVisible=!1,b.state.isShown=!1,p=!1,h=!1,E()&&(x.style.visibility="hidden"),L(),$(),R(!0),E()){var o=D(),i=o.box,s=o.content;b.props.animation&&(Ee([i,s],r),Ae([i,s],"hidden"))}P(),I(),b.props.animation?E()&&function(e,t){H(e,(function(){!b.state.isVisible&&x.parentNode&&x.parentNode.contains(x)&&t()}))}(r,b.unmount):b.unmount()}},hideWithInteractivity:function(e){T().addEventListener("mousemove",g),ke(We,g),g(e)},enable:function(){b.state.isEnabled=!0},disable:function(){b.hide(),b.state.isEnabled=!1},unmount:function(){b.state.isVisible&&b.hide(),b.state.isMounted&&(Z(),X().forEach((function(e){e._tippy.unmount()})),x.parentNode&&x.parentNode.removeChild(x),Ue=Ue.filter((function(e){return e!==b})),b.state.isMounted=!1,N("onHidden",[b]))},destroy:function(){b.state.isDestroyed||(b.clearDelayTimeouts(),b.unmount(),V(),delete e._tippy,b.state.isDestroyed=!0,N("onDestroy",[b]))}};if(!u.render)return b;var w=u.render(b),x=w.popper,S=w.onUpdate;x.setAttribute("data-tippy-root",""),x.id="tippy-"+b.id,b.popper=x,e._tippy=b,x._tippy=b;var k=v.map((function(e){return e.fn(b)})),C=e.hasAttribute("aria-expanded");return U(),I(),R(),N("onCreate",[b]),u.showOnCreate&&ee(),x.addEventListener("mouseenter",(function(){b.props.interactive&&b.state.isVisible&&b.clearDelayTimeouts()})),x.addEventListener("mouseleave",(function(){b.props.interactive&&b.props.trigger.indexOf("mouseenter")>=0&&T().addEventListener("mousemove",g)})),b;function M(){var e=b.props.touch;return Array.isArray(e)?e:[e,0]}function O(){return"hold"===M()[0]}function E(){var e;return!(null==(e=b.props.render)||!e.$$tippy)}function A(){return l||e}function T(){var e,t,n=A().parentNode;return n?null!=(t=Se(n)[0])&&null!=(e=t.ownerDocument)&&e.body?t.ownerDocument:document:document}function D(){return $e(x)}function _(e){return b.state.isMounted&&!b.state.isVisible||_e.isTouch||i&&"focus"===i.type?0:ve(b.props.delay,e?0:1,je.delay)}function R(e){void 0===e&&(e=!1),x.style.pointerEvents=b.props.interactive&&!e?"":"none",x.style.zIndex=""+b.props.zIndex}function N(e,t,n){var r;void 0===n&&(n=!0),k.forEach((function(n){n[e]&&n[e].apply(n,t)})),n&&(r=b.props)[e].apply(r,t)}function P(){var t=b.props.aria;if(t.content){var n="aria-"+t.content,r=x.id;Se(b.props.triggerTarget||e).forEach((function(e){var t=e.getAttribute(n);if(b.state.isVisible)e.setAttribute(n,t?t+" "+r:r);else{var o=t&&t.replace(r,"").trim();o?e.setAttribute(n,o):e.removeAttribute(n)}}))}}function I(){!C&&b.props.aria.expanded&&Se(b.props.triggerTarget||e).forEach((function(e){b.props.interactive?e.setAttribute("aria-expanded",b.state.isVisible&&e===A()?"true":"false"):e.removeAttribute("aria-expanded")}))}function L(){T().removeEventListener("mousemove",g),We=We.filter((function(e){return e!==g}))}function j(t){if(!_e.isTouch||!f&&"mousedown"!==t.type){var n=t.composedPath&&t.composedPath()[0]||t.target;if(!b.props.interactive||!De(x,n)){if(Se(b.props.triggerTarget||e).some((function(e){return De(e,n)}))){if(_e.isTouch)return;if(b.state.isVisible&&b.props.trigger.indexOf("click")>=0)return}else N("onClickOutside",[b,t]);!0===b.props.hideOnClick&&(b.clearDelayTimeouts(),b.hide(),d=!0,setTimeout((function(){d=!1})),b.state.isMounted||$())}}}function F(){f=!0}function B(){f=!1}function z(){var e=T();e.addEventListener("mousedown",j,!0),e.addEventListener("touchend",j,ge),e.addEventListener("touchstart",B,ge),e.addEventListener("touchmove",F,ge)}function $(){var e=T();e.removeEventListener("mousedown",j,!0),e.removeEventListener("touchend",j,ge),e.removeEventListener("touchstart",B,ge),e.removeEventListener("touchmove",F,ge)}function H(e,t){var n=D().box;function r(e){e.target===n&&(Te(n,"remove",r),t())}if(0===e)return t();Te(n,"remove",s),Te(n,"add",r),s=r}function W(t,n,r){void 0===r&&(r=!1),Se(b.props.triggerTarget||e).forEach((function(e){e.addEventListener(t,n,r),m.push({node:e,eventType:t,handler:n,options:r})}))}function U(){var e;O()&&(W("touchstart",q,{passive:!0}),W("touchend",Y,{passive:!0})),(e=b.props.trigger,e.split(/\s+/).filter(Boolean)).forEach((function(e){if("manual"!==e)switch(W(e,q),e){case"mouseenter":W("mouseleave",Y);break;case"focus":W(Le?"focusout":"blur",G);break;case"focusin":W("focusout",G)}}))}function V(){m.forEach((function(e){var t=e.node,n=e.eventType,r=e.handler,o=e.options;t.removeEventListener(n,r,o)})),m=[]}function q(e){var t,n=!1;if(b.state.isEnabled&&!J(e)&&!d){var r="focus"===(null==(t=i)?void 0:t.type);i=e,l=e.currentTarget,I(),!b.state.isVisible&&be(e,"MouseEvent")&&We.forEach((function(t){return t(e)})),"click"===e.type&&(b.props.trigger.indexOf("mouseenter")<0||h)&&!1!==b.props.hideOnClick&&b.state.isVisible?n=!0:ee(e),"click"===e.type&&(h=!n),n&&!r&&te(e)}}function K(e){var t=e.target,n=A().contains(t)||x.contains(t);if("mousemove"!==e.type||!n){var r=X().concat(x).map((function(e){var t,n=null==(t=e._tippy.popperInstance)?void 0:t.state;return n?{popperRect:e.getBoundingClientRect(),popperState:n,props:u}:null})).filter(Boolean);(function(e,t){var n=t.clientX,r=t.clientY;return e.every((function(e){var t=e.popperRect,o=e.popperState,i=e.props.interactiveBorder,s=o.placement.split("-")[0],a=o.modifiersData.offset;if(!a)return!0;var l="bottom"===s?a.top.y:0,c="top"===s?a.bottom.y:0,u="right"===s?a.left.x:0,h="left"===s?a.right.x:0,d=t.top-r+l>i,f=r-t.bottom-c>i,p=t.left-n+u>i,m=n-t.right-h>i;return d||f||p||m}))})(r,e)&&(L(),te(e))}}function Y(e){J(e)||b.props.trigger.indexOf("click")>=0&&h||(b.props.interactive?b.hideWithInteractivity(e):te(e))}function G(e){b.props.trigger.indexOf("focusin")<0&&e.target!==A()||b.props.interactive&&e.relatedTarget&&x.contains(e.relatedTarget)||te(e)}function J(e){return!!_e.isTouch&&O()!==e.type.indexOf("touch")>=0}function Q(){Z();var t=b.props,n=t.popperOptions,r=t.placement,o=t.offset,i=t.getReferenceClientRect,s=t.moveTransition,l=E()?$e(x).arrow:null,c=i?{getBoundingClientRect:i,contextElement:i.contextElement||A()}:e,u=[{name:"offset",options:{offset:o}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!s}},{name:"$$tippy",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t=e.state;if(E()){var n=D().box;["placement","reference-hidden","escaped"].forEach((function(e){"placement"===e?n.setAttribute("data-placement",t.placement):t.attributes.popper["data-popper-"+e]?n.setAttribute("data-"+e,""):n.removeAttribute("data-"+e)})),t.attributes.popper={}}}}];E()&&l&&u.push({name:"arrow",options:{element:l,padding:3}}),u.push.apply(u,(null==n?void 0:n.modifiers)||[]),b.popperInstance=he(c,x,Object.assign({},n,{placement:r,onFirstUpdate:a,modifiers:u}))}function Z(){b.popperInstance&&(b.popperInstance.destroy(),b.popperInstance=null)}function X(){return Ce(x.querySelectorAll("[data-tippy-root]"))}function ee(e){b.clearDelayTimeouts(),e&&N("onTrigger",[b,e]),z();var t=_(!0),r=M(),o=r[0],i=r[1];_e.isTouch&&"hold"===o&&i&&(t=i),t?n=setTimeout((function(){b.show()}),t):b.show()}function te(e){if(b.clearDelayTimeouts(),N("onUntrigger",[b,e]),b.state.isVisible){if(!(b.props.trigger.indexOf("mouseenter")>=0&&b.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&h)){var t=_(!1);t?r=setTimeout((function(){b.state.isVisible&&b.hide()}),t):o=requestAnimationFrame((function(){b.hide()}))}}else $()}}function qe(e,t){void 0===t&&(t={});var n=je.plugins.concat(t.plugins||[]);document.addEventListener("touchstart",Ne,ge),window.addEventListener("blur",Ie);var r,o=Object.assign({},t,{plugins:n}),i=(r=e,Oe(r)?[r]:function(e){return be(e,"NodeList")}(r)?Ce(r):Array.isArray(r)?r:Ce(document.querySelectorAll(r))).reduce((function(e,t){var n=t&&Ve(t,o);return n&&e.push(n),e}),[]);return Oe(e)?i[0]:i}qe.defaultProps=je,qe.setDefaultProps=function(e){Object.keys(e).forEach((function(t){je[t]=e[t]}))},qe.currentInput=_e,Object.assign({},Q,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),qe.setDefaultProps({animation:!1});const Ke=qe;var Ye=n(7294),Ge=n(3935);function Je(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}var Qe="undefined"!=typeof window&&"undefined"!=typeof document;function Ze(e,t){e&&("function"==typeof e&&e(t),{}.hasOwnProperty.call(e,"current")&&(e.current=t))}function Xe(){return Qe&&document.createElement("div")}function et(e,t){if(e===t)return!0;if("object"==typeof e&&null!=e&&"object"==typeof t&&null!=t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e){if(!t.hasOwnProperty(n))return!1;if(!et(e[n],t[n]))return!1}return!0}return!1}function tt(e){var t=[];return e.forEach((function(e){t.find((function(t){return et(e,t)}))||t.push(e)})),t}var nt=Qe?Ye.useLayoutEffect:Ye.useEffect;function rt(e,t,n){n.split(/\s+/).forEach((function(n){n&&e.classList[t](n)}))}var ot={name:"className",defaultValue:"",fn:function(e){var t=e.popper.firstElementChild,n=function(){var t;return!!(null==(t=e.props.render)?void 0:t.$$tippy)};function r(){e.props.className&&!n()||rt(t,"add",e.props.className)}return{onCreate:r,onBeforeUpdate:function(){n()&&rt(t,"remove",e.props.className)},onAfterUpdate:r}}};function it(e){return function(t){var n,r,o=t.children,i=t.content,s=t.visible,a=t.singleton,l=t.render,c=t.reference,u=t.disabled,h=void 0!==u&&u,d=t.ignoreAttributes,f=void 0===d||d,p=(t.__source,t.__self,Je(t,["children","content","visible","singleton","render","reference","disabled","ignoreAttributes","__source","__self"])),m=void 0!==s,g=void 0!==a,y=(0,Ye.useState)(!1),v=y[0],b=y[1],w=(0,Ye.useState)({}),x=w[0],S=w[1],k=(0,Ye.useState)(),C=k[0],M=k[1],O=(n=function(){return{container:Xe(),renders:1}},(r=(0,Ye.useRef)()).current||(r.current="function"==typeof n?n():n),r.current),E=Object.assign({ignoreAttributes:f},p,{content:O.container});m&&(E.trigger="manual",E.hideOnClick=!1),g&&(h=!0);var A=E,T=E.plugins||[];l&&(A=Object.assign({},E,{plugins:g&&null!=a.data?[].concat(T,[{fn:function(){return{onTrigger:function(e,t){var n=a.data.children.find((function(e){return e.instance.reference===t.currentTarget}));e.state.$$activeSingletonInstance=n.instance,M(n.content)}}}}]):T,render:function(){return{popper:O.container}}}));var D=[c].concat(o?[o.type]:[]);return nt((function(){var t=c;c&&c.hasOwnProperty("current")&&(t=c.current);var n=e(t||O.ref||Xe(),Object.assign({},A,{plugins:[ot].concat(E.plugins||[])}));return O.instance=n,h&&n.disable(),s&&n.show(),g&&a.hook({instance:n,content:i,props:A,setSingletonContent:M}),b(!0),function(){n.destroy(),null==a||a.cleanup(n)}}),D),nt((function(){var e,t,n,r,o;if(1!==O.renders){var l=O.instance;l.setProps((t=l.props,n=A,Object.assign({},n,{popperOptions:Object.assign({},t.popperOptions,n.popperOptions,{modifiers:tt([].concat((null==(r=t.popperOptions)?void 0:r.modifiers)||[],(null==(o=n.popperOptions)?void 0:o.modifiers)||[]))})}))),null==(e=l.popperInstance)||e.forceUpdate(),h?l.disable():l.enable(),m&&(s?l.show():l.hide()),g&&a.hook({instance:l,content:i,props:A,setSingletonContent:M})}else O.renders++})),nt((function(){var e;if(l){var t=O.instance;t.setProps({popperOptions:Object.assign({},t.props.popperOptions,{modifiers:[].concat(((null==(e=t.props.popperOptions)?void 0:e.modifiers)||[]).filter((function(e){return"$$tippyReact"!==e.name})),[{name:"$$tippyReact",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:function(e){var t,n=e.state,r=null==(t=n.modifiersData)?void 0:t.hide;x.placement===n.placement&&x.referenceHidden===(null==r?void 0:r.isReferenceHidden)&&x.escaped===(null==r?void 0:r.hasPopperEscaped)||S({placement:n.placement,referenceHidden:null==r?void 0:r.isReferenceHidden,escaped:null==r?void 0:r.hasPopperEscaped}),n.attributes.popper={}}}])})})}}),[x.placement,x.referenceHidden,x.escaped].concat(D)),Ye.createElement(Ye.Fragment,null,o?(0,Ye.cloneElement)(o,{ref:function(e){O.ref=e,Ze(o.ref,e)}}):null,v&&(0,Ge.createPortal)(l?l(function(e){var t={"data-placement":e.placement};return e.referenceHidden&&(t["data-reference-hidden"]=""),e.escaped&&(t["data-escaped"]=""),t}(x),C,O.instance):i,O.container))}}var st=function(e,t){return(0,Ye.forwardRef)((function(n,r){var o=n.children,i=Je(n,["children"]);return Ye.createElement(e,Object.assign({},t,i),o?(0,Ye.cloneElement)(o,{ref:function(e){Ze(r,e),Ze(o.ref,e)}}):null)}))};const at=st(it(Ke),{render:function(){return""}})},8307:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>qi});var r=n(7462),o=n(3366),i=n(7294),s=n(8120),a=n(2393);const l=1024;let c=0;class u{constructor(e,t){this.from=e,this.to=t}}class h{constructor(e={}){this.id=c++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return"function"!=typeof e&&(e=f.match(e)),t=>{let n=e(t);return void 0===n?null:[this,n]}}}h.closedBy=new h({deserialize:e=>e.split(" ")}),h.openedBy=new h({deserialize:e=>e.split(" ")}),h.group=new h({deserialize:e=>e.split(" ")}),h.contextHash=new h({perNode:!0}),h.lookAhead=new h({perNode:!0}),h.mounted=new h({perNode:!0});const d=Object.create(null);class f{constructor(e,t,n,r=0){this.name=e,this.props=t,this.id=n,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):d,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(null==e.name?8:0),r=new f(e.name||"",t,e.id,n);if(e.props)for(let n of e.props)if(Array.isArray(n)||(n=n(r)),n){if(n[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[n[0].id]=n[1]}return r}prop(e){return this.props[e.id]}get isTop(){return(1&this.flags)>0}get isSkipped(){return(2&this.flags)>0}get isError(){return(4&this.flags)>0}get isAnonymous(){return(8&this.flags)>0}is(e){if("string"==typeof e){if(this.name==e)return!0;let t=this.prop(h.group);return!!t&&t.indexOf(e)>-1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let r of n.split(" "))t[r]=e[n];return e=>{for(let n=e.prop(h.group),r=-1;r<(n?n.length:0);r++){let o=t[r<0?e.name:n[r]];if(o)return o}}}}f.none=new f("",Object.create(null),0,8);const p=new WeakMap,m=new WeakMap;var g;!function(e){e[e.ExcludeBuffers=1]="ExcludeBuffers",e[e.IncludeAnonymous=2]="IncludeAnonymous",e[e.IgnoreMounts=4]="IgnoreMounts",e[e.IgnoreOverlays=8]="IgnoreOverlays"}(g||(g={}));class y{constructor(e,t,n,r,o){if(this.type=e,this.children=t,this.positions=n,this.length=r,this.props=null,o&&o.length){this.props=Object.create(null);for(let[e,t]of o)this.props["number"==typeof e?e:e.id]=t}}toString(){let e=this.prop(h.mounted);if(e&&!e.overlay)return e.tree.toString();let t="";for(let e of this.children){let n=e.toString();n&&(t&&(t+=","),t+=n)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new A(this.topNode,e)}cursorAt(e,t=0,n=0){let r=p.get(this)||this.topNode,o=new A(r);return o.moveTo(e,t),p.set(this,o._tree),o}get topNode(){return new k(this,0,0,null)}resolve(e,t=0){let n=S(p.get(this)||this.topNode,e,t,!1);return p.set(this,n),n}resolveInner(e,t=0){let n=S(m.get(this)||this.topNode,e,t,!0);return m.set(this,n),n}iterate(e){let{enter:t,leave:n,from:r=0,to:o=this.length}=e;for(let i=this.cursor((e.mode||0)|g.IncludeAnonymous);;){let e=!1;if(i.from<=o&&i.to>=r&&(i.type.isAnonymous||!1!==t(i))){if(i.firstChild())continue;e=!0}for(;e&&n&&!i.type.isAnonymous&&n(i),!i.nextSibling();){if(!i.parent())return;e=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:R(f.none,this.children,this.positions,0,this.children.length,0,this.length,((e,t,n)=>new y(this.type,e,t,n,this.propValues)),e.makeTree||((e,t,n)=>new y(f.none,e,t,n)))}static build(e){return function(e){var t;let{buffer:n,nodeSet:r,maxBufferLength:o=l,reused:i=[],minRepeatType:s=r.types.length}=e,a=Array.isArray(n)?new v(n,n.length):n,c=r.types,u=0,d=0;function f(e,t,n,l,v){let{id:w,start:x,end:S,size:k}=a,C=d;for(;k<0;){if(a.next(),-1==k){let t=i[w];return n.push(t),void l.push(x-e)}if(-3==k)return void(u=w);if(-4==k)return void(d=w);throw new RangeError(`Unrecognized record size: ${k}`)}let M,O,E=c[w],A=x-e;if(S-x<=o&&(O=function(e,t){let n=a.fork(),r=0,i=0,l=0,c=n.end-o,u={size:0,start:0,skip:0};e:for(let o=n.pos-e;n.pos>o;){let e=n.size;if(n.id==t&&e>=0){u.size=r,u.start=i,u.skip=l,l+=4,r+=4,n.next();continue}let a=n.pos-e;if(e<0||a<o||n.start<c)break;let h=n.id>=s?4:0,d=n.start;for(n.next();n.pos>a;){if(n.size<0){if(-3!=n.size)break e;h+=4}else n.id>=s&&(h+=4);n.next()}i=d,r+=e,l+=h}return(t<0||r==e)&&(u.size=r,u.start=i,u.skip=l),u.size>4?u:void 0}(a.pos-t,v))){let t=new Uint16Array(O.size-O.skip),n=a.pos-O.size,o=t.length;for(;a.pos>n;)o=g(O.start,t,o);M=new b(t,S-O.start,r),A=O.start-e}else{let e=a.pos-k;a.next();let t=[],n=[],r=w>=s?w:-1,i=0,l=S;for(;a.pos>e;)r>=0&&a.id==r&&a.size>=0?(a.end<=l-o&&(p(t,n,x,i,a.end,l,r,C),i=t.length,l=a.end),a.next()):f(x,e,t,n,r);if(r>=0&&i>0&&i<t.length&&p(t,n,x,i,x,l,r,C),t.reverse(),n.reverse(),r>-1&&i>0){let e=function(e){return(t,n,r)=>{let o,i,s=0,a=t.length-1;if(a>=0&&(o=t[a])instanceof y){if(!a&&o.type==e&&o.length==r)return o;(i=o.prop(h.lookAhead))&&(s=n[a]+o.length+i)}return m(e,t,n,r,s)}}(E);M=R(E,t,n,0,t.length,0,S-x,e,e)}else M=m(E,t,n,S-x,C-S)}n.push(M),l.push(A)}function p(e,t,n,o,i,s,a,l){let c=[],u=[];for(;e.length>o;)c.push(e.pop()),u.push(t.pop()+n-i);e.push(m(r.types[a],c,u,s-i,l-s)),t.push(i-n)}function m(e,t,n,r,o=0,i){if(u){let e=[h.contextHash,u];i=i?[e].concat(i):[e]}if(o>25){let e=[h.lookAhead,o];i=i?[e].concat(i):[e]}return new y(e,t,n,r,i)}function g(e,t,n){let{id:r,start:o,end:i,size:l}=a;if(a.next(),l>=0&&r<s){let s=n;if(l>4){let r=a.pos-(l-4);for(;a.pos>r;)n=g(e,t,n)}t[--n]=s,t[--n]=i-e,t[--n]=o-e,t[--n]=r}else-3==l?u=r:-4==l&&(d=r);return n}let w=[],x=[];for(;a.pos>0;)f(e.start||0,e.bufferStart||0,w,x,-1);let S=null!==(t=e.length)&&void 0!==t?t:w.length?x[0]+w[0].length:0;return new y(c[e.topID],w.reverse(),x.reverse(),S)}(e)}}y.empty=new y(f.none,[],[],0);class v{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new v(this.buffer,this.index)}}class b{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return f.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],n=this.buffer[e+3],r=this.set.types[t],o=r.name;if(/\W/.test(o)&&!r.isError&&(o=JSON.stringify(o)),n==(e+=4))return o;let i=[];for(;e<n;)i.push(this.childString(e)),e=this.buffer[e+3];return o+"("+i.join(",")+")"}findChild(e,t,n,r,o){let{buffer:i}=this,s=-1;for(let a=e;a!=t&&!(w(o,r,i[a+1],i[a+2])&&(s=a,n>0));a=i[a+3]);return s}slice(e,t,n){let r=this.buffer,o=new Uint16Array(t-e),i=0;for(let s=e,a=0;s<t;){o[a++]=r[s++],o[a++]=r[s++]-n;let t=o[a++]=r[s++]-n;o[a++]=r[s++]-e,i=Math.max(i,t)}return new b(o,i,this.set)}}function w(e,t,n,r){switch(e){case-2:return n<t;case-1:return r>=t&&n<t;case 0:return n<t&&r>t;case 1:return n<=t&&r>t;case 2:return r>t;case 4:return!0}}function x(e,t){let n=e.childBefore(t);for(;n;){let t=n.lastChild;if(!t||t.to!=n.to)break;t.type.isError&&t.from==t.to?(e=n,n=t.prevSibling):n=t}return e}function S(e,t,n,r){for(var o;e.from==e.to||(n<1?e.from>=t:e.from>t)||(n>-1?e.to<=t:e.to<t);){let t=!r&&e instanceof k&&e.index<0?null:e.parent;if(!t)return e;e=t}let i=r?0:g.IgnoreOverlays;if(r)for(let r=e,s=r.parent;s;r=s,s=r.parent)r instanceof k&&r.index<0&&(null===(o=s.enter(t,n,i))||void 0===o?void 0:o.from)!=r.from&&(e=s);for(;;){let r=e.enter(t,n,i);if(!r)return e;e=r}}class k{constructor(e,t,n,r){this._tree=e,this.from=t,this.index=n,this._parent=r}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,n,r,o=0){for(let i=this;;){for(let{children:s,positions:a}=i._tree,l=t>0?s.length:-1;e!=l;e+=t){let l=s[e],c=a[e]+i.from;if(w(r,n,c,c+l.length))if(l instanceof b){if(o&g.ExcludeBuffers)continue;let s=l.findChild(0,l.buffer.length,t,n-c,r);if(s>-1)return new E(new O(i,l,e,c),null,s)}else if(o&g.IncludeAnonymous||!l.type.isAnonymous||T(l)){let s;if(!(o&g.IgnoreMounts)&&l.props&&(s=l.prop(h.mounted))&&!s.overlay)return new k(s.tree,c,e,i);let a=new k(l,c,e,i);return o&g.IncludeAnonymous||!a.type.isAnonymous?a:a.nextChild(t<0?l.children.length-1:0,t,n,r)}}if(o&g.IncludeAnonymous||!i.type.isAnonymous)return null;if(e=i.index>=0?i.index+t:t<0?-1:i._parent._tree.children.length,i=i._parent,!i)return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,t,n=0){let r;if(!(n&g.IgnoreOverlays)&&(r=this._tree.prop(h.mounted))&&r.overlay){let n=e-this.from;for(let{from:e,to:o}of r.overlay)if((t>0?e<=n:e<n)&&(t<0?o>=n:o>n))return new k(r.tree,r.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,n)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}cursor(e=0){return new A(this,e)}get tree(){return this._tree}toTree(){return this._tree}resolve(e,t=0){return S(this,e,t,!1)}resolveInner(e,t=0){return S(this,e,t,!0)}enterUnfinishedNodesBefore(e){return x(this,e)}getChild(e,t=null,n=null){let r=C(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return C(this,e,t,n)}toString(){return this._tree.toString()}get node(){return this}matchContext(e){return M(this,e)}}function C(e,t,n,r){let o=e.cursor(),i=[];if(!o.firstChild())return i;if(null!=n)for(;!o.type.is(n);)if(!o.nextSibling())return i;for(;;){if(null!=r&&o.type.is(r))return i;if(o.type.is(t)&&i.push(o.node),!o.nextSibling())return null==r?i:[]}}function M(e,t,n=t.length-1){for(let r=e.parent;n>=0;r=r.parent){if(!r)return!1;if(!r.type.isAnonymous){if(t[n]&&t[n]!=r.name)return!1;n--}}return!0}class O{constructor(e,t,n,r){this.parent=e,this.buffer=t,this.index=n,this.start=r}}class E{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,n){this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}child(e,t,n){let{buffer:r}=this.context,o=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,n);return o<0?null:new E(this.context,this,o)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,n=0){if(n&g.ExcludeBuffers)return null;let{buffer:r}=this.context,o=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return o<0?null:new E(this.context,this,o)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new E(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new E(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}cursor(e=0){return new A(this,e)}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,r=this.index+4,o=n.buffer[this.index+3];if(o>r){let i=n.buffer[this.index+1];e.push(n.slice(r,o,i)),t.push(0)}return new y(this.type,e,t,this.to-this.from)}resolve(e,t=0){return S(this,e,t,!1)}resolveInner(e,t=0){return S(this,e,t,!0)}enterUnfinishedNodesBefore(e){return x(this,e)}toString(){return this.context.buffer.childString(this.index)}getChild(e,t=null,n=null){let r=C(this,e,t,n);return r.length?r[0]:null}getChildren(e,t=null,n=null){return C(this,e,t,n)}get node(){return this}matchContext(e){return M(this,e)}}class A{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof k)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let t=e._parent;t;t=t._parent)this.stack.unshift(t.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return!!e&&(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0)}yieldBuf(e,t){this.index=e;let{start:n,buffer:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return!!e&&(e instanceof k?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)))}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,n,this.mode));let{buffer:r}=this.buffer,o=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,n);return!(o<0)&&(this.stack.push(this.index),this.yieldBuf(o))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=this.mode){return this.buffer?!(n&g.ExcludeBuffers)&&this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&g.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&g.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return!!this._tree._parent&&this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode));let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let e=n<0?0:this.stack[n]+4;if(this.index!=e)return this.yieldBuf(t.findChild(e,this.index,-1,0,4))}else{let e=t.buffer[this.index+3];if(e<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(e)}return n<0&&this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode))}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:r}=this;if(r){if(e>0){if(this.index<r.buffer.buffer.length)return!1}else for(let e=0;e<this.index;e++)if(r.buffer.buffer[e+3]<this.index)return!1;({index:t,parent:n}=r)}else({index:t,_parent:n}=this._tree);for(;n;({index:t,_parent:n}=n))if(t>-1)for(let r=t+e,o=e<0?-1:n._tree.children.length;r!=o;r+=e){let e=n._tree.children[r];if(this.mode&g.IncludeAnonymous||e instanceof b||!e.type.isAnonymous||T(e))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,n=0;if(e&&e.context==this.buffer)e:for(let r=this.index,o=this.stack.length;o>=0;){for(let i=e;i;i=i._parent)if(i.index==r){if(r==this.index)return i;t=i,n=o+1;break e}r=this.stack[--o]}for(let e=n;e<this.stack.length;e++)t=new E(this.buffer,t,this.stack[e]);return this.bufferNode=new E(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let n=0;;){let r=!1;if(this.type.isAnonymous||!1!==e(this)){if(this.firstChild()){n++;continue}this.type.isAnonymous||(r=!0)}for(;r&&t&&t(this),r=this.type.isAnonymous,!this.nextSibling();){if(!n)return;this.parent(),n--,r=!0}}}matchContext(e){if(!this.buffer)return M(this.node,e);let{buffer:t}=this.buffer,{types:n}=t.set;for(let r=e.length-1,o=this.stack.length-1;r>=0;o--){if(o<0)return M(this.node,e,r);let i=n[t.buffer[this.stack[o]]];if(!i.isAnonymous){if(e[r]&&e[r]!=i.name)return!1;r--}}return!0}}function T(e){return e.children.some((e=>e instanceof b||!e.type.isAnonymous||T(e)))}const D=new WeakMap;function _(e,t){if(!e.isAnonymous||t instanceof b||t.type!=e)return 1;let n=D.get(t);if(null==n){n=1;for(let r of t.children){if(r.type!=e||!(r instanceof y)){n=1;break}n+=_(e,r)}D.set(t,n)}return n}function R(e,t,n,r,o,i,s,a,l){let c=0;for(let n=r;n<o;n++)c+=_(e,t[n]);let u=Math.ceil(1.5*c/8),h=[],d=[];return function t(n,r,o,s,a){for(let c=o;c<s;){let o=c,f=r[c],p=_(e,n[c]);for(c++;c<s;c++){let t=_(e,n[c]);if(p+t>=u)break;p+=t}if(c==o+1){if(p>u){let e=n[o];t(e.children,e.positions,0,e.children.length,r[o]+a);continue}h.push(n[o])}else{let t=r[c-1]+n[c-1].length-f;h.push(R(e,n,r,o,c,f,t,null,l))}d.push(f+a-i)}}(t,n,r,o,0),(a||l)(h,d,s)}class N{constructor(e,t,n,r,o=!1,i=!1){this.from=e,this.to=t,this.tree=n,this.offset=r,this.open=(o?1:0)|(i?2:0)}get openStart(){return(1&this.open)>0}get openEnd(){return(2&this.open)>0}static addTree(e,t=[],n=!1){let r=[new N(0,e.length,e,0,!1,n)];for(let n of t)n.to>e.length&&r.push(n);return r}static applyChanges(e,t,n=128){if(!t.length)return e;let r=[],o=1,i=e.length?e[0]:null;for(let s=0,a=0,l=0;;s++){let c=s<t.length?t[s]:null,u=c?c.fromA:1e9;if(u-a>=n)for(;i&&i.from<u;){let t=i;if(a>=t.from||u<=t.to||l){let e=Math.max(t.from,a)-l,n=Math.min(t.to,u)-l;t=e>=n?null:new N(e,n,t.tree,t.offset+l,s>0,!!c)}if(t&&r.push(t),i.to>u)break;i=o<e.length?e[o++]:null}if(!c)break;a=c.toA,l=c.toA-c.toB}return r}}class P{startParse(e,t,n){return"string"==typeof e&&(e=new I(e)),n=n?n.length?n.map((e=>new u(e.from,e.to))):[new u(0,0)]:[new u(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let r=this.startParse(e,t,n);for(;;){let e=r.advance();if(e)return e}}}class I{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}new h({perNode:!0});let L=0;class j{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=L++}static define(e){if(null==e?void 0:e.base)throw new Error("Can not derive from a modified tag");let t=new j([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new B;return t=>t.modified.indexOf(e)>-1?t:B.get(t.base||t,t.modified.concat(e).sort(((e,t)=>e.id-t.id)))}}let F=0;class B{constructor(){this.instances=[],this.id=F++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find((n=>{return n.base==e&&(r=t,o=n.modified,r.length==o.length&&r.every(((e,t)=>e==o[t])));var r,o}));if(n)return n;let r=[],o=new j(r,e,t);for(let e of t)e.instances.push(o);let i=function(e){let t=[[]];for(let n=0;n<e.length;n++)for(let r=0,o=t.length;r<o;r++)t.push(t[r].concat(e[n]));return t.sort(((e,t)=>t.length-e.length))}(t);for(let t of e.set)if(!t.modified.length)for(let e of i)r.push(B.get(t,e));return o}}function z(e){let t=Object.create(null);for(let n in e){let r=e[n];Array.isArray(r)||(r=[r]);for(let e of n.split(" "))if(e){let n=[],o=2,i=e;for(let t=0;;){if("..."==i&&t>0&&t+3==e.length){o=1;break}let r=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(i);if(!r)throw new RangeError("Invalid path: "+e);if(n.push("*"==r[0]?"":'"'==r[0][0]?JSON.parse(r[0]):r[0]),t+=r[0].length,t==e.length)break;let s=e[t++];if(t==e.length&&"!"==s){o=0;break}if("/"!=s)throw new RangeError("Invalid path: "+e);i=e.slice(t)}let s=n.length-1,a=n[s];if(!a)throw new RangeError("Invalid path: "+e);let l=new H(r,o,s>0?n.slice(0,s):null);t[a]=l.sort(t[a])}}return $.add(t)}const $=new h;class H{constructor(e,t,n,r){this.tags=e,this.mode=t,this.context=n,this.next=r}get opaque(){return 0==this.mode}get inherit(){return 1==this.mode}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}function W(e,t){let n=Object.create(null);for(let t of e)if(Array.isArray(t.tag))for(let e of t.tag)n[e.id]=t.class;else n[t.tag.id]=t.class;let{scope:r,all:o=null}=t||{};return{style:e=>{let t=o;for(let r of e)for(let e of r.set){let r=n[e.id];if(r){t=t?t+" "+r:r;break}}return t},scope:r}}function U(e,t,n,r=0,o=e.length){let i=new V(r,Array.isArray(t)?t:[t],n);i.highlightRange(e.cursor(),r,o,"",i.highlighters),i.flush(o)}H.empty=new H([],2,null);class V{constructor(e,t,n){this.at=e,this.highlighters=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,r,o){let{type:i,from:s,to:a}=e;if(s>=n||a<=t)return;i.isTop&&(o=this.highlighters.filter((e=>!e.scope||e.scope(i))));let l=r,c=function(e){let t=e.type.prop($);for(;t&&t.context&&!e.matchContext(t.context);)t=t.next;return t||null}(e)||H.empty,u=function(e,t){let n=null;for(let r of e){let e=r.style(t);e&&(n=n?n+" "+e:e)}return n}(o,c.tags);if(u&&(l&&(l+=" "),l+=u,1==c.mode&&(r+=(r?" ":"")+u)),this.startSpan(e.from,l),c.opaque)return;let d=e.tree&&e.tree.prop(h.mounted);if(d&&d.overlay){let i=e.node.enter(d.overlay[0].from+s,1),c=this.highlighters.filter((e=>!e.scope||e.scope(d.tree.type))),u=e.firstChild();for(let h=0,f=s;;h++){let p=h<d.overlay.length?d.overlay[h]:null,m=p?p.from+s:a,g=Math.max(t,f),y=Math.min(n,m);if(g<y&&u)for(;e.from<y&&(this.highlightRange(e,g,y,r,o),this.startSpan(Math.min(y,e.to),l),!(e.to>=m)&&e.nextSibling()););if(!p||m>n)break;f=p.to+s,f>t&&(this.highlightRange(i.cursor(),Math.max(t,p.from+s),Math.min(n,f),r,c),this.startSpan(f,l))}u&&e.parent()}else if(e.firstChild()){do{if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,r,o),this.startSpan(Math.min(n,e.to),l)}}while(e.nextSibling());e.parent()}}}const q=j.define,K=q(),Y=q(),G=q(Y),J=q(Y),Q=q(),Z=q(Q),X=q(Q),ee=q(),te=q(ee),ne=q(),re=q(),oe=q(),ie=q(oe),se=q(),ae={comment:K,lineComment:q(K),blockComment:q(K),docComment:q(K),name:Y,variableName:q(Y),typeName:G,tagName:q(G),propertyName:J,attributeName:q(J),className:q(Y),labelName:q(Y),namespace:q(Y),macroName:q(Y),literal:Q,string:Z,docString:q(Z),character:q(Z),attributeValue:q(Z),number:X,integer:q(X),float:q(X),bool:q(Q),regexp:q(Q),escape:q(Q),color:q(Q),url:q(Q),keyword:ne,self:q(ne),null:q(ne),atom:q(ne),unit:q(ne),modifier:q(ne),operatorKeyword:q(ne),controlKeyword:q(ne),definitionKeyword:q(ne),moduleKeyword:q(ne),operator:re,derefOperator:q(re),arithmeticOperator:q(re),logicOperator:q(re),bitwiseOperator:q(re),compareOperator:q(re),updateOperator:q(re),definitionOperator:q(re),typeOperator:q(re),controlOperator:q(re),punctuation:oe,separator:q(oe),bracket:ie,angleBracket:q(ie),squareBracket:q(ie),paren:q(ie),brace:q(ie),content:ee,heading:te,heading1:q(te),heading2:q(te),heading3:q(te),heading4:q(te),heading5:q(te),heading6:q(te),contentSeparator:q(ee),list:q(ee),quote:q(ee),emphasis:q(ee),strong:q(ee),link:q(ee),monospace:q(ee),strikethrough:q(ee),inserted:q(),deleted:q(),changed:q(),invalid:q(),meta:se,documentMeta:q(se),annotation:q(se),processingInstruction:q(se),definition:j.defineModifier(),constant:j.defineModifier(),function:j.defineModifier(),standard:j.defineModifier(),local:j.defineModifier(),special:j.defineModifier()};W([{tag:ae.link,class:"tok-link"},{tag:ae.heading,class:"tok-heading"},{tag:ae.emphasis,class:"tok-emphasis"},{tag:ae.strong,class:"tok-strong"},{tag:ae.keyword,class:"tok-keyword"},{tag:ae.atom,class:"tok-atom"},{tag:ae.bool,class:"tok-bool"},{tag:ae.url,class:"tok-url"},{tag:ae.labelName,class:"tok-labelName"},{tag:ae.inserted,class:"tok-inserted"},{tag:ae.deleted,class:"tok-deleted"},{tag:ae.literal,class:"tok-literal"},{tag:ae.string,class:"tok-string"},{tag:ae.number,class:"tok-number"},{tag:[ae.regexp,ae.escape,ae.special(ae.string)],class:"tok-string2"},{tag:ae.variableName,class:"tok-variableName"},{tag:ae.local(ae.variableName),class:"tok-variableName tok-local"},{tag:ae.definition(ae.variableName),class:"tok-variableName tok-definition"},{tag:ae.special(ae.variableName),class:"tok-variableName2"},{tag:ae.definition(ae.propertyName),class:"tok-propertyName tok-definition"},{tag:ae.typeName,class:"tok-typeName"},{tag:ae.namespace,class:"tok-namespace"},{tag:ae.className,class:"tok-className"},{tag:ae.macroName,class:"tok-macroName"},{tag:ae.propertyName,class:"tok-propertyName"},{tag:ae.operator,class:"tok-operator"},{tag:ae.comment,class:"tok-comment"},{tag:ae.meta,class:"tok-meta"},{tag:ae.invalid,class:"tok-invalid"},{tag:ae.punctuation,class:"tok-punctuation"}]);var le,ce=n(8699);const ue=new h,he=new h;class de{constructor(e,t,n=[],r=""){this.data=e,this.name=r,s.yy.prototype.hasOwnProperty("tree")||Object.defineProperty(s.yy.prototype,"tree",{get(){return pe(this)}}),this.parser=t,this.extension=[ke.of(this),s.yy.languageData.of(((e,t,n)=>{let r=fe(e,t,n),o=r.type.prop(ue);if(!o)return[];let i=e.facet(o),s=r.type.prop(he);if(s){let o=r.resolve(t-r.from,n);for(let t of s)if(t.test(o,e)){let n=e.facet(t.facet);return"replace"==t.type?n:n.concat(i)}}return i}))].concat(n)}isActiveAt(e,t,n=-1){return fe(e,t,n).type.prop(ue)==this.data}findRegions(e){let t=e.facet(ke);if((null==t?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],r=(e,t)=>{if(e.prop(ue)==this.data)return void n.push({from:t,to:t+e.length});let o=e.prop(h.mounted);if(o){if(o.tree.prop(ue)==this.data){if(o.overlay)for(let e of o.overlay)n.push({from:e.from+t,to:e.to+t});else n.push({from:t,to:t+e.length});return}if(o.overlay){let e=n.length;if(r(o.tree,o.overlay[0].from+t),n.length>e)return}}for(let n=0;n<e.children.length;n++){let o=e.children[n];o instanceof y&&r(o,e.positions[n]+t)}};return r(pe(e),0),n}get allowsNesting(){return!0}}function fe(e,t,n){let r=e.facet(ke),o=pe(e).topNode;if(!r||r.allowsNesting)for(let e=o;e;e=e.enter(t,n,g.ExcludeBuffers))e.type.isTop&&(o=e);return o}function pe(e){let t=e.field(de.state,!1);return t?t.tree:y.empty}de.setState=s.Py.define();class me{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let n=this.cursorPos-this.string.length;return e<n||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}}let ge=null;class ye{constructor(e,t,n=[],r,o,i,s,a){this.parser=e,this.state=t,this.fragments=n,this.tree=r,this.treeLen=o,this.viewport=i,this.skipped=s,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,n){return new ye(e,t,[],y.empty,0,n,[],null)}startParse(){return this.parser.startParse(new me(this.state.doc),this.fragments)}work(e,t){return null!=t&&t>=this.state.doc.length&&(t=void 0),this.tree!=y.empty&&this.isDone(null!=t?t:this.state.doc.length)?(this.takeTree(),!0):this.withContext((()=>{var n;if("number"==typeof e){let t=Date.now()+e;e=()=>Date.now()>t}for(this.parse||(this.parse=this.startParse()),null!=t&&(null==this.parse.stoppedAt||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let r=this.parse.advance();if(r){if(this.fragments=this.withoutTempSkipped(N.addTree(r,this.fragments,null!=this.parse.stoppedAt)),this.treeLen=null!==(n=this.parse.stoppedAt)&&void 0!==n?n:this.state.doc.length,this.tree=r,this.parse=null,!(this.treeLen<(null!=t?t:this.state.doc.length)))return!0;this.parse=this.startParse()}if(e())return!1}}))}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((null==this.parse.stoppedAt||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext((()=>{for(;!(t=this.parse.advance()););})),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(N.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=ge;ge=this;try{return e()}finally{ge=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=ve(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:r,treeLen:o,viewport:i,skipped:s}=this;if(this.takeTree(),!e.empty){let t=[];if(e.iterChangedRanges(((e,n,r,o)=>t.push({fromA:e,toA:n,fromB:r,toB:o}))),n=N.applyChanges(n,t),r=y.empty,o=0,i={from:e.mapPos(i.from,-1),to:e.mapPos(i.to,1)},this.skipped.length){s=[];for(let t of this.skipped){let n=e.mapPos(t.from,1),r=e.mapPos(t.to,-1);n<r&&s.push({from:n,to:r})}}}return new ye(this.parser,t,n,r,o,i,s,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let t=0;t<this.skipped.length;t++){let{from:n,to:r}=this.skipped[t];n<e.to&&r>e.from&&(this.fragments=ve(this.fragments,n,r),this.skipped.splice(t--,1))}return!(this.skipped.length>=t||(this.reset(),0))}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends P{createParse(t,n,r){let o=r[0].from,i=r[r.length-1].to;return{parsedPos:o,advance(){let t=ge;if(t){for(let e of r)t.tempSkipped.push(e);e&&(t.scheduleOn=t.scheduleOn?Promise.all([t.scheduleOn,e]):e)}return this.parsedPos=i,new y(f.none,[],[],i-o)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&0==t[0].from&&t[0].to>=e}static get(){return ge}}function ve(e,t,n){return N.applyChanges(e,[{fromA:t,toA:n,fromB:t,toB:n}])}class be{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),n=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,n)||t.takeTree(),new be(t)}static init(e){let t=Math.min(3e3,e.doc.length),n=ye.create(e.facet(ke).parser,e,{from:0,to:t});return n.work(20,t)||n.takeTree(),new be(n)}}de.state=s.QQ.define({create:be.init,update(e,t){for(let e of t.effects)if(e.is(de.setState))return e.value;return t.startState.facet(ke)!=t.state.facet(ke)?be.init(t.state):e.apply(t)}});let we=e=>{let t=setTimeout((()=>e()),500);return()=>clearTimeout(t)};"undefined"!=typeof requestIdleCallback&&(we=e=>{let t=-1,n=setTimeout((()=>{t=requestIdleCallback(e,{timeout:400})}),100);return()=>t<0?clearTimeout(n):cancelIdleCallback(t)});const xe="undefined"!=typeof navigator&&(null===(le=navigator.scheduling)||void 0===le?void 0:le.isInputPending)?()=>navigator.scheduling.isInputPending():null,Se=a.lg.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(de.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),e.docChanged&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(de.state);t.tree==t.context.tree&&t.context.isDone(e.doc.length)||(this.working=we(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:n,viewport:{to:r}}=this.view,o=n.field(de.state);if(o.tree==o.context.tree&&o.context.isDone(r+1e5))return;let i=Date.now()+Math.min(this.chunkBudget,100,e&&!xe?Math.max(25,e.timeRemaining()-5):1e9),s=o.context.treeLen<r&&n.doc.length>r+1e3,a=o.context.work((()=>xe&&xe()||Date.now()>i),r+(s?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(o.context.takeTree(),this.view.dispatch({effects:de.setState.of(new be(o.context))})),this.chunkBudget>0&&(!a||s)&&this.scheduleWork(),this.checkAsyncSchedule(o.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then((()=>this.scheduleWork())).catch((e=>(0,a.OO)(this.view.state,e))).then((()=>this.workScheduled--)),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),ke=s.r$.define({combine:e=>e.length?e[0]:null,enables:e=>[de.state,Se,a.tk.contentAttributes.compute([e],(t=>{let n=t.facet(e);return n&&n.name?{"data-language":n.name}:{}}))]}),Ce=s.r$.define(),Me=s.r$.define({combine:e=>{if(!e.length)return" ";let t=e[0];if(!t||/\S/.test(t)||Array.from(t).some((e=>e!=t[0])))throw new Error("Invalid indent unit: "+JSON.stringify(e[0]));return t}});function Oe(e){let t=e.facet(Me);return 9==t.charCodeAt(0)?e.tabSize*t.length:t.length}function Ee(e,t){let n="",r=e.tabSize,o=e.facet(Me)[0];if("\t"==o){for(;t>=r;)n+="\t",t-=r;o=" "}for(let e=0;e<t;e++)n+=o;return n}function Ae(e,t){e instanceof s.yy&&(e=new Te(e));for(let n of e.state.facet(Ce)){let r=n(e,t);if(void 0!==r)return r}let n=pe(e.state);return n?function(e,t,n){return Re(t.resolveInner(n).enterUnfinishedNodesBefore(n),n,e)}(e,n,t):null}class Te{constructor(e,t={}){this.state=e,this.options=t,this.unit=Oe(e)}lineAt(e,t=1){let n=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:o}=this.options;return null!=r&&r>=n.from&&r<=n.to?o&&r==e?{text:"",from:e}:(t<0?r<e:r<=e)?{text:n.text.slice(r-n.from),from:r}:{text:n.text.slice(0,r-n.from),from:n.from}:n}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:n,from:r}=this.lineAt(e,t);return n.slice(e-r,Math.min(n.length,e+100-r))}column(e,t=1){let{text:n,from:r}=this.lineAt(e,t),o=this.countColumn(n,e-r),i=this.options.overrideIndentation?this.options.overrideIndentation(r):-1;return i>-1&&(o+=i-this.countColumn(n,n.search(/\S|$/))),o}countColumn(e,t=e.length){return(0,s.IS)(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:r}=this.lineAt(e,t),o=this.options.overrideIndentation;if(o){let e=o(r);if(e>-1)return e}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const De=new h;function _e(e){let t=e.type.prop(De);if(t)return t;let n,r=e.firstChild;if(r&&(n=r.type.prop(h.closedBy))){let t=e.lastChild,r=t&&n.indexOf(t.name)>-1;return e=>function(e,t,n,r,o){let i=e.textAfter,s=i.match(/^\s*/)[0].length,a=r&&i.slice(s,s+r.length)==r||o==e.pos+s,l=t?function(e){let t=e.node,n=t.childAfter(t.from),r=t.lastChild;if(!n)return null;let o=e.options.simulateBreak,i=e.state.doc.lineAt(n.from),s=null==o||o<=i.from?i.to:Math.min(i.to,o);for(let e=n.to;;){let o=t.childAfter(e);if(!o||o==r)return null;if(!o.type.isSkipped)return o.from<s?n:null;e=o.to}}(e):null;return l?a?e.column(l.from):e.column(l.to):e.baseIndent+(a?0:e.unit*n)}(e,!0,1,void 0,r&&!function(e){return e.pos==e.options.simulateBreak&&e.options.simulateDoubleBreak}(e)?t.from:void 0)}return null==e.parent?Ne:null}function Re(e,t,n){for(;e;e=e.parent){let r=_e(e);if(r)return r(Pe.create(n,t,e))}return null}function Ne(){return 0}class Pe extends Te{constructor(e,t,n){super(e.state,e.options),this.base=e,this.pos=t,this.node=n}static create(e,t,n){return new Pe(e,t,n)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){let e=this.state.doc.lineAt(this.node.from);for(;;){let t=this.node.resolve(e.from);for(;t.parent&&t.parent.from==t.from;)t=t.parent;if(Ie(t,this.node))break;e=this.state.doc.lineAt(t.from)}return this.lineIndent(e.from)}continue(){let e=this.node.parent;return e?Re(e,this.pos,this.base):0}}function Ie(e,t){for(let n=t;n;n=n.parent)if(e==n)return!0;return!1}const Le=s.r$.define(),je=new h;function Fe(e){let t=e.lastChild;return t&&t.to==e.to&&t.type.isError}function Be(e,t,n){for(let r of e.facet(Le)){let o=r(e,t,n);if(o)return o}return function(e,t,n){let r=pe(e);if(r.length<n)return null;let o=null;for(let i=r.resolveInner(n,1);i;i=i.parent){if(i.to<=n||i.from>n)continue;if(o&&i.from<t)break;let s=i.type.prop(je);if(s&&(i.to<r.length-50||r.length==e.doc.length||!Fe(i))){let r=s(i,e);r&&r.from<=n&&r.from>=t&&r.to>n&&(o=r)}}return o}(e,t,n)}function ze(e,t){let n=t.mapPos(e.from,1),r=t.mapPos(e.to,-1);return n>=r?void 0:{from:n,to:r}}const $e=s.Py.define({map:ze}),He=s.Py.define({map:ze});function We(e){let t=[];for(let{head:n}of e.state.selection.ranges)t.some((e=>e.from<=n&&e.to>=n))||t.push(e.lineBlockAt(n));return t}const Ue=s.QQ.define({create:()=>a.p.none,update(e,t){e=e.map(t.changes);for(let n of t.effects)n.is($e)&&!qe(e,n.value.from,n.value.to)?e=e.update({add:[Xe.range(n.value.from,n.value.to)]}):n.is(He)&&(e=e.update({filter:(e,t)=>n.value.from!=e||n.value.to!=t,filterFrom:n.value.from,filterTo:n.value.to}));if(t.selection){let n=!1,{head:r}=t.selection.main;e.between(r,r,((e,t)=>{e<r&&t>r&&(n=!0)})),n&&(e=e.update({filterFrom:r,filterTo:r,filter:(e,t)=>t<=r||e>=r}))}return e},provide:e=>a.tk.decorations.from(e),toJSON(e,t){let n=[];return e.between(0,t.doc.length,((e,t)=>{n.push(e,t)})),n},fromJSON(e){if(!Array.isArray(e)||e.length%2)throw new RangeError("Invalid JSON for fold state");let t=[];for(let n=0;n<e.length;){let r=e[n++],o=e[n++];if("number"!=typeof r||"number"!=typeof o)throw new RangeError("Invalid JSON for fold state");t.push(Xe.range(r,o))}return a.p.set(t,!0)}});function Ve(e,t,n){var r;let o=null;return null===(r=e.field(Ue,!1))||void 0===r||r.between(t,n,((e,t)=>{(!o||o.from>e)&&(o={from:e,to:t})})),o}function qe(e,t,n){let r=!1;return e.between(t,t,((e,o)=>{e==t&&o==n&&(r=!0)})),r}function Ke(e,t){return e.field(Ue,!1)?t:t.concat(s.Py.appendConfig.of(Ze()))}function Ye(e,t,n=!0){let r=e.state.doc.lineAt(t.from).number,o=e.state.doc.lineAt(t.to).number;return a.tk.announce.of(`${e.state.phrase(n?"Folded lines":"Unfolded lines")} ${r} ${e.state.phrase("to")} ${o}.`)}const Ge=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:e=>{for(let t of We(e)){let n=Be(e.state,t.from,t.to);if(n)return e.dispatch({effects:Ke(e.state,[$e.of(n),Ye(e,n)])}),!0}return!1}},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:e=>{if(!e.state.field(Ue,!1))return!1;let t=[];for(let n of We(e)){let r=Ve(e.state,n.from,n.to);r&&t.push(He.of(r),Ye(e,r,!1))}return t.length&&e.dispatch({effects:t}),t.length>0}},{key:"Ctrl-Alt-[",run:e=>{let{state:t}=e,n=[];for(let r=0;r<t.doc.length;){let o=e.lineBlockAt(r),i=Be(t,o.from,o.to);i&&n.push($e.of(i)),r=(i?e.lineBlockAt(i.to):o).to+1}return n.length&&e.dispatch({effects:Ke(e.state,n)}),!!n.length}},{key:"Ctrl-Alt-]",run:e=>{let t=e.state.field(Ue,!1);if(!t||!t.size)return!1;let n=[];return t.between(0,e.state.doc.length,((e,t)=>{n.push(He.of({from:e,to:t}))})),e.dispatch({effects:n}),!0}}],Je={placeholderDOM:null,placeholderText:"…"},Qe=s.r$.define({combine:e=>(0,s.BO)(e,Je)});function Ze(e){let t=[Ue,nt];return e&&t.push(Qe.of(e)),t}const Xe=a.p.replace({widget:new class extends a.l9{toDOM(e){let{state:t}=e,n=t.facet(Qe),r=t=>{let n=e.lineBlockAt(e.posAtDOM(t.target)),r=Ve(e.state,n.from,n.to);r&&e.dispatch({effects:He.of(r)}),t.preventDefault()};if(n.placeholderDOM)return n.placeholderDOM(e,r);let o=document.createElement("span");return o.textContent=n.placeholderText,o.setAttribute("aria-label",t.phrase("folded code")),o.title=t.phrase("unfold"),o.className="cm-foldPlaceholder",o.onclick=r,o}}}),et={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class tt extends a.SJ{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}const nt=a.tk.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class rt{constructor(e,t){let n;function r(e){let t=ce.V.newName();return(n||(n=Object.create(null)))["."+t]=e,t}this.specs=e;const o="string"==typeof t.all?t.all:t.all?r(t.all):void 0,i=t.scope;this.scope=i instanceof de?e=>e.prop(ue)==i.data:i?e=>e==i:void 0,this.style=W(e.map((e=>({tag:e.tag,class:e.class||r(Object.assign({},e,{tag:null}))}))),{all:o}).style,this.module=n?new ce.V(n):null,this.themeType=t.themeType}static define(e,t){return new rt(e,t||{})}}const ot=s.r$.define(),it=s.r$.define({combine:e=>e.length?[e[0]]:null});function st(e){let t=e.facet(ot);return t.length?t:e.facet(it)}function at(e,t){let n,r=[ct];return e instanceof rt&&(e.module&&r.push(a.tk.styleModule.of(e.module)),n=e.themeType),(null==t?void 0:t.fallback)?r.push(it.of(e)):n?r.push(ot.computeN([a.tk.darkTheme],(t=>t.facet(a.tk.darkTheme)==("dark"==n)?[e]:[]))):r.push(ot.of(e)),r}class lt{constructor(e){this.markCache=Object.create(null),this.tree=pe(e.state),this.decorations=this.buildDeco(e,st(e.state))}update(e){let t=pe(e.state),n=st(e.state),r=n!=st(e.startState);t.length<e.view.viewport.to&&!r&&t.type==this.tree.type?this.decorations=this.decorations.map(e.changes):(t!=this.tree||e.viewportChanged||r)&&(this.tree=t,this.decorations=this.buildDeco(e.view,n))}buildDeco(e,t){if(!t||!this.tree.length)return a.p.none;let n=new s.f_;for(let{from:r,to:o}of e.visibleRanges)U(this.tree,t,((e,t,r)=>{n.add(e,t,this.markCache[r]||(this.markCache[r]=a.p.mark({class:r})))}),r,o);return n.finish()}}const ct=s.Wl.high(a.lg.fromClass(lt,{decorations:e=>e.decorations})),ut=rt.define([{tag:ae.meta,color:"#404740"},{tag:ae.link,textDecoration:"underline"},{tag:ae.heading,textDecoration:"underline",fontWeight:"bold"},{tag:ae.emphasis,fontStyle:"italic"},{tag:ae.strong,fontWeight:"bold"},{tag:ae.strikethrough,textDecoration:"line-through"},{tag:ae.keyword,color:"#708"},{tag:[ae.atom,ae.bool,ae.url,ae.contentSeparator,ae.labelName],color:"#219"},{tag:[ae.literal,ae.inserted],color:"#164"},{tag:[ae.string,ae.deleted],color:"#a11"},{tag:[ae.regexp,ae.escape,ae.special(ae.string)],color:"#e40"},{tag:ae.definition(ae.variableName),color:"#00f"},{tag:ae.local(ae.variableName),color:"#30a"},{tag:[ae.typeName,ae.namespace],color:"#085"},{tag:ae.className,color:"#167"},{tag:[ae.special(ae.variableName),ae.macroName],color:"#256"},{tag:ae.definition(ae.propertyName),color:"#00c"},{tag:ae.comment,color:"#940"},{tag:ae.invalid,color:"#f00"}]),ht=a.tk.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),dt=1e4,ft="()[]{}",pt=s.r$.define({combine:e=>(0,s.BO)(e,{afterCursor:!0,brackets:ft,maxScanDistance:dt,renderMatch:yt})}),mt=a.p.mark({class:"cm-matchingBracket"}),gt=a.p.mark({class:"cm-nonmatchingBracket"});function yt(e){let t=[],n=e.matched?mt:gt;return t.push(n.range(e.start.from,e.start.to)),e.end&&t.push(n.range(e.end.from,e.end.to)),t}const vt=s.QQ.define({create:()=>a.p.none,update(e,t){if(!t.docChanged&&!t.selection)return e;let n=[],r=t.state.facet(pt);for(let e of t.state.selection.ranges){if(!e.empty)continue;let o=kt(t.state,e.head,-1,r)||e.head>0&&kt(t.state,e.head-1,1,r)||r.afterCursor&&(kt(t.state,e.head,1,r)||e.head<t.state.doc.length&&kt(t.state,e.head+1,-1,r));o&&(n=n.concat(r.renderMatch(o,t.state)))}return a.p.set(n,!0)},provide:e=>a.tk.decorations.from(e)}),bt=[vt,ht],wt=new h;function xt(e,t,n){let r=e.prop(t<0?h.openedBy:h.closedBy);if(r)return r;if(1==e.name.length){let r=n.indexOf(e.name);if(r>-1&&r%2==(t<0?1:0))return[n[r+t]]}return null}function St(e){let t=e.type.prop(wt);return t?t(e.node):e}function kt(e,t,n,r={}){let o=r.maxScanDistance||dt,i=r.brackets||ft,s=pe(e),a=s.resolveInner(t,n);for(let e=a;e;e=e.parent){let r=xt(e.type,n,i);if(r&&e.from<e.to){let o=St(e);if(o&&(n>0?t>=o.from&&t<o.to:t>o.from&&t<=o.to))return Ct(0,0,n,e,o,r,i)}}return function(e,t,n,r,o,i,s){let a=n<0?e.sliceDoc(t-1,t):e.sliceDoc(t,t+1),l=s.indexOf(a);if(l<0||l%2==0!=n>0)return null;let c={from:n<0?t-1:t,to:n>0?t+1:t},u=e.doc.iterRange(t,n>0?e.doc.length:0),h=0;for(let e=0;!u.next().done&&e<=i;){let i=u.value;n<0&&(e+=i.length);let a=t+e*n;for(let e=n>0?0:i.length-1,t=n>0?i.length:-1;e!=t;e+=n){let t=s.indexOf(i[e]);if(!(t<0||r.resolveInner(a+e,1).type!=o))if(t%2==0==n>0)h++;else{if(1==h)return{start:c,end:{from:a+e,to:a+e+1},matched:t>>1==l>>1};h--}}n>0&&(e+=i.length)}return u.done?{start:c,matched:!1}:null}(e,t,n,s,a.type,o,i)}function Ct(e,t,n,r,o,i,s){let a=r.parent,l={from:o.from,to:o.to},c=0,u=null==a?void 0:a.cursor();if(u&&(n<0?u.childBefore(r.from):u.childAfter(r.to)))do{if(n<0?u.to<=r.from:u.from>=r.to){if(0==c&&i.indexOf(u.type.name)>-1&&u.from<u.to){let e=St(u);return{start:l,end:e?{from:e.from,to:e.to}:void 0,matched:!0}}if(xt(u.type,n,s))c++;else if(xt(u.type,-n,s)){if(0==c){let e=St(u);return{start:l,end:e&&e.from<e.to?{from:e.from,to:e.to}:void 0,matched:!1}}c--}}}while(n<0?u.prevSibling():u.nextSibling());return{start:l,matched:!1}}const Mt=Object.create(null),Ot=[f.none],Et=[],At=Object.create(null);for(let[e,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])At[e]=Dt(Mt,t);function Tt(e,t){Et.indexOf(e)>-1||(Et.push(e),console.warn(t))}function Dt(e,t){let n=null;for(let r of t.split(".")){let t=e[r]||ae[r];t?"function"==typeof t?n?n=t(n):Tt(r,`Modifier ${r} used at start of tag`):n?Tt(r,`Tag ${r} used as modifier`):n=t:Tt(r,`Unknown highlighting tag ${r}`)}if(!n)return 0;let r=t.replace(/ /g,"_"),o=f.define({id:Ot.length,name:r,props:[z({[r]:n})]});return Ot.push(o),o.id}function _t(e,t){return({state:n,dispatch:r})=>{if(n.readOnly)return!1;let o=e(t,n);return!!o&&(r(n.update(o)),!0)}}const Rt=_t(Ft,0),Nt=_t(jt,0),Pt=_t(((e,t)=>jt(e,t,function(e){let t=[];for(let n of e.selection.ranges){let r=e.doc.lineAt(n.from),o=n.to<=r.to?r:e.doc.lineAt(n.to),i=t.length-1;i>=0&&t[i].to>r.from?t[i].to=o.to:t.push({from:r.from,to:o.to})}return t}(t))),0);function It(e,t){let n=e.languageDataAt("commentTokens",t);return n.length?n[0]:{}}const Lt=50;function jt(e,t,n=t.selection.ranges){let r=n.map((e=>It(t,e.from).block));if(!r.every((e=>e)))return null;let o=n.map(((e,n)=>function(e,{open:t,close:n},r,o){let i,s,a=e.sliceDoc(r-Lt,r),l=e.sliceDoc(o,o+Lt),c=/\s*$/.exec(a)[0].length,u=/^\s*/.exec(l)[0].length,h=a.length-c;if(a.slice(h-t.length,h)==t&&l.slice(u,u+n.length)==n)return{open:{pos:r-c,margin:c&&1},close:{pos:o+u,margin:u&&1}};o-r<=2*Lt?i=s=e.sliceDoc(r,o):(i=e.sliceDoc(r,r+Lt),s=e.sliceDoc(o-Lt,o));let d=/^\s*/.exec(i)[0].length,f=/\s*$/.exec(s)[0].length,p=s.length-f-n.length;return i.slice(d,d+t.length)==t&&s.slice(p,p+n.length)==n?{open:{pos:r+d+t.length,margin:/\s/.test(i.charAt(d+t.length))?1:0},close:{pos:o-f-n.length,margin:/\s/.test(s.charAt(p-1))?1:0}}:null}(t,r[n],e.from,e.to)));if(2!=e&&!o.every((e=>e)))return{changes:t.changes(n.map(((e,t)=>o[t]?[]:[{from:e.from,insert:r[t].open+" "},{from:e.to,insert:" "+r[t].close}])))};if(1!=e&&o.some((e=>e))){let e=[];for(let t,n=0;n<o.length;n++)if(t=o[n]){let o=r[n],{open:i,close:s}=t;e.push({from:i.pos-o.open.length,to:i.pos+i.margin},{from:s.pos-s.margin,to:s.pos+o.close.length})}return{changes:e}}return null}function Ft(e,t,n=t.selection.ranges){let r=[],o=-1;for(let{from:e,to:i}of n){let n=r.length,s=1e9,a=It(t,e).line;if(a){for(let n=e;n<=i;){let l=t.doc.lineAt(n);if(l.from>o&&(e==i||i>l.from)){o=l.from;let e=/^\s*/.exec(l.text)[0].length,t=e==l.length,n=l.text.slice(e,e+a.length)==a?e:-1;e<l.text.length&&e<s&&(s=e),r.push({line:l,comment:n,token:a,indent:e,empty:t,single:!1})}n=l.to+1}if(s<1e9)for(let e=n;e<r.length;e++)r[e].indent<r[e].line.text.length&&(r[e].indent=s);r.length==n+1&&(r[n].single=!0)}}if(2!=e&&r.some((e=>e.comment<0&&(!e.empty||e.single)))){let e=[];for(let{line:t,token:n,indent:o,empty:i,single:s}of r)!s&&i||e.push({from:t.from+o,insert:n+" "});let n=t.changes(e);return{changes:n,selection:t.selection.map(n,1)}}if(1!=e&&r.some((e=>e.comment>=0))){let e=[];for(let{line:t,comment:n,token:o}of r)if(n>=0){let r=t.from+n,i=r+o.length;" "==t.text[i-t.from]&&i++,e.push({from:r,to:i})}return{changes:e}}return null}const Bt=s.q6.define(),zt=s.q6.define(),$t=s.r$.define(),Ht=s.r$.define({combine:e=>(0,s.BO)(e,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(n,r)=>e(n,r)||t(n,r)})}),Wt=s.QQ.define({create:()=>sn.empty,update(e,t){let n=t.state.facet(Ht),r=t.annotation(Bt);if(r){let o=t.docChanged?s.jT.single(function(e){let t=0;return e.iterChangedRanges(((e,n)=>t=n)),t}(t.changes)):void 0,i=Gt.fromTransaction(t,o),a=r.side,l=0==a?e.undone:e.done;return l=i?Jt(l,l.length,n.minDepth,i):en(l,t.startState.selection),new sn(0==a?r.rest:l,0==a?l:r.rest)}let o=t.annotation(zt);if("full"!=o&&"before"!=o||(e=e.isolate()),!1===t.annotation(s.YW.addToHistory))return t.changes.empty?e:e.addMapping(t.changes.desc);let i=Gt.fromTransaction(t),a=t.annotation(s.YW.time),l=t.annotation(s.YW.userEvent);return i?e=e.addChanges(i,a,l,n,t):t.selection&&(e=e.addSelection(t.startState.selection,a,l,n.newGroupDelay)),"full"!=o&&"after"!=o||(e=e.isolate()),e},toJSON:e=>({done:e.done.map((e=>e.toJSON())),undone:e.undone.map((e=>e.toJSON()))}),fromJSON:e=>new sn(e.done.map(Gt.fromJSON),e.undone.map(Gt.fromJSON))});function Ut(e,t){return function({state:n,dispatch:r}){if(!t&&n.readOnly)return!1;let o=n.field(Wt,!1);if(!o)return!1;let i=o.pop(e,n,t);return!!i&&(r(i),!0)}}const Vt=Ut(0,!1),qt=Ut(1,!1),Kt=Ut(0,!0),Yt=Ut(1,!0);class Gt{constructor(e,t,n,r,o){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=o}setSelAfter(e){return new Gt(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,n;return{changes:null===(e=this.changes)||void 0===e?void 0:e.toJSON(),mapped:null===(t=this.mapped)||void 0===t?void 0:t.toJSON(),startSelection:null===(n=this.startSelection)||void 0===n?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map((e=>e.toJSON()))}}static fromJSON(e){return new Gt(e.changes&&s.as.fromJSON(e.changes),[],e.mapped&&s.n0.fromJSON(e.mapped),e.startSelection&&s.jT.fromJSON(e.startSelection),e.selectionsAfter.map(s.jT.fromJSON))}static fromTransaction(e,t){let n=Zt;for(let t of e.startState.facet($t)){let r=t(e);r.length&&(n=n.concat(r))}return!n.length&&e.changes.empty?null:new Gt(e.changes.invert(e.startState.doc),n,void 0,t||e.startState.selection,Zt)}static selection(e){return new Gt(void 0,Zt,void 0,void 0,e)}}function Jt(e,t,n,r){let o=t+1>n+20?t-n-1:0,i=e.slice(o,t);return i.push(r),i}function Qt(e,t){return e.length?t.length?e.concat(t):e:t}const Zt=[],Xt=200;function en(e,t){if(e.length){let n=e[e.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-Xt));return r.length&&r[r.length-1].eq(t)?e:(r.push(t),Jt(e,e.length-1,1e9,n.setSelAfter(r)))}return[Gt.selection([t])]}function tn(e){let t=e[e.length-1],n=e.slice();return n[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),n}function nn(e,t){if(!e.length)return e;let n=e.length,r=Zt;for(;n;){let o=rn(e[n-1],t,r);if(o.changes&&!o.changes.empty||o.effects.length){let t=e.slice(0,n);return t[n-1]=o,t}t=o.mapped,n--,r=o.selectionsAfter}return r.length?[Gt.selection(r)]:Zt}function rn(e,t,n){let r=Qt(e.selectionsAfter.length?e.selectionsAfter.map((e=>e.map(t))):Zt,n);if(!e.changes)return Gt.selection(r);let o=e.changes.map(t),i=t.mapDesc(e.changes,!0),a=e.mapped?e.mapped.composeDesc(i):i;return new Gt(o,s.Py.mapEffects(e.effects,t),a,e.startSelection.map(i),r)}const on=/^(input\.type|delete)($|\.)/;class sn{constructor(e,t,n=0,r=undefined){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new sn(this.done,this.undone):this}addChanges(e,t,n,r,o){let i=this.done,s=i[i.length-1];return i=s&&s.changes&&!s.changes.empty&&e.changes&&(!n||on.test(n))&&(!s.selectionsAfter.length&&t-this.prevTime<r.newGroupDelay&&r.joinToEvent(o,function(e,t){let n=[],r=!1;return e.iterChangedRanges(((e,t)=>n.push(e,t))),t.iterChangedRanges(((e,t,o,i)=>{for(let e=0;e<n.length;){let t=n[e++],s=n[e++];i>=t&&o<=s&&(r=!0)}})),r}(s.changes,e.changes))||"input.type.compose"==n)?Jt(i,i.length-1,r.minDepth,new Gt(e.changes.compose(s.changes),Qt(e.effects,s.effects),s.mapped,s.startSelection,Zt)):Jt(i,i.length,r.minDepth,e),new sn(i,Zt,t,n)}addSelection(e,t,n,r){let o=this.done.length?this.done[this.done.length-1].selectionsAfter:Zt;return o.length>0&&t-this.prevTime<r&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&(i=o[o.length-1],s=e,i.ranges.length==s.ranges.length&&0===i.ranges.filter(((e,t)=>e.empty!=s.ranges[t].empty)).length)?this:new sn(en(this.done,e),this.undone,t,n);var i,s}addMapping(e){return new sn(nn(this.done,e),nn(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,n){let r=0==e?this.done:this.undone;if(0==r.length)return null;let o=r[r.length-1];if(n&&o.selectionsAfter.length)return t.update({selection:o.selectionsAfter[o.selectionsAfter.length-1],annotations:Bt.of({side:e,rest:tn(r)}),userEvent:0==e?"select.undo":"select.redo",scrollIntoView:!0});if(o.changes){let n=1==r.length?Zt:r.slice(0,r.length-1);return o.mapped&&(n=nn(n,o.mapped)),t.update({changes:o.changes,selection:o.startSelection,effects:o.effects,annotations:Bt.of({side:e,rest:n}),filter:!1,userEvent:0==e?"undo":"redo",scrollIntoView:!0})}return null}}sn.empty=new sn(Zt,Zt);const an=[{key:"Mod-z",run:Vt,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:qt,preventDefault:!0},{linux:"Ctrl-Shift-z",run:qt,preventDefault:!0},{key:"Mod-u",run:Kt,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Yt,preventDefault:!0}];function ln(e,t){return s.jT.create(e.ranges.map(t),e.mainIndex)}function cn(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function un({state:e,dispatch:t},n){let r=ln(e.selection,n);return!r.eq(e.selection)&&(t(cn(e,r)),!0)}function hn(e,t){return s.jT.cursor(t?e.to:e.from)}function dn(e,t){return un(e,(n=>n.empty?e.moveByChar(n,t):hn(n,t)))}function fn(e){return e.textDirectionAt(e.state.selection.main.head)==a.Nm.LTR}const pn=e=>dn(e,!fn(e)),mn=e=>dn(e,fn(e));function gn(e,t){return un(e,(n=>n.empty?e.moveByGroup(n,t):hn(n,t)))}function yn(e,t,n){if(t.type.prop(n))return!0;let r=t.to-t.from;return r&&(r>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function vn(e,t,n){let r,o,i=pe(e).resolveInner(t.head),a=n?h.closedBy:h.openedBy;for(let r=t.head;;){let t=n?i.childAfter(r):i.childBefore(r);if(!t)break;yn(e,t,a)?i=t:r=n?t.to:t.from}return o=i.type.prop(a)&&(r=n?kt(e,i.from,1):kt(e,i.to,-1))&&r.matched?n?r.end.to:r.end.from:n?i.to:i.from,s.jT.cursor(o,n?-1:1)}function bn(e,t){return un(e,(n=>{if(!n.empty)return hn(n,t);let r=e.moveVertically(n,t);return r.head!=n.head?r:e.moveToLineBoundary(n,t)}))}const wn=e=>bn(e,!1),xn=e=>bn(e,!0);function Sn(e){let t,n=e.scrollDOM.clientHeight<e.scrollDOM.scrollHeight-2,r=0,o=0;if(n){for(let t of e.state.facet(a.tk.scrollMargins)){let n=t(e);(null==n?void 0:n.top)&&(r=Math.max(null==n?void 0:n.top,r)),(null==n?void 0:n.bottom)&&(o=Math.max(null==n?void 0:n.bottom,o))}t=e.scrollDOM.clientHeight-r-o}else t=(e.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:r,marginBottom:o,selfScroll:n,height:Math.max(e.defaultLineHeight,t-5)}}function kn(e,t){let n,r=Sn(e),{state:o}=e,i=ln(o.selection,(n=>n.empty?e.moveVertically(n,t,r.height):hn(n,t)));if(i.eq(o.selection))return!1;if(r.selfScroll){let t=e.coordsAtPos(o.selection.main.head),s=e.scrollDOM.getBoundingClientRect(),l=s.top+r.marginTop,c=s.bottom-r.marginBottom;t&&t.top>l&&t.bottom<c&&(n=a.tk.scrollIntoView(i.main.head,{y:"start",yMargin:t.top-l}))}return e.dispatch(cn(o,i),{effects:n}),!0}const Cn=e=>kn(e,!1),Mn=e=>kn(e,!0);function On(e,t,n){let r=e.lineBlockAt(t.head),o=e.moveToLineBoundary(t,n);if(o.head==t.head&&o.head!=(n?r.to:r.from)&&(o=e.moveToLineBoundary(t,n,!1)),!n&&o.head==r.from&&r.length){let n=/^\s*/.exec(e.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;n&&t.head!=r.from+n&&(o=s.jT.cursor(r.from+n))}return o}function En(e,t){let n=ln(e.state.selection,(e=>{let n=t(e);return s.jT.range(e.anchor,n.head,n.goalColumn,n.bidiLevel||void 0)}));return!n.eq(e.state.selection)&&(e.dispatch(cn(e.state,n)),!0)}function An(e,t){return En(e,(n=>e.moveByChar(n,t)))}const Tn=e=>An(e,!fn(e)),Dn=e=>An(e,fn(e));function _n(e,t){return En(e,(n=>e.moveByGroup(n,t)))}function Rn(e,t){return En(e,(n=>e.moveVertically(n,t)))}const Nn=e=>Rn(e,!1),Pn=e=>Rn(e,!0);function In(e,t){return En(e,(n=>e.moveVertically(n,t,Sn(e).height)))}const Ln=e=>In(e,!1),jn=e=>In(e,!0),Fn=({state:e,dispatch:t})=>(t(cn(e,{anchor:0})),!0),Bn=({state:e,dispatch:t})=>(t(cn(e,{anchor:e.doc.length})),!0),zn=({state:e,dispatch:t})=>(t(cn(e,{anchor:e.selection.main.anchor,head:0})),!0),$n=({state:e,dispatch:t})=>(t(cn(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0);function Hn(e,t){if(e.state.readOnly)return!1;let n="delete.selection",{state:r}=e,o=r.changeByRange((r=>{let{from:o,to:i}=r;if(o==i){let r=t(o);r<o?(n="delete.backward",r=Wn(e,r,!1)):r>o&&(n="delete.forward",r=Wn(e,r,!0)),o=Math.min(o,r),i=Math.max(i,r)}else o=Wn(e,o,!1),i=Wn(e,i,!0);return o==i?{range:r}:{changes:{from:o,to:i},range:s.jT.cursor(o)}}));return!o.changes.empty&&(e.dispatch(r.update(o,{scrollIntoView:!0,userEvent:n,effects:"delete.selection"==n?a.tk.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function Wn(e,t,n){if(e instanceof a.tk)for(let r of e.state.facet(a.tk.atomicRanges).map((t=>t(e))))r.between(t,t,((e,r)=>{e<t&&r>t&&(t=n?r:e)}));return t}const Un=(e,t)=>Hn(e,(n=>{let r,o,{state:i}=e,a=i.doc.lineAt(n);if(!t&&n>a.from&&n<a.from+200&&!/[^ \t]/.test(r=a.text.slice(0,n-a.from))){if("\t"==r[r.length-1])return n-1;let e=(0,s.IS)(r,i.tabSize)%Oe(i)||Oe(i);for(let t=0;t<e&&" "==r[r.length-1-t];t++)n--;o=n}else o=(0,s.cp)(a.text,n-a.from,t,t)+a.from,o==n&&a.number!=(t?i.doc.lines:1)&&(o+=t?1:-1);return o})),Vn=e=>Un(e,!1),qn=e=>Un(e,!0),Kn=(e,t)=>Hn(e,(n=>{let r=n,{state:o}=e,i=o.doc.lineAt(r),a=o.charCategorizer(r);for(let e=null;;){if(r==(t?i.to:i.from)){r==n&&i.number!=(t?o.doc.lines:1)&&(r+=t?1:-1);break}let l=(0,s.cp)(i.text,r-i.from,t)+i.from,c=i.text.slice(Math.min(r,l)-i.from,Math.max(r,l)-i.from),u=a(c);if(null!=e&&u!=e)break;" "==c&&r==n||(e=u),r=l}return r})),Yn=e=>Kn(e,!1),Gn=e=>Hn(e,(t=>{let n=e.lineBlockAt(t).to;return t<n?n:Math.min(e.state.doc.length,t+1)}));function Jn(e){let t=[],n=-1;for(let r of e.selection.ranges){let o=e.doc.lineAt(r.from),i=e.doc.lineAt(r.to);if(r.empty||r.to!=i.from||(i=e.doc.lineAt(r.to-1)),n>=o.number){let e=t[t.length-1];e.to=i.to,e.ranges.push(r)}else t.push({from:o.from,to:i.to,ranges:[r]});n=i.number+1}return t}function Qn(e,t,n){if(e.readOnly)return!1;let r=[],o=[];for(let t of Jn(e)){if(n?t.to==e.doc.length:0==t.from)continue;let i=e.doc.lineAt(n?t.to+1:t.from-1),a=i.length+1;if(n){r.push({from:t.to,to:i.to},{from:t.from,insert:i.text+e.lineBreak});for(let n of t.ranges)o.push(s.jT.range(Math.min(e.doc.length,n.anchor+a),Math.min(e.doc.length,n.head+a)))}else{r.push({from:i.from,to:t.from},{from:t.to,insert:e.lineBreak+i.text});for(let e of t.ranges)o.push(s.jT.range(e.anchor-a,e.head-a))}}return!!r.length&&(t(e.update({changes:r,scrollIntoView:!0,selection:s.jT.create(o,e.selection.mainIndex),userEvent:"move.line"})),!0)}function Zn(e,t,n){if(e.readOnly)return!1;let r=[];for(let t of Jn(e))n?r.push({from:t.from,insert:e.doc.slice(t.from,t.to)+e.lineBreak}):r.push({from:t.to,insert:e.lineBreak+e.doc.slice(t.from,t.to)});return t(e.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const Xn=er(!1);function er(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=t.changeByRange((n=>{let{from:r,to:o}=n,i=t.doc.lineAt(r),a=!e&&r==o&&function(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n,r=pe(e).resolveInner(t),o=r.childBefore(t),i=r.childAfter(t);return o&&i&&o.to<=t&&i.from>=t&&(n=o.type.prop(h.closedBy))&&n.indexOf(i.name)>-1&&e.doc.lineAt(o.to).from==e.doc.lineAt(i.from).from?{from:o.to,to:i.from}:null}(t,r);e&&(r=o=(o<=i.to?i:t.doc.lineAt(o)).to);let l=new Te(t,{simulateBreak:r,simulateDoubleBreak:!!a}),c=Ae(l,r);for(null==c&&(c=/^\s*/.exec(t.doc.lineAt(r).text)[0].length);o<i.to&&/\s/.test(i.text[o-i.from]);)o++;a?({from:r,to:o}=a):r>i.from&&r<i.from+100&&!/\S/.test(i.text.slice(0,r))&&(r=i.from);let u=["",Ee(t,c)];return a&&u.push(Ee(t,l.lineIndent(i.from,-1))),{changes:{from:r,to:o,insert:s.xv.of(u)},range:s.jT.cursor(r+1+u[1].length)}}));return n(t.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function tr(e,t){let n=-1;return e.changeByRange((r=>{let o=[];for(let i=r.from;i<=r.to;){let s=e.doc.lineAt(i);s.number>n&&(r.empty||r.to>s.from)&&(t(s,o,r),n=s.number),i=s.to+1}let i=e.changes(o);return{changes:o,range:s.jT.range(i.mapPos(r.anchor,1),i.mapPos(r.head,1))}}))}const nr=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(tr(e,((t,n)=>{n.push({from:t.from,insert:e.facet(Me)})})),{userEvent:"input.indent"})),!0),rr=({state:e,dispatch:t})=>!e.readOnly&&(t(e.update(tr(e,((t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let o=(0,s.IS)(r,e.tabSize),i=0,a=Ee(e,Math.max(0,o-Oe(e)));for(;i<r.length&&i<a.length&&r.charCodeAt(i)==a.charCodeAt(i);)i++;n.push({from:t.from+i,to:t.from+r.length,insert:a.slice(i)})})),{userEvent:"delete.dedent"})),!0),or=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:e=>un(e,(t=>vn(e.state,t,!fn(e)))),shift:e=>En(e,(t=>vn(e.state,t,!fn(e))))},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:e=>un(e,(t=>vn(e.state,t,fn(e)))),shift:e=>En(e,(t=>vn(e.state,t,fn(e))))},{key:"Alt-ArrowUp",run:({state:e,dispatch:t})=>Qn(e,t,!1)},{key:"Shift-Alt-ArrowUp",run:({state:e,dispatch:t})=>Zn(e,t,!1)},{key:"Alt-ArrowDown",run:({state:e,dispatch:t})=>Qn(e,t,!0)},{key:"Shift-Alt-ArrowDown",run:({state:e,dispatch:t})=>Zn(e,t,!0)},{key:"Escape",run:({state:e,dispatch:t})=>{let n=e.selection,r=null;return n.ranges.length>1?r=s.jT.create([n.main]):n.main.empty||(r=s.jT.create([s.jT.cursor(n.main.head)])),!!r&&(t(cn(e,r)),!0)}},{key:"Mod-Enter",run:er(!0)},{key:"Alt-l",mac:"Ctrl-l",run:({state:e,dispatch:t})=>{let n=Jn(e).map((({from:t,to:n})=>s.jT.range(t,Math.min(n+1,e.doc.length))));return t(e.update({selection:s.jT.create(n),userEvent:"select"})),!0}},{key:"Mod-i",run:({state:e,dispatch:t})=>{let n=ln(e.selection,(t=>{var n;let r=pe(e).resolveInner(t.head,1);for(;!(r.from<t.from&&r.to>=t.to||r.to>t.to&&r.from<=t.from)&&(null===(n=r.parent)||void 0===n?void 0:n.parent);)r=r.parent;return s.jT.range(r.to,r.from)}));return t(cn(e,n)),!0},preventDefault:!0},{key:"Mod-[",run:rr},{key:"Mod-]",run:nr},{key:"Mod-Alt-\\",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),r=new Te(e,{overrideIndentation:e=>{let t=n[e];return null==t?-1:t}}),o=tr(e,((t,o,i)=>{let s=Ae(r,t.from);if(null==s)return;/\S/.test(t.text)||(s=0);let a=/^\s*/.exec(t.text)[0],l=Ee(e,s);(a!=l||i.from<t.from+a.length)&&(n[t.from]=s,o.push({from:t.from,to:t.from+a.length,insert:l}))}));return o.changes.empty||t(e.update(o,{userEvent:"indent"})),!0}},{key:"Shift-Mod-k",run:e=>{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(Jn(t).map((({from:e,to:n})=>(e>0?e--:n<t.doc.length&&n++,{from:e,to:n})))),r=ln(t.selection,(t=>e.moveVertically(t,!0))).map(n);return e.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0}},{key:"Shift-Mod-\\",run:({state:e,dispatch:t})=>function(e,t,n){let r=!1,o=ln(e.selection,(t=>{let o=kt(e,t.head,-1)||kt(e,t.head,1)||t.head>0&&kt(e,t.head-1,1)||t.head<e.doc.length&&kt(e,t.head+1,-1);if(!o||!o.end)return t;r=!0;let i=o.start.from==t.head?o.end.to:o.end.from;return n?s.jT.range(t.anchor,i):s.jT.cursor(i)}));return!!r&&(t(cn(e,o)),!0)}(e,t,!1)},{key:"Mod-/",run:e=>{let{state:t}=e,n=t.doc.lineAt(t.selection.main.from),r=It(e.state,n.from);return r.line?Rt(e):!!r.block&&Pt(e)}},{key:"Alt-A",run:Nt}].concat([{key:"ArrowLeft",run:pn,shift:Tn,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:e=>gn(e,!fn(e)),shift:e=>_n(e,!fn(e)),preventDefault:!0},{mac:"Cmd-ArrowLeft",run:e=>un(e,(t=>On(e,t,!fn(e)))),shift:e=>En(e,(t=>On(e,t,!fn(e)))),preventDefault:!0},{key:"ArrowRight",run:mn,shift:Dn,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:e=>gn(e,fn(e)),shift:e=>_n(e,fn(e)),preventDefault:!0},{mac:"Cmd-ArrowRight",run:e=>un(e,(t=>On(e,t,fn(e)))),shift:e=>En(e,(t=>On(e,t,fn(e)))),preventDefault:!0},{key:"ArrowUp",run:wn,shift:Nn,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Fn,shift:zn},{mac:"Ctrl-ArrowUp",run:Cn,shift:Ln},{key:"ArrowDown",run:xn,shift:Pn,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Bn,shift:$n},{mac:"Ctrl-ArrowDown",run:Mn,shift:jn},{key:"PageUp",run:Cn,shift:Ln},{key:"PageDown",run:Mn,shift:jn},{key:"Home",run:e=>un(e,(t=>On(e,t,!1))),shift:e=>En(e,(t=>On(e,t,!1))),preventDefault:!0},{key:"Mod-Home",run:Fn,shift:zn},{key:"End",run:e=>un(e,(t=>On(e,t,!0))),shift:e=>En(e,(t=>On(e,t,!0))),preventDefault:!0},{key:"Mod-End",run:Bn,shift:$n},{key:"Enter",run:Xn},{key:"Mod-a",run:({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0)},{key:"Backspace",run:Vn,shift:Vn},{key:"Delete",run:qn},{key:"Mod-Backspace",mac:"Alt-Backspace",run:Yn},{key:"Mod-Delete",mac:"Alt-Delete",run:e=>Kn(e,!0)},{mac:"Mod-Backspace",run:e=>Hn(e,(t=>{let n=e.lineBlockAt(t).from;return t>n?n:Math.max(0,t-1)}))},{mac:"Mod-Delete",run:Gn}].concat([{key:"Ctrl-b",run:pn,shift:Tn,preventDefault:!0},{key:"Ctrl-f",run:mn,shift:Dn},{key:"Ctrl-p",run:wn,shift:Nn},{key:"Ctrl-n",run:xn,shift:Pn},{key:"Ctrl-a",run:e=>un(e,(t=>s.jT.cursor(e.lineBlockAt(t.head).from,1))),shift:e=>En(e,(t=>s.jT.cursor(e.lineBlockAt(t.head).from)))},{key:"Ctrl-e",run:e=>un(e,(t=>s.jT.cursor(e.lineBlockAt(t.head).to,-1))),shift:e=>En(e,(t=>s.jT.cursor(e.lineBlockAt(t.head).to)))},{key:"Ctrl-d",run:qn},{key:"Ctrl-h",run:Vn},{key:"Ctrl-k",run:Gn},{key:"Ctrl-Alt-h",run:Yn},{key:"Ctrl-o",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((e=>({changes:{from:e.from,to:e.to,insert:s.xv.of(["",""])},range:s.jT.cursor(e.from)})));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}},{key:"Ctrl-t",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange((t=>{if(!t.empty||0==t.from||t.from==e.doc.length)return{range:t};let n=t.from,r=e.doc.lineAt(n),o=n==r.from?n-1:(0,s.cp)(r.text,n-r.from,!1)+r.from,i=n==r.to?n+1:(0,s.cp)(r.text,n-r.from,!0)+r.from;return{changes:{from:o,to:i,insert:e.doc.slice(n,i).append(e.doc.slice(o,n))},range:s.jT.cursor(i)}}));return!n.changes.empty&&(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)}},{key:"Ctrl-v",run:Mn}].map((e=>({mac:e.key,run:e.run,shift:e.shift}))))),ir={key:"Tab",run:nr,shift:rr};function sr(){var e=arguments[0];"string"==typeof e&&(e=document.createElement(e));var t=1,n=arguments[1];if(n&&"object"==typeof n&&null==n.nodeType&&!Array.isArray(n)){for(var r in n)if(Object.prototype.hasOwnProperty.call(n,r)){var o=n[r];"string"==typeof o?e.setAttribute(r,o):null!=o&&(e[r]=o)}t++}for(;t<arguments.length;t++)ar(e,arguments[t]);return e}function ar(e,t){if("string"==typeof t)e.appendChild(document.createTextNode(t));else if(null==t);else if(null!=t.nodeType)e.appendChild(t);else{if(!Array.isArray(t))throw new RangeError("Unsupported child node: "+t);for(var n=0;n<t.length;n++)ar(e,t[n])}}const lr="function"==typeof String.prototype.normalize?e=>e.normalize("NFKD"):e=>e;class cr{constructor(e,t,n=0,r=e.length,o,i){this.test=i,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=o?e=>o(lr(e)):lr,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return(0,s.gm)(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=(0,s.bg)(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=(0,s.nZ)(e);let r=this.normalize(t);for(let e=0,o=n;;e++){let i=r.charCodeAt(e),s=this.match(i,o);if(s)return this.value=s,this;if(e==r.length-1)break;o==n&&e<t.length&&t.charCodeAt(e)==i&&o++}}}match(e,t){let n=null;for(let r=0;r<this.matches.length;r+=2){let o=this.matches[r],i=!1;this.query.charCodeAt(o)==e&&(o==this.query.length-1?n={from:this.matches[r+1],to:t+1}:(this.matches[r]++,i=!0)),i||(this.matches.splice(r,2),r-=2)}return this.query.charCodeAt(0)==e&&(1==this.query.length?n={from:t,to:t+1}:this.matches.push(1,t)),n&&this.test&&!this.test(n.from,n.to,this.buffer,this.bufferPos)&&(n=null),n}}"undefined"!=typeof Symbol&&(cr.prototype[Symbol.iterator]=function(){return this});const ur={from:-1,to:-1,match:/.*/.exec("")},hr="gm"+(null==/x/.unicode?"":"u");class dr{constructor(e,t,n,r=0,o=e.length){if(this.text=e,this.to=o,this.curLine="",this.done=!1,this.value=ur,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new mr(e,t,n,r,o);this.re=new RegExp(t,hr+((null==n?void 0:n.ignoreCase)?"i":"")),this.test=null==n?void 0:n.test,this.iter=e.iter();let i=e.lineAt(r);this.curLineStart=i.from,this.matchPos=gr(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=gr(this.text,r+(n==r?1:0)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,match:t},this;e=this.matchPos-this.curLineStart}else{if(!(this.curLineStart+this.curLine.length<this.to))return this.done=!0,this;this.nextLine(),e=0}}}}const fr=new WeakMap;class pr{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,n){let r=fr.get(e);if(!r||r.from>=n||r.to<=t){let r=new pr(t,e.sliceString(t,n));return fr.set(e,r),r}if(r.from==t&&r.to==n)return r;let{text:o,from:i}=r;return i>t&&(o=e.sliceString(t,i)+o,i=t),r.to<n&&(o+=e.sliceString(r.to,n)),fr.set(e,new pr(i,o)),new pr(t,o.slice(t-i,n-i))}}class mr{constructor(e,t,n,r,o){this.text=e,this.to=o,this.done=!1,this.value=ur,this.matchPos=gr(e,r),this.re=new RegExp(t,hr+((null==n?void 0:n.ignoreCase)?"i":"")),this.test=null==n?void 0:n.test,this.flat=pr.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,match:t},this.matchPos=gr(this.text,n+(e==n?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=pr.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+2*this.flat.text.length))}}}function gr(e,t){if(t>=e.length)return t;let n,r=e.lineAt(t);for(;t<r.to&&(n=r.text.charCodeAt(t-r.from))>=56320&&n<57344;)t++;return t}function yr(e){let t=sr("input",{class:"cm-textfield",name:"line"});function n(){let n=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(t.value);if(!n)return;let{state:r}=e,o=r.doc.lineAt(r.selection.main.head),[,i,a,l,c]=n,u=l?+l.slice(1):0,h=a?+a:o.number;if(a&&c){let e=h/100;i&&(e=e*("-"==i?-1:1)+o.number/r.doc.lines),h=Math.round(r.doc.lines*e)}else a&&i&&(h=h*("-"==i?-1:1)+o.number);let d=r.doc.line(Math.max(1,Math.min(r.doc.lines,h)));e.dispatch({effects:vr.of(!1),selection:s.jT.cursor(d.from+Math.max(0,Math.min(u,d.length))),scrollIntoView:!0}),e.focus()}return{dom:sr("form",{class:"cm-gotoLine",onkeydown:t=>{27==t.keyCode?(t.preventDefault(),e.dispatch({effects:vr.of(!1)}),e.focus()):13==t.keyCode&&(t.preventDefault(),n())},onsubmit:e=>{e.preventDefault(),n()}},sr("label",e.state.phrase("Go to line"),": ",t)," ",sr("button",{class:"cm-button",type:"submit"},e.state.phrase("go")))}}"undefined"!=typeof Symbol&&(dr.prototype[Symbol.iterator]=mr.prototype[Symbol.iterator]=function(){return this});const vr=s.Py.define(),br=s.QQ.define({create:()=>!0,update(e,t){for(let n of t.effects)n.is(vr)&&(e=n.value);return e},provide:e=>a.mH.from(e,(e=>e?yr:null))}),wr=a.tk.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px","& label":{fontSize:"80%"}}}),xr={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},Sr=s.r$.define({combine:e=>(0,s.BO)(e,xr,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}),kr=a.p.mark({class:"cm-selectionMatch"}),Cr=a.p.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function Mr(e,t,n,r){return!(0!=n&&e(t.sliceDoc(n-1,n))==s.D0.Word||r!=t.doc.length&&e(t.sliceDoc(r,r+1))==s.D0.Word)}const Or=a.lg.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(Sr),{state:n}=e,r=n.selection;if(r.ranges.length>1)return a.p.none;let o,i=r.main,l=null;if(i.empty){if(!t.highlightWordAroundCursor)return a.p.none;let e=n.wordAt(i.head);if(!e)return a.p.none;l=n.charCategorizer(i.head),o=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return a.p.none;if(t.wholeWords){if(o=n.sliceDoc(i.from,i.to),l=n.charCategorizer(i.head),!Mr(l,n,i.from,i.to)||!function(e,t,n,r){return e(t.sliceDoc(n,n+1))==s.D0.Word&&e(t.sliceDoc(r-1,r))==s.D0.Word}(l,n,i.from,i.to))return a.p.none}else if(o=n.sliceDoc(i.from,i.to).trim(),!o)return a.p.none}let c=[];for(let r of e.visibleRanges){let e=new cr(n.doc,o,r.from,r.to);for(;!e.next().done;){let{from:r,to:o}=e.value;if((!l||Mr(l,n,r,o))&&(i.empty&&r<=i.from&&o>=i.to?c.push(Cr.range(r,o)):(r>=i.to||o<=i.from)&&c.push(kr.range(r,o)),c.length>t.maxMatches))return a.p.none}}return a.p.set(c)}},{decorations:e=>e.decorations}),Er=a.tk.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),Ar=s.r$.define({combine:e=>(0,s.BO)(e,{top:!1,caseSensitive:!1,literal:!1,wholeWord:!1,createPanel:e=>new to(e),scrollToMatch:e=>a.tk.scrollIntoView(e)})});class Tr{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||function(e){try{return new RegExp(e,hr),!0}catch(e){return!1}}(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,((e,t)=>"n"==t?"\n":"r"==t?"\r":"t"==t?"\t":"\\"))}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new Lr(this):new Rr(this)}getCursor(e,t=0,n){let r=e.doc?e:s.yy.create({doc:e});return null==n&&(n=r.doc.length),this.regexp?Nr(this,r,t,n):_r(this,r,t,n)}}class Dr{constructor(e){this.spec=e}}function _r(e,t,n,r){return new cr(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:e=>e.toLowerCase(),e.wholeWord?(o=t.doc,i=t.charCategorizer(t.selection.main.head),(e,t,n,r)=>((r>e||r+n.length<t)&&(r=Math.max(0,e-2),n=o.sliceString(r,Math.min(o.length,t+2))),!(i(Pr(n,e-r))==s.D0.Word&&i(Ir(n,e-r))==s.D0.Word||i(Ir(n,t-r))==s.D0.Word&&i(Pr(n,t-r))==s.D0.Word))):void 0);var o,i}class Rr extends Dr{constructor(e){super(e)}nextMatch(e,t,n){let r=_r(this.spec,e,n,e.doc.length).nextOverlapping();return r.done&&(r=_r(this.spec,e,0,t).nextOverlapping()),r.done?null:r.value}prevMatchInRange(e,t,n){for(let r=n;;){let n=Math.max(t,r-1e4-this.spec.unquoted.length),o=_r(this.spec,e,n,r),i=null;for(;!o.nextOverlapping().done;)i=o.value;if(i)return i;if(n==t)return null;r-=1e4}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let n=_r(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let o=_r(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!o.next().done;)r(o.value.from,o.value.to)}}function Nr(e,t,n,r){return new dr(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:e.wholeWord?(o=t.charCategorizer(t.selection.main.head),(e,t,n)=>!n[0].length||(o(Pr(n.input,n.index))!=s.D0.Word||o(Ir(n.input,n.index))!=s.D0.Word)&&(o(Ir(n.input,n.index+n[0].length))!=s.D0.Word||o(Pr(n.input,n.index+n[0].length))!=s.D0.Word)):void 0},n,r);var o}function Pr(e,t){return e.slice((0,s.cp)(e,t,!1),t)}function Ir(e,t){return e.slice(t,(0,s.cp)(e,t))}class Lr extends Dr{nextMatch(e,t,n){let r=Nr(this.spec,e,n,e.doc.length).next();return r.done&&(r=Nr(this.spec,e,0,t).next()),r.done?null:r.value}prevMatchInRange(e,t,n){for(let r=1;;r++){let o=Math.max(t,n-1e4*r),i=Nr(this.spec,e,o,n),s=null;for(;!i.next().done;)s=i.value;if(s&&(o==t||s.from>o+10))return s;if(o==t)return null}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace.replace(/\$([$&\d+])/g,((t,n)=>"$"==n?"$":"&"==n?e.match[0]:"0"!=n&&+n<e.match.length?e.match[n]:t)))}matchAll(e,t){let n=Nr(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let o=Nr(this.spec,e,Math.max(0,t-250),Math.min(n+250,e.doc.length));for(;!o.next().done;)r(o.value.from,o.value.to)}}const jr=s.Py.define(),Fr=s.Py.define(),Br=s.QQ.define({create:e=>new zr(Qr(e).create(),null),update(e,t){for(let n of t.effects)n.is(jr)?e=new zr(n.value.create(),e.panel):n.is(Fr)&&(e=new zr(e.query,n.value?Jr:null));return e},provide:e=>a.mH.from(e,(e=>e.panel))});class zr{constructor(e,t){this.query=e,this.panel=t}}const $r=a.p.mark({class:"cm-searchMatch"}),Hr=a.p.mark({class:"cm-searchMatch cm-searchMatch-selected"}),Wr=a.lg.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(Br))}update(e){let t=e.state.field(Br);(t!=e.startState.field(Br)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return a.p.none;let{view:n}=this,r=new s.f_;for(let t=0,o=n.visibleRanges,i=o.length;t<i;t++){let{from:s,to:a}=o[t];for(;t<i-1&&a>o[t+1].from-500;)a=o[++t].to;e.highlight(n.state,s,a,((e,t)=>{let o=n.state.selection.ranges.some((n=>n.from==e&&n.to==t));r.add(e,t,o?Hr:$r)}))}return r.finish()}},{decorations:e=>e.decorations});function Ur(e){return t=>{let n=t.state.field(Br,!1);return n&&n.query.spec.valid?e(t,n):Zr(t)}}const Vr=Ur(((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let o=s.jT.single(r.from,r.to),i=e.state.facet(Ar);return e.dispatch({selection:o,effects:[io(e,r),i.scrollToMatch(o.main)],userEvent:"select.search"}),!0})),qr=Ur(((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,o=t.prevMatch(n,r,r);if(!o)return!1;let i=s.jT.single(o.from,o.to),a=e.state.facet(Ar);return e.dispatch({selection:i,effects:[io(e,o),a.scrollToMatch(i.main)],userEvent:"select.search"}),!0})),Kr=Ur(((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!(!n||!n.length||(e.dispatch({selection:s.jT.create(n.map((e=>s.jT.range(e.from,e.to)))),userEvent:"select.search.matches"}),0))})),Yr=Ur(((e,{query:t})=>{let{state:n}=e,{from:r,to:o}=n.selection.main;if(n.readOnly)return!1;let i=t.nextMatch(n,r,r);if(!i)return!1;let l,c,u=[],h=[];if(i.from==r&&i.to==o&&(c=n.toText(t.getReplacement(i)),u.push({from:i.from,to:i.to,insert:c}),i=t.nextMatch(n,i.from,i.to),h.push(a.tk.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(r).number)+"."))),i){let t=0==u.length||u[0].from>=i.to?0:i.to-i.from-c.length;l=s.jT.single(i.from-t,i.to-t),h.push(io(e,i)),h.push(n.facet(Ar).scrollToMatch(l.main))}return e.dispatch({changes:u,selection:l,effects:h,userEvent:"input.replace"}),!0})),Gr=Ur(((e,{query:t})=>{if(e.state.readOnly)return!1;let n=t.matchAll(e.state,1e9).map((e=>{let{from:n,to:r}=e;return{from:n,to:r,insert:t.getReplacement(e)}}));if(!n.length)return!1;let r=e.state.phrase("replaced $ matches",n.length)+".";return e.dispatch({changes:n,effects:a.tk.announce.of(r),userEvent:"input.replace.all"}),!0}));function Jr(e){return e.state.facet(Ar).createPanel(e)}function Qr(e,t){var n,r,o,i;let s=e.selection.main,a=s.empty||s.to>s.from+100?"":e.sliceDoc(s.from,s.to);if(t&&!a)return t;let l=e.facet(Ar);return new Tr({search:(null!==(n=null==t?void 0:t.literal)&&void 0!==n?n:l.literal)?a:a.replace(/\n/g,"\\n"),caseSensitive:null!==(r=null==t?void 0:t.caseSensitive)&&void 0!==r?r:l.caseSensitive,literal:null!==(o=null==t?void 0:t.literal)&&void 0!==o?o:l.literal,wholeWord:null!==(i=null==t?void 0:t.wholeWord)&&void 0!==i?i:l.wholeWord})}const Zr=e=>{let t=e.state.field(Br,!1);if(t&&t.panel){let n=(0,a.Sd)(e,Jr);if(!n)return!1;let r=n.dom.querySelector("[main-field]");if(r&&r!=e.root.activeElement){let n=Qr(e.state,t.query.spec);n.valid&&e.dispatch({effects:jr.of(n)}),r.focus(),r.select()}}else e.dispatch({effects:[Fr.of(!0),t?jr.of(Qr(e.state,t.query.spec)):s.Py.appendConfig.of(ao)]});return!0},Xr=e=>{let t=e.state.field(Br,!1);if(!t||!t.panel)return!1;let n=(0,a.Sd)(e,Jr);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:Fr.of(!1)}),!0},eo=[{key:"Mod-f",run:Zr,scope:"editor search-panel"},{key:"F3",run:Vr,shift:qr,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Vr,shift:qr,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:Xr,scope:"editor search-panel"},{key:"Mod-Shift-l",run:({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:o}=n.main,i=[],a=0;for(let t=new cr(e.doc,e.sliceDoc(r,o));!t.next().done;){if(i.length>1e3)return!1;t.value.from==r&&(a=i.length),i.push(s.jT.range(t.value.from,t.value.to))}return t(e.update({selection:s.jT.create(i,a),userEvent:"select.search.matches"})),!0}},{key:"Alt-g",run:e=>{let t=(0,a.Sd)(e,yr);if(!t){let n=[vr.of(!0)];null==e.state.field(br,!1)&&n.push(s.Py.appendConfig.of([br,wr])),e.dispatch({effects:n}),t=(0,a.Sd)(e,yr)}return t&&t.dom.querySelector("input").focus(),!0}},{key:"Mod-d",run:({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some((e=>e.from===e.to)))return(({state:e,dispatch:t})=>{let{selection:n}=e,r=s.jT.create(n.ranges.map((t=>e.wordAt(t.head)||s.jT.cursor(t.head))),n.mainIndex);return!r.eq(n)&&(t(e.update({selection:r})),!0)})({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some((t=>e.sliceDoc(t.from,t.to)!=r)))return!1;let o=function(e,t){let{main:n,ranges:r}=e.selection,o=e.wordAt(n.head),i=o&&o.from==n.from&&o.to==n.to;for(let n=!1,o=new cr(e.doc,t,r[r.length-1].to);;){if(o.next(),!o.done){if(n&&r.some((e=>e.from==o.value.from)))continue;if(i){let t=e.wordAt(o.value.from);if(!t||t.from!=o.value.from||t.to!=o.value.to)continue}return o.value}if(n)return null;o=new cr(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}}(e,r);return!!o&&(t(e.update({selection:e.selection.addRange(s.jT.range(o.from,o.to),!1),effects:a.tk.scrollIntoView(o.to)})),!0)},preventDefault:!0}];class to{constructor(e){this.view=e;let t=this.query=e.state.field(Br).query.spec;function n(e,t,n){return sr("button",{class:"cm-button",name:e,onclick:t,type:"button"},n)}this.commit=this.commit.bind(this),this.searchField=sr("input",{value:t.search,placeholder:no(e,"Find"),"aria-label":no(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=sr("input",{value:t.replace,placeholder:no(e,"Replace"),"aria-label":no(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=sr("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=sr("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=sr("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit}),this.dom=sr("div",{onkeydown:e=>this.keydown(e),class:"cm-search"},[this.searchField,n("next",(()=>Vr(e)),[no(e,"next")]),n("prev",(()=>qr(e)),[no(e,"previous")]),n("select",(()=>Kr(e)),[no(e,"all")]),sr("label",null,[this.caseField,no(e,"match case")]),sr("label",null,[this.reField,no(e,"regexp")]),sr("label",null,[this.wordField,no(e,"by word")]),...e.state.readOnly?[]:[sr("br"),this.replaceField,n("replace",(()=>Yr(e)),[no(e,"replace")]),n("replaceAll",(()=>Gr(e)),[no(e,"replace all")])],sr("button",{name:"close",onclick:()=>Xr(e),"aria-label":no(e,"close"),type:"button"},["×"])])}commit(){let e=new Tr({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:jr.of(e)}))}keydown(e){(0,a.$1)(this.view,e,"search-panel")?e.preventDefault():13==e.keyCode&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?qr:Vr)(this.view)):13==e.keyCode&&e.target==this.replaceField&&(e.preventDefault(),Yr(this.view))}update(e){for(let t of e.transactions)for(let e of t.effects)e.is(jr)&&!e.value.eq(this.query)&&this.setQuery(e.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(Ar).top}}function no(e,t){return e.state.phrase(t)}const ro=30,oo=/[\s\.,:;?!]/;function io(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),o=e.state.doc.lineAt(n).to,i=Math.max(r.from,t-ro),s=Math.min(o,n+ro),l=e.state.sliceDoc(i,s);if(i!=r.from)for(let e=0;e<ro;e++)if(!oo.test(l[e+1])&&oo.test(l[e])){l=l.slice(e);break}if(s!=o)for(let e=l.length-1;e>l.length-ro;e--)if(!oo.test(l[e-1])&&oo.test(l[e])){l=l.slice(0,e);break}return a.tk.announce.of(`${e.state.phrase("current match")}. ${l} ${e.state.phrase("on line")} ${r.number}.`)}const so=a.tk.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),ao=[Br,s.Wl.lowest(Wr),so];class lo{constructor(e,t,n){this.state=e,this.pos=t,this.explicit=n,this.abortListeners=[]}tokenBefore(e){let t=pe(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),n=Math.max(t.from,this.pos-250),r=t.text.slice(n-t.from,this.pos-t.from),o=r.search(fo(e,!1));return o<0?null:{from:n+o,to:this.pos,text:r.slice(o)}}get aborted(){return null==this.abortListeners}addEventListener(e,t){"abort"==e&&this.abortListeners&&this.abortListeners.push(t)}}function co(e){let t=Object.keys(e).join(""),n=/\w/.test(t);return n&&(t=t.replace(/\w/g,"")),`[${n?"\\w":""}${t.replace(/[^\w\s]/g,"\\$&")}]`}class uo{constructor(e,t,n){this.completion=e,this.source=t,this.match=n}}function ho(e){return e.selection.main.head}function fo(e,t){var n;let{source:r}=e,o=t&&"^"!=r[0],i="$"!=r[r.length-1];return o||i?new RegExp(`${o?"^":""}(?:${r})${i?"$":""}`,null!==(n=e.flags)&&void 0!==n?n:e.ignoreCase?"i":""):e}const po=s.q6.define();function mo(e,t){const n=t.completion.apply||t.completion.label;let r=t.source;var o,i,a,l;"string"==typeof n?e.dispatch(Object.assign(Object.assign({},(o=e.state,i=n,a=r.from,l=r.to,Object.assign(Object.assign({},o.changeByRange((e=>{if(e==o.selection.main)return{changes:{from:a,to:l,insert:i},range:s.jT.cursor(a+i.length)};let t=l-a;return!e.empty||t&&o.sliceDoc(e.from-t,e.from)!=o.sliceDoc(a,l)?{range:e}:{changes:{from:e.from-t,to:e.from,insert:i},range:s.jT.cursor(e.from-t+i.length)}}))),{userEvent:"input.complete"}))),{annotations:po.of(t.completion)})):n(e,t.completion,r.from,r.to)}const go=new WeakMap;function yo(e){if(!Array.isArray(e))return e;let t=go.get(e);return t||go.set(e,t=function(e){let t=e.map((e=>"string"==typeof e?{label:e}:e)),[n,r]=t.every((e=>/^\w+$/.test(e.label)))?[/\w*$/,/\w+$/]:function(e){let t=Object.create(null),n=Object.create(null);for(let{label:r}of e){t[r[0]]=!0;for(let e=1;e<r.length;e++)n[r[e]]=!0}let r=co(t)+co(n)+"*$";return[new RegExp("^"+r),new RegExp(r)]}(t);return e=>{let o=e.matchBefore(r);return o||e.explicit?{from:o?o.from:e.pos,options:t,validFor:n}:null}}(e)),t}class vo{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[];for(let t=0;t<e.length;){let n=(0,s.gm)(e,t),r=(0,s.nZ)(n);this.chars.push(n);let o=e.slice(t,t+r),i=o.toUpperCase();this.folded.push((0,s.gm)(i==o?o.toLowerCase():i,0)),t+=r}this.astral=e.length!=this.chars.length}match(e){if(0==this.pattern.length)return[0];if(e.length<this.pattern.length)return null;let{chars:t,folded:n,any:r,precise:o,byWord:i}=this;if(1==t.length){let r=(0,s.gm)(e,0),o=(0,s.nZ)(r),i=o==e.length?0:-100;if(r==t[0]);else{if(r!=n[0])return null;i+=-200}return[i,0,o]}let a=e.indexOf(this.pattern);if(0==a)return[e.length==this.pattern.length?0:-100,0,this.pattern.length];let l=t.length,c=0;if(a<0){for(let o=0,i=Math.min(e.length,200);o<i&&c<l;){let i=(0,s.gm)(e,o);i!=t[c]&&i!=n[c]||(r[c++]=o),o+=(0,s.nZ)(i)}if(c<l)return null}let u=0,h=0,d=!1,f=0,p=-1,m=-1,g=/[a-z]/.test(e),y=!0;for(let r=0,c=Math.min(e.length,200),v=0;r<c&&h<l;){let c=(0,s.gm)(e,r);a<0&&(u<l&&c==t[u]&&(o[u++]=r),f<l&&(c==t[f]||c==n[f]?(0==f&&(p=r),m=r+1,f++):f=0));let b,w=c<255?c>=48&&c<=57||c>=97&&c<=122?2:c>=65&&c<=90?1:0:(b=(0,s.bg)(c))!=b.toLowerCase()?1:b!=b.toUpperCase()?2:0;(!r||1==w&&g||0==v&&0!=w)&&(t[h]==c||n[h]==c&&(d=!0)?i[h++]=r:i.length&&(y=!1)),v=w,r+=(0,s.nZ)(c)}return h==l&&0==i[0]&&y?this.result((d?-200:0)-100,i,e):f==l&&0==p?[-200-e.length+(m==e.length?0:-100),0,m]:a>-1?[-700-e.length,a,a+this.pattern.length]:f==l?[-900-e.length,p,m]:h==l?this.result((d?-200:0)-100-700+(y?0:-1100),i,e):2==t.length?null:this.result((r[0]?-700:0)-200-1100,r,e)}result(e,t,n){let r=[e-n.length],o=1;for(let e of t){let t=e+(this.astral?(0,s.nZ)((0,s.gm)(n,e)):1);o>1&&r[o-1]==e?r[o-1]=t:(r[o++]=e,r[o++]=t)}return r}}const bo=s.r$.define({combine:e=>(0,s.BO)(e,{activateOnTyping:!0,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>n=>wo(e(n),t(n)),optionClass:(e,t)=>n=>wo(e(n),t(n)),addToOptions:(e,t)=>e.concat(t)})});function wo(e,t){return e?t?e+" "+t:e:t}function xo(e,t,n){if(e<=n)return{from:0,to:e};if(t<0&&(t=0),t<=e>>1){let e=Math.floor(t/n);return{from:e*n,to:(e+1)*n}}let r=Math.floor((e-t)/n);return{from:e-(r+1)*n,to:e-r*n}}class So{constructor(e,t){this.view=e,this.stateField=t,this.info=null,this.placeInfo={read:()=>this.measureInfo(),write:e=>this.positionInfo(e),key:this},this.space=null,this.currentClass="";let n=e.state.field(t),{options:r,selected:o}=n.open,i=e.state.facet(bo);this.optionContent=function(e){let t=e.addToOptions.slice();return e.icons&&t.push({render(e){let t=document.createElement("div");return t.classList.add("cm-completionIcon"),e.type&&t.classList.add(...e.type.split(/\s+/g).map((e=>"cm-completionIcon-"+e))),t.setAttribute("aria-hidden","true"),t},position:20}),t.push({render(e,t,n){let r=document.createElement("span");r.className="cm-completionLabel";let{label:o}=e,i=0;for(let e=1;e<n.length;){let t=n[e++],s=n[e++];t>i&&r.appendChild(document.createTextNode(o.slice(i,t)));let a=r.appendChild(document.createElement("span"));a.appendChild(document.createTextNode(o.slice(t,s))),a.className="cm-completionMatchedText",i=s}return i<o.length&&r.appendChild(document.createTextNode(o.slice(i))),r},position:50},{render(e){if(!e.detail)return null;let t=document.createElement("span");return t.className="cm-completionDetail",t.textContent=e.detail,t},position:80}),t.sort(((e,t)=>e.position-t.position)).map((e=>e.render))}(i),this.optionClass=i.optionClass,this.tooltipClass=i.tooltipClass,this.range=xo(r.length,o,i.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",(t=>{for(let n,o=t.target;o&&o!=this.dom;o=o.parentNode)if("LI"==o.nodeName&&(n=/-(\d+)$/.exec(o.id))&&+n[1]<r.length)return mo(e,r[+n[1]]),void t.preventDefault()})),this.list=this.dom.appendChild(this.createListBox(r,n.id,this.range)),this.list.addEventListener("scroll",(()=>{this.info&&this.view.requestMeasure(this.placeInfo)}))}mount(){this.updateSel()}update(e){var t,n,r;let o=e.state.field(this.stateField),i=e.startState.field(this.stateField);this.updateTooltipClass(e.state),o!=i&&(this.updateSel(),(null===(t=o.open)||void 0===t?void 0:t.disabled)!=(null===(n=i.open)||void 0===n?void 0:n.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!(null===(r=o.open)||void 0===r?void 0:r.disabled)))}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let e of this.currentClass.split(" "))e&&this.dom.classList.remove(e);for(let e of t.split(" "))e&&this.dom.classList.add(e);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfo)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=xo(t.options.length,t.selected,this.view.state.facet(bo).maxRenderedOptions),this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t.options,e.id,this.range)),this.list.addEventListener("scroll",(()=>{this.info&&this.view.requestMeasure(this.placeInfo)}))),this.updateSelectedOption(t.selected)){this.info&&(this.info.remove(),this.info=null);let{completion:n}=t.options[t.selected],{info:r}=n;if(!r)return;let o="string"==typeof r?document.createTextNode(r):r(n);if(!o)return;"then"in o?o.then((t=>{t&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(t)})).catch((e=>(0,a.OO)(this.view.state,e,"completion info"))):this.addInfoPane(o)}}addInfoPane(e){let t=this.info=document.createElement("div");t.className="cm-tooltip cm-completionInfo",t.appendChild(e),this.dom.appendChild(t),this.view.requestMeasure(this.placeInfo)}updateSelectedOption(e){let t=null;for(let n=this.list.firstChild,r=this.range.from;n;n=n.nextSibling,r++)r==e?n.hasAttribute("aria-selected")||(n.setAttribute("aria-selected","true"),t=n):n.hasAttribute("aria-selected")&&n.removeAttribute("aria-selected");return t&&function(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect();r.top<n.top?e.scrollTop-=n.top-r.top:r.bottom>n.bottom&&(e.scrollTop+=r.bottom-n.bottom)}(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),n=this.info.getBoundingClientRect(),r=e.getBoundingClientRect(),o=this.space;if(!o){let e=this.dom.ownerDocument.defaultView||window;o={left:0,top:0,right:e.innerWidth,bottom:e.innerHeight}}if(r.top>Math.min(o.bottom,t.bottom)-10||r.bottom<Math.max(o.top,t.top)+10)return null;let i,s=this.view.textDirection==a.Nm.RTL,l=s,c=!1,u="",h="",d=t.left-o.left,f=o.right-t.right;if(l&&d<Math.min(n.width,f)?l=!1:!l&&f<Math.min(n.width,d)&&(l=!0),n.width<=(l?d:f))u=Math.max(o.top,Math.min(r.top,o.bottom-n.height))-t.top+"px",i=Math.min(400,l?d:f)+"px";else{c=!0,i=Math.min(400,(s?t.right:o.right-t.left)-30)+"px";let e=o.bottom-t.bottom;e>=n.height||e>t.top?u=r.bottom-t.top+"px":h=t.bottom-r.top+"px"}return{top:u,bottom:h,maxWidth:i,class:c?s?"left-narrow":"right-narrow":l?"left":"right"}}positionInfo(e){this.info&&(e?(this.info.style.top=e.top,this.info.style.bottom=e.bottom,this.info.style.maxWidth=e.maxWidth,this.info.className="cm-tooltip cm-completionInfo cm-completionInfo-"+e.class):this.info.style.top="-1e6px")}createListBox(e,t,n){const r=document.createElement("ul");r.id=t,r.setAttribute("role","listbox"),r.setAttribute("aria-expanded","true"),r.setAttribute("aria-label",this.view.state.phrase("Completions"));for(let o=n.from;o<n.to;o++){let{completion:n,match:i}=e[o];const s=r.appendChild(document.createElement("li"));s.id=t+"-"+o,s.setAttribute("role","option");let a=this.optionClass(n);a&&(s.className=a);for(let e of this.optionContent){let t=e(n,this.view.state,i);t&&s.appendChild(t)}}return n.from&&r.classList.add("cm-completionListIncompleteTop"),n.to<e.length&&r.classList.add("cm-completionListIncompleteBottom"),r}}function ko(e){return 100*(e.boost||0)+(e.apply?10:0)+(e.info?5:0)+(e.type?1:0)}class Co{constructor(e,t,n,r,o,i){this.options=e,this.attrs=t,this.tooltip=n,this.timestamp=r,this.selected=o,this.disabled=i}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Co(this.options,Eo(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,n,r,o){let i=function(e,t){let n=[],r=0;for(let o of e)if(o.hasResult())if(!1===o.result.filter){let e=o.result.getMatch;for(let t of o.result.options){let i=[1e9-r++];if(e)for(let n of e(t))i.push(n);n.push(new uo(t,o,i))}}else{let e,r=new vo(t.sliceDoc(o.from,o.to));for(let t of o.result.options)(e=r.match(t.label))&&(null!=t.boost&&(e[0]+=t.boost),n.push(new uo(t,o,e)))}let o=[],i=null,s=t.facet(bo).compareCompletions;for(let e of n.sort(((e,t)=>t.match[0]-e.match[0]||s(e.completion,t.completion))))!i||i.label!=e.completion.label||i.detail!=e.completion.detail||null!=i.type&&null!=e.completion.type&&i.type!=e.completion.type||i.apply!=e.completion.apply?o.push(e):ko(e.completion)>ko(i)&&(o[o.length-1]=e),i=e.completion;return o}(e,t);if(!i.length)return r&&e.some((e=>1==e.state))?new Co(r.options,r.attrs,r.tooltip,r.timestamp,r.selected,!0):null;let s=t.facet(bo).selectOnOpen?0:-1;if(r&&r.selected!=s&&-1!=r.selected){let e=r.options[r.selected].completion;for(let t=0;t<i.length;t++)if(i[t].completion==e){s=t;break}}return new Co(i,Eo(n,s),{pos:e.reduce(((e,t)=>t.hasResult()?Math.min(e,t.from):e),1e8),create:(a=Lo,e=>new So(e,a)),above:o.aboveCursor},r?r.timestamp:Date.now(),s,!1);var a}map(e){return new Co(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class Mo{constructor(e,t,n){this.active=e,this.id=t,this.open=n}static start(){return new Mo(Ao,"cm-ac-"+Math.floor(2e6*Math.random()).toString(36),null)}update(e){let{state:t}=e,n=t.facet(bo),r=(n.override||t.languageDataAt("autocomplete",ho(t)).map(yo)).map((t=>(this.active.find((e=>e.source==t))||new Do(t,this.active.some((e=>0!=e.state))?1:0)).update(e,n)));r.length==this.active.length&&r.every(((e,t)=>e==this.active[t]))&&(r=this.active);let o=this.open;o&&e.docChanged&&(o=o.map(e.changes)),e.selection||r.some((t=>t.hasResult()&&e.changes.touchesRange(t.from,t.to)))||!function(e,t){if(e==t)return!0;for(let n=0,r=0;;){for(;n<e.length&&!e[n].hasResult;)n++;for(;r<t.length&&!t[r].hasResult;)r++;let o=n==e.length,i=r==t.length;if(o||i)return o==i;if(e[n++].result!=t[r++].result)return!1}}(r,this.active)?o=Co.build(r,t,this.id,o,n):o&&o.disabled&&!r.some((e=>1==e.state))&&(o=null),!o&&r.every((e=>1!=e.state))&&r.some((e=>e.hasResult()))&&(r=r.map((e=>e.hasResult()?new Do(e.source,0):e)));for(let t of e.effects)t.is(Io)&&(o=o&&o.setSelected(t.value,this.id));return r==this.active&&o==this.open?this:new Mo(r,this.id,o)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:Oo}}const Oo={"aria-autocomplete":"list"};function Eo(e,t){let n={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":e};return t>-1&&(n["aria-activedescendant"]=e+"-"+t),n}const Ao=[];function To(e){return e.isUserEvent("input.type")?"input":e.isUserEvent("delete.backward")?"delete":null}class Do{constructor(e,t,n=-1){this.source=e,this.state=t,this.explicitPos=n}hasResult(){return!1}update(e,t){let n=To(e),r=this;n?r=r.handleUserEvent(e,n,t):e.docChanged?r=r.handleChange(e):e.selection&&0!=r.state&&(r=new Do(r.source,0));for(let t of e.effects)if(t.is(Ro))r=new Do(r.source,1,t.value?ho(e.state):-1);else if(t.is(No))r=new Do(r.source,0);else if(t.is(Po))for(let e of t.value)e.source==r.source&&(r=e);return r}handleUserEvent(e,t,n){return"delete"!=t&&n.activateOnTyping?new Do(this.source,1):this.map(e.changes)}handleChange(e){return e.changes.touchesRange(ho(e.startState))?new Do(this.source,0):this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new Do(this.source,this.state,e.mapPos(this.explicitPos))}}class _o extends Do{constructor(e,t,n,r,o){super(e,2,t),this.result=n,this.from=r,this.to=o}hasResult(){return!0}handleUserEvent(e,t,n){var r;let o=e.changes.mapPos(this.from),i=e.changes.mapPos(this.to,1),s=ho(e.state);if((this.explicitPos<0?s<=o:s<this.from)||s>i||"delete"==t&&ho(e.startState)==this.from)return new Do(this.source,"input"==t&&n.activateOnTyping?1:0);let a,l=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos);return function(e,t,n,r){if(!e)return!1;let o=t.sliceDoc(n,r);return"function"==typeof e?e(o,n,r,t):fo(e,!0).test(o)}(this.result.validFor,e.state,o,i)?new _o(this.source,l,this.result,o,i):this.result.update&&(a=this.result.update(this.result,o,i,new lo(e.state,s,l>=0)))?new _o(this.source,l,a,a.from,null!==(r=a.to)&&void 0!==r?r:ho(e.state)):new Do(this.source,1,l)}handleChange(e){return e.changes.touchesRange(this.from,this.to)?new Do(this.source,0):this.map(e.changes)}map(e){return e.empty?this:new _o(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1))}}const Ro=s.Py.define(),No=s.Py.define(),Po=s.Py.define({map:(e,t)=>e.map((e=>e.map(t)))}),Io=s.Py.define(),Lo=s.QQ.define({create:()=>Mo.start(),update:(e,t)=>e.update(t),provide:e=>[a.hJ.from(e,(e=>e.tooltip)),a.tk.contentAttributes.from(e,(e=>e.attrs))]});function jo(e,t="option"){return n=>{let r=n.state.field(Lo,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp<n.state.facet(bo).interactionDelay)return!1;let o,i=1;"page"==t&&(o=(0,a.gB)(n,r.open.tooltip))&&(i=Math.max(2,Math.floor(o.dom.offsetHeight/o.dom.querySelector("li").offsetHeight)-1));let{length:s}=r.open.options,l=r.open.selected>-1?r.open.selected+i*(e?1:-1):e?0:s-1;return l<0?l="page"==t?0:s-1:l>=s&&(l="page"==t?s-1:0),n.dispatch({effects:Io.of(l)}),!0}}class Fo{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const Bo=a.lg.fromClass(class{constructor(e){this.view=e,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.composing=0;for(let t of e.state.field(Lo).active)1==t.state&&this.startQuery(t)}update(e){let t=e.state.field(Lo);if(!e.selectionSet&&!e.docChanged&&e.startState.field(Lo)==t)return;let n=e.transactions.some((e=>(e.selection||e.docChanged)&&!To(e)));for(let t=0;t<this.running.length;t++){let r=this.running[t];if(n||r.updates.length+e.transactions.length>50&&Date.now()-r.time>1e3){for(let e of r.context.abortListeners)try{e()}catch(e){(0,a.OO)(this.view.state,e)}r.context.abortListeners=null,this.running.splice(t--,1)}else r.updates.push(...e.transactions)}if(this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),this.debounceUpdate=t.active.some((e=>1==e.state&&!this.running.some((t=>t.active.source==e.source))))?setTimeout((()=>this.startUpdate()),50):-1,0!=this.composing)for(let t of e.transactions)"input"==To(t)?this.composing=2:2==this.composing&&t.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1;let{state:e}=this.view,t=e.field(Lo);for(let e of t.active)1!=e.state||this.running.some((t=>t.active.source==e.source))||this.startQuery(e)}startQuery(e){let{state:t}=this.view,n=ho(t),r=new lo(t,n,e.explicitPos==n),o=new Fo(e,r);this.running.push(o),Promise.resolve(e.source(r)).then((e=>{o.context.aborted||(o.done=e||null,this.scheduleAccept())}),(e=>{this.view.dispatch({effects:No.of(null)}),(0,a.OO)(this.view.state,e)}))}scheduleAccept(){this.running.every((e=>void 0!==e.done))?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout((()=>this.accept()),50))}accept(){var e;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let t=[],n=this.view.state.facet(bo);for(let r=0;r<this.running.length;r++){let o=this.running[r];if(void 0===o.done)continue;if(this.running.splice(r--,1),o.done){let r=new _o(o.active.source,o.active.explicitPos,o.done,o.done.from,null!==(e=o.done.to)&&void 0!==e?e:ho(o.updates.length?o.updates[0].startState:this.view.state));for(let e of o.updates)r=r.update(e,n);if(r.hasResult()){t.push(r);continue}}let i=this.view.state.field(Lo).active.find((e=>e.source==o.active.source));if(i&&1==i.state)if(null==o.done){let e=new Do(o.active.source,0);for(let t of o.updates)e=e.update(t,n);1!=e.state&&t.push(e)}else this.startQuery(i)}t.length&&this.view.dispatch({effects:Po.of(t)})}},{eventHandlers:{blur(){let e=this.view.state.field(Lo,!1);e&&e.tooltip&&this.view.state.facet(bo).closeOnBlur&&this.view.dispatch({effects:No.of(null)})},compositionstart(){this.composing=1},compositionend(){3==this.composing&&setTimeout((()=>this.view.dispatch({effects:Ro.of(!1)})),20),this.composing=0}}}),zo=a.tk.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer",padding:"1px 3px",lineHeight:1.2}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}}),$o={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},Ho=s.Py.define({map(e,t){let n=t.mapPos(e,-1,s.gc.TrackAfter);return null==n?void 0:n}}),Wo=s.Py.define({map:(e,t)=>t.mapPos(e)}),Uo=new class extends s.uU{};Uo.startSide=1,Uo.endSide=-1;const Vo=s.QQ.define({create:()=>s.Xs.empty,update(e,t){if(t.selection){let n=t.state.doc.lineAt(t.selection.main.head).from,r=t.startState.doc.lineAt(t.startState.selection.main.head).from;n!=t.changes.mapPos(r,-1)&&(e=s.Xs.empty)}e=e.map(t.changes);for(let n of t.effects)n.is(Ho)?e=e.update({add:[Uo.range(n.value,n.value+1)]}):n.is(Wo)&&(e=e.update({filter:e=>e!=n.value}));return e}}),qo="()[]{}<>";function Ko(e){for(let t=0;t<qo.length;t+=2)if(qo.charCodeAt(t)==e)return qo.charAt(t+1);return(0,s.bg)(e<128?e:e+1)}function Yo(e,t){return e.languageDataAt("closeBrackets",t)[0]||$o}const Go="object"==typeof navigator&&/Android\b/.test(navigator.userAgent),Jo=a.tk.inputHandler.of(((e,t,n,r)=>{if((Go?e.composing:e.compositionStarted)||e.state.readOnly)return!1;let o=e.state.selection.main;if(r.length>2||2==r.length&&1==(0,s.nZ)((0,s.gm)(r,0))||t!=o.from||n!=o.to)return!1;let i=function(e,t){let n=Yo(e,e.selection.main.head),r=n.brackets||$o.brackets;for(let o of r){let i=Ko((0,s.gm)(o,0));if(t==o)return i==o?ni(e,o,r.indexOf(o+o+o)>-1,n):ei(e,o,i,n.before||$o.before);if(t==i&&Zo(e,e.selection.main.from))return ti(e,0,i)}return null}(e.state,r);return!!i&&(e.dispatch(i),!0)})),Qo=[{key:"Backspace",run:({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Yo(e,e.selection.main.head).brackets||$o.brackets,r=null,o=e.changeByRange((t=>{if(t.empty){let r=function(e,t){let n=e.sliceString(t-2,t);return(0,s.nZ)((0,s.gm)(n,0))==n.length?n:n.slice(1)}(e.doc,t.head);for(let o of n)if(o==r&&Xo(e.doc,t.head)==Ko((0,s.gm)(o,0)))return{changes:{from:t.head-o.length,to:t.head+o.length},range:s.jT.cursor(t.head-o.length)}}return{range:r=t}}));return r||t(e.update(o,{scrollIntoView:!0,userEvent:"delete.backward"})),!r}}];function Zo(e,t){let n=!1;return e.field(Vo).between(0,e.doc.length,(e=>{e==t&&(n=!0)})),n}function Xo(e,t){let n=e.sliceString(t,t+2);return n.slice(0,(0,s.nZ)((0,s.gm)(n,0)))}function ei(e,t,n,r){let o=null,i=e.changeByRange((i=>{if(!i.empty)return{changes:[{insert:t,from:i.from},{insert:n,from:i.to}],effects:Ho.of(i.to+t.length),range:s.jT.range(i.anchor+t.length,i.head+t.length)};let a=Xo(e.doc,i.head);return!a||/\s/.test(a)||r.indexOf(a)>-1?{changes:{insert:t+n,from:i.head},effects:Ho.of(i.head+t.length),range:s.jT.cursor(i.head+t.length)}:{range:o=i}}));return o?null:e.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function ti(e,t,n){let r=null,o=e.selection.ranges.map((t=>t.empty&&Xo(e.doc,t.head)==n?s.jT.cursor(t.head+n.length):r=t));return r?null:e.update({selection:s.jT.create(o,e.selection.mainIndex),scrollIntoView:!0,effects:e.selection.ranges.map((({from:e})=>Wo.of(e)))})}function ni(e,t,n,r){let o=r.stringPrefixes||$o.stringPrefixes,i=null,a=e.changeByRange((r=>{if(!r.empty)return{changes:[{insert:t,from:r.from},{insert:t,from:r.to}],effects:Ho.of(r.to+t.length),range:s.jT.range(r.anchor+t.length,r.head+t.length)};let a,l=r.head,c=Xo(e.doc,l);if(c==t){if(ri(e,l))return{changes:{insert:t+t,from:l},effects:Ho.of(l+t.length),range:s.jT.cursor(l+t.length)};if(Zo(e,l)){let r=n&&e.sliceDoc(l,l+3*t.length)==t+t+t;return{range:s.jT.cursor(l+t.length*(r?3:1)),effects:Wo.of(l)}}}else{if(n&&e.sliceDoc(l-2*t.length,l)==t+t&&(a=oi(e,l-2*t.length,o))>-1&&ri(e,a))return{changes:{insert:t+t+t+t,from:l},effects:Ho.of(l+t.length),range:s.jT.cursor(l+t.length)};if(e.charCategorizer(l)(c)!=s.D0.Word&&oi(e,l,o)>-1&&!function(e,t,n,r){let o=pe(e).resolveInner(t,-1),i=r.reduce(((e,t)=>Math.max(e,t.length)),0);for(let s=0;s<5;s++){let s=e.sliceDoc(o.from,Math.min(o.to,o.from+n.length+i)),a=s.indexOf(n);if(!a||a>-1&&r.indexOf(s.slice(0,a))>-1){let t=o.firstChild;for(;t&&t.from==o.from&&t.to-t.from>n.length+a;){if(e.sliceDoc(t.to-n.length,t.to)==n)return!1;t=t.firstChild}return!0}let l=o.to==t&&o.parent;if(!l)break;o=l}return!1}(e,l,t,o))return{changes:{insert:t+t,from:l},effects:Ho.of(l+t.length),range:s.jT.cursor(l+t.length)}}return{range:i=r}}));return i?null:e.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function ri(e,t){let n=pe(e).resolveInner(t+1);return n.parent&&n.from==t}function oi(e,t,n){let r=e.charCategorizer(t);if(r(e.sliceDoc(t-1,t))!=s.D0.Word)return t;for(let o of n){let n=t-o.length;if(e.sliceDoc(n,t)==o&&r(e.sliceDoc(n-1,n))!=s.D0.Word)return n}return-1}const ii=[{key:"Ctrl-Space",run:e=>!!e.state.field(Lo,!1)&&(e.dispatch({effects:Ro.of(!0)}),!0)},{key:"Escape",run:e=>{let t=e.state.field(Lo,!1);return!(!t||!t.active.some((e=>0!=e.state))||(e.dispatch({effects:No.of(null)}),0))}},{key:"ArrowDown",run:jo(!0)},{key:"ArrowUp",run:jo(!1)},{key:"PageDown",run:jo(!0,"page")},{key:"PageUp",run:jo(!1,"page")},{key:"Enter",run:e=>{let t=e.state.field(Lo,!1);return!(e.state.readOnly||!t||!t.open||t.open.selected<0||Date.now()-t.open.timestamp<e.state.facet(bo).interactionDelay||(t.open.disabled||mo(e,t.open.options[t.open.selected]),0))}}],si=s.Wl.highest(a.$f.computeN([bo],(e=>e.facet(bo).defaultKeymap?[ii]:[])));class ai{constructor(e,t,n){this.from=e,this.to=t,this.diagnostic=n}}class li{constructor(e,t,n){this.diagnostics=e,this.panel=t,this.selected=n}static init(e,t,n){let r=e,o=n.facet(Si).markerFilter;o&&(r=o(r));let i=a.p.set(r.map((e=>e.from==e.to||e.from==e.to-1&&n.doc.lineAt(e.from).to==e.from?a.p.widget({widget:new Mi(e),diagnostic:e}).range(e.from):a.p.mark({attributes:{class:"cm-lintRange cm-lintRange-"+e.severity},diagnostic:e}).range(e.from,e.to))),!0);return new li(i,t,ci(i))}}function ci(e,t=null,n=0){let r=null;return e.between(n,1e9,((e,n,{spec:o})=>{if(!t||o.diagnostic==t)return r=new ai(e,n,o.diagnostic),!1})),r}function ui(e,t){return!(!e.effects.some((e=>e.is(di)))&&!e.changes.touchesRange(t.pos))}function hi(e,t){return e.field(mi,!1)?t:t.concat(s.Py.appendConfig.of([mi,a.tk.decorations.compute([mi],(e=>{let{selected:t,panel:n}=e.field(mi);return t&&n&&t.from!=t.to?a.p.set([gi.range(t.from,t.to)]):a.p.none})),(0,a.bF)(yi,{hideOn:ui}),Ti]))}const di=s.Py.define(),fi=s.Py.define(),pi=s.Py.define(),mi=s.QQ.define({create:()=>new li(a.p.none,null,null),update(e,t){if(t.docChanged){let n=e.diagnostics.map(t.changes),r=null;if(e.selected){let o=t.changes.mapPos(e.selected.from,1);r=ci(n,e.selected.diagnostic,o)||ci(n,null,o)}e=new li(n,e.panel,r)}for(let n of t.effects)n.is(di)?e=li.init(n.value,e.panel,t.state):n.is(fi)?e=new li(e.diagnostics,n.value?Ei.open:null,e.selected):n.is(pi)&&(e=new li(e.diagnostics,e.panel,n.value));return e},provide:e=>[a.mH.from(e,(e=>e.panel)),a.tk.decorations.from(e,(e=>e.diagnostics))]}),gi=a.p.mark({class:"cm-lintRange cm-lintRange-active"});function yi(e,t,n){let{diagnostics:r}=e.state.field(mi),o=[],i=2e8,s=0;r.between(t-(n<0?1:0),t+(n>0?1:0),((e,r,{spec:a})=>{t>=e&&t<=r&&(e==r||(t>e||n>0)&&(t<r||n<0))&&(o.push(a.diagnostic),i=Math.min(e,i),s=Math.max(r,s))}));let a=e.state.facet(Si).tooltipFilter;return a&&(o=a(o)),o.length?{pos:i,end:s,above:e.state.doc.lineAt(i).to<s,create:()=>({dom:vi(e,o)})}:null}function vi(e,t){return sr("ul",{class:"cm-tooltip-lint"},t.map((t=>Ci(e,t,!1))))}const bi=e=>{let t=e.state.field(mi,!1);return!(!t||!t.panel||(e.dispatch({effects:fi.of(!1)}),0))},wi=[{key:"Mod-Shift-m",run:e=>{let t=e.state.field(mi,!1);t&&t.panel||e.dispatch({effects:hi(e.state,[fi.of(!0)])});let n=(0,a.Sd)(e,Ei.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},preventDefault:!0},{key:"F8",run:e=>{let t=e.state.field(mi,!1);if(!t)return!1;let n=e.state.selection.main,r=t.diagnostics.iter(n.to+1);return!(!r.value&&(r=t.diagnostics.iter(0),!r.value||r.from==n.from&&r.to==n.to)||(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),0))}}],xi=a.lg.fromClass(class{constructor(e){this.view=e,this.timeout=-1,this.set=!0;let{delay:t}=e.state.facet(Si);this.lintTime=Date.now()+t,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,t)}run(){let e=Date.now();if(e<this.lintTime-10)setTimeout(this.run,this.lintTime-e);else{this.set=!1;let{state:e}=this.view,{sources:t}=e.facet(Si);Promise.all(t.map((e=>Promise.resolve(e(this.view))))).then((t=>{let n=t.reduce(((e,t)=>e.concat(t)));this.view.state.doc==e.doc&&this.view.dispatch(function(e,t){return{effects:hi(e,[di.of(t)])}}(this.view.state,n))}),(e=>{(0,a.OO)(this.view.state,e)}))}}update(e){let t=e.state.facet(Si);(e.docChanged||t!=e.startState.facet(Si)||t.needsRefresh&&t.needsRefresh(e))&&(this.lintTime=Date.now()+t.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,t.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}}),Si=s.r$.define({combine:e=>Object.assign({sources:e.map((e=>e.source))},(0,s.BO)(e.map((e=>e.config)),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null},{needsRefresh:(e,t)=>e?t?n=>e(n)||t(n):e:t})),enables:xi});function ki(e){let t=[];if(e)e:for(let{name:n}of e){for(let e=0;e<n.length;e++){let r=n[e];if(/[a-zA-Z]/.test(r)&&!t.some((e=>e.toLowerCase()==r.toLowerCase()))){t.push(r);continue e}}t.push("")}return t}function Ci(e,t,n){var r;let o=n?ki(t.actions):[];return sr("li",{class:"cm-diagnostic cm-diagnostic-"+t.severity},sr("span",{class:"cm-diagnosticText"},t.renderMessage?t.renderMessage():t.message),null===(r=t.actions)||void 0===r?void 0:r.map(((n,r)=>{let i=!1,s=r=>{if(r.preventDefault(),i)return;i=!0;let o=ci(e.state.field(mi).diagnostics,t);o&&n.apply(e,o.from,o.to)},{name:a}=n,l=o[r]?a.indexOf(o[r]):-1,c=l<0?a:[a.slice(0,l),sr("u",a.slice(l,l+1)),a.slice(l+1)];return sr("button",{type:"button",class:"cm-diagnosticAction",onclick:s,onmousedown:s,"aria-label":` Action: ${a}${l<0?"":` (access key "${o[r]})"`}.`},c)})),t.source&&sr("div",{class:"cm-diagnosticSource"},t.source))}class Mi extends a.l9{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return sr("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class Oi{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(4294967295*Math.random()).toString(16),this.dom=Ci(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Ei{constructor(e){this.view=e,this.items=[],this.list=sr("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t=>{if(27==t.keyCode)bi(this.view),this.view.focus();else if(38==t.keyCode||33==t.keyCode)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(40==t.keyCode||34==t.keyCode)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(36==t.keyCode)this.moveSelection(0);else if(35==t.keyCode)this.moveSelection(this.items.length-1);else if(13==t.keyCode)this.view.focus();else{if(!(t.keyCode>=65&&t.keyCode<=90&&this.selectedIndex>=0))return;{let{diagnostic:n}=this.items[this.selectedIndex],r=ki(n.actions);for(let o=0;o<r.length;o++)if(r[o].toUpperCase().charCodeAt(0)==t.keyCode){let t=ci(this.view.state.field(mi).diagnostics,n);t&&n.actions[o].apply(e,t.from,t.to)}}}t.preventDefault()},onclick:e=>{for(let t=0;t<this.items.length;t++)this.items[t].dom.contains(e.target)&&this.moveSelection(t)}}),this.dom=sr("div",{class:"cm-panel-lint"},this.list,sr("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>bi(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(mi).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(mi),n=0,r=!1,o=null;for(e.between(0,this.view.state.doc.length,((e,i,{spec:s})=>{let a,l=-1;for(let e=n;e<this.items.length;e++)if(this.items[e].diagnostic==s.diagnostic){l=e;break}l<0?(a=new Oi(this.view,s.diagnostic),this.items.splice(n,0,a),r=!0):(a=this.items[l],l>n&&(this.items.splice(n,l-n),r=!0)),t&&a.diagnostic==t.diagnostic?a.dom.hasAttribute("aria-selected")||(a.dom.setAttribute("aria-selected","true"),o=a):a.dom.hasAttribute("aria-selected")&&a.dom.removeAttribute("aria-selected"),n++}));n<this.items.length&&!(1==this.items.length&&this.items[0].diagnostic.from<0);)r=!0,this.items.pop();0==this.items.length&&(this.items.push(new Oi(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),r=!0),o?(this.list.setAttribute("aria-activedescendant",o.id),this.view.requestMeasure({key:this,read:()=>({sel:o.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:e,panel:t})=>{e.top<t.top?this.list.scrollTop-=t.top-e.top:e.bottom>t.bottom&&(this.list.scrollTop+=e.bottom-t.bottom)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),r&&this.sync()}sync(){let e=this.list.firstChild;function t(){let t=e;e=t.nextSibling,t.remove()}for(let n of this.items)if(n.dom.parentNode==this.list){for(;e!=n.dom;)t();e=n.dom.nextSibling}else this.list.insertBefore(n.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=ci(this.view.state.field(mi).diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:pi.of(t)})}static open(e){return new Ei(e)}}function Ai(e){return function(e,t='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')`}(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const Ti=a.tk.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Ai("#d11")},".cm-lintRange-warning":{backgroundImage:Ai("orange")},".cm-lintRange-info":{backgroundImage:Ai("#999")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}});class Di extends a.SJ{constructor(e){super(),this.diagnostics=e,this.severity=e.reduce(((e,t)=>{let n=t.severity;return"error"==n||"warning"==n&&"info"==e?n:e}),"info")}toDOM(e){let t=document.createElement("div");t.className="cm-lint-marker cm-lint-marker-"+this.severity;let n=this.diagnostics,r=e.state.facet(lintGutterConfig).tooltipFilter;return r&&r(n),n.length&&(t.onmouseover=()=>function(e,t,n){function r(){let r=e.elementAtHeight(t.getBoundingClientRect().top+5-e.documentTop);e.coordsAtPos(r.from)&&e.dispatch({effects:setLintGutterTooltip.of({pos:r.from,above:!1,create:()=>({dom:vi(e,n),getCoords:()=>t.getBoundingClientRect()})})}),t.onmouseout=t.onmousemove=null,function(e,t){let n=r=>{let o=t.getBoundingClientRect();if(!(r.clientX>o.left-10&&r.clientX<o.right+10&&r.clientY>o.top-10&&r.clientY<o.bottom+10)){for(let e=r.target;e;e.parentNode)if(1==e.nodeType&&e.classList.contains("cm-tooltip-lint"))return;window.removeEventListener("mousemove",n),e.state.field(lintGutterTooltip)&&e.dispatch({effects:setLintGutterTooltip.of(null)})}};window.addEventListener("mousemove",n)}(e,t)}let{hoverTime:o}=e.state.facet(lintGutterConfig),i=setTimeout(r,o);t.onmouseout=()=>{clearTimeout(i),t.onmouseout=t.onmousemove=null},t.onmousemove=()=>{clearTimeout(i),setTimeout(r,o)}}(e,t,n)),t}}var _i=function(e){void 0===e&&(e={});var t=[];!1!==e.closeBracketsKeymap&&(t=t.concat(Qo)),!1!==e.defaultKeymap&&(t=t.concat(or)),!1!==e.searchKeymap&&(t=t.concat(eo)),!1!==e.historyKeymap&&(t=t.concat(an)),!1!==e.foldKeymap&&(t=t.concat(Ge)),!1!==e.completionKeymap&&(t=t.concat(ii)),!1!==e.lintKeymap&&(t=t.concat(wi));var n=[];return!1!==e.lineNumbers&&n.push((0,a.Eu)()),!1!==e.highlightActiveLineGutter&&n.push((0,a.HQ)()),!1!==e.highlightSpecialChars&&n.push((0,a.AE)()),!1!==e.history&&n.push(function(e={}){return[Wt,Ht.of(e),a.tk.domEventHandlers({beforeinput(e,t){let n="historyUndo"==e.inputType?Vt:"historyRedo"==e.inputType?qt:null;return!!n&&(e.preventDefault(),n(t))}})]}()),!1!==e.foldGutter&&n.push(function(e={}){let t=Object.assign(Object.assign({},et),e),n=new tt(t,!0),r=new tt(t,!1),o=a.lg.fromClass(class{constructor(e){this.from=e.viewport.from,this.markers=this.buildMarkers(e)}update(e){(e.docChanged||e.viewportChanged||e.startState.facet(ke)!=e.state.facet(ke)||e.startState.field(Ue,!1)!=e.state.field(Ue,!1)||pe(e.startState)!=pe(e.state)||t.foldingChanged(e))&&(this.markers=this.buildMarkers(e.view))}buildMarkers(e){let t=new s.f_;for(let o of e.viewportLineBlocks){let i=Ve(e.state,o.from,o.to)?r:Be(e.state,o.from,o.to)?n:null;i&&t.add(o.from,o.from,i)}return t.finish()}}),{domEventHandlers:i}=t;return[o,(0,a.v5)({class:"cm-foldGutter",markers(e){var t;return(null===(t=e.plugin(o))||void 0===t?void 0:t.markers)||s.Xs.empty},initialSpacer:()=>new tt(t,!1),domEventHandlers:Object.assign(Object.assign({},i),{click:(e,t,n)=>{if(i.click&&i.click(e,t,n))return!0;let r=Ve(e.state,t.from,t.to);if(r)return e.dispatch({effects:He.of(r)}),!0;let o=Be(e.state,t.from,t.to);return!!o&&(e.dispatch({effects:$e.of(o)}),!0)}})}),Ze()]}()),!1!==e.drawSelection&&n.push((0,a.Uw)()),!1!==e.dropCursor&&n.push((0,a.qr)()),!1!==e.allowMultipleSelections&&n.push(s.yy.allowMultipleSelections.of(!0)),!1!==e.indentOnInput&&n.push(s.yy.transactionFilter.of((e=>{if(!e.docChanged||!e.isUserEvent("input.type")&&!e.isUserEvent("input.complete"))return e;let t=e.startState.languageDataAt("indentOnInput",e.startState.selection.main.head);if(!t.length)return e;let n=e.newDoc,{head:r}=e.newSelection.main,o=n.lineAt(r);if(r>o.from+200)return e;let i=n.sliceString(o.from,r);if(!t.some((e=>e.test(i))))return e;let{state:s}=e,a=-1,l=[];for(let{head:e}of s.selection.ranges){let t=s.doc.lineAt(e);if(t.from==a)continue;a=t.from;let n=Ae(s,t.from);if(null==n)continue;let r=/^\s*/.exec(t.text)[0],o=Ee(s,n);r!=o&&l.push({from:t.from,to:t.from+r.length,insert:o})}return l.length?[e,{changes:l,sequential:!0}]:e}))),!1!==e.syntaxHighlighting&&n.push(at(ut,{fallback:!0})),!1!==e.bracketMatching&&n.push(function(e={}){return[pt.of(e),bt]}()),!1!==e.closeBrackets&&n.push([Jo,Vo]),!1!==e.autocompletion&&n.push(function(e={}){return[Lo,bo.of(e),Bo,si,zo]}()),!1!==e.rectangularSelection&&n.push((0,a.Zs)()),!1!==e.crosshairCursor&&n.push((0,a.S2)()),!1!==e.highlightActiveLine&&n.push((0,a.ZO)()),!1!==e.highlightSelectionMatches&&n.push(function(e){let t=[Er,Or];return t}()),e.tabSize&&"number"==typeof e.tabSize&&n.push(Me.of(" ".repeat(e.tabSize))),n.concat([a.$f.of(t.flat())]).filter(Boolean)};const Ri="#e06c75",Ni="#abb2bf",Pi="#7d8799",Ii="#d19a66",Li="#2c313a",ji="#282c34",Fi="#353a42",Bi="#528bff",zi=[a.tk.theme({"&":{color:Ni,backgroundColor:ji},".cm-content":{caretColor:Bi},".cm-cursor, .cm-dropCursor":{borderLeftColor:Bi},"&.cm-focused .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:"#3E4451"},".cm-panels":{backgroundColor:"#21252b",color:Ni},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:ji,color:Pi,border:"none"},".cm-activeLineGutter":{backgroundColor:Li},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:Fi},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:Fi,borderBottomColor:Fi},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:Li,color:Ni}}},{dark:!0}),at(rt.define([{tag:ae.keyword,color:"#c678dd"},{tag:[ae.name,ae.deleted,ae.character,ae.propertyName,ae.macroName],color:Ri},{tag:[ae.function(ae.variableName),ae.labelName],color:"#61afef"},{tag:[ae.color,ae.constant(ae.name),ae.standard(ae.name)],color:Ii},{tag:[ae.definition(ae.name),ae.separator],color:Ni},{tag:[ae.typeName,ae.className,ae.number,ae.changed,ae.annotation,ae.modifier,ae.self,ae.namespace],color:"#e5c07b"},{tag:[ae.operator,ae.operatorKeyword,ae.url,ae.escape,ae.regexp,ae.link,ae.special(ae.string)],color:"#56b6c2"},{tag:[ae.meta,ae.comment],color:Pi},{tag:ae.strong,fontWeight:"bold"},{tag:ae.emphasis,fontStyle:"italic"},{tag:ae.strikethrough,textDecoration:"line-through"},{tag:ae.link,color:Pi,textDecoration:"underline"},{tag:ae.heading,fontWeight:"bold",color:Ri},{tag:[ae.atom,ae.bool,ae.special(ae.variableName)],color:Ii},{tag:[ae.processingInstruction,ae.string,ae.inserted],color:"#98c379"},{tag:ae.invalid,color:"#ffffff"}]))];var $i=s.q6.define();function Hi(e){var{value:t,selection:n,onChange:r,onStatistics:o,onCreateEditor:l,onUpdate:c,extensions:u=[],autoFocus:h,theme:d="light",height:f="",minHeight:p="",maxHeight:m="",placeholder:g="",width:y="",minWidth:v="",maxWidth:b="",editable:w=!0,readOnly:x=!1,indentWithTab:S=!0,basicSetup:k=!0,root:C,initialState:M}=e,[O,E]=(0,i.useState)(),[A,T]=(0,i.useState)(),[D,_]=(0,i.useState)(),R=a.tk.theme({"&":{height:f,minHeight:p,maxHeight:m,width:y,minWidth:v,maxWidth:b}}),N=a.tk.updateListener.of((e=>{if(e.docChanged&&"function"==typeof r&&!e.transactions.some((e=>e.annotation($i)))){var t=e.state.doc.toString();r(t,e)}o&&o((e=>({line:e.state.doc.lineAt(e.state.selection.main.from),lineCount:e.state.doc.lines,lineBreak:e.state.lineBreak,length:e.state.doc.length,readOnly:e.state.readOnly,tabSize:e.state.tabSize,selection:e.state.selection,selectionAsSingle:e.state.selection.asSingle().main,ranges:e.state.selection.ranges,selectionCode:e.state.sliceDoc(e.state.selection.main.from,e.state.selection.main.to),selections:e.state.selection.ranges.map((t=>e.state.sliceDoc(t.from,t.to))),selectedText:e.state.selection.ranges.some((e=>!e.empty))}))(e))})),P=function(e){void 0===e&&(e={});var{indentWithTab:t=!0,editable:n=!0,readOnly:r=!1,theme:o="light",placeholder:i="",basicSetup:l=!0}=e,c=[],u=a.tk.theme({"&":{backgroundColor:"#fff"}},{dark:!1});switch(t&&c.unshift(a.$f.of([ir])),l&&("boolean"==typeof l?c.unshift(_i()):c.unshift(_i(l))),i&&c.unshift((0,a.W$)(i)),o){case"light":c.push(u);break;case"dark":c.push(zi);break;case"none":break;default:c.push(o)}return!1===n&&c.push(a.tk.editable.of(!1)),r&&c.push(s.yy.readOnly.of(!0)),[...c]}({theme:d,editable:w,readOnly:x,placeholder:g,indentWithTab:S,basicSetup:k}),I=[N,R,...P];return c&&"function"==typeof c&&I.push(a.tk.updateListener.of(c)),I=I.concat(u),(0,i.useEffect)((()=>{if(O&&!D){var e={doc:t,selection:n,extensions:I},r=M?s.yy.fromJSON(M.json,e,M.fields):s.yy.create(e);if(_(r),!A){var o=new a.tk({state:r,parent:O,root:C});T(o),l&&l(o,r)}}return()=>{A&&(_(void 0),T(void 0))}}),[O,D]),(0,i.useEffect)((()=>E(e.container)),[e.container]),(0,i.useEffect)((()=>()=>{A&&(A.destroy(),T(void 0))}),[A]),(0,i.useEffect)((()=>{h&&A&&A.focus()}),[h,A]),(0,i.useEffect)((()=>{A&&A.dispatch({effects:s.Py.reconfigure.of(I)})}),[d,u,f,p,m,y,v,b,g,w,x,S,k,r,c]),(0,i.useEffect)((()=>{if(void 0!==t){var e=A?A.state.doc.toString():"";A&&t!==e&&A.dispatch({changes:{from:0,to:e.length,insert:t||""},annotations:[$i.of(!0)]})}}),[t,A]),{state:D,setState:_,view:A,setView:T,container:O,setContainer:E}}var Wi=n(5893),Ui=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],Vi=(0,i.forwardRef)(((e,t)=>{var{className:n,value:s="",selection:a,extensions:l=[],onChange:c,onStatistics:u,onCreateEditor:h,onUpdate:d,autoFocus:f,theme:p="light",height:m,minHeight:g,maxHeight:y,width:v,minWidth:b,maxWidth:w,basicSetup:x,placeholder:S,indentWithTab:k,editable:C,readOnly:M,root:O,initialState:E}=e,A=(0,o.Z)(e,Ui),T=(0,i.useRef)(null),{state:D,view:_,container:R}=Hi({container:T.current,root:O,value:s,autoFocus:f,theme:p,height:m,minHeight:g,maxHeight:y,width:v,minWidth:b,maxWidth:w,basicSetup:x,placeholder:S,indentWithTab:k,editable:C,readOnly:M,selection:a,onChange:c,onStatistics:u,onCreateEditor:h,onUpdate:d,extensions:l,initialState:E});if((0,i.useImperativeHandle)(t,(()=>({editor:T.current,state:D,view:_})),[T,R,D,_]),"string"!=typeof s)throw new Error("value must be typeof string but got "+typeof s);var N="string"==typeof p?"cm-theme-"+p:"cm-theme";return(0,Wi.jsx)("div",(0,r.Z)({ref:T,className:N+(n?" "+n:"")},A))}));Vi.displayName="CodeMirror";const qi=Vi},8363:(e,t)=>{"use strict";t.Z=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(","),r=e.name||"",o=(e.type||"").toLowerCase(),i=o.replace(/\/.*$/,"");return n.some((function(e){var t=e.trim().toLowerCase();return"."===t.charAt(0)?r.toLowerCase().endsWith(t):t.endsWith("/*")?i===t.replace(/\/.*$/,""):o===t}))}return!0}},1924:(e,t,n)=>{"use strict";var r=n(210),o=n(5559),i=o(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"==typeof n&&i(e,".prototype.")>-1?o(n):n}},5559:(e,t,n)=>{"use strict";var r=n(8612),o=n(210),i=o("%Function.prototype.apply%"),s=o("%Function.prototype.call%"),a=o("%Reflect.apply%",!0)||r.call(s,i),l=o("%Object.getOwnPropertyDescriptor%",!0),c=o("%Object.defineProperty%",!0),u=o("%Math.max%");if(c)try{c({},"a",{value:1})}catch(e){c=null}e.exports=function(e){var t=a(r,s,arguments);return l&&c&&l(t,"length").configurable&&c(t,"length",{value:1+u(0,e.length-(arguments.length-1))}),t};var h=function(){return a(r,i,arguments)};c?c(e.exports,"apply",{value:h}):e.exports.apply=h},4184:(e,t)=>{var n;!function(){"use strict";var r={}.hasOwnProperty;function o(){for(var e=[],t=0;t<arguments.length;t++){var n=arguments[t];if(n){var i=typeof n;if("string"===i||"number"===i)e.push(n);else if(Array.isArray(n)){if(n.length){var s=o.apply(null,n);s&&e.push(s)}}else if("object"===i){if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]")){e.push(n.toString());continue}for(var a in n)r.call(n,a)&&n[a]&&e.push(a)}}}return e.join(" ")}e.exports?(o.default=o,e.exports=o):void 0===(n=function(){return o}.apply(t,[]))||(e.exports=n)}()},8687:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(8081),o=n.n(r),i=n(3645),s=n.n(i)()(o());s.push([e.id,".rc-slider {\n position: relative;\n width: 100%;\n height: 14px;\n padding: 5px 0;\n border-radius: 6px;\n touch-action: none;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider-rail {\n position: absolute;\n width: 100%;\n height: 4px;\n background-color: #e9e9e9;\n border-radius: 6px;\n}\n.rc-slider-track {\n position: absolute;\n height: 4px;\n background-color: #abe2fb;\n border-radius: 6px;\n}\n.rc-slider-handle {\n position: absolute;\n width: 14px;\n height: 14px;\n margin-top: -5px;\n background-color: #fff;\n border: solid 2px #96dbfa;\n border-radius: 50%;\n cursor: pointer;\n cursor: -webkit-grab;\n cursor: grab;\n opacity: 0.8;\n touch-action: pan-x;\n}\n.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging {\n border-color: #57c5f7;\n box-shadow: 0 0 0 5px #96dbfa;\n}\n.rc-slider-handle:focus {\n outline: none;\n box-shadow: none;\n}\n.rc-slider-handle:focus-visible {\n border-color: #2db7f5;\n box-shadow: 0 0 0 3px #96dbfa;\n}\n.rc-slider-handle-click-focused:focus {\n border-color: #96dbfa;\n box-shadow: unset;\n}\n.rc-slider-handle:hover {\n border-color: #57c5f7;\n}\n.rc-slider-handle:active {\n border-color: #57c5f7;\n box-shadow: 0 0 5px #57c5f7;\n cursor: -webkit-grabbing;\n cursor: grabbing;\n}\n.rc-slider-mark {\n position: absolute;\n top: 18px;\n left: 0;\n width: 100%;\n font-size: 12px;\n}\n.rc-slider-mark-text {\n position: absolute;\n display: inline-block;\n color: #999;\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n}\n.rc-slider-mark-text-active {\n color: #666;\n}\n.rc-slider-step {\n position: absolute;\n width: 100%;\n height: 4px;\n background: transparent;\n pointer-events: none;\n}\n.rc-slider-dot {\n position: absolute;\n bottom: -2px;\n width: 8px;\n height: 8px;\n vertical-align: middle;\n background-color: #fff;\n border: 2px solid #e9e9e9;\n border-radius: 50%;\n cursor: pointer;\n}\n.rc-slider-dot-active {\n border-color: #96dbfa;\n}\n.rc-slider-dot-reverse {\n margin-right: -4px;\n}\n.rc-slider-disabled {\n background-color: #e9e9e9;\n}\n.rc-slider-disabled .rc-slider-track {\n background-color: #ccc;\n}\n.rc-slider-disabled .rc-slider-handle,\n.rc-slider-disabled .rc-slider-dot {\n background-color: #fff;\n border-color: #ccc;\n box-shadow: none;\n cursor: not-allowed;\n}\n.rc-slider-disabled .rc-slider-mark-text,\n.rc-slider-disabled .rc-slider-dot {\n cursor: not-allowed !important;\n}\n.rc-slider-vertical {\n width: 14px;\n height: 100%;\n padding: 0 5px;\n}\n.rc-slider-vertical .rc-slider-rail {\n width: 4px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-track {\n bottom: 0;\n left: 5px;\n width: 4px;\n}\n.rc-slider-vertical .rc-slider-handle {\n margin-top: 0;\n margin-left: -5px;\n touch-action: pan-y;\n}\n.rc-slider-vertical .rc-slider-mark {\n top: 0;\n left: 18px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-step {\n width: 4px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-dot {\n margin-left: -2px;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n display: block !important;\n animation-duration: 0.3s;\n animation-fill-mode: both;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-leave {\n display: block !important;\n animation-duration: 0.3s;\n animation-fill-mode: both;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,\n.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active {\n animation-name: rcSliderTooltipZoomDownIn;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active {\n animation-name: rcSliderTooltipZoomDownOut;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n transform: scale(0, 0);\n animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);\n}\n.rc-slider-tooltip-zoom-down-leave {\n animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);\n}\n@keyframes rcSliderTooltipZoomDownIn {\n 0% {\n transform: scale(0, 0);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n 100% {\n transform: scale(1, 1);\n transform-origin: 50% 100%;\n }\n}\n@keyframes rcSliderTooltipZoomDownOut {\n 0% {\n transform: scale(1, 1);\n transform-origin: 50% 100%;\n }\n 100% {\n transform: scale(0, 0);\n transform-origin: 50% 100%;\n opacity: 0;\n }\n}\n.rc-slider-tooltip {\n position: absolute;\n top: -9999px;\n left: -9999px;\n visibility: visible;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider-tooltip * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider-tooltip-hidden {\n display: none;\n}\n.rc-slider-tooltip-placement-top {\n padding: 4px 0 8px 0;\n}\n.rc-slider-tooltip-inner {\n min-width: 24px;\n height: 24px;\n padding: 6px 2px;\n color: #fff;\n font-size: 12px;\n line-height: 1;\n text-align: center;\n text-decoration: none;\n background-color: #6c6c6c;\n border-radius: 6px;\n box-shadow: 0 0 4px #d9d9d9;\n}\n.rc-slider-tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow {\n bottom: 4px;\n left: 50%;\n margin-left: -4px;\n border-width: 4px 4px 0;\n border-top-color: #6c6c6c;\n}\n",""]);const a=s},7584:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(8081),o=n.n(r),i=n(3645),s=n.n(i)()(o());s.push([e.id,'/* Variables declaration */\n/* prettier-ignore */\n.rdp-root {\n --rdp-accent-color: blue; /* The accent color used for selected days and UI elements. */\n --rdp-accent-background-color: #f0f0ff; /* The accent background color used for selected days and UI elements. */\n --rdp-font-family: system-ui; /* The font family used by the calendar. Note that `inherit`does not work here. */\n\n --rdp-day-font: inherit; /* The font used for the day cells. */\n --rdp-day-height: 2.75rem; /* The height of the day cells. */\n --rdp-day-width: 2.75rem; /* The width of the day cells. */\n \n --rdp-day_button-border-radius: 100%; /* The border radius of the day cells. */\n --rdp-day_button-border: 2px solid transparent; /* The border of the day cells. */\n --rdp-day_button-height: var(--rdp-day-height); /* The height of the day cells. */\n --rdp-day_button-width: var(--rdp-day-width); /* The width of the day cells. */\n \n --rdp-selected-border: 2px solid var(--rdp-accent-color); /* The border of the selected days. */\n --rdp-selected-font: bold large var(--rdp-font-family); /* The font of the selected days. */\n --rdp-disabled-opacity: 0.5; /* The opacity of the disabled days. */\n --rdp-outside-opacity: 0.75; /* The opacity of the days outside the current month. */\n --rdp-today-color: var(--rdp-accent-color); /* The color of the today\'s date. */\n \n --rdp-dropdown-gap: 0.5rem;/* The gap between the dropdowns used in the month captons. */\n \n --rdp-month_caption-font: bold larger var(--rdp-font-family); /* The font of the month caption. */\n --rdp-months-gap: 2rem; /* The gap between the months in the multi-month view. */\n \n --rdp-nav_button-disabled-opacity: 0.5; /* The opacity of the disabled navigation buttons. */\n --rdp-nav_button-height: 2.25rem; /* The height of the navigation buttons. */\n --rdp-nav_button-width: 2.25rem; /* The width of the navigation buttons. */\n --rdp-nav-height: 2.75rem; /* The height of the navigation bar. */\n \n --rdp-range_middle-background-color: var(--rdp-accent-background-color); /* The color of the background for days in the middle of a range. */\n --rdp-range_middle-font: normal medium var(--rdp-font-family); /* The font for days in the middle of a range. */\n --rdp-range_middle-foreground-color: white; /* The font for days in the middle of a range. */\n --rdp-range_middle-color: inherit;/* The color of the range text. */\n \n --rdp-range_start-color: white; /* The color of the range text. */\n --rdp-range_start-background: linear-gradient(var(--rdp-gradient-direction), transparent 50%, var(--rdp-range_middle-background-color) 50%); /* Used for the background of the start of the selected range. */\n --rdp-range_start-date-background-color: var(--rdp-accent-color); /* The background color of the date when at the start of the selected range. */\n \n --rdp-range_end-background: linear-gradient(var(--rdp-gradient-direction), var(--rdp-range_middle-background-color) 50%, transparent 50%); /* Used for the background of the end of the selected range. */\n --rdp-range_end-color: white;/* The color of the range text. */\n --rdp-range_end-date-background-color: var(--rdp-accent-color); /* The background color of the date when at the end of the selected range. */\n \n --rdp-week_number-border-radius: 100%; /* The border radius of the week number. */\n --rdp-week_number-border: 2px solid transparent; /* The border of the week number. */\n --rdp-week_number-font: 400 small var(--rdp-font-family); /* The font of the week number cells. */\n --rdp-week_number-height: var(--rdp-day-height); /* The height of the week number cells. */\n --rdp-week_number-opacity: 0.75; /* The opacity of the week number. */\n --rdp-week_number-width: var(--rdp-day-width); /* The width of the week number cells. */\n --rdp-weeknumber-text-align: center; /* The text alignment of the weekday cells. */\n\n --rdp-weekday-font: 500 smaller var(--rdp-font-family); /* The font of the weekday. */\n --rdp-weekday-opacity: 0.75; /* The opacity of the weekday. */\n --rdp-weekday-padding: 0.5rem 0rem; /* The padding of the weekday. */\n --rdp-weekday-text-align: center; /* The text alignment of the weekday cells. */\n\n --rdp-gradient-direction: 90deg;\n}\n\n.rdp-root[dir="rtl"] {\n --rdp-gradient-direction: -90deg;\n}\n\n/* Root of the component. */\n.rdp-root {\n position: relative; /* Required to position the navigation toolbar. */\n box-sizing: border-box;\n}\n\n.rdp-root * {\n box-sizing: border-box;\n}\n\n.rdp-day {\n width: var(--rdp-day-width);\n height: var(--rdp-day-height);\n font: var(--rdp-day-font);\n text-align: center;\n}\n\n.rdp-day_button {\n background: none;\n padding: 0;\n margin: 0;\n cursor: pointer;\n font: inherit;\n color: inherit;\n justify-content: center;\n align-items: center;\n display: flex;\n\n width: var(--rdp-day_button-width);\n height: var(--rdp-day_button-height);\n border: var(--rdp-day_button-border);\n border-radius: var(--rdp-day_button-border-radius);\n}\n\n.rdp-day_button:disabled {\n cursor: revert;\n}\n\n.rdp-caption_label {\n z-index: 1;\n\n position: relative;\n display: inline-flex;\n align-items: center;\n\n white-space: nowrap;\n border: 0;\n}\n\n.rdp-button_next,\n.rdp-button_previous {\n border: none;\n background: none;\n padding: 0;\n margin: 0;\n cursor: pointer;\n font: inherit;\n color: inherit;\n -moz-appearance: none;\n -webkit-appearance: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n position: relative;\n appearance: none;\n\n width: var(--rdp-nav_button-width);\n height: var(--rdp-nav_button-height);\n}\n\n.rdp-button_next:disabled,\n.rdp-button_previous:disabled {\n cursor: revert;\n\n opacity: var(--rdp-nav_button-disabled-opacity);\n}\n\n.rdp-chevron {\n display: inline-block;\n fill: var(--rdp-accent-color);\n}\n\n.rdp-root[dir="rtl"] .rdp-nav .rdp-chevron {\n transform: rotate(180deg);\n}\n\n.rdp-root[dir="rtl"] .rdp-nav .rdp-chevron {\n transform: rotate(180deg);\n transform-origin: 50%;\n}\n\n.rdp-dropdowns {\n position: relative;\n display: inline-flex;\n align-items: center;\n gap: var(--rdp-dropdown-gap);\n}\n.rdp-dropdown {\n z-index: 2;\n\n /* Reset */\n opacity: 0;\n appearance: none;\n position: absolute;\n inset-block-start: 0;\n inset-block-end: 0;\n inset-inline-start: 0;\n width: 100%;\n margin: 0;\n padding: 0;\n cursor: inherit;\n border: none;\n line-height: inherit;\n}\n\n.rdp-dropdown_root {\n position: relative;\n display: inline-flex;\n align-items: center;\n}\n\n.rdp-dropdown_root[data-disabled="true"] .rdp-chevron {\n opacity: var(--rdp-disabled-opacity);\n}\n\n.rdp-month_caption {\n display: flex;\n align-content: center;\n height: var(--rdp-nav-height);\n font: var(--rdp-month_caption-font);\n}\n\n.rdp-months {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n gap: var(--rdp-months-gap);\n max-width: fit-content;\n}\n\n.rdp-month_grid {\n border-collapse: collapse;\n}\n\n.rdp-nav {\n position: absolute;\n inset-block-start: 0;\n inset-inline-end: 0;\n\n display: flex;\n align-items: center;\n\n height: var(--rdp-nav-height);\n}\n\n.rdp-weekday {\n opacity: var(--rdp-weekday-opacity);\n padding: var(--rdp-weekday-padding);\n font: var(--rdp-weekday-font);\n text-align: var(--rdp-weekday-text-align);\n text-transform: var(--rdp-weekday-text-transform);\n}\n\n.rdp-week_number {\n opacity: var(--rdp-week_number-opacity);\n font: var(--rdp-week_number-font);\n height: var(--rdp-week_number-height);\n width: var(--rdp-week_number-width);\n border: var(--rdp-week_number-border);\n border-radius: var(--rdp-week_number-border-radius);\n text-align: var(--rdp-weeknumber-text-align);\n}\n\n/* DAY MODIFIERS */\n.rdp-today:not(.rdp-outside) {\n color: var(--rdp-today-color);\n}\n\n.rdp-selected {\n font: var(--rdp-selected-font);\n}\n\n.rdp-selected .rdp-day_button {\n border: var(--rdp-selected-border);\n}\n\n.rdp-outside {\n opacity: var(--rdp-outside-opacity);\n}\n\n.rdp-disabled {\n opacity: var(--rdp-disabled-opacity);\n}\n\n.rdp-hidden {\n visibility: hidden;\n color: var(--rdp-range_start-color);\n}\n\n.rdp-range_start {\n background: var(--rdp-range_start-background);\n}\n\n.rdp-range_start .rdp-day_button {\n background-color: var(--rdp-range_start-date-background-color);\n color: var(--rdp-range_start-color);\n}\n\n.rdp-range_middle {\n background-color: var(--rdp-range_middle-background-color);\n font: var(--rdp-range_middle-font);\n}\n\n.rdp-range_middle .rdp-day_button {\n border-color: transparent;\n border: unset;\n border-radius: unset;\n color: var(--rdp-range_middle-color);\n}\n\n.rdp-range_end {\n background: var(--rdp-range_end-background);\n color: var(--rdp-range_end-color);\n}\n\n.rdp-range_end .rdp-day_button {\n color: var(--rdp-range_start-color);\n background-color: var(--rdp-range_end-date-background-color);\n}\n\n.rdp-range_start.rdp-range_end {\n background: revert;\n}\n\n.rdp-focusable {\n cursor: pointer;\n}\n',""]);const a=s},3645:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n="",r=void 0!==t[5];return t[4]&&(n+="@supports (".concat(t[4],") {")),t[2]&&(n+="@media ".concat(t[2]," {")),r&&(n+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),n+=e(t),r&&(n+="}"),t[2]&&(n+="}"),t[4]&&(n+="}"),n})).join("")},t.i=function(e,n,r,o,i){"string"==typeof e&&(e=[[null,e,void 0]]);var s={};if(r)for(var a=0;a<this.length;a++){var l=this[a][0];null!=l&&(s[l]=!0)}for(var c=0;c<e.length;c++){var u=[].concat(e[c]);r&&s[u[0]]||(void 0!==i&&(void 0===u[5]||(u[1]="@layer".concat(u[5].length>0?" ".concat(u[5]):""," {").concat(u[1],"}")),u[5]=i),n&&(u[2]?(u[1]="@media ".concat(u[2]," {").concat(u[1],"}"),u[2]=n):u[2]=n),o&&(u[4]?(u[1]="@supports (".concat(u[4],") {").concat(u[1],"}"),u[4]=o):u[4]="".concat(o)),t.push(u))}},t}},8081:e=>{"use strict";e.exports=function(e){return e[1]}},3832:(e,t)=>{var n;function r(e,t){var n=[],r=0;function o(e){return n.push(e),t}function i(){return n[r++]}return{tokenize:function(t){return t.replace(e,o)},detokenize:function(e){return e.replace(new RegExp("("+t+")","g"),i)}}}n=new function(){var e="`TMP`",t="`COMMENT`",n="[^\\u0020-\\u007e]",o="(?:[0-9]*\\.[0-9]+|[0-9]+)",i="direction\\s*:\\s*",s="['\"]?\\s*",a="(^|[^a-zA-Z])",l="\\/\\*\\!?\\s*@noflip\\s*\\*\\/",c="(?:(?:(?:\\\\[0-9a-f]{1,6})(?:\\r\\n|\\s)?)|\\\\[^\\r\\n\\f0-9a-f])",u="(?:[_a-z0-9-]|"+n+"|"+c+")",h=o+"(?:\\s*(?:em|ex|px|cm|mm|in|pt|pc|deg|rad|grad|ms|s|hz|khz|%)|-?(?:[_a-z]|"+n+"|"+c+")"+u+"*)?",d="((?:-?"+h+")|(?:inherit|auto))",f="(#?"+u+"+|(?:rgba?|hsla?)\\([ \\d.,%-]+\\))",p="(?:[!#$%&*-~]|"+n+"|"+c+")*?",m="(?![a-zA-Z])",g="(?!("+u+"|\\r?\\n|\\s|#|\\:|\\.|\\,|\\+|>|~|\\(|\\)|\\[|\\]|=|\\*=|~=|\\^=|'[^']*'|\"[^\"]*\"|"+t+")*?{)",y="(?!"+p+s+"\\))",v="(?="+p+s+"\\))",b="(\\s*(?:!important\\s*)?[;}])",w=/`TMP`/g,x=new RegExp("\\/\\*[^*]*\\*+([^\\/*][^*]*\\*+)*\\/","gi"),S=new RegExp("("+l+g+"[^;}]+;?)","gi"),k=new RegExp("("+l+"[^\\}]*?})","gi"),C=new RegExp("("+i+")ltr","gi"),M=new RegExp("("+i+")rtl","gi"),O=new RegExp(a+"(left)"+m+y+g,"gi"),E=new RegExp(a+"(right)"+m+y+g,"gi"),A=new RegExp(a+"(left)"+v,"gi"),T=new RegExp(a+"(right)"+v,"gi"),D=new RegExp(a+"(ltr)"+v,"gi"),_=new RegExp(a+"(rtl)"+v,"gi"),R=new RegExp(a+"([ns]?)e-resize","gi"),N=new RegExp(a+"([ns]?)w-resize","gi"),P=new RegExp("((?:margin|padding|border-width)\\s*:\\s*)"+d+"(\\s+)"+d+"(\\s+)"+d+"(\\s+)"+d+b,"gi"),I=new RegExp("((?:-color|border-style)\\s*:\\s*)"+f+"(\\s+)"+f+"(\\s+)"+f+"(\\s+)"+f+b,"gi"),L=new RegExp("(background(?:-position)?\\s*:\\s*(?:[^:;}\\s]+\\s+)*?)("+h+")","gi"),j=new RegExp("(background-position-x\\s*:\\s*)(-?"+o+"%)","gi"),F=new RegExp("(border-radius\\s*:\\s*)"+d+"(?:(?:\\s+"+d+")(?:\\s+"+d+")?(?:\\s+"+d+")?)?(?:(?:(?:\\s*\\/\\s*)"+d+")(?:\\s+"+d+")?(?:\\s+"+d+")?(?:\\s+"+d+")?)?"+b,"gi"),B=new RegExp("(box-shadow\\s*:\\s*(?:inset\\s*)?)"+d,"gi"),z=new RegExp("(text-shadow\\s*:\\s*)"+d+"(\\s*)"+f,"gi"),$=new RegExp("(text-shadow\\s*:\\s*)"+f+"(\\s*)"+d,"gi"),H=new RegExp("(text-shadow\\s*:\\s*)"+d,"gi"),W=new RegExp("(transform\\s*:[^;}]*)(translateX\\s*\\(\\s*)"+d+"(\\s*\\))","gi"),U=new RegExp("(transform\\s*:[^;}]*)(translate\\s*\\(\\s*)"+d+"((?:\\s*,\\s*"+d+"){0,2}\\s*\\))","gi");function V(e,t,n){var r,o;return"%"===n.slice(-1)&&(-1!==(r=n.indexOf("."))?(o=n.length-r-2,n=(n=100-parseFloat(n)).toFixed(o)+"%"):n=100-parseFloat(n)+"%"),t+n}function q(e){switch(e.length){case 4:e=[e[1],e[0],e[3],e[2]];break;case 3:e=[e[1],e[0],e[1],e[2]];break;case 2:e=[e[1],e[0]];break;case 1:e=[e[0]]}return e.join(" ")}function K(e,t){var n=[].slice.call(arguments),r=n.slice(2,6).filter((function(e){return e})),o=n.slice(6,10).filter((function(e){return e})),i=n[10]||"";return t+(o.length?q(r)+" / "+q(o):q(r))+i}function Y(e){return 0===parseFloat(e)?e:"-"===e[0]?e.slice(1):"-"+e}function G(e,t,n){return t+Y(n)}function J(e,t,n,r,o){return t+n+Y(r)+o}function Q(e,t,n,r,o){return t+n+r+Y(o)}return{transform:function(n,o){var i=new r(S,"`NOFLIP_SINGLE`"),s=new r(k,"`NOFLIP_CLASS`"),a=new r(x,t);return n=a.tokenize(s.tokenize(i.tokenize(n.replace("`","%60")))),o.transformDirInUrl&&(n=n.replace(D,"$1"+e).replace(_,"$1ltr").replace(w,"rtl")),o.transformEdgeInUrl&&(n=n.replace(A,"$1"+e).replace(T,"$1left").replace(w,"right")),n=n.replace(C,"$1"+e).replace(M,"$1ltr").replace(w,"rtl").replace(O,"$1"+e).replace(E,"$1left").replace(w,"right").replace(R,"$1$2"+e).replace(N,"$1$2e-resize").replace(w,"w-resize").replace(F,K).replace(B,G).replace(z,Q).replace($,Q).replace(H,G).replace(W,J).replace(U,J).replace(P,"$1$2$3$8$5$6$7$4$9").replace(I,"$1$2$3$8$5$6$7$4$9").replace(L,V).replace(j,V),i.detokenize(s.detokenize(a.detokenize(n)))}}},e.exports?t.transform=function(e,t,r){var o;return"object"==typeof t?o=t:(o={},"boolean"==typeof t&&(o.transformDirInUrl=t),"boolean"==typeof r&&(o.transformEdgeInUrl=r)),n.transform(e,o)}:"undefined"!=typeof window&&(window.cssjanus=n)},6695:(e,t,n)=>{"use strict";function r(e,t){if(t.length<e)throw new TypeError(e+" argument"+(e>1?"s":"")+" required, but only "+t.length+" present")}function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function i(e){return i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i(e)}function s(e){r(1,arguments);var t=Object.prototype.toString.call(e);return e instanceof Date||"object"===i(e)&&"[object Date]"===t?new Date(e.getTime()):"number"==typeof e||"[object Number]"===t?new Date(e):("string"!=typeof e&&"[object String]"!==t||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}function a(e){if(null===e||!0===e||!1===e)return NaN;var t=Number(e);return isNaN(t)?t:t<0?Math.ceil(t):Math.floor(t)}function l(e){r(1,arguments);var t=s(e),n=t.getUTCDay(),o=(n<1?7:0)+n-1;return t.setUTCDate(t.getUTCDate()-o),t.setUTCHours(0,0,0,0),t}function c(e){r(1,arguments);var t=s(e),n=t.getUTCFullYear(),o=new Date(0);o.setUTCFullYear(n+1,0,4),o.setUTCHours(0,0,0,0);var i=l(o),a=new Date(0);a.setUTCFullYear(n,0,4),a.setUTCHours(0,0,0,0);var c=l(a);return t.getTime()>=i.getTime()?n+1:t.getTime()>=c.getTime()?n:n-1}n.d(t,{Z:()=>Y});var u={};function h(){return u}function d(e,t){var n,o,i,l,c,u,d,f;r(1,arguments);var p=h(),m=a(null!==(n=null!==(o=null!==(i=null!==(l=null==t?void 0:t.weekStartsOn)&&void 0!==l?l:null==t||null===(c=t.locale)||void 0===c||null===(u=c.options)||void 0===u?void 0:u.weekStartsOn)&&void 0!==i?i:p.weekStartsOn)&&void 0!==o?o:null===(d=p.locale)||void 0===d||null===(f=d.options)||void 0===f?void 0:f.weekStartsOn)&&void 0!==n?n:0);if(!(m>=0&&m<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var g=s(e),y=g.getUTCDay(),v=(y<m?7:0)+y-m;return g.setUTCDate(g.getUTCDate()-v),g.setUTCHours(0,0,0,0),g}function f(e,t){var n,o,i,l,c,u,f,p;r(1,arguments);var m=s(e),g=m.getUTCFullYear(),y=h(),v=a(null!==(n=null!==(o=null!==(i=null!==(l=null==t?void 0:t.firstWeekContainsDate)&&void 0!==l?l:null==t||null===(c=t.locale)||void 0===c||null===(u=c.options)||void 0===u?void 0:u.firstWeekContainsDate)&&void 0!==i?i:y.firstWeekContainsDate)&&void 0!==o?o:null===(f=y.locale)||void 0===f||null===(p=f.options)||void 0===p?void 0:p.firstWeekContainsDate)&&void 0!==n?n:1);if(!(v>=1&&v<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var b=new Date(0);b.setUTCFullYear(g+1,0,v),b.setUTCHours(0,0,0,0);var w=d(b,t),x=new Date(0);x.setUTCFullYear(g,0,v),x.setUTCHours(0,0,0,0);var S=d(x,t);return m.getTime()>=w.getTime()?g+1:m.getTime()>=S.getTime()?g:g-1}function p(e,t){for(var n=e<0?"-":"",r=Math.abs(e).toString();r.length<t;)r="0"+r;return n+r}const m=function(e,t){var n=e.getUTCFullYear(),r=n>0?n:1-n;return p("yy"===t?r%100:r,t.length)},g=function(e,t){var n=e.getUTCMonth();return"M"===t?String(n+1):p(n+1,2)},y=function(e,t){return p(e.getUTCDate(),t.length)},v=function(e,t){return p(e.getUTCHours()%12||12,t.length)},b=function(e,t){return p(e.getUTCHours(),t.length)},w=function(e,t){return p(e.getUTCMinutes(),t.length)},x=function(e,t){return p(e.getUTCSeconds(),t.length)},S=function(e,t){var n=t.length,r=e.getUTCMilliseconds();return p(Math.floor(r*Math.pow(10,n-3)),t.length)};var k={G:function(e,t,n){var r=e.getUTCFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){var r=e.getUTCFullYear(),o=r>0?r:1-r;return n.ordinalNumber(o,{unit:"year"})}return m(e,t)},Y:function(e,t,n,r){var o=f(e,r),i=o>0?o:1-o;return"YY"===t?p(i%100,2):"Yo"===t?n.ordinalNumber(i,{unit:"year"}):p(i,t.length)},R:function(e,t){return p(c(e),t.length)},u:function(e,t){return p(e.getUTCFullYear(),t.length)},Q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return p(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){var r=Math.ceil((e.getUTCMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return p(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){var r=e.getUTCMonth();switch(t){case"M":case"MM":return g(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){var r=e.getUTCMonth();switch(t){case"L":return String(r+1);case"LL":return p(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,o){var i=function(e,t){r(1,arguments);var n=s(e),o=d(n,t).getTime()-function(e,t){var n,o,i,s,l,c,u,p;r(1,arguments);var m=h(),g=a(null!==(n=null!==(o=null!==(i=null!==(s=null==t?void 0:t.firstWeekContainsDate)&&void 0!==s?s:null==t||null===(l=t.locale)||void 0===l||null===(c=l.options)||void 0===c?void 0:c.firstWeekContainsDate)&&void 0!==i?i:m.firstWeekContainsDate)&&void 0!==o?o:null===(u=m.locale)||void 0===u||null===(p=u.options)||void 0===p?void 0:p.firstWeekContainsDate)&&void 0!==n?n:1),y=f(e,t),v=new Date(0);return v.setUTCFullYear(y,0,g),v.setUTCHours(0,0,0,0),d(v,t)}(n,t).getTime();return Math.round(o/6048e5)+1}(e,o);return"wo"===t?n.ordinalNumber(i,{unit:"week"}):p(i,t.length)},I:function(e,t,n){var o=function(e){r(1,arguments);var t=s(e),n=l(t).getTime()-function(e){r(1,arguments);var t=c(e),n=new Date(0);return n.setUTCFullYear(t,0,4),n.setUTCHours(0,0,0,0),l(n)}(t).getTime();return Math.round(n/6048e5)+1}(e);return"Io"===t?n.ordinalNumber(o,{unit:"week"}):p(o,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getUTCDate(),{unit:"date"}):y(e,t)},D:function(e,t,n){var o=function(e){r(1,arguments);var t=s(e),n=t.getTime();t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0);var o=n-t.getTime();return Math.floor(o/864e5)+1}(e);return"Do"===t?n.ordinalNumber(o,{unit:"dayOfYear"}):p(o,t.length)},E:function(e,t,n){var r=e.getUTCDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){var o=e.getUTCDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(i);case"ee":return p(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){var o=e.getUTCDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(i);case"cc":return p(i,t.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){var r=e.getUTCDay(),o=0===r?7:r;switch(t){case"i":return String(o);case"ii":return p(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){var r=e.getUTCHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){var r,o=e.getUTCHours();switch(r=12===o?"noon":0===o?"midnight":o/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},B:function(e,t,n){var r,o=e.getUTCHours();switch(r=o>=17?"evening":o>=12?"afternoon":o>=4?"morning":"night",t){case"B":case"BB":case"BBB":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){var r=e.getUTCHours()%12;return 0===r&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return v(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getUTCHours(),{unit:"hour"}):b(e,t)},K:function(e,t,n){var r=e.getUTCHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):p(r,t.length)},k:function(e,t,n){var r=e.getUTCHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):p(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getUTCMinutes(),{unit:"minute"}):w(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getUTCSeconds(),{unit:"second"}):x(e,t)},S:function(e,t){return S(e,t)},X:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();if(0===o)return"Z";switch(t){case"X":return M(o);case"XXXX":case"XX":return O(o);default:return O(o,":")}},x:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"x":return M(o);case"xxxx":case"xx":return O(o);default:return O(o,":")}},O:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+C(o,":");default:return"GMT"+O(o,":")}},z:function(e,t,n,r){var o=(r._originalDate||e).getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+C(o,":");default:return"GMT"+O(o,":")}},t:function(e,t,n,r){var o=r._originalDate||e;return p(Math.floor(o.getTime()/1e3),t.length)},T:function(e,t,n,r){return p((r._originalDate||e).getTime(),t.length)}};function C(e,t){var n=e>0?"-":"+",r=Math.abs(e),o=Math.floor(r/60),i=r%60;if(0===i)return n+String(o);var s=t||"";return n+String(o)+s+p(i,2)}function M(e,t){return e%60==0?(e>0?"-":"+")+p(Math.abs(e)/60,2):O(e,t)}function O(e,t){var n=t||"",r=e>0?"-":"+",o=Math.abs(e);return r+p(Math.floor(o/60),2)+n+p(o%60,2)}const E=k;var A=function(e,t){switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},T=function(e,t){switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},D={p:T,P:function(e,t){var n,r=e.match(/(P+)(p+)?/)||[],o=r[1],i=r[2];if(!i)return A(e,t);switch(o){case"P":n=t.dateTime({width:"short"});break;case"PP":n=t.dateTime({width:"medium"});break;case"PPP":n=t.dateTime({width:"long"});break;default:n=t.dateTime({width:"full"})}return n.replace("{{date}}",A(o,t)).replace("{{time}}",T(i,t))}};const _=D;var R=["D","DD"],N=["YY","YYYY"];function P(e,t,n){if("YYYY"===e)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(t,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===e)throw new RangeError("Use `yy` instead of `YY` (in `".concat(t,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===e)throw new RangeError("Use `d` instead of `D` (in `".concat(t,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===e)throw new RangeError("Use `dd` instead of `DD` (in `".concat(t,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}var I={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function L(e){return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}var j,F={date:L({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:L({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:L({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},B={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function z(e){return function(t,n){var r;if("formatting"===(null!=n&&n.context?String(n.context):"standalone")&&e.formattingValues){var o=e.defaultFormattingWidth||e.defaultWidth,i=null!=n&&n.width?String(n.width):o;r=e.formattingValues[i]||e.formattingValues[o]}else{var s=e.defaultWidth,a=null!=n&&n.width?String(n.width):e.defaultWidth;r=e.values[a]||e.values[s]}return r[e.argumentCallback?e.argumentCallback(t):t]}}function $(e){return function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],i=t.match(o);if(!i)return null;var s,a=i[0],l=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],c=Array.isArray(l)?function(e,t){for(var n=0;n<e.length;n++)if(e[n].test(a))return n}(l):function(e,t){for(var n in e)if(e.hasOwnProperty(n)&&e[n].test(a))return n}(l);return s=e.valueCallback?e.valueCallback(c):c,{value:s=n.valueCallback?n.valueCallback(s):s,rest:t.slice(a.length)}}}const H={code:"en-US",formatDistance:function(e,t,n){var r,o=I[e];return r="string"==typeof o?o:1===t?o.one:o.other.replace("{{count}}",t.toString()),null!=n&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r},formatLong:F,formatRelative:function(e,t,n,r){return B[e]},localize:{ordinalNumber:function(e,t){var n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:z({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:z({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(e){return e-1}}),month:z({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:z({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:z({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(j={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(e){return parseInt(e,10)}},function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.match(j.matchPattern);if(!n)return null;var r=n[0],o=e.match(j.parsePattern);if(!o)return null;var i=j.valueCallback?j.valueCallback(o[0]):o[0];return{value:i=t.valueCallback?t.valueCallback(i):i,rest:e.slice(r.length)}}),era:$({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:$({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(e){return e+1}}),month:$({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:$({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:$({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};var W=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,U=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,V=/^'([^]*?)'?$/,q=/''/g,K=/[a-zA-Z]/;function Y(e,t,n){var i,l,c,u,d,f,p,m,g,y,v,b,w,x,S,k,C,M;r(2,arguments);var O=String(t),A=h(),T=null!==(i=null!==(l=null==n?void 0:n.locale)&&void 0!==l?l:A.locale)&&void 0!==i?i:H,D=a(null!==(c=null!==(u=null!==(d=null!==(f=null==n?void 0:n.firstWeekContainsDate)&&void 0!==f?f:null==n||null===(p=n.locale)||void 0===p||null===(m=p.options)||void 0===m?void 0:m.firstWeekContainsDate)&&void 0!==d?d:A.firstWeekContainsDate)&&void 0!==u?u:null===(g=A.locale)||void 0===g||null===(y=g.options)||void 0===y?void 0:y.firstWeekContainsDate)&&void 0!==c?c:1);if(!(D>=1&&D<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var I=a(null!==(v=null!==(b=null!==(w=null!==(x=null==n?void 0:n.weekStartsOn)&&void 0!==x?x:null==n||null===(S=n.locale)||void 0===S||null===(k=S.options)||void 0===k?void 0:k.weekStartsOn)&&void 0!==w?w:A.weekStartsOn)&&void 0!==b?b:null===(C=A.locale)||void 0===C||null===(M=C.options)||void 0===M?void 0:M.weekStartsOn)&&void 0!==v?v:0);if(!(I>=0&&I<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!T.localize)throw new RangeError("locale must contain localize property");if(!T.formatLong)throw new RangeError("locale must contain formatLong property");var L=s(e);if(!function(e){if(r(1,arguments),!function(e){return r(1,arguments),e instanceof Date||"object"===o(e)&&"[object Date]"===Object.prototype.toString.call(e)}(e)&&"number"!=typeof e)return!1;var t=s(e);return!isNaN(Number(t))}(L))throw new RangeError("Invalid time value");var j=function(e){var t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}(L),F=function(e,t){return r(2,arguments),function(e,t){r(2,arguments);var n=s(e).getTime(),o=a(t);return new Date(n+o)}(e,-a(t))}(L,j),B={firstWeekContainsDate:D,weekStartsOn:I,locale:T,_originalDate:L};return O.match(U).map((function(e){var t=e[0];return"p"===t||"P"===t?(0,_[t])(e,T.formatLong):e})).join("").match(W).map((function(r){if("''"===r)return"'";var o,i,s=r[0];if("'"===s)return(i=(o=r).match(V))?i[1].replace(q,"'"):o;var a,l=E[s];if(l)return null!=n&&n.useAdditionalWeekYearTokens||(a=r,-1===N.indexOf(a))||P(r,t,String(e)),null!=n&&n.useAdditionalDayOfYearTokens||!function(e){return-1!==R.indexOf(e)}(r)||P(r,t,String(e)),l(F,r,T.localize,B);if(s.match(K))throw new RangeError("Format string contains an unescaped latin alphabet character `"+s+"`");return r})).join("")}},296:e=>{function t(e,t,n){var r,o,i,s,a;function l(){var c=Date.now()-s;c<t&&c>=0?r=setTimeout(l,t-c):(r=null,n||(a=e.apply(i,o),i=o=null))}null==t&&(t=100);var c=function(){i=this,o=arguments,s=Date.now();var c=n&&!r;return r||(r=setTimeout(l,t)),c&&(a=e.apply(i,o),i=o=null),a};return c.clear=function(){r&&(clearTimeout(r),r=null)},c.flush=function(){r&&(a=e.apply(i,o),i=o=null,clearTimeout(r),r=null)},c}t.debounce=t,e.exports=t},251:(e,t,n)=>{"use strict";var r=n(3533),o=n(1924),i=n(3290),s=n(210),a=n(3216),l=n(7478),c=n(609),u=n(2584),h=n(5826),d=n(635),f=n(8923),p=n(8420),m=n(2579),g=n(2215),y=n(3679),v=n(3483),b=n(6430),w=o("ArrayBuffer.prototype.byteLength",!0)||function(e){return e.byteLength},x=o("SharedArrayBuffer.prototype.byteLength",!0),S=o("Date.prototype.getTime"),k=Object.getPrototypeOf,C=o("Object.prototype.toString"),M=s("%Set%",!0),O=o("Map.prototype.has",!0),E=o("Map.prototype.get",!0),A=o("Map.prototype.size",!0),T=o("Set.prototype.add",!0),D=o("Set.prototype.delete",!0),_=o("Set.prototype.has",!0),R=o("Set.prototype.size",!0);function N(e,t,n,r){for(var o,i=a(e);(o=i.next())&&!o.done;)if(F(t,o.value,n,r))return D(e,o.value),!0;return!1}function P(e){return void 0===e?null:"object"!=typeof e?"symbol"!=typeof e&&("string"!=typeof e&&"number"!=typeof e||+e==+e):void 0}function I(e,t,n,o,i,s){var a=P(n);if(null!=a)return a;var l=E(t,a),c=r({},i,{strict:!1});return!(void 0===l&&!O(t,a)||!F(o,l,c,s))&&!O(e,a)&&F(o,l,c,s)}function L(e,t,n){var r=P(n);return null!=r?r:_(t,r)&&!_(e,r)}function j(e,t,n,r,o,i){for(var s,l,c=a(e);(s=c.next())&&!s.done;)if(F(n,l=s.value,o,i)&&F(r,E(t,l),o,i))return D(e,l),!0;return!1}function F(e,t,n,o){var s=n||{};if(s.strict?c(e,t):e===t)return!0;if(y(e)!==y(t))return!1;if(!e||!t||"object"!=typeof e&&"object"!=typeof t)return s.strict?c(e,t):e==t;var l,D=o.has(e),P=o.has(t);if(D&&P){if(o.get(e)===o.get(t))return!0}else l={};return D||o.set(e,l),P||o.set(t,l),function(e,t,n,o){var s,l;if(typeof e!=typeof t)return!1;if(null==e||null==t)return!1;if(C(e)!==C(t))return!1;if(u(e)!==u(t))return!1;if(h(e)!==h(t))return!1;var c=e instanceof Error,y=t instanceof Error;if(c!==y)return!1;if((c||y)&&(e.name!==t.name||e.message!==t.message))return!1;var D=p(e),P=p(t);if(D!==P)return!1;if((D||P)&&(e.source!==t.source||i(e)!==i(t)))return!1;var z=f(e),$=f(t);if(z!==$)return!1;if((z||$)&&S(e)!==S(t))return!1;if(n.strict&&k&&k(e)!==k(t))return!1;var H=b(e),W=b(t);if((H||W)&&H!==W)return!1;var U=B(e),V=B(t);if(U!==V)return!1;if(U||V){if(e.length!==t.length)return!1;for(s=0;s<e.length;s++)if(e[s]!==t[s])return!1;return!0}var q=d(e),K=d(t);if(q!==K)return!1;if(q||K)return w(e)===w(t)&&"function"==typeof Uint8Array&&F(new Uint8Array(e),new Uint8Array(t),n,o);var Y=m(e),G=m(t);if(Y!==G)return!1;if(Y||G)return x(e)===x(t)&&"function"==typeof Uint8Array&&F(new Uint8Array(e),new Uint8Array(t),n,o);if(typeof e!=typeof t)return!1;var J=g(e),Q=g(t);if(J.length!==Q.length)return!1;for(J.sort(),Q.sort(),s=J.length-1;s>=0;s--)if(J[s]!=Q[s])return!1;for(s=J.length-1;s>=0;s--)if(!F(e[l=J[s]],t[l],n,o))return!1;var Z=v(e),X=v(t);return Z===X&&("Set"===Z||"Set"===X?function(e,t,n,r){if(R(e)!==R(t))return!1;for(var o,i,s,l=a(e),c=a(t);(o=l.next())&&!o.done;)if(o.value&&"object"==typeof o.value)s||(s=new M),T(s,o.value);else if(!_(t,o.value)){if(n.strict)return!1;if(!L(e,t,o.value))return!1;s||(s=new M),T(s,o.value)}if(s){for(;(i=c.next())&&!i.done;)if(i.value&&"object"==typeof i.value){if(!N(s,i.value,n.strict,r))return!1}else if(!n.strict&&!_(e,i.value)&&!N(s,i.value,n.strict,r))return!1;return 0===R(s)}return!0}(e,t,n,o):"Map"!==Z||function(e,t,n,o){if(A(e)!==A(t))return!1;for(var i,s,l,c,u,h,d=a(e),f=a(t);(i=d.next())&&!i.done;)if(c=i.value[0],u=i.value[1],c&&"object"==typeof c)l||(l=new M),T(l,c);else if(void 0===(h=E(t,c))&&!O(t,c)||!F(u,h,n,o)){if(n.strict)return!1;if(!I(e,t,c,u,n,o))return!1;l||(l=new M),T(l,c)}if(l){for(;(s=f.next())&&!s.done;)if(c=s.value[0],h=s.value[1],c&&"object"==typeof c){if(!j(l,e,c,h,n,o))return!1}else if(!(n.strict||e.has(c)&&F(E(e,c),h,n,o)||j(l,e,c,h,r({},n,{strict:!1}),o)))return!1;return 0===R(l)}return!0}(e,t,n,o))}(e,t,s,o)}function B(e){return!(!e||"object"!=typeof e||"number"!=typeof e.length||"function"!=typeof e.copy||"function"!=typeof e.slice||e.length>0&&"number"!=typeof e[0]||!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e)))}e.exports=function(e,t,n){return F(e,t,n,l())}},1245:function(e,t,n){e.exports=function(){"use strict";var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==n.g?n.g:"undefined"!=typeof self?self:{};var t=function(e,t){return e(t={exports:{}},t.exports),t.exports}((function(t,n){t.exports=function(){var t="function"==typeof Promise,n="object"==typeof self?self:e,r="undefined"!=typeof Symbol,o="undefined"!=typeof Map,i="undefined"!=typeof Set,s="undefined"!=typeof WeakMap,a="undefined"!=typeof WeakSet,l="undefined"!=typeof DataView,c=r&&void 0!==Symbol.iterator,u=r&&void 0!==Symbol.toStringTag,h=i&&"function"==typeof Set.prototype.entries,d=o&&"function"==typeof Map.prototype.entries,f=h&&Object.getPrototypeOf((new Set).entries()),p=d&&Object.getPrototypeOf((new Map).entries()),m=c&&"function"==typeof Array.prototype[Symbol.iterator],g=m&&Object.getPrototypeOf([][Symbol.iterator]()),y=c&&"function"==typeof String.prototype[Symbol.iterator],v=y&&Object.getPrototypeOf(""[Symbol.iterator]()),b=8,w=-1;function x(e){var r=typeof e;if("object"!==r)return r;if(null===e)return"null";if(e===n)return"global";if(Array.isArray(e)&&(!1===u||!(Symbol.toStringTag in e)))return"Array";if("object"==typeof window&&null!==window){if("object"==typeof window.location&&e===window.location)return"Location";if("object"==typeof window.document&&e===window.document)return"Document";if("object"==typeof window.navigator){if("object"==typeof window.navigator.mimeTypes&&e===window.navigator.mimeTypes)return"MimeTypeArray";if("object"==typeof window.navigator.plugins&&e===window.navigator.plugins)return"PluginArray"}if(("function"==typeof window.HTMLElement||"object"==typeof window.HTMLElement)&&e instanceof window.HTMLElement){if("BLOCKQUOTE"===e.tagName)return"HTMLQuoteElement";if("TD"===e.tagName)return"HTMLTableDataCellElement";if("TH"===e.tagName)return"HTMLTableHeaderCellElement"}}var c=u&&e[Symbol.toStringTag];if("string"==typeof c)return c;var h=Object.getPrototypeOf(e);return h===RegExp.prototype?"RegExp":h===Date.prototype?"Date":t&&h===Promise.prototype?"Promise":i&&h===Set.prototype?"Set":o&&h===Map.prototype?"Map":a&&h===WeakSet.prototype?"WeakSet":s&&h===WeakMap.prototype?"WeakMap":l&&h===DataView.prototype?"DataView":o&&h===p?"Map Iterator":i&&h===f?"Set Iterator":m&&h===g?"Array Iterator":y&&h===v?"String Iterator":null===h?"Object":Object.prototype.toString.call(e).slice(b,w)}return x}()}));const r="undefined"!=typeof Buffer,o=r&&void 0!==Buffer.from,i=r?function(e){return Buffer.isBuffer(e)}:function(){return!1},s=o?function(e){return Buffer.from(e)}:r?function(e){return new Buffer(e)}:function(e){return e};function a(e){return i(e)?"Buffer":t(e)}const l=new Set(["Arguments","Array","Map","Object","Set"]);function c(e,t,n=null){switch(n||a(e)){case"Arguments":case"Array":case"Object":return e[t];case"Map":return e.get(t);case"Set":return t}}function u(e){return l.has(e)}function h(e,t,n,r=null){switch(r||a(e)){case"Arguments":case"Array":case"Object":e[t]=n;break;case"Map":e.set(t,n);break;case"Set":e.add(n)}return e}const d="undefined"!=typeof globalThis&&null!==globalThis&&globalThis.Object===Object&&globalThis,f=void 0!==n.g&&null!==n.g&&n.g.Object===Object&&n.g,p="undefined"!=typeof self&&null!==self&&self.Object===Object&&self,m=d||f||p||Function("return this")();function g(e,t){return m[t].from?m[t].from(e):new m[t](e)}function y(e){return e}function v(){return[]}var b=new Map([["ArrayBuffer",function(e){return e.slice(0)}],["Boolean",function(e){return new Boolean(e.valueOf())}],["Buffer",function(e){return s(e)}],["DataView",function(e){return new DataView(e.buffer)}],["Date",function(e){return new Date(e.getTime())}],["Number",function(e){return new Number(e)}],["RegExp",function(e){return new RegExp(e.source,e.flags)}],["String",function(e){return new String(e)}],["Float32Array",g],["Float64Array",g],["Int16Array",g],["Int32Array",g],["Int8Array",g],["Uint16Array",g],["Uint32Array",g],["Uint8Array",g],["Uint8ClampedArray",g],["Array Iterator",y],["Map Iterator",y],["Promise",y],["Set Iterator",y],["String Iterator",y],["function",y],["global",y],["WeakMap",y],["WeakSet",y],["boolean",y],["null",y],["number",y],["string",y],["symbol",y],["undefined",y],["Arguments",v],["Array",v],["Map",function(){return new Map}],["Object",function(){return{}}],["Set",function(){return new Set}]]);function w(){}function x(e,t=null,n=w){2===arguments.length&&"function"==typeof t&&(n=t,t=null);const r=t||a(e),o=b.get(r);if("Object"===r){const t=n(e,r);if(void 0!==t)return t}return o?o(e,r):e}function S(e,t,n,r,o){const i=a(e),s=x(e,i);if(!u(i))return s;let l;switch(i){case"Arguments":case"Array":l=Object.keys(e);break;case"Object":l=Object.keys(e),l.push(...Object.getOwnPropertySymbols(e));break;case"Map":case"Set":l=e.keys()}for(let o of l){const s=c(e,o,i);if(r.has(s))h(t,o,n.get(s),i);else{const e=a(s),l=x(s,e);u(e)&&(n.set(s,l),r.add(s)),h(t,o,S(s,l,n,r),i)}}return t}return function(e,t={}){"function"==typeof t&&(t={customizer:t});const{customizer:n}=t,r=a(e);if(!u(r))return S(e,null,null,null);const o=x(e,r,n);return S(e,o,new WeakMap([[e,o]]),new WeakSet([e]))}}()},4289:(e,t,n)=>{"use strict";var r=n(2215),o="function"==typeof Symbol&&"symbol"==typeof Symbol("foo"),i=Object.prototype.toString,s=Array.prototype.concat,a=Object.defineProperty,l=n(1044)(),c=a&&l,u=function(e,t,n,r){if(t in e)if(!0===r){if(e[t]===n)return}else if("function"!=typeof(o=r)||"[object Function]"!==i.call(o)||!r())return;var o;c?a(e,t,{configurable:!0,enumerable:!1,value:n,writable:!0}):e[t]=n},h=function(e,t){var n=arguments.length>2?arguments[2]:{},i=r(t);o&&(i=s.call(i,Object.getOwnPropertySymbols(t)));for(var a=0;a<i.length;a+=1)u(e,i[a],t[i[a]],n[i[a]])};h.supportsDescriptors=!!c,e.exports=h},9180:function(e,t,n){var r,o,i;!function(s,a){"use strict";o=[n(9829)],void 0===(i="function"==typeof(r=function(e){var t=/(^|@)\S+:\d+/,n=/^\s*at .*(\S+:\d+|\(native\))/m,r=/^(eval@)?(\[native code])?$/;return{parse:function(e){if(void 0!==e.stacktrace||void 0!==e["opera#sourceloc"])return this.parseOpera(e);if(e.stack&&e.stack.match(n))return this.parseV8OrIE(e);if(e.stack)return this.parseFFOrSafari(e);throw new Error("Cannot parse given Error object")},extractLocation:function(e){if(-1===e.indexOf(":"))return[e];var t=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/[()]/g,""));return[t[1],t[2]||void 0,t[3]||void 0]},parseV8OrIE:function(t){return t.stack.split("\n").filter((function(e){return!!e.match(n)}),this).map((function(t){t.indexOf("(eval ")>-1&&(t=t.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(,.*$)/g,""));var n=t.replace(/^\s+/,"").replace(/\(eval code/g,"(").replace(/^.*?\s+/,""),r=n.match(/ (\(.+\)$)/);n=r?n.replace(r[0],""):n;var o=this.extractLocation(r?r[1]:n),i=r&&n||void 0,s=["eval","<anonymous>"].indexOf(o[0])>-1?void 0:o[0];return new e({functionName:i,fileName:s,lineNumber:o[1],columnNumber:o[2],source:t})}),this)},parseFFOrSafari:function(t){return t.stack.split("\n").filter((function(e){return!e.match(r)}),this).map((function(t){if(t.indexOf(" > eval")>-1&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),-1===t.indexOf("@")&&-1===t.indexOf(":"))return new e({functionName:t});var n=/((.*".+"[^@]*)?[^@]*)(?:@)/,r=t.match(n),o=r&&r[1]?r[1]:void 0,i=this.extractLocation(t.replace(n,""));return new e({functionName:o,fileName:i[0],lineNumber:i[1],columnNumber:i[2],source:t})}),this)},parseOpera:function(e){return!e.stacktrace||e.message.indexOf("\n")>-1&&e.message.split("\n").length>e.stacktrace.split("\n").length?this.parseOpera9(e):e.stack?this.parseOpera11(e):this.parseOpera10(e)},parseOpera9:function(t){for(var n=/Line (\d+).*script (?:in )?(\S+)/i,r=t.message.split("\n"),o=[],i=2,s=r.length;i<s;i+=2){var a=n.exec(r[i]);a&&o.push(new e({fileName:a[2],lineNumber:a[1],source:r[i]}))}return o},parseOpera10:function(t){for(var n=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,r=t.stacktrace.split("\n"),o=[],i=0,s=r.length;i<s;i+=2){var a=n.exec(r[i]);a&&o.push(new e({functionName:a[3]||void 0,fileName:a[2],lineNumber:a[1],source:r[i]}))}return o},parseOpera11:function(n){return n.stack.split("\n").filter((function(e){return!!e.match(t)&&!e.match(/^Error created at/)}),this).map((function(t){var n,r=t.split("@"),o=this.extractLocation(r.pop()),i=r.shift()||"",s=i.replace(/<anonymous function(: (\w+))?>/,"$2").replace(/\([^)]*\)/g,"")||void 0;i.match(/\(([^)]*)\)/)&&(n=i.replace(/^[^(]+\(([^)]*)\)$/,"$1"));var a=void 0===n||"[arguments not available]"===n?void 0:n.split(",");return new e({functionName:s,args:a,fileName:o[0],lineNumber:o[1],columnNumber:o[2],source:t})}),this)}}})?r.apply(t,o):r)||(e.exports=i)}()},4029:(e,t,n)=>{"use strict";var r=n(5320),o=Object.prototype.toString,i=Object.prototype.hasOwnProperty;e.exports=function(e,t,n){if(!r(t))throw new TypeError("iterator must be a function");var s;arguments.length>=3&&(s=n),"[object Array]"===o.call(e)?function(e,t,n){for(var r=0,o=e.length;r<o;r++)i.call(e,r)&&(null==n?t(e[r],r,e):t.call(n,e[r],r,e))}(e,t,s):"string"==typeof e?function(e,t,n){for(var r=0,o=e.length;r<o;r++)null==n?t(e.charAt(r),r,e):t.call(n,e.charAt(r),r,e)}(e,t,s):function(e,t,n){for(var r in e)i.call(e,r)&&(null==n?t(e[r],r,e):t.call(n,e[r],r,e))}(e,t,s)}},7648:e=>{"use strict";var t=Array.prototype.slice,n=Object.prototype.toString;e.exports=function(e){var r=this;if("function"!=typeof r||"[object Function]"!==n.call(r))throw new TypeError("Function.prototype.bind called on incompatible "+r);for(var o,i=t.call(arguments,1),s=Math.max(0,r.length-i.length),a=[],l=0;l<s;l++)a.push("$"+l);if(o=Function("binder","return function ("+a.join(",")+"){ return binder.apply(this,arguments); }")((function(){if(this instanceof o){var n=r.apply(this,i.concat(t.call(arguments)));return Object(n)===n?n:this}return r.apply(e,i.concat(t.call(arguments)))})),r.prototype){var c=function(){};c.prototype=r.prototype,o.prototype=new c,c.prototype=null}return o}},8612:(e,t,n)=>{"use strict";var r=n(7648);e.exports=Function.prototype.bind||r},5972:e=>{"use strict";var t=function(){return"string"==typeof function(){}.name},n=Object.getOwnPropertyDescriptor;if(n)try{n([],"length")}catch(e){n=null}t.functionsHaveConfigurableNames=function(){if(!t()||!n)return!1;var e=n((function(){}),"name");return!!e&&!!e.configurable};var r=Function.prototype.bind;t.boundFunctionsHaveNames=function(){return t()&&"function"==typeof r&&""!==function(){}.bind().name},e.exports=t},210:(e,t,n)=>{"use strict";var r,o=SyntaxError,i=Function,s=TypeError,a=function(e){try{return i('"use strict"; return ('+e+").constructor;")()}catch(e){}},l=Object.getOwnPropertyDescriptor;if(l)try{l({},"")}catch(e){l=null}var c=function(){throw new s},u=l?function(){try{return c}catch(e){try{return l(arguments,"callee").get}catch(e){return c}}}():c,h=n(1405)(),d=Object.getPrototypeOf||function(e){return e.__proto__},f={},p="undefined"==typeof Uint8Array?r:d(Uint8Array),m={"%AggregateError%":"undefined"==typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":h?d([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":f,"%AsyncGenerator%":f,"%AsyncGeneratorFunction%":f,"%AsyncIteratorPrototype%":f,"%Atomics%":"undefined"==typeof Atomics?r:Atomics,"%BigInt%":"undefined"==typeof BigInt?r:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?r:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":"undefined"==typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":f,"%Int8Array%":"undefined"==typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h?d(d([][Symbol.iterator]())):r,"%JSON%":"object"==typeof JSON?JSON:r,"%Map%":"undefined"==typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&h?d((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?r:Promise,"%Proxy%":"undefined"==typeof Proxy?r:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":"undefined"==typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&h?d((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h?d(""[Symbol.iterator]()):r,"%Symbol%":h?Symbol:r,"%SyntaxError%":o,"%ThrowTypeError%":u,"%TypedArray%":p,"%TypeError%":s,"%Uint8Array%":"undefined"==typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?r:Uint32Array,"%URIError%":URIError,"%WeakMap%":"undefined"==typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?r:WeakSet};try{null.error}catch(e){var g=d(d(e));m["%Error.prototype%"]=g}var y=function e(t){var n;if("%AsyncFunction%"===t)n=a("async function () {}");else if("%GeneratorFunction%"===t)n=a("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=a("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var o=e("%AsyncGenerator%");o&&(n=d(o.prototype))}return m[t]=n,n},v={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},b=n(8612),w=n(7642),x=b.call(Function.call,Array.prototype.concat),S=b.call(Function.apply,Array.prototype.splice),k=b.call(Function.call,String.prototype.replace),C=b.call(Function.call,String.prototype.slice),M=b.call(Function.call,RegExp.prototype.exec),O=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,E=/\\(\\)?/g,A=function(e,t){var n,r=e;if(w(v,r)&&(r="%"+(n=v[r])[0]+"%"),w(m,r)){var i=m[r];if(i===f&&(i=y(r)),void 0===i&&!t)throw new s("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:i}}throw new o("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!=typeof e||0===e.length)throw new s("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof t)throw new s('"allowMissing" argument must be a boolean');if(null===M(/^%?[^%]*%?$/,e))throw new o("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=C(e,0,1),n=C(e,-1);if("%"===t&&"%"!==n)throw new o("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new o("invalid intrinsic syntax, expected opening `%`");var r=[];return k(e,O,(function(e,t,n,o){r[r.length]=n?k(o,E,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",i=A("%"+r+"%",t),a=i.name,c=i.value,u=!1,h=i.alias;h&&(r=h[0],S(n,x([0,1],h)));for(var d=1,f=!0;d<n.length;d+=1){var p=n[d],g=C(p,0,1),y=C(p,-1);if(('"'===g||"'"===g||"`"===g||'"'===y||"'"===y||"`"===y)&&g!==y)throw new o("property names with quotes must have matching quotes");if("constructor"!==p&&f||(u=!0),w(m,a="%"+(r+="."+p)+"%"))c=m[a];else if(null!=c){if(!(p in c)){if(!t)throw new s("base intrinsic for "+e+" exists, but the property is not available.");return}if(l&&d+1>=n.length){var v=l(c,p);c=(f=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:c[p]}else f=w(c,p),c=c[p];f&&!u&&(m[a]=c)}}return c}},7296:(e,t,n)=>{"use strict";var r=n(210)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(e){r=null}e.exports=r},932:e=>{"use strict";var t="undefined"!=typeof BigInt&&BigInt;e.exports=function(){return"function"==typeof t&&"function"==typeof BigInt&&"bigint"==typeof t(42)&&"bigint"==typeof BigInt(42)}},1044:(e,t,n)=>{"use strict";var r=n(210)("%Object.defineProperty%",!0),o=function(){if(r)try{return r({},"a",{value:1}),!0}catch(e){return!1}return!1};o.hasArrayLengthDefineBug=function(){if(!o())return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=o},1405:(e,t,n)=>{"use strict";var r="undefined"!=typeof Symbol&&Symbol,o=n(5419);e.exports=function(){return"function"==typeof r&&"function"==typeof Symbol&&"symbol"==typeof r("foo")&&"symbol"==typeof Symbol("bar")&&o()}},5419:e=>{"use strict";e.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"==typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"==typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(e,t);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},6410:(e,t,n)=>{"use strict";var r=n(5419);e.exports=function(){return r()&&!!Symbol.toStringTag}},7642:(e,t,n)=>{"use strict";var r=n(8612);e.exports=r.call(Function.call,Object.prototype.hasOwnProperty)},8679:(e,t,n)=>{"use strict";var r=n(9864),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},i={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},s={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},a={};function l(e){return r.isMemo(e)?s:a[e.$$typeof]||o}a[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},a[r.Memo]=s;var c=Object.defineProperty,u=Object.getOwnPropertyNames,h=Object.getOwnPropertySymbols,d=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,p=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(p){var o=f(n);o&&o!==p&&e(t,o,r)}var s=u(n);h&&(s=s.concat(h(n)));for(var a=l(t),m=l(n),g=0;g<s.length;++g){var y=s[g];if(!(i[y]||r&&r[y]||m&&m[y]||a&&a[y])){var v=d(n,y);try{c(t,y,v)}catch(e){}}}}return t}},9496:(e,t,n)=>{"use strict";var r=n(210),o=n(7642),i=n(7478)(),s=r("%TypeError%"),a={assert:function(e,t){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new s("`O` is not an object");if("string"!=typeof t)throw new s("`slot` must be a string");if(i.assert(e),!a.has(e,t))throw new s("`"+t+"` is not present on `O`")},get:function(e,t){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new s("`O` is not an object");if("string"!=typeof t)throw new s("`slot` must be a string");var n=i.get(e);return n&&n["$"+t]},has:function(e,t){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new s("`O` is not an object");if("string"!=typeof t)throw new s("`slot` must be a string");var n=i.get(e);return!!n&&o(n,"$"+t)},set:function(e,t,n){if(!e||"object"!=typeof e&&"function"!=typeof e)throw new s("`O` is not an object");if("string"!=typeof t)throw new s("`slot` must be a string");var r=i.get(e);r||(r={},i.set(e,r)),r["$"+t]=n}};Object.freeze&&Object.freeze(a),e.exports=a},2584:(e,t,n)=>{"use strict";var r=n(6410)(),o=n(1924)("Object.prototype.toString"),i=function(e){return!(r&&e&&"object"==typeof e&&Symbol.toStringTag in e)&&"[object Arguments]"===o(e)},s=function(e){return!!i(e)||null!==e&&"object"==typeof e&&"number"==typeof e.length&&e.length>=0&&"[object Array]"!==o(e)&&"[object Function]"===o(e.callee)},a=function(){return i(arguments)}();i.isLegacyArguments=s,e.exports=a?i:s},635:(e,t,n)=>{"use strict";var r=n(5559),o=n(1924),i=n(210),s=n(5692),a=i("ArrayBuffer",!0),l=i("Float32Array",!0),c=o("ArrayBuffer.prototype.byteLength",!0),u=a&&!c&&(new a).slice,h=u&&r(u);e.exports=c||h?function(e){if(!e||"object"!=typeof e)return!1;try{return c?c(e):h(e,0),!0}catch(e){return!1}}:l?function(e){try{return new l(e).buffer===e&&!s(e)}catch(t){return"object"==typeof e&&"RangeError"===t.name}}:function(e){return!1}},3376:(e,t,n)=>{"use strict";if(n(932)()){var r=BigInt.prototype.valueOf;e.exports=function(e){return null!=e&&"boolean"!=typeof e&&"string"!=typeof e&&"number"!=typeof e&&"symbol"!=typeof e&&"function"!=typeof e&&("bigint"==typeof e||function(e){try{return r.call(e),!0}catch(e){}return!1}(e))}}else e.exports=function(e){return!1}},6814:(e,t,n)=>{"use strict";var r=n(1924),o=r("Boolean.prototype.toString"),i=r("Object.prototype.toString"),s=n(6410)();e.exports=function(e){return"boolean"==typeof e||null!==e&&"object"==typeof e&&(s&&Symbol.toStringTag in e?function(e){try{return o(e),!0}catch(e){return!1}}(e):"[object Boolean]"===i(e))}},5320:e=>{"use strict";var t,n,r=Function.prototype.toString,o="object"==typeof Reflect&&null!==Reflect&&Reflect.apply;if("function"==typeof o&&"function"==typeof Object.defineProperty)try{t=Object.defineProperty({},"length",{get:function(){throw n}}),n={},o((function(){throw 42}),null,t)}catch(e){e!==n&&(o=null)}else o=null;var i=/^\s*class\b/,s=function(e){try{var t=r.call(e);return i.test(t)}catch(e){return!1}},a=function(e){try{return!s(e)&&(r.call(e),!0)}catch(e){return!1}},l=Object.prototype.toString,c="function"==typeof Symbol&&!!Symbol.toStringTag,u=!(0 in[,]),h=function(){return!1};if("object"==typeof document){var d=document.all;l.call(d)===l.call(document.all)&&(h=function(e){if((u||!e)&&(void 0===e||"object"==typeof e))try{var t=l.call(e);return("[object HTMLAllCollection]"===t||"[object HTML document.all class]"===t||"[object HTMLCollection]"===t||"[object Object]"===t)&&null==e("")}catch(e){}return!1})}e.exports=o?function(e){if(h(e))return!0;if(!e)return!1;if("function"!=typeof e&&"object"!=typeof e)return!1;try{o(e,null,t)}catch(e){if(e!==n)return!1}return!s(e)&&a(e)}:function(e){if(h(e))return!0;if(!e)return!1;if("function"!=typeof e&&"object"!=typeof e)return!1;if(c)return a(e);if(s(e))return!1;var t=l.call(e);return!("[object Function]"!==t&&"[object GeneratorFunction]"!==t&&!/^\[object HTML/.test(t))&&a(e)}},8923:(e,t,n)=>{"use strict";var r=Date.prototype.getDay,o=Object.prototype.toString,i=n(6410)();e.exports=function(e){return"object"==typeof e&&null!==e&&(i?function(e){try{return r.call(e),!0}catch(e){return!1}}(e):"[object Date]"===o.call(e))}},8379:e=>{"use strict";var t,n="function"==typeof Map&&Map.prototype?Map:null,r="function"==typeof Set&&Set.prototype?Set:null;n||(t=function(e){return!1});var o=n?Map.prototype.has:null,i=r?Set.prototype.has:null;t||o||(t=function(e){return!1}),e.exports=t||function(e){if(!e||"object"!=typeof e)return!1;try{if(o.call(e),i)try{i.call(e)}catch(e){return!0}return e instanceof n}catch(e){}return!1}},4578:(e,t,n)=>{"use strict";var r=Number.prototype.toString,o=Object.prototype.toString,i=n(6410)();e.exports=function(e){return"number"==typeof e||"object"==typeof e&&(i?function(e){try{return r.call(e),!0}catch(e){return!1}}(e):"[object Number]"===o.call(e))}},8420:(e,t,n)=>{"use strict";var r,o,i,s,a=n(1924),l=n(6410)();if(l){r=a("Object.prototype.hasOwnProperty"),o=a("RegExp.prototype.exec"),i={};var c=function(){throw i};s={toString:c,valueOf:c},"symbol"==typeof Symbol.toPrimitive&&(s[Symbol.toPrimitive]=c)}var u=a("Object.prototype.toString"),h=Object.getOwnPropertyDescriptor;e.exports=l?function(e){if(!e||"object"!=typeof e)return!1;var t=h(e,"lastIndex");if(!t||!r(t,"value"))return!1;try{o(e,s)}catch(e){return e===i}}:function(e){return!(!e||"object"!=typeof e&&"function"!=typeof e)&&"[object RegExp]"===u(e)}},9572:e=>{"use strict";var t,n="function"==typeof Map&&Map.prototype?Map:null,r="function"==typeof Set&&Set.prototype?Set:null;r||(t=function(e){return!1});var o=n?Map.prototype.has:null,i=r?Set.prototype.has:null;t||i||(t=function(e){return!1}),e.exports=t||function(e){if(!e||"object"!=typeof e)return!1;try{if(i.call(e),o)try{o.call(e)}catch(e){return!0}return e instanceof r}catch(e){}return!1}},2579:(e,t,n)=>{"use strict";var r=n(1924)("SharedArrayBuffer.prototype.byteLength",!0);e.exports=r?function(e){if(!e||"object"!=typeof e)return!1;try{return r(e),!0}catch(e){return!1}}:function(e){return!1}},9981:(e,t,n)=>{"use strict";var r=String.prototype.valueOf,o=Object.prototype.toString,i=n(6410)();e.exports=function(e){return"string"==typeof e||"object"==typeof e&&(i?function(e){try{return r.call(e),!0}catch(e){return!1}}(e):"[object String]"===o.call(e))}},2636:(e,t,n)=>{"use strict";var r=Object.prototype.toString;if(n(1405)()){var o=Symbol.prototype.toString,i=/^Symbol\(.*\)$/;e.exports=function(e){if("symbol"==typeof e)return!0;if("[object Symbol]"!==r.call(e))return!1;try{return function(e){return"symbol"==typeof e.valueOf()&&i.test(o.call(e))}(e)}catch(e){return!1}}}else e.exports=function(e){return!1}},5692:(e,t,n)=>{"use strict";var r=n(4029),o=n(3083),i=n(1924),s=i("Object.prototype.toString"),a=n(6410)(),l=n(7296),c="undefined"==typeof globalThis?n.g:globalThis,u=o(),h=i("Array.prototype.indexOf",!0)||function(e,t){for(var n=0;n<e.length;n+=1)if(e[n]===t)return n;return-1},d=i("String.prototype.slice"),f={},p=Object.getPrototypeOf;a&&l&&p&&r(u,(function(e){var t=new c[e];if(Symbol.toStringTag in t){var n=p(t),r=l(n,Symbol.toStringTag);if(!r){var o=p(n);r=l(o,Symbol.toStringTag)}f[e]=r.get}})),e.exports=function(e){if(!e||"object"!=typeof e)return!1;if(!a||!(Symbol.toStringTag in e)){var t=d(s(e),8,-1);return h(u,t)>-1}return!!l&&function(e){var t=!1;return r(f,(function(n,r){if(!t)try{t=n.call(e)===r}catch(e){}})),t}(e)}},1718:e=>{"use strict";var t,n="function"==typeof WeakMap&&WeakMap.prototype?WeakMap:null,r="function"==typeof WeakSet&&WeakSet.prototype?WeakSet:null;n||(t=function(e){return!1});var o=n?n.prototype.has:null,i=r?r.prototype.has:null;t||o||(t=function(e){return!1}),e.exports=t||function(e){if(!e||"object"!=typeof e)return!1;try{if(o.call(e,o),i)try{i.call(e,i)}catch(e){return!0}return e instanceof n}catch(e){}return!1}},5899:(e,t,n)=>{"use strict";var r=n(210),o=n(1924),i=r("%WeakSet%",!0),s=o("WeakSet.prototype.has",!0);if(s){var a=o("WeakMap.prototype.has",!0);e.exports=function(e){if(!e||"object"!=typeof e)return!1;try{if(s(e,s),a)try{a(e,a)}catch(e){return!0}return e instanceof i}catch(e){}return!1}}else e.exports=function(e){return!1}},5826:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return"[object Array]"==t.call(e)}},6486:function(e,t,n){var r;e=n.nmd(e),function(){var o,i="Expected a function",s="__lodash_hash_undefined__",a="__lodash_placeholder__",l=32,c=128,u=1/0,h=9007199254740991,d=NaN,f=4294967295,p=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",l],["partialRight",64],["rearg",256]],m="[object Arguments]",g="[object Array]",y="[object Boolean]",v="[object Date]",b="[object Error]",w="[object Function]",x="[object GeneratorFunction]",S="[object Map]",k="[object Number]",C="[object Object]",M="[object Promise]",O="[object RegExp]",E="[object Set]",A="[object String]",T="[object Symbol]",D="[object WeakMap]",_="[object ArrayBuffer]",R="[object DataView]",N="[object Float32Array]",P="[object Float64Array]",I="[object Int8Array]",L="[object Int16Array]",j="[object Int32Array]",F="[object Uint8Array]",B="[object Uint8ClampedArray]",z="[object Uint16Array]",$="[object Uint32Array]",H=/\b__p \+= '';/g,W=/\b(__p \+=) '' \+/g,U=/(__e\(.*?\)|\b__t\)) \+\n'';/g,V=/&(?:amp|lt|gt|quot|#39);/g,q=/[&<>"']/g,K=RegExp(V.source),Y=RegExp(q.source),G=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,Q=/<%=([\s\S]+?)%>/g,Z=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,X=/^\w*$/,ee=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,te=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(te.source),re=/^\s+/,oe=/\s/,ie=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,se=/\{\n\/\* \[wrapped with (.+)\] \*/,ae=/,? & /,le=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,ue=/\\(\\)?/g,he=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,fe=/^[-+]0x[0-9a-f]+$/i,pe=/^0b[01]+$/i,me=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,be=/($^)/,we=/['\n\r\u2028\u2029\\]/g,xe="\\ud800-\\udfff",Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",Ce="a-z\\xdf-\\xf6\\xf8-\\xff",Me="A-Z\\xc0-\\xd6\\xd8-\\xde",Oe="\\ufe0e\\ufe0f",Ee="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ae="["+xe+"]",Te="["+Ee+"]",De="["+Se+"]",_e="\\d+",Re="["+ke+"]",Ne="["+Ce+"]",Pe="[^"+xe+Ee+_e+ke+Ce+Me+"]",Ie="\\ud83c[\\udffb-\\udfff]",Le="[^"+xe+"]",je="(?:\\ud83c[\\udde6-\\uddff]){2}",Fe="[\\ud800-\\udbff][\\udc00-\\udfff]",Be="["+Me+"]",ze="\\u200d",$e="(?:"+Ne+"|"+Pe+")",He="(?:"+Be+"|"+Pe+")",We="(?:['’](?:d|ll|m|re|s|t|ve))?",Ue="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ve="(?:"+De+"|"+Ie+")?",qe="["+Oe+"]?",Ke=qe+Ve+"(?:"+ze+"(?:"+[Le,je,Fe].join("|")+")"+qe+Ve+")*",Ye="(?:"+[Re,je,Fe].join("|")+")"+Ke,Ge="(?:"+[Le+De+"?",De,je,Fe,Ae].join("|")+")",Je=RegExp("['’]","g"),Qe=RegExp(De,"g"),Ze=RegExp(Ie+"(?="+Ie+")|"+Ge+Ke,"g"),Xe=RegExp([Be+"?"+Ne+"+"+We+"(?="+[Te,Be,"$"].join("|")+")",He+"+"+Ue+"(?="+[Te,Be+$e,"$"].join("|")+")",Be+"?"+$e+"+"+We,Be+"+"+Ue,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_e,Ye].join("|"),"g"),et=RegExp("["+ze+xe+Se+Oe+"]"),tt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,nt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],rt=-1,ot={};ot[N]=ot[P]=ot[I]=ot[L]=ot[j]=ot[F]=ot[B]=ot[z]=ot[$]=!0,ot[m]=ot[g]=ot[_]=ot[y]=ot[R]=ot[v]=ot[b]=ot[w]=ot[S]=ot[k]=ot[C]=ot[O]=ot[E]=ot[A]=ot[D]=!1;var it={};it[m]=it[g]=it[_]=it[R]=it[y]=it[v]=it[N]=it[P]=it[I]=it[L]=it[j]=it[S]=it[k]=it[C]=it[O]=it[E]=it[A]=it[T]=it[F]=it[B]=it[z]=it[$]=!0,it[b]=it[w]=it[D]=!1;var st={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},at=parseFloat,lt=parseInt,ct="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ut="object"==typeof self&&self&&self.Object===Object&&self,ht=ct||ut||Function("return this")(),dt=t&&!t.nodeType&&t,ft=dt&&e&&!e.nodeType&&e,pt=ft&&ft.exports===dt,mt=pt&&ct.process,gt=function(){try{return ft&&ft.require&&ft.require("util").types||mt&&mt.binding&&mt.binding("util")}catch(e){}}(),yt=gt&>.isArrayBuffer,vt=gt&>.isDate,bt=gt&>.isMap,wt=gt&>.isRegExp,xt=gt&>.isSet,St=gt&>.isTypedArray;function kt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function Ct(e,t,n,r){for(var o=-1,i=null==e?0:e.length;++o<i;){var s=e[o];t(r,s,n(s),e)}return r}function Mt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function Ot(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Et(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function At(e,t){for(var n=-1,r=null==e?0:e.length,o=0,i=[];++n<r;){var s=e[n];t(s,n,e)&&(i[o++]=s)}return i}function Tt(e,t){return!(null==e||!e.length)&&Bt(e,t,0)>-1}function Dt(e,t,n){for(var r=-1,o=null==e?0:e.length;++r<o;)if(n(t,e[r]))return!0;return!1}function _t(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n<r;)o[n]=t(e[n],n,e);return o}function Rt(e,t){for(var n=-1,r=t.length,o=e.length;++n<r;)e[o+n]=t[n];return e}function Nt(e,t,n,r){var o=-1,i=null==e?0:e.length;for(r&&i&&(n=e[++o]);++o<i;)n=t(n,e[o],o,e);return n}function Pt(e,t,n,r){var o=null==e?0:e.length;for(r&&o&&(n=e[--o]);o--;)n=t(n,e[o],o,e);return n}function It(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Lt=Wt("length");function jt(e,t,n){var r;return n(e,(function(e,n,o){if(t(e,n,o))return r=n,!1})),r}function Ft(e,t,n,r){for(var o=e.length,i=n+(r?1:-1);r?i--:++i<o;)if(t(e[i],i,e))return i;return-1}function Bt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,o=e.length;++r<o;)if(e[r]===t)return r;return-1}(e,t,n):Ft(e,$t,n)}function zt(e,t,n,r){for(var o=n-1,i=e.length;++o<i;)if(r(e[o],t))return o;return-1}function $t(e){return e!=e}function Ht(e,t){var n=null==e?0:e.length;return n?qt(e,t)/n:d}function Wt(e){return function(t){return null==t?o:t[e]}}function Ut(e){return function(t){return null==e?o:e[t]}}function Vt(e,t,n,r,o){return o(e,(function(e,o,i){n=r?(r=!1,e):t(n,e,o,i)})),n}function qt(e,t){for(var n,r=-1,i=e.length;++r<i;){var s=t(e[r]);s!==o&&(n=n===o?s:n+s)}return n}function Kt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Yt(e){return e?e.slice(0,dn(e)+1).replace(re,""):e}function Gt(e){return function(t){return e(t)}}function Jt(e,t){return _t(t,(function(t){return e[t]}))}function Qt(e,t){return e.has(t)}function Zt(e,t){for(var n=-1,r=e.length;++n<r&&Bt(t,e[n],0)>-1;);return n}function Xt(e,t){for(var n=e.length;n--&&Bt(t,e[n],0)>-1;);return n}var en=Ut({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),tn=Ut({"&":"&","<":"<",">":">",'"':""","'":"'"});function nn(e){return"\\"+st[e]}function rn(e){return et.test(e)}function on(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function sn(e,t){return function(n){return e(t(n))}}function an(e,t){for(var n=-1,r=e.length,o=0,i=[];++n<r;){var s=e[n];s!==t&&s!==a||(e[n]=a,i[o++]=n)}return i}function ln(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function cn(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=[e,e]})),n}function un(e){return rn(e)?function(e){for(var t=Ze.lastIndex=0;Ze.test(e);)++t;return t}(e):Lt(e)}function hn(e){return rn(e)?function(e){return e.match(Ze)||[]}(e):function(e){return e.split("")}(e)}function dn(e){for(var t=e.length;t--&&oe.test(e.charAt(t)););return t}var fn=Ut({"&":"&","<":"<",">":">",""":'"',"'":"'"}),pn=function e(t){var n,r=(t=null==t?ht:pn.defaults(ht.Object(),t,pn.pick(ht,nt))).Array,oe=t.Date,xe=t.Error,Se=t.Function,ke=t.Math,Ce=t.Object,Me=t.RegExp,Oe=t.String,Ee=t.TypeError,Ae=r.prototype,Te=Se.prototype,De=Ce.prototype,_e=t["__core-js_shared__"],Re=Te.toString,Ne=De.hasOwnProperty,Pe=0,Ie=(n=/[^.]+$/.exec(_e&&_e.keys&&_e.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Le=De.toString,je=Re.call(Ce),Fe=ht._,Be=Me("^"+Re.call(Ne).replace(te,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ze=pt?t.Buffer:o,$e=t.Symbol,He=t.Uint8Array,We=ze?ze.allocUnsafe:o,Ue=sn(Ce.getPrototypeOf,Ce),Ve=Ce.create,qe=De.propertyIsEnumerable,Ke=Ae.splice,Ye=$e?$e.isConcatSpreadable:o,Ge=$e?$e.iterator:o,Ze=$e?$e.toStringTag:o,et=function(){try{var e=ci(Ce,"defineProperty");return e({},"",{}),e}catch(e){}}(),st=t.clearTimeout!==ht.clearTimeout&&t.clearTimeout,ct=oe&&oe.now!==ht.Date.now&&oe.now,ut=t.setTimeout!==ht.setTimeout&&t.setTimeout,dt=ke.ceil,ft=ke.floor,mt=Ce.getOwnPropertySymbols,gt=ze?ze.isBuffer:o,Lt=t.isFinite,Ut=Ae.join,mn=sn(Ce.keys,Ce),gn=ke.max,yn=ke.min,vn=oe.now,bn=t.parseInt,wn=ke.random,xn=Ae.reverse,Sn=ci(t,"DataView"),kn=ci(t,"Map"),Cn=ci(t,"Promise"),Mn=ci(t,"Set"),On=ci(t,"WeakMap"),En=ci(Ce,"create"),An=On&&new On,Tn={},Dn=ji(Sn),_n=ji(kn),Rn=ji(Cn),Nn=ji(Mn),Pn=ji(On),In=$e?$e.prototype:o,Ln=In?In.valueOf:o,jn=In?In.toString:o;function Fn(e){if(ea(e)&&!Ws(e)&&!(e instanceof Hn)){if(e instanceof $n)return e;if(Ne.call(e,"__wrapped__"))return Fi(e)}return new $n(e)}var Bn=function(){function e(){}return function(t){if(!Xs(t))return{};if(Ve)return Ve(t);e.prototype=t;var n=new e;return e.prototype=o,n}}();function zn(){}function $n(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=o}function Hn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=f,this.__views__=[]}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Un(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Vn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Vn;++t<n;)this.add(e[t])}function Kn(e){var t=this.__data__=new Un(e);this.size=t.size}function Yn(e,t){var n=Ws(e),r=!n&&Hs(e),o=!n&&!r&&Ks(e),i=!n&&!r&&!o&&la(e),s=n||r||o||i,a=s?Kt(e.length,Oe):[],l=a.length;for(var c in e)!t&&!Ne.call(e,c)||s&&("length"==c||o&&("offset"==c||"parent"==c)||i&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||gi(c,l))||a.push(c);return a}function Gn(e){var t=e.length;return t?e[Vr(0,t-1)]:o}function Jn(e,t){return Ri(Eo(e),ir(t,0,e.length))}function Qn(e){return Ri(Eo(e))}function Zn(e,t,n){(n!==o&&!Bs(e[t],n)||n===o&&!(t in e))&&rr(e,t,n)}function Xn(e,t,n){var r=e[t];Ne.call(e,t)&&Bs(r,n)&&(n!==o||t in e)||rr(e,t,n)}function er(e,t){for(var n=e.length;n--;)if(Bs(e[n][0],t))return n;return-1}function tr(e,t,n,r){return ur(e,(function(e,o,i){t(r,e,n(e),i)})),r}function nr(e,t){return e&&Ao(t,Da(t),e)}function rr(e,t,n){"__proto__"==t&&et?et(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function or(e,t){for(var n=-1,i=t.length,s=r(i),a=null==e;++n<i;)s[n]=a?o:Ma(e,t[n]);return s}function ir(e,t,n){return e==e&&(n!==o&&(e=e<=n?e:n),t!==o&&(e=e>=t?e:t)),e}function sr(e,t,n,r,i,s){var a,l=1&t,c=2&t,u=4&t;if(n&&(a=i?n(e,r,i,s):n(e)),a!==o)return a;if(!Xs(e))return e;var h=Ws(e);if(h){if(a=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&Ne.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!l)return Eo(e,a)}else{var d=di(e),f=d==w||d==x;if(Ks(e))return xo(e,l);if(d==C||d==m||f&&!i){if(a=c||f?{}:pi(e),!l)return c?function(e,t){return Ao(e,hi(e),t)}(e,function(e,t){return e&&Ao(t,_a(t),e)}(a,e)):function(e,t){return Ao(e,ui(e),t)}(e,nr(a,e))}else{if(!it[d])return i?e:{};a=function(e,t,n){var r,o=e.constructor;switch(t){case _:return So(e);case y:case v:return new o(+e);case R:return function(e,t){var n=t?So(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case N:case P:case I:case L:case j:case F:case B:case z:case $:return ko(e,n);case S:return new o;case k:case A:return new o(e);case O:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case E:return new o;case T:return r=e,Ln?Ce(Ln.call(r)):{}}}(e,d,l)}}s||(s=new Kn);var p=s.get(e);if(p)return p;s.set(e,a),ia(e)?e.forEach((function(r){a.add(sr(r,t,n,r,e,s))})):ta(e)&&e.forEach((function(r,o){a.set(o,sr(r,t,n,o,e,s))}));var g=h?o:(u?c?ni:ti:c?_a:Da)(e);return Mt(g||e,(function(r,o){g&&(r=e[o=r]),Xn(a,o,sr(r,t,n,o,e,s))})),a}function ar(e,t,n){var r=n.length;if(null==e)return!r;for(e=Ce(e);r--;){var i=n[r],s=t[i],a=e[i];if(a===o&&!(i in e)||!s(a))return!1}return!0}function lr(e,t,n){if("function"!=typeof e)throw new Ee(i);return Ai((function(){e.apply(o,n)}),t)}function cr(e,t,n,r){var o=-1,i=Tt,s=!0,a=e.length,l=[],c=t.length;if(!a)return l;n&&(t=_t(t,Gt(n))),r?(i=Dt,s=!1):t.length>=200&&(i=Qt,s=!1,t=new qn(t));e:for(;++o<a;){var u=e[o],h=null==n?u:n(u);if(u=r||0!==u?u:0,s&&h==h){for(var d=c;d--;)if(t[d]===h)continue e;l.push(u)}else i(t,h,r)||l.push(u)}return l}Fn.templateSettings={escape:G,evaluate:J,interpolate:Q,variable:"",imports:{_:Fn}},Fn.prototype=zn.prototype,Fn.prototype.constructor=Fn,$n.prototype=Bn(zn.prototype),$n.prototype.constructor=$n,Hn.prototype=Bn(zn.prototype),Hn.prototype.constructor=Hn,Wn.prototype.clear=function(){this.__data__=En?En(null):{},this.size=0},Wn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Wn.prototype.get=function(e){var t=this.__data__;if(En){var n=t[e];return n===s?o:n}return Ne.call(t,e)?t[e]:o},Wn.prototype.has=function(e){var t=this.__data__;return En?t[e]!==o:Ne.call(t,e)},Wn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=En&&t===o?s:t,this},Un.prototype.clear=function(){this.__data__=[],this.size=0},Un.prototype.delete=function(e){var t=this.__data__,n=er(t,e);return!(n<0||(n==t.length-1?t.pop():Ke.call(t,n,1),--this.size,0))},Un.prototype.get=function(e){var t=this.__data__,n=er(t,e);return n<0?o:t[n][1]},Un.prototype.has=function(e){return er(this.__data__,e)>-1},Un.prototype.set=function(e,t){var n=this.__data__,r=er(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Vn.prototype.clear=function(){this.size=0,this.__data__={hash:new Wn,map:new(kn||Un),string:new Wn}},Vn.prototype.delete=function(e){var t=ai(this,e).delete(e);return this.size-=t?1:0,t},Vn.prototype.get=function(e){return ai(this,e).get(e)},Vn.prototype.has=function(e){return ai(this,e).has(e)},Vn.prototype.set=function(e,t){var n=ai(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},qn.prototype.add=qn.prototype.push=function(e){return this.__data__.set(e,s),this},qn.prototype.has=function(e){return this.__data__.has(e)},Kn.prototype.clear=function(){this.__data__=new Un,this.size=0},Kn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Kn.prototype.get=function(e){return this.__data__.get(e)},Kn.prototype.has=function(e){return this.__data__.has(e)},Kn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Un){var r=n.__data__;if(!kn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Vn(r)}return n.set(e,t),this.size=n.size,this};var ur=_o(vr),hr=_o(br,!0);function dr(e,t){var n=!0;return ur(e,(function(e,r,o){return n=!!t(e,r,o)})),n}function fr(e,t,n){for(var r=-1,i=e.length;++r<i;){var s=e[r],a=t(s);if(null!=a&&(l===o?a==a&&!aa(a):n(a,l)))var l=a,c=s}return c}function pr(e,t){var n=[];return ur(e,(function(e,r,o){t(e,r,o)&&n.push(e)})),n}function mr(e,t,n,r,o){var i=-1,s=e.length;for(n||(n=mi),o||(o=[]);++i<s;){var a=e[i];t>0&&n(a)?t>1?mr(a,t-1,n,r,o):Rt(o,a):r||(o[o.length]=a)}return o}var gr=Ro(),yr=Ro(!0);function vr(e,t){return e&&gr(e,t,Da)}function br(e,t){return e&&yr(e,t,Da)}function wr(e,t){return At(t,(function(t){return Js(e[t])}))}function xr(e,t){for(var n=0,r=(t=yo(t,e)).length;null!=e&&n<r;)e=e[Li(t[n++])];return n&&n==r?e:o}function Sr(e,t,n){var r=t(e);return Ws(e)?r:Rt(r,n(e))}function kr(e){return null==e?e===o?"[object Undefined]":"[object Null]":Ze&&Ze in Ce(e)?function(e){var t=Ne.call(e,Ze),n=e[Ze];try{e[Ze]=o;var r=!0}catch(e){}var i=Le.call(e);return r&&(t?e[Ze]=n:delete e[Ze]),i}(e):function(e){return Le.call(e)}(e)}function Cr(e,t){return e>t}function Mr(e,t){return null!=e&&Ne.call(e,t)}function Or(e,t){return null!=e&&t in Ce(e)}function Er(e,t,n){for(var i=n?Dt:Tt,s=e[0].length,a=e.length,l=a,c=r(a),u=1/0,h=[];l--;){var d=e[l];l&&t&&(d=_t(d,Gt(t))),u=yn(d.length,u),c[l]=!n&&(t||s>=120&&d.length>=120)?new qn(l&&d):o}d=e[0];var f=-1,p=c[0];e:for(;++f<s&&h.length<u;){var m=d[f],g=t?t(m):m;if(m=n||0!==m?m:0,!(p?Qt(p,g):i(h,g,n))){for(l=a;--l;){var y=c[l];if(!(y?Qt(y,g):i(e[l],g,n)))continue e}p&&p.push(g),h.push(m)}}return h}function Ar(e,t,n){var r=null==(e=Mi(e,t=yo(t,e)))?e:e[Li(Gi(t))];return null==r?o:kt(r,e,n)}function Tr(e){return ea(e)&&kr(e)==m}function Dr(e,t,n,r,i){return e===t||(null==e||null==t||!ea(e)&&!ea(t)?e!=e&&t!=t:function(e,t,n,r,i,s){var a=Ws(e),l=Ws(t),c=a?g:di(e),u=l?g:di(t),h=(c=c==m?C:c)==C,d=(u=u==m?C:u)==C,f=c==u;if(f&&Ks(e)){if(!Ks(t))return!1;a=!0,h=!1}if(f&&!h)return s||(s=new Kn),a||la(e)?Xo(e,t,n,r,i,s):function(e,t,n,r,o,i,s){switch(n){case R:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case _:return!(e.byteLength!=t.byteLength||!i(new He(e),new He(t)));case y:case v:case k:return Bs(+e,+t);case b:return e.name==t.name&&e.message==t.message;case O:case A:return e==t+"";case S:var a=on;case E:var l=1&r;if(a||(a=ln),e.size!=t.size&&!l)return!1;var c=s.get(e);if(c)return c==t;r|=2,s.set(e,t);var u=Xo(a(e),a(t),r,o,i,s);return s.delete(e),u;case T:if(Ln)return Ln.call(e)==Ln.call(t)}return!1}(e,t,c,n,r,i,s);if(!(1&n)){var p=h&&Ne.call(e,"__wrapped__"),w=d&&Ne.call(t,"__wrapped__");if(p||w){var x=p?e.value():e,M=w?t.value():t;return s||(s=new Kn),i(x,M,n,r,s)}}return!!f&&(s||(s=new Kn),function(e,t,n,r,i,s){var a=1&n,l=ti(e),c=l.length;if(c!=ti(t).length&&!a)return!1;for(var u=c;u--;){var h=l[u];if(!(a?h in t:Ne.call(t,h)))return!1}var d=s.get(e),f=s.get(t);if(d&&f)return d==t&&f==e;var p=!0;s.set(e,t),s.set(t,e);for(var m=a;++u<c;){var g=e[h=l[u]],y=t[h];if(r)var v=a?r(y,g,h,t,e,s):r(g,y,h,e,t,s);if(!(v===o?g===y||i(g,y,n,r,s):v)){p=!1;break}m||(m="constructor"==h)}if(p&&!m){var b=e.constructor,w=t.constructor;b==w||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof w&&w instanceof w||(p=!1)}return s.delete(e),s.delete(t),p}(e,t,n,r,i,s))}(e,t,n,r,Dr,i))}function _r(e,t,n,r){var i=n.length,s=i,a=!r;if(null==e)return!s;for(e=Ce(e);i--;){var l=n[i];if(a&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++i<s;){var c=(l=n[i])[0],u=e[c],h=l[1];if(a&&l[2]){if(u===o&&!(c in e))return!1}else{var d=new Kn;if(r)var f=r(u,h,c,e,t,d);if(!(f===o?Dr(h,u,3,r,d):f))return!1}}return!0}function Rr(e){return!(!Xs(e)||(t=e,Ie&&Ie in t))&&(Js(e)?Be:me).test(ji(e));var t}function Nr(e){return"function"==typeof e?e:null==e?nl:"object"==typeof e?Ws(e)?Fr(e[0],e[1]):jr(e):hl(e)}function Pr(e){if(!xi(e))return mn(e);var t=[];for(var n in Ce(e))Ne.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Ir(e,t){return e<t}function Lr(e,t){var n=-1,o=Vs(e)?r(e.length):[];return ur(e,(function(e,r,i){o[++n]=t(e,r,i)})),o}function jr(e){var t=li(e);return 1==t.length&&t[0][2]?ki(t[0][0],t[0][1]):function(n){return n===e||_r(n,e,t)}}function Fr(e,t){return vi(e)&&Si(t)?ki(Li(e),t):function(n){var r=Ma(n,e);return r===o&&r===t?Oa(n,e):Dr(t,r,3)}}function Br(e,t,n,r,i){e!==t&&gr(t,(function(s,a){if(i||(i=new Kn),Xs(s))!function(e,t,n,r,i,s,a){var l=Oi(e,n),c=Oi(t,n),u=a.get(c);if(u)Zn(e,n,u);else{var h=s?s(l,c,n+"",e,t,a):o,d=h===o;if(d){var f=Ws(c),p=!f&&Ks(c),m=!f&&!p&&la(c);h=c,f||p||m?Ws(l)?h=l:qs(l)?h=Eo(l):p?(d=!1,h=xo(c,!0)):m?(d=!1,h=ko(c,!0)):h=[]:ra(c)||Hs(c)?(h=l,Hs(l)?h=ga(l):Xs(l)&&!Js(l)||(h=pi(c))):d=!1}d&&(a.set(c,h),i(h,c,r,s,a),a.delete(c)),Zn(e,n,h)}}(e,t,a,n,Br,r,i);else{var l=r?r(Oi(e,a),s,a+"",e,t,i):o;l===o&&(l=s),Zn(e,a,l)}}),_a)}function zr(e,t){var n=e.length;if(n)return gi(t+=t<0?n:0,n)?e[t]:o}function $r(e,t,n){t=t.length?_t(t,(function(e){return Ws(e)?function(t){return xr(t,1===e.length?e[0]:e)}:e})):[nl];var r=-1;t=_t(t,Gt(si()));var o=Lr(e,(function(e,n,o){var i=_t(t,(function(t){return t(e)}));return{criteria:i,index:++r,value:e}}));return function(e,t){var r=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var r=-1,o=e.criteria,i=t.criteria,s=o.length,a=n.length;++r<s;){var l=Co(o[r],i[r]);if(l)return r>=a?l:l*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}));r--;)e[r]=e[r].value;return e}(o)}function Hr(e,t,n){for(var r=-1,o=t.length,i={};++r<o;){var s=t[r],a=xr(e,s);n(a,s)&&Jr(i,yo(s,e),a)}return i}function Wr(e,t,n,r){var o=r?zt:Bt,i=-1,s=t.length,a=e;for(e===t&&(t=Eo(t)),n&&(a=_t(e,Gt(n)));++i<s;)for(var l=0,c=t[i],u=n?n(c):c;(l=o(a,u,l,r))>-1;)a!==e&&Ke.call(a,l,1),Ke.call(e,l,1);return e}function Ur(e,t){for(var n=e?t.length:0,r=n-1;n--;){var o=t[n];if(n==r||o!==i){var i=o;gi(o)?Ke.call(e,o,1):lo(e,o)}}return e}function Vr(e,t){return e+ft(wn()*(t-e+1))}function qr(e,t){var n="";if(!e||t<1||t>h)return n;do{t%2&&(n+=e),(t=ft(t/2))&&(e+=e)}while(t);return n}function Kr(e,t){return Ti(Ci(e,t,nl),e+"")}function Yr(e){return Gn(Ba(e))}function Gr(e,t){var n=Ba(e);return Ri(n,ir(t,0,n.length))}function Jr(e,t,n,r){if(!Xs(e))return e;for(var i=-1,s=(t=yo(t,e)).length,a=s-1,l=e;null!=l&&++i<s;){var c=Li(t[i]),u=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return e;if(i!=a){var h=l[c];(u=r?r(h,c,l):o)===o&&(u=Xs(h)?h:gi(t[i+1])?[]:{})}Xn(l,c,u),l=l[c]}return e}var Qr=An?function(e,t){return An.set(e,t),e}:nl,Zr=et?function(e,t){return et(e,"toString",{configurable:!0,enumerable:!1,value:Xa(t),writable:!0})}:nl;function Xr(e){return Ri(Ba(e))}function eo(e,t,n){var o=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var s=r(i);++o<i;)s[o]=e[o+t];return s}function to(e,t){var n;return ur(e,(function(e,r,o){return!(n=t(e,r,o))})),!!n}function no(e,t,n){var r=0,o=null==e?r:e.length;if("number"==typeof t&&t==t&&o<=2147483647){for(;r<o;){var i=r+o>>>1,s=e[i];null!==s&&!aa(s)&&(n?s<=t:s<t)?r=i+1:o=i}return o}return ro(e,t,nl,n)}function ro(e,t,n,r){var i=0,s=null==e?0:e.length;if(0===s)return 0;for(var a=(t=n(t))!=t,l=null===t,c=aa(t),u=t===o;i<s;){var h=ft((i+s)/2),d=n(e[h]),f=d!==o,p=null===d,m=d==d,g=aa(d);if(a)var y=r||m;else y=u?m&&(r||f):l?m&&f&&(r||!p):c?m&&f&&!p&&(r||!g):!p&&!g&&(r?d<=t:d<t);y?i=h+1:s=h}return yn(s,4294967294)}function oo(e,t){for(var n=-1,r=e.length,o=0,i=[];++n<r;){var s=e[n],a=t?t(s):s;if(!n||!Bs(a,l)){var l=a;i[o++]=0===s?0:s}}return i}function io(e){return"number"==typeof e?e:aa(e)?d:+e}function so(e){if("string"==typeof e)return e;if(Ws(e))return _t(e,so)+"";if(aa(e))return jn?jn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ao(e,t,n){var r=-1,o=Tt,i=e.length,s=!0,a=[],l=a;if(n)s=!1,o=Dt;else if(i>=200){var c=t?null:Ko(e);if(c)return ln(c);s=!1,o=Qt,l=new qn}else l=t?[]:a;e:for(;++r<i;){var u=e[r],h=t?t(u):u;if(u=n||0!==u?u:0,s&&h==h){for(var d=l.length;d--;)if(l[d]===h)continue e;t&&l.push(h),a.push(u)}else o(l,h,n)||(l!==a&&l.push(h),a.push(u))}return a}function lo(e,t){return null==(e=Mi(e,t=yo(t,e)))||delete e[Li(Gi(t))]}function co(e,t,n,r){return Jr(e,t,n(xr(e,t)),r)}function uo(e,t,n,r){for(var o=e.length,i=r?o:-1;(r?i--:++i<o)&&t(e[i],i,e););return n?eo(e,r?0:i,r?i+1:o):eo(e,r?i+1:0,r?o:i)}function ho(e,t){var n=e;return n instanceof Hn&&(n=n.value()),Nt(t,(function(e,t){return t.func.apply(t.thisArg,Rt([e],t.args))}),n)}function fo(e,t,n){var o=e.length;if(o<2)return o?ao(e[0]):[];for(var i=-1,s=r(o);++i<o;)for(var a=e[i],l=-1;++l<o;)l!=i&&(s[i]=cr(s[i]||a,e[l],t,n));return ao(mr(s,1),t,n)}function po(e,t,n){for(var r=-1,i=e.length,s=t.length,a={};++r<i;){var l=r<s?t[r]:o;n(a,e[r],l)}return a}function mo(e){return qs(e)?e:[]}function go(e){return"function"==typeof e?e:nl}function yo(e,t){return Ws(e)?e:vi(e,t)?[e]:Ii(ya(e))}var vo=Kr;function bo(e,t,n){var r=e.length;return n=n===o?r:n,!t&&n>=r?e:eo(e,t,n)}var wo=st||function(e){return ht.clearTimeout(e)};function xo(e,t){if(t)return e.slice();var n=e.length,r=We?We(n):new e.constructor(n);return e.copy(r),r}function So(e){var t=new e.constructor(e.byteLength);return new He(t).set(new He(e)),t}function ko(e,t){var n=t?So(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Co(e,t){if(e!==t){var n=e!==o,r=null===e,i=e==e,s=aa(e),a=t!==o,l=null===t,c=t==t,u=aa(t);if(!l&&!u&&!s&&e>t||s&&a&&c&&!l&&!u||r&&a&&c||!n&&c||!i)return 1;if(!r&&!s&&!u&&e<t||u&&n&&i&&!r&&!s||l&&n&&i||!a&&i||!c)return-1}return 0}function Mo(e,t,n,o){for(var i=-1,s=e.length,a=n.length,l=-1,c=t.length,u=gn(s-a,0),h=r(c+u),d=!o;++l<c;)h[l]=t[l];for(;++i<a;)(d||i<s)&&(h[n[i]]=e[i]);for(;u--;)h[l++]=e[i++];return h}function Oo(e,t,n,o){for(var i=-1,s=e.length,a=-1,l=n.length,c=-1,u=t.length,h=gn(s-l,0),d=r(h+u),f=!o;++i<h;)d[i]=e[i];for(var p=i;++c<u;)d[p+c]=t[c];for(;++a<l;)(f||i<s)&&(d[p+n[a]]=e[i++]);return d}function Eo(e,t){var n=-1,o=e.length;for(t||(t=r(o));++n<o;)t[n]=e[n];return t}function Ao(e,t,n,r){var i=!n;n||(n={});for(var s=-1,a=t.length;++s<a;){var l=t[s],c=r?r(n[l],e[l],l,n,e):o;c===o&&(c=e[l]),i?rr(n,l,c):Xn(n,l,c)}return n}function To(e,t){return function(n,r){var o=Ws(n)?Ct:tr,i=t?t():{};return o(n,e,si(r,2),i)}}function Do(e){return Kr((function(t,n){var r=-1,i=n.length,s=i>1?n[i-1]:o,a=i>2?n[2]:o;for(s=e.length>3&&"function"==typeof s?(i--,s):o,a&&yi(n[0],n[1],a)&&(s=i<3?o:s,i=1),t=Ce(t);++r<i;){var l=n[r];l&&e(t,l,r,s)}return t}))}function _o(e,t){return function(n,r){if(null==n)return n;if(!Vs(n))return e(n,r);for(var o=n.length,i=t?o:-1,s=Ce(n);(t?i--:++i<o)&&!1!==r(s[i],i,s););return n}}function Ro(e){return function(t,n,r){for(var o=-1,i=Ce(t),s=r(t),a=s.length;a--;){var l=s[e?a:++o];if(!1===n(i[l],l,i))break}return t}}function No(e){return function(t){var n=rn(t=ya(t))?hn(t):o,r=n?n[0]:t.charAt(0),i=n?bo(n,1).join(""):t.slice(1);return r[e]()+i}}function Po(e){return function(t){return Nt(Ja(Ha(t).replace(Je,"")),e,"")}}function Io(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Bn(e.prototype),r=e.apply(n,t);return Xs(r)?r:n}}function Lo(e){return function(t,n,r){var i=Ce(t);if(!Vs(t)){var s=si(n,3);t=Da(t),n=function(e){return s(i[e],e,i)}}var a=e(t,n,r);return a>-1?i[s?t[a]:a]:o}}function jo(e){return ei((function(t){var n=t.length,r=n,s=$n.prototype.thru;for(e&&t.reverse();r--;){var a=t[r];if("function"!=typeof a)throw new Ee(i);if(s&&!l&&"wrapper"==oi(a))var l=new $n([],!0)}for(r=l?r:n;++r<n;){var c=oi(a=t[r]),u="wrapper"==c?ri(a):o;l=u&&bi(u[0])&&424==u[1]&&!u[4].length&&1==u[9]?l[oi(u[0])].apply(l,u[3]):1==a.length&&bi(a)?l[c]():l.thru(a)}return function(){var e=arguments,r=e[0];if(l&&1==e.length&&Ws(r))return l.plant(r).value();for(var o=0,i=n?t[o].apply(this,e):r;++o<n;)i=t[o].call(this,i);return i}}))}function Fo(e,t,n,i,s,a,l,u,h,d){var f=t&c,p=1&t,m=2&t,g=24&t,y=512&t,v=m?o:Io(e);return function c(){for(var b=arguments.length,w=r(b),x=b;x--;)w[x]=arguments[x];if(g)var S=ii(c),k=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(w,S);if(i&&(w=Mo(w,i,s,g)),a&&(w=Oo(w,a,l,g)),b-=k,g&&b<d){var C=an(w,S);return Vo(e,t,Fo,c.placeholder,n,w,C,u,h,d-b)}var M=p?n:this,O=m?M[e]:e;return b=w.length,u?w=function(e,t){for(var n=e.length,r=yn(t.length,n),i=Eo(e);r--;){var s=t[r];e[r]=gi(s,n)?i[s]:o}return e}(w,u):y&&b>1&&w.reverse(),f&&h<b&&(w.length=h),this&&this!==ht&&this instanceof c&&(O=v||Io(O)),O.apply(M,w)}}function Bo(e,t){return function(n,r){return function(e,t,n,r){return vr(e,(function(e,o,i){t(r,n(e),o,i)})),r}(n,e,t(r),{})}}function zo(e,t){return function(n,r){var i;if(n===o&&r===o)return t;if(n!==o&&(i=n),r!==o){if(i===o)return r;"string"==typeof n||"string"==typeof r?(n=so(n),r=so(r)):(n=io(n),r=io(r)),i=e(n,r)}return i}}function $o(e){return ei((function(t){return t=_t(t,Gt(si())),Kr((function(n){var r=this;return e(t,(function(e){return kt(e,r,n)}))}))}))}function Ho(e,t){var n=(t=t===o?" ":so(t)).length;if(n<2)return n?qr(t,e):t;var r=qr(t,dt(e/un(t)));return rn(t)?bo(hn(r),0,e).join(""):r.slice(0,e)}function Wo(e){return function(t,n,i){return i&&"number"!=typeof i&&yi(t,n,i)&&(n=i=o),t=da(t),n===o?(n=t,t=0):n=da(n),function(e,t,n,o){for(var i=-1,s=gn(dt((t-e)/(n||1)),0),a=r(s);s--;)a[o?s:++i]=e,e+=n;return a}(t,n,i=i===o?t<n?1:-1:da(i),e)}}function Uo(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=ma(t),n=ma(n)),e(t,n)}}function Vo(e,t,n,r,i,s,a,c,u,h){var d=8&t;t|=d?l:64,4&(t&=~(d?64:l))||(t&=-4);var f=[e,t,i,d?s:o,d?a:o,d?o:s,d?o:a,c,u,h],p=n.apply(o,f);return bi(e)&&Ei(p,f),p.placeholder=r,Di(p,e,t)}function qo(e){var t=ke[e];return function(e,n){if(e=ma(e),(n=null==n?0:yn(fa(n),292))&&Lt(e)){var r=(ya(e)+"e").split("e");return+((r=(ya(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var Ko=Mn&&1/ln(new Mn([,-0]))[1]==u?function(e){return new Mn(e)}:al;function Yo(e){return function(t){var n=di(t);return n==S?on(t):n==E?cn(t):function(e,t){return _t(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Go(e,t,n,s,u,h,d,f){var p=2&t;if(!p&&"function"!=typeof e)throw new Ee(i);var m=s?s.length:0;if(m||(t&=-97,s=u=o),d=d===o?d:gn(fa(d),0),f=f===o?f:fa(f),m-=u?u.length:0,64&t){var g=s,y=u;s=u=o}var v=p?o:ri(e),b=[e,t,n,s,u,g,y,h,d,f];if(v&&function(e,t){var n=e[1],r=t[1],o=n|r,i=o<131,s=r==c&&8==n||r==c&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!i&&!s)return e;1&r&&(e[2]=t[2],o|=1&n?0:4);var l=t[3];if(l){var u=e[3];e[3]=u?Mo(u,l,t[4]):l,e[4]=u?an(e[3],a):t[4]}(l=t[5])&&(u=e[5],e[5]=u?Oo(u,l,t[6]):l,e[6]=u?an(e[5],a):t[6]),(l=t[7])&&(e[7]=l),r&c&&(e[8]=null==e[8]?t[8]:yn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o}(b,v),e=b[0],t=b[1],n=b[2],s=b[3],u=b[4],!(f=b[9]=b[9]===o?p?0:e.length:gn(b[9]-m,0))&&24&t&&(t&=-25),t&&1!=t)w=8==t||16==t?function(e,t,n){var i=Io(e);return function s(){for(var a=arguments.length,l=r(a),c=a,u=ii(s);c--;)l[c]=arguments[c];var h=a<3&&l[0]!==u&&l[a-1]!==u?[]:an(l,u);return(a-=h.length)<n?Vo(e,t,Fo,s.placeholder,o,l,h,o,o,n-a):kt(this&&this!==ht&&this instanceof s?i:e,this,l)}}(e,t,f):t!=l&&33!=t||u.length?Fo.apply(o,b):function(e,t,n,o){var i=1&t,s=Io(e);return function t(){for(var a=-1,l=arguments.length,c=-1,u=o.length,h=r(u+l),d=this&&this!==ht&&this instanceof t?s:e;++c<u;)h[c]=o[c];for(;l--;)h[c++]=arguments[++a];return kt(d,i?n:this,h)}}(e,t,n,s);else var w=function(e,t,n){var r=1&t,o=Io(e);return function t(){return(this&&this!==ht&&this instanceof t?o:e).apply(r?n:this,arguments)}}(e,t,n);return Di((v?Qr:Ei)(w,b),e,t)}function Jo(e,t,n,r){return e===o||Bs(e,De[n])&&!Ne.call(r,n)?t:e}function Qo(e,t,n,r,i,s){return Xs(e)&&Xs(t)&&(s.set(t,e),Br(e,t,o,Qo,s),s.delete(t)),e}function Zo(e){return ra(e)?o:e}function Xo(e,t,n,r,i,s){var a=1&n,l=e.length,c=t.length;if(l!=c&&!(a&&c>l))return!1;var u=s.get(e),h=s.get(t);if(u&&h)return u==t&&h==e;var d=-1,f=!0,p=2&n?new qn:o;for(s.set(e,t),s.set(t,e);++d<l;){var m=e[d],g=t[d];if(r)var y=a?r(g,m,d,t,e,s):r(m,g,d,e,t,s);if(y!==o){if(y)continue;f=!1;break}if(p){if(!It(t,(function(e,t){if(!Qt(p,t)&&(m===e||i(m,e,n,r,s)))return p.push(t)}))){f=!1;break}}else if(m!==g&&!i(m,g,n,r,s)){f=!1;break}}return s.delete(e),s.delete(t),f}function ei(e){return Ti(Ci(e,o,Ui),e+"")}function ti(e){return Sr(e,Da,ui)}function ni(e){return Sr(e,_a,hi)}var ri=An?function(e){return An.get(e)}:al;function oi(e){for(var t=e.name+"",n=Tn[t],r=Ne.call(Tn,t)?n.length:0;r--;){var o=n[r],i=o.func;if(null==i||i==e)return o.name}return t}function ii(e){return(Ne.call(Fn,"placeholder")?Fn:e).placeholder}function si(){var e=Fn.iteratee||rl;return e=e===rl?Nr:e,arguments.length?e(arguments[0],arguments[1]):e}function ai(e,t){var n,r,o=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?o["string"==typeof t?"string":"hash"]:o.map}function li(e){for(var t=Da(e),n=t.length;n--;){var r=t[n],o=e[r];t[n]=[r,o,Si(o)]}return t}function ci(e,t){var n=function(e,t){return null==e?o:e[t]}(e,t);return Rr(n)?n:o}var ui=mt?function(e){return null==e?[]:(e=Ce(e),At(mt(e),(function(t){return qe.call(e,t)})))}:pl,hi=mt?function(e){for(var t=[];e;)Rt(t,ui(e)),e=Ue(e);return t}:pl,di=kr;function fi(e,t,n){for(var r=-1,o=(t=yo(t,e)).length,i=!1;++r<o;){var s=Li(t[r]);if(!(i=null!=e&&n(e,s)))break;e=e[s]}return i||++r!=o?i:!!(o=null==e?0:e.length)&&Zs(o)&&gi(s,o)&&(Ws(e)||Hs(e))}function pi(e){return"function"!=typeof e.constructor||xi(e)?{}:Bn(Ue(e))}function mi(e){return Ws(e)||Hs(e)||!!(Ye&&e&&e[Ye])}function gi(e,t){var n=typeof e;return!!(t=null==t?h:t)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function yi(e,t,n){if(!Xs(n))return!1;var r=typeof t;return!!("number"==r?Vs(n)&&gi(t,n.length):"string"==r&&t in n)&&Bs(n[t],e)}function vi(e,t){if(Ws(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!aa(e))||X.test(e)||!Z.test(e)||null!=t&&e in Ce(t)}function bi(e){var t=oi(e),n=Fn[t];if("function"!=typeof n||!(t in Hn.prototype))return!1;if(e===n)return!0;var r=ri(n);return!!r&&e===r[0]}(Sn&&di(new Sn(new ArrayBuffer(1)))!=R||kn&&di(new kn)!=S||Cn&&di(Cn.resolve())!=M||Mn&&di(new Mn)!=E||On&&di(new On)!=D)&&(di=function(e){var t=kr(e),n=t==C?e.constructor:o,r=n?ji(n):"";if(r)switch(r){case Dn:return R;case _n:return S;case Rn:return M;case Nn:return E;case Pn:return D}return t});var wi=_e?Js:ml;function xi(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||De)}function Si(e){return e==e&&!Xs(e)}function ki(e,t){return function(n){return null!=n&&n[e]===t&&(t!==o||e in Ce(n))}}function Ci(e,t,n){return t=gn(t===o?e.length-1:t,0),function(){for(var o=arguments,i=-1,s=gn(o.length-t,0),a=r(s);++i<s;)a[i]=o[t+i];i=-1;for(var l=r(t+1);++i<t;)l[i]=o[i];return l[t]=n(a),kt(e,this,l)}}function Mi(e,t){return t.length<2?e:xr(e,eo(t,0,-1))}function Oi(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Ei=_i(Qr),Ai=ut||function(e,t){return ht.setTimeout(e,t)},Ti=_i(Zr);function Di(e,t,n){var r=t+"";return Ti(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ie,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return Mt(p,(function(n){var r="_."+n[0];t&n[1]&&!Tt(e,r)&&e.push(r)})),e.sort()}(function(e){var t=e.match(se);return t?t[1].split(ae):[]}(r),n)))}function _i(e){var t=0,n=0;return function(){var r=vn(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(o,arguments)}}function Ri(e,t){var n=-1,r=e.length,i=r-1;for(t=t===o?r:t;++n<t;){var s=Vr(n,i),a=e[s];e[s]=e[n],e[n]=a}return e.length=t,e}var Ni,Pi,Ii=(Ni=Ns((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(ee,(function(e,n,r,o){t.push(r?o.replace(ue,"$1"):n||e)})),t}),(function(e){return 500===Pi.size&&Pi.clear(),e})),Pi=Ni.cache,Ni);function Li(e){if("string"==typeof e||aa(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ji(e){if(null!=e){try{return Re.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Fi(e){if(e instanceof Hn)return e.clone();var t=new $n(e.__wrapped__,e.__chain__);return t.__actions__=Eo(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Bi=Kr((function(e,t){return qs(e)?cr(e,mr(t,1,qs,!0)):[]})),zi=Kr((function(e,t){var n=Gi(t);return qs(n)&&(n=o),qs(e)?cr(e,mr(t,1,qs,!0),si(n,2)):[]})),$i=Kr((function(e,t){var n=Gi(t);return qs(n)&&(n=o),qs(e)?cr(e,mr(t,1,qs,!0),o,n):[]}));function Hi(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:fa(n);return o<0&&(o=gn(r+o,0)),Ft(e,si(t,3),o)}function Wi(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r-1;return n!==o&&(i=fa(n),i=n<0?gn(r+i,0):yn(i,r-1)),Ft(e,si(t,3),i,!0)}function Ui(e){return null!=e&&e.length?mr(e,1):[]}function Vi(e){return e&&e.length?e[0]:o}var qi=Kr((function(e){var t=_t(e,mo);return t.length&&t[0]===e[0]?Er(t):[]})),Ki=Kr((function(e){var t=Gi(e),n=_t(e,mo);return t===Gi(n)?t=o:n.pop(),n.length&&n[0]===e[0]?Er(n,si(t,2)):[]})),Yi=Kr((function(e){var t=Gi(e),n=_t(e,mo);return(t="function"==typeof t?t:o)&&n.pop(),n.length&&n[0]===e[0]?Er(n,o,t):[]}));function Gi(e){var t=null==e?0:e.length;return t?e[t-1]:o}var Ji=Kr(Qi);function Qi(e,t){return e&&e.length&&t&&t.length?Wr(e,t):e}var Zi=ei((function(e,t){var n=null==e?0:e.length,r=or(e,t);return Ur(e,_t(t,(function(e){return gi(e,n)?+e:e})).sort(Co)),r}));function Xi(e){return null==e?e:xn.call(e)}var es=Kr((function(e){return ao(mr(e,1,qs,!0))})),ts=Kr((function(e){var t=Gi(e);return qs(t)&&(t=o),ao(mr(e,1,qs,!0),si(t,2))})),ns=Kr((function(e){var t=Gi(e);return t="function"==typeof t?t:o,ao(mr(e,1,qs,!0),o,t)}));function rs(e){if(!e||!e.length)return[];var t=0;return e=At(e,(function(e){if(qs(e))return t=gn(e.length,t),!0})),Kt(t,(function(t){return _t(e,Wt(t))}))}function os(e,t){if(!e||!e.length)return[];var n=rs(e);return null==t?n:_t(n,(function(e){return kt(t,o,e)}))}var is=Kr((function(e,t){return qs(e)?cr(e,t):[]})),ss=Kr((function(e){return fo(At(e,qs))})),as=Kr((function(e){var t=Gi(e);return qs(t)&&(t=o),fo(At(e,qs),si(t,2))})),ls=Kr((function(e){var t=Gi(e);return t="function"==typeof t?t:o,fo(At(e,qs),o,t)})),cs=Kr(rs),us=Kr((function(e){var t=e.length,n=t>1?e[t-1]:o;return n="function"==typeof n?(e.pop(),n):o,os(e,n)}));function hs(e){var t=Fn(e);return t.__chain__=!0,t}function ds(e,t){return t(e)}var fs=ei((function(e){var t=e.length,n=t?e[0]:0,r=this.__wrapped__,i=function(t){return or(t,e)};return!(t>1||this.__actions__.length)&&r instanceof Hn&&gi(n)?((r=r.slice(n,+n+(t?1:0))).__actions__.push({func:ds,args:[i],thisArg:o}),new $n(r,this.__chain__).thru((function(e){return t&&!e.length&&e.push(o),e}))):this.thru(i)})),ps=To((function(e,t,n){Ne.call(e,n)?++e[n]:rr(e,n,1)})),ms=Lo(Hi),gs=Lo(Wi);function ys(e,t){return(Ws(e)?Mt:ur)(e,si(t,3))}function vs(e,t){return(Ws(e)?Ot:hr)(e,si(t,3))}var bs=To((function(e,t,n){Ne.call(e,n)?e[n].push(t):rr(e,n,[t])})),ws=Kr((function(e,t,n){var o=-1,i="function"==typeof t,s=Vs(e)?r(e.length):[];return ur(e,(function(e){s[++o]=i?kt(t,e,n):Ar(e,t,n)})),s})),xs=To((function(e,t,n){rr(e,n,t)}));function Ss(e,t){return(Ws(e)?_t:Lr)(e,si(t,3))}var ks=To((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),Cs=Kr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&yi(e,t[0],t[1])?t=[]:n>2&&yi(t[0],t[1],t[2])&&(t=[t[0]]),$r(e,mr(t,1),[])})),Ms=ct||function(){return ht.Date.now()};function Os(e,t,n){return t=n?o:t,t=e&&null==t?e.length:t,Go(e,c,o,o,o,o,t)}function Es(e,t){var n;if("function"!=typeof t)throw new Ee(i);return e=fa(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=o),n}}var As=Kr((function(e,t,n){var r=1;if(n.length){var o=an(n,ii(As));r|=l}return Go(e,r,t,n,o)})),Ts=Kr((function(e,t,n){var r=3;if(n.length){var o=an(n,ii(Ts));r|=l}return Go(t,r,e,n,o)}));function Ds(e,t,n){var r,s,a,l,c,u,h=0,d=!1,f=!1,p=!0;if("function"!=typeof e)throw new Ee(i);function m(t){var n=r,i=s;return r=s=o,h=t,l=e.apply(i,n)}function g(e){var n=e-u;return u===o||n>=t||n<0||f&&e-h>=a}function y(){var e=Ms();if(g(e))return v(e);c=Ai(y,function(e){var n=t-(e-u);return f?yn(n,a-(e-h)):n}(e))}function v(e){return c=o,p&&r?m(e):(r=s=o,l)}function b(){var e=Ms(),n=g(e);if(r=arguments,s=this,u=e,n){if(c===o)return function(e){return h=e,c=Ai(y,t),d?m(e):l}(u);if(f)return wo(c),c=Ai(y,t),m(u)}return c===o&&(c=Ai(y,t)),l}return t=ma(t)||0,Xs(n)&&(d=!!n.leading,a=(f="maxWait"in n)?gn(ma(n.maxWait)||0,t):a,p="trailing"in n?!!n.trailing:p),b.cancel=function(){c!==o&&wo(c),h=0,r=u=s=c=o},b.flush=function(){return c===o?l:v(Ms())},b}var _s=Kr((function(e,t){return lr(e,1,t)})),Rs=Kr((function(e,t,n){return lr(e,ma(t)||0,n)}));function Ns(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ee(i);var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],i=n.cache;if(i.has(o))return i.get(o);var s=e.apply(this,r);return n.cache=i.set(o,s)||i,s};return n.cache=new(Ns.Cache||Vn),n}function Ps(e){if("function"!=typeof e)throw new Ee(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ns.Cache=Vn;var Is=vo((function(e,t){var n=(t=1==t.length&&Ws(t[0])?_t(t[0],Gt(si())):_t(mr(t,1),Gt(si()))).length;return Kr((function(r){for(var o=-1,i=yn(r.length,n);++o<i;)r[o]=t[o].call(this,r[o]);return kt(e,this,r)}))})),Ls=Kr((function(e,t){var n=an(t,ii(Ls));return Go(e,l,o,t,n)})),js=Kr((function(e,t){var n=an(t,ii(js));return Go(e,64,o,t,n)})),Fs=ei((function(e,t){return Go(e,256,o,o,o,t)}));function Bs(e,t){return e===t||e!=e&&t!=t}var zs=Uo(Cr),$s=Uo((function(e,t){return e>=t})),Hs=Tr(function(){return arguments}())?Tr:function(e){return ea(e)&&Ne.call(e,"callee")&&!qe.call(e,"callee")},Ws=r.isArray,Us=yt?Gt(yt):function(e){return ea(e)&&kr(e)==_};function Vs(e){return null!=e&&Zs(e.length)&&!Js(e)}function qs(e){return ea(e)&&Vs(e)}var Ks=gt||ml,Ys=vt?Gt(vt):function(e){return ea(e)&&kr(e)==v};function Gs(e){if(!ea(e))return!1;var t=kr(e);return t==b||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ra(e)}function Js(e){if(!Xs(e))return!1;var t=kr(e);return t==w||t==x||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Qs(e){return"number"==typeof e&&e==fa(e)}function Zs(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}function Xs(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ea(e){return null!=e&&"object"==typeof e}var ta=bt?Gt(bt):function(e){return ea(e)&&di(e)==S};function na(e){return"number"==typeof e||ea(e)&&kr(e)==k}function ra(e){if(!ea(e)||kr(e)!=C)return!1;var t=Ue(e);if(null===t)return!0;var n=Ne.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Re.call(n)==je}var oa=wt?Gt(wt):function(e){return ea(e)&&kr(e)==O},ia=xt?Gt(xt):function(e){return ea(e)&&di(e)==E};function sa(e){return"string"==typeof e||!Ws(e)&&ea(e)&&kr(e)==A}function aa(e){return"symbol"==typeof e||ea(e)&&kr(e)==T}var la=St?Gt(St):function(e){return ea(e)&&Zs(e.length)&&!!ot[kr(e)]},ca=Uo(Ir),ua=Uo((function(e,t){return e<=t}));function ha(e){if(!e)return[];if(Vs(e))return sa(e)?hn(e):Eo(e);if(Ge&&e[Ge])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Ge]());var t=di(e);return(t==S?on:t==E?ln:Ba)(e)}function da(e){return e?(e=ma(e))===u||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function fa(e){var t=da(e),n=t%1;return t==t?n?t-n:t:0}function pa(e){return e?ir(fa(e),0,f):0}function ma(e){if("number"==typeof e)return e;if(aa(e))return d;if(Xs(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Xs(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Yt(e);var n=pe.test(e);return n||ge.test(e)?lt(e.slice(2),n?2:8):fe.test(e)?d:+e}function ga(e){return Ao(e,_a(e))}function ya(e){return null==e?"":so(e)}var va=Do((function(e,t){if(xi(t)||Vs(t))Ao(t,Da(t),e);else for(var n in t)Ne.call(t,n)&&Xn(e,n,t[n])})),ba=Do((function(e,t){Ao(t,_a(t),e)})),wa=Do((function(e,t,n,r){Ao(t,_a(t),e,r)})),xa=Do((function(e,t,n,r){Ao(t,Da(t),e,r)})),Sa=ei(or),ka=Kr((function(e,t){e=Ce(e);var n=-1,r=t.length,i=r>2?t[2]:o;for(i&&yi(t[0],t[1],i)&&(r=1);++n<r;)for(var s=t[n],a=_a(s),l=-1,c=a.length;++l<c;){var u=a[l],h=e[u];(h===o||Bs(h,De[u])&&!Ne.call(e,u))&&(e[u]=s[u])}return e})),Ca=Kr((function(e){return e.push(o,Qo),kt(Na,o,e)}));function Ma(e,t,n){var r=null==e?o:xr(e,t);return r===o?n:r}function Oa(e,t){return null!=e&&fi(e,t,Or)}var Ea=Bo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Le.call(t)),e[t]=n}),Xa(nl)),Aa=Bo((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Le.call(t)),Ne.call(e,t)?e[t].push(n):e[t]=[n]}),si),Ta=Kr(Ar);function Da(e){return Vs(e)?Yn(e):Pr(e)}function _a(e){return Vs(e)?Yn(e,!0):function(e){if(!Xs(e))return function(e){var t=[];if(null!=e)for(var n in Ce(e))t.push(n);return t}(e);var t=xi(e),n=[];for(var r in e)("constructor"!=r||!t&&Ne.call(e,r))&&n.push(r);return n}(e)}var Ra=Do((function(e,t,n){Br(e,t,n)})),Na=Do((function(e,t,n,r){Br(e,t,n,r)})),Pa=ei((function(e,t){var n={};if(null==e)return n;var r=!1;t=_t(t,(function(t){return t=yo(t,e),r||(r=t.length>1),t})),Ao(e,ni(e),n),r&&(n=sr(n,7,Zo));for(var o=t.length;o--;)lo(n,t[o]);return n})),Ia=ei((function(e,t){return null==e?{}:function(e,t){return Hr(e,t,(function(t,n){return Oa(e,n)}))}(e,t)}));function La(e,t){if(null==e)return{};var n=_t(ni(e),(function(e){return[e]}));return t=si(t),Hr(e,n,(function(e,n){return t(e,n[0])}))}var ja=Yo(Da),Fa=Yo(_a);function Ba(e){return null==e?[]:Jt(e,Da(e))}var za=Po((function(e,t,n){return t=t.toLowerCase(),e+(n?$a(t):t)}));function $a(e){return Ga(ya(e).toLowerCase())}function Ha(e){return(e=ya(e))&&e.replace(ve,en).replace(Qe,"")}var Wa=Po((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),Ua=Po((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Va=No("toLowerCase"),qa=Po((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Ka=Po((function(e,t,n){return e+(n?" ":"")+Ga(t)})),Ya=Po((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Ga=No("toUpperCase");function Ja(e,t,n){return e=ya(e),(t=n?o:t)===o?function(e){return tt.test(e)}(e)?function(e){return e.match(Xe)||[]}(e):function(e){return e.match(le)||[]}(e):e.match(t)||[]}var Qa=Kr((function(e,t){try{return kt(e,o,t)}catch(e){return Gs(e)?e:new xe(e)}})),Za=ei((function(e,t){return Mt(t,(function(t){t=Li(t),rr(e,t,As(e[t],e))})),e}));function Xa(e){return function(){return e}}var el=jo(),tl=jo(!0);function nl(e){return e}function rl(e){return Nr("function"==typeof e?e:sr(e,1))}var ol=Kr((function(e,t){return function(n){return Ar(n,e,t)}})),il=Kr((function(e,t){return function(n){return Ar(e,n,t)}}));function sl(e,t,n){var r=Da(t),o=wr(t,r);null!=n||Xs(t)&&(o.length||!r.length)||(n=t,t=e,e=this,o=wr(t,Da(t)));var i=!(Xs(n)&&"chain"in n&&!n.chain),s=Js(e);return Mt(o,(function(n){var r=t[n];e[n]=r,s&&(e.prototype[n]=function(){var t=this.__chain__;if(i||t){var n=e(this.__wrapped__);return(n.__actions__=Eo(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Rt([this.value()],arguments))})})),e}function al(){}var ll=$o(_t),cl=$o(Et),ul=$o(It);function hl(e){return vi(e)?Wt(Li(e)):function(e){return function(t){return xr(t,e)}}(e)}var dl=Wo(),fl=Wo(!0);function pl(){return[]}function ml(){return!1}var gl,yl=zo((function(e,t){return e+t}),0),vl=qo("ceil"),bl=zo((function(e,t){return e/t}),1),wl=qo("floor"),xl=zo((function(e,t){return e*t}),1),Sl=qo("round"),kl=zo((function(e,t){return e-t}),0);return Fn.after=function(e,t){if("function"!=typeof t)throw new Ee(i);return e=fa(e),function(){if(--e<1)return t.apply(this,arguments)}},Fn.ary=Os,Fn.assign=va,Fn.assignIn=ba,Fn.assignInWith=wa,Fn.assignWith=xa,Fn.at=Sa,Fn.before=Es,Fn.bind=As,Fn.bindAll=Za,Fn.bindKey=Ts,Fn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ws(e)?e:[e]},Fn.chain=hs,Fn.chunk=function(e,t,n){t=(n?yi(e,t,n):t===o)?1:gn(fa(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var s=0,a=0,l=r(dt(i/t));s<i;)l[a++]=eo(e,s,s+=t);return l},Fn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,o=[];++t<n;){var i=e[t];i&&(o[r++]=i)}return o},Fn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=r(e-1),n=arguments[0],o=e;o--;)t[o-1]=arguments[o];return Rt(Ws(n)?Eo(n):[n],mr(t,1))},Fn.cond=function(e){var t=null==e?0:e.length,n=si();return e=t?_t(e,(function(e){if("function"!=typeof e[1])throw new Ee(i);return[n(e[0]),e[1]]})):[],Kr((function(n){for(var r=-1;++r<t;){var o=e[r];if(kt(o[0],this,n))return kt(o[1],this,n)}}))},Fn.conforms=function(e){return function(e){var t=Da(e);return function(n){return ar(n,e,t)}}(sr(e,1))},Fn.constant=Xa,Fn.countBy=ps,Fn.create=function(e,t){var n=Bn(e);return null==t?n:nr(n,t)},Fn.curry=function e(t,n,r){var i=Go(t,8,o,o,o,o,o,n=r?o:n);return i.placeholder=e.placeholder,i},Fn.curryRight=function e(t,n,r){var i=Go(t,16,o,o,o,o,o,n=r?o:n);return i.placeholder=e.placeholder,i},Fn.debounce=Ds,Fn.defaults=ka,Fn.defaultsDeep=Ca,Fn.defer=_s,Fn.delay=Rs,Fn.difference=Bi,Fn.differenceBy=zi,Fn.differenceWith=$i,Fn.drop=function(e,t,n){var r=null==e?0:e.length;return r?eo(e,(t=n||t===o?1:fa(t))<0?0:t,r):[]},Fn.dropRight=function(e,t,n){var r=null==e?0:e.length;return r?eo(e,0,(t=r-(t=n||t===o?1:fa(t)))<0?0:t):[]},Fn.dropRightWhile=function(e,t){return e&&e.length?uo(e,si(t,3),!0,!0):[]},Fn.dropWhile=function(e,t){return e&&e.length?uo(e,si(t,3),!0):[]},Fn.fill=function(e,t,n,r){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&yi(e,t,n)&&(n=0,r=i),function(e,t,n,r){var i=e.length;for((n=fa(n))<0&&(n=-n>i?0:i+n),(r=r===o||r>i?i:fa(r))<0&&(r+=i),r=n>r?0:pa(r);n<r;)e[n++]=t;return e}(e,t,n,r)):[]},Fn.filter=function(e,t){return(Ws(e)?At:pr)(e,si(t,3))},Fn.flatMap=function(e,t){return mr(Ss(e,t),1)},Fn.flatMapDeep=function(e,t){return mr(Ss(e,t),u)},Fn.flatMapDepth=function(e,t,n){return n=n===o?1:fa(n),mr(Ss(e,t),n)},Fn.flatten=Ui,Fn.flattenDeep=function(e){return null!=e&&e.length?mr(e,u):[]},Fn.flattenDepth=function(e,t){return null!=e&&e.length?mr(e,t=t===o?1:fa(t)):[]},Fn.flip=function(e){return Go(e,512)},Fn.flow=el,Fn.flowRight=tl,Fn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var o=e[t];r[o[0]]=o[1]}return r},Fn.functions=function(e){return null==e?[]:wr(e,Da(e))},Fn.functionsIn=function(e){return null==e?[]:wr(e,_a(e))},Fn.groupBy=bs,Fn.initial=function(e){return null!=e&&e.length?eo(e,0,-1):[]},Fn.intersection=qi,Fn.intersectionBy=Ki,Fn.intersectionWith=Yi,Fn.invert=Ea,Fn.invertBy=Aa,Fn.invokeMap=ws,Fn.iteratee=rl,Fn.keyBy=xs,Fn.keys=Da,Fn.keysIn=_a,Fn.map=Ss,Fn.mapKeys=function(e,t){var n={};return t=si(t,3),vr(e,(function(e,r,o){rr(n,t(e,r,o),e)})),n},Fn.mapValues=function(e,t){var n={};return t=si(t,3),vr(e,(function(e,r,o){rr(n,r,t(e,r,o))})),n},Fn.matches=function(e){return jr(sr(e,1))},Fn.matchesProperty=function(e,t){return Fr(e,sr(t,1))},Fn.memoize=Ns,Fn.merge=Ra,Fn.mergeWith=Na,Fn.method=ol,Fn.methodOf=il,Fn.mixin=sl,Fn.negate=Ps,Fn.nthArg=function(e){return e=fa(e),Kr((function(t){return zr(t,e)}))},Fn.omit=Pa,Fn.omitBy=function(e,t){return La(e,Ps(si(t)))},Fn.once=function(e){return Es(2,e)},Fn.orderBy=function(e,t,n,r){return null==e?[]:(Ws(t)||(t=null==t?[]:[t]),Ws(n=r?o:n)||(n=null==n?[]:[n]),$r(e,t,n))},Fn.over=ll,Fn.overArgs=Is,Fn.overEvery=cl,Fn.overSome=ul,Fn.partial=Ls,Fn.partialRight=js,Fn.partition=ks,Fn.pick=Ia,Fn.pickBy=La,Fn.property=hl,Fn.propertyOf=function(e){return function(t){return null==e?o:xr(e,t)}},Fn.pull=Ji,Fn.pullAll=Qi,Fn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Wr(e,t,si(n,2)):e},Fn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Wr(e,t,o,n):e},Fn.pullAt=Zi,Fn.range=dl,Fn.rangeRight=fl,Fn.rearg=Fs,Fn.reject=function(e,t){return(Ws(e)?At:pr)(e,Ps(si(t,3)))},Fn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,o=[],i=e.length;for(t=si(t,3);++r<i;){var s=e[r];t(s,r,e)&&(n.push(s),o.push(r))}return Ur(e,o),n},Fn.rest=function(e,t){if("function"!=typeof e)throw new Ee(i);return Kr(e,t=t===o?t:fa(t))},Fn.reverse=Xi,Fn.sampleSize=function(e,t,n){return t=(n?yi(e,t,n):t===o)?1:fa(t),(Ws(e)?Jn:Gr)(e,t)},Fn.set=function(e,t,n){return null==e?e:Jr(e,t,n)},Fn.setWith=function(e,t,n,r){return r="function"==typeof r?r:o,null==e?e:Jr(e,t,n,r)},Fn.shuffle=function(e){return(Ws(e)?Qn:Xr)(e)},Fn.slice=function(e,t,n){var r=null==e?0:e.length;return r?(n&&"number"!=typeof n&&yi(e,t,n)?(t=0,n=r):(t=null==t?0:fa(t),n=n===o?r:fa(n)),eo(e,t,n)):[]},Fn.sortBy=Cs,Fn.sortedUniq=function(e){return e&&e.length?oo(e):[]},Fn.sortedUniqBy=function(e,t){return e&&e.length?oo(e,si(t,2)):[]},Fn.split=function(e,t,n){return n&&"number"!=typeof n&&yi(e,t,n)&&(t=n=o),(n=n===o?f:n>>>0)?(e=ya(e))&&("string"==typeof t||null!=t&&!oa(t))&&!(t=so(t))&&rn(e)?bo(hn(e),0,n):e.split(t,n):[]},Fn.spread=function(e,t){if("function"!=typeof e)throw new Ee(i);return t=null==t?0:gn(fa(t),0),Kr((function(n){var r=n[t],o=bo(n,0,t);return r&&Rt(o,r),kt(e,this,o)}))},Fn.tail=function(e){var t=null==e?0:e.length;return t?eo(e,1,t):[]},Fn.take=function(e,t,n){return e&&e.length?eo(e,0,(t=n||t===o?1:fa(t))<0?0:t):[]},Fn.takeRight=function(e,t,n){var r=null==e?0:e.length;return r?eo(e,(t=r-(t=n||t===o?1:fa(t)))<0?0:t,r):[]},Fn.takeRightWhile=function(e,t){return e&&e.length?uo(e,si(t,3),!1,!0):[]},Fn.takeWhile=function(e,t){return e&&e.length?uo(e,si(t,3)):[]},Fn.tap=function(e,t){return t(e),e},Fn.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new Ee(i);return Xs(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),Ds(e,t,{leading:r,maxWait:t,trailing:o})},Fn.thru=ds,Fn.toArray=ha,Fn.toPairs=ja,Fn.toPairsIn=Fa,Fn.toPath=function(e){return Ws(e)?_t(e,Li):aa(e)?[e]:Eo(Ii(ya(e)))},Fn.toPlainObject=ga,Fn.transform=function(e,t,n){var r=Ws(e),o=r||Ks(e)||la(e);if(t=si(t,4),null==n){var i=e&&e.constructor;n=o?r?new i:[]:Xs(e)&&Js(i)?Bn(Ue(e)):{}}return(o?Mt:vr)(e,(function(e,r,o){return t(n,e,r,o)})),n},Fn.unary=function(e){return Os(e,1)},Fn.union=es,Fn.unionBy=ts,Fn.unionWith=ns,Fn.uniq=function(e){return e&&e.length?ao(e):[]},Fn.uniqBy=function(e,t){return e&&e.length?ao(e,si(t,2)):[]},Fn.uniqWith=function(e,t){return t="function"==typeof t?t:o,e&&e.length?ao(e,o,t):[]},Fn.unset=function(e,t){return null==e||lo(e,t)},Fn.unzip=rs,Fn.unzipWith=os,Fn.update=function(e,t,n){return null==e?e:co(e,t,go(n))},Fn.updateWith=function(e,t,n,r){return r="function"==typeof r?r:o,null==e?e:co(e,t,go(n),r)},Fn.values=Ba,Fn.valuesIn=function(e){return null==e?[]:Jt(e,_a(e))},Fn.without=is,Fn.words=Ja,Fn.wrap=function(e,t){return Ls(go(t),e)},Fn.xor=ss,Fn.xorBy=as,Fn.xorWith=ls,Fn.zip=cs,Fn.zipObject=function(e,t){return po(e||[],t||[],Xn)},Fn.zipObjectDeep=function(e,t){return po(e||[],t||[],Jr)},Fn.zipWith=us,Fn.entries=ja,Fn.entriesIn=Fa,Fn.extend=ba,Fn.extendWith=wa,sl(Fn,Fn),Fn.add=yl,Fn.attempt=Qa,Fn.camelCase=za,Fn.capitalize=$a,Fn.ceil=vl,Fn.clamp=function(e,t,n){return n===o&&(n=t,t=o),n!==o&&(n=(n=ma(n))==n?n:0),t!==o&&(t=(t=ma(t))==t?t:0),ir(ma(e),t,n)},Fn.clone=function(e){return sr(e,4)},Fn.cloneDeep=function(e){return sr(e,5)},Fn.cloneDeepWith=function(e,t){return sr(e,5,t="function"==typeof t?t:o)},Fn.cloneWith=function(e,t){return sr(e,4,t="function"==typeof t?t:o)},Fn.conformsTo=function(e,t){return null==t||ar(e,t,Da(t))},Fn.deburr=Ha,Fn.defaultTo=function(e,t){return null==e||e!=e?t:e},Fn.divide=bl,Fn.endsWith=function(e,t,n){e=ya(e),t=so(t);var r=e.length,i=n=n===o?r:ir(fa(n),0,r);return(n-=t.length)>=0&&e.slice(n,i)==t},Fn.eq=Bs,Fn.escape=function(e){return(e=ya(e))&&Y.test(e)?e.replace(q,tn):e},Fn.escapeRegExp=function(e){return(e=ya(e))&&ne.test(e)?e.replace(te,"\\$&"):e},Fn.every=function(e,t,n){var r=Ws(e)?Et:dr;return n&&yi(e,t,n)&&(t=o),r(e,si(t,3))},Fn.find=ms,Fn.findIndex=Hi,Fn.findKey=function(e,t){return jt(e,si(t,3),vr)},Fn.findLast=gs,Fn.findLastIndex=Wi,Fn.findLastKey=function(e,t){return jt(e,si(t,3),br)},Fn.floor=wl,Fn.forEach=ys,Fn.forEachRight=vs,Fn.forIn=function(e,t){return null==e?e:gr(e,si(t,3),_a)},Fn.forInRight=function(e,t){return null==e?e:yr(e,si(t,3),_a)},Fn.forOwn=function(e,t){return e&&vr(e,si(t,3))},Fn.forOwnRight=function(e,t){return e&&br(e,si(t,3))},Fn.get=Ma,Fn.gt=zs,Fn.gte=$s,Fn.has=function(e,t){return null!=e&&fi(e,t,Mr)},Fn.hasIn=Oa,Fn.head=Vi,Fn.identity=nl,Fn.includes=function(e,t,n,r){e=Vs(e)?e:Ba(e),n=n&&!r?fa(n):0;var o=e.length;return n<0&&(n=gn(o+n,0)),sa(e)?n<=o&&e.indexOf(t,n)>-1:!!o&&Bt(e,t,n)>-1},Fn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var o=null==n?0:fa(n);return o<0&&(o=gn(r+o,0)),Bt(e,t,o)},Fn.inRange=function(e,t,n){return t=da(t),n===o?(n=t,t=0):n=da(n),function(e,t,n){return e>=yn(t,n)&&e<gn(t,n)}(e=ma(e),t,n)},Fn.invoke=Ta,Fn.isArguments=Hs,Fn.isArray=Ws,Fn.isArrayBuffer=Us,Fn.isArrayLike=Vs,Fn.isArrayLikeObject=qs,Fn.isBoolean=function(e){return!0===e||!1===e||ea(e)&&kr(e)==y},Fn.isBuffer=Ks,Fn.isDate=Ys,Fn.isElement=function(e){return ea(e)&&1===e.nodeType&&!ra(e)},Fn.isEmpty=function(e){if(null==e)return!0;if(Vs(e)&&(Ws(e)||"string"==typeof e||"function"==typeof e.splice||Ks(e)||la(e)||Hs(e)))return!e.length;var t=di(e);if(t==S||t==E)return!e.size;if(xi(e))return!Pr(e).length;for(var n in e)if(Ne.call(e,n))return!1;return!0},Fn.isEqual=function(e,t){return Dr(e,t)},Fn.isEqualWith=function(e,t,n){var r=(n="function"==typeof n?n:o)?n(e,t):o;return r===o?Dr(e,t,o,n):!!r},Fn.isError=Gs,Fn.isFinite=function(e){return"number"==typeof e&&Lt(e)},Fn.isFunction=Js,Fn.isInteger=Qs,Fn.isLength=Zs,Fn.isMap=ta,Fn.isMatch=function(e,t){return e===t||_r(e,t,li(t))},Fn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:o,_r(e,t,li(t),n)},Fn.isNaN=function(e){return na(e)&&e!=+e},Fn.isNative=function(e){if(wi(e))throw new xe("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Rr(e)},Fn.isNil=function(e){return null==e},Fn.isNull=function(e){return null===e},Fn.isNumber=na,Fn.isObject=Xs,Fn.isObjectLike=ea,Fn.isPlainObject=ra,Fn.isRegExp=oa,Fn.isSafeInteger=function(e){return Qs(e)&&e>=-9007199254740991&&e<=h},Fn.isSet=ia,Fn.isString=sa,Fn.isSymbol=aa,Fn.isTypedArray=la,Fn.isUndefined=function(e){return e===o},Fn.isWeakMap=function(e){return ea(e)&&di(e)==D},Fn.isWeakSet=function(e){return ea(e)&&"[object WeakSet]"==kr(e)},Fn.join=function(e,t){return null==e?"":Ut.call(e,t)},Fn.kebabCase=Wa,Fn.last=Gi,Fn.lastIndexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=r;return n!==o&&(i=(i=fa(n))<0?gn(r+i,0):yn(i,r-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,i):Ft(e,$t,i,!0)},Fn.lowerCase=Ua,Fn.lowerFirst=Va,Fn.lt=ca,Fn.lte=ua,Fn.max=function(e){return e&&e.length?fr(e,nl,Cr):o},Fn.maxBy=function(e,t){return e&&e.length?fr(e,si(t,2),Cr):o},Fn.mean=function(e){return Ht(e,nl)},Fn.meanBy=function(e,t){return Ht(e,si(t,2))},Fn.min=function(e){return e&&e.length?fr(e,nl,Ir):o},Fn.minBy=function(e,t){return e&&e.length?fr(e,si(t,2),Ir):o},Fn.stubArray=pl,Fn.stubFalse=ml,Fn.stubObject=function(){return{}},Fn.stubString=function(){return""},Fn.stubTrue=function(){return!0},Fn.multiply=xl,Fn.nth=function(e,t){return e&&e.length?zr(e,fa(t)):o},Fn.noConflict=function(){return ht._===this&&(ht._=Fe),this},Fn.noop=al,Fn.now=Ms,Fn.pad=function(e,t,n){e=ya(e);var r=(t=fa(t))?un(e):0;if(!t||r>=t)return e;var o=(t-r)/2;return Ho(ft(o),n)+e+Ho(dt(o),n)},Fn.padEnd=function(e,t,n){e=ya(e);var r=(t=fa(t))?un(e):0;return t&&r<t?e+Ho(t-r,n):e},Fn.padStart=function(e,t,n){e=ya(e);var r=(t=fa(t))?un(e):0;return t&&r<t?Ho(t-r,n)+e:e},Fn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),bn(ya(e).replace(re,""),t||0)},Fn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&yi(e,t,n)&&(t=n=o),n===o&&("boolean"==typeof t?(n=t,t=o):"boolean"==typeof e&&(n=e,e=o)),e===o&&t===o?(e=0,t=1):(e=da(e),t===o?(t=e,e=0):t=da(t)),e>t){var r=e;e=t,t=r}if(n||e%1||t%1){var i=wn();return yn(e+i*(t-e+at("1e-"+((i+"").length-1))),t)}return Vr(e,t)},Fn.reduce=function(e,t,n){var r=Ws(e)?Nt:Vt,o=arguments.length<3;return r(e,si(t,4),n,o,ur)},Fn.reduceRight=function(e,t,n){var r=Ws(e)?Pt:Vt,o=arguments.length<3;return r(e,si(t,4),n,o,hr)},Fn.repeat=function(e,t,n){return t=(n?yi(e,t,n):t===o)?1:fa(t),qr(ya(e),t)},Fn.replace=function(){var e=arguments,t=ya(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Fn.result=function(e,t,n){var r=-1,i=(t=yo(t,e)).length;for(i||(i=1,e=o);++r<i;){var s=null==e?o:e[Li(t[r])];s===o&&(r=i,s=n),e=Js(s)?s.call(e):s}return e},Fn.round=Sl,Fn.runInContext=e,Fn.sample=function(e){return(Ws(e)?Gn:Yr)(e)},Fn.size=function(e){if(null==e)return 0;if(Vs(e))return sa(e)?un(e):e.length;var t=di(e);return t==S||t==E?e.size:Pr(e).length},Fn.snakeCase=qa,Fn.some=function(e,t,n){var r=Ws(e)?It:to;return n&&yi(e,t,n)&&(t=o),r(e,si(t,3))},Fn.sortedIndex=function(e,t){return no(e,t)},Fn.sortedIndexBy=function(e,t,n){return ro(e,t,si(n,2))},Fn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=no(e,t);if(r<n&&Bs(e[r],t))return r}return-1},Fn.sortedLastIndex=function(e,t){return no(e,t,!0)},Fn.sortedLastIndexBy=function(e,t,n){return ro(e,t,si(n,2),!0)},Fn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=no(e,t,!0)-1;if(Bs(e[n],t))return n}return-1},Fn.startCase=Ka,Fn.startsWith=function(e,t,n){return e=ya(e),n=null==n?0:ir(fa(n),0,e.length),t=so(t),e.slice(n,n+t.length)==t},Fn.subtract=kl,Fn.sum=function(e){return e&&e.length?qt(e,nl):0},Fn.sumBy=function(e,t){return e&&e.length?qt(e,si(t,2)):0},Fn.template=function(e,t,n){var r=Fn.templateSettings;n&&yi(e,t,n)&&(t=o),e=ya(e),t=wa({},t,r,Jo);var i,s,a=wa({},t.imports,r.imports,Jo),l=Da(a),c=Jt(a,l),u=0,h=t.interpolate||be,d="__p += '",f=Me((t.escape||be).source+"|"+h.source+"|"+(h===Q?he:be).source+"|"+(t.evaluate||be).source+"|$","g"),p="//# sourceURL="+(Ne.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++rt+"]")+"\n";e.replace(f,(function(t,n,r,o,a,l){return r||(r=o),d+=e.slice(u,l).replace(we,nn),n&&(i=!0,d+="' +\n__e("+n+") +\n'"),a&&(s=!0,d+="';\n"+a+";\n__p += '"),r&&(d+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),u=l+t.length,t})),d+="';\n";var m=Ne.call(t,"variable")&&t.variable;if(m){if(ce.test(m))throw new xe("Invalid `variable` option passed into `_.template`")}else d="with (obj) {\n"+d+"\n}\n";d=(s?d.replace(H,""):d).replace(W,"$1").replace(U,"$1;"),d="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(s?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var g=Qa((function(){return Se(l,p+"return "+d).apply(o,c)}));if(g.source=d,Gs(g))throw g;return g},Fn.times=function(e,t){if((e=fa(e))<1||e>h)return[];var n=f,r=yn(e,f);t=si(t),e-=f;for(var o=Kt(r,t);++n<e;)t(n);return o},Fn.toFinite=da,Fn.toInteger=fa,Fn.toLength=pa,Fn.toLower=function(e){return ya(e).toLowerCase()},Fn.toNumber=ma,Fn.toSafeInteger=function(e){return e?ir(fa(e),-9007199254740991,h):0===e?e:0},Fn.toString=ya,Fn.toUpper=function(e){return ya(e).toUpperCase()},Fn.trim=function(e,t,n){if((e=ya(e))&&(n||t===o))return Yt(e);if(!e||!(t=so(t)))return e;var r=hn(e),i=hn(t);return bo(r,Zt(r,i),Xt(r,i)+1).join("")},Fn.trimEnd=function(e,t,n){if((e=ya(e))&&(n||t===o))return e.slice(0,dn(e)+1);if(!e||!(t=so(t)))return e;var r=hn(e);return bo(r,0,Xt(r,hn(t))+1).join("")},Fn.trimStart=function(e,t,n){if((e=ya(e))&&(n||t===o))return e.replace(re,"");if(!e||!(t=so(t)))return e;var r=hn(e);return bo(r,Zt(r,hn(t))).join("")},Fn.truncate=function(e,t){var n=30,r="...";if(Xs(t)){var i="separator"in t?t.separator:i;n="length"in t?fa(t.length):n,r="omission"in t?so(t.omission):r}var s=(e=ya(e)).length;if(rn(e)){var a=hn(e);s=a.length}if(n>=s)return e;var l=n-un(r);if(l<1)return r;var c=a?bo(a,0,l).join(""):e.slice(0,l);if(i===o)return c+r;if(a&&(l+=c.length-l),oa(i)){if(e.slice(l).search(i)){var u,h=c;for(i.global||(i=Me(i.source,ya(de.exec(i))+"g")),i.lastIndex=0;u=i.exec(h);)var d=u.index;c=c.slice(0,d===o?l:d)}}else if(e.indexOf(so(i),l)!=l){var f=c.lastIndexOf(i);f>-1&&(c=c.slice(0,f))}return c+r},Fn.unescape=function(e){return(e=ya(e))&&K.test(e)?e.replace(V,fn):e},Fn.uniqueId=function(e){var t=++Pe;return ya(e)+t},Fn.upperCase=Ya,Fn.upperFirst=Ga,Fn.each=ys,Fn.eachRight=vs,Fn.first=Vi,sl(Fn,(gl={},vr(Fn,(function(e,t){Ne.call(Fn.prototype,t)||(gl[t]=e)})),gl),{chain:!1}),Fn.VERSION="4.17.21",Mt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){Fn[e].placeholder=Fn})),Mt(["drop","take"],(function(e,t){Hn.prototype[e]=function(n){n=n===o?1:gn(fa(n),0);var r=this.__filtered__&&!t?new Hn(this):this.clone();return r.__filtered__?r.__takeCount__=yn(n,r.__takeCount__):r.__views__.push({size:yn(n,f),type:e+(r.__dir__<0?"Right":"")}),r},Hn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Mt(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;Hn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:si(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),Mt(["head","last"],(function(e,t){var n="take"+(t?"Right":"");Hn.prototype[e]=function(){return this[n](1).value()[0]}})),Mt(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");Hn.prototype[e]=function(){return this.__filtered__?new Hn(this):this[n](1)}})),Hn.prototype.compact=function(){return this.filter(nl)},Hn.prototype.find=function(e){return this.filter(e).head()},Hn.prototype.findLast=function(e){return this.reverse().find(e)},Hn.prototype.invokeMap=Kr((function(e,t){return"function"==typeof e?new Hn(this):this.map((function(n){return Ar(n,e,t)}))})),Hn.prototype.reject=function(e){return this.filter(Ps(si(e)))},Hn.prototype.slice=function(e,t){e=fa(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Hn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==o&&(n=(t=fa(t))<0?n.dropRight(-t):n.take(t-e)),n)},Hn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hn.prototype.toArray=function(){return this.take(f)},vr(Hn.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),r=/^(?:head|last)$/.test(t),i=Fn[r?"take"+("last"==t?"Right":""):t],s=r||/^find/.test(t);i&&(Fn.prototype[t]=function(){var t=this.__wrapped__,a=r?[1]:arguments,l=t instanceof Hn,c=a[0],u=l||Ws(t),h=function(e){var t=i.apply(Fn,Rt([e],a));return r&&d?t[0]:t};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var d=this.__chain__,f=!!this.__actions__.length,p=s&&!d,m=l&&!f;if(!s&&u){t=m?t:new Hn(this);var g=e.apply(t,a);return g.__actions__.push({func:ds,args:[h],thisArg:o}),new $n(g,d)}return p&&m?e.apply(this,a):(g=this.thru(h),p?r?g.value()[0]:g.value():g)})})),Mt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ae[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Fn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var o=this.value();return t.apply(Ws(o)?o:[],e)}return this[n]((function(n){return t.apply(Ws(n)?n:[],e)}))}})),vr(Hn.prototype,(function(e,t){var n=Fn[t];if(n){var r=n.name+"";Ne.call(Tn,r)||(Tn[r]=[]),Tn[r].push({name:t,func:n})}})),Tn[Fo(o,2).name]=[{name:"wrapper",func:o}],Hn.prototype.clone=function(){var e=new Hn(this.__wrapped__);return e.__actions__=Eo(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Eo(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Eo(this.__views__),e},Hn.prototype.reverse=function(){if(this.__filtered__){var e=new Hn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ws(e),r=t<0,o=n?e.length:0,i=function(e,t,n){for(var r=-1,o=n.length;++r<o;){var i=n[r],s=i.size;switch(i.type){case"drop":e+=s;break;case"dropRight":t-=s;break;case"take":t=yn(t,e+s);break;case"takeRight":e=gn(e,t-s)}}return{start:e,end:t}}(0,o,this.__views__),s=i.start,a=i.end,l=a-s,c=r?a:s-1,u=this.__iteratees__,h=u.length,d=0,f=yn(l,this.__takeCount__);if(!n||!r&&o==l&&f==l)return ho(e,this.__actions__);var p=[];e:for(;l--&&d<f;){for(var m=-1,g=e[c+=t];++m<h;){var y=u[m],v=y.iteratee,b=y.type,w=v(g);if(2==b)g=w;else if(!w){if(1==b)continue e;break e}}p[d++]=g}return p},Fn.prototype.at=fs,Fn.prototype.chain=function(){return hs(this)},Fn.prototype.commit=function(){return new $n(this.value(),this.__chain__)},Fn.prototype.next=function(){this.__values__===o&&(this.__values__=ha(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?o:this.__values__[this.__index__++]}},Fn.prototype.plant=function(e){for(var t,n=this;n instanceof zn;){var r=Fi(n);r.__index__=0,r.__values__=o,t?i.__wrapped__=r:t=r;var i=r;n=n.__wrapped__}return i.__wrapped__=e,t},Fn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hn){var t=e;return this.__actions__.length&&(t=new Hn(this)),(t=t.reverse()).__actions__.push({func:ds,args:[Xi],thisArg:o}),new $n(t,this.__chain__)}return this.thru(Xi)},Fn.prototype.toJSON=Fn.prototype.valueOf=Fn.prototype.value=function(){return ho(this.__wrapped__,this.__actions__)},Fn.prototype.first=Fn.prototype.head,Ge&&(Fn.prototype[Ge]=function(){return this}),Fn}();ht._=pn,(r=function(){return pn}.call(t,n,t,e))===o||(e.exports=r)}.call(this)},631:(e,t,n)=>{var r="function"==typeof Map&&Map.prototype,o=Object.getOwnPropertyDescriptor&&r?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,i=r&&o&&"function"==typeof o.get?o.get:null,s=r&&Map.prototype.forEach,a="function"==typeof Set&&Set.prototype,l=Object.getOwnPropertyDescriptor&&a?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,c=a&&l&&"function"==typeof l.get?l.get:null,u=a&&Set.prototype.forEach,h="function"==typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,d="function"==typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,f="function"==typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,p=Boolean.prototype.valueOf,m=Object.prototype.toString,g=Function.prototype.toString,y=String.prototype.match,v=String.prototype.slice,b=String.prototype.replace,w=String.prototype.toUpperCase,x=String.prototype.toLowerCase,S=RegExp.prototype.test,k=Array.prototype.concat,C=Array.prototype.join,M=Array.prototype.slice,O=Math.floor,E="function"==typeof BigInt?BigInt.prototype.valueOf:null,A=Object.getOwnPropertySymbols,T="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol.prototype.toString:null,D="function"==typeof Symbol&&"object"==typeof Symbol.iterator,_="function"==typeof Symbol&&Symbol.toStringTag&&(Symbol.toStringTag,1)?Symbol.toStringTag:null,R=Object.prototype.propertyIsEnumerable,N=("function"==typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(e){return e.__proto__}:null);function P(e,t){if(e===1/0||e===-1/0||e!=e||e&&e>-1e3&&e<1e3||S.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof e){var r=e<0?-O(-e):O(e);if(r!==e){var o=String(r),i=v.call(t,o.length+1);return b.call(o,n,"$&_")+"."+b.call(b.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return b.call(t,n,"$&_")}var I=n(4654),L=I.custom,j=H(L)?L:null;function F(e,t,n){var r="double"===(n.quoteStyle||t)?'"':"'";return r+e+r}function B(e){return b.call(String(e),/"/g,""")}function z(e){return!("[object Array]"!==V(e)||_&&"object"==typeof e&&_ in e)}function $(e){return!("[object RegExp]"!==V(e)||_&&"object"==typeof e&&_ in e)}function H(e){if(D)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!T)return!1;try{return T.call(e),!0}catch(e){}return!1}e.exports=function e(t,n,r,o){var a=n||{};if(U(a,"quoteStyle")&&"single"!==a.quoteStyle&&"double"!==a.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(U(a,"maxStringLength")&&("number"==typeof a.maxStringLength?a.maxStringLength<0&&a.maxStringLength!==1/0:null!==a.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var l=!U(a,"customInspect")||a.customInspect;if("boolean"!=typeof l&&"symbol"!==l)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(U(a,"indent")&&null!==a.indent&&"\t"!==a.indent&&!(parseInt(a.indent,10)===a.indent&&a.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(U(a,"numericSeparator")&&"boolean"!=typeof a.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var m=a.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return K(t,a);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var w=String(t);return m?P(t,w):w}if("bigint"==typeof t){var S=String(t)+"n";return m?P(t,S):S}var O=void 0===a.depth?5:a.depth;if(void 0===r&&(r=0),r>=O&&O>0&&"object"==typeof t)return z(t)?"[Array]":"[Object]";var A,L=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=C.call(Array(e.indent+1)," ")}return{base:n,prev:C.call(Array(t+1),n)}}(a,r);if(void 0===o)o=[];else if(q(o,t)>=0)return"[Circular]";function W(t,n,i){if(n&&(o=M.call(o)).push(n),i){var s={depth:a.depth};return U(a,"quoteStyle")&&(s.quoteStyle=a.quoteStyle),e(t,s,r+1,o)}return e(t,a,r+1,o)}if("function"==typeof t&&!$(t)){var Y=function(e){if(e.name)return e.name;var t=y.call(g.call(e),/^function\s*([\w$]+)/);return t?t[1]:null}(t),ee=X(t,W);return"[Function"+(Y?": "+Y:" (anonymous)")+"]"+(ee.length>0?" { "+C.call(ee,", ")+" }":"")}if(H(t)){var te=D?b.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):T.call(t);return"object"!=typeof t||D?te:G(te)}if((A=t)&&"object"==typeof A&&("undefined"!=typeof HTMLElement&&A instanceof HTMLElement||"string"==typeof A.nodeName&&"function"==typeof A.getAttribute)){for(var ne="<"+x.call(String(t.nodeName)),re=t.attributes||[],oe=0;oe<re.length;oe++)ne+=" "+re[oe].name+"="+F(B(re[oe].value),"double",a);return ne+=">",t.childNodes&&t.childNodes.length&&(ne+="..."),ne+"</"+x.call(String(t.nodeName))+">"}if(z(t)){if(0===t.length)return"[]";var ie=X(t,W);return L&&!function(e){for(var t=0;t<e.length;t++)if(q(e[t],"\n")>=0)return!1;return!0}(ie)?"["+Z(ie,L)+"]":"[ "+C.call(ie,", ")+" ]"}if(function(e){return!("[object Error]"!==V(e)||_&&"object"==typeof e&&_ in e)}(t)){var se=X(t,W);return"cause"in Error.prototype||!("cause"in t)||R.call(t,"cause")?0===se.length?"["+String(t)+"]":"{ ["+String(t)+"] "+C.call(se,", ")+" }":"{ ["+String(t)+"] "+C.call(k.call("[cause]: "+W(t.cause),se),", ")+" }"}if("object"==typeof t&&l){if(j&&"function"==typeof t[j]&&I)return I(t,{depth:O-r});if("symbol"!==l&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!i||!e||"object"!=typeof e)return!1;try{i.call(e);try{c.call(e)}catch(e){return!0}return e instanceof Map}catch(e){}return!1}(t)){var ae=[];return s&&s.call(t,(function(e,n){ae.push(W(n,t,!0)+" => "+W(e,t))})),Q("Map",i.call(t),ae,L)}if(function(e){if(!c||!e||"object"!=typeof e)return!1;try{c.call(e);try{i.call(e)}catch(e){return!0}return e instanceof Set}catch(e){}return!1}(t)){var le=[];return u&&u.call(t,(function(e){le.push(W(e,t))})),Q("Set",c.call(t),le,L)}if(function(e){if(!h||!e||"object"!=typeof e)return!1;try{h.call(e,h);try{d.call(e,d)}catch(e){return!0}return e instanceof WeakMap}catch(e){}return!1}(t))return J("WeakMap");if(function(e){if(!d||!e||"object"!=typeof e)return!1;try{d.call(e,d);try{h.call(e,h)}catch(e){return!0}return e instanceof WeakSet}catch(e){}return!1}(t))return J("WeakSet");if(function(e){if(!f||!e||"object"!=typeof e)return!1;try{return f.call(e),!0}catch(e){}return!1}(t))return J("WeakRef");if(function(e){return!("[object Number]"!==V(e)||_&&"object"==typeof e&&_ in e)}(t))return G(W(Number(t)));if(function(e){if(!e||"object"!=typeof e||!E)return!1;try{return E.call(e),!0}catch(e){}return!1}(t))return G(W(E.call(t)));if(function(e){return!("[object Boolean]"!==V(e)||_&&"object"==typeof e&&_ in e)}(t))return G(p.call(t));if(function(e){return!("[object String]"!==V(e)||_&&"object"==typeof e&&_ in e)}(t))return G(W(String(t)));if(!function(e){return!("[object Date]"!==V(e)||_&&"object"==typeof e&&_ in e)}(t)&&!$(t)){var ce=X(t,W),ue=N?N(t)===Object.prototype:t instanceof Object||t.constructor===Object,he=t instanceof Object?"":"null prototype",de=!ue&&_&&Object(t)===t&&_ in t?v.call(V(t),8,-1):he?"Object":"",fe=(ue||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(de||he?"["+C.call(k.call([],de||[],he||[]),": ")+"] ":"");return 0===ce.length?fe+"{}":L?fe+"{"+Z(ce,L)+"}":fe+"{ "+C.call(ce,", ")+" }"}return String(t)};var W=Object.prototype.hasOwnProperty||function(e){return e in this};function U(e,t){return W.call(e,t)}function V(e){return m.call(e)}function q(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1}function K(e,t){if(e.length>t.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return K(v.call(e,0,t.maxStringLength),t)+r}return F(b.call(b.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Y),"single",t)}function Y(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+w.call(t.toString(16))}function G(e){return"Object("+e+")"}function J(e){return e+" { ? }"}function Q(e,t,n,r){return e+" ("+t+") {"+(r?Z(n,r):C.call(n,", "))+"}"}function Z(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+C.call(e,","+n)+"\n"+t.prev}function X(e,t){var n=z(e),r=[];if(n){r.length=e.length;for(var o=0;o<e.length;o++)r[o]=U(e,o)?t(e[o],e):""}var i,s="function"==typeof A?A(e):[];if(D){i={};for(var a=0;a<s.length;a++)i["$"+s[a]]=s[a]}for(var l in e)U(e,l)&&(n&&String(Number(l))===l&&l<e.length||D&&i["$"+l]instanceof Symbol||(S.call(/[^\w$]/,l)?r.push(t(l,e)+": "+t(e[l],e)):r.push(l+": "+t(e[l],e))));if("function"==typeof A)for(var c=0;c<s.length;c++)R.call(e,s[c])&&r.push("["+t(s[c])+"]: "+t(e[s[c]],e));return r}},4244:e=>{"use strict";var t=function(e){return e!=e};e.exports=function(e,n){return 0===e&&0===n?1/e==1/n:e===n||!(!t(e)||!t(n))}},609:(e,t,n)=>{"use strict";var r=n(4289),o=n(5559),i=n(4244),s=n(5624),a=n(2281),l=o(s(),Object);r(l,{getPolyfill:s,implementation:i,shim:a}),e.exports=l},5624:(e,t,n)=>{"use strict";var r=n(4244);e.exports=function(){return"function"==typeof Object.is?Object.is:r}},2281:(e,t,n)=>{"use strict";var r=n(5624),o=n(4289);e.exports=function(){var e=r();return o(Object,{is:e},{is:function(){return Object.is!==e}}),e}},8987:(e,t,n)=>{"use strict";var r;if(!Object.keys){var o=Object.prototype.hasOwnProperty,i=Object.prototype.toString,s=n(1414),a=Object.prototype.propertyIsEnumerable,l=!a.call({toString:null},"toString"),c=a.call((function(){}),"prototype"),u=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],h=function(e){var t=e.constructor;return t&&t.prototype===e},d={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},f=function(){if("undefined"==typeof window)return!1;for(var e in window)try{if(!d["$"+e]&&o.call(window,e)&&null!==window[e]&&"object"==typeof window[e])try{h(window[e])}catch(e){return!0}}catch(e){return!0}return!1}();r=function(e){var t=null!==e&&"object"==typeof e,n="[object Function]"===i.call(e),r=s(e),a=t&&"[object String]"===i.call(e),d=[];if(!t&&!n&&!r)throw new TypeError("Object.keys called on a non-object");var p=c&&n;if(a&&e.length>0&&!o.call(e,0))for(var m=0;m<e.length;++m)d.push(String(m));if(r&&e.length>0)for(var g=0;g<e.length;++g)d.push(String(g));else for(var y in e)p&&"prototype"===y||!o.call(e,y)||d.push(String(y));if(l)for(var v=function(e){if("undefined"==typeof window||!f)return h(e);try{return h(e)}catch(e){return!1}}(e),b=0;b<u.length;++b)v&&"constructor"===u[b]||!o.call(e,u[b])||d.push(u[b]);return d}}e.exports=r},2215:(e,t,n)=>{"use strict";var r=Array.prototype.slice,o=n(1414),i=Object.keys,s=i?function(e){return i(e)}:n(8987),a=Object.keys;s.shim=function(){if(Object.keys){var e=function(){var e=Object.keys(arguments);return e&&e.length===arguments.length}(1,2);e||(Object.keys=function(e){return o(e)?a(r.call(e)):a(e)})}else Object.keys=s;return Object.keys||s},e.exports=s},1414:e=>{"use strict";var t=Object.prototype.toString;e.exports=function(e){var n=t.call(e),r="[object Arguments]"===n;return r||(r="[object Array]"!==n&&null!==e&&"object"==typeof e&&"number"==typeof e.length&&e.length>=0&&"[object Function]"===t.call(e.callee)),r}},2837:(e,t,n)=>{"use strict";var r=n(2215),o=n(5419)(),i=n(1924),s=Object,a=i("Array.prototype.push"),l=i("Object.prototype.propertyIsEnumerable"),c=o?Object.getOwnPropertySymbols:null;e.exports=function(e,t){if(null==e)throw new TypeError("target must be an object");var n=s(e);if(1===arguments.length)return n;for(var i=1;i<arguments.length;++i){var u=s(arguments[i]),h=r(u),d=o&&(Object.getOwnPropertySymbols||c);if(d)for(var f=d(u),p=0;p<f.length;++p){var m=f[p];l(u,m)&&a(h,m)}for(var g=0;g<h.length;++g){var y=h[g];if(l(u,y)){var v=u[y];n[y]=v}}}return n}},3533:(e,t,n)=>{"use strict";var r=n(4289),o=n(5559),i=n(2837),s=n(8162),a=n(4489),l=o.apply(s()),c=function(e,t){return l(Object,arguments)};r(c,{getPolyfill:s,implementation:i,shim:a}),e.exports=c},8162:(e,t,n)=>{"use strict";var r=n(2837);e.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),n={},r=0;r<t.length;++r)n[t[r]]=t[r];var o=Object.assign({},n),i="";for(var s in o)i+=s;return e!==i}()||function(){if(!Object.assign||!Object.preventExtensions)return!1;var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return"y"===e[1]}return!1}()?r:Object.assign:r}},4489:(e,t,n)=>{"use strict";var r=n(4289),o=n(8162);e.exports=function(){var e=o();return r(Object,{assign:e},{assign:function(){return Object.assign!==e}}),e}},4101:(e,t,n)=>{"use strict";function r(e,t){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},r(e,t)}function o(e){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},o(e)}function i(e,t,n){return i=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}()?Reflect.construct.bind():function(e,t,n){var o=[null];o.push.apply(o,t);var i=new(Function.bind.apply(e,o));return n&&r(i,n.prototype),i},i.apply(null,arguments)}function s(e){var t="function"==typeof Map?new Map:void 0;return s=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,s)}function s(){return i(e,arguments,o(this).constructor)}return s.prototype=Object.create(e.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),r(s,e)},s(e)}n.d(t,{m4:()=>k});var a=function(e){var t,n;function o(t){return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e.call(this,"An error occurred. See https://github.com/styled-components/polished/blob/main/src/internalHelpers/errors.md#"+t+" for more information.")||this)}return n=e,(t=o).prototype=Object.create(n.prototype),t.prototype.constructor=t,r(t,n),o}(s(Error));function l(e){return Math.round(255*e)}function c(e,t,n){return l(e)+","+l(t)+","+l(n)}function u(e,t,n,r){if(void 0===r&&(r=c),0===t)return r(n,n,n);var o=(e%360+360)%360/60,i=(1-Math.abs(2*n-1))*t,s=i*(1-Math.abs(o%2-1)),a=0,l=0,u=0;o>=0&&o<1?(a=i,l=s):o>=1&&o<2?(a=s,l=i):o>=2&&o<3?(l=i,u=s):o>=3&&o<4?(l=s,u=i):o>=4&&o<5?(a=s,u=i):o>=5&&o<6&&(a=i,u=s);var h=n-i/2;return r(a+h,l+h,u+h)}var h={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},d=/^#[a-fA-F0-9]{6}$/,f=/^#[a-fA-F0-9]{8}$/,p=/^#[a-fA-F0-9]{3}$/,m=/^#[a-fA-F0-9]{4}$/,g=/^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i,y=/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i,v=/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i,b=/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;var w=function(e){return 7===e.length&&e[1]===e[2]&&e[3]===e[4]&&e[5]===e[6]?"#"+e[1]+e[3]+e[5]:e};function x(e){var t=e.toString(16);return 1===t.length?"0"+t:t}function S(e,t,n){if("number"==typeof e&&"number"==typeof t&&"number"==typeof n)return w("#"+x(e)+x(t)+x(n));if("object"==typeof e&&void 0===t&&void 0===n)return w("#"+x(e.red)+x(e.green)+x(e.blue));throw new a(6)}function k(e,t,n,r){if("string"==typeof e&&"number"==typeof t){var o=function(e){if("string"!=typeof e)throw new a(3);var t=function(e){if("string"!=typeof e)return e;var t=e.toLowerCase();return h[t]?"#"+h[t]:e}(e);if(t.match(d))return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16)};if(t.match(f)){var n=parseFloat((parseInt(""+t[7]+t[8],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16),alpha:n}}if(t.match(p))return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16)};if(t.match(m)){var r=parseFloat((parseInt(""+t[4]+t[4],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16),alpha:r}}var o=g.exec(t);if(o)return{red:parseInt(""+o[1],10),green:parseInt(""+o[2],10),blue:parseInt(""+o[3],10)};var i=y.exec(t.substring(0,50));if(i)return{red:parseInt(""+i[1],10),green:parseInt(""+i[2],10),blue:parseInt(""+i[3],10),alpha:parseFloat(""+i[4])>1?parseFloat(""+i[4])/100:parseFloat(""+i[4])};var s=v.exec(t);if(s){var l="rgb("+u(parseInt(""+s[1],10),parseInt(""+s[2],10)/100,parseInt(""+s[3],10)/100)+")",c=g.exec(l);if(!c)throw new a(4,t,l);return{red:parseInt(""+c[1],10),green:parseInt(""+c[2],10),blue:parseInt(""+c[3],10)}}var w=b.exec(t.substring(0,50));if(w){var x="rgb("+u(parseInt(""+w[1],10),parseInt(""+w[2],10)/100,parseInt(""+w[3],10)/100)+")",S=g.exec(x);if(!S)throw new a(4,t,x);return{red:parseInt(""+S[1],10),green:parseInt(""+S[2],10),blue:parseInt(""+S[3],10),alpha:parseFloat(""+w[4])>1?parseFloat(""+w[4])/100:parseFloat(""+w[4])}}throw new a(5)}(e);return"rgba("+o.red+","+o.green+","+o.blue+","+t+")"}if("number"==typeof e&&"number"==typeof t&&"number"==typeof n&&"number"==typeof r)return r>=1?S(e,t,n):"rgba("+e+","+t+","+n+","+r+")";if("object"==typeof e&&void 0===t&&void 0===n&&void 0===r)return e.alpha>=1?S(e.red,e.green,e.blue):"rgba("+e.red+","+e.green+","+e.blue+","+e.alpha+")";throw new a(7)}},2703:(e,t,n)=>{"use strict";var r=n(414);function o(){}function i(){}i.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,i,s){if(s!==r){var a=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw a.name="Invariant Violation",a}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:o};return n.PropTypes=n,n}},5697:(e,t,n)=>{e.exports=n(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},2587:e=>{"use strict";function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,n,r,o){n=n||"&",r=r||"=";var i={};if("string"!=typeof e||0===e.length)return i;var s=/\+/g;e=e.split(n);var a=1e3;o&&"number"==typeof o.maxKeys&&(a=o.maxKeys);var l=e.length;a>0&&l>a&&(l=a);for(var c=0;c<l;++c){var u,h,d,f,p=e[c].replace(s,"%20"),m=p.indexOf(r);m>=0?(u=p.substr(0,m),h=p.substr(m+1)):(u=p,h=""),d=decodeURIComponent(u),f=decodeURIComponent(h),t(i,d)?Array.isArray(i[d])?i[d].push(f):i[d]=[i[d],f]:i[d]=f}return i}},2361:e=>{"use strict";var t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,n,r,o){return n=n||"&",r=r||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(o){var i=encodeURIComponent(t(o))+r;return Array.isArray(e[o])?e[o].map((function(e){return i+encodeURIComponent(t(e))})).join(n):i+encodeURIComponent(t(e[o]))})).filter(Boolean).join(n):o?encodeURIComponent(t(o))+r+encodeURIComponent(t(e)):""}},7673:(e,t,n)=>{"use strict";n(2587),t.stringify=n(2361)},667:(e,t,n)=>{"use strict";function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==r(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,"string");if("object"!==r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===r(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t){if(e){if("string"==typeof e)return i(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}function a(e){return function(e){if(Array.isArray(e))return i(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||s(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i,s,a=[],l=!0,c=!1;try{if(i=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=i.call(n)).done)&&(a.push(r.value),a.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(s=n.return(),Object(s)!==s))return}finally{if(c)throw o}}return a}}(e,t)||s(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}n.d(t,{Z:()=>H});var c=n(7294),u=n(4184),h=n.n(u),d={};function f(e,t){}const p=function(e,t){!function(e,t,n){t||d[n]||(e(!1,n),d[n]=!0)}(f,e,t)};function m(e){var t=c.useRef();t.current=e;var n=c.useCallback((function(){for(var e,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return null===(e=t.current)||void 0===e?void 0:e.call.apply(e,[t].concat(r))}),[]);return n}var g="undefined"!=typeof window&&window.document&&window.document.createElement?c.useLayoutEffect:c.useEffect,y=function(e,t){var n=c.useRef(!0);g((function(){if(!n.current)return e()}),t),g((function(){return n.current=!1,function(){n.current=!0}}),[])};function v(e){var t=c.useRef(!1),n=l(c.useState(e),2),r=n[0],o=n[1];return c.useEffect((function(){return t.current=!1,function(){t.current=!0}}),[]),[r,function(e,n){n&&t.current||o(e)}]}function b(e){return void 0!==e}var w=n(7462),x=n(3366);function S(e,t){if(null==e)return{};var n,r,o=(0,x.Z)(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function k(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function C(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?k(Object(n),!0).forEach((function(t){o(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):k(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var M={MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,QUESTION_MARK:63,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,WIN_KEY_RIGHT:92,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SEMICOLON:186,DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,WIN_IME:229,isTextModifyingKeyEvent:function(e){var t=e.keyCode;if(e.altKey&&!e.ctrlKey||e.metaKey||t>=M.F1&&t<=M.F12)return!1;switch(t){case M.ALT:case M.CAPS_LOCK:case M.CONTEXT_MENU:case M.CTRL:case M.DOWN:case M.END:case M.ESC:case M.HOME:case M.INSERT:case M.LEFT:case M.MAC_FF_META:case M.META:case M.NUMLOCK:case M.NUM_CENTER:case M.PAGE_DOWN:case M.PAGE_UP:case M.PAUSE:case M.PRINT_SCREEN:case M.RIGHT:case M.SHIFT:case M.UP:case M.WIN_KEY:case M.WIN_KEY_RIGHT:return!1;default:return!0}},isCharacterKey:function(e){if(e>=M.ZERO&&e<=M.NINE)return!0;if(e>=M.NUM_ZERO&&e<=M.NUM_MULTIPLY)return!0;if(e>=M.A&&e<=M.Z)return!0;if(-1!==window.navigator.userAgent.indexOf("WebKit")&&0===e)return!0;switch(e){case M.SPACE:case M.QUESTION_MARK:case M.NUM_PLUS:case M.NUM_MINUS:case M.NUM_PERIOD:case M.NUM_DIVISION:case M.SEMICOLON:case M.DASH:case M.EQUALS:case M.COMMA:case M.PERIOD:case M.SLASH:case M.APOSTROPHE:case M.SINGLE_QUOTE:case M.OPEN_SQUARE_BRACKET:case M.BACKSLASH:case M.CLOSE_SQUARE_BRACKET:return!0;default:return!1}}};const O=M,E=c.createContext({min:0,max:0,direction:"ltr",step:1,includedStart:0,includedEnd:0,tabIndex:0,keyboard:!0});function A(e,t,n){return(e-t)/(n-t)}function T(e,t,n,r){var o=A(t,n,r),i={};switch(e){case"rtl":i.right="".concat(100*o,"%"),i.transform="translateX(50%)";break;case"btt":i.bottom="".concat(100*o,"%"),i.transform="translateY(50%)";break;case"ttb":i.top="".concat(100*o,"%"),i.transform="translateY(-50%)";break;default:i.left="".concat(100*o,"%"),i.transform="translateX(-50%)"}return i}function D(e,t){return Array.isArray(e)?e[t]:e}var _=["prefixCls","value","valueIndex","onStartMove","style","render","dragging","onOffsetChange"];const R=c.forwardRef((function(e,t){var n,r,i=e.prefixCls,s=e.value,a=e.valueIndex,l=e.onStartMove,u=e.style,d=e.render,f=e.dragging,p=e.onOffsetChange,m=S(e,_),g=c.useContext(E),y=g.min,v=g.max,b=g.direction,x=g.disabled,k=g.keyboard,M=g.range,A=g.tabIndex,R=g.ariaLabelForHandle,N=g.ariaLabelledByForHandle,P=g.ariaValueTextFormatterForHandle,I="".concat(i,"-handle"),L=function(e){x||l(e,a)},j=T(b,s,y,v),F=c.createElement("div",(0,w.Z)({ref:t,className:h()(I,(n={},o(n,"".concat(I,"-").concat(a+1),M),o(n,"".concat(I,"-dragging"),f),n)),style:C(C({},j),u),onMouseDown:L,onTouchStart:L,onKeyDown:function(e){if(!x&&k){var t=null;switch(e.which||e.keyCode){case O.LEFT:t="ltr"===b||"btt"===b?-1:1;break;case O.RIGHT:t="ltr"===b||"btt"===b?1:-1;break;case O.UP:t="ttb"!==b?1:-1;break;case O.DOWN:t="ttb"!==b?-1:1;break;case O.HOME:t="min";break;case O.END:t="max";break;case O.PAGE_UP:t=2;break;case O.PAGE_DOWN:t=-2}null!==t&&(e.preventDefault(),p(t,a))}},tabIndex:x?null:D(A,a),role:"slider","aria-valuemin":y,"aria-valuemax":v,"aria-valuenow":s,"aria-disabled":x,"aria-label":D(R,a),"aria-labelledby":D(N,a),"aria-valuetext":null===(r=D(P,a))||void 0===r?void 0:r(s)},m));return d&&(F=d(F,{index:a,prefixCls:i,value:s,dragging:f})),F}));var N=["prefixCls","style","onStartMove","onOffsetChange","values","handleRender","draggingIndex"];const P=c.forwardRef((function(e,t){var n=e.prefixCls,r=e.style,o=e.onStartMove,i=e.onOffsetChange,s=e.values,a=e.handleRender,l=e.draggingIndex,u=S(e,N),h=c.useRef({});return c.useImperativeHandle(t,(function(){return{focus:function(e){var t;null===(t=h.current[e])||void 0===t||t.focus()}}})),c.createElement(c.Fragment,null,s.map((function(e,t){return c.createElement(R,(0,w.Z)({ref:function(e){e?h.current[t]=e:delete h.current[t]},dragging:l===t,prefixCls:n,style:D(r,t),key:t,value:e,valueIndex:t,onStartMove:o,onOffsetChange:i,render:a},u))})))}));function I(e){var t="touches"in e?e.touches[0]:e;return{pageX:t.pageX,pageY:t.pageY}}function L(e){var t=e.prefixCls,n=e.style,r=e.start,o=e.end,i=e.index,s=e.onStartMove,a=c.useContext(E),l=a.direction,u=a.min,d=a.max,f=a.disabled,p=a.range,m="".concat(t,"-track"),g=A(r,u,d),y=A(o,u,d),v=function(e){!f&&s&&s(e,-1)},b={};switch(l){case"rtl":b.right="".concat(100*g,"%"),b.width="".concat(100*y-100*g,"%");break;case"btt":b.bottom="".concat(100*g,"%"),b.height="".concat(100*y-100*g,"%");break;case"ttb":b.top="".concat(100*g,"%"),b.height="".concat(100*y-100*g,"%");break;default:b.left="".concat(100*g,"%"),b.width="".concat(100*y-100*g,"%")}return c.createElement("div",{className:h()(m,p&&"".concat(m,"-").concat(i+1)),style:C(C({},b),n),onMouseDown:v,onTouchStart:v})}function j(e){var t=e.prefixCls,n=e.style,r=e.values,o=e.startPoint,i=e.onStartMove,s=c.useContext(E),a=s.included,l=s.range,u=s.min,h=c.useMemo((function(){if(!l){if(0===r.length)return[];var e=null!=o?o:u,t=r[0];return[{start:Math.min(e,t),end:Math.max(e,t)}]}for(var n=[],i=0;i<r.length-1;i+=1)n.push({start:r[i],end:r[i+1]});return n}),[r,l,o,u]);return a?h.map((function(e,r){var o=e.start,s=e.end;return c.createElement(L,{index:r,prefixCls:t,style:D(n,r),start:o,end:s,key:r,onStartMove:i})})):null}function F(e){var t=e.prefixCls,n=e.style,r=e.children,i=e.value,s=e.onClick,a=c.useContext(E),l=a.min,u=a.max,d=a.direction,f=a.includedStart,p=a.includedEnd,m=a.included,g="".concat(t,"-text"),y=T(d,i,l,u);return c.createElement("span",{className:h()(g,o({},"".concat(g,"-active"),m&&f<=i&&i<=p)),style:C(C({},y),n),onMouseDown:function(e){e.stopPropagation()},onClick:function(){s(i)}},r)}function B(e){var t=e.prefixCls,n=e.marks,r=e.onClick,o="".concat(t,"-mark");return n.length?c.createElement("div",{className:o},n.map((function(e){var t=e.value,n=e.style,i=e.label;return c.createElement(F,{key:t,prefixCls:o,style:n,value:t,onClick:r},i)}))):null}function z(e){var t=e.prefixCls,n=e.value,r=e.style,i=e.activeStyle,s=c.useContext(E),a=s.min,l=s.max,u=s.direction,d=s.included,f=s.includedStart,p=s.includedEnd,m="".concat(t,"-dot"),g=d&&f<=n&&n<=p,y=C(C({},T(u,n,a,l)),"function"==typeof r?r(n):r);return g&&(y=C(C({},y),"function"==typeof i?i(n):i)),c.createElement("span",{className:h()(m,o({},"".concat(m,"-active"),g)),style:y})}function $(e){var t=e.prefixCls,n=e.marks,r=e.dots,o=e.style,i=e.activeStyle,s=c.useContext(E),a=s.min,l=s.max,u=s.step,h=c.useMemo((function(){var e=new Set;if(n.forEach((function(t){e.add(t.value)})),r&&null!==u)for(var t=a;t<=l;)e.add(t),t+=u;return Array.from(e)}),[a,l,u,r,n]);return c.createElement("div",{className:"".concat(t,"-step")},h.map((function(e){return c.createElement(z,{prefixCls:t,key:e,value:e,style:o,activeStyle:i})})))}const H=c.forwardRef((function(e,t){var n,i=e.prefixCls,s=void 0===i?"rc-slider":i,u=e.className,d=e.style,f=e.disabled,g=void 0!==f&&f,w=e.keyboard,x=void 0===w||w,S=e.autoFocus,k=e.onFocus,C=e.onBlur,M=e.min,O=void 0===M?0:M,A=e.max,T=void 0===A?100:A,D=e.step,_=void 0===D?1:D,R=e.value,N=e.defaultValue,L=e.range,F=e.count,z=e.onChange,H=e.onBeforeChange,W=e.onAfterChange,U=e.allowCross,V=void 0===U||U,q=e.pushable,K=void 0!==q&&q,Y=e.draggableTrack,G=e.reverse,J=e.vertical,Q=e.included,Z=void 0===Q||Q,X=e.startPoint,ee=e.trackStyle,te=e.handleStyle,ne=e.railStyle,re=e.dotStyle,oe=e.activeDotStyle,ie=e.marks,se=e.dots,ae=e.handleRender,le=e.tabIndex,ce=void 0===le?0:le,ue=e.ariaLabelForHandle,he=e.ariaLabelledByForHandle,de=e.ariaValueTextFormatterForHandle,fe=c.useRef(),pe=c.useRef(),me=c.useMemo((function(){return J?G?"ttb":"btt":G?"rtl":"ltr"}),[G,J]),ge=c.useMemo((function(){return isFinite(O)?O:0}),[O]),ye=c.useMemo((function(){return isFinite(T)?T:100}),[T]),ve=c.useMemo((function(){return null!==_&&_<=0?1:_}),[_]),be=c.useMemo((function(){return!0===K?ve:K>=0&&K}),[K,ve]),we=c.useMemo((function(){return Object.keys(ie||{}).map((function(e){var t=ie[e],n={value:Number(e)};return t&&"object"===r(t)&&!c.isValidElement(t)&&("label"in t||"style"in t)?(n.style=t.style,n.label=t.label):n.label=t,n})).filter((function(e){var t=e.label;return t||"number"==typeof t})).sort((function(e,t){return e.value-t.value}))}),[ie]),xe=function(e,t,n,r,o,i){var s=c.useCallback((function(n){var r=isFinite(n);return r=Math.min(t,n),Math.max(e,r)}),[e,t]),l=c.useCallback((function(r){if(null!==n){var o=e+Math.round((s(r)-e)/n)*n,i=function(e){return(String(e).split(".")[1]||"").length},a=Math.max(i(n),i(t),i(e)),l=Number(o.toFixed(a));return e<=l&&l<=t?l:null}return null}),[n,e,t,s]),u=c.useCallback((function(o){var i=s(o),a=r.map((function(e){return e.value}));null!==n&&a.push(l(o)),a.push(e,t);var c=a[0],u=t-e;return a.forEach((function(e){var t=Math.abs(i-e);t<=u&&(c=e,u=t)})),c}),[e,t,r,n,s,l]),h=function o(i,s,c){var u=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unit";if("number"==typeof s){var h,d=i[c],f=d+s,p=[];r.forEach((function(e){p.push(e.value)})),p.push(e,t),p.push(l(d));var m=s>0?1:-1;"unit"===u?p.push(l(d+m*n)):p.push(l(f)),p=p.filter((function(e){return null!==e})).filter((function(e){return s<0?e<=d:e>=d})),"unit"===u&&(p=p.filter((function(e){return e!==d})));var g="unit"===u?d:f;h=p[0];var y=Math.abs(h-g);if(p.forEach((function(e){var t=Math.abs(e-g);t<y&&(h=e,y=t)})),void 0===h)return s<0?e:t;if("dist"===u)return h;if(Math.abs(s)>1){var v=a(i);return v[c]=h,o(v,s-m,c,u)}return h}return"min"===s?e:"max"===s?t:void 0},d=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unit",o=e[n],i=h(e,t,n,r);return{value:i,changed:i!==o}},f=function(e){return null===i&&0===e||"number"==typeof i&&e<i};return[u,function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"unit",s=e.map(u),a=s[n],l=h(s,t,n,r);if(s[n]=l,!1===o){var c=i||0;n>0&&s[n-1]!==a&&(s[n]=Math.max(s[n],s[n-1]+c)),n<s.length-1&&s[n+1]!==a&&(s[n]=Math.min(s[n],s[n+1]-c))}else if("number"==typeof i||null===i){for(var p=n+1;p<s.length;p+=1)for(var m=!0;f(s[p]-s[p-1])&&m;){var g=d(s,1,p);s[p]=g.value,m=g.changed}for(var y=n;y>0;y-=1)for(var v=!0;f(s[y]-s[y-1])&&v;){var b=d(s,-1,y-1);s[y-1]=b.value,v=b.changed}for(var w=s.length-1;w>0;w-=1)for(var x=!0;f(s[w]-s[w-1])&&x;){var S=d(s,-1,w-1);s[w-1]=S.value,x=S.changed}for(var k=0;k<s.length-1;k+=1)for(var C=!0;f(s[k+1]-s[k])&&C;){var M=d(s,1,k+1);s[k+1]=M.value,C=M.changed}}return{value:s[n],values:s}}]}(ge,ye,ve,we,V,be),Se=l(xe,2),ke=Se[0],Ce=Se[1],Me=function(e,t){var n=t||{},r=n.defaultValue,o=n.value,i=n.onChange,s=n.postState,a=l(v((function(){return b(o)?o:b(r)?"function"==typeof r?r():r:"function"==typeof e?e():e})),2),c=a[0],u=a[1],h=void 0!==o?o:c,d=s?s(h):h,f=m(i),p=l(v([h]),2),g=p[0],w=p[1];return y((function(){var e=g[0];c!==e&&f(c,e)}),[g]),y((function(){b(o)||u(o)}),[o]),[d,m((function(e,t){u(e,t),w([h],t)}))]}(N,{value:R}),Oe=l(Me,2),Ee=Oe[0],Ae=Oe[1],Te=c.useMemo((function(){var e=null==Ee?[]:Array.isArray(Ee)?Ee:[Ee],t=l(e,1)[0],n=null===Ee?[]:[void 0===t?ge:t];if(L){if(n=a(e),F||void 0===Ee){var r=F>=0?F+1:2;for(n=n.slice(0,r);n.length<r;){var o;n.push(null!==(o=n[n.length-1])&&void 0!==o?o:ge)}}n.sort((function(e,t){return e-t}))}return n.forEach((function(e,t){n[t]=ke(e)})),n}),[Ee,L,ge,F,ke]),De=c.useRef(Te);De.current=Te;var _e=function(e){return L?e:e[0]},Re=function(e){var t=a(e).sort((function(e,t){return e-t}));z&&!function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=new Set;return function e(t,i){var s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=o.has(t);if(p(!a,"Warning: There may be circular references"),a)return!1;if(t===i)return!0;if(n&&s>1)return!1;o.add(t);var l=s+1;if(Array.isArray(t)){if(!Array.isArray(i)||t.length!==i.length)return!1;for(var c=0;c<t.length;c++)if(!e(t[c],i[c],l))return!1;return!0}if(t&&i&&"object"===r(t)&&"object"===r(i)){var u=Object.keys(t);return u.length===Object.keys(i).length&&u.every((function(n){return e(t[n],i[n],l)}))}return!1}(e,t)}(t,De.current,!0)&&z(_e(t)),Ae(t)},Ne=function(e){if(!g){var t=0,n=ye-ge;Te.forEach((function(r,o){var i=Math.abs(e-r);i<=n&&(n=i,t=o)}));var r=a(Te);r[t]=e,L&&!Te.length&&void 0===F&&r.push(e),null==H||H(_e(r)),Re(r),null==W||W(_e(r))}},Pe=l(c.useState(null),2),Ie=Pe[0],Le=Pe[1];c.useEffect((function(){if(null!==Ie){var e=Te.indexOf(Ie);e>=0&&fe.current.focus(e)}Le(null)}),[Ie]);var je=c.useMemo((function(){return(!Y||null!==ve)&&Y}),[Y,ve]),Fe=function(e,t,n,r,o,i,s,u,h){var d=l(c.useState(null),2),f=d[0],p=d[1],m=l(c.useState(-1),2),g=m[0],y=m[1],v=l(c.useState(n),2),b=v[0],w=v[1],x=l(c.useState(n),2),S=x[0],k=x[1],C=c.useRef(null),M=c.useRef(null);c.useEffect((function(){-1===g&&w(n)}),[n,g]),c.useEffect((function(){return function(){document.removeEventListener("mousemove",C.current),document.removeEventListener("mouseup",M.current),document.removeEventListener("touchmove",C.current),document.removeEventListener("touchend",M.current)}}),[]);var O=function(e,t){b.some((function(t,n){return t!==e[n]}))&&(void 0!==t&&p(t),w(e),s(e))},E=function(e,t){if(-1===e){var n=S[0],s=S[S.length-1],l=r-n,c=o-s,u=t*(o-r);u=Math.max(u,l),u=Math.min(u,c);var d=i(n+u);u=d-n;var f=S.map((function(e){return e+u}));O(f)}else{var p=(o-r)*t,m=a(b);m[e]=S[e];var g=h(m,p,e,"dist");O(g.values,g.value)}},A=c.useRef(E);A.current=E;var T=c.useMemo((function(){var e=a(n).sort((function(e,t){return e-t})),t=a(b).sort((function(e,t){return e-t}));return e.every((function(e,n){return e===t[n]}))?b:n}),[n,b]);return[g,f,T,function(r,o){r.stopPropagation();var i=n[o];y(o),p(i),k(n);var s=I(r),a=s.pageX,l=s.pageY,c=function(n){n.preventDefault();var r,i=I(n),s=i.pageX,c=i.pageY,u=s-a,h=c-l,d=e.current.getBoundingClientRect(),f=d.width,p=d.height;switch(t){case"btt":r=-h/p;break;case"ttb":r=h/p;break;case"rtl":r=-u/f;break;default:r=u/f}A.current(o,r)},u=function e(t){t.preventDefault(),document.removeEventListener("mouseup",e),document.removeEventListener("mousemove",c),document.removeEventListener("touchend",e),document.removeEventListener("touchmove",c),C.current=null,M.current=null,y(-1),null==W||W(_e(De.current))};document.addEventListener("mouseup",u),document.addEventListener("mousemove",c),document.addEventListener("touchend",u),document.addEventListener("touchmove",c),C.current=c,M.current=u}]}(pe,me,Te,ge,ye,ke,Re,0,Ce),Be=l(Fe,4),ze=Be[0],$e=Be[1],He=Be[2],We=Be[3],Ue=function(e,t){We(e,t),null==H||H(_e(De.current))},Ve=-1!==ze;c.useEffect((function(){if(!Ve){var e=Te.lastIndexOf($e);fe.current.focus(e)}}),[Ve]);var qe=c.useMemo((function(){return a(He).sort((function(e,t){return e-t}))}),[He]),Ke=l(c.useMemo((function(){return L?[qe[0],qe[qe.length-1]]:[ge,qe[0]]}),[qe,L,ge]),2),Ye=Ke[0],Ge=Ke[1];c.useImperativeHandle(t,(function(){return{focus:function(){fe.current.focus(0)},blur:function(){var e=document.activeElement;pe.current.contains(e)&&(null==e||e.blur())}}})),c.useEffect((function(){S&&fe.current.focus(0)}),[]);var Je=c.useMemo((function(){return{min:ge,max:ye,direction:me,disabled:g,keyboard:x,step:ve,included:Z,includedStart:Ye,includedEnd:Ge,range:L,tabIndex:ce,ariaLabelForHandle:ue,ariaLabelledByForHandle:he,ariaValueTextFormatterForHandle:de}}),[ge,ye,me,g,x,ve,Z,Ye,Ge,L,ce,ue,he,de]);return c.createElement(E.Provider,{value:Je},c.createElement("div",{ref:pe,className:h()(s,u,(n={},o(n,"".concat(s,"-disabled"),g),o(n,"".concat(s,"-vertical"),J),o(n,"".concat(s,"-horizontal"),!J),o(n,"".concat(s,"-with-marks"),we.length),n)),style:d,onMouseDown:function(e){e.preventDefault();var t,n=pe.current.getBoundingClientRect(),r=n.width,o=n.height,i=n.left,s=n.top,a=n.bottom,l=n.right,c=e.clientX,u=e.clientY;switch(me){case"btt":t=(a-u)/o;break;case"ttb":t=(u-s)/o;break;case"rtl":t=(l-c)/r;break;default:t=(c-i)/r}Ne(ke(ge+t*(ye-ge)))}},c.createElement("div",{className:"".concat(s,"-rail"),style:ne}),c.createElement(j,{prefixCls:s,style:ee,values:qe,startPoint:X,onStartMove:je?Ue:null}),c.createElement($,{prefixCls:s,marks:we,dots:se,style:re,activeStyle:oe}),c.createElement(P,{ref:fe,prefixCls:s,style:te,values:He,draggingIndex:ze,onStartMove:Ue,onOffsetChange:function(e,t){if(!g){var n=Ce(Te,e,t);null==H||H(_e(Te)),Re(n.values),null==W||W(_e(n.values)),Le(n.value)}},onFocus:k,onBlur:C,handleRender:ae}),c.createElement(B,{prefixCls:s,marks:we,onClick:Ne})))}))},4448:(e,t,n)=>{"use strict";var r=n(7294),o=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var s=new Set,a={};function l(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(a[e]=t,e=0;e<t.length;e++)s.add(t[e])}var u=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),h=Object.prototype.hasOwnProperty,d=/^[: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][: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\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,f={},p={};function m(e,t,n,r,o,i,s){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=o,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=s}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new m(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new m(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new m(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new m(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new m(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new m(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new m(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new m(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new m(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function v(e){return e[1].toUpperCase()}function b(e,t,n,r){var o=g.hasOwnProperty(t)?g[t]:null;(null!==o?0!==o.type:r||!(2<t.length)||"o"!==t[0]&&"O"!==t[0]||"n"!==t[1]&&"N"!==t[1])&&(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,o,r)&&(n=null),r||null===o?function(e){return!!h.call(p,e)||!h.call(f,e)&&(d.test(e)?p[e]=!0:(f[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):o.mustUseProperty?e[o.propertyName]=null===n?3!==o.type&&"":n:(t=o.attributeName,r=o.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(o=o.type)||4===o&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,v);g[t]=new m(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,v);g[t]=new m(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,v);g[t]=new m(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new m(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new m("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new m(e,1,!1,e.toLowerCase(),null,!0,!0)}));var w=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,x=Symbol.for("react.element"),S=Symbol.for("react.portal"),k=Symbol.for("react.fragment"),C=Symbol.for("react.strict_mode"),M=Symbol.for("react.profiler"),O=Symbol.for("react.provider"),E=Symbol.for("react.context"),A=Symbol.for("react.forward_ref"),T=Symbol.for("react.suspense"),D=Symbol.for("react.suspense_list"),_=Symbol.for("react.memo"),R=Symbol.for("react.lazy");Symbol.for("react.scope"),Symbol.for("react.debug_trace_mode");var N=Symbol.for("react.offscreen");Symbol.for("react.legacy_hidden"),Symbol.for("react.cache"),Symbol.for("react.tracing_marker");var P=Symbol.iterator;function I(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=P&&e[P]||e["@@iterator"])?e:null}var L,j=Object.assign;function F(e){if(void 0===L)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);L=t&&t[1]||""}return"\n"+L+e}var B=!1;function z(e,t){if(!e||B)return"";B=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&"string"==typeof t.stack){for(var o=t.stack.split("\n"),i=r.stack.split("\n"),s=o.length-1,a=i.length-1;1<=s&&0<=a&&o[s]!==i[a];)a--;for(;1<=s&&0<=a;s--,a--)if(o[s]!==i[a]){if(1!==s||1!==a)do{if(s--,0>--a||o[s]!==i[a]){var l="\n"+o[s].replace(" at new "," at ");return e.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",e.displayName)),l}}while(1<=s&&0<=a);break}}}finally{B=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?F(e):""}function $(e){switch(e.tag){case 5:return F(e.type);case 16:return F("Lazy");case 13:return F("Suspense");case 19:return F("SuspenseList");case 0:case 2:case 15:return z(e.type,!1);case 11:return z(e.type.render,!1);case 1:return z(e.type,!0);default:return""}}function H(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case k:return"Fragment";case S:return"Portal";case M:return"Profiler";case C:return"StrictMode";case T:return"Suspense";case D:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case E:return(e.displayName||"Context")+".Consumer";case O:return(e._context.displayName||"Context")+".Provider";case A:var t=e.render;return(e=e.displayName)||(e=""!==(e=t.displayName||t.name||"")?"ForwardRef("+e+")":"ForwardRef"),e;case _:return null!==(t=e.displayName||null)?t:H(e.type)||"Memo";case R:t=e._payload,e=e._init;try{return H(e(t))}catch(e){}}return null}function W(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=t.render).displayName||e.name||"",t.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return H(t);case 8:return t===C?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t}return null}function U(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function V(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function q(e){e._valueTracker||(e._valueTracker=function(e){var t=V(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var o=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return o.call(this)},set:function(e){r=""+e,i.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function K(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=V(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function Y(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function G(e,t){var n=t.checked;return j({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function J(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=U(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function Q(e,t){null!=(t=t.checked)&&b(e,"checked",t,!1)}function Z(e,t){Q(e,t);var n=U(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?ee(e,t.type,n):t.hasOwnProperty("defaultValue")&&ee(e,t.type,U(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function X(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function ee(e,t,n){"number"===t&&Y(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var te=Array.isArray;function ne(e,t,n,r){if(e=e.options,t){t={};for(var o=0;o<n.length;o++)t["$"+n[o]]=!0;for(n=0;n<e.length;n++)o=t.hasOwnProperty("$"+e[n].value),e[n].selected!==o&&(e[n].selected=o),o&&r&&(e[n].defaultSelected=!0)}else{for(n=""+U(n),t=null,o=0;o<e.length;o++){if(e[o].value===n)return e[o].selected=!0,void(r&&(e[o].defaultSelected=!0));null!==t||e[o].disabled||(t=e[o])}null!==t&&(t.selected=!0)}}function re(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(i(91));return j({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(i(92));if(te(n)){if(1<n.length)throw Error(i(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:U(n)}}function ie(e,t){var n=U(t.value),r=U(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function se(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}function ae(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function le(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?ae(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var ce,ue,he=(ue=function(e,t){if("http://www.w3.org/2000/svg"!==e.namespaceURI||"innerHTML"in e)e.innerHTML=t;else{for((ce=ce||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=ce.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}},"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(e,t,n,r){MSApp.execUnsafeLocalFunction((function(){return ue(e,t)}))}:ue);function de(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var fe={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},pe=["Webkit","ms","Moz","O"];function me(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||fe.hasOwnProperty(e)&&fe[e]?(""+t).trim():t+"px"}function ge(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),o=me(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,o):e[n]=o}}Object.keys(fe).forEach((function(e){pe.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),fe[t]=fe[e]}))}));var ye=j({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ve(e,t){if(t){if(ye[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(i(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(i(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(i(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(i(62))}}function be(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var we=null;function xe(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Se=null,ke=null,Ce=null;function Me(e){if(e=yo(e)){if("function"!=typeof Se)throw Error(i(280));var t=e.stateNode;t&&(t=bo(t),Se(e.stateNode,e.type,t))}}function Oe(e){ke?Ce?Ce.push(e):Ce=[e]:ke=e}function Ee(){if(ke){var e=ke,t=Ce;if(Ce=ke=null,Me(e),t)for(e=0;e<t.length;e++)Me(t[e])}}function Ae(e,t){return e(t)}function Te(){}var De=!1;function _e(e,t,n){if(De)return e(t,n);De=!0;try{return Ae(e,t,n)}finally{De=!1,(null!==ke||null!==Ce)&&(Te(),Ee())}}function Re(e,t){var n=e.stateNode;if(null===n)return null;var r=bo(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(i(231,t,typeof n));return n}var Ne=!1;if(u)try{var Pe={};Object.defineProperty(Pe,"passive",{get:function(){Ne=!0}}),window.addEventListener("test",Pe,Pe),window.removeEventListener("test",Pe,Pe)}catch(ue){Ne=!1}function Ie(e,t,n,r,o,i,s,a,l){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(e){this.onError(e)}}var Le=!1,je=null,Fe=!1,Be=null,ze={onError:function(e){Le=!0,je=e}};function $e(e,t,n,r,o,i,s,a,l){Le=!1,je=null,Ie.apply(ze,arguments)}function He(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(4098&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function We(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&null!==(e=e.alternate)&&(t=e.memoizedState),null!==t)return t.dehydrated}return null}function Ue(e){if(He(e)!==e)throw Error(i(188))}function Ve(e){return null!==(e=function(e){var t=e.alternate;if(!t){if(null===(t=He(e)))throw Error(i(188));return t!==e?null:e}for(var n=e,r=t;;){var o=n.return;if(null===o)break;var s=o.alternate;if(null===s){if(null!==(r=o.return)){n=r;continue}break}if(o.child===s.child){for(s=o.child;s;){if(s===n)return Ue(o),e;if(s===r)return Ue(o),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=o,r=s;else{for(var a=!1,l=o.child;l;){if(l===n){a=!0,n=o,r=s;break}if(l===r){a=!0,r=o,n=s;break}l=l.sibling}if(!a){for(l=s.child;l;){if(l===n){a=!0,n=s,r=o;break}if(l===r){a=!0,r=s,n=o;break}l=l.sibling}if(!a)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(3!==n.tag)throw Error(i(188));return n.stateNode.current===n?e:t}(e))?qe(e):null}function qe(e){if(5===e.tag||6===e.tag)return e;for(e=e.child;null!==e;){var t=qe(e);if(null!==t)return t;e=e.sibling}return null}var Ke=o.unstable_scheduleCallback,Ye=o.unstable_cancelCallback,Ge=o.unstable_shouldYield,Je=o.unstable_requestPaint,Qe=o.unstable_now,Ze=o.unstable_getCurrentPriorityLevel,Xe=o.unstable_ImmediatePriority,et=o.unstable_UserBlockingPriority,tt=o.unstable_NormalPriority,nt=o.unstable_LowPriority,rt=o.unstable_IdlePriority,ot=null,it=null,st=Math.clz32?Math.clz32:function(e){return 0==(e>>>=0)?32:31-(at(e)/lt|0)|0},at=Math.log,lt=Math.LN2,ct=64,ut=4194304;function ht(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function dt(e,t){var n=e.pendingLanes;if(0===n)return 0;var r=0,o=e.suspendedLanes,i=e.pingedLanes,s=268435455&n;if(0!==s){var a=s&~o;0!==a?r=ht(a):0!=(i&=s)&&(r=ht(i))}else 0!=(s=n&~o)?r=ht(s):0!==i&&(r=ht(i));if(0===r)return 0;if(0!==t&&t!==r&&0==(t&o)&&((o=r&-r)>=(i=t&-t)||16===o&&0!=(4194240&i)))return t;if(0!=(4&r)&&(r|=16&n),0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)o=1<<(n=31-st(t)),r|=e[n],t&=~o;return r}function ft(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;default:return-1}}function pt(e){return 0!=(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function mt(){var e=ct;return 0==(4194240&(ct<<=1))&&(ct=64),e}function gt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function yt(e,t,n){e.pendingLanes|=t,536870912!==t&&(e.suspendedLanes=0,e.pingedLanes=0),(e=e.eventTimes)[t=31-st(t)]=n}function vt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-st(n),o=1<<r;o&t|e[r]&t&&(e[r]|=t),n&=~o}}var bt=0;function wt(e){return 1<(e&=-e)?4<e?0!=(268435455&e)?16:536870912:4:1}var xt,St,kt,Ct,Mt,Ot=!1,Et=[],At=null,Tt=null,Dt=null,_t=new Map,Rt=new Map,Nt=[],Pt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function It(e,t){switch(e){case"focusin":case"focusout":At=null;break;case"dragenter":case"dragleave":Tt=null;break;case"mouseover":case"mouseout":Dt=null;break;case"pointerover":case"pointerout":_t.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Rt.delete(t.pointerId)}}function Lt(e,t,n,r,o,i){return null===e||e.nativeEvent!==i?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:i,targetContainers:[o]},null!==t&&null!==(t=yo(t))&&St(t),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==o&&-1===t.indexOf(o)&&t.push(o),e)}function jt(e){var t=go(e.target);if(null!==t){var n=He(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=We(n)))return e.blockedOn=t,void Mt(e.priority,(function(){kt(n)}))}else if(3===t&&n.stateNode.current.memoizedState.isDehydrated)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Ft(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Gt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=yo(n))&&St(t),e.blockedOn=n,!1;var r=new(n=e.nativeEvent).constructor(n.type,n);we=r,n.target.dispatchEvent(r),we=null,t.shift()}return!0}function Bt(e,t,n){Ft(e)&&n.delete(t)}function zt(){Ot=!1,null!==At&&Ft(At)&&(At=null),null!==Tt&&Ft(Tt)&&(Tt=null),null!==Dt&&Ft(Dt)&&(Dt=null),_t.forEach(Bt),Rt.forEach(Bt)}function $t(e,t){e.blockedOn===t&&(e.blockedOn=null,Ot||(Ot=!0,o.unstable_scheduleCallback(o.unstable_NormalPriority,zt)))}function Ht(e){function t(t){return $t(t,e)}if(0<Et.length){$t(Et[0],e);for(var n=1;n<Et.length;n++){var r=Et[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==At&&$t(At,e),null!==Tt&&$t(Tt,e),null!==Dt&&$t(Dt,e),_t.forEach(t),Rt.forEach(t),n=0;n<Nt.length;n++)(r=Nt[n]).blockedOn===e&&(r.blockedOn=null);for(;0<Nt.length&&null===(n=Nt[0]).blockedOn;)jt(n),null===n.blockedOn&&Nt.shift()}var Wt=w.ReactCurrentBatchConfig,Ut=!0;function Vt(e,t,n,r){var o=bt,i=Wt.transition;Wt.transition=null;try{bt=1,Kt(e,t,n,r)}finally{bt=o,Wt.transition=i}}function qt(e,t,n,r){var o=bt,i=Wt.transition;Wt.transition=null;try{bt=4,Kt(e,t,n,r)}finally{bt=o,Wt.transition=i}}function Kt(e,t,n,r){if(Ut){var o=Gt(e,t,n,r);if(null===o)$r(e,t,r,Yt,n),It(e,r);else if(function(e,t,n,r,o){switch(t){case"focusin":return At=Lt(At,e,t,n,r,o),!0;case"dragenter":return Tt=Lt(Tt,e,t,n,r,o),!0;case"mouseover":return Dt=Lt(Dt,e,t,n,r,o),!0;case"pointerover":var i=o.pointerId;return _t.set(i,Lt(_t.get(i)||null,e,t,n,r,o)),!0;case"gotpointercapture":return i=o.pointerId,Rt.set(i,Lt(Rt.get(i)||null,e,t,n,r,o)),!0}return!1}(o,e,t,n,r))r.stopPropagation();else if(It(e,r),4&t&&-1<Pt.indexOf(e)){for(;null!==o;){var i=yo(o);if(null!==i&&xt(i),null===(i=Gt(e,t,n,r))&&$r(e,t,r,Yt,n),i===o)break;o=i}null!==o&&r.stopPropagation()}else $r(e,t,r,null,n)}}var Yt=null;function Gt(e,t,n,r){if(Yt=null,null!==(e=go(e=xe(r))))if(null===(t=He(e)))e=null;else if(13===(n=t.tag)){if(null!==(e=We(t)))return e;e=null}else if(3===n){if(t.stateNode.current.memoizedState.isDehydrated)return 3===t.tag?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Yt=e,null}function Jt(e){switch(e){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(Ze()){case Xe:return 1;case et:return 4;case tt:case nt:return 16;case rt:return 536870912;default:return 16}default:return 16}}var Qt=null,Zt=null,Xt=null;function en(){if(Xt)return Xt;var e,t,n=Zt,r=n.length,o="value"in Qt?Qt.value:Qt.textContent,i=o.length;for(e=0;e<r&&n[e]===o[e];e++);var s=r-e;for(t=1;t<=s&&n[r-t]===o[i-t];t++);return Xt=o.slice(e,1<t?1-t:void 0)}function tn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function nn(){return!0}function rn(){return!1}function on(e){function t(t,n,r,o,i){for(var s in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=o,this.target=i,this.currentTarget=null,e)e.hasOwnProperty(s)&&(t=e[s],this[s]=t?t(o):o[s]);return this.isDefaultPrevented=(null!=o.defaultPrevented?o.defaultPrevented:!1===o.returnValue)?nn:rn,this.isPropagationStopped=rn,this}return j(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=nn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=nn)},persist:function(){},isPersistent:nn}),t}var sn,an,ln,cn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},un=on(cn),hn=j({},cn,{view:0,detail:0}),dn=on(hn),fn=j({},hn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Cn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==ln&&(ln&&"mousemove"===e.type?(sn=e.screenX-ln.screenX,an=e.screenY-ln.screenY):an=sn=0,ln=e),sn)},movementY:function(e){return"movementY"in e?e.movementY:an}}),pn=on(fn),mn=on(j({},fn,{dataTransfer:0})),gn=on(j({},hn,{relatedTarget:0})),yn=on(j({},cn,{animationName:0,elapsedTime:0,pseudoElement:0})),vn=on(j({},cn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}})),bn=on(j({},cn,{data:0})),wn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},xn={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Sn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function kn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Sn[e])&&!!t[e]}function Cn(){return kn}var Mn=on(j({},hn,{key:function(e){if(e.key){var t=wn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=tn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?xn[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Cn,charCode:function(e){return"keypress"===e.type?tn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?tn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}})),On=on(j({},fn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),En=on(j({},hn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Cn})),An=on(j({},cn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Tn=on(j({},fn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Dn=[9,13,27,32],_n=u&&"CompositionEvent"in window,Rn=null;u&&"documentMode"in document&&(Rn=document.documentMode);var Nn=u&&"TextEvent"in window&&!Rn,Pn=u&&(!_n||Rn&&8<Rn&&11>=Rn),In=String.fromCharCode(32),Ln=!1;function jn(e,t){switch(e){case"keyup":return-1!==Dn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Fn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Bn=!1,zn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function $n(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!zn[e.type]:"textarea"===t}function Hn(e,t,n,r){Oe(r),0<(t=Wr(t,"onChange")).length&&(n=new un("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Wn=null,Un=null;function Vn(e){Ir(e,0)}function qn(e){if(K(vo(e)))return e}function Kn(e,t){if("change"===e)return t}var Yn=!1;if(u){var Gn;if(u){var Jn="oninput"in document;if(!Jn){var Qn=document.createElement("div");Qn.setAttribute("oninput","return;"),Jn="function"==typeof Qn.oninput}Gn=Jn}else Gn=!1;Yn=Gn&&(!document.documentMode||9<document.documentMode)}function Zn(){Wn&&(Wn.detachEvent("onpropertychange",Xn),Un=Wn=null)}function Xn(e){if("value"===e.propertyName&&qn(Un)){var t=[];Hn(t,Un,e,xe(e)),_e(Vn,t)}}function er(e,t,n){"focusin"===e?(Zn(),Un=n,(Wn=t).attachEvent("onpropertychange",Xn)):"focusout"===e&&Zn()}function tr(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return qn(Un)}function nr(e,t){if("click"===e)return qn(t)}function rr(e,t){if("input"===e||"change"===e)return qn(t)}var or="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t};function ir(e,t){if(or(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var o=n[r];if(!h.call(t,o)||!or(e[o],t[o]))return!1}return!0}function sr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ar(e,t){var n,r=sr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=sr(r)}}function lr(e,t){return!(!e||!t)&&(e===t||(!e||3!==e.nodeType)&&(t&&3===t.nodeType?lr(e,t.parentNode):"contains"in e?e.contains(t):!!e.compareDocumentPosition&&!!(16&e.compareDocumentPosition(t))))}function cr(){for(var e=window,t=Y();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(e){n=!1}if(!n)break;t=Y((e=t.contentWindow).document)}return t}function ur(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}function hr(e){var t=cr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&lr(n.ownerDocument.documentElement,n)){if(null!==r&&ur(n))if(t=r.start,void 0===(e=r.end)&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if((e=(t=n.ownerDocument||document)&&t.defaultView||window).getSelection){e=e.getSelection();var o=n.textContent.length,i=Math.min(r.start,o);r=void 0===r.end?i:Math.min(r.end,o),!e.extend&&i>r&&(o=r,r=i,i=o),o=ar(n,i);var s=ar(n,r);o&&s&&(1!==e.rangeCount||e.anchorNode!==o.node||e.anchorOffset!==o.offset||e.focusNode!==s.node||e.focusOffset!==s.offset)&&((t=t.createRange()).setStart(o.node,o.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(s.node,s.offset)):(t.setEnd(s.node,s.offset),e.addRange(t)))}for(t=[],e=n;e=e.parentNode;)1===e.nodeType&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for("function"==typeof n.focus&&n.focus(),n=0;n<t.length;n++)(e=t[n]).element.scrollLeft=e.left,e.element.scrollTop=e.top}}var dr=u&&"documentMode"in document&&11>=document.documentMode,fr=null,pr=null,mr=null,gr=!1;function yr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;gr||null==fr||fr!==Y(r)||(r="selectionStart"in(r=fr)&&ur(r)?{start:r.selectionStart,end:r.selectionEnd}:{anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},mr&&ir(mr,r)||(mr=r,0<(r=Wr(pr,"onSelect")).length&&(t=new un("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=fr)))}function vr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var br={animationend:vr("Animation","AnimationEnd"),animationiteration:vr("Animation","AnimationIteration"),animationstart:vr("Animation","AnimationStart"),transitionend:vr("Transition","TransitionEnd")},wr={},xr={};function Sr(e){if(wr[e])return wr[e];if(!br[e])return e;var t,n=br[e];for(t in n)if(n.hasOwnProperty(t)&&t in xr)return wr[e]=n[t];return e}u&&(xr=document.createElement("div").style,"AnimationEvent"in window||(delete br.animationend.animation,delete br.animationiteration.animation,delete br.animationstart.animation),"TransitionEvent"in window||delete br.transitionend.transition);var kr=Sr("animationend"),Cr=Sr("animationiteration"),Mr=Sr("animationstart"),Or=Sr("transitionend"),Er=new Map,Ar="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Tr(e,t){Er.set(e,t),l(t,[e])}for(var Dr=0;Dr<Ar.length;Dr++){var _r=Ar[Dr];Tr(_r.toLowerCase(),"on"+(_r[0].toUpperCase()+_r.slice(1)))}Tr(kr,"onAnimationEnd"),Tr(Cr,"onAnimationIteration"),Tr(Mr,"onAnimationStart"),Tr("dblclick","onDoubleClick"),Tr("focusin","onFocus"),Tr("focusout","onBlur"),Tr(Or,"onTransitionEnd"),c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),l("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),l("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),l("onBeforeInput",["compositionend","keypress","textInput","paste"]),l("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),l("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Rr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Nr=new Set("cancel close invalid load scroll toggle".split(" ").concat(Rr));function Pr(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,o,s,a,l,c){if($e.apply(this,arguments),Le){if(!Le)throw Error(i(198));var u=je;Le=!1,je=null,Fe||(Fe=!0,Be=u)}}(r,t,void 0,e),e.currentTarget=null}function Ir(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var r=e[n],o=r.event;r=r.listeners;e:{var i=void 0;if(t)for(var s=r.length-1;0<=s;s--){var a=r[s],l=a.instance,c=a.currentTarget;if(a=a.listener,l!==i&&o.isPropagationStopped())break e;Pr(o,a,c),i=l}else for(s=0;s<r.length;s++){if(l=(a=r[s]).instance,c=a.currentTarget,a=a.listener,l!==i&&o.isPropagationStopped())break e;Pr(o,a,c),i=l}}}if(Fe)throw e=Be,Fe=!1,Be=null,e}function Lr(e,t){var n=t[fo];void 0===n&&(n=t[fo]=new Set);var r=e+"__bubble";n.has(r)||(zr(t,e,2,!1),n.add(r))}function jr(e,t,n){var r=0;t&&(r|=4),zr(n,e,r,t)}var Fr="_reactListening"+Math.random().toString(36).slice(2);function Br(e){if(!e[Fr]){e[Fr]=!0,s.forEach((function(t){"selectionchange"!==t&&(Nr.has(t)||jr(t,!1,e),jr(t,!0,e))}));var t=9===e.nodeType?e:e.ownerDocument;null===t||t[Fr]||(t[Fr]=!0,jr("selectionchange",!1,t))}}function zr(e,t,n,r){switch(Jt(t)){case 1:var o=Vt;break;case 4:o=qt;break;default:o=Kt}n=o.bind(null,t,n,e),o=void 0,!Ne||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(o=!0),r?void 0!==o?e.addEventListener(t,n,{capture:!0,passive:o}):e.addEventListener(t,n,!0):void 0!==o?e.addEventListener(t,n,{passive:o}):e.addEventListener(t,n,!1)}function $r(e,t,n,r,o){var i=r;if(0==(1&t)&&0==(2&t)&&null!==r)e:for(;;){if(null===r)return;var s=r.tag;if(3===s||4===s){var a=r.stateNode.containerInfo;if(a===o||8===a.nodeType&&a.parentNode===o)break;if(4===s)for(s=r.return;null!==s;){var l=s.tag;if((3===l||4===l)&&((l=s.stateNode.containerInfo)===o||8===l.nodeType&&l.parentNode===o))return;s=s.return}for(;null!==a;){if(null===(s=go(a)))return;if(5===(l=s.tag)||6===l){r=i=s;continue e}a=a.parentNode}}r=r.return}_e((function(){var r=i,o=xe(n),s=[];e:{var a=Er.get(e);if(void 0!==a){var l=un,c=e;switch(e){case"keypress":if(0===tn(n))break e;case"keydown":case"keyup":l=Mn;break;case"focusin":c="focus",l=gn;break;case"focusout":c="blur",l=gn;break;case"beforeblur":case"afterblur":l=gn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":l=pn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":l=mn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":l=En;break;case kr:case Cr:case Mr:l=yn;break;case Or:l=An;break;case"scroll":l=dn;break;case"wheel":l=Tn;break;case"copy":case"cut":case"paste":l=vn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":l=On}var u=0!=(4&t),h=!u&&"scroll"===e,d=u?null!==a?a+"Capture":null:a;u=[];for(var f,p=r;null!==p;){var m=(f=p).stateNode;if(5===f.tag&&null!==m&&(f=m,null!==d&&null!=(m=Re(p,d))&&u.push(Hr(p,m,f))),h)break;p=p.return}0<u.length&&(a=new l(a,c,null,n,o),s.push({event:a,listeners:u}))}}if(0==(7&t)){if(l="mouseout"===e||"pointerout"===e,(!(a="mouseover"===e||"pointerover"===e)||n===we||!(c=n.relatedTarget||n.fromElement)||!go(c)&&!c[ho])&&(l||a)&&(a=o.window===o?o:(a=o.ownerDocument)?a.defaultView||a.parentWindow:window,l?(l=r,null!==(c=(c=n.relatedTarget||n.toElement)?go(c):null)&&(c!==(h=He(c))||5!==c.tag&&6!==c.tag)&&(c=null)):(l=null,c=r),l!==c)){if(u=pn,m="onMouseLeave",d="onMouseEnter",p="mouse","pointerout"!==e&&"pointerover"!==e||(u=On,m="onPointerLeave",d="onPointerEnter",p="pointer"),h=null==l?a:vo(l),f=null==c?a:vo(c),(a=new u(m,p+"leave",l,n,o)).target=h,a.relatedTarget=f,m=null,go(o)===r&&((u=new u(d,p+"enter",c,n,o)).target=f,u.relatedTarget=h,m=u),h=m,l&&c)e:{for(d=c,p=0,f=u=l;f;f=Ur(f))p++;for(f=0,m=d;m;m=Ur(m))f++;for(;0<p-f;)u=Ur(u),p--;for(;0<f-p;)d=Ur(d),f--;for(;p--;){if(u===d||null!==d&&u===d.alternate)break e;u=Ur(u),d=Ur(d)}u=null}else u=null;null!==l&&Vr(s,a,l,u,!1),null!==c&&null!==h&&Vr(s,h,c,u,!0)}if("select"===(l=(a=r?vo(r):window).nodeName&&a.nodeName.toLowerCase())||"input"===l&&"file"===a.type)var g=Kn;else if($n(a))if(Yn)g=rr;else{g=tr;var y=er}else(l=a.nodeName)&&"input"===l.toLowerCase()&&("checkbox"===a.type||"radio"===a.type)&&(g=nr);switch(g&&(g=g(e,r))?Hn(s,g,n,o):(y&&y(e,a,r),"focusout"===e&&(y=a._wrapperState)&&y.controlled&&"number"===a.type&&ee(a,"number",a.value)),y=r?vo(r):window,e){case"focusin":($n(y)||"true"===y.contentEditable)&&(fr=y,pr=r,mr=null);break;case"focusout":mr=pr=fr=null;break;case"mousedown":gr=!0;break;case"contextmenu":case"mouseup":case"dragend":gr=!1,yr(s,n,o);break;case"selectionchange":if(dr)break;case"keydown":case"keyup":yr(s,n,o)}var v;if(_n)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Bn?jn(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(Pn&&"ko"!==n.locale&&(Bn||"onCompositionStart"!==b?"onCompositionEnd"===b&&Bn&&(v=en()):(Zt="value"in(Qt=o)?Qt.value:Qt.textContent,Bn=!0)),0<(y=Wr(r,b)).length&&(b=new bn(b,e,null,n,o),s.push({event:b,listeners:y}),(v||null!==(v=Fn(n)))&&(b.data=v))),(v=Nn?function(e,t){switch(e){case"compositionend":return Fn(t);case"keypress":return 32!==t.which?null:(Ln=!0,In);case"textInput":return(e=t.data)===In&&Ln?null:e;default:return null}}(e,n):function(e,t){if(Bn)return"compositionend"===e||!_n&&jn(e,t)?(e=en(),Xt=Zt=Qt=null,Bn=!1,e):null;switch(e){case"paste":default:return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Pn&&"ko"!==t.locale?null:t.data}}(e,n))&&0<(r=Wr(r,"onBeforeInput")).length&&(o=new bn("onBeforeInput","beforeinput",null,n,o),s.push({event:o,listeners:r}),o.data=v)}Ir(s,t)}))}function Hr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Wr(e,t){for(var n=t+"Capture",r=[];null!==e;){var o=e,i=o.stateNode;5===o.tag&&null!==i&&(o=i,null!=(i=Re(e,n))&&r.unshift(Hr(e,i,o)),null!=(i=Re(e,t))&&r.push(Hr(e,i,o))),e=e.return}return r}function Ur(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Vr(e,t,n,r,o){for(var i=t._reactName,s=[];null!==n&&n!==r;){var a=n,l=a.alternate,c=a.stateNode;if(null!==l&&l===r)break;5===a.tag&&null!==c&&(a=c,o?null!=(l=Re(n,i))&&s.unshift(Hr(n,l,a)):o||null!=(l=Re(n,i))&&s.push(Hr(n,l,a))),n=n.return}0!==s.length&&e.push({event:t,listeners:s})}var qr=/\r\n?/g,Kr=/\u0000|\uFFFD/g;function Yr(e){return("string"==typeof e?e:""+e).replace(qr,"\n").replace(Kr,"")}function Gr(e,t,n){if(t=Yr(t),Yr(e)!==t&&n)throw Error(i(425))}function Jr(){}var Qr=null,Zr=null;function Xr(e,t){return"textarea"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var eo="function"==typeof setTimeout?setTimeout:void 0,to="function"==typeof clearTimeout?clearTimeout:void 0,no="function"==typeof Promise?Promise:void 0,ro="function"==typeof queueMicrotask?queueMicrotask:void 0!==no?function(e){return no.resolve(null).then(e).catch(oo)}:eo;function oo(e){setTimeout((function(){throw e}))}function io(e,t){var n=t,r=0;do{var o=n.nextSibling;if(e.removeChild(n),o&&8===o.nodeType)if("/$"===(n=o.data)){if(0===r)return e.removeChild(o),void Ht(t);r--}else"$"!==n&&"$?"!==n&&"$!"!==n||r++;n=o}while(n);Ht(t)}function so(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break;if(8===t){if("$"===(t=e.data)||"$!"===t||"$?"===t)break;if("/$"===t)return null}}return e}function ao(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var lo=Math.random().toString(36).slice(2),co="__reactFiber$"+lo,uo="__reactProps$"+lo,ho="__reactContainer$"+lo,fo="__reactEvents$"+lo,po="__reactListeners$"+lo,mo="__reactHandles$"+lo;function go(e){var t=e[co];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ho]||n[co]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=ao(e);null!==e;){if(n=e[co])return n;e=ao(e)}return t}n=(e=n).parentNode}return null}function yo(e){return!(e=e[co]||e[ho])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function vo(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(i(33))}function bo(e){return e[uo]||null}var wo=[],xo=-1;function So(e){return{current:e}}function ko(e){0>xo||(e.current=wo[xo],wo[xo]=null,xo--)}function Co(e,t){xo++,wo[xo]=e.current,e.current=t}var Mo={},Oo=So(Mo),Eo=So(!1),Ao=Mo;function To(e,t){var n=e.type.contextTypes;if(!n)return Mo;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var o,i={};for(o in n)i[o]=t[o];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Do(e){return null!=e.childContextTypes}function _o(){ko(Eo),ko(Oo)}function Ro(e,t,n){if(Oo.current!==Mo)throw Error(i(168));Co(Oo,t),Co(Eo,n)}function No(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var o in r=r.getChildContext())if(!(o in t))throw Error(i(108,W(e)||"Unknown",o));return j({},n,r)}function Po(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Mo,Ao=Oo.current,Co(Oo,e),Co(Eo,Eo.current),!0}function Io(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=No(e,t,Ao),r.__reactInternalMemoizedMergedChildContext=e,ko(Eo),ko(Oo),Co(Oo,e)):ko(Eo),Co(Eo,n)}var Lo=null,jo=!1,Fo=!1;function Bo(e){null===Lo?Lo=[e]:Lo.push(e)}function zo(){if(!Fo&&null!==Lo){Fo=!0;var e=0,t=bt;try{var n=Lo;for(bt=1;e<n.length;e++){var r=n[e];do{r=r(!0)}while(null!==r)}Lo=null,jo=!1}catch(t){throw null!==Lo&&(Lo=Lo.slice(e+1)),Ke(Xe,zo),t}finally{bt=t,Fo=!1}}return null}var $o=[],Ho=0,Wo=null,Uo=0,Vo=[],qo=0,Ko=null,Yo=1,Go="";function Jo(e,t){$o[Ho++]=Uo,$o[Ho++]=Wo,Wo=e,Uo=t}function Qo(e,t,n){Vo[qo++]=Yo,Vo[qo++]=Go,Vo[qo++]=Ko,Ko=e;var r=Yo;e=Go;var o=32-st(r)-1;r&=~(1<<o),n+=1;var i=32-st(t)+o;if(30<i){var s=o-o%5;i=(r&(1<<s)-1).toString(32),r>>=s,o-=s,Yo=1<<32-st(t)+o|n<<o|r,Go=i+e}else Yo=1<<i|n<<o|r,Go=e}function Zo(e){null!==e.return&&(Jo(e,1),Qo(e,1,0))}function Xo(e){for(;e===Wo;)Wo=$o[--Ho],$o[Ho]=null,Uo=$o[--Ho],$o[Ho]=null;for(;e===Ko;)Ko=Vo[--qo],Vo[qo]=null,Go=Vo[--qo],Vo[qo]=null,Yo=Vo[--qo],Vo[qo]=null}var ei=null,ti=null,ni=!1,ri=null;function oi(e,t){var n=Tc(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,null===(t=e.deletions)?(e.deletions=[n],e.flags|=16):t.push(n)}function ii(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,ei=e,ti=so(t.firstChild),!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,ei=e,ti=null,!0);case 13:return null!==(t=8!==t.nodeType?null:t)&&(n=null!==Ko?{id:Yo,overflow:Go}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},(n=Tc(18,null,null,0)).stateNode=t,n.return=e,e.child=n,ei=e,ti=null,!0);default:return!1}}function si(e){return 0!=(1&e.mode)&&0==(128&e.flags)}function ai(e){if(ni){var t=ti;if(t){var n=t;if(!ii(e,t)){if(si(e))throw Error(i(418));t=so(n.nextSibling);var r=ei;t&&ii(e,t)?oi(r,n):(e.flags=-4097&e.flags|2,ni=!1,ei=e)}}else{if(si(e))throw Error(i(418));e.flags=-4097&e.flags|2,ni=!1,ei=e}}}function li(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ei=e}function ci(e){if(e!==ei)return!1;if(!ni)return li(e),ni=!0,!1;var t;if((t=3!==e.tag)&&!(t=5!==e.tag)&&(t="head"!==(t=e.type)&&"body"!==t&&!Xr(e.type,e.memoizedProps)),t&&(t=ti)){if(si(e))throw ui(),Error(i(418));for(;t;)oi(e,t),t=so(t.nextSibling)}if(li(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(i(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){ti=so(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}ti=null}}else ti=ei?so(e.stateNode.nextSibling):null;return!0}function ui(){for(var e=ti;e;)e=so(e.nextSibling)}function hi(){ti=ei=null,ni=!1}function di(e){null===ri?ri=[e]:ri.push(e)}var fi=w.ReactCurrentBatchConfig;function pi(e,t){if(e&&e.defaultProps){for(var n in t=j({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var mi=So(null),gi=null,yi=null,vi=null;function bi(){vi=yi=gi=null}function wi(e){var t=mi.current;ko(mi),e._currentValue=t}function xi(e,t,n){for(;null!==e;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,null!==r&&(r.childLanes|=t)):null!==r&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Si(e,t){gi=e,vi=yi=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(ya=!0),e.firstContext=null)}function ki(e){var t=e._currentValue;if(vi!==e)if(e={context:e,memoizedValue:t,next:null},null===yi){if(null===gi)throw Error(i(308));yi=e,gi.dependencies={lanes:0,firstContext:e}}else yi=yi.next=e;return t}var Ci=null;function Mi(e){null===Ci?Ci=[e]:Ci.push(e)}function Oi(e,t,n,r){var o=t.interleaved;return null===o?(n.next=n,Mi(t)):(n.next=o.next,o.next=n),t.interleaved=n,Ei(e,r)}function Ei(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}var Ai=!1;function Ti(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Di(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function _i(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Ri(e,t,n){var r=e.updateQueue;if(null===r)return null;if(r=r.shared,0!=(2&Ol)){var o=r.pending;return null===o?t.next=t:(t.next=o.next,o.next=t),r.pending=t,Ei(e,n)}return null===(o=r.interleaved)?(t.next=t,Mi(r)):(t.next=o.next,o.next=t),r.interleaved=t,Ei(e,n)}function Ni(e,t,n){if(null!==(t=t.updateQueue)&&(t=t.shared,0!=(4194240&n))){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,vt(e,n)}}function Pi(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var o=null,i=null;if(null!==(n=n.firstBaseUpdate)){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===i?o=i=s:i=i.next=s,n=n.next}while(null!==n);null===i?o=i=t:i=i.next=t}else o=i=t;return n={baseState:r.baseState,firstBaseUpdate:o,lastBaseUpdate:i,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function Ii(e,t,n,r){var o=e.updateQueue;Ai=!1;var i=o.firstBaseUpdate,s=o.lastBaseUpdate,a=o.shared.pending;if(null!==a){o.shared.pending=null;var l=a,c=l.next;l.next=null,null===s?i=c:s.next=c,s=l;var u=e.alternate;null!==u&&(a=(u=u.updateQueue).lastBaseUpdate)!==s&&(null===a?u.firstBaseUpdate=c:a.next=c,u.lastBaseUpdate=l)}if(null!==i){var h=o.baseState;for(s=0,u=c=l=null,a=i;;){var d=a.lane,f=a.eventTime;if((r&d)===d){null!==u&&(u=u.next={eventTime:f,lane:0,tag:a.tag,payload:a.payload,callback:a.callback,next:null});e:{var p=e,m=a;switch(d=t,f=n,m.tag){case 1:if("function"==typeof(p=m.payload)){h=p.call(f,h,d);break e}h=p;break e;case 3:p.flags=-65537&p.flags|128;case 0:if(null==(d="function"==typeof(p=m.payload)?p.call(f,h,d):p))break e;h=j({},h,d);break e;case 2:Ai=!0}}null!==a.callback&&0!==a.lane&&(e.flags|=64,null===(d=o.effects)?o.effects=[a]:d.push(a))}else f={eventTime:f,lane:d,tag:a.tag,payload:a.payload,callback:a.callback,next:null},null===u?(c=u=f,l=h):u=u.next=f,s|=d;if(null===(a=a.next)){if(null===(a=o.shared.pending))break;a=(d=a).next,d.next=null,o.lastBaseUpdate=d,o.shared.pending=null}}if(null===u&&(l=h),o.baseState=l,o.firstBaseUpdate=c,o.lastBaseUpdate=u,null!==(t=o.shared.interleaved)){o=t;do{s|=o.lane,o=o.next}while(o!==t)}else null===i&&(o.shared.lanes=0);Pl|=s,e.lanes=s,e.memoizedState=h}}function Li(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],o=r.callback;if(null!==o){if(r.callback=null,r=n,"function"!=typeof o)throw Error(i(191,o));o.call(r)}}}var ji=(new r.Component).refs;function Fi(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:j({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var Bi={isMounted:function(e){return!!(e=e._reactInternals)&&He(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Zl(),o=Xl(e),i=_i(r,o);i.payload=t,null!=n&&(i.callback=n),null!==(t=Ri(e,i,o))&&(ec(t,e,o,r),Ni(t,e,o))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Zl(),o=Xl(e),i=_i(r,o);i.tag=1,i.payload=t,null!=n&&(i.callback=n),null!==(t=Ri(e,i,o))&&(ec(t,e,o,r),Ni(t,e,o))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Zl(),r=Xl(e),o=_i(n,r);o.tag=2,null!=t&&(o.callback=t),null!==(t=Ri(e,o,r))&&(ec(t,e,r,n),Ni(t,e,r))}};function zi(e,t,n,r,o,i,s){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,i,s):!(t.prototype&&t.prototype.isPureReactComponent&&ir(n,r)&&ir(o,i))}function $i(e,t,n){var r=!1,o=Mo,i=t.contextType;return"object"==typeof i&&null!==i?i=ki(i):(o=Do(t)?Ao:Oo.current,i=(r=null!=(r=t.contextTypes))?To(e,o):Mo),t=new t(n,i),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=Bi,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=o,e.__reactInternalMemoizedMaskedChildContext=i),t}function Hi(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Bi.enqueueReplaceState(t,t.state,null)}function Wi(e,t,n,r){var o=e.stateNode;o.props=n,o.state=e.memoizedState,o.refs=ji,Ti(e);var i=t.contextType;"object"==typeof i&&null!==i?o.context=ki(i):(i=Do(t)?Ao:Oo.current,o.context=To(e,i)),o.state=e.memoizedState,"function"==typeof(i=t.getDerivedStateFromProps)&&(Fi(e,t,i,n),o.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof o.getSnapshotBeforeUpdate||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||(t=o.state,"function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount(),t!==o.state&&Bi.enqueueReplaceState(o,o.state,null),Ii(e,n,o,r),o.state=e.memoizedState),"function"==typeof o.componentDidMount&&(e.flags|=4194308)}function Ui(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var o=r,s=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===s?t.ref:(t=function(e){var t=o.refs;t===ji&&(t=o.refs={}),null===e?delete t[s]:t[s]=e},t._stringRef=s,t)}if("string"!=typeof e)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Vi(e,t){throw e=Object.prototype.toString.call(t),Error(i(31,"[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function qi(e){return(0,e._init)(e._payload)}function Ki(e){function t(t,n){if(e){var r=t.deletions;null===r?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function o(e,t){return(e=_c(e,t)).index=0,e.sibling=null,e}function s(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags|=2,n):r:(t.flags|=2,n):(t.flags|=1048576,n)}function a(t){return e&&null===t.alternate&&(t.flags|=2),t}function l(e,t,n,r){return null===t||6!==t.tag?((t=Ic(n,e.mode,r)).return=e,t):((t=o(t,n)).return=e,t)}function c(e,t,n,r){var i=n.type;return i===k?h(e,t,n.props.children,r,n.key):null!==t&&(t.elementType===i||"object"==typeof i&&null!==i&&i.$$typeof===R&&qi(i)===t.type)?((r=o(t,n.props)).ref=Ui(e,t,n),r.return=e,r):((r=Rc(n.type,n.key,n.props,null,e.mode,r)).ref=Ui(e,t,n),r.return=e,r)}function u(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=Lc(n,e.mode,r)).return=e,t):((t=o(t,n.children||[])).return=e,t)}function h(e,t,n,r,i){return null===t||7!==t.tag?((t=Nc(n,e.mode,r,i)).return=e,t):((t=o(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t&&""!==t||"number"==typeof t)return(t=Ic(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case x:return(n=Rc(t.type,t.key,t.props,null,e.mode,n)).ref=Ui(e,null,t),n.return=e,n;case S:return(t=Lc(t,e.mode,n)).return=e,t;case R:return d(e,(0,t._init)(t._payload),n)}if(te(t)||I(t))return(t=Nc(t,e.mode,n,null)).return=e,t;Vi(e,t)}return null}function f(e,t,n,r){var o=null!==t?t.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==o?null:l(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case x:return n.key===o?c(e,t,n,r):null;case S:return n.key===o?u(e,t,n,r):null;case R:return f(e,t,(o=n._init)(n._payload),r)}if(te(n)||I(n))return null!==o?null:h(e,t,n,r,null);Vi(e,n)}return null}function p(e,t,n,r,o){if("string"==typeof r&&""!==r||"number"==typeof r)return l(t,e=e.get(n)||null,""+r,o);if("object"==typeof r&&null!==r){switch(r.$$typeof){case x:return c(t,e=e.get(null===r.key?n:r.key)||null,r,o);case S:return u(t,e=e.get(null===r.key?n:r.key)||null,r,o);case R:return p(e,t,n,(0,r._init)(r._payload),o)}if(te(r)||I(r))return h(t,e=e.get(n)||null,r,o,null);Vi(t,r)}return null}function m(o,i,a,l){for(var c=null,u=null,h=i,m=i=0,g=null;null!==h&&m<a.length;m++){h.index>m?(g=h,h=null):g=h.sibling;var y=f(o,h,a[m],l);if(null===y){null===h&&(h=g);break}e&&h&&null===y.alternate&&t(o,h),i=s(y,i,m),null===u?c=y:u.sibling=y,u=y,h=g}if(m===a.length)return n(o,h),ni&&Jo(o,m),c;if(null===h){for(;m<a.length;m++)null!==(h=d(o,a[m],l))&&(i=s(h,i,m),null===u?c=h:u.sibling=h,u=h);return ni&&Jo(o,m),c}for(h=r(o,h);m<a.length;m++)null!==(g=p(h,o,m,a[m],l))&&(e&&null!==g.alternate&&h.delete(null===g.key?m:g.key),i=s(g,i,m),null===u?c=g:u.sibling=g,u=g);return e&&h.forEach((function(e){return t(o,e)})),ni&&Jo(o,m),c}function g(o,a,l,c){var u=I(l);if("function"!=typeof u)throw Error(i(150));if(null==(l=u.call(l)))throw Error(i(151));for(var h=u=null,m=a,g=a=0,y=null,v=l.next();null!==m&&!v.done;g++,v=l.next()){m.index>g?(y=m,m=null):y=m.sibling;var b=f(o,m,v.value,c);if(null===b){null===m&&(m=y);break}e&&m&&null===b.alternate&&t(o,m),a=s(b,a,g),null===h?u=b:h.sibling=b,h=b,m=y}if(v.done)return n(o,m),ni&&Jo(o,g),u;if(null===m){for(;!v.done;g++,v=l.next())null!==(v=d(o,v.value,c))&&(a=s(v,a,g),null===h?u=v:h.sibling=v,h=v);return ni&&Jo(o,g),u}for(m=r(o,m);!v.done;g++,v=l.next())null!==(v=p(m,o,g,v.value,c))&&(e&&null!==v.alternate&&m.delete(null===v.key?g:v.key),a=s(v,a,g),null===h?u=v:h.sibling=v,h=v);return e&&m.forEach((function(e){return t(o,e)})),ni&&Jo(o,g),u}return function e(r,i,s,l){if("object"==typeof s&&null!==s&&s.type===k&&null===s.key&&(s=s.props.children),"object"==typeof s&&null!==s){switch(s.$$typeof){case x:e:{for(var c=s.key,u=i;null!==u;){if(u.key===c){if((c=s.type)===k){if(7===u.tag){n(r,u.sibling),(i=o(u,s.props.children)).return=r,r=i;break e}}else if(u.elementType===c||"object"==typeof c&&null!==c&&c.$$typeof===R&&qi(c)===u.type){n(r,u.sibling),(i=o(u,s.props)).ref=Ui(r,u,s),i.return=r,r=i;break e}n(r,u);break}t(r,u),u=u.sibling}s.type===k?((i=Nc(s.props.children,r.mode,l,s.key)).return=r,r=i):((l=Rc(s.type,s.key,s.props,null,r.mode,l)).ref=Ui(r,i,s),l.return=r,r=l)}return a(r);case S:e:{for(u=s.key;null!==i;){if(i.key===u){if(4===i.tag&&i.stateNode.containerInfo===s.containerInfo&&i.stateNode.implementation===s.implementation){n(r,i.sibling),(i=o(i,s.children||[])).return=r,r=i;break e}n(r,i);break}t(r,i),i=i.sibling}(i=Lc(s,r.mode,l)).return=r,r=i}return a(r);case R:return e(r,i,(u=s._init)(s._payload),l)}if(te(s))return m(r,i,s,l);if(I(s))return g(r,i,s,l);Vi(r,s)}return"string"==typeof s&&""!==s||"number"==typeof s?(s=""+s,null!==i&&6===i.tag?(n(r,i.sibling),(i=o(i,s)).return=r,r=i):(n(r,i),(i=Ic(s,r.mode,l)).return=r,r=i),a(r)):n(r,i)}}var Yi=Ki(!0),Gi=Ki(!1),Ji={},Qi=So(Ji),Zi=So(Ji),Xi=So(Ji);function es(e){if(e===Ji)throw Error(i(174));return e}function ts(e,t){switch(Co(Xi,t),Co(Zi,e),Co(Qi,Ji),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:le(null,"");break;default:t=le(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}ko(Qi),Co(Qi,t)}function ns(){ko(Qi),ko(Zi),ko(Xi)}function rs(e){es(Xi.current);var t=es(Qi.current),n=le(t,e.type);t!==n&&(Co(Zi,e),Co(Qi,n))}function os(e){Zi.current===e&&(ko(Qi),ko(Zi))}var is=So(0);function ss(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(128&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var as=[];function ls(){for(var e=0;e<as.length;e++)as[e]._workInProgressVersionPrimary=null;as.length=0}var cs=w.ReactCurrentDispatcher,us=w.ReactCurrentBatchConfig,hs=0,ds=null,fs=null,ps=null,ms=!1,gs=!1,ys=0,vs=0;function bs(){throw Error(i(321))}function ws(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!or(e[n],t[n]))return!1;return!0}function xs(e,t,n,r,o,s){if(hs=s,ds=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,cs.current=null===e||null===e.memoizedState?oa:ia,e=n(r,o),gs){s=0;do{if(gs=!1,ys=0,25<=s)throw Error(i(301));s+=1,ps=fs=null,t.updateQueue=null,cs.current=sa,e=n(r,o)}while(gs)}if(cs.current=ra,t=null!==fs&&null!==fs.next,hs=0,ps=fs=ds=null,ms=!1,t)throw Error(i(300));return e}function Ss(){var e=0!==ys;return ys=0,e}function ks(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===ps?ds.memoizedState=ps=e:ps=ps.next=e,ps}function Cs(){if(null===fs){var e=ds.alternate;e=null!==e?e.memoizedState:null}else e=fs.next;var t=null===ps?ds.memoizedState:ps.next;if(null!==t)ps=t,fs=e;else{if(null===e)throw Error(i(310));e={memoizedState:(fs=e).memoizedState,baseState:fs.baseState,baseQueue:fs.baseQueue,queue:fs.queue,next:null},null===ps?ds.memoizedState=ps=e:ps=ps.next=e}return ps}function Ms(e,t){return"function"==typeof t?t(e):t}function Os(e){var t=Cs(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=fs,o=r.baseQueue,s=n.pending;if(null!==s){if(null!==o){var a=o.next;o.next=s.next,s.next=a}r.baseQueue=o=s,n.pending=null}if(null!==o){s=o.next,r=r.baseState;var l=a=null,c=null,u=s;do{var h=u.lane;if((hs&h)===h)null!==c&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var d={lane:h,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===c?(l=c=d,a=r):c=c.next=d,ds.lanes|=h,Pl|=h}u=u.next}while(null!==u&&u!==s);null===c?a=r:c.next=l,or(r,t.memoizedState)||(ya=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=c,n.lastRenderedState=r}if(null!==(e=n.interleaved)){o=e;do{s=o.lane,ds.lanes|=s,Pl|=s,o=o.next}while(o!==e)}else null===o&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Es(e){var t=Cs(),n=t.queue;if(null===n)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,o=n.pending,s=t.memoizedState;if(null!==o){n.pending=null;var a=o=o.next;do{s=e(s,a.action),a=a.next}while(a!==o);or(s,t.memoizedState)||(ya=!0),t.memoizedState=s,null===t.baseQueue&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function As(){}function Ts(e,t){var n=ds,r=Cs(),o=t(),s=!or(r.memoizedState,o);if(s&&(r.memoizedState=o,ya=!0),r=r.queue,$s(Rs.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||null!==ps&&1&ps.memoizedState.tag){if(n.flags|=2048,Ls(9,_s.bind(null,n,r,o,t),void 0,null),null===El)throw Error(i(349));0!=(30&hs)||Ds(n,t,o)}return o}function Ds(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},null===(t=ds.updateQueue)?(t={lastEffect:null,stores:null},ds.updateQueue=t,t.stores=[e]):null===(n=t.stores)?t.stores=[e]:n.push(e)}function _s(e,t,n,r){t.value=n,t.getSnapshot=r,Ns(t)&&Ps(e)}function Rs(e,t,n){return n((function(){Ns(t)&&Ps(e)}))}function Ns(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!or(e,n)}catch(e){return!0}}function Ps(e){var t=Ei(e,1);null!==t&&ec(t,e,1,-1)}function Is(e){var t=ks();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Ms,lastRenderedState:e},t.queue=e,e=e.dispatch=Xs.bind(null,ds,e),[t.memoizedState,e]}function Ls(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=ds.updateQueue)?(t={lastEffect:null,stores:null},ds.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function js(){return Cs().memoizedState}function Fs(e,t,n,r){var o=ks();ds.flags|=e,o.memoizedState=Ls(1|t,n,void 0,void 0===r?null:r)}function Bs(e,t,n,r){var o=Cs();r=void 0===r?null:r;var i=void 0;if(null!==fs){var s=fs.memoizedState;if(i=s.destroy,null!==r&&ws(r,s.deps))return void(o.memoizedState=Ls(t,n,i,r))}ds.flags|=e,o.memoizedState=Ls(1|t,n,i,r)}function zs(e,t){return Fs(8390656,8,e,t)}function $s(e,t){return Bs(2048,8,e,t)}function Hs(e,t){return Bs(4,2,e,t)}function Ws(e,t){return Bs(4,4,e,t)}function Us(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function Vs(e,t,n){return n=null!=n?n.concat([e]):null,Bs(4,4,Us.bind(null,t,e),n)}function qs(){}function Ks(e,t){var n=Cs();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ws(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ys(e,t){var n=Cs();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&ws(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function Gs(e,t,n){return 0==(21&hs)?(e.baseState&&(e.baseState=!1,ya=!0),e.memoizedState=n):(or(n,t)||(n=mt(),ds.lanes|=n,Pl|=n,e.baseState=!0),t)}function Js(e,t){var n=bt;bt=0!==n&&4>n?n:4,e(!0);var r=us.transition;us.transition={};try{e(!1),t()}finally{bt=n,us.transition=r}}function Qs(){return Cs().memoizedState}function Zs(e,t,n){var r=Xl(e);n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},ea(e)?ta(t,n):null!==(n=Oi(e,t,n,r))&&(ec(n,e,r,Zl()),na(n,t,r))}function Xs(e,t,n){var r=Xl(e),o={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(ea(e))ta(t,o);else{var i=e.alternate;if(0===e.lanes&&(null===i||0===i.lanes)&&null!==(i=t.lastRenderedReducer))try{var s=t.lastRenderedState,a=i(s,n);if(o.hasEagerState=!0,o.eagerState=a,or(a,s)){var l=t.interleaved;return null===l?(o.next=o,Mi(t)):(o.next=l.next,l.next=o),void(t.interleaved=o)}}catch(e){}null!==(n=Oi(e,t,o,r))&&(ec(n,e,r,o=Zl()),na(n,t,r))}}function ea(e){var t=e.alternate;return e===ds||null!==t&&t===ds}function ta(e,t){gs=ms=!0;var n=e.pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function na(e,t,n){if(0!=(4194240&n)){var r=t.lanes;n|=r&=e.pendingLanes,t.lanes=n,vt(e,n)}}var ra={readContext:ki,useCallback:bs,useContext:bs,useEffect:bs,useImperativeHandle:bs,useInsertionEffect:bs,useLayoutEffect:bs,useMemo:bs,useReducer:bs,useRef:bs,useState:bs,useDebugValue:bs,useDeferredValue:bs,useTransition:bs,useMutableSource:bs,useSyncExternalStore:bs,useId:bs,unstable_isNewReconciler:!1},oa={readContext:ki,useCallback:function(e,t){return ks().memoizedState=[e,void 0===t?null:t],e},useContext:ki,useEffect:zs,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,Fs(4194308,4,Us.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Fs(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fs(4,2,e,t)},useMemo:function(e,t){var n=ks();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=ks();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Zs.bind(null,ds,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},ks().memoizedState=e},useState:Is,useDebugValue:qs,useDeferredValue:function(e){return ks().memoizedState=e},useTransition:function(){var e=Is(!1),t=e[0];return e=Js.bind(null,e[1]),ks().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=ds,o=ks();if(ni){if(void 0===n)throw Error(i(407));n=n()}else{if(n=t(),null===El)throw Error(i(349));0!=(30&hs)||Ds(r,t,n)}o.memoizedState=n;var s={value:n,getSnapshot:t};return o.queue=s,zs(Rs.bind(null,r,s,e),[e]),r.flags|=2048,Ls(9,_s.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=ks(),t=El.identifierPrefix;if(ni){var n=Go;t=":"+t+"R"+(n=(Yo&~(1<<32-st(Yo)-1)).toString(32)+n),0<(n=ys++)&&(t+="H"+n.toString(32)),t+=":"}else t=":"+t+"r"+(n=vs++).toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},ia={readContext:ki,useCallback:Ks,useContext:ki,useEffect:$s,useImperativeHandle:Vs,useInsertionEffect:Hs,useLayoutEffect:Ws,useMemo:Ys,useReducer:Os,useRef:js,useState:function(){return Os(Ms)},useDebugValue:qs,useDeferredValue:function(e){return Gs(Cs(),fs.memoizedState,e)},useTransition:function(){return[Os(Ms)[0],Cs().memoizedState]},useMutableSource:As,useSyncExternalStore:Ts,useId:Qs,unstable_isNewReconciler:!1},sa={readContext:ki,useCallback:Ks,useContext:ki,useEffect:$s,useImperativeHandle:Vs,useInsertionEffect:Hs,useLayoutEffect:Ws,useMemo:Ys,useReducer:Es,useRef:js,useState:function(){return Es(Ms)},useDebugValue:qs,useDeferredValue:function(e){var t=Cs();return null===fs?t.memoizedState=e:Gs(t,fs.memoizedState,e)},useTransition:function(){return[Es(Ms)[0],Cs().memoizedState]},useMutableSource:As,useSyncExternalStore:Ts,useId:Qs,unstable_isNewReconciler:!1};function aa(e,t){try{var n="",r=t;do{n+=$(r),r=r.return}while(r);var o=n}catch(e){o="\nError generating stack: "+e.message+"\n"+e.stack}return{value:e,source:t,stack:o,digest:null}}function la(e,t,n){return{value:e,source:null,stack:null!=n?n:null,digest:null!=t?t:null}}function ca(e,t){try{console.error(t.value)}catch(e){setTimeout((function(){throw e}))}}var ua="function"==typeof WeakMap?WeakMap:Map;function ha(e,t,n){(n=_i(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Hl||(Hl=!0,Wl=r),ca(0,t)},n}function da(e,t,n){(n=_i(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var o=t.value;n.payload=function(){return r(o)},n.callback=function(){ca(0,t)}}var i=e.stateNode;return null!==i&&"function"==typeof i.componentDidCatch&&(n.callback=function(){ca(0,t),"function"!=typeof r&&(null===Ul?Ul=new Set([this]):Ul.add(this));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}function fa(e,t,n){var r=e.pingCache;if(null===r){r=e.pingCache=new ua;var o=new Set;r.set(t,o)}else void 0===(o=r.get(t))&&(o=new Set,r.set(t,o));o.has(n)||(o.add(n),e=kc.bind(null,e,t,n),t.then(e,e))}function pa(e){do{var t;if((t=13===e.tag)&&(t=null===(t=e.memoizedState)||null!==t.dehydrated),t)return e;e=e.return}while(null!==e);return null}function ma(e,t,n,r,o){return 0==(1&e.mode)?(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((t=_i(-1,1)).tag=2,Ri(n,t,1))),n.lanes|=1),e):(e.flags|=65536,e.lanes=o,e)}var ga=w.ReactCurrentOwner,ya=!1;function va(e,t,n,r){t.child=null===e?Gi(t,null,n,r):Yi(t,e.child,n,r)}function ba(e,t,n,r,o){n=n.render;var i=t.ref;return Si(t,o),r=xs(e,t,n,r,i,o),n=Ss(),null===e||ya?(ni&&n&&Zo(t),t.flags|=1,va(e,t,r,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ha(e,t,o))}function wa(e,t,n,r,o){if(null===e){var i=n.type;return"function"!=typeof i||Dc(i)||void 0!==i.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Rc(n.type,null,r,t,t.mode,o)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=i,xa(e,t,i,r,o))}if(i=e.child,0==(e.lanes&o)){var s=i.memoizedProps;if((n=null!==(n=n.compare)?n:ir)(s,r)&&e.ref===t.ref)return Ha(e,t,o)}return t.flags|=1,(e=_c(i,r)).ref=t.ref,e.return=t,t.child=e}function xa(e,t,n,r,o){if(null!==e){var i=e.memoizedProps;if(ir(i,r)&&e.ref===t.ref){if(ya=!1,t.pendingProps=r=i,0==(e.lanes&o))return t.lanes=e.lanes,Ha(e,t,o);0!=(131072&e.flags)&&(ya=!0)}}return Ca(e,t,n,r,o)}function Sa(e,t,n){var r=t.pendingProps,o=r.children,i=null!==e?e.memoizedState:null;if("hidden"===r.mode)if(0==(1&t.mode))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},Co(_l,Dl),Dl|=n;else{if(0==(1073741824&n))return e=null!==i?i.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,Co(_l,Dl),Dl|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==i?i.baseLanes:n,Co(_l,Dl),Dl|=r}else null!==i?(r=i.baseLanes|n,t.memoizedState=null):r=n,Co(_l,Dl),Dl|=r;return va(e,t,o,n),t.child}function ka(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Ca(e,t,n,r,o){var i=Do(n)?Ao:Oo.current;return i=To(t,i),Si(t,o),n=xs(e,t,n,r,i,o),r=Ss(),null===e||ya?(ni&&r&&Zo(t),t.flags|=1,va(e,t,n,o),t.child):(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~o,Ha(e,t,o))}function Ma(e,t,n,r,o){if(Do(n)){var i=!0;Po(t)}else i=!1;if(Si(t,o),null===t.stateNode)$a(e,t),$i(t,n,r),Wi(t,n,r,o),r=!0;else if(null===e){var s=t.stateNode,a=t.memoizedProps;s.props=a;var l=s.context,c=n.contextType;c="object"==typeof c&&null!==c?ki(c):To(t,c=Do(n)?Ao:Oo.current);var u=n.getDerivedStateFromProps,h="function"==typeof u||"function"==typeof s.getSnapshotBeforeUpdate;h||"function"!=typeof s.UNSAFE_componentWillReceiveProps&&"function"!=typeof s.componentWillReceiveProps||(a!==r||l!==c)&&Hi(t,s,r,c),Ai=!1;var d=t.memoizedState;s.state=d,Ii(t,r,s,o),l=t.memoizedState,a!==r||d!==l||Eo.current||Ai?("function"==typeof u&&(Fi(t,n,u,r),l=t.memoizedState),(a=Ai||zi(t,n,a,r,d,l,c))?(h||"function"!=typeof s.UNSAFE_componentWillMount&&"function"!=typeof s.componentWillMount||("function"==typeof s.componentWillMount&&s.componentWillMount(),"function"==typeof s.UNSAFE_componentWillMount&&s.UNSAFE_componentWillMount()),"function"==typeof s.componentDidMount&&(t.flags|=4194308)):("function"==typeof s.componentDidMount&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),s.props=r,s.state=l,s.context=c,r=a):("function"==typeof s.componentDidMount&&(t.flags|=4194308),r=!1)}else{s=t.stateNode,Di(e,t),a=t.memoizedProps,c=t.type===t.elementType?a:pi(t.type,a),s.props=c,h=t.pendingProps,d=s.context,l="object"==typeof(l=n.contextType)&&null!==l?ki(l):To(t,l=Do(n)?Ao:Oo.current);var f=n.getDerivedStateFromProps;(u="function"==typeof f||"function"==typeof s.getSnapshotBeforeUpdate)||"function"!=typeof s.UNSAFE_componentWillReceiveProps&&"function"!=typeof s.componentWillReceiveProps||(a!==h||d!==l)&&Hi(t,s,r,l),Ai=!1,d=t.memoizedState,s.state=d,Ii(t,r,s,o);var p=t.memoizedState;a!==h||d!==p||Eo.current||Ai?("function"==typeof f&&(Fi(t,n,f,r),p=t.memoizedState),(c=Ai||zi(t,n,c,r,d,p,l)||!1)?(u||"function"!=typeof s.UNSAFE_componentWillUpdate&&"function"!=typeof s.componentWillUpdate||("function"==typeof s.componentWillUpdate&&s.componentWillUpdate(r,p,l),"function"==typeof s.UNSAFE_componentWillUpdate&&s.UNSAFE_componentWillUpdate(r,p,l)),"function"==typeof s.componentDidUpdate&&(t.flags|=4),"function"==typeof s.getSnapshotBeforeUpdate&&(t.flags|=1024)):("function"!=typeof s.componentDidUpdate||a===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof s.getSnapshotBeforeUpdate||a===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),s.props=r,s.state=p,s.context=l,r=c):("function"!=typeof s.componentDidUpdate||a===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof s.getSnapshotBeforeUpdate||a===e.memoizedProps&&d===e.memoizedState||(t.flags|=1024),r=!1)}return Oa(e,t,n,r,i,o)}function Oa(e,t,n,r,o,i){ka(e,t);var s=0!=(128&t.flags);if(!r&&!s)return o&&Io(t,n,!1),Ha(e,t,i);r=t.stateNode,ga.current=t;var a=s&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&s?(t.child=Yi(t,e.child,null,i),t.child=Yi(t,null,a,i)):va(e,t,a,i),t.memoizedState=r.state,o&&Io(t,n,!0),t.child}function Ea(e){var t=e.stateNode;t.pendingContext?Ro(0,t.pendingContext,t.pendingContext!==t.context):t.context&&Ro(0,t.context,!1),ts(e,t.containerInfo)}function Aa(e,t,n,r,o){return hi(),di(o),t.flags|=256,va(e,t,n,r),t.child}var Ta,Da,_a,Ra,Na={dehydrated:null,treeContext:null,retryLane:0};function Pa(e){return{baseLanes:e,cachePool:null,transitions:null}}function Ia(e,t,n){var r,o=t.pendingProps,s=is.current,a=!1,l=0!=(128&t.flags);if((r=l)||(r=(null===e||null!==e.memoizedState)&&0!=(2&s)),r?(a=!0,t.flags&=-129):null!==e&&null===e.memoizedState||(s|=1),Co(is,1&s),null===e)return ai(t),null!==(e=t.memoizedState)&&null!==(e=e.dehydrated)?(0==(1&t.mode)?t.lanes=1:"$!"===e.data?t.lanes=8:t.lanes=1073741824,null):(l=o.children,e=o.fallback,a?(o=t.mode,a=t.child,l={mode:"hidden",children:l},0==(1&o)&&null!==a?(a.childLanes=0,a.pendingProps=l):a=Pc(l,o,0,null),e=Nc(e,o,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=Pa(n),t.memoizedState=Na,e):La(t,l));if(null!==(s=e.memoizedState)&&null!==(r=s.dehydrated))return function(e,t,n,r,o,s,a){if(n)return 256&t.flags?(t.flags&=-257,ja(e,t,a,r=la(Error(i(422))))):null!==t.memoizedState?(t.child=e.child,t.flags|=128,null):(s=r.fallback,o=t.mode,r=Pc({mode:"visible",children:r.children},o,0,null),(s=Nc(s,o,a,null)).flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,0!=(1&t.mode)&&Yi(t,e.child,null,a),t.child.memoizedState=Pa(a),t.memoizedState=Na,s);if(0==(1&t.mode))return ja(e,t,a,null);if("$!"===o.data){if(r=o.nextSibling&&o.nextSibling.dataset)var l=r.dgst;return r=l,ja(e,t,a,r=la(s=Error(i(419)),r,void 0))}if(l=0!=(a&e.childLanes),ya||l){if(null!==(r=El)){switch(a&-a){case 4:o=2;break;case 16:o=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:o=32;break;case 536870912:o=268435456;break;default:o=0}0!==(o=0!=(o&(r.suspendedLanes|a))?0:o)&&o!==s.retryLane&&(s.retryLane=o,Ei(e,o),ec(r,e,o,-1))}return fc(),ja(e,t,a,r=la(Error(i(421))))}return"$?"===o.data?(t.flags|=128,t.child=e.child,t=Mc.bind(null,e),o._reactRetry=t,null):(e=s.treeContext,ti=so(o.nextSibling),ei=t,ni=!0,ri=null,null!==e&&(Vo[qo++]=Yo,Vo[qo++]=Go,Vo[qo++]=Ko,Yo=e.id,Go=e.overflow,Ko=t),(t=La(t,r.children)).flags|=4096,t)}(e,t,l,o,r,s,n);if(a){a=o.fallback,l=t.mode,r=(s=e.child).sibling;var c={mode:"hidden",children:o.children};return 0==(1&l)&&t.child!==s?((o=t.child).childLanes=0,o.pendingProps=c,t.deletions=null):(o=_c(s,c)).subtreeFlags=14680064&s.subtreeFlags,null!==r?a=_c(r,a):(a=Nc(a,l,n,null)).flags|=2,a.return=t,o.return=t,o.sibling=a,t.child=o,o=a,a=t.child,l=null===(l=e.child.memoizedState)?Pa(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},a.memoizedState=l,a.childLanes=e.childLanes&~n,t.memoizedState=Na,o}return e=(a=e.child).sibling,o=_c(a,{mode:"visible",children:o.children}),0==(1&t.mode)&&(o.lanes=n),o.return=t,o.sibling=null,null!==e&&(null===(n=t.deletions)?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=o,t.memoizedState=null,o}function La(e,t){return(t=Pc({mode:"visible",children:t},e.mode,0,null)).return=e,e.child=t}function ja(e,t,n,r){return null!==r&&di(r),Yi(t,e.child,null,n),(e=La(t,t.pendingProps.children)).flags|=2,t.memoizedState=null,e}function Fa(e,t,n){e.lanes|=t;var r=e.alternate;null!==r&&(r.lanes|=t),xi(e.return,t,n)}function Ba(e,t,n,r,o){var i=e.memoizedState;null===i?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:o}:(i.isBackwards=t,i.rendering=null,i.renderingStartTime=0,i.last=r,i.tail=n,i.tailMode=o)}function za(e,t,n){var r=t.pendingProps,o=r.revealOrder,i=r.tail;if(va(e,t,r.children,n),0!=(2&(r=is.current)))r=1&r|2,t.flags|=128;else{if(null!==e&&0!=(128&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Fa(e,n,t);else if(19===e.tag)Fa(e,n,t);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(Co(is,r),0==(1&t.mode))t.memoizedState=null;else switch(o){case"forwards":for(n=t.child,o=null;null!==n;)null!==(e=n.alternate)&&null===ss(e)&&(o=n),n=n.sibling;null===(n=o)?(o=t.child,t.child=null):(o=n.sibling,n.sibling=null),Ba(t,!1,o,n,i);break;case"backwards":for(n=null,o=t.child,t.child=null;null!==o;){if(null!==(e=o.alternate)&&null===ss(e)){t.child=o;break}e=o.sibling,o.sibling=n,n=o,o=e}Ba(t,!0,n,null,i);break;case"together":Ba(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function $a(e,t){0==(1&t.mode)&&null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ha(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Pl|=t.lanes,0==(n&t.childLanes))return null;if(null!==e&&t.child!==e.child)throw Error(i(153));if(null!==t.child){for(n=_c(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=_c(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function Wa(e,t){if(!ni)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Ua(e){var t=null!==e.alternate&&e.alternate.child===e.child,n=0,r=0;if(t)for(var o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=14680064&o.subtreeFlags,r|=14680064&o.flags,o.return=e,o=o.sibling;else for(o=e.child;null!==o;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,o.return=e,o=o.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Va(e,t,n){var r=t.pendingProps;switch(Xo(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ua(t),null;case 1:case 17:return Do(t.type)&&_o(),Ua(t),null;case 3:return r=t.stateNode,ns(),ko(Eo),ko(Oo),ls(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(ci(t)?t.flags|=4:null===e||e.memoizedState.isDehydrated&&0==(256&t.flags)||(t.flags|=1024,null!==ri&&(oc(ri),ri=null))),Da(e,t),Ua(t),null;case 5:os(t);var o=es(Xi.current);if(n=t.type,null!==e&&null!=t.stateNode)_a(e,t,n,r,o),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(null===t.stateNode)throw Error(i(166));return Ua(t),null}if(e=es(Qi.current),ci(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[co]=t,r[uo]=s,e=0!=(1&t.mode),n){case"dialog":Lr("cancel",r),Lr("close",r);break;case"iframe":case"object":case"embed":Lr("load",r);break;case"video":case"audio":for(o=0;o<Rr.length;o++)Lr(Rr[o],r);break;case"source":Lr("error",r);break;case"img":case"image":case"link":Lr("error",r),Lr("load",r);break;case"details":Lr("toggle",r);break;case"input":J(r,s),Lr("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},Lr("invalid",r);break;case"textarea":oe(r,s),Lr("invalid",r)}for(var l in ve(n,s),o=null,s)if(s.hasOwnProperty(l)){var c=s[l];"children"===l?"string"==typeof c?r.textContent!==c&&(!0!==s.suppressHydrationWarning&&Gr(r.textContent,c,e),o=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(!0!==s.suppressHydrationWarning&&Gr(r.textContent,c,e),o=["children",""+c]):a.hasOwnProperty(l)&&null!=c&&"onScroll"===l&&Lr("scroll",r)}switch(n){case"input":q(r),X(r,s,!0);break;case"textarea":q(r),se(r);break;case"select":case"option":break;default:"function"==typeof s.onClick&&(r.onclick=Jr)}r=o,t.updateQueue=r,null!==r&&(t.flags|=4)}else{l=9===o.nodeType?o:o.ownerDocument,"http://www.w3.org/1999/xhtml"===e&&(e=ae(n)),"http://www.w3.org/1999/xhtml"===e?"script"===n?((e=l.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=l.createElement(n,{is:r.is}):(e=l.createElement(n),"select"===n&&(l=e,r.multiple?l.multiple=!0:r.size&&(l.size=r.size))):e=l.createElementNS(e,n),e[co]=t,e[uo]=r,Ta(e,t,!1,!1),t.stateNode=e;e:{switch(l=be(n,r),n){case"dialog":Lr("cancel",e),Lr("close",e),o=r;break;case"iframe":case"object":case"embed":Lr("load",e),o=r;break;case"video":case"audio":for(o=0;o<Rr.length;o++)Lr(Rr[o],e);o=r;break;case"source":Lr("error",e),o=r;break;case"img":case"image":case"link":Lr("error",e),Lr("load",e),o=r;break;case"details":Lr("toggle",e),o=r;break;case"input":J(e,r),o=G(e,r),Lr("invalid",e);break;case"option":default:o=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},o=j({},r,{value:void 0}),Lr("invalid",e);break;case"textarea":oe(e,r),o=re(e,r),Lr("invalid",e)}for(s in ve(n,o),c=o)if(c.hasOwnProperty(s)){var u=c[s];"style"===s?ge(e,u):"dangerouslySetInnerHTML"===s?null!=(u=u?u.__html:void 0)&&he(e,u):"children"===s?"string"==typeof u?("textarea"!==n||""!==u)&&de(e,u):"number"==typeof u&&de(e,""+u):"suppressContentEditableWarning"!==s&&"suppressHydrationWarning"!==s&&"autoFocus"!==s&&(a.hasOwnProperty(s)?null!=u&&"onScroll"===s&&Lr("scroll",e):null!=u&&b(e,s,u,l))}switch(n){case"input":q(e),X(e,r,!1);break;case"textarea":q(e),se(e);break;case"option":null!=r.value&&e.setAttribute("value",""+U(r.value));break;case"select":e.multiple=!!r.multiple,null!=(s=r.value)?ne(e,!!r.multiple,s,!1):null!=r.defaultValue&&ne(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof o.onClick&&(e.onclick=Jr)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}null!==t.ref&&(t.flags|=512,t.flags|=2097152)}return Ua(t),null;case 6:if(e&&null!=t.stateNode)Ra(e,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(i(166));if(n=es(Xi.current),es(Qi.current),ci(t)){if(r=t.stateNode,n=t.memoizedProps,r[co]=t,(s=r.nodeValue!==n)&&null!==(e=ei))switch(e.tag){case 3:Gr(r.nodeValue,n,0!=(1&e.mode));break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&Gr(r.nodeValue,n,0!=(1&e.mode))}s&&(t.flags|=4)}else(r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[co]=t,t.stateNode=r}return Ua(t),null;case 13:if(ko(is),r=t.memoizedState,null===e||null!==e.memoizedState&&null!==e.memoizedState.dehydrated){if(ni&&null!==ti&&0!=(1&t.mode)&&0==(128&t.flags))ui(),hi(),t.flags|=98560,s=!1;else if(s=ci(t),null!==r&&null!==r.dehydrated){if(null===e){if(!s)throw Error(i(318));if(!(s=null!==(s=t.memoizedState)?s.dehydrated:null))throw Error(i(317));s[co]=t}else hi(),0==(128&t.flags)&&(t.memoizedState=null),t.flags|=4;Ua(t),s=!1}else null!==ri&&(oc(ri),ri=null),s=!0;if(!s)return 65536&t.flags?t:null}return 0!=(128&t.flags)?(t.lanes=n,t):((r=null!==r)!=(null!==e&&null!==e.memoizedState)&&r&&(t.child.flags|=8192,0!=(1&t.mode)&&(null===e||0!=(1&is.current)?0===Rl&&(Rl=3):fc())),null!==t.updateQueue&&(t.flags|=4),Ua(t),null);case 4:return ns(),Da(e,t),null===e&&Br(t.stateNode.containerInfo),Ua(t),null;case 10:return wi(t.type._context),Ua(t),null;case 19:if(ko(is),null===(s=t.memoizedState))return Ua(t),null;if(r=0!=(128&t.flags),null===(l=s.rendering))if(r)Wa(s,!1);else{if(0!==Rl||null!==e&&0!=(128&e.flags))for(e=t.child;null!==e;){if(null!==(l=ss(e))){for(t.flags|=128,Wa(s,!1),null!==(r=l.updateQueue)&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;null!==n;)e=r,(s=n).flags&=14680066,null===(l=s.alternate)?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=l.childLanes,s.lanes=l.lanes,s.child=l.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=l.memoizedProps,s.memoizedState=l.memoizedState,s.updateQueue=l.updateQueue,s.type=l.type,e=l.dependencies,s.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return Co(is,1&is.current|2),t.child}e=e.sibling}null!==s.tail&&Qe()>zl&&(t.flags|=128,r=!0,Wa(s,!1),t.lanes=4194304)}else{if(!r)if(null!==(e=ss(l))){if(t.flags|=128,r=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),Wa(s,!0),null===s.tail&&"hidden"===s.tailMode&&!l.alternate&&!ni)return Ua(t),null}else 2*Qe()-s.renderingStartTime>zl&&1073741824!==n&&(t.flags|=128,r=!0,Wa(s,!1),t.lanes=4194304);s.isBackwards?(l.sibling=t.child,t.child=l):(null!==(n=s.last)?n.sibling=l:t.child=l,s.last=l)}return null!==s.tail?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=Qe(),t.sibling=null,n=is.current,Co(is,r?1&n|2:1&n),t):(Ua(t),null);case 22:case 23:return cc(),r=null!==t.memoizedState,null!==e&&null!==e.memoizedState!==r&&(t.flags|=8192),r&&0!=(1&t.mode)?0!=(1073741824&Dl)&&(Ua(t),6&t.subtreeFlags&&(t.flags|=8192)):Ua(t),null;case 24:case 25:return null}throw Error(i(156,t.tag))}function qa(e,t){switch(Xo(t),t.tag){case 1:return Do(t.type)&&_o(),65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 3:return ns(),ko(Eo),ko(Oo),ls(),0!=(65536&(e=t.flags))&&0==(128&e)?(t.flags=-65537&e|128,t):null;case 5:return os(t),null;case 13:if(ko(is),null!==(e=t.memoizedState)&&null!==e.dehydrated){if(null===t.alternate)throw Error(i(340));hi()}return 65536&(e=t.flags)?(t.flags=-65537&e|128,t):null;case 19:return ko(is),null;case 4:return ns(),null;case 10:return wi(t.type._context),null;case 22:case 23:return cc(),null;default:return null}}Ta=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Da=function(){},_a=function(e,t,n,r){var o=e.memoizedProps;if(o!==r){e=t.stateNode,es(Qi.current);var i,s=null;switch(n){case"input":o=G(e,o),r=G(e,r),s=[];break;case"select":o=j({},o,{value:void 0}),r=j({},r,{value:void 0}),s=[];break;case"textarea":o=re(e,o),r=re(e,r),s=[];break;default:"function"!=typeof o.onClick&&"function"==typeof r.onClick&&(e.onclick=Jr)}for(u in ve(n,r),n=null,o)if(!r.hasOwnProperty(u)&&o.hasOwnProperty(u)&&null!=o[u])if("style"===u){var l=o[u];for(i in l)l.hasOwnProperty(i)&&(n||(n={}),n[i]="")}else"dangerouslySetInnerHTML"!==u&&"children"!==u&&"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(a.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in r){var c=r[u];if(l=null!=o?o[u]:void 0,r.hasOwnProperty(u)&&c!==l&&(null!=c||null!=l))if("style"===u)if(l){for(i in l)!l.hasOwnProperty(i)||c&&c.hasOwnProperty(i)||(n||(n={}),n[i]="");for(i in c)c.hasOwnProperty(i)&&l[i]!==c[i]&&(n||(n={}),n[i]=c[i])}else n||(s||(s=[]),s.push(u,n)),n=c;else"dangerouslySetInnerHTML"===u?(c=c?c.__html:void 0,l=l?l.__html:void 0,null!=c&&l!==c&&(s=s||[]).push(u,c)):"children"===u?"string"!=typeof c&&"number"!=typeof c||(s=s||[]).push(u,""+c):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&(a.hasOwnProperty(u)?(null!=c&&"onScroll"===u&&Lr("scroll",e),s||l===c||(s=[])):(s=s||[]).push(u,c))}n&&(s=s||[]).push("style",n);var u=s;(t.updateQueue=u)&&(t.flags|=4)}},Ra=function(e,t,n,r){n!==r&&(t.flags|=4)};var Ka=!1,Ya=!1,Ga="function"==typeof WeakSet?WeakSet:Set,Ja=null;function Qa(e,t){var n=e.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(n){Sc(e,t,n)}else n.current=null}function Za(e,t,n){try{n()}catch(n){Sc(e,t,n)}}var Xa=!1;function el(e,t,n){var r=t.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var o=r=r.next;do{if((o.tag&e)===e){var i=o.destroy;o.destroy=void 0,void 0!==i&&Za(t,n,i)}o=o.next}while(o!==r)}}function tl(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function nl(e){var t=e.ref;if(null!==t){var n=e.stateNode;e.tag,e=n,"function"==typeof t?t(e):t.current=e}}function rl(e){var t=e.alternate;null!==t&&(e.alternate=null,rl(t)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&null!==(t=e.stateNode)&&(delete t[co],delete t[uo],delete t[fo],delete t[po],delete t[mo]),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function ol(e){return 5===e.tag||3===e.tag||4===e.tag}function il(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||ol(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e.child.return=e,e=e.child}if(!(2&e.flags))return e.stateNode}}function sl(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?8===n.nodeType?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(8===n.nodeType?(t=n.parentNode).insertBefore(e,n):(t=n).appendChild(e),null!=(n=n._reactRootContainer)||null!==t.onclick||(t.onclick=Jr));else if(4!==r&&null!==(e=e.child))for(sl(e,t,n),e=e.sibling;null!==e;)sl(e,t,n),e=e.sibling}function al(e,t,n){var r=e.tag;if(5===r||6===r)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(4!==r&&null!==(e=e.child))for(al(e,t,n),e=e.sibling;null!==e;)al(e,t,n),e=e.sibling}var ll=null,cl=!1;function ul(e,t,n){for(n=n.child;null!==n;)hl(e,t,n),n=n.sibling}function hl(e,t,n){if(it&&"function"==typeof it.onCommitFiberUnmount)try{it.onCommitFiberUnmount(ot,n)}catch(e){}switch(n.tag){case 5:Ya||Qa(n,t);case 6:var r=ll,o=cl;ll=null,ul(e,t,n),cl=o,null!==(ll=r)&&(cl?(e=ll,n=n.stateNode,8===e.nodeType?e.parentNode.removeChild(n):e.removeChild(n)):ll.removeChild(n.stateNode));break;case 18:null!==ll&&(cl?(e=ll,n=n.stateNode,8===e.nodeType?io(e.parentNode,n):1===e.nodeType&&io(e,n),Ht(e)):io(ll,n.stateNode));break;case 4:r=ll,o=cl,ll=n.stateNode.containerInfo,cl=!0,ul(e,t,n),ll=r,cl=o;break;case 0:case 11:case 14:case 15:if(!Ya&&null!==(r=n.updateQueue)&&null!==(r=r.lastEffect)){o=r=r.next;do{var i=o,s=i.destroy;i=i.tag,void 0!==s&&(0!=(2&i)||0!=(4&i))&&Za(n,t,s),o=o.next}while(o!==r)}ul(e,t,n);break;case 1:if(!Ya&&(Qa(n,t),"function"==typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(e){Sc(n,t,e)}ul(e,t,n);break;case 21:ul(e,t,n);break;case 22:1&n.mode?(Ya=(r=Ya)||null!==n.memoizedState,ul(e,t,n),Ya=r):ul(e,t,n);break;default:ul(e,t,n)}}function dl(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Ga),t.forEach((function(t){var r=Oc.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function fl(e,t){var n=t.deletions;if(null!==n)for(var r=0;r<n.length;r++){var o=n[r];try{var s=e,a=t,l=a;e:for(;null!==l;){switch(l.tag){case 5:ll=l.stateNode,cl=!1;break e;case 3:case 4:ll=l.stateNode.containerInfo,cl=!0;break e}l=l.return}if(null===ll)throw Error(i(160));hl(s,a,o),ll=null,cl=!1;var c=o.alternate;null!==c&&(c.return=null),o.return=null}catch(e){Sc(o,t,e)}}if(12854&t.subtreeFlags)for(t=t.child;null!==t;)pl(t,e),t=t.sibling}function pl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(fl(t,e),ml(e),4&r){try{el(3,e,e.return),tl(3,e)}catch(t){Sc(e,e.return,t)}try{el(5,e,e.return)}catch(t){Sc(e,e.return,t)}}break;case 1:fl(t,e),ml(e),512&r&&null!==n&&Qa(n,n.return);break;case 5:if(fl(t,e),ml(e),512&r&&null!==n&&Qa(n,n.return),32&e.flags){var o=e.stateNode;try{de(o,"")}catch(t){Sc(e,e.return,t)}}if(4&r&&null!=(o=e.stateNode)){var s=e.memoizedProps,a=null!==n?n.memoizedProps:s,l=e.type,c=e.updateQueue;if(e.updateQueue=null,null!==c)try{"input"===l&&"radio"===s.type&&null!=s.name&&Q(o,s),be(l,a);var u=be(l,s);for(a=0;a<c.length;a+=2){var h=c[a],d=c[a+1];"style"===h?ge(o,d):"dangerouslySetInnerHTML"===h?he(o,d):"children"===h?de(o,d):b(o,h,d,u)}switch(l){case"input":Z(o,s);break;case"textarea":ie(o,s);break;case"select":var f=o._wrapperState.wasMultiple;o._wrapperState.wasMultiple=!!s.multiple;var p=s.value;null!=p?ne(o,!!s.multiple,p,!1):f!==!!s.multiple&&(null!=s.defaultValue?ne(o,!!s.multiple,s.defaultValue,!0):ne(o,!!s.multiple,s.multiple?[]:"",!1))}o[uo]=s}catch(t){Sc(e,e.return,t)}}break;case 6:if(fl(t,e),ml(e),4&r){if(null===e.stateNode)throw Error(i(162));o=e.stateNode,s=e.memoizedProps;try{o.nodeValue=s}catch(t){Sc(e,e.return,t)}}break;case 3:if(fl(t,e),ml(e),4&r&&null!==n&&n.memoizedState.isDehydrated)try{Ht(t.containerInfo)}catch(t){Sc(e,e.return,t)}break;case 4:default:fl(t,e),ml(e);break;case 13:fl(t,e),ml(e),8192&(o=e.child).flags&&(s=null!==o.memoizedState,o.stateNode.isHidden=s,!s||null!==o.alternate&&null!==o.alternate.memoizedState||(Bl=Qe())),4&r&&dl(e);break;case 22:if(h=null!==n&&null!==n.memoizedState,1&e.mode?(Ya=(u=Ya)||h,fl(t,e),Ya=u):fl(t,e),ml(e),8192&r){if(u=null!==e.memoizedState,(e.stateNode.isHidden=u)&&!h&&0!=(1&e.mode))for(Ja=e,h=e.child;null!==h;){for(d=Ja=h;null!==Ja;){switch(p=(f=Ja).child,f.tag){case 0:case 11:case 14:case 15:el(4,f,f.return);break;case 1:Qa(f,f.return);var m=f.stateNode;if("function"==typeof m.componentWillUnmount){r=f,n=f.return;try{t=r,m.props=t.memoizedProps,m.state=t.memoizedState,m.componentWillUnmount()}catch(e){Sc(r,n,e)}}break;case 5:Qa(f,f.return);break;case 22:if(null!==f.memoizedState){bl(d);continue}}null!==p?(p.return=f,Ja=p):bl(d)}h=h.sibling}e:for(h=null,d=e;;){if(5===d.tag){if(null===h){h=d;try{o=d.stateNode,u?"function"==typeof(s=o.style).setProperty?s.setProperty("display","none","important"):s.display="none":(l=d.stateNode,a=null!=(c=d.memoizedProps.style)&&c.hasOwnProperty("display")?c.display:null,l.style.display=me("display",a))}catch(t){Sc(e,e.return,t)}}}else if(6===d.tag){if(null===h)try{d.stateNode.nodeValue=u?"":d.memoizedProps}catch(t){Sc(e,e.return,t)}}else if((22!==d.tag&&23!==d.tag||null===d.memoizedState||d===e)&&null!==d.child){d.child.return=d,d=d.child;continue}if(d===e)break e;for(;null===d.sibling;){if(null===d.return||d.return===e)break e;h===d&&(h=null),d=d.return}h===d&&(h=null),d.sibling.return=d.return,d=d.sibling}}break;case 19:fl(t,e),ml(e),4&r&&dl(e);case 21:}}function ml(e){var t=e.flags;if(2&t){try{e:{for(var n=e.return;null!==n;){if(ol(n)){var r=n;break e}n=n.return}throw Error(i(160))}switch(r.tag){case 5:var o=r.stateNode;32&r.flags&&(de(o,""),r.flags&=-33),al(e,il(e),o);break;case 3:case 4:var s=r.stateNode.containerInfo;sl(e,il(e),s);break;default:throw Error(i(161))}}catch(t){Sc(e,e.return,t)}e.flags&=-3}4096&t&&(e.flags&=-4097)}function gl(e,t,n){Ja=e,yl(e,t,n)}function yl(e,t,n){for(var r=0!=(1&e.mode);null!==Ja;){var o=Ja,i=o.child;if(22===o.tag&&r){var s=null!==o.memoizedState||Ka;if(!s){var a=o.alternate,l=null!==a&&null!==a.memoizedState||Ya;a=Ka;var c=Ya;if(Ka=s,(Ya=l)&&!c)for(Ja=o;null!==Ja;)l=(s=Ja).child,22===s.tag&&null!==s.memoizedState?wl(o):null!==l?(l.return=s,Ja=l):wl(o);for(;null!==i;)Ja=i,yl(i,t,n),i=i.sibling;Ja=o,Ka=a,Ya=c}vl(e)}else 0!=(8772&o.subtreeFlags)&&null!==i?(i.return=o,Ja=i):vl(e)}}function vl(e){for(;null!==Ja;){var t=Ja;if(0!=(8772&t.flags)){var n=t.alternate;try{if(0!=(8772&t.flags))switch(t.tag){case 0:case 11:case 15:Ya||tl(5,t);break;case 1:var r=t.stateNode;if(4&t.flags&&!Ya)if(null===n)r.componentDidMount();else{var o=t.elementType===t.type?n.memoizedProps:pi(t.type,n.memoizedProps);r.componentDidUpdate(o,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;null!==s&&Li(t,s,r);break;case 3:var a=t.updateQueue;if(null!==a){if(n=null,null!==t.child)switch(t.child.tag){case 5:case 1:n=t.child.stateNode}Li(t,a,n)}break;case 5:var l=t.stateNode;if(null===n&&4&t.flags){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(null===t.memoizedState){var u=t.alternate;if(null!==u){var h=u.memoizedState;if(null!==h){var d=h.dehydrated;null!==d&&Ht(d)}}}break;default:throw Error(i(163))}Ya||512&t.flags&&nl(t)}catch(e){Sc(t,t.return,e)}}if(t===e){Ja=null;break}if(null!==(n=t.sibling)){n.return=t.return,Ja=n;break}Ja=t.return}}function bl(e){for(;null!==Ja;){var t=Ja;if(t===e){Ja=null;break}var n=t.sibling;if(null!==n){n.return=t.return,Ja=n;break}Ja=t.return}}function wl(e){for(;null!==Ja;){var t=Ja;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{tl(4,t)}catch(e){Sc(t,n,e)}break;case 1:var r=t.stateNode;if("function"==typeof r.componentDidMount){var o=t.return;try{r.componentDidMount()}catch(e){Sc(t,o,e)}}var i=t.return;try{nl(t)}catch(e){Sc(t,i,e)}break;case 5:var s=t.return;try{nl(t)}catch(e){Sc(t,s,e)}}}catch(e){Sc(t,t.return,e)}if(t===e){Ja=null;break}var a=t.sibling;if(null!==a){a.return=t.return,Ja=a;break}Ja=t.return}}var xl,Sl=Math.ceil,kl=w.ReactCurrentDispatcher,Cl=w.ReactCurrentOwner,Ml=w.ReactCurrentBatchConfig,Ol=0,El=null,Al=null,Tl=0,Dl=0,_l=So(0),Rl=0,Nl=null,Pl=0,Il=0,Ll=0,jl=null,Fl=null,Bl=0,zl=1/0,$l=null,Hl=!1,Wl=null,Ul=null,Vl=!1,ql=null,Kl=0,Yl=0,Gl=null,Jl=-1,Ql=0;function Zl(){return 0!=(6&Ol)?Qe():-1!==Jl?Jl:Jl=Qe()}function Xl(e){return 0==(1&e.mode)?1:0!=(2&Ol)&&0!==Tl?Tl&-Tl:null!==fi.transition?(0===Ql&&(Ql=mt()),Ql):0!==(e=bt)?e:e=void 0===(e=window.event)?16:Jt(e.type)}function ec(e,t,n,r){if(50<Yl)throw Yl=0,Gl=null,Error(i(185));yt(e,n,r),0!=(2&Ol)&&e===El||(e===El&&(0==(2&Ol)&&(Il|=n),4===Rl&&ic(e,Tl)),tc(e,r),1===n&&0===Ol&&0==(1&t.mode)&&(zl=Qe()+500,jo&&zo()))}function tc(e,t){var n=e.callbackNode;!function(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,o=e.expirationTimes,i=e.pendingLanes;0<i;){var s=31-st(i),a=1<<s,l=o[s];-1===l?0!=(a&n)&&0==(a&r)||(o[s]=ft(a,t)):l<=t&&(e.expiredLanes|=a),i&=~a}}(e,t);var r=dt(e,e===El?Tl:0);if(0===r)null!==n&&Ye(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(null!=n&&Ye(n),1===t)0===e.tag?function(e){jo=!0,Bo(e)}(sc.bind(null,e)):Bo(sc.bind(null,e)),ro((function(){0==(6&Ol)&&zo()})),n=null;else{switch(wt(r)){case 1:n=Xe;break;case 4:n=et;break;case 16:default:n=tt;break;case 536870912:n=rt}n=Ec(n,nc.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function nc(e,t){if(Jl=-1,Ql=0,0!=(6&Ol))throw Error(i(327));var n=e.callbackNode;if(wc()&&e.callbackNode!==n)return null;var r=dt(e,e===El?Tl:0);if(0===r)return null;if(0!=(30&r)||0!=(r&e.expiredLanes)||t)t=pc(e,r);else{t=r;var o=Ol;Ol|=2;var s=dc();for(El===e&&Tl===t||($l=null,zl=Qe()+500,uc(e,t));;)try{gc();break}catch(t){hc(e,t)}bi(),kl.current=s,Ol=o,null!==Al?t=0:(El=null,Tl=0,t=Rl)}if(0!==t){if(2===t&&0!==(o=pt(e))&&(r=o,t=rc(e,o)),1===t)throw n=Nl,uc(e,0),ic(e,r),tc(e,Qe()),n;if(6===t)ic(e,r);else{if(o=e.current.alternate,0==(30&r)&&!function(e){for(var t=e;;){if(16384&t.flags){var n=t.updateQueue;if(null!==n&&null!==(n=n.stores))for(var r=0;r<n.length;r++){var o=n[r],i=o.getSnapshot;o=o.value;try{if(!or(i(),o))return!1}catch(e){return!1}}}if(n=t.child,16384&t.subtreeFlags&&null!==n)n.return=t,t=n;else{if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}(o)&&(2===(t=pc(e,r))&&0!==(s=pt(e))&&(r=s,t=rc(e,s)),1===t))throw n=Nl,uc(e,0),ic(e,r),tc(e,Qe()),n;switch(e.finishedWork=o,e.finishedLanes=r,t){case 0:case 1:throw Error(i(345));case 2:case 5:bc(e,Fl,$l);break;case 3:if(ic(e,r),(130023424&r)===r&&10<(t=Bl+500-Qe())){if(0!==dt(e,0))break;if(((o=e.suspendedLanes)&r)!==r){Zl(),e.pingedLanes|=e.suspendedLanes&o;break}e.timeoutHandle=eo(bc.bind(null,e,Fl,$l),t);break}bc(e,Fl,$l);break;case 4:if(ic(e,r),(4194240&r)===r)break;for(t=e.eventTimes,o=-1;0<r;){var a=31-st(r);s=1<<a,(a=t[a])>o&&(o=a),r&=~s}if(r=o,10<(r=(120>(r=Qe()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Sl(r/1960))-r)){e.timeoutHandle=eo(bc.bind(null,e,Fl,$l),r);break}bc(e,Fl,$l);break;default:throw Error(i(329))}}}return tc(e,Qe()),e.callbackNode===n?nc.bind(null,e):null}function rc(e,t){var n=jl;return e.current.memoizedState.isDehydrated&&(uc(e,t).flags|=256),2!==(e=pc(e,t))&&(t=Fl,Fl=n,null!==t&&oc(t)),e}function oc(e){null===Fl?Fl=e:Fl.push.apply(Fl,e)}function ic(e,t){for(t&=~Ll,t&=~Il,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-st(t),r=1<<n;e[n]=-1,t&=~r}}function sc(e){if(0!=(6&Ol))throw Error(i(327));wc();var t=dt(e,0);if(0==(1&t))return tc(e,Qe()),null;var n=pc(e,t);if(0!==e.tag&&2===n){var r=pt(e);0!==r&&(t=r,n=rc(e,r))}if(1===n)throw n=Nl,uc(e,0),ic(e,t),tc(e,Qe()),n;if(6===n)throw Error(i(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,bc(e,Fl,$l),tc(e,Qe()),null}function ac(e,t){var n=Ol;Ol|=1;try{return e(t)}finally{0===(Ol=n)&&(zl=Qe()+500,jo&&zo())}}function lc(e){null!==ql&&0===ql.tag&&0==(6&Ol)&&wc();var t=Ol;Ol|=1;var n=Ml.transition,r=bt;try{if(Ml.transition=null,bt=1,e)return e()}finally{bt=r,Ml.transition=n,0==(6&(Ol=t))&&zo()}}function cc(){Dl=_l.current,ko(_l)}function uc(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,to(n)),null!==Al)for(n=Al.return;null!==n;){var r=n;switch(Xo(r),r.tag){case 1:null!=(r=r.type.childContextTypes)&&_o();break;case 3:ns(),ko(Eo),ko(Oo),ls();break;case 5:os(r);break;case 4:ns();break;case 13:case 19:ko(is);break;case 10:wi(r.type._context);break;case 22:case 23:cc()}n=n.return}if(El=e,Al=e=_c(e.current,null),Tl=Dl=t,Rl=0,Nl=null,Ll=Il=Pl=0,Fl=jl=null,null!==Ci){for(t=0;t<Ci.length;t++)if(null!==(r=(n=Ci[t]).interleaved)){n.interleaved=null;var o=r.next,i=n.pending;if(null!==i){var s=i.next;i.next=o,r.next=s}n.pending=r}Ci=null}return e}function hc(e,t){for(;;){var n=Al;try{if(bi(),cs.current=ra,ms){for(var r=ds.memoizedState;null!==r;){var o=r.queue;null!==o&&(o.pending=null),r=r.next}ms=!1}if(hs=0,ps=fs=ds=null,gs=!1,ys=0,Cl.current=null,null===n||null===n.return){Rl=1,Nl=t,Al=null;break}e:{var s=e,a=n.return,l=n,c=t;if(t=Tl,l.flags|=32768,null!==c&&"object"==typeof c&&"function"==typeof c.then){var u=c,h=l,d=h.tag;if(0==(1&h.mode)&&(0===d||11===d||15===d)){var f=h.alternate;f?(h.updateQueue=f.updateQueue,h.memoizedState=f.memoizedState,h.lanes=f.lanes):(h.updateQueue=null,h.memoizedState=null)}var p=pa(a);if(null!==p){p.flags&=-257,ma(p,a,l,0,t),1&p.mode&&fa(s,u,t),c=u;var m=(t=p).updateQueue;if(null===m){var g=new Set;g.add(c),t.updateQueue=g}else m.add(c);break e}if(0==(1&t)){fa(s,u,t),fc();break e}c=Error(i(426))}else if(ni&&1&l.mode){var y=pa(a);if(null!==y){0==(65536&y.flags)&&(y.flags|=256),ma(y,a,l,0,t),di(aa(c,l));break e}}s=c=aa(c,l),4!==Rl&&(Rl=2),null===jl?jl=[s]:jl.push(s),s=a;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t,Pi(s,ha(0,c,t));break e;case 1:l=c;var v=s.type,b=s.stateNode;if(0==(128&s.flags)&&("function"==typeof v.getDerivedStateFromError||null!==b&&"function"==typeof b.componentDidCatch&&(null===Ul||!Ul.has(b)))){s.flags|=65536,t&=-t,s.lanes|=t,Pi(s,da(s,l,t));break e}}s=s.return}while(null!==s)}vc(n)}catch(e){t=e,Al===n&&null!==n&&(Al=n=n.return);continue}break}}function dc(){var e=kl.current;return kl.current=ra,null===e?ra:e}function fc(){0!==Rl&&3!==Rl&&2!==Rl||(Rl=4),null===El||0==(268435455&Pl)&&0==(268435455&Il)||ic(El,Tl)}function pc(e,t){var n=Ol;Ol|=2;var r=dc();for(El===e&&Tl===t||($l=null,uc(e,t));;)try{mc();break}catch(t){hc(e,t)}if(bi(),Ol=n,kl.current=r,null!==Al)throw Error(i(261));return El=null,Tl=0,Rl}function mc(){for(;null!==Al;)yc(Al)}function gc(){for(;null!==Al&&!Ge();)yc(Al)}function yc(e){var t=xl(e.alternate,e,Dl);e.memoizedProps=e.pendingProps,null===t?vc(e):Al=t,Cl.current=null}function vc(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(32768&t.flags)){if(null!==(n=Va(n,t,Dl)))return void(Al=n)}else{if(null!==(n=qa(n,t)))return n.flags&=32767,void(Al=n);if(null===e)return Rl=6,void(Al=null);e.flags|=32768,e.subtreeFlags=0,e.deletions=null}if(null!==(t=t.sibling))return void(Al=t);Al=t=e}while(null!==t);0===Rl&&(Rl=5)}function bc(e,t,n){var r=bt,o=Ml.transition;try{Ml.transition=null,bt=1,function(e,t,n,r){do{wc()}while(null!==ql);if(0!=(6&Ol))throw Error(i(327));n=e.finishedWork;var o=e.finishedLanes;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(function(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var o=31-st(n),i=1<<o;t[o]=0,r[o]=-1,e[o]=-1,n&=~i}}(e,s),e===El&&(Al=El=null,Tl=0),0==(2064&n.subtreeFlags)&&0==(2064&n.flags)||Vl||(Vl=!0,Ec(tt,(function(){return wc(),null}))),s=0!=(15990&n.flags),0!=(15990&n.subtreeFlags)||s){s=Ml.transition,Ml.transition=null;var a=bt;bt=1;var l=Ol;Ol|=4,Cl.current=null,function(e,t){if(Qr=Ut,ur(e=cr())){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{var r=(n=(n=e.ownerDocument)&&n.defaultView||window).getSelection&&n.getSelection();if(r&&0!==r.rangeCount){n=r.anchorNode;var o=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch(e){n=null;break e}var a=0,l=-1,c=-1,u=0,h=0,d=e,f=null;t:for(;;){for(var p;d!==n||0!==o&&3!==d.nodeType||(l=a+o),d!==s||0!==r&&3!==d.nodeType||(c=a+r),3===d.nodeType&&(a+=d.nodeValue.length),null!==(p=d.firstChild);)f=d,d=p;for(;;){if(d===e)break t;if(f===n&&++u===o&&(l=a),f===s&&++h===r&&(c=a),null!==(p=d.nextSibling))break;f=(d=f).parentNode}d=p}n=-1===l||-1===c?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Zr={focusedElem:e,selectionRange:n},Ut=!1,Ja=t;null!==Ja;)if(e=(t=Ja).child,0!=(1028&t.subtreeFlags)&&null!==e)e.return=t,Ja=e;else for(;null!==Ja;){t=Ja;try{var m=t.alternate;if(0!=(1024&t.flags))switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==m){var g=m.memoizedProps,y=m.memoizedState,v=t.stateNode,b=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:pi(t.type,g),y);v.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var w=t.stateNode.containerInfo;1===w.nodeType?w.textContent="":9===w.nodeType&&w.documentElement&&w.removeChild(w.documentElement);break;default:throw Error(i(163))}}catch(e){Sc(t,t.return,e)}if(null!==(e=t.sibling)){e.return=t.return,Ja=e;break}Ja=t.return}m=Xa,Xa=!1}(e,n),pl(n,e),hr(Zr),Ut=!!Qr,Zr=Qr=null,e.current=n,gl(n,e,o),Je(),Ol=l,bt=a,Ml.transition=s}else e.current=n;if(Vl&&(Vl=!1,ql=e,Kl=o),0===(s=e.pendingLanes)&&(Ul=null),function(e){if(it&&"function"==typeof it.onCommitFiberRoot)try{it.onCommitFiberRoot(ot,e,void 0,128==(128&e.current.flags))}catch(e){}}(n.stateNode),tc(e,Qe()),null!==t)for(r=e.onRecoverableError,n=0;n<t.length;n++)r((o=t[n]).value,{componentStack:o.stack,digest:o.digest});if(Hl)throw Hl=!1,e=Wl,Wl=null,e;0!=(1&Kl)&&0!==e.tag&&wc(),0!=(1&(s=e.pendingLanes))?e===Gl?Yl++:(Yl=0,Gl=e):Yl=0,zo()}(e,t,n,r)}finally{Ml.transition=o,bt=r}return null}function wc(){if(null!==ql){var e=wt(Kl),t=Ml.transition,n=bt;try{if(Ml.transition=null,bt=16>e?16:e,null===ql)var r=!1;else{if(e=ql,ql=null,Kl=0,0!=(6&Ol))throw Error(i(331));var o=Ol;for(Ol|=4,Ja=e.current;null!==Ja;){var s=Ja,a=s.child;if(0!=(16&Ja.flags)){var l=s.deletions;if(null!==l){for(var c=0;c<l.length;c++){var u=l[c];for(Ja=u;null!==Ja;){var h=Ja;switch(h.tag){case 0:case 11:case 15:el(8,h,s)}var d=h.child;if(null!==d)d.return=h,Ja=d;else for(;null!==Ja;){var f=(h=Ja).sibling,p=h.return;if(rl(h),h===u){Ja=null;break}if(null!==f){f.return=p,Ja=f;break}Ja=p}}}var m=s.alternate;if(null!==m){var g=m.child;if(null!==g){m.child=null;do{var y=g.sibling;g.sibling=null,g=y}while(null!==g)}}Ja=s}}if(0!=(2064&s.subtreeFlags)&&null!==a)a.return=s,Ja=a;else e:for(;null!==Ja;){if(0!=(2048&(s=Ja).flags))switch(s.tag){case 0:case 11:case 15:el(9,s,s.return)}var v=s.sibling;if(null!==v){v.return=s.return,Ja=v;break e}Ja=s.return}}var b=e.current;for(Ja=b;null!==Ja;){var w=(a=Ja).child;if(0!=(2064&a.subtreeFlags)&&null!==w)w.return=a,Ja=w;else e:for(a=b;null!==Ja;){if(0!=(2048&(l=Ja).flags))try{switch(l.tag){case 0:case 11:case 15:tl(9,l)}}catch(e){Sc(l,l.return,e)}if(l===a){Ja=null;break e}var x=l.sibling;if(null!==x){x.return=l.return,Ja=x;break e}Ja=l.return}}if(Ol=o,zo(),it&&"function"==typeof it.onPostCommitFiberRoot)try{it.onPostCommitFiberRoot(ot,e)}catch(e){}r=!0}return r}finally{bt=n,Ml.transition=t}}return!1}function xc(e,t,n){e=Ri(e,t=ha(0,t=aa(n,t),1),1),t=Zl(),null!==e&&(yt(e,1,t),tc(e,t))}function Sc(e,t,n){if(3===e.tag)xc(e,e,n);else for(;null!==t;){if(3===t.tag){xc(t,e,n);break}if(1===t.tag){var r=t.stateNode;if("function"==typeof t.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Ul||!Ul.has(r))){t=Ri(t,e=da(t,e=aa(n,e),1),1),e=Zl(),null!==t&&(yt(t,1,e),tc(t,e));break}}t=t.return}}function kc(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=Zl(),e.pingedLanes|=e.suspendedLanes&n,El===e&&(Tl&n)===n&&(4===Rl||3===Rl&&(130023424&Tl)===Tl&&500>Qe()-Bl?uc(e,0):Ll|=n),tc(e,t)}function Cc(e,t){0===t&&(0==(1&e.mode)?t=1:(t=ut,0==(130023424&(ut<<=1))&&(ut=4194304)));var n=Zl();null!==(e=Ei(e,t))&&(yt(e,t,n),tc(e,n))}function Mc(e){var t=e.memoizedState,n=0;null!==t&&(n=t.retryLane),Cc(e,n)}function Oc(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,o=e.memoizedState;null!==o&&(n=o.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(i(314))}null!==r&&r.delete(t),Cc(e,n)}function Ec(e,t){return Ke(e,t)}function Ac(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Tc(e,t,n,r){return new Ac(e,t,n,r)}function Dc(e){return!(!(e=e.prototype)||!e.isReactComponent)}function _c(e,t){var n=e.alternate;return null===n?((n=Tc(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&e.flags,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Rc(e,t,n,r,o,s){var a=2;if(r=e,"function"==typeof e)Dc(e)&&(a=1);else if("string"==typeof e)a=5;else e:switch(e){case k:return Nc(n.children,o,s,t);case C:a=8,o|=8;break;case M:return(e=Tc(12,n,t,2|o)).elementType=M,e.lanes=s,e;case T:return(e=Tc(13,n,t,o)).elementType=T,e.lanes=s,e;case D:return(e=Tc(19,n,t,o)).elementType=D,e.lanes=s,e;case N:return Pc(n,o,s,t);default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case O:a=10;break e;case E:a=9;break e;case A:a=11;break e;case _:a=14;break e;case R:a=16,r=null;break e}throw Error(i(130,null==e?e:typeof e,""))}return(t=Tc(a,n,t,o)).elementType=e,t.type=r,t.lanes=s,t}function Nc(e,t,n,r){return(e=Tc(7,e,r,t)).lanes=n,e}function Pc(e,t,n,r){return(e=Tc(22,e,r,t)).elementType=N,e.lanes=n,e.stateNode={isHidden:!1},e}function Ic(e,t,n){return(e=Tc(6,e,null,t)).lanes=n,e}function Lc(e,t,n){return(t=Tc(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function jc(e,t,n,r,o){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=gt(0),this.expirationTimes=gt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=gt(0),this.identifierPrefix=r,this.onRecoverableError=o,this.mutableSourceEagerHydrationData=null}function Fc(e,t,n,r,o,i,s,a,l){return e=new jc(e,t,n,a,l),1===t?(t=1,!0===i&&(t|=8)):t=0,i=Tc(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Ti(i),e}function Bc(e){if(!e)return Mo;e:{if(He(e=e._reactInternals)!==e||1!==e.tag)throw Error(i(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Do(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(null!==t);throw Error(i(171))}if(1===e.tag){var n=e.type;if(Do(n))return No(e,n,t)}return t}function zc(e,t,n,r,o,i,s,a,l){return(e=Fc(n,r,!0,e,0,i,0,a,l)).context=Bc(null),n=e.current,(i=_i(r=Zl(),o=Xl(n))).callback=null!=t?t:null,Ri(n,i,o),e.current.lanes=o,yt(e,o,r),tc(e,r),e}function $c(e,t,n,r){var o=t.current,i=Zl(),s=Xl(o);return n=Bc(n),null===t.context?t.context=n:t.pendingContext=n,(t=_i(i,s)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),null!==(e=Ri(o,t,s))&&(ec(e,o,s,i),Ni(e,o,s)),s}function Hc(e){return(e=e.current).child?(e.child.tag,e.child.stateNode):null}function Wc(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Uc(e,t){Wc(e,t),(e=e.alternate)&&Wc(e,t)}xl=function(e,t,n){if(null!==e)if(e.memoizedProps!==t.pendingProps||Eo.current)ya=!0;else{if(0==(e.lanes&n)&&0==(128&t.flags))return ya=!1,function(e,t,n){switch(t.tag){case 3:Ea(t),hi();break;case 5:rs(t);break;case 1:Do(t.type)&&Po(t);break;case 4:ts(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,o=t.memoizedProps.value;Co(mi,r._currentValue),r._currentValue=o;break;case 13:if(null!==(r=t.memoizedState))return null!==r.dehydrated?(Co(is,1&is.current),t.flags|=128,null):0!=(n&t.child.childLanes)?Ia(e,t,n):(Co(is,1&is.current),null!==(e=Ha(e,t,n))?e.sibling:null);Co(is,1&is.current);break;case 19:if(r=0!=(n&t.childLanes),0!=(128&e.flags)){if(r)return za(e,t,n);t.flags|=128}if(null!==(o=t.memoizedState)&&(o.rendering=null,o.tail=null,o.lastEffect=null),Co(is,is.current),r)break;return null;case 22:case 23:return t.lanes=0,Sa(e,t,n)}return Ha(e,t,n)}(e,t,n);ya=0!=(131072&e.flags)}else ya=!1,ni&&0!=(1048576&t.flags)&&Qo(t,Uo,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;$a(e,t),e=t.pendingProps;var o=To(t,Oo.current);Si(t,n),o=xs(null,t,r,e,o,n);var s=Ss();return t.flags|=1,"object"==typeof o&&null!==o&&"function"==typeof o.render&&void 0===o.$$typeof?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Do(r)?(s=!0,Po(t)):s=!1,t.memoizedState=null!==o.state&&void 0!==o.state?o.state:null,Ti(t),o.updater=Bi,t.stateNode=o,o._reactInternals=t,Wi(t,r,e,n),t=Oa(null,t,r,!0,s,n)):(t.tag=0,ni&&s&&Zo(t),va(null,t,o,n),t=t.child),t;case 16:r=t.elementType;e:{switch($a(e,t),e=t.pendingProps,r=(o=r._init)(r._payload),t.type=r,o=t.tag=function(e){if("function"==typeof e)return Dc(e)?1:0;if(null!=e){if((e=e.$$typeof)===A)return 11;if(e===_)return 14}return 2}(r),e=pi(r,e),o){case 0:t=Ca(null,t,r,e,n);break e;case 1:t=Ma(null,t,r,e,n);break e;case 11:t=ba(null,t,r,e,n);break e;case 14:t=wa(null,t,r,pi(r.type,e),n);break e}throw Error(i(306,r,""))}return t;case 0:return r=t.type,o=t.pendingProps,Ca(e,t,r,o=t.elementType===r?o:pi(r,o),n);case 1:return r=t.type,o=t.pendingProps,Ma(e,t,r,o=t.elementType===r?o:pi(r,o),n);case 3:e:{if(Ea(t),null===e)throw Error(i(387));r=t.pendingProps,o=(s=t.memoizedState).element,Di(e,t),Ii(t,r,null,n);var a=t.memoizedState;if(r=a.element,s.isDehydrated){if(s={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=s,t.memoizedState=s,256&t.flags){t=Aa(e,t,r,n,o=aa(Error(i(423)),t));break e}if(r!==o){t=Aa(e,t,r,n,o=aa(Error(i(424)),t));break e}for(ti=so(t.stateNode.containerInfo.firstChild),ei=t,ni=!0,ri=null,n=Gi(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(hi(),r===o){t=Ha(e,t,n);break e}va(e,t,r,n)}t=t.child}return t;case 5:return rs(t),null===e&&ai(t),r=t.type,o=t.pendingProps,s=null!==e?e.memoizedProps:null,a=o.children,Xr(r,o)?a=null:null!==s&&Xr(r,s)&&(t.flags|=32),ka(e,t),va(e,t,a,n),t.child;case 6:return null===e&&ai(t),null;case 13:return Ia(e,t,n);case 4:return ts(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Yi(t,null,r,n):va(e,t,r,n),t.child;case 11:return r=t.type,o=t.pendingProps,ba(e,t,r,o=t.elementType===r?o:pi(r,o),n);case 7:return va(e,t,t.pendingProps,n),t.child;case 8:case 12:return va(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,o=t.pendingProps,s=t.memoizedProps,a=o.value,Co(mi,r._currentValue),r._currentValue=a,null!==s)if(or(s.value,a)){if(s.children===o.children&&!Eo.current){t=Ha(e,t,n);break e}}else for(null!==(s=t.child)&&(s.return=t);null!==s;){var l=s.dependencies;if(null!==l){a=s.child;for(var c=l.firstContext;null!==c;){if(c.context===r){if(1===s.tag){(c=_i(-1,n&-n)).tag=2;var u=s.updateQueue;if(null!==u){var h=(u=u.shared).pending;null===h?c.next=c:(c.next=h.next,h.next=c),u.pending=c}}s.lanes|=n,null!==(c=s.alternate)&&(c.lanes|=n),xi(s.return,n,t),l.lanes|=n;break}c=c.next}}else if(10===s.tag)a=s.type===t.type?null:s.child;else if(18===s.tag){if(null===(a=s.return))throw Error(i(341));a.lanes|=n,null!==(l=a.alternate)&&(l.lanes|=n),xi(a,n,t),a=s.sibling}else a=s.child;if(null!==a)a.return=s;else for(a=s;null!==a;){if(a===t){a=null;break}if(null!==(s=a.sibling)){s.return=a.return,a=s;break}a=a.return}s=a}va(e,t,o.children,n),t=t.child}return t;case 9:return o=t.type,r=t.pendingProps.children,Si(t,n),r=r(o=ki(o)),t.flags|=1,va(e,t,r,n),t.child;case 14:return o=pi(r=t.type,t.pendingProps),wa(e,t,r,o=pi(r.type,o),n);case 15:return xa(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,o=t.pendingProps,o=t.elementType===r?o:pi(r,o),$a(e,t),t.tag=1,Do(r)?(e=!0,Po(t)):e=!1,Si(t,n),$i(t,r,o),Wi(t,r,o,n),Oa(null,t,r,!0,e,n);case 19:return za(e,t,n);case 22:return Sa(e,t,n)}throw Error(i(156,t.tag))};var Vc="function"==typeof reportError?reportError:function(e){console.error(e)};function qc(e){this._internalRoot=e}function Kc(e){this._internalRoot=e}function Yc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType)}function Gc(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Jc(){}function Qc(e,t,n,r,o){var i=n._reactRootContainer;if(i){var s=i;if("function"==typeof o){var a=o;o=function(){var e=Hc(s);a.call(e)}}$c(t,s,e,o)}else s=function(e,t,n,r,o){if(o){if("function"==typeof r){var i=r;r=function(){var e=Hc(s);i.call(e)}}var s=zc(t,r,e,0,null,!1,0,"",Jc);return e._reactRootContainer=s,e[ho]=s.current,Br(8===e.nodeType?e.parentNode:e),lc(),s}for(;o=e.lastChild;)e.removeChild(o);if("function"==typeof r){var a=r;r=function(){var e=Hc(l);a.call(e)}}var l=Fc(e,0,!1,null,0,!1,0,"",Jc);return e._reactRootContainer=l,e[ho]=l.current,Br(8===e.nodeType?e.parentNode:e),lc((function(){$c(t,l,n,r)})),l}(n,t,e,o,r);return Hc(s)}Kc.prototype.render=qc.prototype.render=function(e){var t=this._internalRoot;if(null===t)throw Error(i(409));$c(e,t,null,null)},Kc.prototype.unmount=qc.prototype.unmount=function(){var e=this._internalRoot;if(null!==e){this._internalRoot=null;var t=e.containerInfo;lc((function(){$c(null,e,null,null)})),t[ho]=null}},Kc.prototype.unstable_scheduleHydration=function(e){if(e){var t=Ct();e={blockedOn:null,target:e,priority:t};for(var n=0;n<Nt.length&&0!==t&&t<Nt[n].priority;n++);Nt.splice(n,0,e),0===n&&jt(e)}},xt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=ht(t.pendingLanes);0!==n&&(vt(t,1|n),tc(t,Qe()),0==(6&Ol)&&(zl=Qe()+500,zo()))}break;case 13:lc((function(){var t=Ei(e,1);if(null!==t){var n=Zl();ec(t,e,1,n)}})),Uc(e,1)}},St=function(e){if(13===e.tag){var t=Ei(e,134217728);null!==t&&ec(t,e,134217728,Zl()),Uc(e,134217728)}},kt=function(e){if(13===e.tag){var t=Xl(e),n=Ei(e,t);null!==n&&ec(n,e,t,Zl()),Uc(e,t)}},Ct=function(){return bt},Mt=function(e,t){var n=bt;try{return bt=e,t()}finally{bt=n}},Se=function(e,t,n){switch(t){case"input":if(Z(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var o=bo(r);if(!o)throw Error(i(90));K(r),Z(r,o)}}}break;case"textarea":ie(e,n);break;case"select":null!=(t=n.value)&&ne(e,!!n.multiple,t,!1)}},Ae=ac,Te=lc;var Zc={usingClientEntryPoint:!1,Events:[yo,vo,bo,Oe,Ee,ac]},Xc={findFiberByHostInstance:go,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},eu={bundleType:Xc.bundleType,version:Xc.version,rendererPackageName:Xc.rendererPackageName,rendererConfig:Xc.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:w.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Ve(e))?null:e.stateNode},findFiberByHostInstance:Xc.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var tu=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!tu.isDisabled&&tu.supportsFiber)try{ot=tu.inject(eu),it=tu}catch(ue){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Zc,t.createPortal=function(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Yc(t))throw Error(i(200));return function(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:S,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}(e,t,null,n)},t.createRoot=function(e,t){if(!Yc(e))throw Error(i(299));var n=!1,r="",o=Vc;return null!=t&&(!0===t.unstable_strictMode&&(n=!0),void 0!==t.identifierPrefix&&(r=t.identifierPrefix),void 0!==t.onRecoverableError&&(o=t.onRecoverableError)),t=Fc(e,1,!1,null,0,n,0,r,o),e[ho]=t.current,Br(8===e.nodeType?e.parentNode:e),new qc(t)},t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(i(188));throw e=Object.keys(e).join(","),Error(i(268,e))}return null===(e=Ve(t))?null:e.stateNode},t.flushSync=function(e){return lc(e)},t.hydrate=function(e,t,n){if(!Gc(t))throw Error(i(200));return Qc(null,e,t,!0,n)},t.hydrateRoot=function(e,t,n){if(!Yc(e))throw Error(i(405));var r=null!=n&&n.hydratedSources||null,o=!1,s="",a=Vc;if(null!=n&&(!0===n.unstable_strictMode&&(o=!0),void 0!==n.identifierPrefix&&(s=n.identifierPrefix),void 0!==n.onRecoverableError&&(a=n.onRecoverableError)),t=zc(t,null,e,1,null!=n?n:null,o,0,s,a),e[ho]=t.current,Br(e),r)for(e=0;e<r.length;e++)o=(o=(n=r[e])._getVersion)(n._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[n,o]:t.mutableSourceEagerHydrationData.push(n,o);return new Kc(t)},t.render=function(e,t,n){if(!Gc(t))throw Error(i(200));return Qc(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Gc(e))throw Error(i(40));return!!e._reactRootContainer&&(lc((function(){Qc(null,null,e,!1,(function(){e._reactRootContainer=null,e[ho]=null}))})),!0)},t.unstable_batchedUpdates=ac,t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Gc(n))throw Error(i(200));if(null==e||void 0===e._reactInternals)throw Error(i(38));return Qc(e,t,n,!1,r)},t.version="18.2.0-next-9e3b772b8-20220608"},745:(e,t,n)=>{"use strict";var r=n(3935);t.s=r.createRoot,r.hydrateRoot},3935:(e,t,n)=>{"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(4448)},463:(e,t,n)=>{"use strict";n.d(t,{uI:()=>se});var r=n(7294),o=n(5697),i=n.n(o);function s(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{l(r.next(e))}catch(e){i(e)}}function a(e){try{l(r.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}l((r=r.apply(e,t||[])).next())}))}function a(e,t){var n,r,o,i,s={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(a){return function(l){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i&&(i=0,a[0]&&(s=0)),s;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,r=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!((o=(o=s.trys).length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){s.label=a[1];break}if(6===a[0]&&s.label<o[1]){s.label=o[1],o=a;break}if(o&&s.label<o[2]){s.label=o[2],s.ops.push(a);break}o[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}}function l(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s}function c(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))}Object.create,Object.create;var u=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["heic","image/heic"],["heif","image/heif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function h(e,t){var n=function(e){var t=e.name;if(t&&-1!==t.lastIndexOf(".")&&!e.type){var n=t.split(".").pop().toLowerCase(),r=u.get(n);r&&Object.defineProperty(e,"type",{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}(e);if("string"!=typeof n.path){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:"string"==typeof t?t:"string"==typeof r&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}var d=[".DS_Store","Thumbs.db"];function f(e){return"object"==typeof e&&null!==e}function p(e){return v(e.target.files).map((function(e){return h(e)}))}function m(e){return s(this,void 0,void 0,(function(){return a(this,(function(t){switch(t.label){case 0:return[4,Promise.all(e.map((function(e){return e.getFile()})))];case 1:return[2,t.sent().map((function(e){return h(e)}))]}}))}))}function g(e,t){return s(this,void 0,void 0,(function(){var n;return a(this,(function(r){switch(r.label){case 0:return e.items?(n=v(e.items).filter((function(e){return"file"===e.kind})),"drop"!==t?[2,n]:[4,Promise.all(n.map(b))]):[3,2];case 1:return[2,y(w(r.sent()))];case 2:return[2,y(v(e.files).map((function(e){return h(e)})))]}}))}))}function y(e){return e.filter((function(e){return-1===d.indexOf(e.name)}))}function v(e){if(null===e)return[];for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r)}return t}function b(e){if("function"!=typeof e.webkitGetAsEntry)return x(e);var t=e.webkitGetAsEntry();return t&&t.isDirectory?k(t):x(e)}function w(e){return e.reduce((function(e,t){return c(c([],l(e),!1),l(Array.isArray(t)?w(t):[t]),!1)}),[])}function x(e){var t=e.getAsFile();if(!t)return Promise.reject("".concat(e," is not a File"));var n=h(t);return Promise.resolve(n)}function S(e){return s(this,void 0,void 0,(function(){return a(this,(function(t){return[2,e.isDirectory?k(e):C(e)]}))}))}function k(e){var t=e.createReader();return new Promise((function(e,n){var r=[];!function o(){var i=this;t.readEntries((function(t){return s(i,void 0,void 0,(function(){var i,s,l;return a(this,(function(a){switch(a.label){case 0:if(t.length)return[3,5];a.label=1;case 1:return a.trys.push([1,3,,4]),[4,Promise.all(r)];case 2:return i=a.sent(),e(i),[3,4];case 3:return s=a.sent(),n(s),[3,4];case 4:return[3,6];case 5:l=Promise.all(t.map(S)),r.push(l),o(),a.label=6;case 6:return[2]}}))}))}),(function(e){n(e)}))}()}))}function C(e){return s(this,void 0,void 0,(function(){return a(this,(function(t){return[2,new Promise((function(t,n){e.file((function(n){var r=h(n,e.fullPath);t(r)}),(function(e){n(e)}))}))]}))}))}var M=n(8363);function O(e){return function(e){if(Array.isArray(e))return R(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?E(Object(n),!0).forEach((function(t){T(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):E(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function T(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function D(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],s=!0,a=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);s=!0);}catch(e){a=!0,o=e}finally{try{s||null==n.return||n.return()}finally{if(a)throw o}}return i}}(e,t)||_(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){if(e){if("string"==typeof e)return R(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?R(e,t):void 0}}function R(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var N=function(e){e=Array.isArray(e)&&1===e.length?e[0]:e;var t=Array.isArray(e)?"one of ".concat(e.join(", ")):e;return{code:"file-invalid-type",message:"File type must be ".concat(t)}},P=function(e){return{code:"file-too-large",message:"File is larger than ".concat(e," ").concat(1===e?"byte":"bytes")}},I=function(e){return{code:"file-too-small",message:"File is smaller than ".concat(e," ").concat(1===e?"byte":"bytes")}},L={code:"too-many-files",message:"Too many files"};function j(e,t){var n="application/x-moz-file"===e.type||(0,M.Z)(e,t);return[n,n?null:N(t)]}function F(e,t,n){if(B(e.size))if(B(t)&&B(n)){if(e.size>n)return[!1,P(n)];if(e.size<t)return[!1,I(t)]}else{if(B(t)&&e.size<t)return[!1,I(t)];if(B(n)&&e.size>n)return[!1,P(n)]}return[!0,null]}function B(e){return null!=e}function z(e){return"function"==typeof e.isPropagationStopped?e.isPropagationStopped():void 0!==e.cancelBubble&&e.cancelBubble}function $(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,(function(e){return"Files"===e||"application/x-moz-file"===e})):!!e.target&&!!e.target.files}function H(e){e.preventDefault()}function W(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return t.some((function(t){return!z(e)&&t&&t.apply(void 0,[e].concat(r)),z(e)}))}}function U(e){return"audio/*"===e||"video/*"===e||"image/*"===e||"text/*"===e||/\w+\/[-+.\w]+/g.test(e)}function V(e){return/^.*\.[\w]+$/.test(e)}var q=["children"],K=["open"],Y=["refKey","role","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"],G=["refKey","onChange","onClick"];function J(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,i=[],s=!0,a=!1;try{for(n=n.call(e);!(s=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);s=!0);}catch(e){a=!0,o=e}finally{try{s||null==n.return||n.return()}finally{if(a)throw o}}return i}}(e,t)||Q(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Q(e,t){if(e){if("string"==typeof e)return Z(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Z(e,t):void 0}}function Z(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function X(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function ee(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?X(Object(n),!0).forEach((function(t){te(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):X(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function te(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ne(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var re=(0,r.forwardRef)((function(e,t){var n=e.children,o=se(ne(e,q)),i=o.open,s=ne(o,K);return(0,r.useImperativeHandle)(t,(function(){return{open:i}}),[i]),r.createElement(r.Fragment,null,n(ee(ee({},s),{},{open:i})))}));re.displayName="Dropzone";var oe={disabled:!1,getFilesFromEvent:function(e){return s(this,void 0,void 0,(function(){return a(this,(function(t){return f(e)&&f(e.dataTransfer)?[2,g(e.dataTransfer,e.type)]:f(n=e)&&f(n.target)?[2,p(e)]:Array.isArray(e)&&e.every((function(e){return"getFile"in e&&"function"==typeof e.getFile}))?[2,m(e)]:[2,[]];var n}))}))},maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0,autoFocus:!1};re.defaultProps=oe,re.propTypes={children:i().func,accept:i().objectOf(i().arrayOf(i().string)),multiple:i().bool,preventDropOnDocument:i().bool,noClick:i().bool,noKeyboard:i().bool,noDrag:i().bool,noDragEventsBubbling:i().bool,minSize:i().number,maxSize:i().number,maxFiles:i().number,disabled:i().bool,getFilesFromEvent:i().func,onFileDialogCancel:i().func,onFileDialogOpen:i().func,useFsAccessApi:i().bool,autoFocus:i().bool,onDragEnter:i().func,onDragLeave:i().func,onDragOver:i().func,onDrop:i().func,onDropAccepted:i().func,onDropRejected:i().func,onError:i().func,validator:i().func};var ie={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,acceptedFiles:[],fileRejections:[]};function se(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=ee(ee({},oe),e),n=t.accept,o=t.disabled,i=t.getFilesFromEvent,s=t.maxSize,a=t.minSize,l=t.multiple,c=t.maxFiles,u=t.onDragEnter,h=t.onDragLeave,d=t.onDragOver,f=t.onDrop,p=t.onDropAccepted,m=t.onDropRejected,g=t.onFileDialogCancel,y=t.onFileDialogOpen,v=t.useFsAccessApi,b=t.autoFocus,w=t.preventDropOnDocument,x=t.noClick,S=t.noKeyboard,k=t.noDrag,C=t.noDragEventsBubbling,M=t.onError,E=t.validator,_=(0,r.useMemo)((function(){return function(e){if(B(e))return Object.entries(e).reduce((function(e,t){var n=D(t,2),r=n[0],o=n[1];return[].concat(O(e),[r],O(o))}),[]).filter((function(e){return U(e)||V(e)})).join(",")}(n)}),[n]),R=(0,r.useMemo)((function(){return function(e){return B(e)?[{description:"Files",accept:Object.entries(e).filter((function(e){var t=D(e,2),n=t[0],r=t[1],o=!0;return U(n)||(console.warn('Skipped "'.concat(n,'" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.')),o=!1),Array.isArray(r)&&r.every(V)||(console.warn('Skipped "'.concat(n,'" because an invalid file extension was provided.')),o=!1),o})).reduce((function(e,t){var n=D(t,2),r=n[0],o=n[1];return A(A({},e),{},T({},r,o))}),{})}]:e}(n)}),[n]),N=(0,r.useMemo)((function(){return"function"==typeof y?y:le}),[y]),P=(0,r.useMemo)((function(){return"function"==typeof g?g:le}),[g]),I=(0,r.useRef)(null),q=(0,r.useRef)(null),K=J((0,r.useReducer)(ae,ie),2),X=K[0],re=K[1],se=X.isFocused,ce=X.isFileDialogActive,ue=(0,r.useRef)("undefined"!=typeof window&&window.isSecureContext&&v&&"showOpenFilePicker"in window),he=function(){!ue.current&&ce&&setTimeout((function(){q.current&&(q.current.files.length||(re({type:"closeDialog"}),P()))}),300)};(0,r.useEffect)((function(){return window.addEventListener("focus",he,!1),function(){window.removeEventListener("focus",he,!1)}}),[q,ce,P,ue]);var de=(0,r.useRef)([]),fe=function(e){I.current&&I.current.contains(e.target)||(e.preventDefault(),de.current=[])};(0,r.useEffect)((function(){return w&&(document.addEventListener("dragover",H,!1),document.addEventListener("drop",fe,!1)),function(){w&&(document.removeEventListener("dragover",H),document.removeEventListener("drop",fe))}}),[I,w]),(0,r.useEffect)((function(){return!o&&b&&I.current&&I.current.focus(),function(){}}),[I,b,o]);var pe=(0,r.useCallback)((function(e){M?M(e):console.error(e)}),[M]),me=(0,r.useCallback)((function(e){var t;e.preventDefault(),e.persist(),Ae(e),de.current=[].concat(function(e){if(Array.isArray(e))return Z(e)}(t=de.current)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||Q(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),[e.target]),$(e)&&Promise.resolve(i(e)).then((function(t){if(!z(e)||C){var n=t.length,r=n>0&&function(e){var t=e.files,n=e.accept,r=e.minSize,o=e.maxSize,i=e.multiple,s=e.maxFiles,a=e.validator;return!(!i&&t.length>1||i&&s>=1&&t.length>s)&&t.every((function(e){var t=D(j(e,n),1)[0],i=D(F(e,r,o),1)[0],s=a?a(e):null;return t&&i&&!s}))}({files:t,accept:_,minSize:a,maxSize:s,multiple:l,maxFiles:c,validator:E});re({isDragAccept:r,isDragReject:n>0&&!r,isDragActive:!0,type:"setDraggedFiles"}),u&&u(e)}})).catch((function(e){return pe(e)}))}),[i,u,pe,C,_,a,s,l,c,E]),ge=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Ae(e);var t=$(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(e){}return t&&d&&d(e),!1}),[d,C]),ye=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Ae(e);var t=de.current.filter((function(e){return I.current&&I.current.contains(e)})),n=t.indexOf(e.target);-1!==n&&t.splice(n,1),de.current=t,t.length>0||(re({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),$(e)&&h&&h(e))}),[I,h,C]),ve=(0,r.useCallback)((function(e,t){var n=[],r=[];e.forEach((function(e){var t=J(j(e,_),2),o=t[0],i=t[1],l=J(F(e,a,s),2),c=l[0],u=l[1],h=E?E(e):null;if(o&&c&&!h)n.push(e);else{var d=[i,u];h&&(d=d.concat(h)),r.push({file:e,errors:d.filter((function(e){return e}))})}})),(!l&&n.length>1||l&&c>=1&&n.length>c)&&(n.forEach((function(e){r.push({file:e,errors:[L]})})),n.splice(0)),re({acceptedFiles:n,fileRejections:r,type:"setFiles"}),f&&f(n,r,t),r.length>0&&m&&m(r,t),n.length>0&&p&&p(n,t)}),[re,l,_,a,s,c,f,p,m,E]),be=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),Ae(e),de.current=[],$(e)&&Promise.resolve(i(e)).then((function(t){z(e)&&!C||ve(t,e)})).catch((function(e){return pe(e)})),re({type:"reset"})}),[i,ve,pe,C]),we=(0,r.useCallback)((function(){if(ue.current){re({type:"openDialog"}),N();var e={multiple:l,types:R};window.showOpenFilePicker(e).then((function(e){return i(e)})).then((function(e){ve(e,null),re({type:"closeDialog"})})).catch((function(e){var t;(t=e)instanceof DOMException&&("AbortError"===t.name||t.code===t.ABORT_ERR)?(P(e),re({type:"closeDialog"})):function(e){return e instanceof DOMException&&("SecurityError"===e.name||e.code===e.SECURITY_ERR)}(e)?(ue.current=!1,q.current?(q.current.value=null,q.current.click()):pe(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided."))):pe(e)}))}else q.current&&(re({type:"openDialog"}),N(),q.current.value=null,q.current.click())}),[re,N,P,v,ve,pe,R,l]),xe=(0,r.useCallback)((function(e){I.current&&I.current.isEqualNode(e.target)&&(" "!==e.key&&"Enter"!==e.key&&32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),we()))}),[I,we]),Se=(0,r.useCallback)((function(){re({type:"focus"})}),[]),ke=(0,r.useCallback)((function(){re({type:"blur"})}),[]),Ce=(0,r.useCallback)((function(){x||(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?setTimeout(we,0):we())}),[x,we]),Me=function(e){return o?null:e},Oe=function(e){return S?null:Me(e)},Ee=function(e){return k?null:Me(e)},Ae=function(e){C&&e.stopPropagation()},Te=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,r=e.role,i=e.onKeyDown,s=e.onFocus,a=e.onBlur,l=e.onClick,c=e.onDragEnter,u=e.onDragOver,h=e.onDragLeave,d=e.onDrop,f=ne(e,Y);return ee(ee(te({onKeyDown:Oe(W(i,xe)),onFocus:Oe(W(s,Se)),onBlur:Oe(W(a,ke)),onClick:Me(W(l,Ce)),onDragEnter:Ee(W(c,me)),onDragOver:Ee(W(u,ge)),onDragLeave:Ee(W(h,ye)),onDrop:Ee(W(d,be)),role:"string"==typeof r&&""!==r?r:"presentation"},n,I),o||S?{}:{tabIndex:0}),f)}}),[I,xe,Se,ke,Ce,me,ge,ye,be,S,k,o]),De=(0,r.useCallback)((function(e){e.stopPropagation()}),[]),_e=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,r=e.onChange,o=e.onClick,i=ne(e,G);return ee(ee({},te({accept:_,multiple:l,type:"file",style:{display:"none"},onChange:Me(W(r,be)),onClick:Me(W(o,De)),tabIndex:-1},n,q)),i)}}),[q,n,l,be,o]);return ee(ee({},X),{},{isFocused:se&&!o,getRootProps:Te,getInputProps:_e,rootRef:I,inputRef:q,open:Me(we)})}function ae(e,t){switch(t.type){case"focus":return ee(ee({},e),{},{isFocused:!0});case"blur":return ee(ee({},e),{},{isFocused:!1});case"openDialog":return ee(ee({},ie),{},{isFileDialogActive:!0});case"closeDialog":return ee(ee({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return ee(ee({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return ee(ee({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return ee({},ie);default:return e}}function le(){}},9921:(e,t)=>{"use strict";var n="function"==typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,i=n?Symbol.for("react.fragment"):60107,s=n?Symbol.for("react.strict_mode"):60108,a=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,h=n?Symbol.for("react.concurrent_mode"):60111,d=n?Symbol.for("react.forward_ref"):60112,f=n?Symbol.for("react.suspense"):60113,p=n?Symbol.for("react.suspense_list"):60120,m=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,y=n?Symbol.for("react.block"):60121,v=n?Symbol.for("react.fundamental"):60117,b=n?Symbol.for("react.responder"):60118,w=n?Symbol.for("react.scope"):60119;function x(e){if("object"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case h:case i:case a:case s:case f:return e;default:switch(e=e&&e.$$typeof){case c:case d:case g:case m:case l:return e;default:return t}}case o:return t}}}function S(e){return x(e)===h}t.AsyncMode=u,t.ConcurrentMode=h,t.ContextConsumer=c,t.ContextProvider=l,t.Element=r,t.ForwardRef=d,t.Fragment=i,t.Lazy=g,t.Memo=m,t.Portal=o,t.Profiler=a,t.StrictMode=s,t.Suspense=f,t.isAsyncMode=function(e){return S(e)||x(e)===u},t.isConcurrentMode=S,t.isContextConsumer=function(e){return x(e)===c},t.isContextProvider=function(e){return x(e)===l},t.isElement=function(e){return"object"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return x(e)===d},t.isFragment=function(e){return x(e)===i},t.isLazy=function(e){return x(e)===g},t.isMemo=function(e){return x(e)===m},t.isPortal=function(e){return x(e)===o},t.isProfiler=function(e){return x(e)===a},t.isStrictMode=function(e){return x(e)===s},t.isSuspense=function(e){return x(e)===f},t.isValidElementType=function(e){return"string"==typeof e||"function"==typeof e||e===i||e===h||e===a||e===s||e===f||e===p||"object"==typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===m||e.$$typeof===l||e.$$typeof===c||e.$$typeof===d||e.$$typeof===v||e.$$typeof===b||e.$$typeof===w||e.$$typeof===y)},t.typeOf=x},9864:(e,t,n)=>{"use strict";e.exports=n(9921)},9655:(e,t,n)=>{"use strict";var r;n.d(t,{UT:()=>u,rU:()=>f});var o=n(7294),i=n(9250),s=n(2599);function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},a.apply(this,arguments)}new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);const l=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset"],c=(r||(r=n.t(o,2))).startTransition;function u(e){let{basename:t,children:n,future:r,window:a}=e,l=o.useRef();null==l.current&&(l.current=(0,s.q_)({window:a,v5Compat:!0}));let u=l.current,[h,d]=o.useState({action:u.action,location:u.location}),{v7_startTransition:f}=r||{},p=o.useCallback((e=>{f&&c?c((()=>d(e))):d(e)}),[d,f]);return o.useLayoutEffect((()=>u.listen(p)),[u,p]),o.createElement(i.F0,{basename:t,children:n,location:h.location,navigationType:h.action,navigator:u})}const h="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,d=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,f=o.forwardRef((function(e,t){let n,{onClick:r,relative:c,reloadDocument:u,replace:f,state:p,target:m,to:g,preventScrollReset:y}=e,v=function(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,l),{basename:b}=o.useContext(i.Us),w=!1;if("string"==typeof g&&d.test(g)&&(n=g,h))try{let e=new URL(window.location.href),t=g.startsWith("//")?new URL(e.protocol+g):new URL(g),n=(0,s.Zn)(t.pathname,b);t.origin===e.origin&&null!=n?g=n+t.search+t.hash:w=!0}catch(e){}let x=(0,i.oQ)(g,{relative:c}),S=function(e,t){let{target:n,replace:r,state:a,preventScrollReset:l,relative:c}=void 0===t?{}:t,u=(0,i.s0)(),h=(0,i.TH)(),d=(0,i.WU)(e,{relative:c});return o.useCallback((t=>{if(function(e,t){return!(0!==e.button||t&&"_self"!==t||function(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}(e))}(t,n)){t.preventDefault();let n=void 0!==r?r:(0,s.Ep)(h)===(0,s.Ep)(d);u(e,{replace:n,state:a,preventScrollReset:l,relative:c})}}),[h,u,d,r,a,n,e,l,c])}(g,{replace:f,state:p,target:m,preventScrollReset:y,relative:c});return o.createElement("a",a({},v,{href:n||x,onClick:w||u?r:function(e){r&&r(e),e.defaultPrevented||S(e)},ref:t,target:m}))}));var p,m;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher"})(p||(p={})),function(e){e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"}(m||(m={}))},9250:(e,t,n)=>{"use strict";var r;n.d(t,{F0:()=>_,Fg:()=>T,TH:()=>m,UO:()=>b,Us:()=>c,V$:()=>x,WU:()=>w,j3:()=>D,oQ:()=>f,s0:()=>y,w3:()=>a});var o=n(7294),i=n(2599);function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},s.apply(this,arguments)}const a=o.createContext(null),l=o.createContext(null),c=o.createContext(null),u=o.createContext(null),h=o.createContext({outlet:null,matches:[],isDataRoute:!1}),d=o.createContext(null);function f(e,t){let{relative:n}=void 0===t?{}:t;p()||(0,i.J0)(!1);let{basename:r,navigator:s}=o.useContext(c),{hash:a,pathname:l,search:u}=w(e,{relative:n}),h=l;return"/"!==r&&(h="/"===l?r:(0,i.RQ)([r,l])),s.createHref({pathname:h,search:u,hash:a})}function p(){return null!=o.useContext(u)}function m(){return p()||(0,i.J0)(!1),o.useContext(u).location}function g(e){o.useContext(c).static||o.useLayoutEffect(e)}function y(){let{isDataRoute:e}=o.useContext(h);return e?function(){let{router:e}=function(e){let t=o.useContext(a);return t||(0,i.J0)(!1),t}(O.UseNavigateStable),t=A(E.UseNavigateStable),n=o.useRef(!1);return g((()=>{n.current=!0})),o.useCallback((function(r,o){void 0===o&&(o={}),n.current&&("number"==typeof r?e.navigate(r):e.navigate(r,s({fromRouteId:t},o)))}),[e,t])}():function(){p()||(0,i.J0)(!1);let e=o.useContext(a),{basename:t,navigator:n}=o.useContext(c),{matches:r}=o.useContext(h),{pathname:s}=m(),l=JSON.stringify((0,i.Zq)(r).map((e=>e.pathnameBase))),u=o.useRef(!1);return g((()=>{u.current=!0})),o.useCallback((function(r,o){if(void 0===o&&(o={}),!u.current)return;if("number"==typeof r)return void n.go(r);let a=(0,i.pC)(r,JSON.parse(l),s,"path"===o.relative);null==e&&"/"!==t&&(a.pathname="/"===a.pathname?t:(0,i.RQ)([t,a.pathname])),(o.replace?n.replace:n.push)(a,o.state,o)}),[t,n,l,s,e])}()}const v=o.createContext(null);function b(){let{matches:e}=o.useContext(h),t=e[e.length-1];return t?t.params:{}}function w(e,t){let{relative:n}=void 0===t?{}:t,{matches:r}=o.useContext(h),{pathname:s}=m(),a=JSON.stringify((0,i.Zq)(r).map((e=>e.pathnameBase)));return o.useMemo((()=>(0,i.pC)(e,JSON.parse(a),s,"path"===n)),[e,a,s,n])}function x(e,t){return function(e,t,n){p()||(0,i.J0)(!1);let{navigator:r}=o.useContext(c),{matches:a}=o.useContext(h),l=a[a.length-1],d=l?l.params:{},f=(l&&l.pathname,l?l.pathnameBase:"/");l&&l.route;let g,y=m();if(t){var v;let e="string"==typeof t?(0,i.cP)(t):t;"/"===f||(null==(v=e.pathname)?void 0:v.startsWith(f))||(0,i.J0)(!1),g=e}else g=y;let b=g.pathname||"/",w="/"===f?b:b.slice(f.length)||"/",x=(0,i.fp)(e,{pathname:w}),S=function(e,t,n){var r;if(void 0===t&&(t=[]),void 0===n&&(n=null),null==e){var s;if(null==(s=n)||!s.errors)return null;e=n.matches}let a=e,l=null==(r=n)?void 0:r.errors;if(null!=l){let e=a.findIndex((e=>e.route.id&&(null==l?void 0:l[e.route.id])));e>=0||(0,i.J0)(!1),a=a.slice(0,Math.min(a.length,e+1))}return a.reduceRight(((e,r,i)=>{let s=r.route.id?null==l?void 0:l[r.route.id]:null,c=null;n&&(c=r.route.errorElement||k);let u=t.concat(a.slice(0,i+1)),h=()=>{let t;return t=s?c:r.route.Component?o.createElement(r.route.Component,null):r.route.element?r.route.element:e,o.createElement(M,{match:r,routeContext:{outlet:e,matches:u,isDataRoute:null!=n},children:t})};return n&&(r.route.ErrorBoundary||r.route.errorElement||0===i)?o.createElement(C,{location:n.location,revalidation:n.revalidation,component:c,error:s,children:h(),routeContext:{outlet:null,matches:u,isDataRoute:!0}}):h()}),null)}(x&&x.map((e=>Object.assign({},e,{params:Object.assign({},d,e.params),pathname:(0,i.RQ)([f,r.encodeLocation?r.encodeLocation(e.pathname).pathname:e.pathname]),pathnameBase:"/"===e.pathnameBase?f:(0,i.RQ)([f,r.encodeLocation?r.encodeLocation(e.pathnameBase).pathname:e.pathnameBase])}))),a,n);return t&&S?o.createElement(u.Provider,{value:{location:s({pathname:"/",search:"",hash:"",state:null,key:"default"},g),navigationType:i.aU.Pop}},S):S}(e,t)}function S(){let e=function(){var e;let t=o.useContext(d),n=function(e){let t=o.useContext(l);return t||(0,i.J0)(!1),t}(E.UseRouteError),r=A(E.UseRouteError);return t||(null==(e=n.errors)?void 0:e[r])}(),t=(0,i.WK)(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return o.createElement(o.Fragment,null,o.createElement("h2",null,"Unexpected Application Error!"),o.createElement("h3",{style:{fontStyle:"italic"}},t),n?o.createElement("pre",{style:r},n):null,null)}const k=o.createElement(S,null);class C extends o.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||"idle"!==t.revalidation&&"idle"===e.revalidation?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error||t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){console.error("React Router caught the following error during render",e,t)}render(){return this.state.error?o.createElement(h.Provider,{value:this.props.routeContext},o.createElement(d.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function M(e){let{routeContext:t,match:n,children:r}=e,i=o.useContext(a);return i&&i.static&&i.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(i.staticContext._deepestRenderedBoundaryId=n.route.id),o.createElement(h.Provider,{value:t},r)}var O=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(O||{}),E=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(E||{});function A(e){let t=function(e){let t=o.useContext(h);return t||(0,i.J0)(!1),t}(),n=t.matches[t.matches.length-1];return n.route.id||(0,i.J0)(!1),n.route.id}function T(e){let{to:t,replace:n,state:r,relative:s}=e;p()||(0,i.J0)(!1);let{matches:a}=o.useContext(h),{pathname:l}=m(),c=y(),u=(0,i.pC)(t,(0,i.Zq)(a).map((e=>e.pathnameBase)),l,"path"===s),d=JSON.stringify(u);return o.useEffect((()=>c(JSON.parse(d),{replace:n,state:r,relative:s})),[c,d,s,n,r]),null}function D(e){return function(e){let t=o.useContext(h).outlet;return t?o.createElement(v.Provider,{value:e},t):t}(e.context)}function _(e){let{basename:t="/",children:n=null,location:r,navigationType:s=i.aU.Pop,navigator:a,static:l=!1}=e;p()&&(0,i.J0)(!1);let h=t.replace(/^\/*/,"/"),d=o.useMemo((()=>({basename:h,navigator:a,static:l})),[h,a,l]);"string"==typeof r&&(r=(0,i.cP)(r));let{pathname:f="/",search:m="",hash:g="",state:y=null,key:v="default"}=r,b=o.useMemo((()=>{let e=(0,i.Zn)(f,h);return null==e?null:{location:{pathname:e,search:m,hash:g,state:y,key:v},navigationType:s}}),[h,f,m,g,y,v,s]);return null==b?null:o.createElement(c.Provider,{value:d},o.createElement(u.Provider,{children:n,value:b}))}(r||(r=n.t(o,2))).startTransition,new Promise((()=>{}));class R extends o.Component{constructor(e){super(e),this.state={error:null}}static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error("<Await> caught the following error during render",e,t)}render(){let{children:e,errorElement:t,resolve:n}=this.props,r=null,o=AwaitRenderStatus.pending;if(n instanceof Promise)if(this.state.error){AwaitRenderStatus.error;let e=this.state.error;Promise.reject().catch((()=>{})),Object.defineProperty(r,"_tracked",{get:()=>!0}),Object.defineProperty(r,"_error",{get:()=>e})}else n._tracked?void 0!==r._error?AwaitRenderStatus.error:void 0!==r._data?AwaitRenderStatus.success:AwaitRenderStatus.pending:(AwaitRenderStatus.pending,Object.defineProperty(n,"_tracked",{get:()=>!0}),n.then((e=>Object.defineProperty(n,"_data",{get:()=>e})),(e=>Object.defineProperty(n,"_error",{get:()=>e}))));else AwaitRenderStatus.success,Promise.resolve(),Object.defineProperty(r,"_tracked",{get:()=>!0}),Object.defineProperty(r,"_data",{get:()=>n});if(o===AwaitRenderStatus.error&&r._error instanceof AbortedDeferredError)throw neverSettledPromise;if(o===AwaitRenderStatus.error&&!t)throw r._error;if(o===AwaitRenderStatus.error)return React.createElement(AwaitContext.Provider,{value:r,children:t});if(o===AwaitRenderStatus.success)return React.createElement(AwaitContext.Provider,{value:r,children:e});throw r}}},3460:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(7294),o=n(296),i=n.n(o);function s(e){let{debounce:t,scroll:n,polyfill:o,offsetSize:s}=void 0===e?{debounce:0,scroll:!1,offsetSize:!1}:e;const l=o||("undefined"==typeof window?class{}:window.ResizeObserver);if(!l)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");const[u,h]=(0,r.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),d=(0,r.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:u}),f=t?"number"==typeof t?t:t.scroll:null,p=t?"number"==typeof t?t:t.resize:null,m=(0,r.useRef)(!1);(0,r.useEffect)((()=>(m.current=!0,()=>{m.current=!1})));const[g,y,v]=(0,r.useMemo)((()=>{const e=()=>{if(!d.current.element)return;const{left:e,top:t,width:n,height:r,bottom:o,right:i,x:a,y:l}=d.current.element.getBoundingClientRect(),u={left:e,top:t,width:n,height:r,bottom:o,right:i,x:a,y:l};d.current.element instanceof HTMLElement&&s&&(u.height=d.current.element.offsetHeight,u.width=d.current.element.offsetWidth),Object.freeze(u),m.current&&!c(d.current.lastBounds,u)&&h(d.current.lastBounds=u)};return[e,p?i()(e,p):e,f?i()(e,f):e]}),[h,s,f,p]);function b(){d.current.scrollContainers&&(d.current.scrollContainers.forEach((e=>e.removeEventListener("scroll",v,!0))),d.current.scrollContainers=null),d.current.resizeObserver&&(d.current.resizeObserver.disconnect(),d.current.resizeObserver=null)}function w(){d.current.element&&(d.current.resizeObserver=new l(v),d.current.resizeObserver.observe(d.current.element),n&&d.current.scrollContainers&&d.current.scrollContainers.forEach((e=>e.addEventListener("scroll",v,{capture:!0,passive:!0}))))}var x,S,k;return x=v,S=Boolean(n),(0,r.useEffect)((()=>{if(S){const e=x;return window.addEventListener("scroll",e,{capture:!0,passive:!0}),()=>{window.removeEventListener("scroll",e,!0)}}}),[x,S]),k=y,(0,r.useEffect)((()=>{const e=k;return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[k]),(0,r.useEffect)((()=>{b(),w()}),[n,v,y]),(0,r.useEffect)((()=>b),[]),[e=>{e&&e!==d.current.element&&(b(),d.current.element=e,d.current.scrollContainers=a(e),w())},u,g]}function a(e){const t=[];if(!e||e===document.body)return t;const{overflow:n,overflowX:r,overflowY:o}=window.getComputedStyle(e);return[n,r,o].some((e=>"auto"===e||"scroll"===e))&&t.push(e),[...t,...a(e.parentElement)]}const l=["x","y","top","bottom","left","right","width","height"],c=(e,t)=>l.every((n=>e[n]===t[n]))},5251:(e,t,n)=>{"use strict";var r=n(7294),o=Symbol.for("react.element"),i=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,n){var r,i={},c=null,u=null;for(r in void 0!==n&&(c=""+n),void 0!==t.key&&(c=""+t.key),void 0!==t.ref&&(u=t.ref),t)s.call(t,r)&&!l.hasOwnProperty(r)&&(i[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===i[r]&&(i[r]=t[r]);return{$$typeof:o,type:e,key:c,ref:u,props:i,_owner:a.current}}t.Fragment=i,t.jsx=c,t.jsxs=c},2408:(e,t)=>{"use strict";var n=Symbol.for("react.element"),r=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),a=Symbol.for("react.provider"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),f=Symbol.iterator,p={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m=Object.assign,g={};function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||p}function v(){}function b(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||p}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},v.prototype=y.prototype;var w=b.prototype=new v;w.constructor=b,m(w,y.prototype),w.isPureReactComponent=!0;var x=Array.isArray,S=Object.prototype.hasOwnProperty,k={current:null},C={key:!0,ref:!0,__self:!0,__source:!0};function M(e,t,r){var o,i={},s=null,a=null;if(null!=t)for(o in void 0!==t.ref&&(a=t.ref),void 0!==t.key&&(s=""+t.key),t)S.call(t,o)&&!C.hasOwnProperty(o)&&(i[o]=t[o]);var l=arguments.length-2;if(1===l)i.children=r;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];i.children=c}if(e&&e.defaultProps)for(o in l=e.defaultProps)void 0===i[o]&&(i[o]=l[o]);return{$$typeof:n,type:e,key:s,ref:a,props:i,_owner:k.current}}function O(e){return"object"==typeof e&&null!==e&&e.$$typeof===n}var E=/\/+/g;function A(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function T(e,t,o,i,s){var a=typeof e;"undefined"!==a&&"boolean"!==a||(e=null);var l=!1;if(null===e)l=!0;else switch(a){case"string":case"number":l=!0;break;case"object":switch(e.$$typeof){case n:case r:l=!0}}if(l)return s=s(l=e),e=""===i?"."+A(l,0):i,x(s)?(o="",null!=e&&(o=e.replace(E,"$&/")+"/"),T(s,t,o,"",(function(e){return e}))):null!=s&&(O(s)&&(s=function(e,t){return{$$typeof:n,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(s,o+(!s.key||l&&l.key===s.key?"":(""+s.key).replace(E,"$&/")+"/")+e)),t.push(s)),1;if(l=0,i=""===i?".":i+":",x(e))for(var c=0;c<e.length;c++){var u=i+A(a=e[c],c);l+=T(a,t,o,u,s)}else if(u=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=f&&e[f]||e["@@iterator"])?e:null}(e),"function"==typeof u)for(e=u.call(e),c=0;!(a=e.next()).done;)l+=T(a=a.value,t,o,u=i+A(a,c++),s);else if("object"===a)throw t=String(e),Error("Objects are not valid as a React child (found: "+("[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return l}function D(e,t,n){if(null==e)return e;var r=[],o=0;return T(e,r,"","",(function(e){return t.call(n,e,o++)})),r}function _(e){if(-1===e._status){var t=e._result;(t=t()).then((function(t){0!==e._status&&-1!==e._status||(e._status=1,e._result=t)}),(function(t){0!==e._status&&-1!==e._status||(e._status=2,e._result=t)})),-1===e._status&&(e._status=0,e._result=t)}if(1===e._status)return e._result.default;throw e._result}var R={current:null},N={transition:null},P={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:N,ReactCurrentOwner:k};t.Children={map:D,forEach:function(e,t,n){D(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return D(e,(function(){t++})),t},toArray:function(e){return D(e,(function(e){return e}))||[]},only:function(e){if(!O(e))throw Error("React.Children.only expected to receive a single React element child.");return e}},t.Component=y,t.Fragment=o,t.Profiler=s,t.PureComponent=b,t.StrictMode=i,t.Suspense=u,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=P,t.cloneElement=function(e,t,r){if(null==e)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var o=m({},e.props),i=e.key,s=e.ref,a=e._owner;if(null!=t){if(void 0!==t.ref&&(s=t.ref,a=k.current),void 0!==t.key&&(i=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)S.call(t,c)&&!C.hasOwnProperty(c)&&(o[c]=void 0===t[c]&&void 0!==l?l[c]:t[c])}var c=arguments.length-2;if(1===c)o.children=r;else if(1<c){l=Array(c);for(var u=0;u<c;u++)l[u]=arguments[u+2];o.children=l}return{$$typeof:n,type:e.type,key:i,ref:s,props:o,_owner:a}},t.createContext=function(e){return(e={$$typeof:l,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:a,_context:e},e.Consumer=e},t.createElement=M,t.createFactory=function(e){var t=M.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:c,render:e}},t.isValidElement=O,t.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:_}},t.memo=function(e,t){return{$$typeof:h,type:e,compare:void 0===t?null:t}},t.startTransition=function(e){var t=N.transition;N.transition={};try{e()}finally{N.transition=t}},t.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")},t.useCallback=function(e,t){return R.current.useCallback(e,t)},t.useContext=function(e){return R.current.useContext(e)},t.useDebugValue=function(){},t.useDeferredValue=function(e){return R.current.useDeferredValue(e)},t.useEffect=function(e,t){return R.current.useEffect(e,t)},t.useId=function(){return R.current.useId()},t.useImperativeHandle=function(e,t,n){return R.current.useImperativeHandle(e,t,n)},t.useInsertionEffect=function(e,t){return R.current.useInsertionEffect(e,t)},t.useLayoutEffect=function(e,t){return R.current.useLayoutEffect(e,t)},t.useMemo=function(e,t){return R.current.useMemo(e,t)},t.useReducer=function(e,t,n){return R.current.useReducer(e,t,n)},t.useRef=function(e){return R.current.useRef(e)},t.useState=function(e){return R.current.useState(e)},t.useSyncExternalStore=function(e,t,n){return R.current.useSyncExternalStore(e,t,n)},t.useTransition=function(){return R.current.useTransition()},t.version="18.2.0"},7294:(e,t,n)=>{"use strict";e.exports=n(2408)},5893:(e,t,n)=>{"use strict";e.exports=n(5251)},3697:(e,t,n)=>{"use strict";var r=n(5972).functionsHaveConfigurableNames(),o=Object,i=TypeError;e.exports=function(){if(null!=this&&this!==o(this))throw new i("RegExp.prototype.flags getter called on non-object");var e="";return this.hasIndices&&(e+="d"),this.global&&(e+="g"),this.ignoreCase&&(e+="i"),this.multiline&&(e+="m"),this.dotAll&&(e+="s"),this.unicode&&(e+="u"),this.sticky&&(e+="y"),e},r&&Object.defineProperty&&Object.defineProperty(e.exports,"name",{value:"get flags"})},3290:(e,t,n)=>{"use strict";var r=n(4289),o=n(5559),i=n(3697),s=n(1721),a=n(2753),l=o(s());r(l,{getPolyfill:s,implementation:i,shim:a}),e.exports=l},1721:(e,t,n)=>{"use strict";var r=n(3697),o=n(4289).supportsDescriptors,i=Object.getOwnPropertyDescriptor;e.exports=function(){if(o&&"gim"===/a/gim.flags){var e=i(RegExp.prototype,"flags");if(e&&"function"==typeof e.get&&"boolean"==typeof RegExp.prototype.dotAll&&"boolean"==typeof RegExp.prototype.hasIndices){var t="",n={};if(Object.defineProperty(n,"hasIndices",{get:function(){t+="d"}}),Object.defineProperty(n,"sticky",{get:function(){t+="y"}}),"dy"===t)return e.get}}return r}},2753:(e,t,n)=>{"use strict";var r=n(4289).supportsDescriptors,o=n(1721),i=Object.getOwnPropertyDescriptor,s=Object.defineProperty,a=TypeError,l=Object.getPrototypeOf,c=/a/;e.exports=function(){if(!r||!l)throw new a("RegExp.prototype.flags requires a true ES5 environment that supports property descriptors");var e=o(),t=l(c),n=i(t,"flags");return n&&n.get===e||s(t,"flags",{configurable:!0,enumerable:!1,get:e}),e}},53:(e,t)=>{"use strict";function n(e,t){var n=e.length;e.push(t);e:for(;0<n;){var r=n-1>>>1,o=e[r];if(!(0<i(o,t)))break e;e[r]=t,e[n]=o,n=r}}function r(e){return 0===e.length?null:e[0]}function o(e){if(0===e.length)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,o=e.length,s=o>>>1;r<s;){var a=2*(r+1)-1,l=e[a],c=a+1,u=e[c];if(0>i(l,n))c<o&&0>i(u,l)?(e[r]=u,e[c]=n,r=c):(e[r]=l,e[a]=n,r=a);else{if(!(c<o&&0>i(u,n)))break e;e[r]=u,e[c]=n,r=c}}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}if("object"==typeof performance&&"function"==typeof performance.now){var s=performance;t.unstable_now=function(){return s.now()}}else{var a=Date,l=a.now();t.unstable_now=function(){return a.now()-l}}var c=[],u=[],h=1,d=null,f=3,p=!1,m=!1,g=!1,y="function"==typeof setTimeout?setTimeout:null,v="function"==typeof clearTimeout?clearTimeout:null,b="undefined"!=typeof setImmediate?setImmediate:null;function w(e){for(var t=r(u);null!==t;){if(null===t.callback)o(u);else{if(!(t.startTime<=e))break;o(u),t.sortIndex=t.expirationTime,n(c,t)}t=r(u)}}function x(e){if(g=!1,w(e),!m)if(null!==r(c))m=!0,N(S);else{var t=r(u);null!==t&&P(x,t.startTime-e)}}function S(e,n){m=!1,g&&(g=!1,v(O),O=-1),p=!0;var i=f;try{for(w(n),d=r(c);null!==d&&(!(d.expirationTime>n)||e&&!T());){var s=d.callback;if("function"==typeof s){d.callback=null,f=d.priorityLevel;var a=s(d.expirationTime<=n);n=t.unstable_now(),"function"==typeof a?d.callback=a:d===r(c)&&o(c),w(n)}else o(c);d=r(c)}if(null!==d)var l=!0;else{var h=r(u);null!==h&&P(x,h.startTime-n),l=!1}return l}finally{d=null,f=i,p=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var k,C=!1,M=null,O=-1,E=5,A=-1;function T(){return!(t.unstable_now()-A<E)}function D(){if(null!==M){var e=t.unstable_now();A=e;var n=!0;try{n=M(!0,e)}finally{n?k():(C=!1,M=null)}}else C=!1}if("function"==typeof b)k=function(){b(D)};else if("undefined"!=typeof MessageChannel){var _=new MessageChannel,R=_.port2;_.port1.onmessage=D,k=function(){R.postMessage(null)}}else k=function(){y(D,0)};function N(e){M=e,C||(C=!0,k())}function P(e,n){O=y((function(){e(t.unstable_now())}),n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){m||p||(m=!0,N(S))},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):E=0<e?Math.floor(1e3/e):5},t.unstable_getCurrentPriorityLevel=function(){return f},t.unstable_getFirstCallbackNode=function(){return r(c)},t.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},t.unstable_scheduleCallback=function(e,o,i){var s=t.unstable_now();switch(i="object"==typeof i&&null!==i&&"number"==typeof(i=i.delay)&&0<i?s+i:s,e){case 1:var a=-1;break;case 2:a=250;break;case 5:a=1073741823;break;case 4:a=1e4;break;default:a=5e3}return e={id:h++,callback:o,priorityLevel:e,startTime:i,expirationTime:a=i+a,sortIndex:-1},i>s?(e.sortIndex=i,n(u,e),null===r(c)&&e===r(u)&&(g?(v(O),O=-1):g=!0,P(x,i-s))):(e.sortIndex=a,n(c,e),m||p||(m=!0,N(S))),e},t.unstable_shouldYield=T,t.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}},3840:(e,t,n)=>{"use strict";e.exports=n(53)},7478:(e,t,n)=>{"use strict";var r=n(210),o=n(1924),i=n(631),s=r("%TypeError%"),a=r("%WeakMap%",!0),l=r("%Map%",!0),c=o("WeakMap.prototype.get",!0),u=o("WeakMap.prototype.set",!0),h=o("WeakMap.prototype.has",!0),d=o("Map.prototype.get",!0),f=o("Map.prototype.set",!0),p=o("Map.prototype.has",!0),m=function(e,t){for(var n,r=e;null!==(n=r.next);r=n)if(n.key===t)return r.next=n.next,n.next=e.next,e.next=n,n};e.exports=function(){var e,t,n,r={assert:function(e){if(!r.has(e))throw new s("Side channel does not contain "+i(e))},get:function(r){if(a&&r&&("object"==typeof r||"function"==typeof r)){if(e)return c(e,r)}else if(l){if(t)return d(t,r)}else if(n)return function(e,t){var n=m(e,t);return n&&n.value}(n,r)},has:function(r){if(a&&r&&("object"==typeof r||"function"==typeof r)){if(e)return h(e,r)}else if(l){if(t)return p(t,r)}else if(n)return function(e,t){return!!m(e,t)}(n,r);return!1},set:function(r,o){a&&r&&("object"==typeof r||"function"==typeof r)?(e||(e=new a),u(e,r,o)):l?(t||(t=new l),f(t,r,o)):(n||(n={key:{},next:null}),function(e,t,n){var r=m(e,t);r?r.value=n:e.next={key:t,next:e.next,value:n}}(n,r,o))}};return r}},8213:(e,t)=>{class n{constructor(){this._array=[],this._set=new Map}static fromArray(e,t){const r=new n;for(let n=0,o=e.length;n<o;n++)r.add(e[n],t);return r}size(){return this._set.size}add(e,t){const n=this.has(e),r=this._array.length;n&&!t||this._array.push(e),n||this._set.set(e,r)}has(e){return this._set.has(e)}indexOf(e){const t=this._set.get(e);if(t>=0)return t;throw new Error('"'+e+'" is not in the set.')}at(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)}toArray(){return this._array.slice()}}t.I=n},6400:(e,t,n)=>{const r=n(7923);t.encode=function(e){let t,n="",o=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&o,o>>>=5,o>0&&(t|=32),n+=r.encode(t)}while(o>0);return n}},7923:(e,t)=>{const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<n.length)return n[e];throw new TypeError("Must be between 0 and 63: "+e)}},9216:(e,t)=>{function n(e,r,o,i,s,a){const l=Math.floor((r-e)/2)+e,c=s(o,i[l],!0);return 0===c?l:c>0?r-l>1?n(l,r,o,i,s,a):a==t.LEAST_UPPER_BOUND?r<i.length?r:-1:l:l-e>1?n(e,l,o,i,s,a):a==t.LEAST_UPPER_BOUND?l:e<0?-1:e}t.GREATEST_LOWER_BOUND=1,t.LEAST_UPPER_BOUND=2,t.search=function(e,r,o,i){if(0===r.length)return-1;let s=n(-1,r.length,e,r,o,i||t.GREATEST_LOWER_BOUND);if(s<0)return-1;for(;s-1>=0&&0===o(r[s],r[s-1],!0);)--s;return s}},1188:(e,t,n)=>{const r=n(2728);t.H=class{constructor(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}unsortedForEach(e,t){this._array.forEach(e,t)}add(e){!function(e,t){const n=e.generatedLine,o=t.generatedLine,i=e.generatedColumn,s=t.generatedColumn;return o>n||o==n&&s>=i||r.compareByGeneratedPositionsInflated(e,t)<=0}(this._last,e)?(this._sorted=!1,this._array.push(e)):(this._last=e,this._array.push(e))}toArray(){return this._sorted||(this._array.sort(r.compareByGeneratedPositionsInflated),this._sorted=!0),this._array}}},8429:(e,t,n)=>{if(function(){return"undefined"!=typeof window&&this===window}.call()){let t=null;e.exports=function(){if("string"==typeof t)return fetch(t).then((e=>e.arrayBuffer()));if(t instanceof ArrayBuffer)return Promise.resolve(t);throw new Error("You must provide the string URL or ArrayBuffer contents of lib/mappings.wasm by calling SourceMapConsumer.initialize({ 'lib/mappings.wasm': ... }) before using SourceMapConsumer")},e.exports.initialize=e=>t=e}else{const t=n(5574),r=n(6152);e.exports=function(){return new Promise(((e,n)=>{const o=r.join("/","mappings.wasm");t.readFile(o,null,((t,r)=>{t?n(t):e(r.buffer)}))}))},e.exports.initialize=e=>{console.debug("SourceMapConsumer.initialize is a no-op when running in node.js")}}},6771:(e,t,n)=>{const r=n(2728),o=n(9216),i=n(8213).I,s=(n(6400),n(8429)),a=n(1225),l=Symbol("smcInternal");class c{constructor(e,t){return e==l?Promise.resolve(this):function(e,t){let n=e;"string"==typeof e&&(n=r.parseSourceMapInput(e));const o=null!=n.sections?new h(n,t):new u(n,t);return Promise.resolve(o)}(e,t)}static initialize(e){s.initialize(e["lib/mappings.wasm"])}static fromSourceMap(e,t){return function(e,t){return u.fromSourceMap(e,t)}(e,t)}static async with(e,t,n){const r=await new c(e,t);try{return await n(r)}finally{r.destroy()}}_parseMappings(e,t){throw new Error("Subclasses must implement _parseMappings")}eachMapping(e,t,n){throw new Error("Subclasses must implement eachMapping")}allGeneratedPositionsFor(e){throw new Error("Subclasses must implement allGeneratedPositionsFor")}destroy(){throw new Error("Subclasses must implement destroy")}}c.prototype._version=3,c.GENERATED_ORDER=1,c.ORIGINAL_ORDER=2,c.GREATEST_LOWER_BOUND=1,c.LEAST_UPPER_BOUND=2,t.SourceMapConsumer=c;class u extends c{constructor(e,t){return super(l).then((n=>{let o=e;"string"==typeof e&&(o=r.parseSourceMapInput(e));const s=r.getArg(o,"version");let l=r.getArg(o,"sources");const c=r.getArg(o,"names",[]);let u=r.getArg(o,"sourceRoot",null);const h=r.getArg(o,"sourcesContent",null),d=r.getArg(o,"mappings"),f=r.getArg(o,"file",null);if(s!=n._version)throw new Error("Unsupported version: "+s);return u&&(u=r.normalize(u)),l=l.map(String).map(r.normalize).map((function(e){return u&&r.isAbsolute(u)&&r.isAbsolute(e)?r.relative(u,e):e})),n._names=i.fromArray(c.map(String),!0),n._sources=i.fromArray(l,!0),n._absoluteSources=n._sources.toArray().map((function(e){return r.computeSourceURL(u,e,t)})),n.sourceRoot=u,n.sourcesContent=h,n._mappings=d,n._sourceMapURL=t,n.file=f,n._computedColumnSpans=!1,n._mappingsPtr=0,n._wasm=null,a().then((e=>(n._wasm=e,n)))}))}_findSourceIndex(e){let t=e;if(null!=this.sourceRoot&&(t=r.relative(this.sourceRoot,t)),this._sources.has(t))return this._sources.indexOf(t);for(let t=0;t<this._absoluteSources.length;++t)if(this._absoluteSources[t]==e)return t;return-1}static fromSourceMap(e,t){return new u(e.toString())}get sources(){return this._absoluteSources.slice()}_getMappingsPtr(){return 0===this._mappingsPtr&&this._parseMappings(this._mappings,this.sourceRoot),this._mappingsPtr}_parseMappings(e,t){const n=e.length,r=this._wasm.exports.allocate_mappings(n),o=new Uint8Array(this._wasm.exports.memory.buffer,r,n);for(let t=0;t<n;t++)o[t]=e.charCodeAt(t);const i=this._wasm.exports.parse_mappings(r);if(!i){const e=this._wasm.exports.get_last_error();let t=`Error parsing mappings (code ${e}): `;switch(e){case 1:t+="the mappings contained a negative line, column, source index, or name index";break;case 2:t+="the mappings contained a number larger than 2**32";break;case 3:t+="reached EOF while in the middle of parsing a VLQ";break;case 4:t+="invalid base 64 character while parsing a VLQ";break;default:t+="unknown error code"}throw new Error(t)}this._mappingsPtr=i}eachMapping(e,t,n){const o=t||null,i=n||c.GENERATED_ORDER,s=this.sourceRoot;this._wasm.withMappingCallback((t=>{null!==t.source&&(t.source=this._sources.at(t.source),t.source=r.computeSourceURL(s,t.source,this._sourceMapURL),null!==t.name&&(t.name=this._names.at(t.name))),e.call(o,t)}),(()=>{switch(i){case c.GENERATED_ORDER:this._wasm.exports.by_generated_location(this._getMappingsPtr());break;case c.ORIGINAL_ORDER:this._wasm.exports.by_original_location(this._getMappingsPtr());break;default:throw new Error("Unknown order of iteration.")}}))}allGeneratedPositionsFor(e){let t=r.getArg(e,"source");const n=r.getArg(e,"line"),o=e.column||0;if(t=this._findSourceIndex(t),t<0)return[];if(n<1)throw new Error("Line numbers must be >= 1");if(o<0)throw new Error("Column numbers must be >= 0");const i=[];return this._wasm.withMappingCallback((e=>{let t=e.lastGeneratedColumn;this._computedColumnSpans&&null===t&&(t=1/0),i.push({line:e.generatedLine,column:e.generatedColumn,lastColumn:t})}),(()=>{this._wasm.exports.all_generated_locations_for(this._getMappingsPtr(),t,n-1,"column"in e,o)})),i}destroy(){0!==this._mappingsPtr&&(this._wasm.exports.free_mappings(this._mappingsPtr),this._mappingsPtr=0)}computeColumnSpans(){this._computedColumnSpans||(this._wasm.exports.compute_column_spans(this._getMappingsPtr()),this._computedColumnSpans=!0)}originalPositionFor(e){const t={generatedLine:r.getArg(e,"line"),generatedColumn:r.getArg(e,"column")};if(t.generatedLine<1)throw new Error("Line numbers must be >= 1");if(t.generatedColumn<0)throw new Error("Column numbers must be >= 0");let n,o=r.getArg(e,"bias",c.GREATEST_LOWER_BOUND);if(null==o&&(o=c.GREATEST_LOWER_BOUND),this._wasm.withMappingCallback((e=>n=e),(()=>{this._wasm.exports.original_location_for(this._getMappingsPtr(),t.generatedLine-1,t.generatedColumn,o)})),n&&n.generatedLine===t.generatedLine){let e=r.getArg(n,"source",null);null!==e&&(e=this._sources.at(e),e=r.computeSourceURL(this.sourceRoot,e,this._sourceMapURL));let t=r.getArg(n,"name",null);return null!==t&&(t=this._names.at(t)),{source:e,line:r.getArg(n,"originalLine",null),column:r.getArg(n,"originalColumn",null),name:t}}return{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return!!this.sourcesContent&&this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e}))}sourceContentFor(e,t){if(!this.sourcesContent)return null;const n=this._findSourceIndex(e);if(n>=0)return this.sourcesContent[n];let o,i=e;if(null!=this.sourceRoot&&(i=r.relative(this.sourceRoot,i)),null!=this.sourceRoot&&(o=r.urlParse(this.sourceRoot))){const e=i.replace(/^file:\/\//,"");if("file"==o.scheme&&this._sources.has(e))return this.sourcesContent[this._sources.indexOf(e)];if((!o.path||"/"==o.path)&&this._sources.has("/"+i))return this.sourcesContent[this._sources.indexOf("/"+i)]}if(t)return null;throw new Error('"'+i+'" is not in the SourceMap.')}generatedPositionFor(e){let t=r.getArg(e,"source");if(t=this._findSourceIndex(t),t<0)return{line:null,column:null,lastColumn:null};const n={source:t,originalLine:r.getArg(e,"line"),originalColumn:r.getArg(e,"column")};if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");let o,i=r.getArg(e,"bias",c.GREATEST_LOWER_BOUND);if(null==i&&(i=c.GREATEST_LOWER_BOUND),this._wasm.withMappingCallback((e=>o=e),(()=>{this._wasm.exports.generated_location_for(this._getMappingsPtr(),n.source,n.originalLine-1,n.originalColumn,i)})),o&&o.source===n.source){let e=o.lastGeneratedColumn;return this._computedColumnSpans&&null===e&&(e=1/0),{line:r.getArg(o,"generatedLine",null),column:r.getArg(o,"generatedColumn",null),lastColumn:e}}return{line:null,column:null,lastColumn:null}}}u.prototype.consumer=c;class h extends c{constructor(e,t){return super(l).then((n=>{let o=e;"string"==typeof e&&(o=r.parseSourceMapInput(e));const s=r.getArg(o,"version"),a=r.getArg(o,"sections");if(s!=n._version)throw new Error("Unsupported version: "+s);n._sources=new i,n._names=new i,n.__generatedMappings=null,n.__originalMappings=null,n.__generatedMappingsUnsorted=null,n.__originalMappingsUnsorted=null;let l={line:-1,column:0};return Promise.all(a.map((e=>{if(e.url)throw new Error("Support for url field in sections not implemented.");const n=r.getArg(e,"offset"),o=r.getArg(n,"line"),i=r.getArg(n,"column");if(o<l.line||o===l.line&&i<l.column)throw new Error("Section offsets must be ordered and non-overlapping.");return l=n,new c(r.getArg(e,"map"),t).then((e=>({generatedOffset:{generatedLine:o+1,generatedColumn:i+1},consumer:e})))}))).then((e=>(n._sections=e,n)))}))}get _generatedMappings(){return this.__generatedMappings||this._sortGeneratedMappings(),this.__generatedMappings}get _originalMappings(){return this.__originalMappings||this._sortOriginalMappings(),this.__originalMappings}get _generatedMappingsUnsorted(){return this.__generatedMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappingsUnsorted}get _originalMappingsUnsorted(){return this.__originalMappingsUnsorted||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappingsUnsorted}_sortGeneratedMappings(){const e=this._generatedMappingsUnsorted;e.sort(r.compareByGeneratedPositionsDeflated),this.__generatedMappings=e}_sortOriginalMappings(){const e=this._originalMappingsUnsorted;e.sort(r.compareByOriginalPositions),this.__originalMappings=e}get sources(){const e=[];for(let t=0;t<this._sections.length;t++)for(let n=0;n<this._sections[t].consumer.sources.length;n++)e.push(this._sections[t].consumer.sources[n]);return e}originalPositionFor(e){const t={generatedLine:r.getArg(e,"line"),generatedColumn:r.getArg(e,"column")},n=o.search(t,this._sections,(function(e,t){return e.generatedLine-t.generatedOffset.generatedLine||e.generatedColumn-t.generatedOffset.generatedColumn})),i=this._sections[n];return i?i.consumer.originalPositionFor({line:t.generatedLine-(i.generatedOffset.generatedLine-1),column:t.generatedColumn-(i.generatedOffset.generatedLine===t.generatedLine?i.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}}hasContentsOfAllSources(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))}sourceContentFor(e,t){for(let t=0;t<this._sections.length;t++){const n=this._sections[t].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')}generatedPositionFor(e){for(let t=0;t<this._sections.length;t++){const n=this._sections[t];if(-1===n.consumer._findSourceIndex(r.getArg(e,"source")))continue;const o=n.consumer.generatedPositionFor(e);if(o)return{line:o.line+(n.generatedOffset.generatedLine-1),column:o.column+(n.generatedOffset.generatedLine===o.line?n.generatedOffset.generatedColumn-1:0)}}return{line:null,column:null}}_parseMappings(e,t){const n=this.__generatedMappingsUnsorted=[],o=this.__originalMappingsUnsorted=[];for(let e=0;e<this._sections.length;e++){const t=this._sections[e],i=[];t.consumer.eachMapping((e=>i.push(e)));for(let e=0;e<i.length;e++){const s=i[e];let a=r.computeSourceURL(t.consumer.sourceRoot,null,this._sourceMapURL);this._sources.add(a),a=this._sources.indexOf(a);let l=null;s.name&&(this._names.add(s.name),l=this._names.indexOf(s.name));const c={source:a,generatedLine:s.generatedLine+(t.generatedOffset.generatedLine-1),generatedColumn:s.generatedColumn+(t.generatedOffset.generatedLine===s.generatedLine?t.generatedOffset.generatedColumn-1:0),originalLine:s.originalLine,originalColumn:s.originalColumn,name:l};n.push(c),"number"==typeof c.originalLine&&o.push(c)}}}eachMapping(e,t,n){const o=t||null;let i;switch(n||c.GENERATED_ORDER){case c.GENERATED_ORDER:i=this._generatedMappings;break;case c.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}const s=this.sourceRoot;i.map((function(e){let t=null;return null!==e.source&&(t=this._sources.at(e.source),t=r.computeSourceURL(s,t,this._sourceMapURL)),{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:null===e.name?null:this._names.at(e.name)}}),this).forEach(e,o)}_findMapping(e,t,n,r,i,s){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[r]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[r]);return o.search(e,t,i,s)}allGeneratedPositionsFor(e){const t=r.getArg(e,"line"),n={source:r.getArg(e,"source"),originalLine:t,originalColumn:r.getArg(e,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];if(n.originalLine<1)throw new Error("Line numbers must be >= 1");if(n.originalColumn<0)throw new Error("Column numbers must be >= 0");const i=[];let s=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",r.compareByOriginalPositions,o.LEAST_UPPER_BOUND);if(s>=0){let n=this._originalMappings[s];if(void 0===e.column){const e=n.originalLine;for(;n&&n.originalLine===e;){let e=n.lastGeneratedColumn;this._computedColumnSpans&&null===e&&(e=1/0),i.push({line:r.getArg(n,"generatedLine",null),column:r.getArg(n,"generatedColumn",null),lastColumn:e}),n=this._originalMappings[++s]}}else{const e=n.originalColumn;for(;n&&n.originalLine===t&&n.originalColumn==e;){let e=n.lastGeneratedColumn;this._computedColumnSpans&&null===e&&(e=1/0),i.push({line:r.getArg(n,"generatedLine",null),column:r.getArg(n,"generatedColumn",null),lastColumn:e}),n=this._originalMappings[++s]}}}return i}destroy(){for(let e=0;e<this._sections.length;e++)this._sections[e].consumer.destroy()}}},4433:(e,t,n)=>{const r=n(6400),o=n(2728),i=n(8213).I,s=n(1188).H;class a{constructor(e){e||(e={}),this._file=o.getArg(e,"file",null),this._sourceRoot=o.getArg(e,"sourceRoot",null),this._skipValidation=o.getArg(e,"skipValidation",!1),this._sources=new i,this._names=new i,this._mappings=new s,this._sourcesContents=null}static fromSourceMap(e){const t=e.sourceRoot,n=new a({file:e.file,sourceRoot:t});return e.eachMapping((function(e){const r={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(r.source=e.source,null!=t&&(r.source=o.relative(t,r.source)),r.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(r.name=e.name)),n.addMapping(r)})),e.sources.forEach((function(r){let i=r;null!==t&&(i=o.relative(t,r)),n._sources.has(i)||n._sources.add(i);const s=e.sourceContentFor(r);null!=s&&n.setSourceContent(r,s)})),n}addMapping(e){const t=o.getArg(e,"generated"),n=o.getArg(e,"original",null);let r=o.getArg(e,"source",null),i=o.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,n,r,i),null!=r&&(r=String(r),this._sources.has(r)||this._sources.add(r)),null!=i&&(i=String(i),this._names.has(i)||this._names.add(i)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=n&&n.line,originalColumn:null!=n&&n.column,source:r,name:i})}setSourceContent(e,t){let n=e;null!=this._sourceRoot&&(n=o.relative(this._sourceRoot,n)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[o.toSetString(n)]=t):this._sourcesContents&&(delete this._sourcesContents[o.toSetString(n)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))}applySourceMap(e,t,n){let r=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');r=e.file}const s=this._sourceRoot;null!=s&&(r=o.relative(s,r));const a=this._mappings.toArray().length>0?new i:this._sources,l=new i;this._mappings.unsortedForEach((function(t){if(t.source===r&&null!=t.originalLine){const r=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=r.source&&(t.source=r.source,null!=n&&(t.source=o.join(n,t.source)),null!=s&&(t.source=o.relative(s,t.source)),t.originalLine=r.line,t.originalColumn=r.column,null!=r.name&&(t.name=r.name))}const i=t.source;null==i||a.has(i)||a.add(i);const c=t.name;null==c||l.has(c)||l.add(c)}),this),this._sources=a,this._names=l,e.sources.forEach((function(t){const r=e.sourceContentFor(t);null!=r&&(null!=n&&(t=o.join(n,t)),null!=s&&(t=o.relative(s,t)),this.setSourceContent(t,r))}),this)}_validateMapping(e,t,n,r){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!t&&!n&&!r);else if(!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&n))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:t,name:r}))}_serializeMappings(){let e,t,n,i,s=0,a=1,l=0,c=0,u=0,h=0,d="";const f=this._mappings.toArray();for(let p=0,m=f.length;p<m;p++){if(t=f[p],e="",t.generatedLine!==a)for(s=0;t.generatedLine!==a;)e+=";",a++;else if(p>0){if(!o.compareByGeneratedPositionsInflated(t,f[p-1]))continue;e+=","}e+=r.encode(t.generatedColumn-s),s=t.generatedColumn,null!=t.source&&(i=this._sources.indexOf(t.source),e+=r.encode(i-h),h=i,e+=r.encode(t.originalLine-1-c),c=t.originalLine-1,e+=r.encode(t.originalColumn-l),l=t.originalColumn,null!=t.name&&(n=this._names.indexOf(t.name),e+=r.encode(n-u),u=n)),d+=e}return d}_generateSourcesContent(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=o.relative(t,e));const n=o.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,n)?this._sourcesContents[n]:null}),this)}toJSON(){const e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e}toString(){return JSON.stringify(this.toJSON())}}a.prototype._version=3,t.h=a},7085:(e,t,n)=>{n(4433).h,n(2728)},2728:(e,t)=>{t.getArg=function(e,t,n){if(t in e)return e[t];if(3===arguments.length)return n;throw new Error('"'+t+'" is a required argument.')};const n=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function o(e){const t=e.match(n);return t?{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}:null}function i(e){let t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}t.urlParse=o,t.urlGenerate=i;const s=function(e){const n=[];return function(e){for(let t=0;t<n.length;t++)if(n[t].input===e){const e=n[0];return n[0]=n[t],n[t]=e,n[0].result}const r=function(e){let n=e;const r=o(e);if(r){if(!r.path)return e;n=r.path}const s=t.isAbsolute(n),a=[];let l=0,c=0;for(;;){if(l=c,c=n.indexOf("/",l),-1===c){a.push(n.slice(l));break}for(a.push(n.slice(l,c));c<n.length&&"/"===n[c];)c++}let u=0;for(c=a.length-1;c>=0;c--){const e=a[c];"."===e?a.splice(c,1):".."===e?u++:u>0&&(""===e?(a.splice(c+1,u),u=0):(a.splice(c,2),u--))}return n=a.join("/"),""===n&&(n=s?"/":"."),r?(r.path=n,i(r)):n}(e);return n.unshift({input:e,result:r}),n.length>32&&n.pop(),r}}();function a(e,t){""===e&&(e="."),""===t&&(t=".");const n=o(t),a=o(e);if(a&&(e=a.path||"/"),n&&!n.scheme)return a&&(n.scheme=a.scheme),i(n);if(n||t.match(r))return t;if(a&&!a.host&&!a.path)return a.host=t,i(a);const l="/"===t.charAt(0)?t:s(e.replace(/\/+$/,"")+"/"+t);return a?(a.path=l,i(a)):l}t.normalize=s,t.join=a,t.isAbsolute=function(e){return"/"===e.charAt(0)||n.test(e)},t.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");let n=0;for(;0!==t.indexOf(e+"/");){const r=e.lastIndexOf("/");if(r<0)return t;if((e=e.slice(0,r)).match(/^([^\/]+:\/)?\/*$/))return t;++n}return Array(n+1).join("../")+t.substr(e.length+1)};const l=!("__proto__"in Object.create(null));function c(e){return e}function u(e){if(!e)return!1;const t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(let n=t-10;n>=0;n--)if(36!==e.charCodeAt(n))return!1;return!0}function h(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}t.toSetString=l?c:function(e){return u(e)?"$"+e:e},t.fromSetString=l?c:function(e){return u(e)?e.slice(1):e},t.compareByOriginalPositions=function(e,t,n){let r=h(e.source,t.source);return 0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r||n?r:(r=e.generatedColumn-t.generatedColumn,0!==r?r:(r=e.generatedLine-t.generatedLine,0!==r?r:h(e.name,t.name)))))},t.compareByGeneratedPositionsDeflated=function(e,t,n){let r=e.generatedLine-t.generatedLine;return 0!==r?r:(r=e.generatedColumn-t.generatedColumn,0!==r||n?r:(r=h(e.source,t.source),0!==r?r:(r=e.originalLine-t.originalLine,0!==r?r:(r=e.originalColumn-t.originalColumn,0!==r?r:h(e.name,t.name)))))},t.compareByGeneratedPositionsInflated=function(e,t){let n=e.generatedLine-t.generatedLine;return 0!==n?n:(n=e.generatedColumn-t.generatedColumn,0!==n?n:(n=h(e.source,t.source),0!==n?n:(n=e.originalLine-t.originalLine,0!==n?n:(n=e.originalColumn-t.originalColumn,0!==n?n:h(e.name,t.name)))))},t.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},t.computeSourceURL=function(e,t,n){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),n){const e=o(n);if(!e)throw new Error("sourceMapURL could not be parsed");if(e.path){const t=e.path.lastIndexOf("/");t>=0&&(e.path=e.path.substring(0,t+1))}t=a(i(e),t)}return s(t)}},1225:(e,t,n)=>{const r=n(8429);function o(){this.generatedLine=0,this.generatedColumn=0,this.lastGeneratedColumn=null,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}let i=null;e.exports=function(){if(i)return i;const e=[];return i=r().then((t=>WebAssembly.instantiate(t,{env:{mapping_callback(t,n,r,i,s,a,l,c,u,h){const d=new o;d.generatedLine=t+1,d.generatedColumn=n,r&&(d.lastGeneratedColumn=i-1),s&&(d.source=a,d.originalLine=l+1,d.originalColumn=c,u&&(d.name=h)),e[e.length-1](d)},start_all_generated_locations_for(){console.time("all_generated_locations_for")},end_all_generated_locations_for(){console.timeEnd("all_generated_locations_for")},start_compute_column_spans(){console.time("compute_column_spans")},end_compute_column_spans(){console.timeEnd("compute_column_spans")},start_generated_location_for(){console.time("generated_location_for")},end_generated_location_for(){console.timeEnd("generated_location_for")},start_original_location_for(){console.time("original_location_for")},end_original_location_for(){console.timeEnd("original_location_for")},start_parse_mappings(){console.time("parse_mappings")},end_parse_mappings(){console.timeEnd("parse_mappings")},start_sort_by_generated_location(){console.time("sort_by_generated_location")},end_sort_by_generated_location(){console.timeEnd("sort_by_generated_location")},start_sort_by_original_location(){console.time("sort_by_original_location")},end_sort_by_original_location(){console.timeEnd("sort_by_original_location")}}}))).then((t=>({exports:t.instance.exports,withMappingCallback:(t,n)=>{e.push(t);try{n()}finally{e.pop()}}}))).then(null,(e=>{throw i=null,e})),i}},9125:(e,t,n)=>{n(4433).h,t.SourceMapConsumer=n(6771).SourceMapConsumer,n(7085)},9829:function(e,t){var n,r,o;!function(i,s){"use strict";r=[],void 0===(o="function"==typeof(n=function(){function e(e){return e.charAt(0).toUpperCase()+e.substring(1)}function t(e){return function(){return this[e]}}var n=["isConstructor","isEval","isNative","isToplevel"],r=["columnNumber","lineNumber"],o=["fileName","functionName","source"],i=n.concat(r,o,["args"],["evalOrigin"]);function s(t){if(t)for(var n=0;n<i.length;n++)void 0!==t[i[n]]&&this["set"+e(i[n])](t[i[n]])}s.prototype={getArgs:function(){return this.args},setArgs:function(e){if("[object Array]"!==Object.prototype.toString.call(e))throw new TypeError("Args must be an Array");this.args=e},getEvalOrigin:function(){return this.evalOrigin},setEvalOrigin:function(e){if(e instanceof s)this.evalOrigin=e;else{if(!(e instanceof Object))throw new TypeError("Eval Origin must be an Object or StackFrame");this.evalOrigin=new s(e)}},toString:function(){var e=this.getFileName()||"",t=this.getLineNumber()||"",n=this.getColumnNumber()||"",r=this.getFunctionName()||"";return this.getIsEval()?e?"[eval] ("+e+":"+t+":"+n+")":"[eval]:"+t+":"+n:r?r+" ("+e+":"+t+":"+n+")":e+":"+t+":"+n}},s.fromString=function(e){var t=e.indexOf("("),n=e.lastIndexOf(")"),r=e.substring(0,t),o=e.substring(t+1,n).split(","),i=e.substring(n+1);if(0===i.indexOf("@"))var a=/@(.+?)(?::(\d+))?(?::(\d+))?$/.exec(i,""),l=a[1],c=a[2],u=a[3];return new s({functionName:r,args:o||void 0,fileName:l,lineNumber:c||void 0,columnNumber:u||void 0})};for(var a=0;a<n.length;a++)s.prototype["get"+e(n[a])]=t(n[a]),s.prototype["set"+e(n[a])]=function(e){return function(t){this[e]=Boolean(t)}}(n[a]);for(var l=0;l<r.length;l++)s.prototype["get"+e(r[l])]=t(r[l]),s.prototype["set"+e(r[l])]=function(e){return function(t){if(n=t,isNaN(parseFloat(n))||!isFinite(n))throw new TypeError(e+" must be a Number");var n;this[e]=Number(t)}}(r[l]);for(var c=0;c<o.length;c++)s.prototype["get"+e(o[c])]=t(o[c]),s.prototype["set"+e(o[c])]=function(e){return function(t){this[e]=String(t)}}(o[c]);return s})?n.apply(t,r):n)||(e.exports=o)}()},6373:(e,t,n)=>{"use strict";var r=n(9496),o=SyntaxError,i="object"==typeof StopIteration?StopIteration:null;e.exports=function(e){if(!i)throw new o("this environment lacks StopIteration");r.set(e,"[[Done]]",!1);var t={next:function(){var e=r.get(this,"[[Iterator]]"),t=r.get(e,"[[Done]]");try{return{done:t,value:t?void 0:e.next()}}catch(t){if(r.set(e,"[[Done]]",!0),t!==i)throw t;return{done:!0,value:void 0}}}};return r.set(t,"[[Iterator]]",e),t}},6597:(e,t,n)=>{"use strict";var r=n(3379),o=n.n(r),i=n(7795),s=n.n(i),a=n(569),l=n.n(a),c=n(3565),u=n.n(c),h=n(7446),d=n.n(h),f=n(4589),p=n.n(f),m=n(8687),g={};g.styleTagTransform=p(),g.setAttributes=u(),g.insert=l().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),o()(m.Z,g),m.Z&&m.Z.locals&&m.Z.locals},1313:(e,t,n)=>{"use strict";var r=n(3379),o=n.n(r),i=n(7795),s=n.n(i),a=n(569),l=n.n(a),c=n(3565),u=n.n(c),h=n(7446),d=n.n(h),f=n(4589),p=n.n(f),m=n(7584),g={};g.styleTagTransform=p(),g.setAttributes=u(),g.insert=l().bind(null,"head"),g.domAPI=s(),g.insertStyleElement=d(),o()(m.Z,g),m.Z&&m.Z.locals&&m.Z.locals},3379:e=>{"use strict";var t=[];function n(e){for(var n=-1,r=0;r<t.length;r++)if(t[r].identifier===e){n=r;break}return n}function r(e,r){for(var i={},s=[],a=0;a<e.length;a++){var l=e[a],c=r.base?l[0]+r.base:l[0],u=i[c]||0,h="".concat(c," ").concat(u);i[c]=u+1;var d=n(h),f={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==d)t[d].references++,t[d].updater(f);else{var p=o(f,r);r.byIndex=a,t.splice(a,0,{identifier:h,updater:p,references:1})}s.push(h)}return s}function o(e,t){var n=t.domAPI(t);return n.update(e),function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;n.update(e=t)}else n.remove()}}e.exports=function(e,o){var i=r(e=e||[],o=o||{});return function(e){e=e||[];for(var s=0;s<i.length;s++){var a=n(i[s]);t[a].references--}for(var l=r(e,o),c=0;c<i.length;c++){var u=n(i[c]);0===t[u].references&&(t[u].updater(),t.splice(u,1))}i=l}}},569:e=>{"use strict";var t={};e.exports=function(e,n){var r=function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(e){n=null}t[e]=n}return t[e]}(e);if(!r)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");r.appendChild(n)}},7446:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},3565:(e,t,n)=>{"use strict";e.exports=function(e){var t=n.nc;t&&e.setAttribute("nonce",t)}},7795:e=>{"use strict";e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=e.insertStyleElement(e);return{update:function(n){!function(e,t,n){var r="";n.supports&&(r+="@supports (".concat(n.supports,") {")),n.media&&(r+="@media ".concat(n.media," {"));var o=void 0!==n.layer;o&&(r+="@layer".concat(n.layer.length>0?" ".concat(n.layer):""," {")),r+=n.css,o&&(r+="}"),n.media&&(r+="}"),n.supports&&(r+="}");var i=n.sourceMap;i&&"undefined"!=typeof btoa&&(r+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),t.styleTagTransform(r,e,t.options)}(t,e,n)},remove:function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(t)}}}},4589:e=>{"use strict";e.exports=function(e,t){if(t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}},4194:(e,t,n)=>{"use strict";n.d(t,{Z:()=>h});var r=n(3832),o=n.n(r),i=n(7563),s=n(211),a=n(6686),l=n(2190);function c(e,t,n){switch(e.type){case i.K$:case i.h5:case i.Ab:return e.return=e.return||e.value;case i.Fr:e.value=Array.isArray(e.props)?e.props.join(","):e.props,Array.isArray(e.children)&&e.children.forEach((function(e){e.type===i.Ab&&(e.children=e.value)}))}var r=(0,s.q)(Array.prototype.concat(e.children),c);return(0,a.to)(r)?e.return=e.value+"{"+r+"}":""}function u(e,t,n,r){if(e.type===i.lK||e.type===i.QY||e.type===i.Fr&&(!e.parent||e.parent.type===i.iD||e.parent.type===i.Fr)){var s=o().transform(c(e));e.children=s?(0,l.MY)(s)[0].children:[],e.return=""}}Object.defineProperty(u,"name",{value:"stylisRTLPlugin"});const h=u},9225:(e,t,n)=>{"use strict";n.d(t,{Q:()=>i});var r=n(7294),o=n(9250);const i=({children:e})=>{var t;const{navigator:n}=(0,r.useContext)(o.Us),i=(0,o.s0)(),s=null==(t=(0,r.useContext)(o.w3))?void 0:t.router,a=(0,o.TH)();return e({replace(e){i(e.search||"?",{replace:!0,state:e.state})},push(e){i(e.search||"?",{replace:!1,state:e.state})},get location(){var e,t,r;return null!=(r=null!=(t=null==(e=null==s?void 0:s.state)?void 0:e.location)?t:null==n?void 0:n.location)?r:a}})}},4420:(e,t,n)=>{"use strict";function r(e,t,n=!0){return{...e,default:t,decode:(...r)=>{const o=e.decode(...r);return void 0===o||n&&null===o?t:o}}}function o(e,t){if(null==e)return e;if(0===e.length&&(!t||t&&""!==e))return null;const n=e instanceof Array?e[0]:e;return null==n||t||""!==n?n:null}function i(e){return null==e?e:String(e)}function s(e){const t=o(e,!0);return null==t?t:String(t)}n.d(t,{JsonParam:()=>u,NumberParam:()=>c,QueryParamProvider:()=>A,StringParam:()=>a,createEnumParam:()=>l,useQueryParams:()=>N,withDefault:()=>r});const a={encode:i,decode:s},l=e=>({encode:i,decode:t=>function(e,t){const n=s(e);return null==n||t.includes(n)?n:void 0}(t,e)}),c={encode:function(e){return null==e?e:String(e)},decode:function(e){const t=o(e);return null==t?t:""===t?null:+t}},u={encode:function(e){return null==e?e:JSON.stringify(e)},decode:function(e){const t=o(e);if(null==t)return t;let n=null;try{n=JSON.parse(t)}catch(e){}return n}};'{}[],":'.split("").map((e=>[e,encodeURIComponent(e)]));var h=n(7294);const d=new class{constructor(){this.paramsMap=new Map,this.registeredParams=new Map}set(e,t,n,r){this.paramsMap.set(e,{stringified:t,decoded:n,decode:r})}has(e,t,n){if(!this.paramsMap.has(e))return!1;const r=this.paramsMap.get(e);return!!r&&r.stringified===t&&(null==n||r.decode===n)}get(e){var t;if(this.paramsMap.has(e))return null==(t=this.paramsMap.get(e))?void 0:t.decoded}registerParams(e){for(const t of e){const e=this.registeredParams.get(t)||0;this.registeredParams.set(t,e+1)}}unregisterParams(e){for(const t of e){const e=(this.registeredParams.get(t)||0)-1;e<=0?(this.registeredParams.delete(t),this.paramsMap.has(t)&&this.paramsMap.delete(t)):this.registeredParams.set(t,e)}}clear(){this.paramsMap.clear(),this.registeredParams.clear()}};function f(e,t,n,r){var o;if(!n||!t.length)return e;let i={...e},s=!1;for(const e of t)Object.prototype.hasOwnProperty.call(i,e)||(i[e]=null!=(o=n[e])?o:r,s=!0);return s?i:e}const p=Object.prototype.hasOwnProperty;function m(e,t){return e===t?0!==e||0!==t||1/e==1/t:e!=e&&t!=t}function g(e,t,n){var r,o;if(m(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;const i=Object.keys(e),s=Object.keys(t);if(i.length!==s.length)return!1;for(let s=0;s<i.length;s++){const a=null!=(o=null==(r=null==n?void 0:n[i[s]])?void 0:r.equals)?o:m;if(!p.call(t,i[s])||!a(e[i[s]],t[i[s]]))return!1}return!0}function y(e,t,n){const r={},o=Object.keys(t);for(const i of o){const o=t[i],s=e[i];let a;if(n.has(i,s,o.decode))a=n.get(i);else{if(a=o.decode(s),o.equals&&n.has(i,s)){const e=n.get(i);o.equals(a,e)&&(a=e)}void 0!==a&&n.set(i,s,a,o.decode)}void 0===a&&void 0!==o.default&&(a=o.default),r[i]=a}return r}function v(){let e;return function(t,n,r){const o=y(t,n,r);return null!=e&&g(e,o)?e:(e=o,o)}}let b,w,x,S={};const k=(e,t,n)=>{if(b===t&&x===e&&w===n)return S;b=t,x=e;const r=e(null!=t?t:"");w=n;const o=function(e){if(e)return Object.fromEntries(e.split("\n").map((e=>e.split("\0"))))}(n);for(let[e,t]of Object.entries(r)){(null==o?void 0:o[e])&&(delete r[e],e=o[e],r[e]=t);const n=S[e];g(t,n)&&(r[e]=n)}return S=r,r};function C(e,t){null==t&&(t={});const n={...e,...t};return t.params&&e.params&&(n.params={...e.params,...t.params}),n}const M={adapter:{},options:{searchStringToObject:function(e){const t=new URLSearchParams(e),n={};for(let[e,r]of t)Object.prototype.hasOwnProperty.call(n,e)?Array.isArray(n[e])?n[e].push(r):n[e]=[n[e],r]:n[e]=r;return n},objectToSearchString:function(e){const t=new URLSearchParams,n=Object.entries(e);for(const[e,r]of n)if(null!=r)if(Array.isArray(r))for(const n of r)t.append(e,null!=n?n:"");else t.append(e,r);return t.toString()},updateType:"pushIn",includeKnownParams:void 0,includeAllParams:!1,removeDefaultsFromUrl:!1,enableBatching:!1,skipUpdateWhenNoChange:!0}},O=h.createContext(M);function E({children:e,adapter:t,options:n}){const{adapter:r,options:o}=h.useContext(O),i=h.useMemo((()=>({adapter:null!=t?t:r,options:C(o,n)})),[t,n,r,o]);return h.createElement(O.Provider,{value:i},e)}function A({children:e,adapter:t,options:n}){const r=t;return r?h.createElement(r,null,(t=>h.createElement(E,{adapter:t,options:n},e))):h.createElement(E,{options:n},e)}function T({changes:e,updateType:t,currentSearchString:n,paramConfigMap:r,options:o}){const{searchStringToObject:i,objectToSearchString:s}=o;let a;null==t&&(t=o.updateType);const l=k(i,n),c=f(r,Object.keys(e),o.params);let u,h;return u="function"==typeof e?e(y(l,c,d)):e,a=function(e,t){const n={},r=Object.keys(t);for(const o of r){const r=t[o];e[o]?n[o]=e[o].encode(t[o]):n[o]=null==r?r:String(r)}return n}(c,u),o.removeDefaultsFromUrl&&function(e,t){var n;for(const r in e)void 0!==(null==(n=t[r])?void 0:n.default)&&void 0!==e[r]&&t[r].encode(t[r].default)===e[r]&&(e[r]=void 0)}(a,c),a=function(e,t){var n;let r={};for(const o in e)null!=(null==(n=t[o])?void 0:n.urlName)?r[t[o].urlName]=e[o]:r[o]=e[o];return r}(a,c),h=s("push"===t||"replace"===t?a:{...l,...a}),(null==h?void 0:h.length)&&"?"!==h[0]&&(h=`?${h}`),null!=h?h:""}const D=e=>e(),_=e=>setTimeout((()=>e()),0),R=[];function N(e,t){const{adapter:n,options:r}=function(){const e=h.useContext(O);if(void 0===e||e===M)throw new Error("useQueryParams must be used within a QueryParamProvider");return e}(),[o]=(0,h.useState)(v),{paramConfigMap:i,options:s}=function(e,t){let n,r;return void 0===e?(n={},r=t):Array.isArray(e)?(n=Object.fromEntries(e.map((e=>[e,"inherit"]))),r=t):(n=e,r=t),{paramConfigMap:n,options:r}}(e,t),l=(0,h.useMemo)((()=>C(r,s)),[r,s]);let c=function(e,t){var n,r,o;const i={};let s=!1;const l=Object.keys(e);let c=l;if(t.includeKnownParams||!1!==t.includeKnownParams&&0===l.length){const e=Object.keys(null!=(n=t.params)?n:{});c.push(...e)}for(const n of c){const l=e[n];null==l||"object"!=typeof l?(s=!0,i[n]=null!=(o=null==(r=t.params)?void 0:r[n])?o:a):i[n]=l}return s?i:e}(i,l);const u=k(l.searchStringToObject,n.location.search,function(e){let t;for(const n in e)if(e[n].urlName){const r=`${e[n].urlName}\0${n}`;t?t.push(r):t=[r]}return t?t.join("\n"):void 0}(c));l.includeAllParams&&(c=f(c,Object.keys(u),l.params,a));const p=o(u,c,d),m=Object.keys(c).join("\0");(0,h.useEffect)((()=>{const e=m.split("\0");return d.registerParams(e),()=>{d.unregisterParams(e)}}),[m]);const g={adapter:n,paramConfigMap:c,options:l},y=(0,h.useRef)(g);null==y.current&&(y.current=g),(0,h.useEffect)((()=>{y.current.adapter=n,y.current.paramConfigMap=c,y.current.options=l}),[n,c,l]);const[b]=(0,h.useState)((()=>(e,t)=>{const{adapter:n,paramConfigMap:r,options:o}=y.current;null==t&&(t=o.updateType),function(e,{immediate:t}={}){R.push(e);let n=t?D:_;1===R.length&&n((()=>{const t=R.slice();R.length=0;const n=t[0].currentSearchString;let r;for(let e=0;e<t.length;++e)r=T(0===e?t[e]:{...t[e],currentSearchString:r});e.options.skipUpdateWhenNoChange&&r===n||function({searchString:e,adapter:t,navigate:n,updateType:r}){const o={...t.location,search:e};n&&("string"==typeof r&&r.startsWith("replace")?t.replace(o):t.push(o))}({searchString:null!=r?r:"",adapter:t[t.length-1].adapter,navigate:!0,updateType:t[t.length-1].updateType})}))}({changes:e,updateType:t,currentSearchString:n.location.search,paramConfigMap:r,options:o,adapter:n},{immediate:!o.enableBatching})}));return[p,b]}},3250:(e,t,n)=>{"use strict";var r=n(7294),o="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},i=r.useState,s=r.useEffect,a=r.useLayoutEffect,l=r.useDebugValue;function c(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!o(e,n)}catch(e){return!0}}var u="undefined"==typeof window||void 0===window.document||void 0===window.document.createElement?function(e,t){return t()}:function(e,t){var n=t(),r=i({inst:{value:n,getSnapshot:t}}),o=r[0].inst,u=r[1];return a((function(){o.value=n,o.getSnapshot=t,c(o)&&u({inst:o})}),[e,n,t]),s((function(){return c(o)&&u({inst:o}),e((function(){c(o)&&u({inst:o})}))}),[e]),l(n),n};t.useSyncExternalStore=void 0!==r.useSyncExternalStore?r.useSyncExternalStore:u},139:(e,t,n)=>{"use strict";var r=n(7294),o=n(1688),i="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},s=o.useSyncExternalStore,a=r.useRef,l=r.useEffect,c=r.useMemo,u=r.useDebugValue;t.useSyncExternalStoreWithSelector=function(e,t,n,r,o){var h=a(null);if(null===h.current){var d={hasValue:!1,value:null};h.current=d}else d=h.current;h=c((function(){function e(e){if(!l){if(l=!0,s=e,e=r(e),void 0!==o&&d.hasValue){var t=d.value;if(o(t,e))return a=t}return a=e}if(t=a,i(s,e))return t;var n=r(e);return void 0!==o&&o(t,n)?t:(s=e,a=n)}var s,a,l=!1,c=void 0===n?null:n;return[function(){return e(t())},null===c?void 0:function(){return e(c())}]}),[t,n,r,o]);var f=s(e,h[0],h[1]);return l((function(){d.hasValue=!0,d.value=f}),[f]),u(f),f}},1688:(e,t,n)=>{"use strict";e.exports=n(3250)},2798:(e,t,n)=>{"use strict";e.exports=n(139)},8721:(e,t,n)=>{"use strict";n.d(t,{Z:()=>l});const r={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let o;const i=new Uint8Array(16);function s(){if(!o&&(o="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!o))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return o(i)}const a=[];for(let e=0;e<256;++e)a.push((e+256).toString(16).slice(1));const l=function(e,t,n){if(r.randomUUID&&!t&&!e)return r.randomUUID();const o=(e=e||{}).random||(e.rng||s)();if(o[6]=15&o[6]|64,o[8]=63&o[8]|128,t){n=n||0;for(let e=0;e<16;++e)t[n+e]=o[e];return t}return function(e,t=0){return(a[e[t+0]]+a[e[t+1]]+a[e[t+2]]+a[e[t+3]]+"-"+a[e[t+4]]+a[e[t+5]]+"-"+a[e[t+6]]+a[e[t+7]]+"-"+a[e[t+8]]+a[e[t+9]]+"-"+a[e[t+10]]+a[e[t+11]]+a[e[t+12]]+a[e[t+13]]+a[e[t+14]]+a[e[t+15]]).toLowerCase()}(o)}},3679:(e,t,n)=>{"use strict";var r=n(9981),o=n(4578),i=n(6814),s=n(2636),a=n(3376);e.exports=function(e){return null==e||"object"!=typeof e&&"function"!=typeof e?null:r(e)?"String":o(e)?"Number":i(e)?"Boolean":s(e)?"Symbol":a(e)?"BigInt":void 0}},6430:(e,t,n)=>{"use strict";var r=n(4029),o=n(3083),i=n(1924),s=n(7296),a=i("Object.prototype.toString"),l=n(6410)(),c="undefined"==typeof globalThis?n.g:globalThis,u=o(),h=i("String.prototype.slice"),d={},f=Object.getPrototypeOf;l&&s&&f&&r(u,(function(e){if("function"==typeof c[e]){var t=new c[e];if(Symbol.toStringTag in t){var n=f(t),r=s(n,Symbol.toStringTag);if(!r){var o=f(n);r=s(o,Symbol.toStringTag)}d[e]=r.get}}}));var p=n(5692);e.exports=function(e){return!!p(e)&&(l&&Symbol.toStringTag in e?function(e){var t=!1;return r(d,(function(n,r){if(!t)try{var o=n.call(e);o===r&&(t=o)}catch(e){}})),t}(e):h(a(e),8,-1))}},3083:(e,t,n)=>{"use strict";var r=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],o="undefined"==typeof globalThis?n.g:globalThis;e.exports=function(){for(var e=[],t=0;t<r.length;t++)"function"==typeof o[r[t]]&&(e[e.length]=r[t]);return e}},3216:(e,t,n)=>{"use strict";var r=n(2584),o=n(6373);if(n(1405)()||n(5419)()){var i=Symbol.iterator;e.exports=function(e){return null!=e&&void 0!==e[i]?e[i]():r(e)?Array.prototype[i].call(e):void 0}}else{var s=n(5826),a=n(9981),l=n(210),c=l("%Map%",!0),u=l("%Set%",!0),h=n(1924),d=h("Array.prototype.push"),f=h("String.prototype.charCodeAt"),p=h("String.prototype.slice"),m=function(e){var t=0;return{next:function(){var n,r=t>=e.length;return r||(n=e[t],t+=1),{done:r,value:n}}}},g=function(e,t){if(s(e)||r(e))return m(e);if(a(e)){var n=0;return{next:function(){var t=function(e,t){if(t+1>=e.length)return t+1;var n=f(e,t);if(n<55296||n>56319)return t+1;var r=f(e,t+1);return r<56320||r>57343?t+1:t+2}(e,n),r=p(e,n,t);return n=t,{done:t>e.length,value:r}}}}return t&&void 0!==e["_es6-shim iterator_"]?e["_es6-shim iterator_"]():void 0};if(c||u){var y=n(8379),v=n(9572),b=h("Map.prototype.forEach",!0),w=h("Set.prototype.forEach",!0);if("undefined"==typeof process||!process.versions||!process.versions.node)var x=h("Map.prototype.iterator",!0),S=h("Set.prototype.iterator",!0);var k=h("Map.prototype.@@iterator",!0)||h("Map.prototype._es6-shim iterator_",!0),C=h("Set.prototype.@@iterator",!0)||h("Set.prototype._es6-shim iterator_",!0);e.exports=function(e){return function(e){if(y(e)){if(x)return o(x(e));if(k)return k(e);if(b){var t=[];return b(e,(function(e,n){d(t,[n,e])})),m(t)}}if(v(e)){if(S)return o(S(e));if(C)return C(e);if(w){var n=[];return w(e,(function(e){d(n,e)})),m(n)}}}(e)||g(e)}}else e.exports=function(e){if(null!=e)return g(e,!0)}}},3483:(e,t,n)=>{"use strict";var r=n(8379),o=n(9572),i=n(1718),s=n(5899);e.exports=function(e){if(e&&"object"==typeof e){if(r(e))return"Map";if(o(e))return"Set";if(i(e))return"WeakMap";if(s(e))return"WeakSet"}return!1}},7462:(e,t,n)=>{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},r.apply(this,arguments)}n.d(t,{Z:()=>r})},3366:(e,t,n)=>{"use strict";function r(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)n=i[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}n.d(t,{Z:()=>r})},8120:(e,t,n)=>{"use strict";n.d(t,{BO:()=>Se,D0:()=>ve,Gz:()=>ze,IS:()=>Be,Py:()=>ue,QQ:()=>V,Wl:()=>K,Xs:()=>Ee,YW:()=>he,as:()=>E,bg:()=>S,cp:()=>g,f_:()=>Ae,gc:()=>M,gm:()=>x,jT:()=>I,n0:()=>O,nZ:()=>k,q6:()=>ae,r$:()=>F,uU:()=>ke,xv:()=>r,yy:()=>xe});class r{constructor(){}lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),i.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){let n=[];return this.decompose(e,t,n,0),i.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),r=new l(this),o=new l(e);for(let e=t,i=t;;){if(r.next(e),o.next(e),e=0,r.lineBreak!=o.lineBreak||r.done!=o.done||r.value!=o.value)return!1;if(i+=r.value.length,r.done||i>=n)return!0}}iter(e=1){return new l(this,e)}iterRange(e,t=this.length){return new c(this,e,t)}iterLines(e,t){let n;if(null==e)n=this.iter();else{null==t&&(t=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new u(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}static of(e){if(0==e.length)throw new RangeError("A document must have at least one line");return 1!=e.length||e[0]?e.length<=32?new o(e):i.from(o.split(e,[])):r.empty}}class o extends r{constructor(e,t=function(e){let t=-1;for(let n of e)t+=n.length+1;return t}(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let o=0;;o++){let i=this.text[o],s=r+i.length;if((t?n:s)>=e)return new h(r,s,n,i);r=s+1,n++}}decompose(e,t,n,r){let i=e<=0&&t>=this.length?this:new o(a(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(1&r){let e=n.pop(),t=s(i.text,e.text.slice(),0,i.length);if(t.length<=32)n.push(new o(t,e.length+i.length));else{let e=t.length>>1;n.push(new o(t.slice(0,e)),new o(t.slice(e)))}}else n.push(i)}replace(e,t,n){if(!(n instanceof o))return super.replace(e,t,n);let r=s(this.text,s(n.text,a(this.text,0,e)),t),l=this.length+n.length-(t-e);return r.length<=32?new o(r,l):i.from(o.split(r,[]),l)}sliceString(e,t=this.length,n="\n"){let r="";for(let o=0,i=0;o<=t&&i<this.text.length;i++){let s=this.text[i],a=o+s.length;o>e&&i&&(r+=n),e<a&&t>o&&(r+=s.slice(Math.max(0,e-o),t-o)),o=a+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],r=-1;for(let i of e)n.push(i),r+=i.length+1,32==n.length&&(t.push(new o(n,r)),n=[],r=-1);return r>-1&&t.push(new o(n,r)),t}}class i extends r{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let t of e)this.lines+=t.lines}lineInner(e,t,n,r){for(let o=0;;o++){let i=this.children[o],s=r+i.length,a=n+i.lines-1;if((t?a:s)>=e)return i.lineInner(e,t,n,r);r=s+1,n=a+1}}decompose(e,t,n,r){for(let o=0,i=0;i<=t&&o<this.children.length;o++){let s=this.children[o],a=i+s.length;if(e<=a&&t>=i){let o=r&((i<=e?1:0)|(a>=t?2:0));i>=e&&a<=t&&!o?n.push(s):s.decompose(e-i,t-i,n,o)}i=a+1}}replace(e,t,n){if(n.lines<this.lines)for(let r=0,o=0;r<this.children.length;r++){let s=this.children[r],a=o+s.length;if(e>=o&&t<=a){let l=s.replace(e-o,t-o,n),c=this.lines-s.lines+l.lines;if(l.lines<c>>4&&l.lines>c>>6){let o=this.children.slice();return o[r]=l,new i(o,this.length-(t-e)+n.length)}return super.replace(o,a,l)}o=a+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n="\n"){let r="";for(let o=0,i=0;o<this.children.length&&i<=t;o++){let s=this.children[o],a=i+s.length;i>e&&o&&(r+=n),e<a&&t>i&&(r+=s.sliceString(e-i,t-i,n)),i=a+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof i))return 0;let n=0,[r,o,s,a]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,o+=t){if(r==s||o==a)return n;let i=this.children[r],l=e.children[o];if(i!=l)return n+i.scanIdentical(l,t);n+=i.length+1}}static from(e,t=e.reduce(((e,t)=>e+t.length+1),-1)){let n=0;for(let t of e)n+=t.lines;if(n<32){let n=[];for(let t of e)t.flatten(n);return new o(n,t)}let r=Math.max(32,n>>5),s=r<<1,a=r>>1,l=[],c=0,u=-1,h=[];function d(e){let t;if(e.lines>s&&e instanceof i)for(let t of e.children)d(t);else e.lines>a&&(c>a||!c)?(f(),l.push(e)):e instanceof o&&c&&(t=h[h.length-1])instanceof o&&e.lines+t.lines<=32?(c+=e.lines,u+=e.length+1,h[h.length-1]=new o(t.text.concat(e.text),t.length+1+e.length)):(c+e.lines>r&&f(),c+=e.lines,u+=e.length+1,h.push(e))}function f(){0!=c&&(l.push(1==h.length?h[0]:i.from(h,u)),u=-1,c=h.length=0)}for(let t of e)d(t);return f(),1==l.length?l[0]:new i(l,t)}}function s(e,t,n=0,r=1e9){for(let o=0,i=0,s=!0;i<e.length&&o<=r;i++){let a=e[i],l=o+a.length;l>=n&&(l>r&&(a=a.slice(0,r-o)),o<n&&(a=a.slice(n-o)),s?(t[t.length-1]+=a,s=!1):t.push(a)),o=l+1}return t}function a(e,t,n){return s(e,[""],t,n)}r.empty=new o([""],0);class l{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof o?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],i=this.offsets[n],s=i>>1,a=r instanceof o?r.text.length:r.children.length;if(s==(t>0?a:0)){if(0==n)return this.done=!0,this.value="",this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&i)==(t>0?0:1)){if(this.offsets[n]+=t,0==e)return this.lineBreak=!0,this.value="\n",this;e--}else if(r instanceof o){let o=r.text[s+(t<0?-1:0)];if(this.offsets[n]+=t,o.length>Math.max(0,e))return this.value=0==e?o:t>0?o.slice(e):o.slice(0,o.length-e),this;e-=o.length}else{let i=r.children[s+(t<0?-1:0)];e>i.length?(e-=i.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(i),this.offsets.push(t>0?1:(i instanceof o?i.text.length:i.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class c{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new l(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}}class u{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=this.inner.next(e);return t?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=r,this.afterBreak=!1),this}get lineBreak(){return!1}}"undefined"!=typeof Symbol&&(r.prototype[Symbol.iterator]=function(){return this.iter()},l.prototype[Symbol.iterator]=c.prototype[Symbol.iterator]=u.prototype[Symbol.iterator]=function(){return this});class h{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}}let d="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map((e=>e?parseInt(e,36):1));for(let e=1;e<d.length;e++)d[e]+=d[e-1];function f(e){for(let t=1;t<d.length;t+=2)if(d[t]>e)return d[t-1]<=e;return!1}function p(e){return e>=127462&&e<=127487}const m=8205;function g(e,t,n=!0,r=!0){return(n?y:v)(e,t,r)}function y(e,t,n){if(t==e.length)return t;t&&b(e.charCodeAt(t))&&w(e.charCodeAt(t-1))&&t--;let r=x(e,t);for(t+=k(r);t<e.length;){let o=x(e,t);if(r==m||o==m||n&&f(o))t+=k(o),r=o;else{if(!p(o))break;{let n=0,r=t-2;for(;r>=0&&p(x(e,r));)n++,r-=2;if(n%2==0)break;t+=2}}}return t}function v(e,t,n){for(;t>0;){let r=y(e,t-2,n);if(r<t)return r;t--}return 0}function b(e){return e>=56320&&e<57344}function w(e){return e>=55296&&e<56320}function x(e,t){let n=e.charCodeAt(t);if(!w(n)||t+1==e.length)return n;let r=e.charCodeAt(t+1);return b(r)?r-56320+(n-55296<<10)+65536:n}function S(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode(55296+(e>>10),56320+(1023&e)))}function k(e){return e<65536?1:2}const C=/\r\n?|\n/;var M=function(e){return e[e.Simple=0]="Simple",e[e.TrackDel=1]="TrackDel",e[e.TrackBefore=2]="TrackBefore",e[e.TrackAfter=3]="TrackAfter",e}(M||(M={}));class O{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t+1];e+=n<0?this.sections[t]:n}return e}get empty(){return 0==this.sections.length||2==this.sections.length&&this.sections[1]<0}iterGaps(e){for(let t=0,n=0,r=0;t<this.sections.length;){let o=this.sections[t++],i=this.sections[t++];i<0?(e(n,r,o),r+=o):r+=i,n+=o}}iterChangedRanges(e,t=!1){D(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let n=this.sections[t++],r=this.sections[t++];r<0?e.push(n,r):e.push(r,n)}return new O(e)}composeDesc(e){return this.empty?e:e.empty?this:R(this,e)}mapDesc(e,t=!1){return e.empty?this:_(this,e,t)}mapPos(e,t=-1,n=M.Simple){let r=0,o=0;for(let i=0;i<this.sections.length;){let s=this.sections[i++],a=this.sections[i++],l=r+s;if(a<0){if(l>e)return o+(e-r);o+=s}else{if(n!=M.Simple&&l>=e&&(n==M.TrackDel&&r<e&&l>e||n==M.TrackBefore&&r<e||n==M.TrackAfter&&l>e))return null;if(l>e||l==e&&t<0&&!s)return e==r||t<0?o:o+a;o+=a}r=l}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return o}touchesRange(e,t=e){for(let n=0,r=0;n<this.sections.length&&r<=t;){let o=r+this.sections[n++];if(this.sections[n++]>=0&&r<=t&&o>=e)return!(r<e&&o>t)||"cover";r=o}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let n=this.sections[t++],r=this.sections[t++];e+=(e?" ":"")+n+(r>=0?":"+r:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some((e=>"number"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeDesc");return new O(e)}static create(e){return new O(e)}}class E extends O{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return D(this,((t,n,r,o,i)=>e=e.replace(r,r+(n-t),i)),!1),e}mapDesc(e,t=!1){return _(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let o=0,i=0;o<t.length;o+=2){let s=t[o],a=t[o+1];if(a>=0){t[o]=a,t[o+1]=s;let l=o>>1;for(;n.length<l;)n.push(r.empty);n.push(s?e.slice(i,i+s):r.empty)}i+=s}return new E(t,n)}compose(e){return this.empty?e:e.empty?this:R(this,e,!0)}map(e,t=!1){return e.empty?this:_(this,e,t,!0)}iterChanges(e,t=!1){D(this,e,t)}get desc(){return O.create(this.sections)}filter(e){let t=[],n=[],r=[],o=new N(this);e:for(let i=0,s=0;;){let a=i==e.length?1e9:e[i++];for(;s<a||s==a&&0==o.len;){if(o.done)break e;let e=Math.min(o.len,a-s);A(r,e,-1);let i=-1==o.ins?-1:0==o.off?o.ins:0;A(t,e,i),i>0&&T(n,t,o.text),o.forward(e),s+=e}let l=e[i++];for(;s<l;){if(o.done)break e;let e=Math.min(o.len,l-s);A(t,e,-1),A(r,e,-1==o.ins?-1:0==o.off?o.ins:0),o.forward(e),s+=e}}return{changes:new E(t,n),filtered:O.create(r)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t],r=this.sections[t+1];r<0?e.push(n):0==r?e.push([n]):e.push([n].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,n){let o=[],i=[],s=0,a=null;function l(e=!1){if(!e&&!o.length)return;s<t&&A(o,t-s,-1);let n=new E(o,i);a=a?a.compose(n.map(a)):n,o=[],i=[],s=0}return function e(c){if(Array.isArray(c))for(let t of c)e(t);else if(c instanceof E){if(c.length!=t)throw new RangeError(`Mismatched change set length (got ${c.length}, expected ${t})`);l(),a=a?a.compose(c.map(a)):c}else{let{from:e,to:a=e,insert:u}=c;if(e>a||e<0||a>t)throw new RangeError(`Invalid change range ${e} to ${a} (in doc of length ${t})`);let h=u?"string"==typeof u?r.of(u.split(n||C)):u:r.empty,d=h.length;if(e==a&&0==d)return;e<s&&l(),e>s&&A(o,e-s,-1),A(o,a-e,d),T(i,o,h),s=a}}(e),l(!a),a}static empty(e){return new E(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let o=0;o<e.length;o++){let i=e[o];if("number"==typeof i)t.push(i,-1);else{if(!Array.isArray(i)||"number"!=typeof i[0]||i.some(((e,t)=>t&&"string"!=typeof e)))throw new RangeError("Invalid JSON representation of ChangeSet");if(1==i.length)t.push(i[0],0);else{for(;n.length<o;)n.push(r.empty);n[o]=r.of(i.slice(1)),t.push(i[0],n[o].length)}}}return new E(t,n)}static createSet(e,t){return new E(e,t)}}function A(e,t,n,r=!1){if(0==t&&n<=0)return;let o=e.length-2;o>=0&&n<=0&&n==e[o+1]?e[o]+=t:0==t&&0==e[o]?e[o+1]+=n:r?(e[o]+=t,e[o+1]+=n):e.push(t,n)}function T(e,t,n){if(0==n.length)return;let o=t.length-2>>1;if(o<e.length)e[e.length-1]=e[e.length-1].append(n);else{for(;e.length<o;)e.push(r.empty);e.push(n)}}function D(e,t,n){let o=e.inserted;for(let i=0,s=0,a=0;a<e.sections.length;){let l=e.sections[a++],c=e.sections[a++];if(c<0)i+=l,s+=l;else{let u=i,h=s,d=r.empty;for(;u+=l,h+=c,c&&o&&(d=d.append(o[a-2>>1])),!(n||a==e.sections.length||e.sections[a+1]<0);)l=e.sections[a++],c=e.sections[a++];t(i,u,s,h,d),i=u,s=h}}}function _(e,t,n,r=!1){let o=[],i=r?[]:null,s=new N(e),a=new N(t);for(let e=-1;;)if(-1==s.ins&&-1==a.ins){let e=Math.min(s.len,a.len);A(o,e,-1),s.forward(e),a.forward(e)}else if(a.ins>=0&&(s.ins<0||e==s.i||0==s.off&&(a.len<s.len||a.len==s.len&&!n))){let t=a.len;for(A(o,a.ins,-1);t;){let n=Math.min(s.len,t);s.ins>=0&&e<s.i&&s.len<=n&&(A(o,0,s.ins),i&&T(i,o,s.text),e=s.i),s.forward(n),t-=n}a.next()}else{if(!(s.ins>=0)){if(s.done&&a.done)return i?E.createSet(o,i):O.create(o);throw new Error("Mismatched change set lengths")}{let t=0,n=s.len;for(;n;)if(-1==a.ins){let e=Math.min(n,a.len);t+=e,n-=e,a.forward(e)}else{if(!(0==a.ins&&a.len<n))break;n-=a.len,a.next()}A(o,t,e<s.i?s.ins:0),i&&e<s.i&&T(i,o,s.text),e=s.i,s.forward(s.len-n)}}}function R(e,t,n=!1){let r=[],o=n?[]:null,i=new N(e),s=new N(t);for(let e=!1;;){if(i.done&&s.done)return o?E.createSet(r,o):O.create(r);if(0==i.ins)A(r,i.len,0,e),i.next();else if(0!=s.len||s.done){if(i.done||s.done)throw new Error("Mismatched change set lengths");{let t=Math.min(i.len2,s.len),n=r.length;if(-1==i.ins){let n=-1==s.ins?-1:s.off?0:s.ins;A(r,t,n,e),o&&n&&T(o,r,s.text)}else-1==s.ins?(A(r,i.off?0:i.len,t,e),o&&T(o,r,i.textBit(t))):(A(r,i.off?0:i.len,s.off?0:s.ins,e),o&&!s.off&&T(o,r,s.text));e=(i.ins>t||s.ins>=0&&s.len>t)&&(e||r.length>n),i.forward2(t),s.forward(t)}}else A(r,0,s.ins,e),o&&T(o,r,s.text),s.next()}}class N{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return-2==this.ins}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:e}=this.set,t=this.i-2>>1;return t>=e.length?r.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?r.empty:t[n].slice(this.off,null==e?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){-1==this.ins?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class P{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}get anchor(){return 16&this.flags?this.to:this.from}get head(){return 16&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 4&this.flags?-1:8&this.flags?1:0}get bidiLevel(){let e=3&this.flags;return 3==e?null:e}get goalColumn(){let e=this.flags>>5;return 33554431==e?void 0:e}map(e,t=-1){let n,r;return this.empty?n=r=e.mapPos(this.from,t):(n=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),n==this.from&&r==this.to?this:new P(n,r,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return I.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return I.range(this.anchor,n)}eq(e){return this.anchor==e.anchor&&this.head==e.head}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||"number"!=typeof e.anchor||"number"!=typeof e.head)throw new RangeError("Invalid JSON representation for SelectionRange");return I.range(e.anchor,e.head)}static create(e,t,n){return new P(e,t,n)}}class I{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:I.create(this.ranges.map((n=>n.map(e,t))),this.mainIndex)}eq(e){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;t<this.ranges.length;t++)if(!this.ranges[t].eq(e.ranges[t]))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return 1==this.ranges.length?this:new I([this.main],0)}addRange(e,t=!0){return I.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let n=this.ranges.slice();return n[t]=e,I.create(n,this.mainIndex)}toJSON(){return{ranges:this.ranges.map((e=>e.toJSON())),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||"number"!=typeof e.main||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new I(e.ranges.map((e=>P.fromJSON(e))),e.main)}static single(e,t=e){return new I([I.range(e,t)],0)}static create(e,t=0){if(0==e.length)throw new RangeError("A selection needs at least one range");for(let n=0,r=0;r<e.length;r++){let o=e[r];if(o.empty?o.from<=n:o.from<n)return I.normalized(e.slice(),t);n=o.to}return new I(e,t)}static cursor(e,t=0,n,r){return P.create(e,e,(0==t?0:t<0?4:8)|(null==n?3:Math.min(2,n))|(null!=r?r:33554431)<<5)}static range(e,t,n,r){let o=(null!=n?n:33554431)<<5|(null==r?3:Math.min(2,r));return t<e?P.create(t,e,24|o):P.create(e,t,(t>e?4:0)|o)}static normalized(e,t=0){let n=e[t];e.sort(((e,t)=>e.from-t.from)),t=e.indexOf(n);for(let n=1;n<e.length;n++){let r=e[n],o=e[n-1];if(r.empty?r.from<=o.to:r.from<o.to){let i=o.from,s=Math.max(r.to,o.to);n<=t&&t--,e.splice(--n,2,r.anchor>r.head?I.range(s,i):I.range(i,s))}}return new I(e,t)}}function L(e,t){for(let n of e.ranges)if(n.to>t)throw new RangeError("Selection points outside of document")}let j=0;class F{constructor(e,t,n,r,o){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.id=j++,this.default=e([]),this.extensions="function"==typeof o?o(this):o}static define(e={}){return new F(e.combine||(e=>e),e.compareInput||((e,t)=>e===t),e.compare||(e.combine?(e,t)=>e===t:B),!!e.static,e.enables)}of(e){return new z([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new z(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new z(e,this,2,t)}from(e,t){return t||(t=e=>e),this.compute([e],(n=>t(n.field(e))))}}function B(e,t){return e==t||e.length==t.length&&e.every(((e,n)=>e===t[n]))}class z{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=j++}dynamicSlot(e){var t;let n=this.value,r=this.facet.compareInput,o=this.id,i=e[o]>>1,s=2==this.type,a=!1,l=!1,c=[];for(let n of this.dependencies)"doc"==n?a=!0:"selection"==n?l=!0:0==(1&(null!==(t=e[n.id])&&void 0!==t?t:1))&&c.push(e[n.id]);return{create:e=>(e.values[i]=n(e),1),update(e,t){if(a&&t.docChanged||l&&(t.docChanged||t.selection)||H(e,c)){let t=n(e);if(s?!$(t,e.values[i],r):!r(t,e.values[i]))return e.values[i]=t,1}return 0},reconfigure:(e,t)=>{let a,l=t.config.address[o];if(null!=l){let o=X(t,l);if(this.dependencies.every((n=>n instanceof F?t.facet(n)===e.facet(n):!(n instanceof V)||t.field(n,!1)==e.field(n,!1)))||(s?$(a=n(e),o,r):r(a=n(e),o)))return e.values[i]=o,0}else a=n(e);return e.values[i]=a,1}}}}function $(e,t,n){if(e.length!=t.length)return!1;for(let r=0;r<e.length;r++)if(!n(e[r],t[r]))return!1;return!0}function H(e,t){let n=!1;for(let r of t)1&Z(e,r)&&(n=!0);return n}function W(e,t,n){let r=n.map((t=>e[t.id])),o=n.map((e=>e.type)),i=r.filter((e=>!(1&e))),s=e[t.id]>>1;function a(e){let n=[];for(let t=0;t<r.length;t++){let i=X(e,r[t]);if(2==o[t])for(let e of i)n.push(e);else n.push(i)}return t.combine(n)}return{create(e){for(let t of r)Z(e,t);return e.values[s]=a(e),1},update(e,n){if(!H(e,i))return 0;let r=a(e);return t.compare(r,e.values[s])?0:(e.values[s]=r,1)},reconfigure(e,o){let i=H(e,r),l=o.config.facets[t.id],c=o.facet(t);if(l&&!i&&B(n,l))return e.values[s]=c,0;let u=a(e);return t.compare(u,c)?(e.values[s]=c,0):(e.values[s]=u,1)}}}const U=F.define({static:!0});class V{constructor(e,t,n,r,o){this.id=e,this.createF=t,this.updateF=n,this.compareF=r,this.spec=o,this.provides=void 0}static define(e){let t=new V(j++,e.create,e.update,e.compare||((e,t)=>e===t),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(U).find((e=>e.field==this));return((null==t?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:e=>(e.values[t]=this.create(e),1),update:(e,n)=>{let r=e.values[t],o=this.updateF(r,n);return this.compareF(r,o)?0:(e.values[t]=o,1)},reconfigure:(e,n)=>null!=n.config.address[this.id]?(e.values[t]=n.field(this),0):(e.values[t]=this.create(e),1)}}init(e){return[this,U.of({field:this,create:e})]}get extension(){return this}}function q(e){return t=>new Y(t,e)}const K={highest:q(0),high:q(1),default:q(2),low:q(3),lowest:q(4)};class Y{constructor(e,t){this.inner=e,this.prec=t}}class G{of(e){return new J(this,e)}reconfigure(e){return G.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class J{constructor(e,t){this.compartment=e,this.inner=t}}class Q{constructor(e,t,n,r,o,i){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=o,this.facets=i,this.statusTemplate=[];this.statusTemplate.length<n.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return null==t?e.default:this.staticValues[t>>1]}static resolve(e,t,n){let r=[],o=Object.create(null),i=new Map;for(let n of function(e,t,n){let r=[[],[],[],[],[]],o=new Map;return function e(i,s){let a=o.get(i);if(null!=a){if(a<=s)return;let e=r[a].indexOf(i);e>-1&&r[a].splice(e,1),i instanceof J&&n.delete(i.compartment)}if(o.set(i,s),Array.isArray(i))for(let t of i)e(t,s);else if(i instanceof J){if(n.has(i.compartment))throw new RangeError("Duplicate use of compartment in extensions");let r=t.get(i.compartment)||i.inner;n.set(i.compartment,r),e(r,s)}else if(i instanceof Y)e(i.inner,i.prec);else if(i instanceof V)r[s].push(i),i.provides&&e(i.provides,s);else if(i instanceof z)r[s].push(i),i.facet.extensions&&e(i.facet.extensions,2);else{let t=i.extension;if(!t)throw new Error(`Unrecognized extension value in extension set (${i}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);e(t,s)}}(e,2),r.reduce(((e,t)=>e.concat(t)))}(e,t,i))n instanceof V?r.push(n):(o[n.facet.id]||(o[n.facet.id]=[])).push(n);let s=Object.create(null),a=[],l=[];for(let e of r)s[e.id]=l.length<<1,l.push((t=>e.slot(t)));let c=null==n?void 0:n.config.facets;for(let e in o){let t=o[e],r=t[0].facet,i=c&&c[e]||[];if(t.every((e=>0==e.type)))if(s[r.id]=a.length<<1|1,B(i,t))a.push(n.facet(r));else{let e=r.combine(t.map((e=>e.value)));a.push(n&&r.compare(e,n.facet(r))?n.facet(r):e)}else{for(let e of t)0==e.type?(s[e.id]=a.length<<1|1,a.push(e.value)):(s[e.id]=l.length<<1,l.push((t=>e.dynamicSlot(t))));s[r.id]=l.length<<1,l.push((e=>W(e,r,t)))}}let u=l.map((e=>e(s)));return new Q(e,i,u,s,a,o)}}function Z(e,t){if(1&t)return 2;let n=t>>1,r=e.status[n];if(4==r)throw new Error("Cyclic dependency between fields and/or facets");if(2&r)return r;e.status[n]=4;let o=e.computeSlot(e,e.config.dynamicSlots[n]);return e.status[n]=2|o}function X(e,t){return 1&t?e.config.staticValues[t>>1]:e.values[t>>1]}const ee=F.define(),te=F.define({combine:e=>e.some((e=>e)),static:!0}),ne=F.define({combine:e=>e.length?e[0]:void 0,static:!0}),re=F.define(),oe=F.define(),ie=F.define(),se=F.define({combine:e=>!!e.length&&e[0]});class ae{constructor(e,t){this.type=e,this.value=t}static define(){return new le}}class le{of(e){return new ae(this,e)}}class ce{constructor(e){this.map=e}of(e){return new ue(this,e)}}class ue{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return void 0===t?void 0:t==this.value?this:new ue(this.type,t)}is(e){return this.type==e}static define(e={}){return new ce(e.map||(e=>e))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let e=r.map(t);e&&n.push(e)}return n}}ue.reconfigure=ue.define(),ue.appendConfig=ue.define();class he{constructor(e,t,n,r,o,i){this.startState=e,this.changes=t,this.selection=n,this.effects=r,this.annotations=o,this.scrollIntoView=i,this._doc=null,this._state=null,n&&L(n,t.newLength),o.some((e=>e.type==he.time))||(this.annotations=o.concat(he.time.of(Date.now())))}static create(e,t,n,r,o,i){return new he(e,t,n,r,o,i)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(he.userEvent);return!(!t||!(t==e||t.length>e.length&&t.slice(0,e.length)==e&&"."==t[e.length]))}}function de(e,t){let n=[];for(let r=0,o=0;;){let i,s;if(r<e.length&&(o==t.length||t[o]>=e[r]))i=e[r++],s=e[r++];else{if(!(o<t.length))return n;i=t[o++],s=t[o++]}!n.length||n[n.length-1]<i?n.push(i,s):n[n.length-1]<s&&(n[n.length-1]=s)}}function fe(e,t,n){var r;let o,i,s;return n?(o=t.changes,i=E.empty(t.changes.length),s=e.changes.compose(t.changes)):(o=t.changes.map(e.changes),i=e.changes.mapDesc(t.changes,!0),s=e.changes.compose(o)),{changes:s,selection:t.selection?t.selection.map(i):null===(r=e.selection)||void 0===r?void 0:r.map(o),effects:ue.mapEffects(e.effects,o).concat(ue.mapEffects(t.effects,i)),annotations:e.annotations.length?e.annotations.concat(t.annotations):t.annotations,scrollIntoView:e.scrollIntoView||t.scrollIntoView}}function pe(e,t,n){let r=t.selection,o=ye(t.annotations);return t.userEvent&&(o=o.concat(he.userEvent.of(t.userEvent))),{changes:t.changes instanceof E?t.changes:E.of(t.changes||[],n,e.facet(ne)),selection:r&&(r instanceof I?r:I.single(r.anchor,r.head)),effects:ye(t.effects),annotations:o,scrollIntoView:!!t.scrollIntoView}}function me(e,t,n){let r=pe(e,t.length?t[0]:{},e.doc.length);t.length&&!1===t[0].filter&&(n=!1);for(let o=1;o<t.length;o++){!1===t[o].filter&&(n=!1);let i=!!t[o].sequential;r=fe(r,pe(e,t[o],i?r.changes.newLength:e.doc.length),i)}let o=he.create(e,r.changes,r.selection,r.effects,r.annotations,r.scrollIntoView);return function(e){let t=e.startState,n=t.facet(ie),r=e;for(let o=n.length-1;o>=0;o--){let i=n[o](e);i&&Object.keys(i).length&&(r=fe(r,pe(t,i,e.changes.newLength),!0))}return r==e?e:he.create(t,e.changes,e.selection,r.effects,r.annotations,r.scrollIntoView)}(n?function(e){let t=e.startState,n=!0;for(let r of t.facet(re)){let t=r(e);if(!1===t){n=!1;break}Array.isArray(t)&&(n=!0===n?t:de(n,t))}if(!0!==n){let r,o;if(!1===n)o=e.changes.invertedDesc,r=E.empty(t.doc.length);else{let t=e.changes.filter(n);r=t.changes,o=t.filtered.mapDesc(t.changes).invertedDesc}e=he.create(t,r,e.selection&&e.selection.map(o),ue.mapEffects(e.effects,o),e.annotations,e.scrollIntoView)}let r=t.facet(oe);for(let n=r.length-1;n>=0;n--){let o=r[n](e);e=o instanceof he?o:Array.isArray(o)&&1==o.length&&o[0]instanceof he?o[0]:me(t,ye(o),!1)}return e}(o):o)}he.time=ae.define(),he.userEvent=ae.define(),he.addToHistory=ae.define(),he.remote=ae.define();const ge=[];function ye(e){return null==e?ge:Array.isArray(e)?e:[e]}var ve=function(e){return e[e.Word=0]="Word",e[e.Space=1]="Space",e[e.Other=2]="Other",e}(ve||(ve={}));const be=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let we;try{we=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(e){}class xe{constructor(e,t,n,r,o,i){this.config=e,this.doc=t,this.selection=n,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=o,i&&(i._state=this);for(let e=0;e<this.config.dynamicSlots.length;e++)Z(this,e<<1);this.computeSlot=null}field(e,t=!0){let n=this.config.address[e.id];if(null!=n)return Z(this,n),X(this,n);if(t)throw new RangeError("Field is not present in this state")}update(...e){return me(this,e,!0)}applyTransaction(e){let t,n=this.config,{base:r,compartments:o}=n;for(let t of e.effects)t.is(G.reconfigure)?(n&&(o=new Map,n.compartments.forEach(((e,t)=>o.set(t,e))),n=null),o.set(t.value.compartment,t.value.extension)):t.is(ue.reconfigure)?(n=null,r=t.value):t.is(ue.appendConfig)&&(n=null,r=ye(r).concat(t.value));n?t=e.startState.values.slice():(n=Q.resolve(r,o,this),t=new xe(n,this.doc,this.selection,n.dynamicSlots.map((()=>null)),((e,t)=>t.reconfigure(e,this)),null).values),new xe(n,e.newDoc,e.newSelection,t,((t,n)=>n.update(t,e)),e)}replaceSelection(e){return"string"==typeof e&&(e=this.toText(e)),this.changeByRange((t=>({changes:{from:t.from,to:t.to,insert:e},range:I.cursor(t.from+e.length)})))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),o=[n.range],i=ye(n.effects);for(let n=1;n<t.ranges.length;n++){let s=e(t.ranges[n]),a=this.changes(s.changes),l=a.map(r);for(let e=0;e<n;e++)o[e]=o[e].map(l);let c=r.mapDesc(a,!0);o.push(s.range.map(c)),r=r.compose(l),i=ue.mapEffects(i,l).concat(ue.mapEffects(ye(s.effects),c))}return{changes:r,selection:I.create(o,t.mainIndex),effects:i}}changes(e=[]){return e instanceof E?e:E.of(e,this.doc.length,this.facet(xe.lineSeparator))}toText(e){return r.of(e.split(this.facet(xe.lineSeparator)||C))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return null==t?e.default:(Z(this,t),X(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let n in e){let r=e[n];r instanceof V&&null!=this.config.address[r.id]&&(t[n]=r.spec.toJSON(this.field(e[n]),this))}return t}static fromJSON(e,t={},n){if(!e||"string"!=typeof e.doc)throw new RangeError("Invalid JSON representation for EditorState");let r=[];if(n)for(let t in n)if(Object.prototype.hasOwnProperty.call(e,t)){let o=n[t],i=e[t];r.push(o.init((e=>o.spec.fromJSON(i,e))))}return xe.create({doc:e.doc,selection:I.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=Q.resolve(e.extensions||[],new Map),n=e.doc instanceof r?e.doc:r.of((e.doc||"").split(t.staticFacet(xe.lineSeparator)||C)),o=e.selection?e.selection instanceof I?e.selection:I.single(e.selection.anchor,e.selection.head):I.single(0);return L(o,n.length),t.staticFacet(te)||(o=o.asSingle()),new xe(t,n,o,t.dynamicSlots.map((()=>null)),((e,t)=>t.create(e)),null)}get tabSize(){return this.facet(xe.tabSize)}get lineBreak(){return this.facet(xe.lineSeparator)||"\n"}get readOnly(){return this.facet(se)}phrase(e,...t){for(let t of this.facet(xe.phrases))if(Object.prototype.hasOwnProperty.call(t,e)){e=t[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,((e,n)=>{if("$"==n)return"$";let r=+(n||1);return!r||r>t.length?e:t[r-1]}))),e}languageDataAt(e,t,n=-1){let r=[];for(let o of this.facet(ee))for(let i of o(this,t,n))Object.prototype.hasOwnProperty.call(i,e)&&r.push(i[e]);return r}charCategorizer(e){return t=this.languageDataAt("wordChars",e).join(""),e=>{if(!/\S/.test(e))return ve.Space;if(function(e){if(we)return we.test(e);for(let t=0;t<e.length;t++){let n=e[t];if(/\w/.test(n)||n>""&&(n.toUpperCase()!=n.toLowerCase()||be.test(n)))return!0}return!1}(e))return ve.Word;for(let n=0;n<t.length;n++)if(e.indexOf(t[n])>-1)return ve.Word;return ve.Other};var t}wordAt(e){let{text:t,from:n,length:r}=this.doc.lineAt(e),o=this.charCategorizer(e),i=e-n,s=e-n;for(;i>0;){let e=g(t,i,!1);if(o(t.slice(e,i))!=ve.Word)break;i=e}for(;s<r;){let e=g(t,s);if(o(t.slice(s,e))!=ve.Word)break;s=e}return i==s?null:I.range(i+n,s+n)}}function Se(e,t,n={}){let r={};for(let t of e)for(let e of Object.keys(t)){let o=t[e],i=r[e];if(void 0===i)r[e]=o;else if(i===o||void 0===o);else{if(!Object.hasOwnProperty.call(n,e))throw new Error("Config merge conflict for field "+e);r[e]=n[e](i,o)}}for(let e in t)void 0===r[e]&&(r[e]=t[e]);return r}xe.allowMultipleSelections=te,xe.tabSize=F.define({combine:e=>e.length?e[0]:4}),xe.lineSeparator=ne,xe.readOnly=se,xe.phrases=F.define({compare(e,t){let n=Object.keys(e),r=Object.keys(t);return n.length==r.length&&n.every((n=>e[n]==t[n]))}}),xe.languageData=ee,xe.changeFilter=re,xe.transactionFilter=oe,xe.transactionExtender=ie,G.reconfigure=ue.define();class ke{eq(e){return this==e}range(e,t=e){return Ce.create(e,t,this)}}ke.prototype.startSide=ke.prototype.endSide=0,ke.prototype.point=!1,ke.prototype.mapMode=M.TrackDel;class Ce{constructor(e,t,n){this.from=e,this.to=t,this.value=n}static create(e,t,n){return new Ce(e,t,n)}}function Me(e,t){return e.from-t.from||e.value.startSide-t.value.startSide}class Oe{constructor(e,t,n,r){this.from=e,this.to=t,this.value=n,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,t,n,r=0){let o=n?this.to:this.from;for(let i=r,s=o.length;;){if(i==s)return i;let r=i+s>>1,a=o[r]-e||(n?this.value[r].endSide:this.value[r].startSide)-t;if(r==i)return a>=0?i:s;a>=0?s=r:i=r+1}}between(e,t,n,r){for(let o=this.findIndex(t,-1e9,!0),i=this.findIndex(n,1e9,!1,o);o<i;o++)if(!1===r(this.from[o]+e,this.to[o]+e,this.value[o]))return!1}map(e,t){let n=[],r=[],o=[],i=-1,s=-1;for(let a=0;a<this.value.length;a++){let l,c,u=this.value[a],h=this.from[a]+e,d=this.to[a]+e;if(h==d){let e=t.mapPos(h,u.startSide,u.mapMode);if(null==e)continue;if(l=c=e,u.startSide!=u.endSide&&(c=t.mapPos(h,u.endSide),c<l))continue}else if(l=t.mapPos(h,u.startSide),c=t.mapPos(d,u.endSide),l>c||l==c&&u.startSide>0&&u.endSide<=0)continue;(c-l||u.endSide-u.startSide)<0||(i<0&&(i=l),u.point&&(s=Math.max(s,c-l)),n.push(u),r.push(l-i),o.push(c-i))}return{mapped:n.length?new Oe(r,o,n,s):null,pos:i}}}class Ee{constructor(e,t,n,r){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=r}static create(e,t,n,r){return new Ee(e,t,n,r)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:n=!1,filterFrom:r=0,filterTo:o=this.length}=e,i=e.filter;if(0==t.length&&!i)return this;if(n&&(t=t.slice().sort(Me)),this.isEmpty)return t.length?Ee.of(t):this;let s=new De(this,null,-1).goto(0),a=0,l=[],c=new Ae;for(;s.value||a<t.length;)if(a<t.length&&(s.from-t[a].from||s.startSide-t[a].value.startSide)>=0){let e=t[a++];c.addInner(e.from,e.to,e.value)||l.push(e)}else 1==s.rangeIndex&&s.chunkIndex<this.chunk.length&&(a==t.length||this.chunkEnd(s.chunkIndex)<t[a].from)&&(!i||r>this.chunkEnd(s.chunkIndex)||o<this.chunkPos[s.chunkIndex])&&c.addChunk(this.chunkPos[s.chunkIndex],this.chunk[s.chunkIndex])?s.nextChunk():((!i||r>s.to||o<s.from||i(s.from,s.to,s.value))&&(c.addInner(s.from,s.to,s.value)||l.push(Ce.create(s.from,s.to,s.value))),s.next());return c.finishInner(this.nextLayer.isEmpty&&!l.length?Ee.empty:this.nextLayer.update({add:l,filter:i,filterFrom:r,filterTo:o}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],n=[],r=-1;for(let o=0;o<this.chunk.length;o++){let i=this.chunkPos[o],s=this.chunk[o],a=e.touchesRange(i,i+s.length);if(!1===a)r=Math.max(r,s.maxPoint),t.push(s),n.push(e.mapPos(i));else if(!0===a){let{mapped:o,pos:a}=s.map(i,e);o&&(r=Math.max(r,o.maxPoint),t.push(o),n.push(a))}}let o=this.nextLayer.map(e);return 0==t.length?o:new Ee(n,t,o||Ee.empty,r)}between(e,t,n){if(!this.isEmpty){for(let r=0;r<this.chunk.length;r++){let o=this.chunkPos[r],i=this.chunk[r];if(t>=o&&e<=o+i.length&&!1===i.between(o,e-o,t-o,n))return}this.nextLayer.between(e,t,n)}}iter(e=0){return _e.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return _e.from(e).goto(t)}static compare(e,t,n,r,o=-1){let i=e.filter((e=>e.maxPoint>0||!e.isEmpty&&e.maxPoint>=o)),s=t.filter((e=>e.maxPoint>0||!e.isEmpty&&e.maxPoint>=o)),a=Te(i,s,n),l=new Ne(i,a,o),c=new Ne(s,a,o);n.iterGaps(((e,t,n)=>Pe(l,e,c,t,n,r))),n.empty&&0==n.length&&Pe(l,0,c,0,0,r)}static eq(e,t,n=0,r){null==r&&(r=999999999);let o=e.filter((e=>!e.isEmpty&&t.indexOf(e)<0)),i=t.filter((t=>!t.isEmpty&&e.indexOf(t)<0));if(o.length!=i.length)return!1;if(!o.length)return!0;let s=Te(o,i),a=new Ne(o,s,0).goto(n),l=new Ne(i,s,0).goto(n);for(;;){if(a.to!=l.to||!Ie(a.active,l.active)||a.point&&(!l.point||!a.point.eq(l.point)))return!1;if(a.to>r)return!0;a.next(),l.next()}}static spans(e,t,n,r,o=-1){let i=new Ne(e,null,o).goto(t),s=t,a=i.openStart;for(;;){let e=Math.min(i.to,n);if(i.point){let n=i.activeForPoint(i.to),o=i.pointFrom<t?n.length+1:Math.min(n.length,a);r.point(s,e,i.point,n,o,i.pointRank),a=Math.min(i.openEnd(e),n.length)}else e>s&&(r.span(s,e,i.active,a),a=i.openEnd(e));if(i.to>n)return a+(i.point&&i.to>n?1:0);s=i.to,i.next()}}static of(e,t=!1){let n=new Ae;for(let r of e instanceof Ce?[e]:t?function(e){if(e.length>1)for(let t=e[0],n=1;n<e.length;n++){let r=e[n];if(Me(t,r)>0)return e.slice().sort(Me);t=r}return e}(e):e)n.add(r.from,r.to,r.value);return n.finish()}}Ee.empty=new Ee([],[],null,-1),Ee.empty.nextLayer=Ee.empty;class Ae{constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}finishChunk(e){this.chunks.push(new Oe(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,e&&(this.from=[],this.to=[],this.value=[])}add(e,t,n){this.addInner(e,t,n)||(this.nextLayer||(this.nextLayer=new Ae)).add(e,t,n)}addInner(e,t,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return!(r<0||(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=n,this.lastFrom=e,this.lastTo=t,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),0))}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let n=t.value.length-1;return this.last=t.value[n],this.lastFrom=t.from[n]+e,this.lastTo=t.to[n]+e,!0}finish(){return this.finishInner(Ee.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return e;let t=Ee.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function Te(e,t,n){let r=new Map;for(let t of e)for(let e=0;e<t.chunk.length;e++)t.chunk[e].maxPoint<=0&&r.set(t.chunk[e],t.chunkPos[e]);let o=new Set;for(let e of t)for(let t=0;t<e.chunk.length;t++){let i=r.get(e.chunk[t]);null==i||(n?n.mapPos(i):i)!=e.chunkPos[t]||(null==n?void 0:n.touchesRange(i,i+e.chunk[t].length))||o.add(e.chunk[t])}return o}class De{constructor(e,t,n,r=0){this.layer=e,this.skip=t,this.minPoint=n,this.rank=r}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,n){for(;this.chunkIndex<this.layer.chunk.length;){let t=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(t)||this.layer.chunkEnd(this.chunkIndex)<e||t.maxPoint<this.minPoint))break;this.chunkIndex++,n=!1}if(this.chunkIndex<this.layer.chunk.length){let r=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!n||this.rangeIndex<r)&&this.setRangeIndex(r)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!0)}next(){for(;;){if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}{let e=this.layer.chunkPos[this.chunkIndex],t=this.layer.chunk[this.chunkIndex],n=e+t.from[this.rangeIndex];if(this.from=n,this.to=e+t.to[this.rangeIndex],this.value=t.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}}class _e{constructor(e){this.heap=e}static from(e,t=null,n=-1){let r=[];for(let o=0;o<e.length;o++)for(let i=e[o];!i.isEmpty;i=i.nextLayer)i.maxPoint>=n&&r.push(new De(i,t,n,o));return 1==r.length?r[0]:new _e(r)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let n of this.heap)n.goto(e,t);for(let e=this.heap.length>>1;e>=0;e--)Re(this.heap,e);return this.next(),this}forward(e,t){for(let n of this.heap)n.forward(e,t);for(let e=this.heap.length>>1;e>=0;e--)Re(this.heap,e);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),Re(this.heap,0)}}}function Re(e,t){for(let n=e[t];;){let r=1+(t<<1);if(r>=e.length)break;let o=e[r];if(r+1<e.length&&o.compare(e[r+1])>=0&&(o=e[r+1],r++),n.compare(o)<0)break;e[r]=n,e[t]=o,t=r}}class Ne{constructor(e,t,n){this.minPoint=n,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=_e.from(e,t,n)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){Le(this.active,e),Le(this.activeTo,e),Le(this.activeRank,e),this.minActive=Fe(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:r,rank:o}=this.cursor;for(;t<this.activeRank.length&&this.activeRank[t]<=o;)t++;je(this.active,t,n),je(this.activeTo,t,r),je(this.activeRank,t,o),e&&je(e,t,this.cursor.from),this.minActive=Fe(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let n=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),n&&Le(n,r)}else{if(!this.cursor.value){this.to=this.endSide=1e9;break}if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}{let e=this.cursor.value;if(e.point){if(!(t&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)){this.point=e,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=e.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}this.cursor.next()}else this.addActive(n),this.cursor.next()}}}if(n){this.openStart=0;for(let t=n.length-1;t>=0&&n[t]<e;t--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let n=this.active.length-1;n>=0&&!(this.activeRank[n]<this.pointRank);n--)(this.activeTo[n]>e||this.activeTo[n]==e&&this.active[n].endSide>=this.point.endSide)&&t.push(this.active[n]);return t.reverse()}openEnd(e){let t=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>e;n--)t++;return t}}function Pe(e,t,n,r,o,i){e.goto(t),n.goto(r);let s=r+o,a=r,l=r-t;for(;;){let t=e.to+l-n.to||e.endSide-n.endSide,r=t<0?e.to+l:n.to,o=Math.min(r,s);if(e.point||n.point?e.point&&n.point&&(e.point==n.point||e.point.eq(n.point))&&Ie(e.activeForPoint(e.to+l),n.activeForPoint(n.to))||i.comparePoint(a,o,e.point,n.point):o>a&&!Ie(e.active,n.active)&&i.compareRange(a,o,e.active,n.active),r>s)break;a=r,t<=0&&e.next(),t>=0&&n.next()}}function Ie(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n]&&!e[n].eq(t[n]))return!1;return!0}function Le(e,t){for(let n=t,r=e.length-1;n<r;n++)e[n]=e[n+1];e.pop()}function je(e,t,n){for(let n=e.length-1;n>=t;n--)e[n+1]=e[n];e[t]=n}function Fe(e,t){let n=-1,r=1e9;for(let o=0;o<t.length;o++)(t[o]-r||e[o].endSide-e[n].endSide)<0&&(n=o,r=t[o]);return n}function Be(e,t,n=e.length){let r=0;for(let o=0;o<n;)9==e.charCodeAt(o)?(r+=t-r%t,o++):(r++,o=g(e,o));return r}function ze(e,t,n,r){for(let r=0,o=0;;){if(o>=t)return r;if(r==e.length)break;o+=9==e.charCodeAt(r)?n-o%n:1,r=g(e,r)}return!0===r?-1:e.length}},2393:(e,t,n)=>{"use strict";n.d(t,{p:()=>de,Nm:()=>Ye,tk:()=>Hn,SJ:()=>mo,lg:()=>Fe,l9:()=>ue,S2:()=>Ur,Uw:()=>dr,qr:()=>Sr,Sd:()=>co,gB:()=>so,v5:()=>bo,ZO:()=>Pr,HQ:()=>jo,AE:()=>Dr,bF:()=>io,$f:()=>Jn,Eu:()=>No,OO:()=>Pe,W$:()=>Fr,Zs:()=>$r,$1:()=>Xn,mH:()=>po,hJ:()=>Xr});for(var r=n(8120),o=n(8699),i={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},s={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},a="undefined"!=typeof navigator&&/Chrome\/(\d+)/.exec(navigator.userAgent),l=("undefined"!=typeof navigator&&/Gecko\/\d+/.test(navigator.userAgent),"undefined"!=typeof navigator&&/Mac/.test(navigator.platform)),c="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),u=l||a&&+a[1]<57,h=0;h<10;h++)i[48+h]=i[96+h]=String(h);for(h=1;h<=24;h++)i[h+111]="F"+h;for(h=65;h<=90;h++)i[h]=String.fromCharCode(h+32),s[h]=String.fromCharCode(h);for(var d in i)s.hasOwnProperty(d)||(s[d]=i[d]);function f(e){let t;return t=11==e.nodeType?e.getSelection?e:e.ownerDocument:e,t.getSelection()}function p(e,t){return!!t&&(e==t||e.contains(1!=t.nodeType?t.parentNode:t))}function m(e,t){if(!t.anchorNode)return!1;try{return p(e,t.anchorNode)}catch(e){return!1}}function g(e){return 3==e.nodeType?A(e,0,e.nodeValue.length).getClientRects():1==e.nodeType?e.getClientRects():[]}function y(e,t,n,r){return!!n&&(b(e,t,n,r,-1)||b(e,t,n,r,1))}function v(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t}function b(e,t,n,r,o){for(;;){if(e==n&&t==r)return!0;if(t==(o<0?0:w(e))){if("DIV"==e.nodeName)return!1;let n=e.parentNode;if(!n||1!=n.nodeType)return!1;t=v(e)+(o<0?0:1),e=n}else{if(1!=e.nodeType)return!1;if(1==(e=e.childNodes[t+(o<0?-1:0)]).nodeType&&"false"==e.contentEditable)return!1;t=o<0?w(e):0}}}function w(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}const x={left:0,right:0,top:0,bottom:0};function S(e,t){let n=t?e.left:e.right;return{left:n,right:n,top:e.top,bottom:e.bottom}}function k(e){return{left:0,right:e.innerWidth,top:0,bottom:e.innerHeight}}class C{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){this.set(e.anchorNode,e.anchorOffset,e.focusNode,e.focusOffset)}set(e,t,n,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=n,this.focusOffset=r}}let M,O=null;function E(e){if(e.setActive)return e.setActive();if(O)return e.focus(O);let t=[];for(let n=e;n&&(t.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(e.focus(null==O?{get preventScroll(){return O={preventScroll:!0},!0}}:void 0),!O){O=!1;for(let e=0;e<t.length;){let n=t[e++],r=t[e++],o=t[e++];n.scrollTop!=r&&(n.scrollTop=r),n.scrollLeft!=o&&(n.scrollLeft=o)}}}function A(e,t,n=t){let r=M||(M=document.createRange());return r.setEnd(e,n),r.setStart(e,t),r}function T(e,t,n){let r={key:t,code:t,keyCode:n,which:n,cancelable:!0},o=new KeyboardEvent("keydown",r);o.synthetic=!0,e.dispatchEvent(o);let i=new KeyboardEvent("keyup",r);return i.synthetic=!0,e.dispatchEvent(i),o.defaultPrevented||i.defaultPrevented}function D(e){for(;e.attributes.length;)e.removeAttributeNode(e.attributes[0])}class _{constructor(e,t,n=!0){this.node=e,this.offset=t,this.precise=n}static before(e,t){return new _(e.parentNode,v(e),t)}static after(e,t){return new _(e.parentNode,v(e)+1,t)}}const R=[];class N{constructor(){this.parent=null,this.dom=null,this.dirty=2}get overrideDOMText(){return null}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e){let t=this.posAtStart;for(let n of this.children){if(n==e)return t;t+=n.length+n.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}coordsAt(e,t){return null}sync(e,t){if(2&this.dirty){let n,r=this.dom,o=null;for(let i of this.children){if(i.dirty){if(!i.dom&&(n=o?o.nextSibling:r.firstChild)){let e=N.get(n);(!e||!e.parent&&e.canReuseDOM(i))&&i.reuseDOM(n)}i.sync(e,t),i.dirty=0}if(n=o?o.nextSibling:r.firstChild,t&&!t.written&&t.node==r&&n!=i.dom&&(t.written=!0),i.dom.parentNode==r)for(;n&&n!=i.dom;)n=P(n);else r.insertBefore(i.dom,n);o=i.dom}for(n=o?o.nextSibling:r.firstChild,n&&t&&t.node==r&&(t.written=!0);n;)n=P(n)}else if(1&this.dirty)for(let n of this.children)n.dirty&&(n.sync(e,t),n.dirty=0)}reuseDOM(e){}localPosFromDOM(e,t){let n;if(e==this.dom)n=this.dom.childNodes[t];else{let r=0==w(e)?0:0==t?-1:1;for(;;){let t=e.parentNode;if(t==this.dom)break;0==r&&t.firstChild!=t.lastChild&&(r=e==t.firstChild?-1:1),e=t}n=r<0?e:e.nextSibling}if(n==this.dom.firstChild)return 0;for(;n&&!N.get(n);)n=n.nextSibling;if(!n)return this.length;for(let e=0,t=0;;e++){let r=this.children[e];if(r.dom==n)return t;t+=r.length+r.breakAfter}}domBoundsAround(e,t,n=0){let r=-1,o=-1,i=-1,s=-1;for(let a=0,l=n,c=n;a<this.children.length;a++){let n=this.children[a],u=l+n.length;if(l<e&&u>t)return n.domBoundsAround(e,t,l);if(u>=e&&-1==r&&(r=a,o=l),l>t&&n.dom.parentNode==this.dom){i=a,s=c;break}c=u,l=u+n.breakAfter}return{from:o,to:s<0?n+this.length:s,startDOM:(r?this.children[r-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:i<this.children.length&&i>=0?this.children[i].dom:null}}markDirty(e=!1){this.dirty|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.dirty|=2),1&t.dirty)return;t.dirty|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.dirty&&this.markParentsDirty(!0))}setDOM(e){this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,n=R){this.markDirty();for(let n=e;n<t;n++){let e=this.children[n];e.parent==this&&e.destroy()}this.children.splice(e,t-e,...n);for(let e=0;e<n.length;e++)n[e].setParent(this)}ignoreMutation(e){return!1}ignoreEvent(e){return!1}childCursor(e=this.length){return new I(this.children,e,this.children.length)}childPos(e,t=1){return this.childCursor().findPos(e,t)}toString(){let e=this.constructor.name.replace("View","");return e+(this.children.length?"("+this.children.join()+")":this.length?"["+("Text"==e?this.text:this.length)+"]":"")+(this.breakAfter?"#":"")}static get(e){return e.cmView}get isEditable(){return!0}get isWidget(){return!1}merge(e,t,n,r,o,i){return!1}become(e){return!1}canReuseDOM(e){return e.constructor==this.constructor}getSide(){return 0}destroy(){this.parent=null}}function P(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}N.prototype.breakAfter=0;class I{constructor(e,t,n){this.children=e,this.pos=t,this.i=n,this.off=0}findPos(e,t=1){for(;;){if(e>this.pos||e==this.pos&&(t>0||0==this.i||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let n=this.children[--this.i];this.pos-=n.length+n.breakAfter}}}function L(e,t,n,r,o,i,s,a,l){let{children:c}=e,u=c.length?c[t]:null,h=i.length?i[i.length-1]:null,d=h?h.breakAfter:s;if(!(t==r&&u&&!s&&!d&&i.length<2&&u.merge(n,o,i.length?h:null,0==n,a,l))){if(r<c.length){let e=c[r];e&&o<e.length?(t==r&&(e=e.split(o),o=0),!d&&h&&e.merge(0,o,h,!0,0,l)?i[i.length-1]=e:(o&&e.merge(0,o,null,!1,0,l),i.push(e))):(null==e?void 0:e.breakAfter)&&(h?h.breakAfter=1:s=1),r++}for(u&&(u.breakAfter=s,n>0&&(!s&&i.length&&u.merge(n,u.length,i[0],!1,a,0)?u.breakAfter=i.shift().breakAfter:(n<u.length||u.children.length&&0==u.children[u.children.length-1].length)&&u.merge(n,u.length,null,!1,a,0),t++));t<r&&i.length;)if(c[r-1].become(i[i.length-1]))r--,i.pop(),l=i.length?0:a;else{if(!c[t].become(i[0]))break;t++,i.shift(),a=i.length?0:l}!i.length&&t&&r<c.length&&!c[t-1].breakAfter&&c[r].merge(0,0,c[t-1],!1,a,l)&&t--,(t<r||i.length)&&e.replaceChildren(t,r,i)}}function j(e,t,n,r,o,i){let s=e.childCursor(),{i:a,off:l}=s.findPos(n,1),{i:c,off:u}=s.findPos(t,-1),h=t-n;for(let e of r)h+=e.length;e.length+=h,L(e,c,u,a,l,r,0,o,i)}let F="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},B="undefined"!=typeof document?document:{documentElement:{style:{}}};const z=/Edge\/(\d+)/.exec(F.userAgent),$=/MSIE \d/.test(F.userAgent),H=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(F.userAgent),W=!!($||H||z),U=!W&&/gecko\/(\d+)/i.test(F.userAgent),V=!W&&/Chrome\/(\d+)/.exec(F.userAgent),q="webkitFontSmoothing"in B.documentElement.style,K=!W&&/Apple Computer/.test(F.vendor),Y=K&&(/Mobile\/\w+/.test(F.userAgent)||F.maxTouchPoints>2);var G={mac:Y||/Mac/.test(F.platform),windows:/Win/.test(F.platform),linux:/Linux|X11/.test(F.platform),ie:W,ie_version:$?B.documentMode||6:H?+H[1]:z?+z[1]:0,gecko:U,gecko_version:U?+(/Firefox\/(\d+)/.exec(F.userAgent)||[0,0])[1]:0,chrome:!!V,chrome_version:V?+V[1]:0,ios:Y,android:/Android\b/.test(F.userAgent),webkit:q,safari:K,webkit_version:q?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0,tabSize:null!=B.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};class J extends N{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e,t){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(t&&t.node==this.dom&&(t.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){3==e.nodeType&&this.createDOM(e)}merge(e,t,n){return(!n||n instanceof J&&!(this.length-(t-e)+n.length>256))&&(this.text=this.text.slice(0,e)+(n?n.text:"")+this.text.slice(t),this.markDirty(),!0)}split(e){let t=new J(this.text.slice(e));return this.text=this.text.slice(0,e),this.markDirty(),t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new _(this.dom,e)}domBoundsAround(e,t,n){return{from:n,to:n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return Z(this.dom,e,t)}}class Q extends N{constructor(e,t=[],n=0){super(),this.mark=e,this.children=t,this.length=n;for(let e of t)e.setParent(this)}setAttrs(e){if(D(e),this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);return e}reuseDOM(e){e.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(e),this.dirty|=6)}sync(e,t){this.dom?4&this.dirty&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(e,t)}merge(e,t,n,r,o,i){return!(n&&(!(n instanceof Q&&n.mark.eq(this.mark))||e&&o<=0||t<this.length&&i<=0)||(j(this,e,t,n?n.children:[],o-1,i-1),this.markDirty(),0))}split(e){let t=[],n=0,r=-1,o=0;for(let i of this.children){let s=n+i.length;s>e&&t.push(n<e?i.split(e-n):i),r<0&&n>=e&&(r=o),n=s,o++}let i=this.length-e;return this.length=e,r>-1&&(this.children.length=r,this.markDirty()),new Q(this.mark,t,i)}domAtPos(e){return oe(this,e)}coordsAt(e,t){return se(this,e,t)}}function Z(e,t,n){let r=e.nodeValue.length;t>r&&(t=r);let o=t,i=t,s=0;0==t&&n<0||t==r&&n>=0?G.chrome||G.gecko||(t?(o--,s=1):i<r&&(i++,s=-1)):n<0?o--:i<r&&i++;let a=A(e,o,i).getClientRects();if(!a.length)return x;let l=a[(s?s<0:n>=0)?0:a.length-1];return G.safari&&!s&&0==l.width&&(l=Array.prototype.find.call(a,(e=>e.width))||l),s?S(l,s<0):l||null}class X extends N{constructor(e,t,n){super(),this.widget=e,this.length=t,this.side=n,this.prevWidget=null}static create(e,t,n){return new(e.customView||X)(e,t,n)}split(e){let t=X.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(e){this.dom&&this.widget.updateDOM(this.dom,e)||(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.dom.contentEditable="false")}getSide(){return this.side}merge(e,t,n,r,o,i){return!(n&&(!(n instanceof X&&this.widget.compare(n.widget))||e>0&&o<=0||t<this.length&&i<=0)||(this.length=e+(n?n.length:0)+(this.length-t),0))}become(e){return e.length==this.length&&e instanceof X&&e.side==this.side&&this.widget.constructor==e.widget.constructor&&(this.widget.eq(e.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=e.widget,!0)}ignoreMutation(){return!0}ignoreEvent(e){return this.widget.ignoreEvent(e)}get overrideDOMText(){if(0==this.length)return r.xv.empty;let e=this;for(;e.parent;)e=e.parent;let{view:t}=e,n=t&&t.state.doc,o=this.posAtStart;return n?n.slice(o,o+this.length):r.xv.empty}domAtPos(e){return 0==e?_.before(this.dom):_.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,t){let n=this.dom.getClientRects(),r=null;if(!n.length)return x;for(let t=e>0?n.length-1:0;r=n[t],!(e>0?0==t:t==n.length-1||r.top<r.bottom);t+=e>0?-1:1);return this.length?r:S(r,this.side>0)}get isEditable(){return!1}get isWidget(){return!0}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}}class ee extends X{domAtPos(e){let{topView:t,text:n}=this.widget;return t?te(e,0,t,n,((e,t)=>e.domAtPos(t)),(e=>new _(n,Math.min(e,n.nodeValue.length)))):new _(n,Math.min(e,n.nodeValue.length))}sync(){this.setDOM(this.widget.toDOM())}localPosFromDOM(e,t){let{topView:n,text:r}=this.widget;return n?ne(e,t,n,r):Math.min(t,this.length)}ignoreMutation(){return!1}get overrideDOMText(){return null}coordsAt(e,t){let{topView:n,text:r}=this.widget;return n?te(e,t,n,r,((e,t,n)=>e.coordsAt(t,n)),((e,t)=>Z(r,e,t))):Z(r,e,t)}destroy(){var e;super.destroy(),null===(e=this.widget.topView)||void 0===e||e.destroy()}get isEditable(){return!0}canReuseDOM(){return!0}}function te(e,t,n,r,o,i){if(n instanceof Q){for(let s=n.dom.firstChild;s;s=s.nextSibling){let n=N.get(s);if(!n)return i(e,t);let a=p(s,r),l=n.length+(a?r.nodeValue.length:0);if(e<l||e==l&&n.getSide()<=0)return a?te(e,t,n,r,o,i):o(n,e,t);e-=l}return o(n,n.length,-1)}return n.dom==r?i(e,t):o(n,e,t)}function ne(e,t,n,r){if(n instanceof Q){let o=0;for(let i of n.children){let n=p(i.dom,r);if(p(i.dom,e))return o+(n?ne(e,t,i,r):i.localPosFromDOM(e,t));o+=n?r.nodeValue.length:i.length}}else if(n.dom==r)return Math.min(t,r.nodeValue.length);return n.localPosFromDOM(e,t)}class re extends N{constructor(e){super(),this.side=e}get length(){return 0}merge(){return!1}become(e){return e instanceof re&&e.side==this.side}split(){return new re(this.side)}sync(){if(!this.dom){let e=document.createElement("img");e.className="cm-widgetBuffer",e.setAttribute("aria-hidden","true"),this.setDOM(e)}}getSide(){return this.side}domAtPos(e){return this.side>0?_.before(this.dom):_.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){let t=this.dom.getBoundingClientRect(),n=function(e,t){let n=e.parent,r=n?n.children.indexOf(e):-1;for(;n&&r>=0;)if(t<0?r>0:r<n.children.length){let e=n.children[r+t];if(e instanceof J){let n=e.coordsAt(t<0?e.length:0,t);if(n)return n}r+=t}else{if(!(n instanceof Q&&n.parent)){let e=n.dom.lastChild;if(e&&"BR"==e.nodeName)return e.getClientRects()[0];break}r=n.parent.children.indexOf(n)+(t<0?0:1),n=n.parent}}(this,this.side>0?-1:1);return n&&n.top<t.bottom&&n.bottom>t.top?{left:t.left,right:t.right,top:n.top,bottom:n.bottom}:t}get overrideDOMText(){return r.xv.empty}}function oe(e,t){let n=e.dom,{children:r}=e,o=0;for(let e=0;o<r.length;o++){let i=r[o],s=e+i.length;if(!(s==e&&i.getSide()<=0)){if(t>e&&t<s&&i.dom.parentNode==n)return i.domAtPos(t-e);if(t<=e)break;e=s}}for(let e=o;e>0;e--){let t=r[e-1];if(t.dom.parentNode==n)return t.domAtPos(t.length)}for(let e=o;e<r.length;e++){let t=r[e];if(t.dom.parentNode==n)return t.domAtPos(0)}return new _(n,0)}function ie(e,t,n){let r,{children:o}=e;n>0&&t instanceof Q&&o.length&&(r=o[o.length-1])instanceof Q&&r.mark.eq(t.mark)?ie(r,t.children[0],n-1):(o.push(t),t.setParent(e)),e.length+=t.length}function se(e,t,n){let r=null,o=-1,i=null,s=-1;!function e(t,n){for(let a=0,l=0;a<t.children.length&&l<=n;a++){let c=t.children[a],u=l+c.length;u>=n&&(c.children.length?e(c,n-l):!i&&(u>n||l==u&&c.getSide()>0)?(i=c,s=n-l):(l<n||l==u&&c.getSide()<0)&&(r=c,o=n-l)),l=u}}(e,t);let a=(n<0?r:i)||r||i;return a?a.coordsAt(Math.max(0,a==r?o:s),n):function(e){let t=e.dom.lastChild;if(!t)return e.dom.getBoundingClientRect();let n=g(t);return n[n.length-1]||null}(e)}function ae(e,t){for(let n in e)"class"==n&&t.class?t.class+=" "+e.class:"style"==n&&t.style?t.style+=";"+e.style:t[n]=e[n];return t}function le(e,t){if(e==t)return!0;if(!e||!t)return!1;let n=Object.keys(e),r=Object.keys(t);if(n.length!=r.length)return!1;for(let o of n)if(-1==r.indexOf(o)||e[o]!==t[o])return!1;return!0}function ce(e,t,n){let r=null;if(t)for(let o in t)n&&o in n||e.removeAttribute(r=o);if(n)for(let o in n)t&&t[o]==n[o]||e.setAttribute(r=o,n[o]);return!!r}J.prototype.children=X.prototype.children=re.prototype.children=R;class ue{eq(e){return!1}updateDOM(e,t){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}ignoreEvent(e){return!0}get customView(){return null}destroy(e){}}var he=function(e){return e[e.Text=0]="Text",e[e.WidgetBefore=1]="WidgetBefore",e[e.WidgetAfter=2]="WidgetAfter",e[e.WidgetRange=3]="WidgetRange",e}(he||(he={}));class de extends r.uU{constructor(e,t,n,r){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new fe(e)}static widget(e){let t=e.side||0,n=!!e.block;return t+=n?t>0?3e8:-4e8:t>0?1e8:-1e8,new me(e,t,t,n,e.widget||null,!1)}static replace(e){let t,n,r=!!e.block;if(e.isBlockGap)t=-5e8,n=4e8;else{let{start:o,end:i}=ge(e,r);t=(o?r?-3e8:-1:5e8)-1,n=1+(i?r?2e8:1:-6e8)}return new me(e,t,n,r,e.widget||null,!0)}static line(e){return new pe(e)}static set(e,t=!1){return r.Xs.of(e,t)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}}de.none=r.Xs.empty;class fe extends de{constructor(e){let{start:t,end:n}=ge(e);super(t?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){return this==e||e instanceof fe&&this.tagName==e.tagName&&this.class==e.class&&le(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}fe.prototype.point=!1;class pe extends de{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof pe&&this.spec.class==e.spec.class&&le(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}pe.prototype.mapMode=r.gc.TrackBefore,pe.prototype.point=!0;class me extends de{constructor(e,t,n,o,i,s){super(t,n,i,e),this.block=o,this.isReplace=s,this.mapMode=o?t<=0?r.gc.TrackBefore:r.gc.TrackAfter:r.gc.TrackDel}get type(){return this.startSide<this.endSide?he.WidgetRange:this.startSide<=0?he.WidgetBefore:he.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&this.widget.estimatedHeight>=5}eq(e){return e instanceof me&&(t=this.widget,n=e.widget,t==n||!!(t&&n&&t.compare(n)))&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide;var t,n}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}function ge(e,t=!1){let{inclusiveStart:n,inclusiveEnd:r}=e;return null==n&&(n=e.inclusive),null==r&&(r=e.inclusive),{start:null!=n?n:t,end:null!=r?r:t}}function ye(e,t,n,r=0){let o=n.length-1;o>=0&&n[o]+r>=e?n[o]=Math.max(n[o],t):n.push(e,t)}me.prototype.point=!0;class ve extends N{constructor(){super(...arguments),this.children=[],this.length=0,this.prevAttrs=void 0,this.attrs=null,this.breakAfter=0}merge(e,t,n,r,o,i){if(n){if(!(n instanceof ve))return!1;this.dom||n.transferDOM(this)}return r&&this.setDeco(n?n.attrs:null),j(this,e,t,n?n.children:[],o,i),!0}split(e){let t=new ve;if(t.breakAfter=this.breakAfter,0==this.length)return t;let{i:n,off:r}=this.childPos(e);r&&(t.append(this.children[n].split(r),0),this.children[n].merge(r,this.children[n].length,null,!1,0,0),n++);for(let e=n;e<this.children.length;e++)t.append(this.children[e],0);for(;n>0&&0==this.children[n-1].length;)this.children[--n].destroy();return this.children.length=n,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(this.markDirty(),e.setDOM(this.dom),e.prevAttrs=void 0===this.prevAttrs?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){le(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){ie(this,e,t)}addLineDeco(e){let t=e.spec.attributes,n=e.spec.class;t&&(this.attrs=ae(t,this.attrs||{})),n&&(this.attrs=ae({class:n},this.attrs||{}))}domAtPos(e){return oe(this,e)}reuseDOM(e){"DIV"==e.nodeName&&(this.setDOM(e),this.dirty|=6)}sync(e,t){var n;this.dom?4&this.dirty&&(D(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),void 0!==this.prevAttrs&&(ce(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,t);let r=this.dom.lastChild;for(;r&&N.get(r)instanceof Q;)r=r.lastChild;if(!(r&&this.length&&("BR"==r.nodeName||0!=(null===(n=N.get(r))||void 0===n?void 0:n.isEditable)||G.ios&&this.children.some((e=>e instanceof J))))){let e=document.createElement("BR");e.cmIgnore=!0,this.dom.appendChild(e)}}measureTextSize(){if(0==this.children.length||this.length>20)return null;let e,t=0;for(let n of this.children){if(!(n instanceof J)||/[^ -~]/.test(n.text))return null;let r=g(n.dom);if(1!=r.length)return null;t+=r[0].width,e=r[0].height}return t?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:t/this.length,textHeight:e}:null}coordsAt(e,t){let n=se(this,e,t);if(!this.children.length&&n&&this.parent){let{heightOracle:e}=this.parent.view.viewState,t=n.bottom-n.top;if(Math.abs(t-e.lineHeight)<2&&e.textHeight<t){let r=(t-e.textHeight)/2;return{top:n.top+r,bottom:n.bottom-r,left:n.left,right:n.left}}}return n}become(e){return!1}get type(){return he.Text}static find(e,t){for(let n=0,r=0;n<e.children.length;n++){let o=e.children[n],i=r+o.length;if(i>=t){if(o instanceof ve)return o;if(i>t)break}r=i+o.breakAfter}return null}}class be extends N{constructor(e,t,n){super(),this.widget=e,this.length=t,this.type=n,this.breakAfter=0,this.prevWidget=null}merge(e,t,n,r,o,i){return!(n&&(!(n instanceof be&&this.widget.compare(n.widget))||e>0&&o<=0||t<this.length&&i<=0)||(this.length=e+(n?n.length:0)+(this.length-t),0))}domAtPos(e){return 0==e?_.before(this.dom):_.after(this.dom,e==this.length)}split(e){let t=this.length-e;this.length=e;let n=new be(this.widget,t,this.type);return n.breakAfter=this.breakAfter,n}get children(){return R}sync(e){this.dom&&this.widget.updateDOM(this.dom,e)||(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.dom.contentEditable="false")}get overrideDOMText(){return this.parent?this.parent.view.state.doc.slice(this.posAtStart,this.posAtEnd):r.xv.empty}domBoundsAround(){return null}become(e){return e instanceof be&&e.type==this.type&&e.widget.constructor==this.widget.constructor&&(e.widget.eq(this.widget)||this.markDirty(!0),this.dom&&!this.prevWidget&&(this.prevWidget=this.widget),this.widget=e.widget,this.length=e.length,this.breakAfter=e.breakAfter,!0)}ignoreMutation(){return!0}ignoreEvent(e){return this.widget.ignoreEvent(e)}get isEditable(){return!1}get isWidget(){return!0}destroy(){super.destroy(),this.dom&&this.widget.destroy(this.dom)}}class we{constructor(e,t,n,r){this.doc=e,this.pos=t,this.end=n,this.disallowBlockEffectsFor=r,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=e.iter(),this.skip=t}posCovered(){if(0==this.content.length)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let e=this.content[this.content.length-1];return!(e.breakAfter||e instanceof be&&e.type==he.WidgetBefore)}getLine(){return this.curLine||(this.content.push(this.curLine=new ve),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(xe(new re(-1),e),e.length),this.pendingBuffer=0)}addBlockWidget(e){this.flushBuffer(),this.curLine=null,this.content.push(e)}finish(e){this.pendingBuffer&&e<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,this.posCovered()||this.getLine()}buildText(e,t,n){for(;e>0;){if(this.textOff==this.text.length){let{value:t,lineBreak:n,done:r}=this.cursor.next(this.skip);if(this.skip=0,r)throw new Error("Ran out of text content when drawing inline views");if(n){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,e--;continue}this.text=t,this.textOff=0}let r=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(t.slice(t.length-n)),this.getLine().append(xe(new J(this.text.slice(this.textOff,this.textOff+r)),t),n),this.atCursorPos=!0,this.textOff+=r,e-=r,n=0}}span(e,t,n,r){this.buildText(t-e,n,r),this.pos=t,this.openStart<0&&(this.openStart=r)}point(e,t,n,r,o,i){if(this.disallowBlockEffectsFor[i]&&n instanceof me){if(n.block)throw new RangeError("Block decorations may not be specified via plugins");if(t>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let s=t-e;if(n instanceof me)if(n.block){let{type:e}=n;e!=he.WidgetAfter||this.posCovered()||this.getLine(),this.addBlockWidget(new be(n.widget||new Se("div"),s,e))}else{let i=X.create(n.widget||new Se("span"),s,s?0:n.startSide),a=this.atCursorPos&&!i.isEditable&&o<=r.length&&(e<t||n.startSide>0),l=!i.isEditable&&(e<t||o>r.length||n.startSide<=0),c=this.getLine();2!=this.pendingBuffer||a||(this.pendingBuffer=0),this.flushBuffer(r),a&&(c.append(xe(new re(1),r),o),o=r.length+Math.max(0,o-r.length)),c.append(xe(i,r),o),this.atCursorPos=l,this.pendingBuffer=l?e<t||o>r.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=r.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(n);s&&(this.textOff+s<=this.text.length?this.textOff+=s:(this.skip+=s-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=o)}static build(e,t,n,o,i){let s=new we(e,t,n,i);return s.openEnd=r.Xs.spans(o,t,n,s),s.openStart<0&&(s.openStart=s.openEnd),s.finish(s.openEnd),s}}function xe(e,t){for(let n of t)e=new Q(n,[e],e.length);return e}class Se extends ue{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}}const ke=r.r$.define(),Ce=r.r$.define(),Me=r.r$.define(),Oe=r.r$.define(),Ee=r.r$.define(),Ae=r.r$.define(),Te=r.r$.define(),De=r.r$.define({combine:e=>e.some((e=>e))}),_e=r.r$.define({combine:e=>e.some((e=>e))});class Re{constructor(e,t="nearest",n="nearest",r=5,o=5){this.range=e,this.y=t,this.x=n,this.yMargin=r,this.xMargin=o}map(e){return e.empty?this:new Re(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin)}}const Ne=r.Py.define({map:(e,t)=>e.map(t)});function Pe(e,t,n){let r=e.facet(Oe);r.length?r[0](t):window.onerror?window.onerror(String(t),n,void 0,void 0,t):n?console.error(n+":",t):console.error(t)}const Ie=r.r$.define({combine:e=>!e.length||e[0]});let Le=0;const je=r.r$.define();class Fe{constructor(e,t,n,r){this.id=e,this.create=t,this.domEventHandlers=n,this.extension=r(this)}static define(e,t){const{eventHandlers:n,provide:r,decorations:o}=t||{};return new Fe(Le++,e,n,(e=>{let t=[je.of(e)];return o&&t.push(He.of((t=>{let n=t.plugin(e);return n?o(n):de.none}))),r&&t.push(r(e)),t}))}static fromClass(e,t){return Fe.define((t=>new e(t)),t)}}class Be{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}update(e){if(this.value){if(this.mustUpdate){let e=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(e)}catch(t){if(Pe(e.state,t,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(e){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.create(e)}catch(t){Pe(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(null===(t=this.value)||void 0===t?void 0:t.destroy)try{this.value.destroy()}catch(t){Pe(e.state,t,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const ze=r.r$.define(),$e=r.r$.define(),He=r.r$.define(),We=r.r$.define(),Ue=r.r$.define(),Ve=r.r$.define();class qe{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}join(e){return new qe(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,n=this;for(;t>0;t--){let r=e[t-1];if(!(r.fromA>n.toA)){if(r.toA<n.fromA)break;n=n.join(r),e.splice(t-1,1)}}return e.splice(t,0,n),e}static extendWithRanges(e,t){if(0==t.length)return e;let n=[];for(let r=0,o=0,i=0,s=0;;r++){let a=r==e.length?null:e[r],l=i-s,c=a?a.fromB:1e9;for(;o<t.length&&t[o]<c;){let e=t[o],r=t[o+1],i=Math.max(s,e),a=Math.min(c,r);if(i<=a&&new qe(i+l,a+l,i,a).addToSet(n),r>c)break;o+=2}if(!a)return n;new qe(a.fromA,a.toA,a.fromB,a.toB).addToSet(n),i=a.toA,s=a.toB}}}class Ke{constructor(e,t,n){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=r.as.empty(this.startState.doc.length);for(let e of n)this.changes=this.changes.compose(e.changes);let o=[];this.changes.iterChangedRanges(((e,t,n,r)=>o.push(new qe(e,t,n,r)))),this.changedRanges=o}static create(e,t,n){return new Ke(e,t,n)}get viewportChanged(){return(4&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(10&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some((e=>e.selection))}get empty(){return 0==this.flags&&0==this.transactions.length}}var Ye=function(e){return e[e.LTR=0]="LTR",e[e.RTL=1]="RTL",e}(Ye||(Ye={}));const Ge=Ye.LTR,Je=Ye.RTL;function Qe(e){let t=[];for(let n=0;n<e.length;n++)t.push(1<<+e[n]);return t}const Ze=Qe("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),Xe=Qe("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),et=Object.create(null),tt=[];for(let e of["()","[]","{}"]){let t=e.charCodeAt(0),n=e.charCodeAt(1);et[t]=n,et[n]=-t}const nt=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class rt{constructor(e,t,n){this.from=e,this.to=t,this.level=n}get dir(){return this.level%2?Je:Ge}side(e,t){return this.dir==t==e?this.to:this.from}static find(e,t,n,r){let o=-1;for(let i=0;i<e.length;i++){let s=e[i];if(s.from<=t&&s.to>=t){if(s.level==n)return i;(o<0||(0!=r?r<0?s.from<t:s.to>t:e[o].level>s.level))&&(o=i)}}if(o<0)throw new RangeError("Index out of range");return o}}const ot=[];function it(e){return[new rt(0,e,0)]}let st="";function at(e,t,n,o,i){var s;let a=o.head-e.from,l=-1;if(0==a){if(!i||!e.length)return null;t[0].level!=n&&(a=t[0].side(!1,n),l=0)}else if(a==e.length){if(i)return null;let e=t[t.length-1];e.level!=n&&(a=e.side(!0,n),l=t.length-1)}l<0&&(l=rt.find(t,a,null!==(s=o.bidiLevel)&&void 0!==s?s:-1,o.assoc));let c=t[l];a==c.side(i,n)&&(c=t[l+=i?1:-1],a=c.side(!i,n));let u=i==(c.dir==n),h=(0,r.cp)(e.text,a,u);if(st=e.text.slice(Math.min(a,h),Math.max(a,h)),h!=c.side(i,n))return r.jT.cursor(h+e.from,u?-1:1,c.level);let d=l==(i?t.length-1:0)?null:t[l+(i?1:-1)];return d||c.level==n?d&&d.level<c.level?r.jT.cursor(d.side(!i,n)+e.from,i?1:-1,d.level):r.jT.cursor(h+e.from,i?-1:1,c.level):r.jT.cursor(i?e.to:e.from,i?-1:1,n)}const lt="";class ct{constructor(e,t){this.points=e,this.text="",this.lineSeparator=t.facet(r.yy.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=lt}readRange(e,t){if(!e)return this;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r),this.readNode(r);let e=r.nextSibling;if(e==t)break;let o=N.get(r),i=N.get(e);(o&&i?o.breakAfter:(o?o.breakAfter:ut(r))||ut(e)&&("BR"!=r.nodeName||r.cmIgnore))&&this.lineBreak(),r=e}return this.findPointBefore(n,t),this}readTextNode(e){let t=e.nodeValue;for(let n of this.points)n.node==e&&(n.pos=this.text.length+Math.min(n.offset,t.length));for(let n=0,r=this.lineSeparator?null:/\r\n?|\n/g;;){let o,i=-1,s=1;if(this.lineSeparator?(i=t.indexOf(this.lineSeparator,n),s=this.lineSeparator.length):(o=r.exec(t))&&(i=o.index,s=o[0].length),this.append(t.slice(n,i<0?t.length:i)),i<0)break;if(this.lineBreak(),s>1)for(let t of this.points)t.node==e&&t.pos>this.text.length&&(t.pos-=s-1);n=i+s}}readNode(e){if(e.cmIgnore)return;let t=N.get(e),n=t&&t.overrideDOMText;if(null!=n){this.findPointInside(e,n.length);for(let e=n.iter();!e.next().done;)e.lineBreak?this.lineBreak():this.append(e.value)}else 3==e.nodeType?this.readTextNode(e):"BR"==e.nodeName?e.nextSibling&&this.lineBreak():1==e.nodeType&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let n of this.points)n.node==e&&e.childNodes[n.offset]==t&&(n.pos=this.text.length)}findPointInside(e,t){for(let n of this.points)(3==e.nodeType?n.node==e:e.contains(n.node))&&(n.pos=this.text.length+Math.min(t,n.offset))}}function ut(e){return 1==e.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName)}class ht{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class dt extends N{constructor(e){super(),this.view=e,this.compositionDeco=de.none,this.decorations=[],this.dynamicDecorationMap=[],this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(e.contentDOM),this.children=[new ve],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new qe(0,0,0,e.state.doc.length)],0)}get length(){return this.view.state.doc.length}update(e){let t=e.changedRanges;this.minWidth>0&&t.length&&(t.every((({fromA:e,toA:t})=>t<this.minWidthFrom||e>this.minWidthTo))?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.view.inputState.composing<0?this.compositionDeco=de.none:(e.transactions.length||this.dirty)&&(this.compositionDeco=function(e,t){let n=pt(e);if(!n)return de.none;let{from:r,to:o,node:i,text:s}=n,a=t.mapPos(r,1),l=Math.max(a,t.mapPos(o,-1)),{state:c}=e,u=3==i.nodeType?i.nodeValue:new ct([],c).readRange(i.firstChild,null).text;if(l-a<u.length)if(c.doc.sliceString(a,Math.min(c.doc.length,a+u.length),lt)==u)l=a+u.length;else{if(c.doc.sliceString(Math.max(0,l-u.length),l,lt)!=u)return de.none;a=l-u.length}else if(c.doc.sliceString(a,l,lt)!=u)return de.none;let h=N.get(i);return h instanceof ee?h=h.widget.topView:h&&(h.parent=null),de.set(de.replace({widget:new mt(i,s,h),inclusive:!0}).range(a,l))}(this.view,e.changes)),(G.ie||G.chrome)&&!this.compositionDeco.size&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let n=function(e,t,n){let o=new yt;return r.Xs.compare(e,t,n,o),o.changes}(this.decorations,this.updateDeco(),e.changes);return t=qe.extendWithRanges(t,n),(0!=this.dirty||0!=t.length)&&(this.updateInner(t,e.startState.doc.length),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,t);let{observer:n}=this.view;n.ignore((()=>{this.dom.style.height=this.view.viewState.contentHeight+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let e=G.chrome||G.ios?{node:n.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,e),this.dirty=0,e&&(e.written||n.selectionRange.focusNode!=e.node)&&(this.forceSelection=!0),this.dom.style.height=""}));let r=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let e of this.children)e instanceof be&&e.widget instanceof ft&&r.push(e.dom);n.updateGaps(r)}updateChildren(e,t){let n=this.childCursor(t);for(let t=e.length-1;;t--){let r=t>=0?e[t]:null;if(!r)break;let{fromA:o,toA:i,fromB:s,toB:a}=r,{content:l,breakAtStart:c,openStart:u,openEnd:h}=we.build(this.view.state.doc,s,a,this.decorations,this.dynamicDecorationMap),{i:d,off:f}=n.findPos(i,1),{i:p,off:m}=n.findPos(o,-1);L(this,p,m,d,f,l,c,u,h)}}updateSelection(e=!1,t=!1){if(!e&&this.view.observer.selectionRange.focusNode||this.view.observer.readSelectionRange(),!t&&!this.mayControlSelection())return;let n=this.forceSelection;this.forceSelection=!1;let r=this.view.state.selection.main,o=this.domAtPos(r.anchor),i=r.empty?o:this.domAtPos(r.head);if(G.gecko&&r.empty&&1==(s=o).node.nodeType&&s.node.firstChild&&(0==s.offset||"false"==s.node.childNodes[s.offset-1].contentEditable)&&(s.offset==s.node.childNodes.length||"false"==s.node.childNodes[s.offset].contentEditable)){let e=document.createTextNode("");this.view.observer.ignore((()=>o.node.insertBefore(e,o.node.childNodes[o.offset]||null))),o=i=new _(e,0),n=!0}var s;let a=this.view.observer.selectionRange;!n&&a.focusNode&&y(o.node,o.offset,a.anchorNode,a.anchorOffset)&&y(i.node,i.offset,a.focusNode,a.focusOffset)||(this.view.observer.ignore((()=>{G.android&&G.chrome&&this.dom.contains(a.focusNode)&&function(e,t){for(let n=e;n&&n!=t;n=n.assignedSlot||n.parentNode)if(1==n.nodeType&&"false"==n.contentEditable)return!0;return!1}(a.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let e=f(this.view.root);if(e)if(r.empty){if(G.gecko){let e=(t=o.node,n=o.offset,1!=t.nodeType?0:(n&&"false"==t.childNodes[n-1].contentEditable?1:0)|(n<t.childNodes.length&&"false"==t.childNodes[n].contentEditable?2:0));if(e&&3!=e){let t=gt(o.node,o.offset,1==e?1:-1);t&&(o=new _(t,1==e?0:t.nodeValue.length))}}e.collapse(o.node,o.offset),null!=r.bidiLevel&&null!=a.cursorBidiLevel&&(a.cursorBidiLevel=r.bidiLevel)}else if(e.extend){e.collapse(o.node,o.offset);try{e.extend(i.node,i.offset)}catch(e){}}else{let t=document.createRange();r.anchor>r.head&&([o,i]=[i,o]),t.setEnd(i.node,i.offset),t.setStart(o.node,o.offset),e.removeAllRanges(),e.addRange(t)}var t,n})),this.view.observer.setSelectionRange(o,i)),this.impreciseAnchor=o.precise?null:new _(a.anchorNode,a.anchorOffset),this.impreciseHead=i.precise?null:new _(a.focusNode,a.focusOffset)}enforceCursorAssoc(){if(this.compositionDeco.size)return;let{view:e}=this,t=e.state.selection.main,n=f(e.root),{anchorNode:r,anchorOffset:o}=e.observer.selectionRange;if(!(n&&t.empty&&t.assoc&&n.modify))return;let i=ve.find(this,t.head);if(!i)return;let s=i.posAtStart;if(t.head==s||t.head==s+i.length)return;let a=this.coordsAt(t.head,-1),l=this.coordsAt(t.head,1);if(!a||!l||a.bottom>l.top)return;let c=this.domAtPos(t.head+t.assoc);n.collapse(c.node,c.offset),n.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let u=e.observer.selectionRange;e.docView.posFromDOM(u.anchorNode,u.anchorOffset)!=t.from&&n.collapse(r,o)}mayControlSelection(){let e=this.view.root.activeElement;return e==this.dom||m(this.dom,this.view.observer.selectionRange)&&!(e&&this.dom.contains(e))}nearest(e){for(let t=e;t;){let e=N.get(t);if(e&&e.rootView==this)return e;t=t.parentNode}return null}posFromDOM(e,t){let n=this.nearest(e);if(!n)throw new RangeError("Trying to find position for a DOM position outside of the document");return n.localPosFromDOM(e,t)+n.posAtStart}domAtPos(e){let{i:t,off:n}=this.childCursor().findPos(e,-1);for(;t<this.children.length-1;){let e=this.children[t];if(n<e.length||e instanceof ve)break;t++,n=0}return this.children[t].domAtPos(n)}coordsAt(e,t){for(let n=this.length,r=this.children.length-1;;r--){let o=this.children[r],i=n-o.breakAfter-o.length;if(e>i||e==i&&o.type!=he.WidgetBefore&&o.type!=he.WidgetAfter&&(!r||2==t||this.children[r-1].breakAfter||this.children[r-1].type==he.WidgetBefore&&t>-2))return o.coordsAt(e-i,t);n=i}}measureVisibleLineHeights(e){let t=[],{from:n,to:r}=e,o=this.view.contentDOM.clientWidth,i=o>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,s=-1,a=this.view.textDirection==Ye.LTR;for(let e=0,l=0;l<this.children.length;l++){let c=this.children[l],u=e+c.length;if(u>r)break;if(e>=n){let n=c.dom.getBoundingClientRect();if(t.push(n.height),i){let t=c.dom.lastChild,r=t?g(t):[];if(r.length){let t=r[r.length-1],i=a?t.right-n.left:n.right-t.left;i>s&&(s=i,this.minWidth=o,this.minWidthFrom=e,this.minWidthTo=u)}}}e=u+c.breakAfter}return t}textDirectionAt(e){let{i:t}=this.childPos(e,1);return"rtl"==getComputedStyle(this.children[t].dom).direction?Ye.RTL:Ye.LTR}measureTextSize(){for(let e of this.children)if(e instanceof ve){let t=e.measureTextSize();if(t)return t}let e,t,n,r=document.createElement("div");return r.className="cm-line",r.style.width="99999px",r.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore((()=>{this.dom.appendChild(r);let o=g(r.firstChild)[0];e=r.getBoundingClientRect().height,t=o?o.width/27:7,n=o?o.height:e,r.remove()})),{lineHeight:e,charWidth:t,textHeight:n}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new I(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,r=0;;r++){let o=r==t.viewports.length?null:t.viewports[r],i=o?o.from-1:this.length;if(i>n){let r=t.lineBlockAt(i).bottom-t.lineBlockAt(n).top;e.push(de.replace({widget:new ft(r),block:!0,inclusive:!0,isBlockGap:!0}).range(n,i))}if(!o)break;n=o.to+1}return de.set(e)}updateDeco(){let e=this.view.state.facet(He).map(((e,t)=>(this.dynamicDecorationMap[t]="function"==typeof e)?e(this.view):e));for(let t=e.length;t<e.length+3;t++)this.dynamicDecorationMap[t]=!1;return this.decorations=[...e,this.compositionDeco,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco]}scrollIntoView(e){let t,{range:n}=e,r=this.coordsAt(n.head,n.empty?n.assoc:n.head>n.anchor?-1:1);if(!r)return;!n.empty&&(t=this.coordsAt(n.anchor,n.anchor>n.head?-1:1))&&(r={left:Math.min(r.left,t.left),top:Math.min(r.top,t.top),right:Math.max(r.right,t.right),bottom:Math.max(r.bottom,t.bottom)});let o=0,i=0,s=0,a=0;for(let e of this.view.state.facet(Ue).map((e=>e(this.view))))if(e){let{left:t,right:n,top:r,bottom:l}=e;null!=t&&(o=Math.max(o,t)),null!=n&&(i=Math.max(i,n)),null!=r&&(s=Math.max(s,r)),null!=l&&(a=Math.max(a,l))}let l={left:r.left-o,top:r.top-s,right:r.right+i,bottom:r.bottom+a};!function(e,t,n,r,o,i,s,a){let l=e.ownerDocument,c=l.defaultView||window;for(let u=e;u;)if(1==u.nodeType){let e,h=u==l.body;if(h)e=k(c);else{if(u.scrollHeight<=u.clientHeight&&u.scrollWidth<=u.clientWidth){u=u.assignedSlot||u.parentNode;continue}let t=u.getBoundingClientRect();e={left:t.left,right:t.left+u.clientWidth,top:t.top,bottom:t.top+u.clientHeight}}let d=0,f=0;if("nearest"==o)t.top<e.top?(f=-(e.top-t.top+s),n>0&&t.bottom>e.bottom+f&&(f=t.bottom-e.bottom+f+s)):t.bottom>e.bottom&&(f=t.bottom-e.bottom+s,n<0&&t.top-f<e.top&&(f=-(e.top+f-t.top+s)));else{let r=t.bottom-t.top,i=e.bottom-e.top;f=("center"==o&&r<=i?t.top+r/2-i/2:"start"==o||"center"==o&&n<0?t.top-s:t.bottom-i+s)-e.top}if("nearest"==r?t.left<e.left?(d=-(e.left-t.left+i),n>0&&t.right>e.right+d&&(d=t.right-e.right+d+i)):t.right>e.right&&(d=t.right-e.right+i,n<0&&t.left<e.left+d&&(d=-(e.left+d-t.left+i))):d=("center"==r?t.left+(t.right-t.left)/2-(e.right-e.left)/2:"start"==r==a?t.left-i:t.right-(e.right-e.left)+i)-e.left,d||f)if(h)c.scrollBy(d,f);else{let e=0,n=0;if(f){let e=u.scrollTop;u.scrollTop+=f,n=u.scrollTop-e}if(d){let t=u.scrollLeft;u.scrollLeft+=d,e=u.scrollLeft-t}t={left:t.left-e,top:t.top-n,right:t.right-e,bottom:t.bottom-n},e&&Math.abs(e-d)<1&&(r="nearest"),n&&Math.abs(n-f)<1&&(o="nearest")}if(h)break;u=u.assignedSlot||u.parentNode}else{if(11!=u.nodeType)break;u=u.host}}(this.view.scrollDOM,l,n.head<n.anchor?-1:1,e.x,e.y,e.xMargin,e.yMargin,this.view.textDirection==Ye.LTR)}}class ft extends ue{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get estimatedHeight(){return this.height}}function pt(e){let t=e.observer.selectionRange,n=t.focusNode&>(t.focusNode,t.focusOffset,0);if(!n)return null;let r=e.docView.nearest(n);if(!r)return null;if(r instanceof ve){let e=n;for(;e.parentNode!=r.dom;)e=e.parentNode;let t=e.previousSibling;for(;t&&!N.get(t);)t=t.previousSibling;let o=t?N.get(t).posAtEnd:r.posAtStart;return{from:o,to:o,node:e,text:n}}{for(;;){let{parent:e}=r;if(!e)return null;if(e instanceof ve)break;r=e}let e=r.posAtStart;return{from:e,to:e+r.length,node:r.dom,text:n}}}class mt extends ue{constructor(e,t,n){super(),this.top=e,this.text=t,this.topView=n}eq(e){return this.top==e.top&&this.text==e.text}toDOM(){return this.top}ignoreEvent(){return!1}get customView(){return ee}}function gt(e,t,n){if(n<=0)for(let n=e,r=t;;){if(3==n.nodeType)return n;if(!(1==n.nodeType&&r>0))break;n=n.childNodes[r-1],r=w(n)}if(n>=0)for(let r=e,o=t;;){if(3==r.nodeType)return r;if(!(1==r.nodeType&&o<r.childNodes.length&&n>=0))break;r=r.childNodes[o],o=0}return null}class yt{constructor(){this.changes=[]}compareRange(e,t){ye(e,t,this.changes)}comparePoint(e,t){ye(e,t,this.changes)}}function vt(e,t){return t.left>e?t.left-e:Math.max(0,e-t.right)}function bt(e,t){return t.top>e?t.top-e:Math.max(0,e-t.bottom)}function wt(e,t){return e.top<t.bottom-1&&e.bottom>t.top+1}function xt(e,t){return t<e.top?{top:t,left:e.left,right:e.right,bottom:e.bottom}:e}function St(e,t){return t>e.bottom?{top:e.top,left:e.left,right:e.right,bottom:t}:e}function kt(e,t,n){let r,o,i,s,a,l,c,u,h=!1;for(let d=e.firstChild;d;d=d.nextSibling){let e=g(d);for(let f=0;f<e.length;f++){let p=e[f];o&&wt(o,p)&&(p=xt(St(p,o.bottom),o.top));let m=vt(t,p),g=bt(n,p);if(0==m&&0==g)return 3==d.nodeType?Ct(d,t,n):kt(d,t,n);if(!r||s>g||s==g&&i>m){r=d,o=p,i=m,s=g;let a=g?n<p.top?-1:1:m?t<p.left?-1:1:0;h=!a||(a>0?f<e.length-1:f>0)}0==m?n>p.bottom&&(!c||c.bottom<p.bottom)?(a=d,c=p):n<p.top&&(!u||u.top>p.top)&&(l=d,u=p):c&&wt(c,p)?c=St(c,p.bottom):u&&wt(u,p)&&(u=xt(u,p.top))}}if(c&&c.bottom>=n?(r=a,o=c):u&&u.top<=n&&(r=l,o=u),!r)return{node:e,offset:0};let d=Math.max(o.left,Math.min(o.right,t));return 3==r.nodeType?Ct(r,d,n):h&&"false"!=r.contentEditable?kt(r,d,n):{node:e,offset:Array.prototype.indexOf.call(e.childNodes,r)+(t>=(o.left+o.right)/2?1:0)}}function Ct(e,t,n){let r=e.nodeValue.length,o=-1,i=1e9,s=0;for(let a=0;a<r;a++){let r=A(e,a,a+1).getClientRects();for(let l=0;l<r.length;l++){let c=r[l];if(c.top==c.bottom)continue;s||(s=t-c.left);let u=(c.top>n?c.top-n:n-c.bottom)-1;if(c.left-1<=t&&c.right+1>=t&&u<i){let n=t>=(c.left+c.right)/2,r=n;if((G.chrome||G.gecko)&&A(e,a).getBoundingClientRect().left==c.right&&(r=!n),u<=0)return{node:e,offset:a+(r?1:0)};o=a+(r?1:0),i=u}}}return{node:e,offset:o>-1?o:s>0?e.nodeValue.length:0}}function Mt(e,t,n,r=-1){var o,i;let s,a=e.contentDOM.getBoundingClientRect(),l=a.top+e.viewState.paddingTop,{docHeight:c}=e.viewState,{x:u,y:h}=t,d=h-l;if(d<0)return 0;if(d>c)return e.state.doc.length;for(let t=e.defaultLineHeight/2,o=!1;s=e.elementAtHeight(d),s.type!=he.Text;)for(;d=r>0?s.bottom+t:s.top-t,!(d>=0&&d<=c);){if(o)return n?null:0;o=!0,r=-r}h=l+d;let f=s.from;if(f<e.viewport.from)return 0==e.viewport.from?0:n?null:Ot(e,a,s,u,h);if(f>e.viewport.to)return e.viewport.to==e.state.doc.length?e.state.doc.length:n?null:Ot(e,a,s,u,h);let p=e.dom.ownerDocument,m=e.root.elementFromPoint?e.root:p,g=m.elementFromPoint(u,h);g&&!e.contentDOM.contains(g)&&(g=null),g||(u=Math.max(a.left+1,Math.min(a.right-1,u)),g=m.elementFromPoint(u,h),g&&!e.contentDOM.contains(g)&&(g=null));let y,v=-1;if(g&&0!=(null===(o=e.docView.nearest(g))||void 0===o?void 0:o.isEditable))if(p.caretPositionFromPoint){let e=p.caretPositionFromPoint(u,h);e&&({offsetNode:y,offset:v}=e)}else if(p.caretRangeFromPoint){let t=p.caretRangeFromPoint(u,h);t&&(({startContainer:y,startOffset:v}=t),(!e.contentDOM.contains(y)||G.safari&&function(e,t,n){let r;if(3!=e.nodeType||t!=(r=e.nodeValue.length))return!1;for(let t=e.nextSibling;t;t=t.nextSibling)if(1!=t.nodeType||"BR"!=t.nodeName)return!1;return A(e,r-1,r).getBoundingClientRect().left>n}(y,v,u)||G.chrome&&function(e,t,n){if(0!=t)return!1;for(let t=e;;){let e=t.parentNode;if(!e||1!=e.nodeType||e.firstChild!=t)return!1;if(e.classList.contains("cm-line"))break;t=e}return n-(1==e.nodeType?e.getBoundingClientRect():A(e,0,Math.max(e.nodeValue.length,1)).getBoundingClientRect()).left>5}(y,v,u))&&(y=void 0))}if(!y||!e.docView.dom.contains(y)){let t=ve.find(e.docView,f);if(!t)return d>s.top+s.height/2?s.to:s.from;({node:y,offset:v}=kt(t.dom,u,h))}let b=e.docView.nearest(y);if(!b)return null;if(b.isWidget&&1==(null===(i=b.dom)||void 0===i?void 0:i.nodeType)){let e=b.dom.getBoundingClientRect();return t.y<e.top||t.y<=e.bottom&&t.x<=(e.left+e.right)/2?b.posAtStart:b.posAtEnd}return b.localPosFromDOM(y,v)+b.posAtStart}function Ot(e,t,n,o,i){let s=Math.round((o-t.left)*e.defaultCharacterWidth);e.lineWrapping&&n.height>1.5*e.defaultLineHeight&&(s+=Math.floor((i-n.top)/e.defaultLineHeight)*e.viewState.heightOracle.lineLength);let a=e.state.sliceDoc(n.from,n.to);return n.from+(0,r.Gz)(a,s,e.state.tabSize)}function Et(e,t,n,o){let i=e.state.doc.lineAt(t.head),s=e.bidiSpans(i),a=e.textDirectionAt(i.from);for(let l=t,c=null;;){let t=at(i,s,a,l,n),u=st;if(!t){if(i.number==(n?e.state.doc.lines:1))return l;u="\n",i=e.state.doc.line(i.number+(n?1:-1)),s=e.bidiSpans(i),t=r.jT.cursor(n?i.from:i.to)}if(c){if(!c(u))return l}else{if(!o)return t;c=o(u)}l=t}}function At(e,t,n){let o=e.state.facet(We).map((t=>t(e)));for(;;){let e=!1;for(let i of o)i.between(n.from-1,n.from+1,((o,i,s)=>{n.from>o&&n.from<i&&(n=t.head>n.from?r.jT.cursor(o,1):r.jT.cursor(i,-1),e=!0)}));if(!e)return n}}class Tt{constructor(e){this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.chromeScrollHack=-1,this.pendingIOSKey=void 0,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastEscPress=0,this.lastContextMenu=0,this.scrollHandlers=[],this.registeredEvents=[],this.customHandlers=[],this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.mouseSelection=null;let t=(t,n)=>{this.ignoreDuringComposition(n)||"keydown"==n.type&&this.keydown(e,n)||(this.mustFlushObserver(n)&&e.observer.forceFlush(),this.runCustomHandlers(n.type,e,n)?n.preventDefault():t(e,n))};for(let n in Lt){let r=Lt[n];e.contentDOM.addEventListener(n,(n=>{It(e,n)&&t(r,n)}),jt[n]),this.registeredEvents.push(n)}e.scrollDOM.addEventListener("mousedown",(n=>{if(n.target==e.scrollDOM&&n.clientY>e.contentDOM.getBoundingClientRect().bottom&&(t(Lt.mousedown,n),!n.defaultPrevented&&2==n.button)){let t=e.contentDOM.style.minHeight;e.contentDOM.style.minHeight="100%",setTimeout((()=>e.contentDOM.style.minHeight=t),200)}})),G.chrome&&102==G.chrome_version&&e.scrollDOM.addEventListener("wheel",(()=>{this.chromeScrollHack<0?e.contentDOM.style.pointerEvents="none":window.clearTimeout(this.chromeScrollHack),this.chromeScrollHack=setTimeout((()=>{this.chromeScrollHack=-1,e.contentDOM.style.pointerEvents=""}),100)}),{passive:!0}),this.notifiedFocused=e.hasFocus,G.safari&&e.contentDOM.addEventListener("input",(()=>null))}setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}ensureHandlers(e,t){var n;let r;this.customHandlers=[];for(let o of t)if(r=null===(n=o.update(e).spec)||void 0===n?void 0:n.domEventHandlers){this.customHandlers.push({plugin:o.value,handlers:r});for(let t in r)this.registeredEvents.indexOf(t)<0&&"scroll"!=t&&(this.registeredEvents.push(t),e.contentDOM.addEventListener(t,(n=>{It(e,n)&&this.runCustomHandlers(t,e,n)&&n.preventDefault()})))}}runCustomHandlers(e,t,n){for(let r of this.customHandlers){let o=r.handlers[e];if(o)try{if(o.call(r.plugin,n,t)||n.defaultPrevented)return!0}catch(e){Pe(t.state,e)}}return!1}runScrollHandlers(e,t){this.lastScrollTop=e.scrollDOM.scrollTop,this.lastScrollLeft=e.scrollDOM.scrollLeft;for(let n of this.customHandlers){let r=n.handlers.scroll;if(r)try{r.call(n.plugin,t,e)}catch(t){Pe(e.state,t)}}}keydown(e,t){if(this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),9==t.keyCode&&Date.now()<this.lastEscPress+2e3)return!0;if(G.android&&G.chrome&&!t.synthetic&&(13==t.keyCode||8==t.keyCode))return e.observer.delayAndroidKey(t.key,t.keyCode),!0;let n;return!(!G.ios||t.synthetic||t.altKey||t.metaKey||!((n=Dt.find((e=>e.keyCode==t.keyCode)))&&!t.ctrlKey||_t.indexOf(t.key)>-1&&t.ctrlKey&&!t.shiftKey)||(this.pendingIOSKey=n||t,setTimeout((()=>this.flushIOSKey(e)),250),0))}flushIOSKey(e){let t=this.pendingIOSKey;return!!t&&(this.pendingIOSKey=void 0,T(e.contentDOM,t.key,t.keyCode))}ignoreDuringComposition(e){return!!/^key/.test(e.type)&&(this.composing>0||!!(G.safari&&!G.ios&&Date.now()-this.compositionEndedAt<100)&&(this.compositionEndedAt=0,!0))}mustFlushObserver(e){return"keydown"==e.type&&229!=e.keyCode}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.mouseSelection&&this.mouseSelection.update(e),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}const Dt=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],_t="dthko",Rt=[16,17,18,20,91,92,224,225];function Nt(e){return.7*e+8}class Pt{constructor(e,t,n,o){this.view=e,this.style=n,this.mustSelect=o,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParent=function(e){let t=e.ownerDocument;for(let n=e.parentNode;n&&n!=t.body;)if(1==n.nodeType){if(n.scrollHeight>n.clientHeight||n.scrollWidth>n.clientWidth)return n;n=n.assignedSlot||n.parentNode}else{if(11!=n.nodeType)break;n=n.host}return null}(e.contentDOM);let i=e.contentDOM.ownerDocument;i.addEventListener("mousemove",this.move=this.move.bind(this)),i.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(r.yy.allowMultipleSelections)&&function(e,t){let n=e.state.facet(ke);return n.length?n[0](t):G.mac?t.metaKey:t.ctrlKey}(e,t),this.dragMove=function(e,t){let n=e.state.facet(Ce);return n.length?n[0](t):G.mac?!t.altKey:!t.ctrlKey}(e,t),this.dragging=!(!function(e,t){let{main:n}=e.state.selection;if(n.empty)return!1;let r=f(e.root);if(!r||0==r.rangeCount)return!0;let o=r.getRangeAt(0).getClientRects();for(let e=0;e<o.length;e++){let n=o[e];if(n.left<=t.clientX&&n.right>=t.clientX&&n.top<=t.clientY&&n.bottom>=t.clientY)return!0}return!1}(e,t)||1!=Gt(t))&&null}start(e){!1===this.dragging&&(e.preventDefault(),this.select(e))}move(e){var t;if(0==e.buttons)return this.destroy();if(!1!==this.dragging)return;this.select(this.lastEvent=e);let n=0,r=0,o=(null===(t=this.scrollParent)||void 0===t?void 0:t.getBoundingClientRect())||{left:0,top:0,right:this.view.win.innerWidth,bottom:this.view.win.innerHeight};e.clientX<=o.left?n=-Nt(o.left-e.clientX):e.clientX>=o.right&&(n=Nt(e.clientX-o.right)),e.clientY<=o.top?r=-Nt(o.top-e.clientY):e.clientY>=o.bottom&&(r=Nt(e.clientY-o.bottom)),this.setScrollSpeed(n,r)}up(e){null==this.dragging&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval((()=>this.scroll()),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){this.scrollParent?(this.scrollParent.scrollLeft+=this.scrollSpeed.x,this.scrollParent.scrollTop+=this.scrollSpeed.y):this.view.win.scrollBy(this.scrollSpeed.x,this.scrollSpeed.y),!1===this.dragging&&this.select(this.lastEvent)}select(e){let t=this.style.get(e,this.extend,this.multiple);!this.mustSelect&&t.eq(this.view.state.selection)&&t.main.assoc==this.view.state.selection.main.assoc||this.view.dispatch({selection:t,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.docChanged&&this.dragging&&(this.dragging=this.dragging.map(e.changes)),this.style.update(e)&&setTimeout((()=>this.select(this.lastEvent)),20)}}function It(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n,r=t.target;r!=e.contentDOM;r=r.parentNode)if(!r||11==r.nodeType||(n=N.get(r))&&n.ignoreEvent(t))return!1;return!0}const Lt=Object.create(null),jt=Object.create(null),Ft=G.ie&&G.ie_version<15||G.ios&&G.webkit_version<604;function Bt(e,t){let n,{state:o}=e,i=1,s=o.toText(t),a=s.lines==o.selection.ranges.length;if(null!=Qt&&o.selection.ranges.every((e=>e.empty))&&Qt==s.toString()){let e=-1;n=o.changeByRange((n=>{let l=o.doc.lineAt(n.from);if(l.from==e)return{range:n};e=l.from;let c=o.toText((a?s.line(i++).text:t)+o.lineBreak);return{changes:{from:l.from,insert:c},range:r.jT.cursor(n.from+c.length)}}))}else n=a?o.changeByRange((e=>{let t=s.line(i++);return{changes:{from:e.from,to:e.to,insert:t.text},range:r.jT.cursor(e.from+t.length)}})):o.replaceSelection(s);e.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}function zt(e,t,n,o){if(1==o)return r.jT.cursor(t,n);if(2==o)return function(e,t,n=1){let o=e.charCategorizer(t),i=e.doc.lineAt(t),s=t-i.from;if(0==i.length)return r.jT.cursor(t);0==s?n=1:s==i.length&&(n=-1);let a=s,l=s;n<0?a=(0,r.cp)(i.text,s,!1):l=(0,r.cp)(i.text,s);let c=o(i.text.slice(a,l));for(;a>0;){let e=(0,r.cp)(i.text,a,!1);if(o(i.text.slice(e,a))!=c)break;a=e}for(;l<i.length;){let e=(0,r.cp)(i.text,l);if(o(i.text.slice(l,e))!=c)break;l=e}return r.jT.range(a+i.from,l+i.from)}(e.state,t,n);{let n=ve.find(e.docView,t),o=e.state.doc.lineAt(n?n.posAtEnd:t),i=n?n.posAtStart:o.from,s=n?n.posAtEnd:o.to;return s<e.state.doc.length&&s==o.to&&s++,r.jT.range(i,s)}}Lt.keydown=(e,t)=>{e.inputState.setSelectionOrigin("select"),27==t.keyCode?e.inputState.lastEscPress=Date.now():Rt.indexOf(t.keyCode)<0&&(e.inputState.lastEscPress=0)},Lt.touchstart=(e,t)=>{e.inputState.lastTouchTime=Date.now(),e.inputState.setSelectionOrigin("select.pointer")},Lt.touchmove=e=>{e.inputState.setSelectionOrigin("select.pointer")},jt.touchstart=jt.touchmove={passive:!0},Lt.mousedown=(e,t)=>{if(e.observer.flush(),e.inputState.lastTouchTime>Date.now()-2e3)return;let n=null;for(let r of e.state.facet(Me))if(n=r(e,t),n)break;if(n||0!=t.button||(n=function(e,t){let n=Ut(e,t),o=Gt(t),i=e.state.selection;return{update(e){e.docChanged&&(n.pos=e.changes.mapPos(n.pos),i=i.map(e.changes))},get(t,s,a){let l=Ut(e,t),c=zt(e,l.pos,l.bias,o);if(n.pos!=l.pos&&!s){let t=zt(e,n.pos,n.bias,o),i=Math.min(t.from,c.from),s=Math.max(t.to,c.to);c=i<c.from?r.jT.range(i,s):r.jT.range(s,i)}return s?i.replaceRange(i.main.extend(c.from,c.to)):a&&i.ranges.length>1&&i.ranges.some((e=>e.eq(c)))?function(e,t){for(let n=0;;n++)if(e.ranges[n].eq(t))return r.jT.create(e.ranges.slice(0,n).concat(e.ranges.slice(n+1)),e.mainIndex==n?0:e.mainIndex-(e.mainIndex>n?1:0))}(i,c):a?i.addRange(c):r.jT.create([c])}}}(e,t)),n){let r=e.root.activeElement!=e.contentDOM;e.inputState.startMouseSelection(new Pt(e,t,n,r)),r&&e.observer.ignore((()=>E(e.contentDOM))),e.inputState.mouseSelection&&e.inputState.mouseSelection.start(t)}};let $t=(e,t)=>e>=t.top&&e<=t.bottom,Ht=(e,t,n)=>$t(t,n)&&e>=n.left&&e<=n.right;function Wt(e,t,n,r){let o=ve.find(e.docView,t);if(!o)return 1;let i=t-o.posAtStart;if(0==i)return 1;if(i==o.length)return-1;let s=o.coordsAt(i,-1);if(s&&Ht(n,r,s))return-1;let a=o.coordsAt(i,1);return a&&Ht(n,r,a)?1:s&&$t(r,s)?-1:1}function Ut(e,t){let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1);return{pos:n,bias:Wt(e,n,t.clientX,t.clientY)}}const Vt=G.ie&&G.ie_version<=11;let qt=null,Kt=0,Yt=0;function Gt(e){if(!Vt)return e.detail;let t=qt,n=Yt;return qt=e,Yt=Date.now(),Kt=!t||n>Date.now()-400&&Math.abs(t.clientX-e.clientX)<2&&Math.abs(t.clientY-e.clientY)<2?(Kt+1)%3:1}function Jt(e,t,n,r){if(!n)return;let o=e.posAtCoords({x:t.clientX,y:t.clientY},!1);t.preventDefault();let{mouseSelection:i}=e.inputState,s=r&&i&&i.dragging&&i.dragMove?{from:i.dragging.from,to:i.dragging.to}:null,a={from:o,insert:n},l=e.state.changes(s?[s,a]:a);e.focus(),e.dispatch({changes:l,selection:{anchor:l.mapPos(o,-1),head:l.mapPos(o,1)},userEvent:s?"move.drop":"input.drop"})}Lt.dragstart=(e,t)=>{let{selection:{main:n}}=e.state,{mouseSelection:r}=e.inputState;r&&(r.dragging=n),t.dataTransfer&&(t.dataTransfer.setData("Text",e.state.sliceDoc(n.from,n.to)),t.dataTransfer.effectAllowed="copyMove")},Lt.drop=(e,t)=>{if(!t.dataTransfer)return;if(e.state.readOnly)return t.preventDefault();let n=t.dataTransfer.files;if(n&&n.length){t.preventDefault();let r=Array(n.length),o=0,i=()=>{++o==n.length&&Jt(e,t,r.filter((e=>null!=e)).join(e.state.lineBreak),!1)};for(let e=0;e<n.length;e++){let t=new FileReader;t.onerror=i,t.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(t.result)||(r[e]=t.result),i()},t.readAsText(n[e])}}else Jt(e,t,t.dataTransfer.getData("Text"),!0)},Lt.paste=(e,t)=>{if(e.state.readOnly)return t.preventDefault();e.observer.flush();let n=Ft?null:t.clipboardData;n?(Bt(e,n.getData("text/plain")||n.getData("text/uri-text")),t.preventDefault()):function(e){let t=e.dom.parentNode;if(!t)return;let n=t.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout((()=>{e.focus(),n.remove(),Bt(e,n.value)}),50)}(e)};let Qt=null;Lt.copy=Lt.cut=(e,t)=>{let{text:n,ranges:r,linewise:o}=function(e){let t=[],n=[],r=!1;for(let r of e.selection.ranges)r.empty||(t.push(e.sliceDoc(r.from,r.to)),n.push(r));if(!t.length){let o=-1;for(let{from:r}of e.selection.ranges){let i=e.doc.lineAt(r);i.number>o&&(t.push(i.text),n.push({from:i.from,to:Math.min(e.doc.length,i.to+1)})),o=i.number}r=!0}return{text:t.join(e.lineBreak),ranges:n,linewise:r}}(e.state);if(!n&&!o)return;Qt=o?n:null;let i=Ft?null:t.clipboardData;i?(t.preventDefault(),i.clearData(),i.setData("text/plain",n)):function(e,t){let n=e.dom.parentNode;if(!n)return;let r=n.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=t,r.focus(),r.selectionEnd=t.length,r.selectionStart=0,setTimeout((()=>{r.remove(),e.focus()}),50)}(e,n),"cut"!=t.type||e.state.readOnly||e.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"})};const Zt=r.q6.define();function Xt(e,t){let n=[];for(let r of e.facet(Te)){let o=r(e,t);o&&n.push(o)}return n?e.update({effects:n,annotations:Zt.of(!0)}):null}function en(e){setTimeout((()=>{let t=e.hasFocus;if(t!=e.inputState.notifiedFocused){let n=Xt(e.state,t);n?e.dispatch(n):e.update([])}}),10)}Lt.focus=e=>{e.inputState.lastFocusTime=Date.now(),e.scrollDOM.scrollTop||!e.inputState.lastScrollTop&&!e.inputState.lastScrollLeft||(e.scrollDOM.scrollTop=e.inputState.lastScrollTop,e.scrollDOM.scrollLeft=e.inputState.lastScrollLeft),en(e)},Lt.blur=e=>{e.observer.clearSelectionRange(),en(e)},Lt.compositionstart=Lt.compositionupdate=e=>{null==e.inputState.compositionFirstChange&&(e.inputState.compositionFirstChange=!0),e.inputState.composing<0&&(e.inputState.composing=0)},Lt.compositionend=e=>{e.inputState.composing=-1,e.inputState.compositionEndedAt=Date.now(),e.inputState.compositionFirstChange=null,G.chrome&&G.android&&e.observer.flushSoon(),setTimeout((()=>{e.inputState.composing<0&&e.docView.compositionDeco.size&&e.update([])}),50)},Lt.contextmenu=e=>{e.inputState.lastContextMenu=Date.now()},Lt.beforeinput=(e,t)=>{var n;let r;if(G.chrome&&G.android&&(r=Dt.find((e=>e.inputType==t.inputType)))&&(e.observer.delayAndroidKey(r.key,r.keyCode),"Backspace"==r.key||"Delete"==r.key)){let t=(null===(n=window.visualViewport)||void 0===n?void 0:n.height)||0;setTimeout((()=>{var n;((null===(n=window.visualViewport)||void 0===n?void 0:n.height)||0)>t+10&&e.hasFocus&&(e.contentDOM.blur(),e.focus())}),100)}};const tn=["pre-wrap","normal","pre-line","break-spaces"];class nn{constructor(e){this.lineWrapping=e,this.doc=r.xv.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30,this.heightChanged=!1}heightForGap(e,t){let n=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(n+=Math.max(0,Math.ceil((t-e-n*this.lineLength*.5)/this.lineLength))),this.lineHeight*n}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return tn.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];r<0?n++:this.heightSamples[Math.floor(10*r)]||(t=!0,this.heightSamples[Math.floor(10*r)]=!0)}return t}refresh(e,t,n,r,o,i){let s=tn.indexOf(e)>-1,a=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=s;if(this.lineWrapping=s,this.lineHeight=t,this.charWidth=n,this.textHeight=r,this.lineLength=o,a){this.heightSamples={};for(let e=0;e<i.length;e++){let t=i[e];t<0?e++:this.heightSamples[Math.floor(10*t)]=!0}}return a}}class rn{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class on{constructor(e,t,n,r,o){this.from=e,this.length=t,this.top=n,this.height=r,this.type=o}get to(){return this.from+this.length}get bottom(){return this.top+this.height}join(e){let t=(Array.isArray(this.type)?this.type:[this]).concat(Array.isArray(e.type)?e.type:[e]);return new on(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var sn=function(e){return e[e.ByPos=0]="ByPos",e[e.ByHeight=1]="ByHeight",e[e.ByPosNoHeight=2]="ByPosNoHeight",e}(sn||(sn={}));const an=.001;class ln{constructor(e,t,n=2){this.length=e,this.height=t,this.flags=n}get outdated(){return(2&this.flags)>0}set outdated(e){this.flags=(e?2:0)|-3&this.flags}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>an&&(e.heightChanged=!0),this.height=t)}replace(e,t,n){return ln.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,r){let o=this,i=n.doc;for(let s=r.length-1;s>=0;s--){let{fromA:a,toA:l,fromB:c,toB:u}=r[s],h=o.lineAt(a,sn.ByPosNoHeight,n.setDoc(t),0,0),d=h.to>=l?h:o.lineAt(l,sn.ByPosNoHeight,n,0,0);for(u+=d.to-l,l=d.to;s>0&&h.from<=r[s-1].toA;)a=r[s-1].fromA,c=r[s-1].fromB,s--,a<h.from&&(h=o.lineAt(a,sn.ByPosNoHeight,n,0,0));c+=h.from-a,a=h.from;let f=pn.build(n.setDoc(i),e,c,u);o=o.replace(a,l,f)}return o.updateHeight(n,0)}static empty(){return new un(0,0)}static of(e){if(1==e.length)return e[0];let t=0,n=e.length,r=0,o=0;for(;;)if(t==n)if(r>2*o){let o=e[t-1];o.break?e.splice(--t,1,o.left,null,o.right):e.splice(--t,1,o.left,o.right),n+=1+o.break,r-=o.size}else{if(!(o>2*r))break;{let t=e[n];t.break?e.splice(n,1,t.left,null,t.right):e.splice(n,1,t.left,t.right),n+=2+t.break,o-=t.size}}else if(r<o){let n=e[t++];n&&(r+=n.size)}else{let t=e[--n];t&&(o+=t.size)}let i=0;return null==e[t-1]?(i=1,t--):null==e[t]&&(i=1,n++),new dn(ln.of(e.slice(0,t)),i,ln.of(e.slice(n)))}}ln.prototype.size=1;class cn extends ln{constructor(e,t,n){super(e,t),this.type=n}blockAt(e,t,n,r){return new on(r,this.length,n,this.height,this.type)}lineAt(e,t,n,r,o){return this.blockAt(0,n,r,o)}forEachLine(e,t,n,r,o,i){e<=o+this.length&&t>=o&&i(this.blockAt(0,n,r,o))}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more&&this.setHeight(e,r.heights[r.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class un extends cn{constructor(e,t){super(e,t,he.Text),this.collapsed=0,this.widgetHeight=0}replace(e,t,n){let r=n[0];return 1==n.length&&(r instanceof un||r instanceof hn&&4&r.flags)&&Math.abs(this.length-r.length)<10?(r instanceof hn?r=new un(r.length,this.height):r.height=this.height,this.outdated||(r.outdated=!1),r):ln.of(n)}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more?this.setHeight(e,r.heights[r.index++]):(n||this.outdated)&&this.setHeight(e,Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class hn extends ln{constructor(e){super(e,0)}heightMetrics(e,t){let n,r=e.doc.lineAt(t).number,o=e.doc.lineAt(t+this.length).number,i=o-r+1,s=0;if(e.lineWrapping){let t=Math.min(this.height,e.lineHeight*i);n=t/i,s=(this.height-t)/(this.length-i-1)}else n=this.height/i;return{firstLine:r,lastLine:o,perLine:n,perChar:s}}blockAt(e,t,n,r){let{firstLine:o,lastLine:i,perLine:s,perChar:a}=this.heightMetrics(t,r);if(t.lineWrapping){let o=r+Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length),i=t.doc.lineAt(o),l=s+i.length*a,c=Math.max(n,e-l/2);return new on(i.from,i.length,c,l,he.Text)}{let r=Math.max(0,Math.min(i-o,Math.floor((e-n)/s))),{from:a,length:l}=t.doc.line(o+r);return new on(a,l,n+s*r,s,he.Text)}}lineAt(e,t,n,r,o){if(t==sn.ByHeight)return this.blockAt(e,n,r,o);if(t==sn.ByPosNoHeight){let{from:t,to:r}=n.doc.lineAt(e);return new on(t,r-t,0,0,he.Text)}let{firstLine:i,perLine:s,perChar:a}=this.heightMetrics(n,o),l=n.doc.lineAt(e),c=s+l.length*a,u=l.number-i,h=r+s*u+a*(l.from-o-u);return new on(l.from,l.length,Math.max(r,Math.min(h,r+this.height-c)),c,he.Text)}forEachLine(e,t,n,r,o,i){e=Math.max(e,o),t=Math.min(t,o+this.length);let{firstLine:s,perLine:a,perChar:l}=this.heightMetrics(n,o);for(let c=e,u=r;c<=t;){let t=n.doc.lineAt(c);if(c==e){let n=t.number-s;u+=a*n+l*(e-o-n)}let r=a+l*t.length;i(new on(t.from,t.length,u,r,he.Text)),u+=r,c=t.to+1}}replace(e,t,n){let r=this.length-t;if(r>0){let e=n[n.length-1];e instanceof hn?n[n.length-1]=new hn(e.length+r):n.push(null,new hn(r-1))}if(e>0){let t=n[0];t instanceof hn?n[0]=new hn(e+t.length):n.unshift(new hn(e-1),null)}return ln.of(n)}decomposeLeft(e,t){t.push(new hn(e-1),null)}decomposeRight(e,t){t.push(null,new hn(this.length-e-1))}updateHeight(e,t=0,n=!1,r){let o=t+this.length;if(r&&r.from<=t+this.length&&r.more){let n=[],i=Math.max(t,r.from),s=-1;for(r.from>t&&n.push(new hn(r.from-t-1).updateHeight(e,t));i<=o&&r.more;){let t=e.doc.lineAt(i).length;n.length&&n.push(null);let o=r.heights[r.index++];-1==s?s=o:Math.abs(o-s)>=an&&(s=-2);let a=new un(t,o);a.outdated=!1,n.push(a),i+=t+1}i<=o&&n.push(null,new hn(o-i).updateHeight(e,i));let a=ln.of(n);return(s<0||Math.abs(a.height-this.height)>=an||Math.abs(s-this.heightMetrics(e,t).perLine)>=an)&&(e.heightChanged=!0),a}return(n||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}}class dn extends ln{constructor(e,t,n){super(e.length+t+n.length,e.height+n.height,t|(e.outdated||n.outdated?2:0)),this.left=e,this.right=n,this.size=e.size+n.size}get break(){return 1&this.flags}blockAt(e,t,n,r){let o=n+this.left.height;return e<o?this.left.blockAt(e,t,n,r):this.right.blockAt(e,t,o,r+this.left.length+this.break)}lineAt(e,t,n,r,o){let i=r+this.left.height,s=o+this.left.length+this.break,a=t==sn.ByHeight?e<i:e<s,l=a?this.left.lineAt(e,t,n,r,o):this.right.lineAt(e,t,n,i,s);if(this.break||(a?l.to<s:l.from>s))return l;let c=t==sn.ByPosNoHeight?sn.ByPosNoHeight:sn.ByPos;return a?l.join(this.right.lineAt(s,c,n,i,s)):this.left.lineAt(s,c,n,r,o).join(l)}forEachLine(e,t,n,r,o,i){let s=r+this.left.height,a=o+this.left.length+this.break;if(this.break)e<a&&this.left.forEachLine(e,t,n,r,o,i),t>=a&&this.right.forEachLine(e,t,n,s,a,i);else{let l=this.lineAt(a,sn.ByPos,n,r,o);e<l.from&&this.left.forEachLine(e,l.from-1,n,r,o,i),l.to>=e&&l.from<=t&&i(l),t>l.to&&this.right.forEachLine(l.to+1,t,n,s,a,i)}}replace(e,t,n){let r=this.left.length+this.break;if(t<r)return this.balanced(this.left.replace(e,t,n),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,n));let o=[];e>0&&this.decomposeLeft(e,o);let i=o.length;for(let e of n)o.push(e);if(e>0&&fn(o,i-1),t<this.length){let e=o.length;this.decomposeRight(t,o),fn(o,e)}return ln.of(o)}decomposeLeft(e,t){let n=this.left.length;if(e<=n)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(n++,e>=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e<n&&this.left.decomposeRight(e,t),this.break&&e<r&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?ln.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=e.height+t.height,this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,n=!1,r){let{left:o,right:i}=this,s=t+o.length+this.break,a=null;return r&&r.from<=t+o.length&&r.more?a=o=o.updateHeight(e,t,n,r):o.updateHeight(e,t,n),r&&r.from<=s+i.length&&r.more?a=i=i.updateHeight(e,s,n,r):i.updateHeight(e,s,n),a?this.balanced(o,i):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function fn(e,t){let n,r;null==e[t]&&(n=e[t-1])instanceof hn&&(r=e[t+1])instanceof hn&&e.splice(t-1,3,new hn(n.length+1+r.length))}class pn{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let e=Math.min(t,this.lineEnd),n=this.nodes[this.nodes.length-1];n instanceof un?n.length+=e-this.pos:(e>this.pos||!this.isCovered)&&this.nodes.push(new un(e-this.pos,-1)),this.writtenTo=e,t>e&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e<t||n.heightRelevant){let r=n.widget?n.widget.estimatedHeight:0;r<0&&(r=this.oracle.lineHeight);let o=t-e;n.block?this.addBlock(new cn(o,r,n.type)):(o||r>=5)&&this.addLineDeco(r,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||null==this.nodes[this.nodes.length-1])&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new un(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let n=new hn(t-e);return this.oracle.doc.lineAt(e).to==t&&(n.flags|=4),n}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof un)return e;let t=new un(0,-1);return this.nodes.push(t),t}addBlock(e){this.enterLine(),e.type!=he.WidgetAfter||this.isCovered||this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,e.type!=he.WidgetBefore&&(this.covering=e)}addLineDeco(e,t){let n=this.ensureLine();n.length+=t,n.collapsed+=t,n.widgetHeight=Math.max(n.widgetHeight,e),this.writtenTo=this.pos=this.pos+t}finish(e){let t=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||t instanceof un||this.isCovered?(this.writtenTo<this.pos||null==t)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new un(0,-1));let n=e;for(let e of this.nodes)e instanceof un&&e.updateHeight(this.oracle,n),n+=e?e.length:1;return this.nodes}static build(e,t,n,o){let i=new pn(n,e);return r.Xs.spans(t,n,o,i,0),i.finish(n)}}class mn{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,n,r){(e<t||n&&n.heightRelevant||r&&r.heightRelevant)&&ye(e,t,this.changes,5)}}function gn(e,t){let n=e.getBoundingClientRect(),r=e.ownerDocument,o=r.defaultView||window,i=Math.max(0,n.left),s=Math.min(o.innerWidth,n.right),a=Math.max(0,n.top),l=Math.min(o.innerHeight,n.bottom);for(let t=e.parentNode;t&&t!=r.body;)if(1==t.nodeType){let n=t,r=window.getComputedStyle(n);if((n.scrollHeight>n.clientHeight||n.scrollWidth>n.clientWidth)&&"visible"!=r.overflow){let r=n.getBoundingClientRect();i=Math.max(i,r.left),s=Math.min(s,r.right),a=Math.max(a,r.top),l=t==e.parentNode?r.bottom:Math.min(l,r.bottom)}t="absolute"==r.position||"fixed"==r.position?n.offsetParent:n.parentNode}else{if(11!=t.nodeType)break;t=t.host}return{left:i-n.left,right:Math.max(i,s)-n.left,top:a-(n.top+t),bottom:Math.max(a,l)-(n.top+t)}}function yn(e,t){let n=e.getBoundingClientRect();return{left:0,right:n.right-n.left,top:t,bottom:n.bottom-(n.top+t)}}class vn{constructor(e,t,n){this.from=e,this.to=t,this.size=n}static same(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++){let r=e[n],o=t[n];if(r.from!=o.from||r.to!=o.to||r.size!=o.size)return!1}return!0}draw(e){return de.replace({widget:new bn(this.size,e)}).range(this.from,this.to)}}class bn extends ue{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class wn{constructor(e){this.state=e,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scaler=Mn,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=Ye.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet($e).some((e=>"function"!=typeof e&&"cm-lineWrapping"==e.class));this.heightOracle=new nn(t),this.stateDeco=e.facet(He).filter((e=>"function"!=typeof e)),this.heightMap=ln.empty().applyChanges(this.stateDeco,r.xv.empty,this.heightOracle.setDoc(e.doc),[new qe(0,0,0,e.doc.length)]),this.viewport=this.getViewport(0,null),this.updateViewportLines(),this.updateForViewport(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=de.set(this.lineGaps.map((e=>e.draw(!1)))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let r=n?t.head:t.anchor;if(!e.some((({from:e,to:t})=>r>=e&&r<=t))){let{from:t,to:n}=this.lineBlockAt(r);e.push(new xn(t,n))}}this.viewports=e.sort(((e,t)=>e.from-t.from)),this.scaler=this.heightMap.height<=7e6?Mn:new On(this.heightOracle,this.heightMap,this.viewports)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,(e=>{this.viewportLines.push(1==this.scaler.scale?e:En(e,this.scaler))}))}update(e,t=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=this.state.facet(He).filter((e=>"function"!=typeof e));let o=e.changedRanges,i=qe.extendWithRanges(o,function(e,t,n){let o=new mn;return r.Xs.compare(e,t,n,o,0),o.changes}(n,this.stateDeco,e?e.changes:r.as.empty(this.state.doc.length))),s=this.heightMap.height;this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),i),this.heightMap.height!=s&&(e.flags|=2);let a=i.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<a.from||t.range.head>a.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let l=!e.changes.empty||2&e.flags||a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,this.updateForViewport(),l&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(_e)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,n=window.getComputedStyle(t),o=this.heightOracle,i=n.whiteSpace;this.defaultTextDirection="rtl"==n.direction?Ye.RTL:Ye.LTR;let s=this.heightOracle.mustRefreshForWrapping(i),a=t.getBoundingClientRect(),l=s||this.mustMeasureContent||this.contentDOMHeight!=a.height;this.contentDOMHeight=a.height,this.mustMeasureContent=!1;let c=0,u=0,h=parseInt(n.paddingTop)||0,d=parseInt(n.paddingBottom)||0;this.paddingTop==h&&this.paddingBottom==d||(this.paddingTop=h,this.paddingBottom=d,c|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(o.lineWrapping&&(l=!0),this.editorWidth=e.scrollDOM.clientWidth,c|=8);let f=(this.printing?yn:gn)(t,this.paddingTop),p=f.top-this.pixelViewport.top,m=f.bottom-this.pixelViewport.bottom;this.pixelViewport=f;let g=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(g!=this.inView&&(this.inView=g,g&&(l=!0)),!this.inView&&!this.scrollTarget)return 0;let y=a.width;if(this.contentDOMWidth==y&&this.editorHeight==e.scrollDOM.clientHeight||(this.contentDOMWidth=a.width,this.editorHeight=e.scrollDOM.clientHeight,c|=8),l){let t=e.docView.measureVisibleLineHeights(this.viewport);if(o.mustRefreshForHeights(t)&&(s=!0),s||o.lineWrapping&&Math.abs(y-this.contentDOMWidth)>o.charWidth){let{lineHeight:n,charWidth:r,textHeight:a}=e.docView.measureTextSize();s=n>0&&o.refresh(i,n,r,a,y/r,t),s&&(e.docView.minWidth=0,c|=8)}p>0&&m>0?u=Math.max(p,m):p<0&&m<0&&(u=Math.min(p,m)),o.heightChanged=!1;for(let n of this.viewports){let i=n.from==this.viewport.from?t:e.docView.measureVisibleLineHeights(n);this.heightMap=(s?ln.empty().applyChanges(this.stateDeco,r.xv.empty,this.heightOracle,[new qe(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(o,0,s,new rn(n.from,i))}o.heightChanged&&(c|=2)}let v=!this.viewportIsAppropriate(this.viewport,u)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return v&&(this.viewport=this.getViewport(u,this.scrollTarget)),this.updateForViewport(),(2&c||v)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(s?[]:this.lineGaps,e)),c|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),c}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let n=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),r=this.heightMap,o=this.heightOracle,{visibleTop:i,visibleBottom:s}=this,a=new xn(r.lineAt(i-1e3*n,sn.ByHeight,o,0,0).from,r.lineAt(s+1e3*(1-n),sn.ByHeight,o,0,0).to);if(t){let{head:e}=t.range;if(e<a.from||e>a.to){let n,i=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),s=r.lineAt(e,sn.ByPos,o,0,0);n="center"==t.y?(s.top+s.bottom)/2-i/2:"start"==t.y||"nearest"==t.y&&e<a.from?s.top:s.bottom-i,a=new xn(r.lineAt(n-500,sn.ByHeight,o,0,0).from,r.lineAt(n+i+500,sn.ByHeight,o,0,0).to)}}return a}mapViewport(e,t){let n=t.mapPos(e.from,-1),r=t.mapPos(e.to,1);return new xn(this.heightMap.lineAt(n,sn.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(r,sn.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},n=0){if(!this.inView)return!0;let{top:r}=this.heightMap.lineAt(e,sn.ByPos,this.heightOracle,0,0),{bottom:o}=this.heightMap.lineAt(t,sn.ByPos,this.heightOracle,0,0),{visibleTop:i,visibleBottom:s}=this;return(0==e||r<=i-Math.max(10,Math.min(-n,250)))&&(t==this.state.doc.length||o>=s+Math.max(10,Math.min(n,250)))&&r>i-2e3&&o<s+2e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let n=[];for(let r of e)t.touchesRange(r.from,r.to)||n.push(new vn(t.mapPos(r.from),t.mapPos(r.to),r.size));return n}ensureLineGaps(e,t){let n=this.heightOracle.lineWrapping,o=n?1e4:2e3,i=o>>1,s=o<<1;if(this.defaultTextDirection!=Ye.LTR&&!n)return[];let a=[],l=(o,s,c,u)=>{if(s-o<i)return;let h=this.state.selection.main,d=[h.from];h.empty||d.push(h.to);for(let e of d)if(e>o&&e<s)return l(o,e-10,c,u),void l(e+10,s,c,u);let f=function(e,t){for(let n of e)if(t(n))return n}(e,(e=>e.from>=c.from&&e.to<=c.to&&Math.abs(e.from-o)<i&&Math.abs(e.to-s)<i&&!d.some((t=>e.from<t&&e.to>t))));if(!f){if(s<c.to&&t&&n&&t.visibleRanges.some((e=>e.from<=s&&e.to>=s))){let e=t.moveToLineBoundary(r.jT.cursor(s),!1,!0).head;e>o&&(s=e)}f=new vn(o,s,this.gapSize(c,o,s,u))}a.push(f)};for(let e of this.viewportLines){if(e.length<s)continue;let t=Sn(e.from,e.to,this.stateDeco);if(t.total<s)continue;let r,i,a=this.scrollTarget?this.scrollTarget.range.head:null;if(n){let n,s,l=o/this.heightOracle.lineLength*this.heightOracle.lineHeight;if(null!=a){let r=Cn(t,a),o=((this.visibleBottom-this.visibleTop)/2+l)/e.height;n=r-o,s=r+o}else n=(this.visibleTop-e.top-l)/e.height,s=(this.visibleBottom-e.top+l)/e.height;r=kn(t,n),i=kn(t,s)}else{let e,n,s=t.total*this.heightOracle.charWidth,l=o*this.heightOracle.charWidth;if(null!=a){let r=Cn(t,a),o=((this.pixelViewport.right-this.pixelViewport.left)/2+l)/s;e=r-o,n=r+o}else e=(this.pixelViewport.left-l)/s,n=(this.pixelViewport.right+l)/s;r=kn(t,e),i=kn(t,n)}r>e.from&&l(e.from,r,e,t),i<e.to&&l(i,e.to,e,t)}return a}gapSize(e,t,n,r){let o=Cn(r,n)-Cn(r,t);return this.heightOracle.lineWrapping?e.height*o:r.total*this.heightOracle.charWidth*o}updateLineGaps(e){vn.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=de.set(e.map((e=>e.draw(this.heightOracle.lineWrapping)))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];r.Xs.spans(e,this.viewport.from,this.viewport.to,{span(e,n){t.push({from:e,to:n})},point(){}},20);let n=t.length!=this.visibleRanges.length||this.visibleRanges.some(((e,n)=>e.from!=t[n].from||e.to!=t[n].to));return this.visibleRanges=t,n?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find((t=>t.from<=e&&t.to>=e))||En(this.heightMap.lineAt(e,sn.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return En(this.heightMap.lineAt(this.scaler.fromDOM(e),sn.ByHeight,this.heightOracle,0,0),this.scaler)}elementAtHeight(e){return En(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class xn{constructor(e,t){this.from=e,this.to=t}}function Sn(e,t,n){let o=[],i=e,s=0;return r.Xs.spans(n,e,t,{span(){},point(e,t){e>i&&(o.push({from:i,to:e}),s+=e-i),i=t}},20),i<t&&(o.push({from:i,to:t}),s+=t-i),{total:s,ranges:o}}function kn({total:e,ranges:t},n){if(n<=0)return t[0].from;if(n>=1)return t[t.length-1].to;let r=Math.floor(e*n);for(let e=0;;e++){let{from:n,to:o}=t[e],i=o-n;if(r<=i)return n+r;r-=i}}function Cn(e,t){let n=0;for(let{from:r,to:o}of e.ranges){if(t<=o){n+=t-r;break}n+=o-r}return n/e.total}const Mn={toDOM:e=>e,fromDOM:e=>e,scale:1};class On{constructor(e,t,n){let r=0,o=0,i=0;this.viewports=n.map((({from:n,to:o})=>{let i=t.lineAt(n,sn.ByPos,e,0,0).top,s=t.lineAt(o,sn.ByPos,e,0,0).bottom;return r+=s-i,{from:n,to:o,top:i,bottom:s,domTop:0,domBottom:0}})),this.scale=(7e6-r)/(t.height-r);for(let e of this.viewports)e.domTop=i+(e.top-o)*this.scale,i=e.domBottom=e.domTop+(e.bottom-e.top),o=e.bottom}toDOM(e){for(let t=0,n=0,r=0;;t++){let o=t<this.viewports.length?this.viewports[t]:null;if(!o||e<o.top)return r+(e-n)*this.scale;if(e<=o.bottom)return o.domTop+(e-o.top);n=o.bottom,r=o.domBottom}}fromDOM(e){for(let t=0,n=0,r=0;;t++){let o=t<this.viewports.length?this.viewports[t]:null;if(!o||e<o.domTop)return n+(e-r)/this.scale;if(e<=o.domBottom)return o.top+(e-o.domTop);n=o.bottom,r=o.domBottom}}}function En(e,t){if(1==t.scale)return e;let n=t.toDOM(e.top),r=t.toDOM(e.bottom);return new on(e.from,e.length,n,r-n,Array.isArray(e.type)?e.type.map((e=>En(e,t))):e.type)}const An=r.r$.define({combine:e=>e.join(" ")}),Tn=r.r$.define({combine:e=>e.indexOf(!0)>-1}),Dn=o.V.newName(),_n=o.V.newName(),Rn=o.V.newName(),Nn={"&light":"."+_n,"&dark":"."+Rn};function Pn(e,t,n){return new o.V(t,{finish:t=>/&/.test(t)?t.replace(/&\w*/,(t=>{if("&"==t)return e;if(!n||!n[t])throw new RangeError(`Unsupported selector: ${t}`);return n[t]})):e+" "+t})}const In=Pn("."+Dn,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused .cm-cursor":{display:"block"},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",left:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:'url(\'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>\')',backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},Nn);class Ln{constructor(e,t,n,o){this.typeOver=o,this.bounds=null,this.text="";let{impreciseHead:i,impreciseAnchor:s}=e.docView;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,n,0))){let t=i||s?[]:function(e){let t=[];if(e.root.activeElement!=e.contentDOM)return t;let{anchorNode:n,anchorOffset:r,focusNode:o,focusOffset:i}=e.observer.selectionRange;return n&&(t.push(new ht(n,r)),o==n&&i==r||t.push(new ht(o,i))),t}(e),n=new ct(t,e.state);n.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=n.text,this.newSel=function(e,t){if(0==e.length)return null;let n=e[0].pos,o=2==e.length?e[1].pos:n;return n>-1&&o>-1?r.jT.single(n+t,o+t):null}(t,this.bounds.from)}else{let t=e.observer.selectionRange,n=i&&i.node==t.focusNode&&i.offset==t.focusOffset||!p(e.contentDOM,t.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(t.focusNode,t.focusOffset),o=s&&s.node==t.anchorNode&&s.offset==t.anchorOffset||!p(e.contentDOM,t.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(t.anchorNode,t.anchorOffset);this.newSel=r.jT.single(o,n)}}}function jn(e,t){let n,{newSel:o}=t,i=e.state.selection.main;if(t.bounds){let{from:o,to:s}=t.bounds,a=i.from,l=null;(8===e.inputState.lastKeyCode&&e.inputState.lastKeyTime>Date.now()-100||G.android&&t.text.length<s-o)&&(a=i.to,l="end");let c=function(e,t,n,r){let o=Math.min(e.length,t.length),i=0;for(;i<o&&e.charCodeAt(i)==t.charCodeAt(i);)i++;if(i==o&&e.length==t.length)return null;let s=e.length,a=t.length;for(;s>0&&a>0&&e.charCodeAt(s-1)==t.charCodeAt(a-1);)s--,a--;return"end"==r&&(n-=s+Math.max(0,i-Math.min(s,a))-i),s<i&&e.length<t.length?(i-=n<=i&&n>=s?i-n:0,a=i+(a-s),s=i):a<i&&(i-=n<=i&&n>=a?i-n:0,s=i+(s-a),a=i),{from:i,toA:s,toB:a}}(e.state.doc.sliceString(o,s,lt),t.text,a-o,l);c&&(G.chrome&&13==e.inputState.lastKeyCode&&c.toB==c.from+2&&t.text.slice(c.from,c.toB)==lt+lt&&c.toB--,n={from:o+c.from,to:o+c.toA,insert:r.xv.of(t.text.slice(c.from,c.toB).split(lt))})}else o&&(!e.hasFocus&&e.state.facet(Ie)||o.main.eq(i))&&(o=null);if(!n&&!o)return!1;if(!n&&t.typeOver&&!i.empty&&o&&o.main.empty?n={from:i.from,to:i.to,insert:e.state.doc.slice(i.from,i.to)}:n&&n.from>=i.from&&n.to<=i.to&&(n.from!=i.from||n.to!=i.to)&&i.to-i.from-(n.to-n.from)<=4?n={from:i.from,to:i.to,insert:e.state.doc.slice(i.from,n.from).append(n.insert).append(e.state.doc.slice(n.to,i.to))}:(G.mac||G.android)&&n&&n.from==n.to&&n.from==i.head-1&&/^\. ?$/.test(n.insert.toString())&&"off"==e.contentDOM.getAttribute("autocorrect")?(o&&2==n.insert.length&&(o=r.jT.single(o.main.anchor-1,o.main.head-1)),n={from:i.from,to:i.to,insert:r.xv.of([" "])}):G.chrome&&n&&n.from==n.to&&n.from==i.head&&"\n "==n.insert.toString()&&e.lineWrapping&&(o&&(o=r.jT.single(o.main.anchor-1,o.main.head-1)),n={from:i.from,to:i.to,insert:r.xv.of([" "])}),n){let t=e.state;if(G.ios&&e.inputState.flushIOSKey(e))return!0;if(G.android&&(n.from==i.from&&n.to==i.to&&1==n.insert.length&&2==n.insert.lines&&T(e.contentDOM,"Enter",13)||n.from==i.from-1&&n.to==i.to&&0==n.insert.length&&T(e.contentDOM,"Backspace",8)||n.from==i.from&&n.to==i.to+1&&0==n.insert.length&&T(e.contentDOM,"Delete",46)))return!0;let s,a=n.insert.toString();if(e.state.facet(Ae).some((t=>t(e,n.from,n.to,a))))return!0;if(e.inputState.composing>=0&&e.inputState.composing++,n.from>=i.from&&n.to<=i.to&&n.to-n.from>=(i.to-i.from)/3&&(!o||o.main.empty&&o.main.from==n.from+n.insert.length)&&e.inputState.composing<0){let r=i.from<n.from?t.sliceDoc(i.from,n.from):"",o=i.to>n.to?t.sliceDoc(n.to,i.to):"";s=t.replaceSelection(e.state.toText(r+n.insert.sliceString(0,void 0,e.state.lineBreak)+o))}else{let a=t.changes(n),l=o&&!t.selection.main.eq(o.main)&&o.main.to<=a.newLength?o.main:void 0;if(t.selection.ranges.length>1&&e.inputState.composing>=0&&n.to<=i.to&&n.to>=i.to-10){let o=e.state.sliceDoc(n.from,n.to),c=pt(e)||e.state.doc.lineAt(i.head),u=i.to-n.to,h=i.to-i.from;s=t.changeByRange((s=>{if(s.from==i.from&&s.to==i.to)return{changes:a,range:l||s.map(a)};let d=s.to-u,f=d-o.length;if(s.to-s.from!=h||e.state.sliceDoc(f,d)!=o||c&&s.to>=c.from&&s.from<=c.to)return{range:s};let p=t.changes({from:f,to:d,insert:n.insert}),m=s.to-i.to;return{changes:p,range:l?r.jT.range(Math.max(0,l.anchor+m),Math.max(0,l.head+m)):s.map(p)}}))}else s={changes:a,selection:l&&t.selection.replaceRange(l)}}let l="input.type";return e.composing&&(l+=".compose",e.inputState.compositionFirstChange&&(l+=".start",e.inputState.compositionFirstChange=!1)),e.dispatch(s,{scrollIntoView:!0,userEvent:l}),!0}if(o&&!o.main.eq(i)){let t=!1,n="select";return e.inputState.lastSelectionTime>Date.now()-50&&("select"==e.inputState.lastSelectionOrigin&&(t=!0),n=e.inputState.lastSelectionOrigin),e.dispatch({selection:o,scrollIntoView:t,userEvent:n}),!0}return!1}const Fn={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Bn=G.ie&&G.ie_version<=11;class zn{constructor(e){this.view=e,this.active=!1,this.selectionRange=new C,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.resizeContent=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver((t=>{for(let e of t)this.queue.push(e);(G.ie&&G.ie_version<=11||G.ios&&e.composing)&&t.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),Bn&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),"function"==typeof ResizeObserver&&(this.resizeScroll=new ResizeObserver((()=>{var e;(null===(e=this.view.docView)||void 0===e?void 0:e.lastUpdate)<Date.now()-75&&this.onResize()})),this.resizeScroll.observe(e.scrollDOM),this.resizeContent=new ResizeObserver((()=>this.view.requestMeasure())),this.resizeContent.observe(e.contentDOM)),this.addWindowListeners(this.win=e.win),this.start(),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver((e=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),e.length>0&&e[e.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))}),{}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver((e=>{e.length>0&&e[e.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))}),{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runScrollHandlers(this.view,e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout((()=>{this.resizeTimeout=-1,this.view.requestMeasure()}),50))}onPrint(){this.view.viewState.printing=!0,this.view.measure(),setTimeout((()=>{this.view.viewState.printing=!1,this.view.requestMeasure()}),500)}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some(((t,n)=>t!=e[n])))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:n}=this,r=this.selectionRange;if(n.state.facet(Ie)?n.root.activeElement!=this.dom:!m(n.dom,r))return;let o=r.anchorNode&&n.docView.nearest(r.anchorNode);o&&o.ignoreEvent(e)?t||(this.selectionChanged=!1):(G.ie&&G.ie_version<=11||G.android&&G.chrome)&&!n.state.selection.main.empty&&r.focusNode&&y(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=G.safari&&11==e.root.nodeType&&function(e){let t=e.activeElement;for(;t&&t.shadowRoot;)t=t.shadowRoot.activeElement;return t}(this.dom.ownerDocument)==this.dom&&function(e){let t=null;function n(e){e.preventDefault(),e.stopImmediatePropagation(),t=e.getTargetRanges()[0]}if(e.contentDOM.addEventListener("beforeinput",n,!0),e.dom.ownerDocument.execCommand("indent"),e.contentDOM.removeEventListener("beforeinput",n,!0),!t)return null;let r=t.startContainer,o=t.startOffset,i=t.endContainer,s=t.endOffset,a=e.docView.domAtPos(e.state.selection.main.anchor);return y(a.node,a.offset,i,s)&&([r,o,i,s]=[i,s,r,o]),{anchorNode:r,anchorOffset:o,focusNode:i,focusOffset:s}}(this.view)||f(e.root);if(!t||this.selectionRange.eq(t))return!1;let n=m(this.dom,t);return n&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&function(e,t){let n=t.focusNode,r=t.focusOffset;if(!n||t.anchorNode!=n||t.anchorOffset!=r)return!1;for(;;)if(r){if(1!=n.nodeType)return!1;let e=n.childNodes[r-1];"false"==e.contentEditable?r--:(n=e,r=w(n))}else{if(n==e)return!0;r=v(n),n=n.parentNode}}(this.dom,t)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(t),n&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let n=this.dom;n;)if(1==n.nodeType)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==n?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(n),n=n.assignedSlot||n.parentNode;else{if(11!=n.nodeType)break;n=n.host}if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let e of this.scrollTargets)e.removeEventListener("scroll",this.onScroll);for(let e of this.scrollTargets=t)e.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,Fn),Bn&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Bn&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var n;if(!this.delayedAndroidKey){let e=()=>{let e=this.delayedAndroidKey;e&&(this.clearDelayedAndroidKey(),!this.flush()&&e.force&&T(this.dom,e.key,e.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(e)}this.delayedAndroidKey&&"Enter"!=e||(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(null===(n=this.delayedAndroidKey)||void 0===n?void 0:n.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame((()=>{this.delayedFlush=-1,this.flush()})))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}processRecords(){let e=this.queue;for(let t of this.observer.takeRecords())e.push(t);e.length&&(this.queue=[]);let t=-1,n=-1,r=!1;for(let o of e){let e=this.readMutation(o);e&&(e.typeOver&&(r=!0),-1==t?({from:t,to:n}=e):(t=Math.min(e.from,t),n=Math.max(e.to,n)))}return{from:t,to:n,typeOver:r}}readChange(){let{from:e,to:t,typeOver:n}=this.processRecords(),r=this.selectionChanged&&m(this.dom,this.selectionRange);return e<0&&!r?null:(e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1,new Ln(this.view,e,t,n))}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return!1;let n=this.view.state,r=jn(this.view,t);return this.view.state==n&&this.view.update([]),r}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty("attributes"==e.type),"attributes"==e.type&&(t.dirty|=4),"childList"==e.type){let n=$n(t,e.previousSibling||e.target.previousSibling,-1),r=$n(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:r?t.posBefore(r):t.posAtEnd,typeOver:!1}}return"characterData"==e.type?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}destroy(){var e,t,n,r;this.stop(),null===(e=this.intersection)||void 0===e||e.disconnect(),null===(t=this.gapIntersection)||void 0===t||t.disconnect(),null===(n=this.resizeScroll)||void 0===n||n.disconnect(),null===(r=this.resizeContent)||void 0===r||r.disconnect();for(let e of this.scrollTargets)e.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey)}}function $n(e,t,n){for(;t;){let r=N.get(t);if(r&&r.parent==e)return r;let o=t.parentNode;t=o!=e.dom?o:n>0?t.nextSibling:t.previousSibling}return null}class Hn{constructor(e={}){this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.style.cssText="position: fixed; top: -10000px",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),this._dispatch=e.dispatch||(e=>this.update([e])),this.dispatch=this.dispatch.bind(this),this._root=e.root||function(e){for(;e;){if(e&&(9==e.nodeType||11==e.nodeType&&e.host))return e;e=e.assignedSlot||e.parentNode}return null}(e.parent)||document,this.viewState=new wn(e.state||r.yy.create(e)),this.plugins=this.state.facet(je).map((e=>new Be(e)));for(let e of this.plugins)e.update(this);this.observer=new zn(this),this.inputState=new Tt(this),this.inputState.ensureHandlers(this,this.plugins),this.docView=new dt(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}dispatch(...e){this._dispatch(1==e.length&&e[0]instanceof r.YW?e[0]:this.state.update(...e))}update(e){if(0!=this.updateState)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t,n=!1,o=!1,i=this.state;for(let t of e){if(t.startState!=i)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");i=t.state}if(this.destroyed)return void(this.viewState.state=i);let s=this.hasFocus,a=0,l=null;e.some((e=>e.annotation(Zt)))?(this.inputState.notifiedFocused=s,a=1):s!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=s,l=Xt(i,s),l||(a=1));let c=this.observer.delayedAndroidKey,u=null;if(c?(this.observer.clearDelayedAndroidKey(),u=this.observer.readChange(),(u&&!this.state.doc.eq(i.doc)||!this.state.selection.eq(i.selection))&&(u=null)):this.observer.clear(),i.facet(r.yy.phrases)!=this.state.facet(r.yy.phrases))return this.setState(i);t=Ke.create(this,i,e),t.flags|=a;let h=this.viewState.scrollTarget;try{this.updateState=2;for(let t of e){if(h&&(h=h.map(t.changes)),t.scrollIntoView){let{main:e}=t.state.selection;h=new Re(e.empty?e:r.jT.cursor(e.head,e.head>e.anchor?-1:1))}for(let e of t.effects)e.is(Ne)&&(h=e.value)}this.viewState.update(t,h),this.bidiCache=Vn.update(this.bidiCache,t.changes),t.empty||(this.updatePlugins(t),this.inputState.update(t)),n=this.docView.update(t),this.state.facet(Ve)!=this.styleModules&&this.mountStyles(),o=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(n,e.some((e=>e.isUserEvent("select.pointer"))))}finally{this.updateState=0}if(t.startState.facet(An)!=t.state.facet(An)&&(this.viewState.mustMeasureContent=!0),(n||o||h||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),!t.empty)for(let e of this.state.facet(Ee))e(t);(l||u)&&Promise.resolve().then((()=>{l&&this.state==l.startState&&this.dispatch(l),u&&!jn(this,u)&&c.force&&T(this.contentDOM,c.key,c.keyCode)}))}setState(e){if(0!=this.updateState)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed)return void(this.viewState.state=e);this.updateState=2;let t=this.hasFocus;try{for(let e of this.plugins)e.destroy(this);this.viewState=new wn(e),this.plugins=e.facet(je).map((e=>new Be(e))),this.pluginMap.clear();for(let e of this.plugins)e.update(this);this.docView=new dt(this),this.inputState.ensureHandlers(this,this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(je),n=e.state.facet(je);if(t!=n){let r=[];for(let o of n){let n=t.indexOf(o);if(n<0)r.push(new Be(o));else{let t=this.plugins[n];t.mustUpdate=e,r.push(t)}}for(let t of this.plugins)t.mustUpdate!=e&&t.destroy(this);this.plugins=r,this.pluginMap.clear(),this.inputState.ensureHandlers(this,this.plugins)}else for(let t of this.plugins)t.mustUpdate=e;for(let e=0;e<this.plugins.length;e++)this.plugins[e].update(this)}measure(e=!0){if(this.destroyed)return;this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,{scrollHeight:n,scrollTop:r,clientHeight:o}=this.scrollDOM,i=r>n-o-4?n:r;try{for(let e=0;;e++){this.updateState=1;let n=this.viewport,r=this.viewState.lineBlockAtHeight(i),o=this.viewState.measure(this);if(!o&&!this.measureRequests.length&&null==this.viewState.scrollTarget)break;if(e>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let s=[];4&o||([this.measureRequests,s]=[s,this.measureRequests]);let a=s.map((e=>{try{return e.read(this)}catch(e){return Pe(this.state,e),Un}})),l=Ke.create(this,this.state,[]),c=!1,u=!1;l.flags|=o,t?t.flags|=o:t=l,this.updateState=2,l.empty||(this.updatePlugins(l),this.inputState.update(l),this.updateAttrs(),c=this.docView.update(l));for(let e=0;e<s.length;e++)if(a[e]!=Un)try{let t=s[e];t.write&&t.write(a[e],this)}catch(e){Pe(this.state,e)}if(this.viewState.editorHeight)if(this.viewState.scrollTarget)this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,u=!0;else{let e=this.viewState.lineBlockAt(r.from).top-r.top;(e>1||e<-1)&&(this.scrollDOM.scrollTop+=e,u=!0)}if(c&&this.docView.updateSelection(!0),this.viewport.from==n.from&&this.viewport.to==n.to&&!u&&0==this.measureRequests.length)break}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let e of this.state.facet(Ee))e(t)}get themeClasses(){return Dn+" "+(this.state.facet(Tn)?Rn:_n)+" "+this.state.facet(An)}updateAttrs(){let e=qn(this,ze,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(Ie)?"true":"false",class:"cm-content",style:`${G.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),qn(this,$e,t);let n=this.observer.ignore((()=>{let n=ce(this.contentDOM,this.contentAttrs,t),r=ce(this.dom,this.editorAttrs,e);return n||r}));return this.editorAttrs=e,this.contentAttrs=t,n}showAnnouncements(e){let t=!0;for(let n of e)for(let e of n.effects)e.is(Hn.announce)&&(t&&(this.announceDOM.textContent=""),t=!1,this.announceDOM.appendChild(document.createElement("div")).textContent=e.value)}mountStyles(){this.styleModules=this.state.facet(Ve),o.V.mount(this.root,this.styleModules.concat(In).reverse())}readMeasured(){if(2==this.updateState)throw new Error("Reading the editor layout isn't allowed during an update");0==this.updateState&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame((()=>this.measure()))),e){if(this.measureRequests.indexOf(e)>-1)return;if(null!=e.key)for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key)return void(this.measureRequests[t]=e);this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(void 0===t||t&&t.spec!=e)&&this.pluginMap.set(e,t=this.plugins.find((t=>t.spec==e))||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,n){return At(this,e,Et(this,e,t,n))}moveByGroup(e,t){return At(this,e,Et(this,e,t,(t=>function(e,t,n){let o=e.state.charCategorizer(t),i=o(n);return e=>{let t=o(e);return i==r.D0.Space&&(i=t),i==t}}(this,e.head,t))))}moveToLineBoundary(e,t,n=!0){return function(e,t,n,o){let i=e.state.doc.lineAt(t.head),s=o&&e.lineWrapping?e.coordsAtPos(t.assoc<0&&t.head>i.from?t.head-1:t.head):null;if(s){let t=e.dom.getBoundingClientRect(),o=e.textDirectionAt(i.from),a=e.posAtCoords({x:n==(o==Ye.LTR)?t.right-1:t.left+1,y:(s.top+s.bottom)/2});if(null!=a)return r.jT.cursor(a,n?-1:1)}let a=ve.find(e.docView,t.head),l=a?n?a.posAtEnd:a.posAtStart:n?i.to:i.from;return r.jT.cursor(l,n?-1:1)}(this,e,t,n)}moveVertically(e,t,n){return At(this,e,function(e,t,n,o){let i=t.head,s=n?1:-1;if(i==(n?e.state.doc.length:0))return r.jT.cursor(i,t.assoc);let a,l=t.goalColumn,c=e.contentDOM.getBoundingClientRect(),u=e.coordsAtPos(i),h=e.documentTop;if(u)null==l&&(l=u.left-c.left),a=s<0?u.top:u.bottom;else{let t=e.viewState.lineBlockAt(i);null==l&&(l=Math.min(c.right-c.left,e.defaultCharacterWidth*(i-t.from))),a=(s<0?t.top:t.bottom)+h}let d=c.left+l,f=null!=o?o:e.defaultLineHeight>>1;for(let n=0;;n+=10){let o=a+(f+n)*s,u=Mt(e,{x:d,y:o},!1,s);if(o<c.top||o>c.bottom||(s<0?u<i:u>i))return r.jT.cursor(u,t.assoc,void 0,l)}}(this,e,t,n))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),Mt(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.docView.coordsAt(e,t);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),o=this.bidiSpans(r);return S(n,o[rt.find(o,e-r.from,-1,t)].dir==Ye.LTR==t>0)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(De)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>Wn)return it(e.length);let t=this.textDirectionAt(e.from);for(let n of this.bidiCache)if(n.from==e.from&&n.dir==t)return n.order;let n=function(e,t){let n=e.length,r=t==Ge?1:2,o=t==Ge?2:1;if(!e||1==r&&!nt.test(e))return it(n);for(let t=0,o=r,s=r;t<n;t++){let n=(i=e.charCodeAt(t))<=247?Ze[i]:1424<=i&&i<=1524?2:1536<=i&&i<=1785?Xe[i-1536]:1774<=i&&i<=2220?4:8192<=i&&i<=8203?256:64336<=i&&i<=65023?4:8204==i?256:1;512==n?n=o:8==n&&4==s&&(n=16),ot[t]=4==n?2:n,7&n&&(s=n),o=n}var i;for(let e=0,t=r,o=r;e<n;e++){let r=ot[e];if(128==r)e<n-1&&t==ot[e+1]&&24&t?r=ot[e]=t:ot[e]=256;else if(64==r){let r=e+1;for(;r<n&&64==ot[r];)r++;let i=e&&8==t||r<n&&8==ot[r]?1==o?1:8:256;for(let t=e;t<r;t++)ot[t]=i;e=r-1}else 8==r&&1==o&&(ot[e]=1);t=r,7&r&&(o=r)}for(let t,i,s,a=0,l=0,c=0;a<n;a++)if(i=et[t=e.charCodeAt(a)])if(i<0){for(let e=l-3;e>=0;e-=3)if(tt[e+1]==-i){let t=tt[e+2],n=2&t?r:4&t?1&t?o:r:0;n&&(ot[a]=ot[tt[e]]=n),l=e;break}}else{if(189==tt.length)break;tt[l++]=a,tt[l++]=t,tt[l++]=c}else if(2==(s=ot[a])||1==s){let e=s==r;c=e?0:1;for(let t=l-3;t>=0;t-=3){let n=tt[t+2];if(2&n)break;if(e)tt[t+2]|=2;else{if(4&n)break;tt[t+2]|=4}}}for(let e=0;e<n;e++)if(256==ot[e]){let t=e+1;for(;t<n&&256==ot[t];)t++;let o=1==(e?ot[e-1]:r),i=o==(1==(t<n?ot[t]:r))?o?1:2:r;for(let n=e;n<t;n++)ot[n]=i;e=t-1}let s=[];if(1==r)for(let e=0;e<n;){let t=e,r=1!=ot[e++];for(;e<n&&r==(1!=ot[e]);)e++;if(r)for(let n=e;n>t;){let e=n,r=2!=ot[--n];for(;n>t&&r==(2!=ot[n-1]);)n--;s.push(new rt(n,e,r?2:1))}else s.push(new rt(t,e,0))}else for(let e=0;e<n;){let t=e,r=2==ot[e++];for(;e<n&&r==(2==ot[e]);)e++;s.push(new rt(t,e,r?1:2))}return s}(e.text,t);return this.bidiCache.push(new Vn(e.from,e.to,t,n)),n}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||G.safari&&(null===(e=this.inputState)||void 0===e?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore((()=>{E(this.contentDOM),this.docView.updateSelection()}))}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((9==e.nodeType?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){return Ne.of(new Re("number"==typeof e?r.jT.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}static domEventHandlers(e){return Fe.define((()=>({})),{eventHandlers:e})}static theme(e,t){let n=o.V.newName(),r=[An.of(n),Ve.of(Pn(`.${n}`,e))];return t&&t.dark&&r.push(Tn.of(!0)),r}static baseTheme(e){return r.Wl.lowest(Ve.of(Pn("."+Dn,e,Nn)))}static findFromDOM(e){var t;let n=e.querySelector(".cm-content"),r=n&&N.get(n)||N.get(e);return(null===(t=null==r?void 0:r.rootView)||void 0===t?void 0:t.view)||null}}Hn.styleModule=Ve,Hn.inputHandler=Ae,Hn.focusChangeEffect=Te,Hn.perLineTextDirection=De,Hn.exceptionSink=Oe,Hn.updateListener=Ee,Hn.editable=Ie,Hn.mouseSelectionStyle=Me,Hn.dragMovesSelection=Ce,Hn.clickAddsSelectionRange=ke,Hn.decorations=He,Hn.atomicRanges=We,Hn.scrollMargins=Ue,Hn.darkTheme=Tn,Hn.contentAttributes=$e,Hn.editorAttributes=ze,Hn.lineWrapping=Hn.contentAttributes.of({class:"cm-lineWrapping"}),Hn.announce=r.Py.define();const Wn=4096,Un={};class Vn{constructor(e,t,n,r){this.from=e,this.to=t,this.dir=n,this.order=r}static update(e,t){if(t.empty)return e;let n=[],r=e.length?e[e.length-1].dir:Ye.LTR;for(let o=Math.max(0,e.length-10);o<e.length;o++){let i=e[o];i.dir!=r||t.touchesRange(i.from,i.to)||n.push(new Vn(t.mapPos(i.from,1),t.mapPos(i.to,-1),i.dir,i.order))}return n}}function qn(e,t,n){for(let r=e.state.facet(t),o=r.length-1;o>=0;o--){let t=r[o],i="function"==typeof t?t(e):t;i&&ae(i,n)}return n}const Kn=G.mac?"mac":G.windows?"win":G.linux?"linux":"key";function Yn(e,t,n){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),!1!==n&&t.shiftKey&&(e="Shift-"+e),e}const Gn=r.Wl.default(Hn.domEventHandlers({keydown:(e,t)=>nr(Zn(t.state),e,t,"editor")})),Jn=r.r$.define({enables:Gn}),Qn=new WeakMap;function Zn(e){let t=e.facet(Jn),n=Qn.get(t);return n||Qn.set(t,n=function(e,t=Kn){let n=Object.create(null),r=Object.create(null),o=(e,t)=>{let n=r[e];if(null==n)r[e]=t;else if(n!=t)throw new Error("Key binding "+e+" is used both as a regular binding and as a multi-stroke prefix")},i=(e,r,i,s)=>{var a,l;let c=n[e]||(n[e]=Object.create(null)),u=r.split(/ (?!$)/).map((e=>function(e,t){const n=e.split(/-(?!$)/);let r,o,i,s,a=n[n.length-1];"Space"==a&&(a=" ");for(let e=0;e<n.length-1;++e){const a=n[e];if(/^(cmd|meta|m)$/i.test(a))s=!0;else if(/^a(lt)?$/i.test(a))r=!0;else if(/^(c|ctrl|control)$/i.test(a))o=!0;else if(/^s(hift)?$/i.test(a))i=!0;else{if(!/^mod$/i.test(a))throw new Error("Unrecognized modifier name: "+a);"mac"==t?s=!0:o=!0}}return r&&(a="Alt-"+a),o&&(a="Ctrl-"+a),s&&(a="Meta-"+a),i&&(a="Shift-"+a),a}(e,t)));for(let t=1;t<u.length;t++){let n=u.slice(0,t).join(" ");o(n,!0),c[n]||(c[n]={preventDefault:!0,run:[t=>{let r=er={view:t,prefix:n,scope:e};return setTimeout((()=>{er==r&&(er=null)}),tr),!0}]})}let h=u.join(" ");o(h,!1);let d=c[h]||(c[h]={preventDefault:!1,run:(null===(l=null===(a=c._any)||void 0===a?void 0:a.run)||void 0===l?void 0:l.slice())||[]});i&&d.run.push(i),s&&(d.preventDefault=!0)};for(let r of e){let e=r.scope?r.scope.split(" "):["editor"];if(r.any)for(let t of e){let e=n[t]||(n[t]=Object.create(null));e._any||(e._any={preventDefault:!1,run:[]});for(let t in e)e[t].run.push(r.any)}let o=r[t]||r.key;if(o)for(let t of e)i(t,o,r.run,r.preventDefault),r.shift&&i(t,"Shift-"+o,r.shift,r.preventDefault)}return n}(t.reduce(((e,t)=>e.concat(t)),[]))),n}function Xn(e,t,n){return nr(Zn(e.state),t,e,n)}let er=null;const tr=4e3;function nr(e,t,n,o){let a=function(e){var t=!(u&&(e.ctrlKey||e.altKey||e.metaKey)||c&&e.shiftKey&&e.key&&1==e.key.length||"Unidentified"==e.key)&&e.key||(e.shiftKey?s:i)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(t),l=(0,r.gm)(a,0),h=(0,r.nZ)(l)==a.length&&" "!=a,d="",f=!1;er&&er.view==n&&er.scope==o&&(d=er.prefix+" ",(f=Rt.indexOf(t.keyCode)<0)&&(er=null));let p,m,g=new Set,y=e=>{if(e){for(let r of e.run)if(!g.has(r)&&(g.add(r),r(n,t)))return!0;e.preventDefault&&(f=!0)}return!1},v=e[o];if(v){if(y(v[d+Yn(a,t,!h)]))return!0;if(h&&(t.altKey||t.metaKey||t.ctrlKey)&&!(G.windows&&t.ctrlKey&&t.altKey)&&(p=i[t.keyCode])&&p!=a){if(y(v[d+Yn(p,t,!0)]))return!0;if(t.shiftKey&&(m=s[t.keyCode])!=a&&m!=p&&y(v[d+Yn(m,t,!1)]))return!0}else if(h&&t.shiftKey&&y(v[d+Yn(a,t,!0)]))return!0;if(y(v._any))return!0}return f}class rr{constructor(e,t,n,r,o){this.className=e,this.left=t,this.top=n,this.width=r,this.height=o}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className==this.className&&(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",null!=this.width&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,n){if(n.empty){let r=e.coordsAtPos(n.head,n.assoc||1);if(!r)return[];let o=or(e);return[new rr(t,r.left-o.left,r.top-o.top,null,r.bottom-r.top)]}return function(e,t,n){if(n.to<=e.viewport.from||n.from>=e.viewport.to)return[];let r=Math.max(n.from,e.viewport.from),o=Math.min(n.to,e.viewport.to),i=e.textDirection==Ye.LTR,s=e.contentDOM,a=s.getBoundingClientRect(),l=or(e),c=s.querySelector(".cm-line"),u=c&&window.getComputedStyle(c),h=a.left+(u?parseInt(u.paddingLeft)+Math.min(0,parseInt(u.textIndent)):0),d=a.right-(u?parseInt(u.paddingRight):0),f=sr(e,r),p=sr(e,o),m=f.type==he.Text?f:null,g=p.type==he.Text?p:null;if(e.lineWrapping&&(m&&(m=ir(e,r,m)),g&&(g=ir(e,o,g))),m&&g&&m.from==g.from)return v(b(n.from,n.to,m));{let t=m?b(n.from,null,m):w(f,!1),r=g?b(null,n.to,g):w(p,!0),o=[];return(m||f).to<(g||p).from-1?o.push(y(h,t.bottom,d,r.top)):t.bottom<r.top&&e.elementAtHeight((t.bottom+r.top)/2).type==he.Text&&(t.bottom=r.top=(t.bottom+r.top)/2),v(t).concat(o).concat(v(r))}function y(e,n,r,o){return new rr(t,e-l.left,n-l.top-.01,r-e,o-n+.01)}function v({top:e,bottom:t,horizontal:n}){let r=[];for(let o=0;o<n.length;o+=2)r.push(y(n[o],e,n[o+1],t));return r}function b(t,n,r){let o=1e9,s=-1e9,a=[];function l(t,n,l,c,u){let f=e.coordsAtPos(t,t==r.to?-2:2),p=e.coordsAtPos(l,l==r.from?2:-2);o=Math.min(f.top,p.top,o),s=Math.max(f.bottom,p.bottom,s),u==Ye.LTR?a.push(i&&n?h:f.left,i&&c?d:p.right):a.push(!i&&c?h:p.left,!i&&n?d:f.right)}let c=null!=t?t:r.from,u=null!=n?n:r.to;for(let r of e.visibleRanges)if(r.to>c&&r.from<u)for(let o=Math.max(r.from,c),i=Math.min(r.to,u);;){let r=e.state.doc.lineAt(o);for(let s of e.bidiSpans(r)){let e=s.from+r.from,a=s.to+r.from;if(e>=i)break;a>o&&l(Math.max(e,o),null==t&&e<=c,Math.min(a,i),null==n&&a>=u,s.dir)}if(o=r.to+1,o>=i)break}return 0==a.length&&l(c,null==t,u,null==n,e.textDirection),{top:o,bottom:s,horizontal:a}}function w(e,t){let n=a.top+(t?e.top:e.bottom);return{top:n,bottom:n,horizontal:[]}}}(e,t,n)}}function or(e){let t=e.scrollDOM.getBoundingClientRect();return{left:(e.textDirection==Ye.LTR?t.left:t.right-e.scrollDOM.clientWidth)-e.scrollDOM.scrollLeft,top:t.top-e.scrollDOM.scrollTop}}function ir(e,t,n){let o=r.jT.cursor(t);return{from:Math.max(n.from,e.moveToLineBoundary(o,!1,!0).from),to:Math.min(n.to,e.moveToLineBoundary(o,!0,!0).from),type:he.Text}}function sr(e,t){let n=e.lineBlockAt(t);if(Array.isArray(n.type))for(let e of n.type)if(e.to>t||e.to==t&&(e.to==n.to||e.type==he.Text))return e;return n}class ar{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(lr)!=e.state.facet(lr)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&e.view.requestMeasure(this.measureReq)}setOrder(e){let t=0,n=e.facet(lr);for(;t<n.length&&n[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}draw(e){if(e.length!=this.drawn.length||e.some(((e,t)=>{return n=e,r=this.drawn[t],!(n.constructor==r.constructor&&n.eq(r));var n,r}))){let t=this.dom.firstChild,n=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[n].constructor&&r.update(t,this.drawn[n])?(t=t.nextSibling,n++):this.dom.insertBefore(r.draw(),t);for(;t;){let e=t.nextSibling;t.remove(),t=e}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const lr=r.r$.define();function cr(e){return[Fe.define((t=>new ar(t,e))),lr.of(e)]}const ur=!G.ios,hr=r.r$.define({combine:e=>(0,r.BO)(e,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})});function dr(e={}){return[hr.of(e),pr,gr,vr,_e.of(!0)]}function fr(e){return e.startState.facet(hr)!=e.state.facet(hr)}const pr=cr({above:!0,markers(e){let{state:t}=e,n=t.facet(hr),o=[];for(let i of t.selection.ranges){let s=i==t.selection.main;if(i.empty?!s||ur:n.drawRangeCursor){let t=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",n=i.empty?i:r.jT.cursor(i.head,i.head>i.anchor?-1:1);for(let r of rr.forRange(e,t,n))o.push(r)}}return o},update(e,t){e.transactions.some((e=>e.selection))&&(t.style.animationName="cm-blink"==t.style.animationName?"cm-blink2":"cm-blink");let n=fr(e);return n&&mr(e.state,t),e.docChanged||e.selectionSet||n},mount(e,t){mr(t.state,e)},class:"cm-cursorLayer"});function mr(e,t){t.style.animationDuration=e.facet(hr).cursorBlinkRate+"ms"}const gr=cr({above:!1,markers:e=>e.state.selection.ranges.map((t=>t.empty?[]:rr.forRange(e,"cm-selectionBackground",t))).reduce(((e,t)=>e.concat(t))),update:(e,t)=>e.docChanged||e.selectionSet||e.viewportChanged||fr(e),class:"cm-selectionLayer"}),yr={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};ur&&(yr[".cm-line"].caretColor="transparent !important");const vr=r.Wl.highest(Hn.theme(yr)),br=r.Py.define({map:(e,t)=>null==e?null:t.mapPos(e)}),wr=r.QQ.define({create:()=>null,update:(e,t)=>(null!=e&&(e=t.changes.mapPos(e)),t.effects.reduce(((e,t)=>t.is(br)?t.value:e),e))}),xr=Fe.fromClass(class{constructor(e){this.view=e,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(e){var t;let n=e.state.field(wr);null==n?null!=this.cursor&&(null===(t=this.cursor)||void 0===t||t.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(e.startState.field(wr)!=n||e.docChanged||e.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let e=this.view.state.field(wr),t=null!=e&&this.view.coordsAtPos(e);if(!t)return null;let n=this.view.scrollDOM.getBoundingClientRect();return{left:t.left-n.left+this.view.scrollDOM.scrollLeft,top:t.top-n.top+this.view.scrollDOM.scrollTop,height:t.bottom-t.top}}drawCursor(e){this.cursor&&(e?(this.cursor.style.left=e.left+"px",this.cursor.style.top=e.top+"px",this.cursor.style.height=e.height+"px"):this.cursor.style.left="-100000px")}destroy(){this.cursor&&this.cursor.remove()}setDropPos(e){this.view.state.field(wr)!=e&&this.view.dispatch({effects:br.of(e)})}},{eventHandlers:{dragover(e){this.setDropPos(this.view.posAtCoords({x:e.clientX,y:e.clientY}))},dragleave(e){e.target!=this.view.contentDOM&&this.view.contentDOM.contains(e.relatedTarget)||this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function Sr(){return[wr,xr]}function kr(e,t,n,r,o){t.lastIndex=0;for(let i,s=e.iterRange(n,r),a=n;!s.next().done;a+=s.value.length)if(!s.lineBreak)for(;i=t.exec(s.value);)o(a+i.index,i)}class Cr{constructor(e){const{regexp:t,decoration:n,decorate:r,boundary:o,maxLength:i=1e3}=e;if(!t.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=t,r)this.addMatch=(e,t,n,o)=>r(o,n,n+e[0].length,e,t);else if("function"==typeof n)this.addMatch=(e,t,r,o)=>{let i=n(e,t,r);i&&o(r,r+e[0].length,i)};else{if(!n)throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.addMatch=(e,t,r,o)=>o(r,r+e[0].length,n)}this.boundary=o,this.maxLength=i}createDeco(e){let t=new r.f_,n=t.add.bind(t);for(let{from:t,to:r}of function(e,t){let n=e.visibleRanges;if(1==n.length&&n[0].from==e.viewport.from&&n[0].to==e.viewport.to)return n;let r=[];for(let{from:o,to:i}of n)o=Math.max(e.state.doc.lineAt(o).from,o-t),i=Math.min(e.state.doc.lineAt(i).to,i+t),r.length&&r[r.length-1].to>=o?r[r.length-1].to=i:r.push({from:o,to:i});return r}(e,this.maxLength))kr(e.state.doc,this.regexp,t,r,((t,r)=>this.addMatch(r,e,t,n)));return t.finish()}updateDeco(e,t){let n=1e9,r=-1;return e.docChanged&&e.changes.iterChanges(((t,o,i,s)=>{s>e.view.viewport.from&&i<e.view.viewport.to&&(n=Math.min(i,n),r=Math.max(s,r))})),e.viewportChanged||r-n>1e3?this.createDeco(e.view):r>-1?this.updateRange(e.view,t.map(e.changes),n,r):t}updateRange(e,t,n,r){for(let o of e.visibleRanges){let i=Math.max(o.from,n),s=Math.min(o.to,r);if(s>i){let n=e.state.doc.lineAt(i),r=n.to<s?e.state.doc.lineAt(s):n,a=Math.max(o.from,n.from),l=Math.min(o.to,r.to);if(this.boundary){for(;i>n.from;i--)if(this.boundary.test(n.text[i-1-n.from])){a=i;break}for(;s<r.to;s++)if(this.boundary.test(r.text[s-r.from])){l=s;break}}let c,u=[],h=(e,t,n)=>u.push(n.range(e,t));if(n==r)for(this.regexp.lastIndex=a-n.from;(c=this.regexp.exec(n.text))&&c.index<l-n.from;)this.addMatch(c,e,c.index+n.from,h);else kr(e.state.doc,this.regexp,a,l,((t,n)=>this.addMatch(n,e,t,h)));t=t.update({filterFrom:a,filterTo:l,filter:(e,t)=>e<a||t>l,add:u})}}return t}}const Mr=null!=/x/.unicode?"gu":"g",Or=new RegExp("[\0-\b\n--\u2028\u2029\ufeff-]",Mr),Er={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let Ar=null;const Tr=r.r$.define({combine(e){let t=(0,r.BO)(e,{render:null,specialChars:Or,addSpecialChars:null});return(t.replaceTabs=!function(){var e;if(null==Ar&&"undefined"!=typeof document&&document.body){let t=document.body.style;Ar=null!=(null!==(e=t.tabSize)&&void 0!==e?e:t.MozTabSize)}return Ar||!1}())&&(t.specialChars=new RegExp("\t|"+t.specialChars.source,Mr)),t.addSpecialChars&&(t.specialChars=new RegExp(t.specialChars.source+"|"+t.addSpecialChars.source,Mr)),t}});function Dr(e={}){return[Tr.of(e),_r||(_r=Fe.fromClass(class{constructor(e){this.view=e,this.decorations=de.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(e.state.facet(Tr)),this.decorations=this.decorator.createDeco(e)}makeDecorator(e){return new Cr({regexp:e.specialChars,decoration:(t,n,o)=>{let{doc:i}=n.state,s=(0,r.gm)(t[0],0);if(9==s){let e=i.lineAt(o),t=n.state.tabSize,s=(0,r.IS)(e.text,t,o-e.from);return de.replace({widget:new Nr((t-s%t)*this.view.defaultCharacterWidth)})}return this.decorationCache[s]||(this.decorationCache[s]=de.replace({widget:new Rr(e,s)}))},boundary:e.replaceTabs?void 0:/[^]/})}update(e){let t=e.state.facet(Tr);e.startState.facet(Tr)!=t?(this.decorator=this.makeDecorator(t),this.decorations=this.decorator.createDeco(e.view)):this.decorations=this.decorator.updateDeco(e,this.decorations)}},{decorations:e=>e.decorations}))]}let _r=null;class Rr extends ue{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=function(e){return e>=32?"•":10==e?"":String.fromCharCode(9216+e)}(this.code),n=e.state.phrase("Control character")+" "+(Er[this.code]||"0x"+this.code.toString(16)),r=this.options.render&&this.options.render(this.code,n,t);if(r)return r;let o=document.createElement("span");return o.textContent=t,o.title=n,o.setAttribute("aria-label",n),o.className="cm-specialChar",o}ignoreEvent(){return!1}}class Nr extends ue{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent="\t",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function Pr(){return Lr}const Ir=de.line({class:"cm-activeLine"}),Lr=Fe.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.docChanged||e.selectionSet)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=-1,n=[];for(let r of e.state.selection.ranges){let o=e.lineBlockAt(r.head);o.from>t&&(n.push(Ir.range(o.from)),t=o.from)}return de.set(n)}},{decorations:e=>e.decorations});class jr extends ue{constructor(e){super(),this.content=e}toDOM(){let e=document.createElement("span");return e.className="cm-placeholder",e.style.pointerEvents="none",e.appendChild("string"==typeof this.content?document.createTextNode(this.content):this.content),"string"==typeof this.content?e.setAttribute("aria-label","placeholder "+this.content):e.setAttribute("aria-hidden","true"),e}ignoreEvent(){return!1}}function Fr(e){return Fe.fromClass(class{constructor(t){this.view=t,this.placeholder=de.set([de.widget({widget:new jr(e),side:1}).range(0)])}get decorations(){return this.view.state.doc.length?de.none:this.placeholder}},{decorations:e=>e.decorations})}const Br=2e3;function zr(e,t){let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1),o=e.state.doc.lineAt(n),i=n-o.from,s=i>Br?-1:i==o.length?function(e,t){let n=e.coordsAtPos(e.viewport.from);return n?Math.round(Math.abs((n.left-t)/e.defaultCharacterWidth)):-1}(e,t.clientX):(0,r.IS)(o.text,e.state.tabSize,n-o.from);return{line:o.number,col:s,off:i}}function $r(e){let t=(null==e?void 0:e.eventFilter)||(e=>e.altKey&&0==e.button);return Hn.mouseSelectionStyle.of(((e,n)=>t(n)?function(e,t){let n=zr(e,t),o=e.state.selection;return n?{update(e){if(e.docChanged){let t=e.changes.mapPos(e.startState.doc.line(n.line).from),r=e.state.doc.lineAt(t);n={line:r.number,col:n.col,off:Math.min(n.off,r.length)},o=o.map(e.changes)}},get(t,i,s){let a=zr(e,t);if(!a)return o;let l=function(e,t,n){let o=Math.min(t.line,n.line),i=Math.max(t.line,n.line),s=[];if(t.off>Br||n.off>Br||t.col<0||n.col<0){let a=Math.min(t.off,n.off),l=Math.max(t.off,n.off);for(let t=o;t<=i;t++){let n=e.doc.line(t);n.length<=l&&s.push(r.jT.range(n.from+a,n.to+l))}}else{let a=Math.min(t.col,n.col),l=Math.max(t.col,n.col);for(let t=o;t<=i;t++){let n=e.doc.line(t),o=(0,r.Gz)(n.text,a,e.tabSize,!0);if(o<0)s.push(r.jT.cursor(n.to));else{let t=(0,r.Gz)(n.text,l,e.tabSize);s.push(r.jT.range(n.from+o,n.from+t))}}}return s}(e.state,n,a);return l.length?s?r.jT.create(l.concat(o.ranges)):r.jT.create(l):o}}:null}(e,n):null))}const Hr={Alt:[18,e=>e.altKey],Control:[17,e=>e.ctrlKey],Shift:[16,e=>e.shiftKey],Meta:[91,e=>e.metaKey]},Wr={style:"cursor: crosshair"};function Ur(e={}){let[t,n]=Hr[e.key||"Alt"],r=Fe.fromClass(class{constructor(e){this.view=e,this.isDown=!1}set(e){this.isDown!=e&&(this.isDown=e,this.view.update([]))}},{eventHandlers:{keydown(e){this.set(e.keyCode==t||n(e))},keyup(e){e.keyCode!=t&&n(e)||this.set(!1)},mousemove(e){this.set(n(e))}}});return[r,Hn.contentAttributes.of((e=>{var t;return(null===(t=e.plugin(r))||void 0===t?void 0:t.isDown)?Wr:null}))]}const Vr="-10000px";class qr{constructor(e,t,n){this.facet=t,this.createTooltipView=n,this.input=e.state.facet(t),this.tooltips=this.input.filter((e=>e)),this.tooltipViews=this.tooltips.map(n)}update(e){var t;let n=e.state.facet(this.facet),r=n.filter((e=>e));if(n===this.input){for(let t of this.tooltipViews)t.update&&t.update(e);return!1}let o=[];for(let t=0;t<r.length;t++){let n=r[t],i=-1;if(n){for(let e=0;e<this.tooltips.length;e++){let t=this.tooltips[e];t&&t.create==n.create&&(i=e)}if(i<0)o[t]=this.createTooltipView(n);else{let n=o[t]=this.tooltipViews[i];n.update&&n.update(e)}}}for(let e of this.tooltipViews)o.indexOf(e)<0&&(e.dom.remove(),null===(t=e.destroy)||void 0===t||t.call(e));return this.input=n,this.tooltips=r,this.tooltipViews=o,!0}}function Kr(e){let{win:t}=e;return{top:0,left:0,bottom:t.innerHeight,right:t.innerWidth}}const Yr=r.r$.define({combine:e=>{var t,n,r;return{position:G.ios?"absolute":(null===(t=e.find((e=>e.position)))||void 0===t?void 0:t.position)||"fixed",parent:(null===(n=e.find((e=>e.parent)))||void 0===n?void 0:n.parent)||null,tooltipSpace:(null===(r=e.find((e=>e.tooltipSpace)))||void 0===r?void 0:r.tooltipSpace)||Kr}}}),Gr=new WeakMap,Jr=Fe.fromClass(class{constructor(e){this.view=e,this.inView=!0,this.lastTransaction=0,this.measureTimeout=-1;let t=e.state.facet(Yr);this.position=t.position,this.parent=t.parent,this.classes=e.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.manager=new qr(e,Xr,(e=>this.createTooltip(e))),this.intersectionObserver="function"==typeof IntersectionObserver?new IntersectionObserver((e=>{Date.now()>this.lastTransaction-50&&e.length>0&&e[e.length-1].intersectionRatio<1&&this.measureSoon()}),{threshold:[1]}):null,this.observeIntersection(),e.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let e of this.manager.tooltipViews)this.intersectionObserver.observe(e.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout((()=>{this.measureTimeout=-1,this.maybeMeasure()}),50))}update(e){e.transactions.length&&(this.lastTransaction=Date.now());let t=this.manager.update(e);t&&this.observeIntersection();let n=t||e.geometryChanged,r=e.state.facet(Yr);if(r.position!=this.position){this.position=r.position;for(let e of this.manager.tooltipViews)e.dom.style.position=this.position;n=!0}if(r.parent!=this.parent){this.parent&&this.container.remove(),this.parent=r.parent,this.createContainer();for(let e of this.manager.tooltipViews)this.container.appendChild(e.dom);n=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);n&&this.maybeMeasure()}createTooltip(e){let t=e.create(this.view);if(t.dom.classList.add("cm-tooltip"),e.arrow&&!t.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let e=document.createElement("div");e.className="cm-tooltip-arrow",t.dom.appendChild(e)}return t.dom.style.position=this.position,t.dom.style.top=Vr,this.container.appendChild(t.dom),t.mount&&t.mount(this.view),t}destroy(){var e,t;this.view.win.removeEventListener("resize",this.measureSoon);for(let t of this.manager.tooltipViews)t.dom.remove(),null===(e=t.destroy)||void 0===e||e.call(t);null===(t=this.intersectionObserver)||void 0===t||t.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let e=this.view.dom.getBoundingClientRect();return{editor:e,parent:this.parent?this.container.getBoundingClientRect():e,pos:this.manager.tooltips.map(((e,t)=>{let n=this.manager.tooltipViews[t];return n.getCoords?n.getCoords(e.pos):this.view.coordsAtPos(e.pos)})),size:this.manager.tooltipViews.map((({dom:e})=>e.getBoundingClientRect())),space:this.view.state.facet(Yr).tooltipSpace(this.view)}}writeMeasure(e){var t;let{editor:n,space:r}=e,o=[];for(let i=0;i<this.manager.tooltips.length;i++){let s=this.manager.tooltips[i],a=this.manager.tooltipViews[i],{dom:l}=a,c=e.pos[i],u=e.size[i];if(!c||c.bottom<=Math.max(n.top,r.top)||c.top>=Math.min(n.bottom,r.bottom)||c.right<Math.max(n.left,r.left)-.1||c.left>Math.min(n.right,r.right)+.1){l.style.top=Vr;continue}let h=s.arrow?a.dom.querySelector(".cm-tooltip-arrow"):null,d=h?7:0,f=u.right-u.left,p=null!==(t=Gr.get(a))&&void 0!==t?t:u.bottom-u.top,m=a.offset||Zr,g=this.view.textDirection==Ye.LTR,y=u.width>r.right-r.left?g?r.left:r.right-u.width:g?Math.min(c.left-(h?14:0)+m.x,r.right-f):Math.max(r.left,c.left-f+(h?14:0)-m.x),v=!!s.above;!s.strictSide&&(v?c.top-(u.bottom-u.top)-m.y<r.top:c.bottom+(u.bottom-u.top)+m.y>r.bottom)&&v==r.bottom-c.bottom>c.top-r.top&&(v=!v);let b=(v?c.top-r.top:r.bottom-c.bottom)-d;if(b<p&&!1!==a.resize){if(b<this.view.defaultLineHeight){l.style.top=Vr;continue}Gr.set(a,p),l.style.height=(p=b)+"px"}else l.style.height&&(l.style.height="");let w=v?c.top-p-d-m.y:c.bottom+d+m.y,x=y+f;if(!0!==a.overlap)for(let e of o)e.left<x&&e.right>y&&e.top<w+p&&e.bottom>w&&(w=v?e.top-p-2-d:e.bottom+d+2);"absolute"==this.position?(l.style.top=w-e.parent.top+"px",l.style.left=y-e.parent.left+"px"):(l.style.top=w+"px",l.style.left=y+"px"),h&&(h.style.left=c.left+(g?m.x:-m.x)-(y+14-7)+"px"),!0!==a.overlap&&o.push({left:y,top:w,right:x,bottom:w+p}),l.classList.toggle("cm-tooltip-above",v),l.classList.toggle("cm-tooltip-below",!v),a.positioned&&a.positioned(e.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let e of this.manager.tooltipViews)e.dom.style.top=Vr}},{eventHandlers:{scroll(){this.maybeMeasure()}}}),Qr=Hn.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),Zr={x:0,y:0},Xr=r.r$.define({enables:[Jr,Qr]}),eo=r.r$.define();class to{constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new qr(e,eo,(e=>this.createHostedView(e)))}static create(e){return new to(e)}createHostedView(e){let t=e.create(this.view);return t.dom.classList.add("cm-tooltip-section"),this.dom.appendChild(t.dom),this.mounted&&t.mount&&t.mount(this.view),t}mount(e){for(let t of this.manager.tooltipViews)t.mount&&t.mount(e);this.mounted=!0}positioned(e){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned(e)}update(e){this.manager.update(e)}}const no=Xr.compute([eo],(e=>{let t=e.facet(eo).filter((e=>e));return 0===t.length?null:{pos:Math.min(...t.map((e=>e.pos))),end:Math.max(...t.filter((e=>null!=e.end)).map((e=>e.end))),create:to.create,above:t[0].above,arrow:t.some((e=>e.arrow))}}));class ro{constructor(e,t,n,r,o){this.view=e,this.source=t,this.field=n,this.setHover=r,this.hoverTime=o,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout((()=>this.startHover()),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active)return;let e=Date.now()-this.lastMove.time;e<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-e):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{lastMove:e}=this,t=this.view.contentDOM.contains(e.target)?this.view.posAtCoords(e):null;if(null==t)return;let n=this.view.coordsAtPos(t);if(null==n||e.y<n.top||e.y>n.bottom||e.x<n.left-this.view.defaultCharacterWidth||e.x>n.right+this.view.defaultCharacterWidth)return;let r=this.view.bidiSpans(this.view.state.doc.lineAt(t)).find((e=>e.from<=t&&e.to>=t)),o=r&&r.dir==Ye.RTL?-1:1,i=this.source(this.view,t,e.x<n.left?-o:o);if(null==i?void 0:i.then){let e=this.pending={pos:t};i.then((t=>{this.pending==e&&(this.pending=null,t&&this.view.dispatch({effects:this.setHover.of(t)}))}),(e=>Pe(this.view.state,e,"hover tooltip")))}else i&&this.view.dispatch({effects:this.setHover.of(i)})}mousemove(e){var t;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let n=this.active;if(n&&!oo(this.lastMove.target)||this.pending){let{pos:r}=n||this.pending,o=null!==(t=null==n?void 0:n.end)&&void 0!==t?t:r;(r==o?this.view.posAtCoords(this.lastMove)==r:function(e,t,n,r,o,i){let s=document.createRange(),a=e.domAtPos(t),l=e.domAtPos(n);s.setEnd(l.node,l.offset),s.setStart(a.node,a.offset);let c=s.getClientRects();s.detach();for(let e=0;e<c.length;e++){let t=c[e];if(Math.max(t.top-o,o-t.bottom,t.left-r,r-t.right)<=6)return!0}return!1}(this.view,r,o,e.clientX,e.clientY))||(this.view.dispatch({effects:this.setHover.of(null)}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1,this.active&&!oo(e.relatedTarget)&&this.view.dispatch({effects:this.setHover.of(null)})}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}function oo(e){for(let t=e;t;t=t.parentNode)if(1==t.nodeType&&t.classList.contains("cm-tooltip"))return!0;return!1}function io(e,t={}){let n=r.Py.define(),o=r.QQ.define({create:()=>null,update(e,o){if(e&&(t.hideOnChange&&(o.docChanged||o.selection)||t.hideOn&&t.hideOn(o,e)))return null;if(e&&o.docChanged){let t=o.changes.mapPos(e.pos,-1,r.gc.TrackDel);if(null==t)return null;let n=Object.assign(Object.create(null),e);n.pos=t,null!=e.end&&(n.end=o.changes.mapPos(e.end)),e=n}for(let t of o.effects)t.is(n)&&(e=t.value),t.is(ao)&&(e=null);return e},provide:e=>eo.from(e)});return[o,Fe.define((r=>new ro(r,e,o,n,t.hoverTime||300))),no]}function so(e,t){let n=e.plugin(Jr);if(!n)return null;let r=n.manager.tooltips.indexOf(t);return r<0?null:n.manager.tooltipViews[r]}const ao=r.Py.define(),lo=r.r$.define({combine(e){let t,n;for(let r of e)t=t||r.topContainer,n=n||r.bottomContainer;return{topContainer:t,bottomContainer:n}}});function co(e,t){let n=e.plugin(uo),r=n?n.specs.indexOf(t):-1;return r>-1?n.panels[r]:null}const uo=Fe.fromClass(class{constructor(e){this.input=e.state.facet(po),this.specs=this.input.filter((e=>e)),this.panels=this.specs.map((t=>t(e)));let t=e.state.facet(lo);this.top=new ho(e,!0,t.topContainer),this.bottom=new ho(e,!1,t.bottomContainer),this.top.sync(this.panels.filter((e=>e.top))),this.bottom.sync(this.panels.filter((e=>!e.top)));for(let e of this.panels)e.dom.classList.add("cm-panel"),e.mount&&e.mount()}update(e){let t=e.state.facet(lo);this.top.container!=t.topContainer&&(this.top.sync([]),this.top=new ho(e.view,!0,t.topContainer)),this.bottom.container!=t.bottomContainer&&(this.bottom.sync([]),this.bottom=new ho(e.view,!1,t.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let n=e.state.facet(po);if(n!=this.input){let t=n.filter((e=>e)),r=[],o=[],i=[],s=[];for(let n of t){let t,a=this.specs.indexOf(n);a<0?(t=n(e.view),s.push(t)):(t=this.panels[a],t.update&&t.update(e)),r.push(t),(t.top?o:i).push(t)}this.specs=t,this.panels=r,this.top.sync(o),this.bottom.sync(i);for(let e of s)e.dom.classList.add("cm-panel"),e.mount&&e.mount()}else for(let t of this.panels)t.update&&t.update(e)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:e=>Hn.scrollMargins.of((t=>{let n=t.plugin(e);return n&&{top:n.top.scrollMargin(),bottom:n.bottom.scrollMargin()}}))});class ho{constructor(e,t,n){this.view=e,this.top=t,this.container=n,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(0==this.panels.length)return void(this.dom&&(this.dom.remove(),this.dom=void 0));if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let e=this.container||this.view.dom;e.insertBefore(this.dom,this.top?e.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=fo(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=fo(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(this.container&&this.classes!=this.view.themeClasses){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function fo(e){let t=e.nextSibling;return e.remove(),t}const po=r.r$.define({enables:uo});class mo extends r.uU{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}mo.prototype.elementClass="",mo.prototype.toDOM=void 0,mo.prototype.mapMode=r.gc.TrackBefore,mo.prototype.startSide=mo.prototype.endSide=-1,mo.prototype.point=!0;const go=r.r$.define(),yo={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>r.Xs.empty,lineMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{}},vo=r.r$.define();function bo(e){return[xo(),vo.of(Object.assign(Object.assign({},yo),e))]}const wo=r.r$.define({combine:e=>e.some((e=>e))});function xo(e){let t=[So];return e&&!1===e.fixed&&t.push(wo.of(!0)),t}const So=Fe.fromClass(class{constructor(e){this.view=e,this.prevViewport=e.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight+"px",this.gutters=e.state.facet(vo).map((t=>new Oo(e,t)));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!e.state.facet(wo),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),e.scrollDOM.insertBefore(this.dom,e.contentDOM)}update(e){if(this.updateGutters(e)){let t=this.prevViewport,n=e.view.viewport,r=Math.min(t.to,n.to)-Math.max(t.from,n.from);this.syncGutters(r<.8*(n.to-n.from))}e.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight+"px"),this.view.state.facet(wo)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=e.view.viewport}syncGutters(e){let t=this.dom.nextSibling;e&&this.dom.remove();let n=r.Xs.iter(this.view.state.facet(go),this.view.viewport.from),o=[],i=this.gutters.map((e=>new Mo(e,this.view.viewport,-this.view.documentPadding.top)));for(let e of this.view.viewportLineBlocks){let t;if(Array.isArray(e.type)){for(let n of e.type)if(n.type==he.Text){t=n;break}}else t=e.type==he.Text?e:void 0;if(t){o.length&&(o=[]),Co(n,o,e.from);for(let e of i)e.line(this.view,t,o)}}for(let e of i)e.finish();e&&this.view.scrollDOM.insertBefore(this.dom,t)}updateGutters(e){let t=e.startState.facet(vo),n=e.state.facet(vo),o=e.docChanged||e.heightChanged||e.viewportChanged||!r.Xs.eq(e.startState.facet(go),e.state.facet(go),e.view.viewport.from,e.view.viewport.to);if(t==n)for(let t of this.gutters)t.update(e)&&(o=!0);else{o=!0;let r=[];for(let o of n){let n=t.indexOf(o);n<0?r.push(new Oo(this.view,o)):(this.gutters[n].update(e),r.push(this.gutters[n]))}for(let e of this.gutters)e.dom.remove(),r.indexOf(e)<0&&e.destroy();for(let e of r)this.dom.appendChild(e.dom);this.gutters=r}return o}destroy(){for(let e of this.gutters)e.destroy();this.dom.remove()}},{provide:e=>Hn.scrollMargins.of((t=>{let n=t.plugin(e);return n&&0!=n.gutters.length&&n.fixed?t.textDirection==Ye.LTR?{left:n.dom.offsetWidth}:{right:n.dom.offsetWidth}:null}))});function ko(e){return Array.isArray(e)?e:[e]}function Co(e,t,n){for(;e.value&&e.from<=n;)e.from==n&&t.push(e.value),e.next()}class Mo{constructor(e,t,n){this.gutter=e,this.height=n,this.i=0,this.cursor=r.Xs.iter(e.markers,t.from)}line(e,t,n){let r=[];Co(this.cursor,r,t.from),n.length&&(r=r.concat(n));let o=this.gutter.config.lineMarker(e,t,r);o&&r.unshift(o);let i=this.gutter;if(0==r.length&&!i.config.renderEmptyElements)return;let s=t.top-this.height;if(this.i==i.elements.length){let n=new Eo(e,t.height,s,r);i.elements.push(n),i.dom.appendChild(n.dom)}else i.elements[this.i].update(e,t.height,s,r);this.height=t.bottom,this.i++}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class Oo{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let n in t.domEventHandlers)this.dom.addEventListener(n,(r=>{let o,i=r.target;if(i!=this.dom&&this.dom.contains(i)){for(;i.parentNode!=this.dom;)i=i.parentNode;let e=i.getBoundingClientRect();o=(e.top+e.bottom)/2}else o=r.clientY;let s=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[n](e,s,r)&&r.preventDefault()}));this.markers=ko(t.markers(e)),t.initialSpacer&&(this.spacer=new Eo(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=ko(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let t=this.config.updateSpacer(this.spacer.markers[0],e);t!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[t])}let n=e.view.viewport;return!r.Xs.eq(this.markers,t,n.from,n.to)||!!this.config.lineMarkerChange&&this.config.lineMarkerChange(e)}destroy(){for(let e of this.elements)e.destroy()}}class Eo{constructor(e,t,n,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,n,r)}update(e,t,n,r){this.height!=t&&(this.dom.style.height=(this.height=t)+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),function(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].compare(t[n]))return!1;return!0}(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let n="cm-gutterElement",r=this.dom.firstChild;for(let o=0,i=0;;){let s=i,a=o<t.length?t[o++]:null,l=!1;if(a){let e=a.elementClass;e&&(n+=" "+e);for(let e=i;e<this.markers.length;e++)if(this.markers[e].compare(a)){s=e,l=!0;break}}else s=this.markers.length;for(;i<s;){let e=this.markers[i++];if(e.toDOM){e.destroy(r);let t=r.nextSibling;r.remove(),r=t}}if(!a)break;a.toDOM&&(l?r=r.nextSibling:this.dom.insertBefore(a.toDOM(e),r)),l&&i++}this.dom.className=n,this.markers=t}destroy(){this.setMarkers(null,[])}}const Ao=r.r$.define(),To=r.r$.define({combine:e=>(0,r.BO)(e,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let n=Object.assign({},e);for(let e in t){let r=n[e],o=t[e];n[e]=r?(e,t,n)=>r(e,t,n)||o(e,t,n):o}return n}})});class Do extends mo{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function _o(e,t){return e.state.facet(To).formatNumber(t,e.state)}const Ro=vo.compute([To],(e=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers:e=>e.state.facet(Ao),lineMarker:(e,t,n)=>n.some((e=>e.toDOM))?null:new Do(_o(e,e.state.doc.lineAt(t.from).number)),lineMarkerChange:e=>e.startState.facet(To)!=e.state.facet(To),initialSpacer:e=>new Do(_o(e,Po(e.state.doc.lines))),updateSpacer(e,t){let n=_o(t.view,Po(t.view.state.doc.lines));return n==e.number?e:new Do(n)},domEventHandlers:e.facet(To).domEventHandlers})));function No(e={}){return[To.of(e),xo(),Ro]}function Po(e){let t=9;for(;t<e;)t=10*t+9;return t}const Io=new class extends mo{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},Lo=go.compute(["selection"],(e=>{let t=[],n=-1;for(let r of e.selection.ranges){let o=e.doc.lineAt(r.head).from;o>n&&(n=o,t.push(Io.range(o)))}return r.Xs.of(t)}));function jo(){return Lo}},5761:(e,t,n)=>{"use strict";n.d(t,{j:()=>s});var r=n(3989),o=n(2161);class i extends r.l{constructor(){super(),this.setup=e=>{if(!o.sk&&window.addEventListener){const t=()=>e();return window.addEventListener("visibilitychange",t,!1),window.addEventListener("focus",t,!1),()=>{window.removeEventListener("visibilitychange",t),window.removeEventListener("focus",t)}}}}onSubscribe(){this.cleanup||this.setEventListener(this.setup)}onUnsubscribe(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)}setEventListener(e){var t;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((e=>{"boolean"==typeof e?this.setFocused(e):this.onFocus()}))}setFocused(e){this.focused=e,e&&this.onFocus()}onFocus(){this.listeners.forEach((e=>{e()}))}isFocused(){return"boolean"==typeof this.focused?this.focused:"undefined"==typeof document||[void 0,"visible","prerender"].includes(document.visibilityState)}}const s=new i},9499:(e,t,n)=>{"use strict";function r(){return{onFetch:e=>{e.fetchFn=()=>{var t,n,r,s,a,l;const c=null==(t=e.fetchOptions)||null==(n=t.meta)?void 0:n.refetchPage,u=null==(r=e.fetchOptions)||null==(s=r.meta)?void 0:s.fetchMore,h=null==u?void 0:u.pageParam,d="forward"===(null==u?void 0:u.direction),f="backward"===(null==u?void 0:u.direction),p=(null==(a=e.state.data)?void 0:a.pages)||[],m=(null==(l=e.state.data)?void 0:l.pageParams)||[];let g=m,y=!1;const v=e.options.queryFn||(()=>Promise.reject("Missing queryFn")),b=(e,t,n,r)=>(g=r?[t,...g]:[...g,t],r?[n,...e]:[...e,n]),w=(t,n,r,o)=>{if(y)return Promise.reject("Cancelled");if(void 0===r&&!n&&t.length)return Promise.resolve(t);const i={queryKey:e.queryKey,pageParam:r,meta:e.options.meta};var s;s=i,Object.defineProperty(s,"signal",{enumerable:!0,get:()=>{var t,n;return null!=(t=e.signal)&&t.aborted?y=!0:null==(n=e.signal)||n.addEventListener("abort",(()=>{y=!0})),e.signal}});const a=v(i);return Promise.resolve(a).then((e=>b(t,r,e,o)))};let x;if(p.length)if(d){const t=void 0!==h,n=t?h:o(e.options,p);x=w(p,t,n)}else if(f){const t=void 0!==h,n=t?h:i(e.options,p);x=w(p,t,n,!0)}else{g=[];const t=void 0===e.options.getNextPageParam;x=c&&p[0]&&!c(p[0],0,p)?Promise.resolve(b([],m[0],p[0])):w([],t,m[0]);for(let n=1;n<p.length;n++)x=x.then((r=>{if(!c||!p[n]||c(p[n],n,p)){const i=t?m[n]:o(e.options,r);return w(r,t,i)}return Promise.resolve(b(r,m[n],p[n]))}))}else x=w([]);return x.then((e=>({pages:e,pageParams:g})))}}}}function o(e,t){return null==e.getNextPageParam?void 0:e.getNextPageParam(t[t.length-1],t)}function i(e,t){return null==e.getPreviousPageParam?void 0:e.getPreviousPageParam(t[0],t)}function s(e,t){if(e.getNextPageParam&&Array.isArray(t)){const n=o(e,t);return null!=n&&!1!==n}}function a(e,t){if(e.getPreviousPageParam&&Array.isArray(t)){const n=i(e,t);return null!=n&&!1!==n}}n.d(t,{Gm:()=>r,Qy:()=>s,ZF:()=>a})},819:(e,t,n)=>{"use strict";n.d(t,{_:()=>r});const r=console},9886:(e,t,n)=>{"use strict";n.d(t,{R:()=>l,m:()=>a});var r=n(819),o=n(81),i=n(9643),s=n(2379);class a extends i.F{constructor(e){super(),this.defaultOptions=e.defaultOptions,this.mutationId=e.mutationId,this.mutationCache=e.mutationCache,this.logger=e.logger||r._,this.observers=[],this.state=e.state||{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0},this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options={...this.defaultOptions,...e},this.updateCacheTime(this.options.cacheTime)}get meta(){return this.options.meta}setState(e){this.dispatch({type:"setState",state:e})}addObserver(e){-1===this.observers.indexOf(e)&&(this.observers.push(e),this.clearGcTimeout(),this.mutationCache.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.observers=this.observers.filter((t=>t!==e)),this.scheduleGc(),this.mutationCache.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.observers.length||("loading"===this.state.status?this.scheduleGc():this.mutationCache.remove(this))}continue(){var e,t;return null!=(e=null==(t=this.retryer)?void 0:t.continue())?e:this.execute()}async execute(){const e=()=>{var e;return this.retryer=(0,s.Mz)({fn:()=>this.options.mutationFn?this.options.mutationFn(this.state.variables):Promise.reject("No mutationFn found"),onFail:(e,t)=>{this.dispatch({type:"failed",failureCount:e,error:t})},onPause:()=>{this.dispatch({type:"pause"})},onContinue:()=>{this.dispatch({type:"continue"})},retry:null!=(e=this.options.retry)?e:0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode}),this.retryer.promise},t="loading"===this.state.status;try{var n,r,o,i,a,l,c,u;if(!t){var h,d,f,p;this.dispatch({type:"loading",variables:this.options.variables}),await(null==(h=(d=this.mutationCache.config).onMutate)?void 0:h.call(d,this.state.variables,this));const e=await(null==(f=(p=this.options).onMutate)?void 0:f.call(p,this.state.variables));e!==this.state.context&&this.dispatch({type:"loading",context:e,variables:this.state.variables})}const s=await e();return await(null==(n=(r=this.mutationCache.config).onSuccess)?void 0:n.call(r,s,this.state.variables,this.state.context,this)),await(null==(o=(i=this.options).onSuccess)?void 0:o.call(i,s,this.state.variables,this.state.context)),await(null==(a=(l=this.mutationCache.config).onSettled)?void 0:a.call(l,s,null,this.state.variables,this.state.context,this)),await(null==(c=(u=this.options).onSettled)?void 0:c.call(u,s,null,this.state.variables,this.state.context)),this.dispatch({type:"success",data:s}),s}catch(e){try{var m,g,y,v,b,w,x,S;throw await(null==(m=(g=this.mutationCache.config).onError)?void 0:m.call(g,e,this.state.variables,this.state.context,this)),await(null==(y=(v=this.options).onError)?void 0:y.call(v,e,this.state.variables,this.state.context)),await(null==(b=(w=this.mutationCache.config).onSettled)?void 0:b.call(w,void 0,e,this.state.variables,this.state.context,this)),await(null==(x=(S=this.options).onSettled)?void 0:x.call(S,void 0,e,this.state.variables,this.state.context)),e}finally{this.dispatch({type:"error",error:e})}}}dispatch(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"loading":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:!(0,s.Kw)(this.options.networkMode),status:"loading",variables:e.variables};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"};case"setState":return{...t,...e.state}}})(this.state),o.V.batch((()=>{this.observers.forEach((t=>{t.onMutationUpdate(e)})),this.mutationCache.notify({mutation:this,type:"updated",action:e})}))}}function l(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0}}},81:(e,t,n)=>{"use strict";n.d(t,{V:()=>o});var r=n(2161);const o=function(){let e=[],t=0,n=e=>{e()},o=e=>{e()};const i=o=>{t?e.push(o):(0,r.A4)((()=>{n(o)}))};return{batch:i=>{let s;t++;try{s=i()}finally{t--,t||(()=>{const t=e;e=[],t.length&&(0,r.A4)((()=>{o((()=>{t.forEach((e=>{n(e)}))}))}))})()}return s},batchCalls:e=>(...t)=>{i((()=>{e(...t)}))},schedule:i,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{o=e}}}()},6474:(e,t,n)=>{"use strict";n.d(t,{N:()=>s});var r=n(3989),o=n(2161);class i extends r.l{constructor(){super(),this.setup=e=>{if(!o.sk&&window.addEventListener){const t=()=>e();return window.addEventListener("online",t,!1),window.addEventListener("offline",t,!1),()=>{window.removeEventListener("online",t),window.removeEventListener("offline",t)}}}}onSubscribe(){this.cleanup||this.setEventListener(this.setup)}onUnsubscribe(){var e;this.hasListeners()||(null==(e=this.cleanup)||e.call(this),this.cleanup=void 0)}setEventListener(e){var t;this.setup=e,null==(t=this.cleanup)||t.call(this),this.cleanup=e((e=>{"boolean"==typeof e?this.setOnline(e):this.onOnline()}))}setOnline(e){this.online=e,e&&this.onOnline()}onOnline(){this.listeners.forEach((e=>{e()}))}isOnline(){return"boolean"==typeof this.online?this.online:"undefined"==typeof navigator||void 0===navigator.onLine||navigator.onLine}}const s=new i},948:(e,t,n)=>{"use strict";n.d(t,{S:()=>g});var r=n(2161),o=n(819),i=n(81),s=n(2379),a=n(9643);class l extends a.F{constructor(e){super(),this.abortSignalConsumed=!1,this.defaultOptions=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.cache=e.cache,this.logger=e.logger||o._,this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.initialState=e.state||function(e){const t="function"==typeof e.initialData?e.initialData():e.initialData,n=void 0!==t,r=n?"function"==typeof e.initialDataUpdatedAt?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?null!=r?r:Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"loading",fetchStatus:"idle"}}(this.options),this.state=this.initialState,this.scheduleGc()}get meta(){return this.options.meta}setOptions(e){this.options={...this.defaultOptions,...e},this.updateCacheTime(this.options.cacheTime)}optionalRemove(){this.observers.length||"idle"!==this.state.fetchStatus||this.cache.remove(this)}setData(e,t){const n=(0,r.oE)(this.state.data,e,this.options);return this.dispatch({data:n,type:"success",dataUpdatedAt:null==t?void 0:t.updatedAt,manual:null==t?void 0:t.manual}),n}setState(e,t){this.dispatch({type:"setState",state:e,setStateOptions:t})}cancel(e){var t;const n=this.promise;return null==(t=this.retryer)||t.cancel(e),n?n.then(r.ZT).catch(r.ZT):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}reset(){this.destroy(),this.setState(this.initialState)}isActive(){return this.observers.some((e=>!1!==e.options.enabled))}isDisabled(){return this.getObserversCount()>0&&!this.isActive()}isStale(){return this.state.isInvalidated||!this.state.dataUpdatedAt||this.observers.some((e=>e.getCurrentResult().isStale))}isStaleByTime(e=0){return this.state.isInvalidated||!this.state.dataUpdatedAt||!(0,r.Kp)(this.state.dataUpdatedAt,e)}onFocus(){var e;const t=this.observers.find((e=>e.shouldFetchOnWindowFocus()));t&&t.refetch({cancelRefetch:!1}),null==(e=this.retryer)||e.continue()}onOnline(){var e;const t=this.observers.find((e=>e.shouldFetchOnReconnect()));t&&t.refetch({cancelRefetch:!1}),null==(e=this.retryer)||e.continue()}addObserver(e){-1===this.observers.indexOf(e)&&(this.observers.push(e),this.clearGcTimeout(),this.cache.notify({type:"observerAdded",query:this,observer:e}))}removeObserver(e){-1!==this.observers.indexOf(e)&&(this.observers=this.observers.filter((t=>t!==e)),this.observers.length||(this.retryer&&(this.abortSignalConsumed?this.retryer.cancel({revert:!0}):this.retryer.cancelRetry()),this.scheduleGc()),this.cache.notify({type:"observerRemoved",query:this,observer:e}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||this.dispatch({type:"invalidate"})}fetch(e,t){var n,o;if("idle"!==this.state.fetchStatus)if(this.state.dataUpdatedAt&&null!=t&&t.cancelRefetch)this.cancel({silent:!0});else if(this.promise){var i;return null==(i=this.retryer)||i.continueRetry(),this.promise}if(e&&this.setOptions(e),!this.options.queryFn){const e=this.observers.find((e=>e.options.queryFn));e&&this.setOptions(e.options)}Array.isArray(this.options.queryKey);const a=(0,r.G9)(),l={queryKey:this.queryKey,pageParam:void 0,meta:this.meta},c=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>{if(a)return this.abortSignalConsumed=!0,a.signal}})};c(l);const u={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:()=>this.options.queryFn?(this.abortSignalConsumed=!1,this.options.queryFn(l)):Promise.reject("Missing queryFn")};var h;c(u),null==(n=this.options.behavior)||n.onFetch(u),this.revertState=this.state,("idle"===this.state.fetchStatus||this.state.fetchMeta!==(null==(o=u.fetchOptions)?void 0:o.meta))&&this.dispatch({type:"fetch",meta:null==(h=u.fetchOptions)?void 0:h.meta});const d=e=>{var t,n,r,o;(0,s.DV)(e)&&e.silent||this.dispatch({type:"error",error:e}),(0,s.DV)(e)||(null==(t=(n=this.cache.config).onError)||t.call(n,e,this),null==(r=(o=this.cache.config).onSettled)||r.call(o,this.state.data,e,this)),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1};return this.retryer=(0,s.Mz)({fn:u.fetchFn,abort:null==a?void 0:a.abort.bind(a),onSuccess:e=>{var t,n,r,o;void 0!==e?(this.setData(e),null==(t=(n=this.cache.config).onSuccess)||t.call(n,e,this),null==(r=(o=this.cache.config).onSettled)||r.call(o,e,this.state.error,this),this.isFetchingOptimistic||this.scheduleGc(),this.isFetchingOptimistic=!1):d(new Error("undefined"))},onError:d,onFail:(e,t)=>{this.dispatch({type:"failed",failureCount:e,error:t})},onPause:()=>{this.dispatch({type:"pause"})},onContinue:()=>{this.dispatch({type:"continue"})},retry:u.options.retry,retryDelay:u.options.retryDelay,networkMode:u.options.networkMode}),this.promise=this.retryer.promise,this.promise}dispatch(e){this.state=(t=>{var n,r;switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null!=(n=e.meta)?n:null,fetchStatus:(0,s.Kw)(this.options.networkMode)?"fetching":"paused",...!t.dataUpdatedAt&&{error:null,status:"loading"}};case"success":return{...t,data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:null!=(r=e.dataUpdatedAt)?r:Date.now(),error:null,isInvalidated:!1,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const o=e.error;return(0,s.DV)(o)&&o.revert&&this.revertState?{...this.revertState}:{...t,error:o,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:o,fetchStatus:"idle",status:"error"};case"invalidate":return{...t,isInvalidated:!0};case"setState":return{...t,...e.state}}})(this.state),i.V.batch((()=>{this.observers.forEach((t=>{t.onQueryUpdate(e)})),this.cache.notify({query:this,type:"updated",action:e})}))}}var c=n(3989);class u extends c.l{constructor(e){super(),this.config=e||{},this.queries=[],this.queriesMap={}}build(e,t,n){var o;const i=t.queryKey,s=null!=(o=t.queryHash)?o:(0,r.Rm)(i,t);let a=this.get(s);return a||(a=new l({cache:this,logger:e.getLogger(),queryKey:i,queryHash:s,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(i)}),this.add(a)),a}add(e){this.queriesMap[e.queryHash]||(this.queriesMap[e.queryHash]=e,this.queries.push(e),this.notify({type:"added",query:e}))}remove(e){const t=this.queriesMap[e.queryHash];t&&(e.destroy(),this.queries=this.queries.filter((t=>t!==e)),t===e&&delete this.queriesMap[e.queryHash],this.notify({type:"removed",query:e}))}clear(){i.V.batch((()=>{this.queries.forEach((e=>{this.remove(e)}))}))}get(e){return this.queriesMap[e]}getAll(){return this.queries}find(e,t){const[n]=(0,r.I6)(e,t);return void 0===n.exact&&(n.exact=!0),this.queries.find((e=>(0,r._x)(n,e)))}findAll(e,t){const[n]=(0,r.I6)(e,t);return Object.keys(n).length>0?this.queries.filter((e=>(0,r._x)(n,e))):this.queries}notify(e){i.V.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}onFocus(){i.V.batch((()=>{this.queries.forEach((e=>{e.onFocus()}))}))}onOnline(){i.V.batch((()=>{this.queries.forEach((e=>{e.onOnline()}))}))}}var h=n(9886);class d extends c.l{constructor(e){super(),this.config=e||{},this.mutations=[],this.mutationId=0}build(e,t,n){const r=new h.m({mutationCache:this,logger:e.getLogger(),mutationId:++this.mutationId,options:e.defaultMutationOptions(t),state:n,defaultOptions:t.mutationKey?e.getMutationDefaults(t.mutationKey):void 0});return this.add(r),r}add(e){this.mutations.push(e),this.notify({type:"added",mutation:e})}remove(e){this.mutations=this.mutations.filter((t=>t!==e)),this.notify({type:"removed",mutation:e})}clear(){i.V.batch((()=>{this.mutations.forEach((e=>{this.remove(e)}))}))}getAll(){return this.mutations}find(e){return void 0===e.exact&&(e.exact=!0),this.mutations.find((t=>(0,r.X7)(e,t)))}findAll(e){return this.mutations.filter((t=>(0,r.X7)(e,t)))}notify(e){i.V.batch((()=>{this.listeners.forEach((t=>{t(e)}))}))}resumePausedMutations(){var e;return this.resuming=(null!=(e=this.resuming)?e:Promise.resolve()).then((()=>{const e=this.mutations.filter((e=>e.state.isPaused));return i.V.batch((()=>e.reduce(((e,t)=>e.then((()=>t.continue().catch(r.ZT)))),Promise.resolve())))})).then((()=>{this.resuming=void 0})),this.resuming}}var f=n(5761),p=n(6474),m=n(9499);class g{constructor(e={}){this.queryCache=e.queryCache||new u,this.mutationCache=e.mutationCache||new d,this.logger=e.logger||o._,this.defaultOptions=e.defaultOptions||{},this.queryDefaults=[],this.mutationDefaults=[],this.mountCount=0}mount(){this.mountCount++,1===this.mountCount&&(this.unsubscribeFocus=f.j.subscribe((()=>{f.j.isFocused()&&(this.resumePausedMutations(),this.queryCache.onFocus())})),this.unsubscribeOnline=p.N.subscribe((()=>{p.N.isOnline()&&(this.resumePausedMutations(),this.queryCache.onOnline())})))}unmount(){var e,t;this.mountCount--,0===this.mountCount&&(null==(e=this.unsubscribeFocus)||e.call(this),this.unsubscribeFocus=void 0,null==(t=this.unsubscribeOnline)||t.call(this),this.unsubscribeOnline=void 0)}isFetching(e,t){const[n]=(0,r.I6)(e,t);return n.fetchStatus="fetching",this.queryCache.findAll(n).length}isMutating(e){return this.mutationCache.findAll({...e,fetching:!0}).length}getQueryData(e,t){var n;return null==(n=this.queryCache.find(e,t))?void 0:n.state.data}ensureQueryData(e,t,n){const o=(0,r._v)(e,t,n),i=this.getQueryData(o.queryKey);return i?Promise.resolve(i):this.fetchQuery(o)}getQueriesData(e){return this.getQueryCache().findAll(e).map((({queryKey:e,state:t})=>[e,t.data]))}setQueryData(e,t,n){const o=this.queryCache.find(e),i=null==o?void 0:o.state.data,s=(0,r.SE)(t,i);if(void 0===s)return;const a=(0,r._v)(e),l=this.defaultQueryOptions(a);return this.queryCache.build(this,l).setData(s,{...n,manual:!0})}setQueriesData(e,t,n){return i.V.batch((()=>this.getQueryCache().findAll(e).map((({queryKey:e})=>[e,this.setQueryData(e,t,n)]))))}getQueryState(e,t){var n;return null==(n=this.queryCache.find(e,t))?void 0:n.state}removeQueries(e,t){const[n]=(0,r.I6)(e,t),o=this.queryCache;i.V.batch((()=>{o.findAll(n).forEach((e=>{o.remove(e)}))}))}resetQueries(e,t,n){const[o,s]=(0,r.I6)(e,t,n),a=this.queryCache,l={type:"active",...o};return i.V.batch((()=>(a.findAll(o).forEach((e=>{e.reset()})),this.refetchQueries(l,s))))}cancelQueries(e,t,n){const[o,s={}]=(0,r.I6)(e,t,n);void 0===s.revert&&(s.revert=!0);const a=i.V.batch((()=>this.queryCache.findAll(o).map((e=>e.cancel(s)))));return Promise.all(a).then(r.ZT).catch(r.ZT)}invalidateQueries(e,t,n){const[o,s]=(0,r.I6)(e,t,n);return i.V.batch((()=>{var e,t;if(this.queryCache.findAll(o).forEach((e=>{e.invalidate()})),"none"===o.refetchType)return Promise.resolve();const n={...o,type:null!=(e=null!=(t=o.refetchType)?t:o.type)?e:"active"};return this.refetchQueries(n,s)}))}refetchQueries(e,t,n){const[o,s]=(0,r.I6)(e,t,n),a=i.V.batch((()=>this.queryCache.findAll(o).filter((e=>!e.isDisabled())).map((e=>{var t;return e.fetch(void 0,{...s,cancelRefetch:null==(t=null==s?void 0:s.cancelRefetch)||t,meta:{refetchPage:o.refetchPage}})}))));let l=Promise.all(a).then(r.ZT);return null!=s&&s.throwOnError||(l=l.catch(r.ZT)),l}fetchQuery(e,t,n){const o=(0,r._v)(e,t,n),i=this.defaultQueryOptions(o);void 0===i.retry&&(i.retry=!1);const s=this.queryCache.build(this,i);return s.isStaleByTime(i.staleTime)?s.fetch(i):Promise.resolve(s.state.data)}prefetchQuery(e,t,n){return this.fetchQuery(e,t,n).then(r.ZT).catch(r.ZT)}fetchInfiniteQuery(e,t,n){const o=(0,r._v)(e,t,n);return o.behavior=(0,m.Gm)(),this.fetchQuery(o)}prefetchInfiniteQuery(e,t,n){return this.fetchInfiniteQuery(e,t,n).then(r.ZT).catch(r.ZT)}resumePausedMutations(){return this.mutationCache.resumePausedMutations()}getQueryCache(){return this.queryCache}getMutationCache(){return this.mutationCache}getLogger(){return this.logger}getDefaultOptions(){return this.defaultOptions}setDefaultOptions(e){this.defaultOptions=e}setQueryDefaults(e,t){const n=this.queryDefaults.find((t=>(0,r.yF)(e)===(0,r.yF)(t.queryKey)));n?n.defaultOptions=t:this.queryDefaults.push({queryKey:e,defaultOptions:t})}getQueryDefaults(e){if(!e)return;const t=this.queryDefaults.find((t=>(0,r.to)(e,t.queryKey)));return null==t?void 0:t.defaultOptions}setMutationDefaults(e,t){const n=this.mutationDefaults.find((t=>(0,r.yF)(e)===(0,r.yF)(t.mutationKey)));n?n.defaultOptions=t:this.mutationDefaults.push({mutationKey:e,defaultOptions:t})}getMutationDefaults(e){if(!e)return;const t=this.mutationDefaults.find((t=>(0,r.to)(e,t.mutationKey)));return null==t?void 0:t.defaultOptions}defaultQueryOptions(e){if(null!=e&&e._defaulted)return e;const t={...this.defaultOptions.queries,...this.getQueryDefaults(null==e?void 0:e.queryKey),...e,_defaulted:!0};return!t.queryHash&&t.queryKey&&(t.queryHash=(0,r.Rm)(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.useErrorBoundary&&(t.useErrorBoundary=!!t.suspense),t}defaultMutationOptions(e){return null!=e&&e._defaulted?e:{...this.defaultOptions.mutations,...this.getMutationDefaults(null==e?void 0:e.mutationKey),...e,_defaulted:!0}}clear(){this.queryCache.clear(),this.mutationCache.clear()}}},2924:(e,t,n)=>{"use strict";n.d(t,{z:()=>l});var r=n(2161),o=n(81),i=n(5761),s=n(3989),a=n(2379);class l extends s.l{constructor(e,t){super(),this.client=e,this.options=t,this.trackedProps=new Set,this.selectError=null,this.bindMethods(),this.setOptions(t)}bindMethods(){this.remove=this.remove.bind(this),this.refetch=this.refetch.bind(this)}onSubscribe(){1===this.listeners.length&&(this.currentQuery.addObserver(this),c(this.currentQuery,this.options)&&this.executeFetch(),this.updateTimers())}onUnsubscribe(){this.listeners.length||this.destroy()}shouldFetchOnReconnect(){return u(this.currentQuery,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return u(this.currentQuery,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=[],this.clearStaleTimeout(),this.clearRefetchInterval(),this.currentQuery.removeObserver(this)}setOptions(e,t){const n=this.options,o=this.currentQuery;if(this.options=this.client.defaultQueryOptions(e),(0,r.VS)(n,this.options)||this.client.getQueryCache().notify({type:"observerOptionsUpdated",query:this.currentQuery,observer:this}),void 0!==this.options.enabled&&"boolean"!=typeof this.options.enabled)throw new Error("Expected enabled to be a boolean");this.options.queryKey||(this.options.queryKey=n.queryKey),this.updateQuery();const i=this.hasListeners();i&&h(this.currentQuery,o,this.options,n)&&this.executeFetch(),this.updateResult(t),!i||this.currentQuery===o&&this.options.enabled===n.enabled&&this.options.staleTime===n.staleTime||this.updateStaleTimeout();const s=this.computeRefetchInterval();!i||this.currentQuery===o&&this.options.enabled===n.enabled&&s===this.currentRefetchInterval||this.updateRefetchInterval(s)}getOptimisticResult(e){const t=this.client.getQueryCache().build(this.client,e);return this.createResult(t,e)}getCurrentResult(){return this.currentResult}trackResult(e){const t={};return Object.keys(e).forEach((n=>{Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:()=>(this.trackedProps.add(n),e[n])})})),t}getCurrentQuery(){return this.currentQuery}remove(){this.client.getQueryCache().remove(this.currentQuery)}refetch({refetchPage:e,...t}={}){return this.fetch({...t,meta:{refetchPage:e}})}fetchOptimistic(e){const t=this.client.defaultQueryOptions(e),n=this.client.getQueryCache().build(this.client,t);return n.isFetchingOptimistic=!0,n.fetch().then((()=>this.createResult(n,t)))}fetch(e){var t;return this.executeFetch({...e,cancelRefetch:null==(t=e.cancelRefetch)||t}).then((()=>(this.updateResult(),this.currentResult)))}executeFetch(e){this.updateQuery();let t=this.currentQuery.fetch(this.options,e);return null!=e&&e.throwOnError||(t=t.catch(r.ZT)),t}updateStaleTimeout(){if(this.clearStaleTimeout(),r.sk||this.currentResult.isStale||!(0,r.PN)(this.options.staleTime))return;const e=(0,r.Kp)(this.currentResult.dataUpdatedAt,this.options.staleTime)+1;this.staleTimeoutId=setTimeout((()=>{this.currentResult.isStale||this.updateResult()}),e)}computeRefetchInterval(){var e;return"function"==typeof this.options.refetchInterval?this.options.refetchInterval(this.currentResult.data,this.currentQuery):null!=(e=this.options.refetchInterval)&&e}updateRefetchInterval(e){this.clearRefetchInterval(),this.currentRefetchInterval=e,!r.sk&&!1!==this.options.enabled&&(0,r.PN)(this.currentRefetchInterval)&&0!==this.currentRefetchInterval&&(this.refetchIntervalId=setInterval((()=>{(this.options.refetchIntervalInBackground||i.j.isFocused())&&this.executeFetch()}),this.currentRefetchInterval))}updateTimers(){this.updateStaleTimeout(),this.updateRefetchInterval(this.computeRefetchInterval())}clearStaleTimeout(){this.staleTimeoutId&&(clearTimeout(this.staleTimeoutId),this.staleTimeoutId=void 0)}clearRefetchInterval(){this.refetchIntervalId&&(clearInterval(this.refetchIntervalId),this.refetchIntervalId=void 0)}createResult(e,t){const n=this.currentQuery,o=this.options,i=this.currentResult,s=this.currentResultState,l=this.currentResultOptions,u=e!==n,f=u?e.state:this.currentQueryInitialState,p=u?this.currentResult:this.previousQueryResult,{state:m}=e;let g,{dataUpdatedAt:y,error:v,errorUpdatedAt:b,fetchStatus:w,status:x}=m,S=!1,k=!1;if(t._optimisticResults){const r=this.hasListeners(),i=!r&&c(e,t),s=r&&h(e,n,t,o);(i||s)&&(w=(0,a.Kw)(e.options.networkMode)?"fetching":"paused",y||(x="loading")),"isRestoring"===t._optimisticResults&&(w="idle")}if(t.keepPreviousData&&!m.dataUpdatedAt&&null!=p&&p.isSuccess&&"error"!==x)g=p.data,y=p.dataUpdatedAt,x=p.status,S=!0;else if(t.select&&void 0!==m.data)if(i&&m.data===(null==s?void 0:s.data)&&t.select===this.selectFn)g=this.selectResult;else try{this.selectFn=t.select,g=t.select(m.data),g=(0,r.oE)(null==i?void 0:i.data,g,t),this.selectResult=g,this.selectError=null}catch(e){this.selectError=e}else g=m.data;if(void 0!==t.placeholderData&&void 0===g&&"loading"===x){let e;if(null!=i&&i.isPlaceholderData&&t.placeholderData===(null==l?void 0:l.placeholderData))e=i.data;else if(e="function"==typeof t.placeholderData?t.placeholderData():t.placeholderData,t.select&&void 0!==e)try{e=t.select(e),this.selectError=null}catch(e){this.selectError=e}void 0!==e&&(x="success",g=(0,r.oE)(null==i?void 0:i.data,e,t),k=!0)}this.selectError&&(v=this.selectError,g=this.selectResult,b=Date.now(),x="error");const C="fetching"===w,M="loading"===x,O="error"===x;return{status:x,fetchStatus:w,isLoading:M,isSuccess:"success"===x,isError:O,isInitialLoading:M&&C,data:g,dataUpdatedAt:y,error:v,errorUpdatedAt:b,failureCount:m.fetchFailureCount,failureReason:m.fetchFailureReason,errorUpdateCount:m.errorUpdateCount,isFetched:m.dataUpdateCount>0||m.errorUpdateCount>0,isFetchedAfterMount:m.dataUpdateCount>f.dataUpdateCount||m.errorUpdateCount>f.errorUpdateCount,isFetching:C,isRefetching:C&&!M,isLoadingError:O&&0===m.dataUpdatedAt,isPaused:"paused"===w,isPlaceholderData:k,isPreviousData:S,isRefetchError:O&&0!==m.dataUpdatedAt,isStale:d(e,t),refetch:this.refetch,remove:this.remove}}updateResult(e){const t=this.currentResult,n=this.createResult(this.currentQuery,this.options);if(this.currentResultState=this.currentQuery.state,this.currentResultOptions=this.options,(0,r.VS)(n,t))return;this.currentResult=n;const o={cache:!0};!1!==(null==e?void 0:e.listeners)&&(()=>{if(!t)return!0;const{notifyOnChangeProps:e}=this.options;if("all"===e||!e&&!this.trackedProps.size)return!0;const n=new Set(null!=e?e:this.trackedProps);return this.options.useErrorBoundary&&n.add("error"),Object.keys(this.currentResult).some((e=>{const r=e;return this.currentResult[r]!==t[r]&&n.has(r)}))})()&&(o.listeners=!0),this.notify({...o,...e})}updateQuery(){const e=this.client.getQueryCache().build(this.client,this.options);if(e===this.currentQuery)return;const t=this.currentQuery;this.currentQuery=e,this.currentQueryInitialState=e.state,this.previousQueryResult=this.currentResult,this.hasListeners()&&(null==t||t.removeObserver(this),e.addObserver(this))}onQueryUpdate(e){const t={};"success"===e.type?t.onSuccess=!e.manual:"error"!==e.type||(0,a.DV)(e.error)||(t.onError=!0),this.updateResult(t),this.hasListeners()&&this.updateTimers()}notify(e){o.V.batch((()=>{var t,n,r,o;if(e.onSuccess)null==(t=(n=this.options).onSuccess)||t.call(n,this.currentResult.data),null==(r=(o=this.options).onSettled)||r.call(o,this.currentResult.data,null);else if(e.onError){var i,s,a,l;null==(i=(s=this.options).onError)||i.call(s,this.currentResult.error),null==(a=(l=this.options).onSettled)||a.call(l,void 0,this.currentResult.error)}e.listeners&&this.listeners.forEach((e=>{e(this.currentResult)})),e.cache&&this.client.getQueryCache().notify({query:this.currentQuery,type:"observerResultsUpdated"})}))}}function c(e,t){return function(e,t){return!(!1===t.enabled||e.state.dataUpdatedAt||"error"===e.state.status&&!1===t.retryOnMount)}(e,t)||e.state.dataUpdatedAt>0&&u(e,t,t.refetchOnMount)}function u(e,t,n){if(!1!==t.enabled){const r="function"==typeof n?n(e):n;return"always"===r||!1!==r&&d(e,t)}return!1}function h(e,t,n,r){return!1!==n.enabled&&(e!==t||!1===r.enabled)&&(!n.suspense||"error"!==e.state.status)&&d(e,n)}function d(e,t){return e.isStaleByTime(t.staleTime)}},9643:(e,t,n)=>{"use strict";n.d(t,{F:()=>o});var r=n(2161);class o{destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),(0,r.PN)(this.cacheTime)&&(this.gcTimeout=setTimeout((()=>{this.optionalRemove()}),this.cacheTime))}updateCacheTime(e){this.cacheTime=Math.max(this.cacheTime||0,null!=e?e:r.sk?1/0:3e5)}clearGcTimeout(){this.gcTimeout&&(clearTimeout(this.gcTimeout),this.gcTimeout=void 0)}}},2379:(e,t,n)=>{"use strict";n.d(t,{DV:()=>c,Kw:()=>a,Mz:()=>u});var r=n(5761),o=n(6474),i=n(2161);function s(e){return Math.min(1e3*2**e,3e4)}function a(e){return"online"!==(null!=e?e:"online")||o.N.isOnline()}class l{constructor(e){this.revert=null==e?void 0:e.revert,this.silent=null==e?void 0:e.silent}}function c(e){return e instanceof l}function u(e){let t,n,c,u=!1,h=0,d=!1;const f=new Promise(((e,t)=>{n=e,c=t})),p=()=>!r.j.isFocused()||"always"!==e.networkMode&&!o.N.isOnline(),m=r=>{d||(d=!0,null==e.onSuccess||e.onSuccess(r),null==t||t(),n(r))},g=n=>{d||(d=!0,null==e.onError||e.onError(n),null==t||t(),c(n))},y=()=>new Promise((n=>{t=e=>{const t=d||!p();return t&&n(e),t},null==e.onPause||e.onPause()})).then((()=>{t=void 0,d||null==e.onContinue||e.onContinue()})),v=()=>{if(d)return;let t;try{t=e.fn()}catch(e){t=Promise.reject(e)}Promise.resolve(t).then(m).catch((t=>{var n,r;if(d)return;const o=null!=(n=e.retry)?n:3,a=null!=(r=e.retryDelay)?r:s,l="function"==typeof a?a(h,t):a,c=!0===o||"number"==typeof o&&h<o||"function"==typeof o&&o(h,t);!u&&c?(h++,null==e.onFail||e.onFail(h,t),(0,i.Gh)(l).then((()=>{if(p())return y()})).then((()=>{u?g(t):v()}))):g(t)}))};return a(e.networkMode)?v():y().then(v),{promise:f,cancel:t=>{d||(g(new l(t)),null==e.abort||e.abort())},continue:()=>(null==t?void 0:t())?f:Promise.resolve(),cancelRetry:()=>{u=!0},continueRetry:()=>{u=!1}}}},3989:(e,t,n)=>{"use strict";n.d(t,{l:()=>r});class r{constructor(){this.listeners=[],this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.push(e),this.onSubscribe(),()=>{this.listeners=this.listeners.filter((t=>t!==e)),this.onUnsubscribe()}}hasListeners(){return this.listeners.length>0}onSubscribe(){}onUnsubscribe(){}}},2161:(e,t,n)=>{"use strict";n.d(t,{A4:()=>O,G9:()=>E,Gh:()=>M,I6:()=>d,Kp:()=>c,PN:()=>s,Rc:()=>l,Rm:()=>m,SE:()=>i,VS:()=>w,X7:()=>p,ZT:()=>o,_v:()=>u,_x:()=>f,e5:()=>a,lV:()=>h,oE:()=>A,sk:()=>r,to:()=>y,yF:()=>g});const r="undefined"==typeof window||"Deno"in window;function o(){}function i(e,t){return"function"==typeof e?e(t):e}function s(e){return"number"==typeof e&&e>=0&&e!==1/0}function a(e,t){return e.filter((e=>-1===t.indexOf(e)))}function l(e,t,n){const r=e.slice(0);return r[t]=n,r}function c(e,t){return Math.max(e+(t||0)-Date.now(),0)}function u(e,t,n){return C(e)?"function"==typeof t?{...n,queryKey:e,queryFn:t}:{...t,queryKey:e}:e}function h(e,t,n){return C(e)?"function"==typeof t?{...n,mutationKey:e,mutationFn:t}:{...t,mutationKey:e}:"function"==typeof e?{...t,mutationFn:e}:{...e}}function d(e,t,n){return C(e)?[{...t,queryKey:e},n]:[e||{},t]}function f(e,t){const{type:n="all",exact:r,fetchStatus:o,predicate:i,queryKey:s,stale:a}=e;if(C(s))if(r){if(t.queryHash!==m(s,t.options))return!1}else if(!y(t.queryKey,s))return!1;if("all"!==n){const e=t.isActive();if("active"===n&&!e)return!1;if("inactive"===n&&e)return!1}return!("boolean"==typeof a&&t.isStale()!==a||void 0!==o&&o!==t.state.fetchStatus||i&&!i(t))}function p(e,t){const{exact:n,fetching:r,predicate:o,mutationKey:i}=e;if(C(i)){if(!t.options.mutationKey)return!1;if(n){if(g(t.options.mutationKey)!==g(i))return!1}else if(!y(t.options.mutationKey,i))return!1}return!("boolean"==typeof r&&"loading"===t.state.status!==r||o&&!o(t))}function m(e,t){return((null==t?void 0:t.queryKeyHashFn)||g)(e)}function g(e){return JSON.stringify(e,((e,t)=>S(t)?Object.keys(t).sort().reduce(((e,n)=>(e[n]=t[n],e)),{}):t))}function y(e,t){return v(e,t)}function v(e,t){return e===t||typeof e==typeof t&&!(!e||!t||"object"!=typeof e||"object"!=typeof t)&&!Object.keys(t).some((n=>!v(e[n],t[n])))}function b(e,t){if(e===t)return e;const n=x(e)&&x(t);if(n||S(e)&&S(t)){const r=n?e.length:Object.keys(e).length,o=n?t:Object.keys(t),i=o.length,s=n?[]:{};let a=0;for(let r=0;r<i;r++){const i=n?r:o[r];s[i]=b(e[i],t[i]),s[i]===e[i]&&a++}return r===i&&a===r?e:s}return t}function w(e,t){if(e&&!t||t&&!e)return!1;for(const n in e)if(e[n]!==t[n])return!1;return!0}function x(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function S(e){if(!k(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!!k(n)&&!!n.hasOwnProperty("isPrototypeOf")}function k(e){return"[object Object]"===Object.prototype.toString.call(e)}function C(e){return Array.isArray(e)}function M(e){return new Promise((t=>{setTimeout(t,e)}))}function O(e){M(0).then(e)}function E(){if("function"==typeof AbortController)return new AbortController}function A(e,t,n){return null!=n.isDataEqual&&n.isDataEqual(e,t)?e:"function"==typeof n.structuralSharing?n.structuralSharing(e,t):!1!==n.structuralSharing?b(e,t):t}},5945:(e,t,n)=>{"use strict";n.d(t,{NL:()=>a,aH:()=>l});var r=n(7294);const o=r.createContext(void 0),i=r.createContext(!1);function s(e,t){return e||(t&&"undefined"!=typeof window?(window.ReactQueryClientContext||(window.ReactQueryClientContext=o),window.ReactQueryClientContext):o)}const a=({context:e}={})=>{const t=r.useContext(s(e,r.useContext(i)));if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},l=({client:e,children:t,context:n,contextSharing:o=!1})=>{r.useEffect((()=>(e.mount(),()=>{e.unmount()})),[e]);const a=s(n,o);return r.createElement(i.Provider,{value:!n&&o},r.createElement(a.Provider,{value:e},t))}},1784:(e,t,n)=>{"use strict";n.d(t,{_:()=>i});var r=n(7294);const o=r.createContext(function(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}()),i=()=>r.useContext(o)},1670:(e,t,n)=>{"use strict";n.d(t,{JN:()=>s,KJ:()=>a,pf:()=>i});var r=n(7294),o=n(4798);const i=(e,t)=>{(e.suspense||e.useErrorBoundary)&&(t.isReset()||(e.retryOnMount=!1))},s=e=>{r.useEffect((()=>{e.clearReset()}),[e])},a=({result:e,errorResetBoundary:t,useErrorBoundary:n,query:r})=>e.isError&&!t.isReset()&&!e.isFetching&&(0,o.L)(n,[e.error,r])},7122:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294);const o=r.createContext(!1),i=()=>r.useContext(o);o.Provider},8381:(e,t,n)=>{"use strict";n.d(t,{Fb:()=>r,SB:()=>i,Z$:()=>o,j8:()=>s});const r=e=>{e.suspense&&"number"!=typeof e.staleTime&&(e.staleTime=1e3)},o=(e,t)=>e.isLoading&&e.isFetching&&!t,i=(e,t,n)=>(null==e?void 0:e.suspense)&&o(t,n),s=(e,t,n)=>t.fetchOptimistic(e).then((({data:t})=>{null==e.onSuccess||e.onSuccess(t),null==e.onSettled||e.onSettled(t,null)})).catch((t=>{n.clearReset(),null==e.onError||e.onError(t),null==e.onSettled||e.onSettled(void 0,t)}))},7687:(e,t,n)=>{"use strict";n.d(t,{r:()=>h});var r=n(7294),o=n(464),i=n(81),s=n(1784),a=n(5945),l=n(7122),c=n(1670),u=n(8381);function h(e,t){const n=(0,a.NL)({context:e.context}),h=(0,l.S)(),d=(0,s._)(),f=n.defaultQueryOptions(e);f._optimisticResults=h?"isRestoring":"optimistic",f.onError&&(f.onError=i.V.batchCalls(f.onError)),f.onSuccess&&(f.onSuccess=i.V.batchCalls(f.onSuccess)),f.onSettled&&(f.onSettled=i.V.batchCalls(f.onSettled)),(0,u.Fb)(f),(0,c.pf)(f,d),(0,c.JN)(d);const[p]=r.useState((()=>new t(n,f))),m=p.getOptimisticResult(f);if((0,o.$)(r.useCallback((e=>h?()=>{}:p.subscribe(i.V.batchCalls(e))),[p,h]),(()=>p.getCurrentResult()),(()=>p.getCurrentResult())),r.useEffect((()=>{p.setOptions(f,{listeners:!1})}),[f,p]),(0,u.SB)(f,m,h))throw(0,u.j8)(f,p,d);if((0,c.KJ)({result:m,errorResetBoundary:d,useErrorBoundary:f.useErrorBoundary,query:p.getCurrentQuery()}))throw m.error;return f.notifyOnChangeProps?m:p.trackResult(m)}},8596:(e,t,n)=>{"use strict";n.d(t,{N:()=>l});var r=n(2161),o=n(2924),i=n(9499);class s extends o.z{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e,t){super.setOptions({...e,behavior:(0,i.Gm)()},t)}getOptimisticResult(e){return e.behavior=(0,i.Gm)(),super.getOptimisticResult(e)}fetchNextPage({pageParam:e,...t}={}){return this.fetch({...t,meta:{fetchMore:{direction:"forward",pageParam:e}}})}fetchPreviousPage({pageParam:e,...t}={}){return this.fetch({...t,meta:{fetchMore:{direction:"backward",pageParam:e}}})}createResult(e,t){var n,r,o,s,a,l;const{state:c}=e,u=super.createResult(e,t),{isFetching:h,isRefetching:d}=u,f=h&&"forward"===(null==(n=c.fetchMeta)||null==(r=n.fetchMore)?void 0:r.direction),p=h&&"backward"===(null==(o=c.fetchMeta)||null==(s=o.fetchMore)?void 0:s.direction);return{...u,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:(0,i.Qy)(t,null==(a=c.data)?void 0:a.pages),hasPreviousPage:(0,i.ZF)(t,null==(l=c.data)?void 0:l.pages),isFetchingNextPage:f,isFetchingPreviousPage:p,isRefetching:d&&!f&&!p}}}var a=n(7687);function l(e,t,n){const o=(0,r._v)(e,t,n);return(0,a.r)(o,s)}},4469:(e,t,n)=>{"use strict";n.d(t,{D:()=>d});var r=n(7294),o=n(464),i=n(2161),s=n(9886),a=n(81),l=n(3989);class c extends l.l{constructor(e,t){super(),this.client=e,this.setOptions(t),this.bindMethods(),this.updateResult()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){var t;const n=this.options;this.options=this.client.defaultMutationOptions(e),(0,i.VS)(n,this.options)||this.client.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.currentMutation,observer:this}),null==(t=this.currentMutation)||t.setOptions(this.options)}onUnsubscribe(){var e;this.listeners.length||null==(e=this.currentMutation)||e.removeObserver(this)}onMutationUpdate(e){this.updateResult();const t={listeners:!0};"success"===e.type?t.onSuccess=!0:"error"===e.type&&(t.onError=!0),this.notify(t)}getCurrentResult(){return this.currentResult}reset(){this.currentMutation=void 0,this.updateResult(),this.notify({listeners:!0})}mutate(e,t){return this.mutateOptions=t,this.currentMutation&&this.currentMutation.removeObserver(this),this.currentMutation=this.client.getMutationCache().build(this.client,{...this.options,variables:void 0!==e?e:this.options.variables}),this.currentMutation.addObserver(this),this.currentMutation.execute()}updateResult(){const e=this.currentMutation?this.currentMutation.state:(0,s.R)(),t={...e,isLoading:"loading"===e.status,isSuccess:"success"===e.status,isError:"error"===e.status,isIdle:"idle"===e.status,mutate:this.mutate,reset:this.reset};this.currentResult=t}notify(e){a.V.batch((()=>{var t,n,r,o;if(this.mutateOptions&&this.hasListeners())if(e.onSuccess)null==(t=(n=this.mutateOptions).onSuccess)||t.call(n,this.currentResult.data,this.currentResult.variables,this.currentResult.context),null==(r=(o=this.mutateOptions).onSettled)||r.call(o,this.currentResult.data,null,this.currentResult.variables,this.currentResult.context);else if(e.onError){var i,s,a,l;null==(i=(s=this.mutateOptions).onError)||i.call(s,this.currentResult.error,this.currentResult.variables,this.currentResult.context),null==(a=(l=this.mutateOptions).onSettled)||a.call(l,void 0,this.currentResult.error,this.currentResult.variables,this.currentResult.context)}e.listeners&&this.listeners.forEach((e=>{e(this.currentResult)}))}))}}var u=n(5945),h=n(4798);function d(e,t,n){const s=(0,i.lV)(e,t,n),l=(0,u.NL)({context:s.context}),[d]=r.useState((()=>new c(l,s)));r.useEffect((()=>{d.setOptions(s)}),[d,s]);const p=(0,o.$)(r.useCallback((e=>d.subscribe(a.V.batchCalls(e))),[d]),(()=>d.getCurrentResult()),(()=>d.getCurrentResult())),m=r.useCallback(((e,t)=>{d.mutate(e,t).catch(f)}),[d]);if(p.error&&(0,h.L)(d.options.useErrorBoundary,[p.error]))throw p.error;return{...p,mutate:m,mutateAsync:p.mutate}}function f(){}},1657:(e,t,n)=>{"use strict";n.d(t,{h:()=>m});var r=n(7294),o=n(464),i=n(2161),s=n(81),a=n(2924),l=n(3989);class c extends l.l{constructor(e,t){super(),this.client=e,this.queries=[],this.result=[],this.observers=[],this.observersMap={},t&&this.setQueries(t)}onSubscribe(){1===this.listeners.length&&this.observers.forEach((e=>{e.subscribe((t=>{this.onUpdate(e,t)}))}))}onUnsubscribe(){this.listeners.length||this.destroy()}destroy(){this.listeners=[],this.observers.forEach((e=>{e.destroy()}))}setQueries(e,t){this.queries=e,s.V.batch((()=>{const e=this.observers,n=this.findMatchingObservers(this.queries);n.forEach((e=>e.observer.setOptions(e.defaultedQueryOptions,t)));const r=n.map((e=>e.observer)),o=Object.fromEntries(r.map((e=>[e.options.queryHash,e]))),s=r.map((e=>e.getCurrentResult())),a=r.some(((t,n)=>t!==e[n]));(e.length!==r.length||a)&&(this.observers=r,this.observersMap=o,this.result=s,this.hasListeners()&&((0,i.e5)(e,r).forEach((e=>{e.destroy()})),(0,i.e5)(r,e).forEach((e=>{e.subscribe((t=>{this.onUpdate(e,t)}))})),this.notify()))}))}getCurrentResult(){return this.result}getQueries(){return this.observers.map((e=>e.getCurrentQuery()))}getObservers(){return this.observers}getOptimisticResult(e){return this.findMatchingObservers(e).map((e=>e.observer.getOptimisticResult(e.defaultedQueryOptions)))}findMatchingObservers(e){const t=this.observers,n=new Map(t.map((e=>[e.options.queryHash,e]))),r=e.map((e=>this.client.defaultQueryOptions(e))),o=r.flatMap((e=>{const t=n.get(e.queryHash);return null!=t?[{defaultedQueryOptions:e,observer:t}]:[]})),i=new Set(o.map((e=>e.defaultedQueryOptions.queryHash))),s=r.filter((e=>!i.has(e.queryHash))),l=new Set(o.map((e=>e.observer))),c=t.filter((e=>!l.has(e))),u=e=>{const t=this.client.defaultQueryOptions(e),n=this.observersMap[t.queryHash];return null!=n?n:new a.z(this.client,t)},h=s.map(((e,t)=>{if(e.keepPreviousData){const n=c[t];if(void 0!==n)return{defaultedQueryOptions:e,observer:n}}return{defaultedQueryOptions:e,observer:u(e)}}));return o.concat(h).sort(((e,t)=>r.indexOf(e.defaultedQueryOptions)-r.indexOf(t.defaultedQueryOptions)))}onUpdate(e,t){const n=this.observers.indexOf(e);-1!==n&&(this.result=(0,i.Rc)(this.result,n,t),this.notify())}notify(){s.V.batch((()=>{this.listeners.forEach((e=>{e(this.result)}))}))}}var u=n(5945),h=n(7122),d=n(1784),f=n(1670),p=n(8381);function m({queries:e,context:t}){const n=(0,u.NL)({context:t}),i=(0,h.S)(),a=r.useMemo((()=>e.map((e=>{const t=n.defaultQueryOptions(e);return t._optimisticResults=i?"isRestoring":"optimistic",t}))),[e,n,i]),[l]=r.useState((()=>new c(n,a))),m=l.getOptimisticResult(a);(0,o.$)(r.useCallback((e=>i?()=>{}:l.subscribe(s.V.batchCalls(e))),[l,i]),(()=>l.getCurrentResult()),(()=>l.getCurrentResult())),r.useEffect((()=>{l.setQueries(a,{listeners:!1})}),[a,l]);const g=(0,d._)();a.forEach((e=>{(0,f.pf)(e,g),(0,p.Fb)(e)})),(0,f.JN)(g);const y=m.some(((e,t)=>(0,p.SB)(a[t],e,i)))?m.flatMap(((e,t)=>{const n=a[t],r=l.getObservers()[t];if(n&&r){if((0,p.SB)(n,e,i))return(0,p.j8)(n,r,g);(0,p.Z$)(e,i)&&(0,p.j8)(n,r,g)}return[]})):[];if(y.length>0)throw Promise.all(y);const v=m.find(((e,t)=>{var n,r;return(0,f.KJ)({result:e,errorResetBoundary:g,useErrorBoundary:null!=(n=null==(r=a[t])?void 0:r.useErrorBoundary)&&n,query:l.getQueries()[t]})}));if(null!=v&&v.error)throw v.error;return m}},6492:(e,t,n)=>{"use strict";n.d(t,{a:()=>s});var r=n(2161),o=n(2924),i=n(7687);function s(e,t,n){const s=(0,r._v)(e,t,n);return(0,i.r)(s,o.z)}},464:(e,t,n)=>{"use strict";n.d(t,{$:()=>r});const r=n(1688).useSyncExternalStore},4798:(e,t,n)=>{"use strict";function r(e,t){return"function"==typeof e?e(...t):!!e}n.d(t,{L:()=>r})},3845:(e,t,n)=>{"use strict";n.d(t,{ML:()=>qe,hj:()=>oe,vc:()=>Qe,NB:()=>Ze,DK:()=>Xe,nU:()=>H,XP:()=>Me,b5:()=>Oe,qv:()=>Ee,u9:()=>Te,QC:()=>De,Nl:()=>I,Jo:()=>Ce,tI:()=>_e,bR:()=>Ie,Cf:()=>Ke,K9:()=>et,P1:()=>B,x2:()=>Ye,zK:()=>Ge,S0:()=>Je});var r=n(2376),o=n(4348),i=n(2337),s=n(7823),a=n(6560);const l=(e,t)=>!e.selection.empty&&(t&&t(e.tr.deleteSelection().scrollIntoView()),!0);const c=(e,t,n)=>{let o=function(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock("backward",e):n.parentOffset>0)?null:n}(e,n);if(!o)return!1;let i=d(o);if(!i){let n=o.blockRange(),r=n&&(0,a.k9)(n);return null!=r&&(t&&t(e.tr.lift(n,r).scrollIntoView()),!0)}let l=i.nodeBefore;if(!l.type.spec.isolating&&S(e,i,t))return!0;if(0==o.parent.content.size&&(u(l,"end")||r.qv.isSelectable(l))){let n=(0,a.dR)(e.doc,o.before(),o.after(),s.p2.empty);if(n&&n.slice.size<n.to-n.from){if(t){let o=e.tr.step(n);o.setSelection(u(l,"end")?r.Y1.findFrom(o.doc.resolve(o.mapping.map(i.pos,-1)),-1):r.qv.create(o.doc,i.pos-l.nodeSize)),t(o.scrollIntoView())}return!0}}return!(!l.isAtom||i.depth!=o.depth-1||(t&&t(e.tr.delete(i.pos-l.nodeSize,i.pos).scrollIntoView()),0))};function u(e,t,n=!1){for(let r=e;r;r="start"==t?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&1!=r.childCount)return!1}return!1}const h=(e,t,n)=>{let{$head:o,empty:i}=e.selection,s=o;if(!i)return!1;if(o.parent.isTextblock){if(n?!n.endOfTextblock("backward",e):o.parentOffset>0)return!1;s=d(o)}let a=s&&s.nodeBefore;return!(!a||!r.qv.isSelectable(a)||(t&&t(e.tr.setSelection(r.qv.create(e.doc,s.pos-a.nodeSize)).scrollIntoView()),0))};function d(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){if(e.index(t)>0)return e.doc.resolve(e.before(t+1));if(e.node(t).type.spec.isolating)break}return null}const f=(e,t,n)=>{let o=function(e,t){let{$cursor:n}=e.selection;return!n||(t?!t.endOfTextblock("forward",e):n.parentOffset<n.parent.content.size)?null:n}(e,n);if(!o)return!1;let i=m(o);if(!i)return!1;let l=i.nodeAfter;if(S(e,i,t))return!0;if(0==o.parent.content.size&&(u(l,"start")||r.qv.isSelectable(l))){let n=(0,a.dR)(e.doc,o.before(),o.after(),s.p2.empty);if(n&&n.slice.size<n.to-n.from){if(t){let o=e.tr.step(n);o.setSelection(u(l,"start")?r.Y1.findFrom(o.doc.resolve(o.mapping.map(i.pos)),1):r.qv.create(o.doc,o.mapping.map(i.pos))),t(o.scrollIntoView())}return!0}}return!(!l.isAtom||i.depth!=o.depth-1||(t&&t(e.tr.delete(i.pos,i.pos+l.nodeSize).scrollIntoView()),0))},p=(e,t,n)=>{let{$head:o,empty:i}=e.selection,s=o;if(!i)return!1;if(o.parent.isTextblock){if(n?!n.endOfTextblock("forward",e):o.parentOffset<o.parent.content.size)return!1;s=m(o)}let a=s&&s.nodeAfter;return!(!a||!r.qv.isSelectable(a)||(t&&t(e.tr.setSelection(r.qv.create(e.doc,s.pos)).scrollIntoView()),0))};function m(e){if(!e.parent.type.spec.isolating)for(let t=e.depth-1;t>=0;t--){let n=e.node(t);if(e.index(t)+1<n.childCount)return e.doc.resolve(e.after(t+1));if(n.type.spec.isolating)break}return null}const g=(e,t)=>{let{$head:n,$anchor:r}=e.selection;return!(!n.parent.type.spec.code||!n.sameParent(r)||(t&&t(e.tr.insertText("\n").scrollIntoView()),0))};function y(e){for(let t=0;t<e.edgeCount;t++){let{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const v=(e,t)=>{let{$head:n,$anchor:o}=e.selection;if(!n.parent.type.spec.code||!n.sameParent(o))return!1;let i=n.node(-1),s=n.indexAfter(-1),a=y(i.contentMatchAt(s));if(!a||!i.canReplaceWith(s,s,a))return!1;if(t){let o=n.after(),i=e.tr.replaceWith(o,o,a.createAndFill());i.setSelection(r.Y1.near(i.doc.resolve(o),1)),t(i.scrollIntoView())}return!0},b=(e,t)=>{let n=e.selection,{$from:o,$to:i}=n;if(n instanceof r.C1||o.parent.inlineContent||i.parent.inlineContent)return!1;let s=y(i.parent.contentMatchAt(i.indexAfter()));if(!s||!s.isTextblock)return!1;if(t){let n=(!o.parentOffset&&i.index()<i.parent.childCount?o:i).pos,a=e.tr.insert(n,s.createAndFill());a.setSelection(r.Bs.create(a.doc,n+1)),t(a.scrollIntoView())}return!0},w=(e,t)=>{let{$cursor:n}=e.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let r=n.before();if((0,a.Ax)(e.doc,r))return t&&t(e.tr.split(r).scrollIntoView()),!0}let r=n.blockRange(),o=r&&(0,a.k9)(r);return null!=o&&(t&&t(e.tr.lift(r,o).scrollIntoView()),!0)};var x;function S(e,t,n){let o,i,l=t.nodeBefore,c=t.nodeAfter;if(l.type.spec.isolating||c.type.spec.isolating)return!1;if(function(e,t,n){let r=t.nodeBefore,o=t.nodeAfter,i=t.index();return!(!(r&&o&&r.type.compatibleContent(o.type))||(!r.content.size&&t.parent.canReplace(i-1,i)?(n&&n(e.tr.delete(t.pos-r.nodeSize,t.pos).scrollIntoView()),0):!t.parent.canReplace(i,i+1)||!o.isTextblock&&!(0,a.Mn)(e.doc,t.pos)||(n&&n(e.tr.clearIncompatible(t.pos,r.type,r.contentMatchAt(r.childCount)).join(t.pos).scrollIntoView()),0)))}(e,t,n))return!0;let h=t.parent.canReplace(t.index(),t.index()+1);if(h&&(o=(i=l.contentMatchAt(l.childCount)).findWrapping(c.type))&&i.matchType(o[0]||c.type).validEnd){if(n){let r=t.pos+c.nodeSize,i=s.HY.empty;for(let e=o.length-1;e>=0;e--)i=s.HY.from(o[e].create(null,i));i=s.HY.from(l.copy(i));let u=e.tr.step(new a.FC(t.pos-1,r,t.pos,r,new s.p2(i,1,0),o.length,!0)),h=r+2*o.length;(0,a.Mn)(u.doc,h)&&u.join(h),n(u.scrollIntoView())}return!0}let d=r.Y1.findFrom(t,1),f=d&&d.$from.blockRange(d.$to),p=f&&(0,a.k9)(f);if(null!=p&&p>=t.depth)return n&&n(e.tr.lift(f,p).scrollIntoView()),!0;if(h&&u(c,"start",!0)&&u(l,"end")){let r=l,o=[];for(;o.push(r),!r.isTextblock;)r=r.lastChild;let i=c,u=1;for(;!i.isTextblock;i=i.firstChild)u++;if(r.canReplace(r.childCount,r.childCount,i.content)){if(n){let r=s.HY.empty;for(let e=o.length-1;e>=0;e--)r=s.HY.from(o[e].copy(r));n(e.tr.step(new a.FC(t.pos-o.length,t.pos+c.nodeSize,t.pos+u,t.pos+c.nodeSize-u,new s.p2(r,o.length,0),0,!0)).scrollIntoView())}return!0}}return!1}function k(e){return function(t,n){let o=t.selection,i=e<0?o.$from:o.$to,s=i.depth;for(;i.node(s).isInline;){if(!s)return!1;s--}return!!i.node(s).isTextblock&&(n&&n(t.tr.setSelection(r.Bs.create(t.doc,e<0?i.start(s):i.end(s)))),!0)}}const C=k(-1),M=k(1);function O(e,t=null){return function(n,r){let o=!1;for(let r=0;r<n.selection.ranges.length&&!o;r++){let{$from:{pos:i},$to:{pos:s}}=n.selection.ranges[r];n.doc.nodesBetween(i,s,((r,i)=>{if(o)return!1;if(r.isTextblock&&!r.hasMarkup(e,t))if(r.type==e)o=!0;else{let t=n.doc.resolve(i),r=t.index();o=t.parent.canReplaceWith(r,r+1,e)}}))}if(!o)return!1;if(r){let o=n.tr;for(let r=0;r<n.selection.ranges.length;r++){let{$from:{pos:i},$to:{pos:s}}=n.selection.ranges[r];o.setBlockType(i,s,e,t)}r(o.scrollIntoView())}return!0}}function E(...e){return function(t,n,r){for(let o=0;o<e.length;o++)if(e[o](t,n,r))return!0;return!1}}let A=E(l,c,h),T=E(l,f,p);const D={Enter:E(g,b,w,((e,t)=>{let{$from:n,$to:o}=e.selection;if(e.selection instanceof r.qv&&e.selection.node.isBlock)return!(!n.parentOffset||!(0,a.Ax)(e.doc,n.pos)||(t&&t(e.tr.split(n.pos).scrollIntoView()),0));if(!n.parent.isBlock)return!1;if(t){let i=o.parentOffset==o.parent.content.size,s=e.tr;(e.selection instanceof r.Bs||e.selection instanceof r.C1)&&s.deleteSelection();let l=0==n.depth?null:y(n.node(-1).contentMatchAt(n.indexAfter(-1))),c=x?[x]:i&&l?[{type:l}]:void 0,u=(0,a.Ax)(s.doc,s.mapping.map(n.pos),1,c);if(c||u||!(0,a.Ax)(s.doc,s.mapping.map(n.pos),1,l?[{type:l}]:void 0)||(l&&(c=[{type:l}]),u=!0),u&&(s.split(s.mapping.map(n.pos),1,c),!i&&!n.parentOffset&&n.parent.type!=l)){let e=s.mapping.map(n.before()),t=s.doc.resolve(e);l&&n.node(-1).canReplaceWith(t.index(),t.index()+1,l)&&s.setNodeMarkup(s.mapping.map(n.before()),l)}t(s.scrollIntoView())}return!0})),"Mod-Enter":v,Backspace:A,"Mod-Backspace":A,"Shift-Backspace":A,Delete:T,"Mod-Delete":T,"Mod-a":(e,t)=>(t&&t(e.tr.setSelection(new r.C1(e.doc))),!0)},_={"Ctrl-h":D.Backspace,"Alt-Backspace":D["Mod-Backspace"],"Ctrl-d":D.Delete,"Ctrl-Alt-Backspace":D["Mod-Delete"],"Alt-Delete":D["Mod-Delete"],"Alt-d":D["Mod-Delete"],"Ctrl-a":C,"Ctrl-e":M};for(let e in D)_[e]=D[e];function R(e){const{state:t,transaction:n}=e;let{selection:r}=n,{doc:o}=n,{storedMarks:i}=n;return{...t,apply:t.apply.bind(t),applyTransaction:t.applyTransaction.bind(t),filterTransaction:t.filterTransaction,plugins:t.plugins,schema:t.schema,reconfigure:t.reconfigure.bind(t),toJSON:t.toJSON.bind(t),get storedMarks(){return i},get selection(){return r},get doc(){return o},get tr(){return r=n.selection,o=n.doc,i=n.storedMarks,n}}}"undefined"!=typeof navigator?/Mac|iP(hone|[oa]d)/.test(navigator.platform):"undefined"!=typeof os&&os.platform&&os.platform();class N{constructor(e){this.editor=e.editor,this.rawCommands=this.editor.extensionManager.commands,this.customState=e.state}get hasCustomState(){return!!this.customState}get state(){return this.customState||this.editor.state}get commands(){const{rawCommands:e,editor:t,state:n}=this,{view:r}=t,{tr:o}=n,i=this.buildProps(o);return Object.fromEntries(Object.entries(e).map((([e,t])=>[e,(...e)=>{const n=t(...e)(i);return o.getMeta("preventDispatch")||this.hasCustomState||r.dispatch(o),n}])))}get chain(){return()=>this.createChain()}get can(){return()=>this.createCan()}createChain(e,t=!0){const{rawCommands:n,editor:r,state:o}=this,{view:i}=r,s=[],a=!!e,l=e||o.tr,c={...Object.fromEntries(Object.entries(n).map((([e,n])=>[e,(...e)=>{const r=this.buildProps(l,t),o=n(...e)(r);return s.push(o),c}]))),run:()=>(a||!t||l.getMeta("preventDispatch")||this.hasCustomState||i.dispatch(l),s.every((e=>!0===e)))};return c}createCan(e){const{rawCommands:t,state:n}=this,r=e||n.tr,o=this.buildProps(r,!1);return{...Object.fromEntries(Object.entries(t).map((([e,t])=>[e,(...e)=>t(...e)({...o,dispatch:void 0})]))),chain:()=>this.createChain(r,!1)}}buildProps(e,t=!0){const{rawCommands:n,editor:r,state:o}=this,{view:i}=r,s={tr:e,editor:r,view:i,state:R({state:o,transaction:e}),dispatch:t?()=>{}:void 0,chain:()=>this.createChain(e,t),can:()=>this.createCan(e),get commands(){return Object.fromEntries(Object.entries(n).map((([e,t])=>[e,(...e)=>t(...e)(s)])))}};return s}}class P{constructor(){this.callbacks={}}on(e,t){return this.callbacks[e]||(this.callbacks[e]=[]),this.callbacks[e].push(t),this}emit(e,...t){const n=this.callbacks[e];return n&&n.forEach((e=>e.apply(this,t))),this}off(e,t){const n=this.callbacks[e];return n&&(t?this.callbacks[e]=n.filter((e=>e!==t)):delete this.callbacks[e]),this}removeAllListeners(){this.callbacks={}}}function I(e,t,n){return void 0===e.config[t]&&e.parent?I(e.parent,t,n):"function"==typeof e.config[t]?e.config[t].bind({...n,parent:e.parent?I(e.parent,t,n):null}):e.config[t]}function L(e){return{baseExtensions:e.filter((e=>"extension"===e.type)),nodeExtensions:e.filter((e=>"node"===e.type)),markExtensions:e.filter((e=>"mark"===e.type))}}function j(e){const t=[],{nodeExtensions:n,markExtensions:r}=L(e),o=[...n,...r],i={default:null,rendered:!0,renderHTML:null,parseHTML:null,keepOnSplit:!0,isRequired:!1};return e.forEach((e=>{const n=I(e,"addGlobalAttributes",{name:e.name,options:e.options,storage:e.storage});n&&n().forEach((e=>{e.types.forEach((n=>{Object.entries(e.attributes).forEach((([e,r])=>{t.push({type:n,name:e,attribute:{...i,...r}})}))}))}))})),o.forEach((e=>{const n={name:e.name,options:e.options,storage:e.storage},r=I(e,"addAttributes",n);if(!r)return;const o=r();Object.entries(o).forEach((([n,r])=>{const o={...i,...r};"function"==typeof(null==o?void 0:o.default)&&(o.default=o.default()),(null==o?void 0:o.isRequired)&&void 0===(null==o?void 0:o.default)&&delete o.default,t.push({type:e.name,name:n,attribute:o})}))})),t}function F(e,t){if("string"==typeof e){if(!t.nodes[e])throw Error(`There is no node type named '${e}'. Maybe you forgot to add the extension?`);return t.nodes[e]}return e}function B(...e){return e.filter((e=>!!e)).reduce(((e,t)=>{const n={...e};return Object.entries(t).forEach((([e,t])=>{if(n[e])if("class"===e){const r=t?t.split(" "):[],o=n[e]?n[e].split(" "):[],i=r.filter((e=>!o.includes(e)));n[e]=[...o,...i].join(" ")}else n[e]="style"===e?[n[e],t].join("; "):t;else n[e]=t})),n}),{})}function z(e,t){return t.filter((e=>e.attribute.rendered)).map((t=>t.attribute.renderHTML?t.attribute.renderHTML(e.attrs)||{}:{[t.name]:e.attrs[t.name]})).reduce(((e,t)=>B(e,t)),{})}function $(e){return"function"==typeof e}function H(e,t=undefined,...n){return $(e)?t?e.bind(t)(...n):e(...n):e}function W(e,t){return e.style?e:{...e,getAttrs:n=>{const r=e.getAttrs?e.getAttrs(n):e.attrs;if(!1===r)return!1;const o=t.reduce(((e,t)=>{const r=t.attribute.parseHTML?t.attribute.parseHTML(n):function(e){return"string"!=typeof e?e:e.match(/^[+-]?(?:\d*\.)?\d+$/)?Number(e):"true"===e||"false"!==e&&e}(n.getAttribute(t.name));return null==r?e:{...e,[t.name]:r}}),{});return{...r,...o}}}}function U(e){return Object.fromEntries(Object.entries(e).filter((([e,t])=>("attrs"!==e||!function(e={}){return 0===Object.keys(e).length&&e.constructor===Object}(t))&&null!=t)))}function V(e,t){return t.nodes[e]||t.marks[e]||null}function q(e,t){return Array.isArray(t)?t.some((t=>("string"==typeof t?t:t.name)===e.name)):t}const K=(e,t=500)=>{let n="";const r=e.parentOffset;return e.parent.nodesBetween(Math.max(0,r-t),r,((e,t,o,i)=>{var s,a;const l=(null===(a=(s=e.type.spec).toText)||void 0===a?void 0:a.call(s,{node:e,pos:t,parent:o,index:i}))||e.textContent||"%leaf%";n+=l.slice(0,Math.max(0,r-t))})),n};function Y(e){return"[object RegExp]"===Object.prototype.toString.call(e)}class G{constructor(e){this.find=e.find,this.handler=e.handler}}const J=(e,t)=>{if(Y(t))return t.exec(e);const n=t(e);if(!n)return null;const r=[n.text];return r.index=n.index,r.input=e,r.data=n.data,n.replaceWith&&(n.text.includes(n.replaceWith)||console.warn('[tiptap warn]: "inputRuleMatch.replaceWith" must be part of "inputRuleMatch.text".'),r.push(n.replaceWith)),r};function Q(e){var t;const{editor:n,from:r,to:o,text:i,rules:s,plugin:a}=e,{view:l}=n;if(l.composing)return!1;const c=l.state.doc.resolve(r);if(c.parent.type.spec.code||(null===(t=c.nodeBefore||c.nodeAfter)||void 0===t?void 0:t.marks.find((e=>e.type.spec.code))))return!1;let u=!1;const h=K(c)+i;return s.forEach((e=>{if(u)return;const t=J(h,e.find);if(!t)return;const s=l.state.tr,c=R({state:l.state,transaction:s}),d={from:r-(t[0].length-i.length),to:o},{commands:f,chain:p,can:m}=new N({editor:n,state:c});null!==e.handler({state:c,range:d,match:t,commands:f,chain:p,can:m})&&s.steps.length&&(s.setMeta(a,{transform:s,from:r,to:o,text:i}),l.dispatch(s),u=!0)})),u}function Z(e){const{editor:t,rules:n}=e,o=new r.Sy({state:{init:()=>null,apply:(e,t)=>e.getMeta(o)||(e.selectionSet||e.docChanged?null:t)},props:{handleTextInput:(e,r,i,s)=>Q({editor:t,from:r,to:i,text:s,rules:n,plugin:o}),handleDOMEvents:{compositionend:e=>(setTimeout((()=>{const{$cursor:r}=e.state.selection;r&&Q({editor:t,from:r.pos,to:r.pos,text:"",rules:n,plugin:o})})),!1)},handleKeyDown(e,r){if("Enter"!==r.key)return!1;const{$cursor:i}=e.state.selection;return!!i&&Q({editor:t,from:i.pos,to:i.pos,text:"\n",rules:n,plugin:o})}},isInputRules:!0});return o}class X{constructor(e){this.find=e.find,this.handler=e.handler}}function ee(e){const{editor:t,rules:n}=e;let o=null,i=!1,s=!1,a=new ClipboardEvent("paste"),l=new DragEvent("drop");const c=n.map((e=>new r.Sy({view(e){const t=t=>{var n;o=(null===(n=e.dom.parentElement)||void 0===n?void 0:n.contains(t.target))?e.dom.parentElement:null};return window.addEventListener("dragstart",t),{destroy(){window.removeEventListener("dragstart",t)}}},props:{handleDOMEvents:{drop:(e,t)=>(s=o===e.dom.parentElement,l=t,!1),paste:(e,t)=>{var n;const r=null===(n=t.clipboardData)||void 0===n?void 0:n.getData("text/html");return a=t,i=!!(null==r?void 0:r.includes("data-pm-slice")),!1}}},appendTransaction:(n,r,o)=>{const c=n[0],u="paste"===c.getMeta("uiEvent")&&!i,h="drop"===c.getMeta("uiEvent")&&!s;if(!u&&!h)return;const d=r.doc.content.findDiffStart(o.doc.content),f=r.doc.content.findDiffEnd(o.doc.content);if("number"!=typeof d||!f||d===f.b)return;const p=o.tr,m=R({state:o,transaction:p}),g=function(e){const{editor:t,state:n,from:r,to:o,rule:i,pasteEvent:s,dropEvent:a}=e,{commands:l,chain:c,can:u}=new N({editor:t,state:n}),h=[];return n.doc.nodesBetween(r,o,((e,t)=>{if(!e.isTextblock||e.type.spec.code)return;const d=Math.max(r,t),f=Math.min(o,t+e.content.size);((e,t)=>{if(Y(t))return[...e.matchAll(t)];const n=t(e);return n?n.map((t=>{const n=[t.text];return n.index=t.index,n.input=e,n.data=t.data,t.replaceWith&&(t.text.includes(t.replaceWith)||console.warn('[tiptap warn]: "pasteRuleMatch.replaceWith" must be part of "pasteRuleMatch.text".'),n.push(t.replaceWith)),n})):[]})(e.textBetween(d-t,f-t,void 0,""),i.find).forEach((e=>{if(void 0===e.index)return;const t=d+e.index+1,r=t+e[0].length,o={from:n.tr.mapping.map(t),to:n.tr.mapping.map(r)},f=i.handler({state:n,range:o,match:e,commands:l,chain:c,can:u,pasteEvent:s,dropEvent:a});h.push(f)}))})),h.every((e=>null!==e))}({editor:t,state:m,from:Math.max(d-1,0),to:f.b-1,rule:e,pasteEvent:a,dropEvent:l});return g&&p.steps.length?(l=new DragEvent("drop"),a=new ClipboardEvent("paste"),p):void 0}})));return c}class te{constructor(e,t){this.splittableMarks=[],this.editor=t,this.extensions=te.resolve(e),this.schema=function(e,t){var n;const r=j(e),{nodeExtensions:o,markExtensions:i}=L(e),a=null===(n=o.find((e=>I(e,"topNode"))))||void 0===n?void 0:n.name,l=Object.fromEntries(o.map((n=>{const o=r.filter((e=>e.type===n.name)),i={name:n.name,options:n.options,storage:n.storage,editor:t},s=U({...e.reduce(((e,t)=>{const r=I(t,"extendNodeSchema",i);return{...e,...r?r(n):{}}}),{}),content:H(I(n,"content",i)),marks:H(I(n,"marks",i)),group:H(I(n,"group",i)),inline:H(I(n,"inline",i)),atom:H(I(n,"atom",i)),selectable:H(I(n,"selectable",i)),draggable:H(I(n,"draggable",i)),code:H(I(n,"code",i)),defining:H(I(n,"defining",i)),isolating:H(I(n,"isolating",i)),attrs:Object.fromEntries(o.map((e=>{var t;return[e.name,{default:null===(t=null==e?void 0:e.attribute)||void 0===t?void 0:t.default}]})))}),a=H(I(n,"parseHTML",i));a&&(s.parseDOM=a.map((e=>W(e,o))));const l=I(n,"renderHTML",i);l&&(s.toDOM=e=>l({node:e,HTMLAttributes:z(e,o)}));const c=I(n,"renderText",i);return c&&(s.toText=c),[n.name,s]}))),c=Object.fromEntries(i.map((n=>{const o=r.filter((e=>e.type===n.name)),i={name:n.name,options:n.options,storage:n.storage,editor:t},s=U({...e.reduce(((e,t)=>{const r=I(t,"extendMarkSchema",i);return{...e,...r?r(n):{}}}),{}),inclusive:H(I(n,"inclusive",i)),excludes:H(I(n,"excludes",i)),group:H(I(n,"group",i)),spanning:H(I(n,"spanning",i)),code:H(I(n,"code",i)),attrs:Object.fromEntries(o.map((e=>{var t;return[e.name,{default:null===(t=null==e?void 0:e.attribute)||void 0===t?void 0:t.default}]})))}),a=H(I(n,"parseHTML",i));a&&(s.parseDOM=a.map((e=>W(e,o))));const l=I(n,"renderHTML",i);return l&&(s.toDOM=e=>l({mark:e,HTMLAttributes:z(e,o)})),[n.name,s]})));return new s.V_({topNode:a,nodes:l,marks:c})}(this.extensions,t),this.extensions.forEach((e=>{var t;this.editor.extensionStorage[e.name]=e.storage;const n={name:e.name,options:e.options,storage:e.storage,editor:this.editor,type:V(e.name,this.schema)};"mark"===e.type&&(null===(t=H(I(e,"keepOnSplit",n)))||void 0===t||t)&&this.splittableMarks.push(e.name);const r=I(e,"onBeforeCreate",n);r&&this.editor.on("beforeCreate",r);const o=I(e,"onCreate",n);o&&this.editor.on("create",o);const i=I(e,"onUpdate",n);i&&this.editor.on("update",i);const s=I(e,"onSelectionUpdate",n);s&&this.editor.on("selectionUpdate",s);const a=I(e,"onTransaction",n);a&&this.editor.on("transaction",a);const l=I(e,"onFocus",n);l&&this.editor.on("focus",l);const c=I(e,"onBlur",n);c&&this.editor.on("blur",c);const u=I(e,"onDestroy",n);u&&this.editor.on("destroy",u)}))}static resolve(e){const t=te.sort(te.flatten(e)),n=function(e){const t=e.filter(((t,n)=>e.indexOf(t)!==n));return[...new Set(t)]}(t.map((e=>e.name)));return n.length&&console.warn(`[tiptap warn]: Duplicate extension names found: [${n.map((e=>`'${e}'`)).join(", ")}]. This can lead to issues.`),t}static flatten(e){return e.map((e=>{const t=I(e,"addExtensions",{name:e.name,options:e.options,storage:e.storage});return t?[e,...this.flatten(t())]:e})).flat(10)}static sort(e){return e.sort(((e,t)=>{const n=I(e,"priority")||100,r=I(t,"priority")||100;return n>r?-1:n<r?1:0}))}get commands(){return this.extensions.reduce(((e,t)=>{const n=I(t,"addCommands",{name:t.name,options:t.options,storage:t.storage,editor:this.editor,type:V(t.name,this.schema)});return n?{...e,...n()}:e}),{})}get plugins(){const{editor:e}=this,t=te.sort([...this.extensions].reverse()),n=[],r=[],o=t.map((t=>{const o={name:t.name,options:t.options,storage:t.storage,editor:e,type:V(t.name,this.schema)},s=[],a=I(t,"addKeyboardShortcuts",o);let l={};if("mark"===t.type&&t.config.exitable&&(l.ArrowRight=()=>Qe.handleExit({editor:e,mark:t})),a){const t=Object.fromEntries(Object.entries(a()).map((([t,n])=>[t,()=>n({editor:e})])));l={...l,...t}}const c=(0,i.h)(l);s.push(c);const u=I(t,"addInputRules",o);q(t,e.options.enableInputRules)&&u&&n.push(...u());const h=I(t,"addPasteRules",o);q(t,e.options.enablePasteRules)&&h&&r.push(...h());const d=I(t,"addProseMirrorPlugins",o);if(d){const e=d();s.push(...e)}return s})).flat();return[Z({editor:e,rules:n}),...ee({editor:e,rules:r}),...o]}get attributes(){return j(this.extensions)}get nodeViews(){const{editor:e}=this,{nodeExtensions:t}=L(this.extensions);return Object.fromEntries(t.filter((e=>!!I(e,"addNodeView"))).map((t=>{const n=this.attributes.filter((e=>e.type===t.name)),r={name:t.name,options:t.options,storage:t.storage,editor:e,type:F(t.name,this.schema)},o=I(t,"addNodeView",r);return o?[t.name,(r,i,s,a)=>{const l=z(r,n);return o()({editor:e,node:r,getPos:s,decorations:a,HTMLAttributes:l,extension:t})}]:[]})))}}function ne(e){return"Object"===function(e){return Object.prototype.toString.call(e).slice(8,-1)}(e)&&e.constructor===Object&&Object.getPrototypeOf(e)===Object.prototype}function re(e,t){const n={...e};return ne(e)&&ne(t)&&Object.keys(t).forEach((r=>{ne(t[r])?r in e?n[r]=re(e[r],t[r]):Object.assign(n,{[r]:t[r]}):Object.assign(n,{[r]:t[r]})})),n}class oe{constructor(e={}){this.type="extension",this.name="extension",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=H(I(this,"addOptions",{name:this.name}))),this.storage=H(I(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new oe(e)}configure(e={}){const t=this.extend();return t.options=re(this.options,e),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}extend(e={}){const t=new oe(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=H(I(t,"addOptions",{name:t.name})),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}}function ie(e,t,n){const{from:r,to:o}=t,{blockSeparator:i="\n\n",textSerializers:s={}}=n||{};let a="",l=!0;return e.nodesBetween(r,o,((e,n,c,u)=>{var h;const d=null==s?void 0:s[e.type.name];d?(e.isBlock&&!l&&(a+=i,l=!0),c&&(a+=d({node:e,pos:n,parent:c,index:u,range:t}))):e.isText?(a+=null===(h=null==e?void 0:e.text)||void 0===h?void 0:h.slice(Math.max(r,n)-n,o-n),l=!1):e.isBlock&&!l&&(a+=i,l=!0)})),a}function se(e){return Object.fromEntries(Object.entries(e.nodes).filter((([,e])=>e.spec.toText)).map((([e,t])=>[e,t.spec.toText])))}const ae=oe.create({name:"clipboardTextSerializer",addProseMirrorPlugins(){return[new r.Sy({key:new r.H$("clipboardTextSerializer"),props:{clipboardTextSerializer:()=>{const{editor:e}=this,{state:t,schema:n}=e,{doc:r,selection:o}=t,{ranges:i}=o;return ie(r,{from:Math.min(...i.map((e=>e.$from.pos))),to:Math.max(...i.map((e=>e.$to.pos)))},{textSerializers:se(n)})}}})]}});function le(e,t,n={strict:!0}){const r=Object.keys(t);return!r.length||r.every((r=>n.strict?t[r]===e[r]:Y(t[r])?t[r].test(e[r]):t[r]===e[r]))}function ce(e,t,n={}){return e.find((e=>e.type===t&&le(e.attrs,n)))}function ue(e,t,n={}){return!!ce(e,t,n)}function he(e,t,n={}){if(!e||!t)return;let r=e.parent.childAfter(e.parentOffset);if(e.parentOffset===r.offset&&0!==r.offset&&(r=e.parent.childBefore(e.parentOffset)),!r.node)return;const o=ce([...r.node.marks],t,n);if(!o)return;let i=r.index,s=e.start()+r.offset,a=i+1,l=s+r.node.nodeSize;for(ce([...r.node.marks],t,n);i>0&&o.isInSet(e.parent.child(i-1).marks);)i-=1,s-=e.parent.child(i).nodeSize;for(;a<e.parent.childCount&&ue([...e.parent.child(a).marks],t,n);)l+=e.parent.child(a).nodeSize,a+=1;return{from:s,to:l}}function de(e,t){if("string"==typeof e){if(!t.marks[e])throw Error(`There is no mark type named '${e}'. Maybe you forgot to add the extension?`);return t.marks[e]}return e}function fe(e){return e instanceof r.Bs}function pe(e=0,t=0,n=0){return Math.min(Math.max(e,t),n)}function me(e,t=null){if(!t)return null;const n=r.Y1.atStart(e),o=r.Y1.atEnd(e);if("start"===t||!0===t)return n;if("end"===t)return o;const i=n.from,s=o.to;return"all"===t?r.Bs.create(e,pe(0,i,s),pe(e.content.size,i,s)):r.Bs.create(e,pe(t,i,s),pe(t,i,s))}function ge(){return["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"].includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document}function ye(e){const t=`<body>${e}</body>`;return(new window.DOMParser).parseFromString(t,"text/html").body}function ve(e,t,n){if(n={slice:!0,parseOptions:{},...n},"object"==typeof e&&null!==e)try{return Array.isArray(e)&&e.length>0?s.HY.fromArray(e.map((e=>t.nodeFromJSON(e)))):t.nodeFromJSON(e)}catch(r){return console.warn("[tiptap warn]: Invalid content.","Passed value:",e,"Error:",r),ve("",t,n)}if("string"==typeof e){const r=s.aw.fromSchema(t);return n.slice?r.parseSlice(ye(e),n.parseOptions).content:r.parse(ye(e),n.parseOptions)}return ve("",t,n)}function be(){return"undefined"!=typeof navigator&&/Mac/.test(navigator.platform)}function we(e,t,n={}){const{from:r,to:o,empty:i}=e.selection,s=t?F(t,e.schema):null,a=[];e.doc.nodesBetween(r,o,((e,t)=>{if(e.isText)return;const n=Math.max(r,t),i=Math.min(o,t+e.nodeSize);a.push({node:e,from:n,to:i})}));const l=o-r,c=a.filter((e=>!s||s.name===e.node.type.name)).filter((e=>le(e.node.attrs,n,{strict:!1})));return i?!!c.length:c.reduce(((e,t)=>e+t.to-t.from),0)>=l}function xe(e,t){return t.nodes[e]?"node":t.marks[e]?"mark":null}function Se(e,t){const n="string"==typeof t?[t]:t;return Object.keys(e).reduce(((t,r)=>(n.includes(r)||(t[r]=e[r]),t)),{})}function ke(e,t,n={}){return ve(e,t,{slice:!1,parseOptions:n})}function Ce(e,t){const n=de(t,e.schema),{from:r,to:o,empty:i}=e.selection,s=[];i?(e.storedMarks&&s.push(...e.storedMarks),s.push(...e.selection.$head.marks())):e.doc.nodesBetween(r,o,(e=>{s.push(...e.marks)}));const a=s.find((e=>e.type.name===n.name));return a?{...a.attrs}:{}}function Me(e,t){const n=new a.wx(e);return t.forEach((e=>{e.steps.forEach((e=>{n.step(e)}))})),n}function Oe(e,t,n){const r=[];return e.nodesBetween(t.from,t.to,((e,t)=>{n(e)&&r.push({node:e,pos:t})})),r}function Ee(e,t){for(let n=e.depth;n>0;n-=1){const r=e.node(n);if(t(r))return{pos:n>0?e.before(n):0,start:e.start(n),depth:n,node:r}}}function Ae(e){return t=>Ee(t.$from,e)}function Te(e,t){const n=xe("string"==typeof t?t:t.name,e.schema);return"node"===n?function(e,t){const n=F(t,e.schema),{from:r,to:o}=e.selection,i=[];e.doc.nodesBetween(r,o,(e=>{i.push(e)}));const s=i.reverse().find((e=>e.type.name===n.name));return s?{...s.attrs}:{}}(e,t):"mark"===n?Ce(e,t):{}}function De(e){const{mapping:t,steps:n}=e,r=[];return t.maps.forEach(((e,o)=>{const i=[];if(e.ranges.length)e.forEach(((e,t)=>{i.push({from:e,to:t})}));else{const{from:e,to:t}=n[o];if(void 0===e||void 0===t)return;i.push({from:e,to:t})}i.forEach((({from:e,to:n})=>{const i=t.slice(o).map(e,-1),s=t.slice(o).map(n),a=t.invert().map(i,-1),l=t.invert().map(s);r.push({oldRange:{from:a,to:l},newRange:{from:i,to:s}})}))})),function(e){const t=function(e,t=JSON.stringify){const n={};return e.filter((e=>{const r=t(e);return!Object.prototype.hasOwnProperty.call(n,r)&&(n[r]=!0)}))}(e);return 1===t.length?t:t.filter(((e,n)=>!t.filter(((e,t)=>t!==n)).some((t=>e.oldRange.from>=t.oldRange.from&&e.oldRange.to<=t.oldRange.to&&e.newRange.from>=t.newRange.from&&e.newRange.to<=t.newRange.to))))}(r)}function _e(e,t,n){const r=[];return e===t?n.resolve(e).marks().forEach((t=>{const o=he(n.resolve(e-1),t.type);o&&r.push({mark:t,...o})})):n.nodesBetween(e,t,((e,t)=>{r.push(...e.marks.map((n=>({from:t,to:t+e.nodeSize,mark:n}))))})),r}function Re(e,t,n){return Object.fromEntries(Object.entries(n).filter((([n])=>{const r=e.find((e=>e.type===t&&e.name===n));return!!r&&r.attribute.keepOnSplit})))}function Ne(e,t,n={}){const{empty:r,ranges:o}=e.selection,i=t?de(t,e.schema):null;if(r)return!!(e.storedMarks||e.selection.$from.marks()).filter((e=>!i||i.name===e.type.name)).find((e=>le(e.attrs,n,{strict:!1})));let s=0;const a=[];if(o.forEach((({$from:t,$to:n})=>{const r=t.pos,o=n.pos;e.doc.nodesBetween(r,o,((e,t)=>{if(!e.isText&&!e.marks.length)return;const n=Math.max(r,t),i=Math.min(o,t+e.nodeSize);s+=i-n,a.push(...e.marks.map((e=>({mark:e,from:n,to:i}))))}))})),0===s)return!1;const l=a.filter((e=>!i||i.name===e.mark.type.name)).filter((e=>le(e.mark.attrs,n,{strict:!1}))).reduce(((e,t)=>e+t.to-t.from),0),c=a.filter((e=>!i||e.mark.type!==i&&e.mark.type.excludes(i))).reduce(((e,t)=>e+t.to-t.from),0);return(l>0?l+c:l)>=s}function Pe(e,t){const{nodeExtensions:n}=L(t),r=n.find((t=>t.name===e));if(!r)return!1;const o=H(I(r,"group",{name:r.name,options:r.options,storage:r.storage}));return"string"==typeof o&&o.split(" ").includes("list")}function Ie(e){var t;const n=null===(t=e.type.createAndFill())||void 0===t?void 0:t.toJSON(),r=e.toJSON();return JSON.stringify(n)===JSON.stringify(r)}function Le(e,t){const n=e.storedMarks||e.selection.$to.parentOffset&&e.selection.$from.marks();if(n){const r=n.filter((e=>null==t?void 0:t.includes(e.type.name)));e.tr.ensureMarks(r)}}const je=(e,t)=>{const n=Ae((e=>e.type===t))(e.selection);if(!n)return!0;const r=e.doc.resolve(Math.max(0,n.pos-1)).before(n.depth);if(void 0===r)return!0;const o=e.doc.nodeAt(r);return n.node.type!==(null==o?void 0:o.type)||!(0,a.Mn)(e.doc,n.pos)||(e.join(n.pos),!0)},Fe=(e,t)=>{const n=Ae((e=>e.type===t))(e.selection);if(!n)return!0;const r=e.doc.resolve(n.start).after(n.depth);if(void 0===r)return!0;const o=e.doc.nodeAt(r);return n.node.type!==(null==o?void 0:o.type)||!(0,a.Mn)(e.doc,r)||(e.join(r),!0)};var Be=Object.freeze({__proto__:null,blur:()=>({editor:e,view:t})=>(requestAnimationFrame((()=>{var n;e.isDestroyed||(t.dom.blur(),null===(n=null===window||void 0===window?void 0:window.getSelection())||void 0===n||n.removeAllRanges())})),!0),clearContent:(e=!1)=>({commands:t})=>t.setContent("",e),clearNodes:()=>({state:e,tr:t,dispatch:n})=>{const{selection:r}=t,{ranges:o}=r;return!n||(o.forEach((({$from:n,$to:r})=>{e.doc.nodesBetween(n.pos,r.pos,((e,n)=>{if(e.type.isText)return;const{doc:r,mapping:o}=t,i=r.resolve(o.map(n)),s=r.resolve(o.map(n+e.nodeSize)),l=i.blockRange(s);if(!l)return;const c=(0,a.k9)(l);if(e.type.isTextblock){const{defaultType:e}=i.parent.contentMatchAt(i.index());t.setNodeMarkup(l.start,e)}(c||0===c)&&t.lift(l,c)}))})),!0)},command:e=>t=>e(t),createParagraphNear:()=>({state:e,dispatch:t})=>b(e,t),cut:(e,t)=>({editor:n,tr:o})=>{const{state:i}=n,s=i.doc.slice(e.from,e.to);o.deleteRange(e.from,e.to);const a=o.mapping.map(t);return o.insert(a,s.content),o.setSelection(new r.Bs(o.doc.resolve(a-1))),!0},deleteCurrentNode:()=>({tr:e,dispatch:t})=>{const{selection:n}=e,r=n.$anchor.node();if(r.content.size>0)return!1;const o=e.selection.$anchor;for(let n=o.depth;n>0;n-=1)if(o.node(n).type===r.type){if(t){const t=o.before(n),r=o.after(n);e.delete(t,r).scrollIntoView()}return!0}return!1},deleteNode:e=>({tr:t,state:n,dispatch:r})=>{const o=F(e,n.schema),i=t.selection.$anchor;for(let e=i.depth;e>0;e-=1)if(i.node(e).type===o){if(r){const n=i.before(e),r=i.after(e);t.delete(n,r).scrollIntoView()}return!0}return!1},deleteRange:e=>({tr:t,dispatch:n})=>{const{from:r,to:o}=e;return n&&t.delete(r,o),!0},deleteSelection:()=>({state:e,dispatch:t})=>l(e,t),enter:()=>({commands:e})=>e.keyboardShortcut("Enter"),exitCode:()=>({state:e,dispatch:t})=>v(e,t),extendMarkRange:(e,t={})=>({tr:n,state:o,dispatch:i})=>{const s=de(e,o.schema),{doc:a,selection:l}=n,{$from:c,from:u,to:h}=l;if(i){const e=he(c,s,t);if(e&&e.from<=u&&e.to>=h){const t=r.Bs.create(a,e.from,e.to);n.setSelection(t)}}return!0},first:e=>t=>{const n="function"==typeof e?e(t):e;for(let e=0;e<n.length;e+=1)if(n[e](t))return!0;return!1},focus:(e=null,t={})=>({editor:n,view:r,tr:o,dispatch:i})=>{t={scrollIntoView:!0,...t};const s=()=>{ge()&&r.dom.focus(),requestAnimationFrame((()=>{n.isDestroyed||(r.focus(),(null==t?void 0:t.scrollIntoView)&&n.commands.scrollIntoView())}))};if(r.hasFocus()&&null===e||!1===e)return!0;if(i&&null===e&&!fe(n.state.selection))return s(),!0;const a=me(o.doc,e)||n.state.selection,l=n.state.selection.eq(a);return i&&(l||o.setSelection(a),l&&o.storedMarks&&o.setStoredMarks(o.storedMarks),s()),!0},forEach:(e,t)=>n=>e.every(((e,r)=>t(e,{...n,index:r}))),insertContent:(e,t)=>({tr:n,commands:r})=>r.insertContentAt({from:n.selection.from,to:n.selection.to},e,t),insertContentAt:(e,t,n)=>({tr:o,dispatch:i,editor:s})=>{if(i){n={parseOptions:{},updateSelection:!0,...n};const i=ve(t,s.schema,{parseOptions:{preserveWhitespace:"full",...n.parseOptions}});if("<>"===i.toString())return!0;let{from:l,to:c}="number"==typeof e?{from:e,to:e}:{from:e.from,to:e.to},u=!0,h=!0;if((i.toString().startsWith("<")?i:[i]).forEach((e=>{e.check(),u=!!u&&e.isText&&0===e.marks.length,h=!!h&&e.isBlock})),l===c&&h){const{parent:e}=o.doc.resolve(l);e.isTextblock&&!e.type.spec.code&&!e.childCount&&(l-=1,c+=1)}u?Array.isArray(t)?o.insertText(t.map((e=>e.text||"")).join(""),l,c):"object"==typeof t&&t&&t.text?o.insertText(t.text,l,c):o.insertText(t,l,c):o.replaceWith(l,c,i),n.updateSelection&&function(e,t,n){const o=e.steps.length-1;if(o<t)return;const i=e.steps[o];if(!(i instanceof a.Pu||i instanceof a.FC))return;const s=e.mapping.maps[o];let l=0;s.forEach(((e,t,n,r)=>{0===l&&(l=r)})),e.setSelection(r.Y1.near(e.doc.resolve(l),-1))}(o,o.steps.length-1)}return!0},joinUp:()=>({state:e,dispatch:t})=>((e,t)=>{let n,o=e.selection,i=o instanceof r.qv;if(i){if(o.node.isTextblock||!(0,a.Mn)(e.doc,o.from))return!1;n=o.from}else if(n=(0,a.GJ)(e.doc,o.from,-1),null==n)return!1;if(t){let o=e.tr.join(n);i&&o.setSelection(r.qv.create(o.doc,n-e.doc.resolve(n).nodeBefore.nodeSize)),t(o.scrollIntoView())}return!0})(e,t),joinDown:()=>({state:e,dispatch:t})=>((e,t)=>{let n,o=e.selection;if(o instanceof r.qv){if(o.node.isTextblock||!(0,a.Mn)(e.doc,o.to))return!1;n=o.to}else if(n=(0,a.GJ)(e.doc,o.to,1),null==n)return!1;return t&&t(e.tr.join(n).scrollIntoView()),!0})(e,t),joinBackward:()=>({state:e,dispatch:t})=>c(e,t),joinForward:()=>({state:e,dispatch:t})=>f(e,t),joinItemBackward:()=>({tr:e,state:t,dispatch:n})=>{try{const r=(0,a.GJ)(t.doc,t.selection.$from.pos,-1);return null!=r&&(e.join(r,2),n&&n(e),!0)}catch{return!1}},joinItemForward:()=>({state:e,dispatch:t,tr:n})=>{try{const r=(0,a.GJ)(e.doc,e.selection.$from.pos,1);return null!=r&&(n.join(r,2),t&&t(n),!0)}catch(e){return!1}},keyboardShortcut:e=>({editor:t,view:n,tr:r,dispatch:o})=>{const i=function(e){const t=e.split(/-(?!$)/);let n,r,o,i,s=t[t.length-1];"Space"===s&&(s=" ");for(let e=0;e<t.length-1;e+=1){const s=t[e];if(/^(cmd|meta|m)$/i.test(s))i=!0;else if(/^a(lt)?$/i.test(s))n=!0;else if(/^(c|ctrl|control)$/i.test(s))r=!0;else if(/^s(hift)?$/i.test(s))o=!0;else{if(!/^mod$/i.test(s))throw new Error(`Unrecognized modifier name: ${s}`);ge()||be()?i=!0:r=!0}}return n&&(s=`Alt-${s}`),r&&(s=`Ctrl-${s}`),i&&(s=`Meta-${s}`),o&&(s=`Shift-${s}`),s}(e).split(/-(?!$)/),s=i.find((e=>!["Alt","Ctrl","Meta","Shift"].includes(e))),a=new KeyboardEvent("keydown",{key:"Space"===s?" ":s,altKey:i.includes("Alt"),ctrlKey:i.includes("Ctrl"),metaKey:i.includes("Meta"),shiftKey:i.includes("Shift"),bubbles:!0,cancelable:!0}),l=t.captureTransaction((()=>{n.someProp("handleKeyDown",(e=>e(n,a)))}));return null==l||l.steps.forEach((e=>{const t=e.map(r.mapping);t&&o&&r.maybeStep(t)})),!0},lift:(e,t={})=>({state:n,dispatch:r})=>!!we(n,F(e,n.schema),t)&&((e,t)=>{let{$from:n,$to:r}=e.selection,o=n.blockRange(r),i=o&&(0,a.k9)(o);return null!=i&&(t&&t(e.tr.lift(o,i).scrollIntoView()),!0)})(n,r),liftEmptyBlock:()=>({state:e,dispatch:t})=>w(e,t),liftListItem:e=>({state:t,dispatch:n})=>{return(r=F(e,t.schema),function(e,t){let{$from:n,$to:o}=e.selection,i=n.blockRange(o,(e=>e.childCount>0&&e.firstChild.type==r));return!!i&&(!t||(n.node(i.depth-1).type==r?function(e,t,n,r){let o=e.tr,i=r.end,l=r.$to.end(r.depth);i<l&&(o.step(new a.FC(i-1,l,i,l,new s.p2(s.HY.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new s.Ts(o.doc.resolve(r.$from.pos),o.doc.resolve(l),r.depth));const c=(0,a.k9)(r);if(null==c)return!1;o.lift(r,c);let u=o.mapping.map(i,-1)-1;return(0,a.Mn)(o.doc,u)&&o.join(u),t(o.scrollIntoView()),!0}(e,t,r,i):function(e,t,n){let r=e.tr,o=n.parent;for(let e=n.end,t=n.endIndex-1,i=n.startIndex;t>i;t--)e-=o.child(t).nodeSize,r.delete(e-1,e+1);let i=r.doc.resolve(n.start),l=i.nodeAfter;if(r.mapping.map(n.end)!=n.start+i.nodeAfter.nodeSize)return!1;let c=0==n.startIndex,u=n.endIndex==o.childCount,h=i.node(-1),d=i.index(-1);if(!h.canReplace(d+(c?0:1),d+1,l.content.append(u?s.HY.empty:s.HY.from(o))))return!1;let f=i.pos,p=f+l.nodeSize;return r.step(new a.FC(f-(c?1:0),p+(u?1:0),f+1,p-1,new s.p2((c?s.HY.empty:s.HY.from(o.copy(s.HY.empty))).append(u?s.HY.empty:s.HY.from(o.copy(s.HY.empty))),c?0:1,u?0:1),c?0:1)),t(r.scrollIntoView()),!0}(e,t,i)))})(t,n);var r},newlineInCode:()=>({state:e,dispatch:t})=>g(e,t),resetAttributes:(e,t)=>({tr:n,state:r,dispatch:o})=>{let i=null,s=null;const a=xe("string"==typeof e?e:e.name,r.schema);return!!a&&("node"===a&&(i=F(e,r.schema)),"mark"===a&&(s=de(e,r.schema)),o&&n.selection.ranges.forEach((e=>{r.doc.nodesBetween(e.$from.pos,e.$to.pos,((e,r)=>{i&&i===e.type&&n.setNodeMarkup(r,void 0,Se(e.attrs,t)),s&&e.marks.length&&e.marks.forEach((o=>{s===o.type&&n.addMark(r,r+e.nodeSize,s.create(Se(o.attrs,t)))}))}))})),!0)},scrollIntoView:()=>({tr:e,dispatch:t})=>(t&&e.scrollIntoView(),!0),selectAll:()=>({tr:e,commands:t})=>t.setTextSelection({from:0,to:e.doc.content.size}),selectNodeBackward:()=>({state:e,dispatch:t})=>h(e,t),selectNodeForward:()=>({state:e,dispatch:t})=>p(e,t),selectParentNode:()=>({state:e,dispatch:t})=>((e,t)=>{let n,{$from:o,to:i}=e.selection,s=o.sharedDepth(i);return 0!=s&&(n=o.before(s),t&&t(e.tr.setSelection(r.qv.create(e.doc,n))),!0)})(e,t),selectTextblockEnd:()=>({state:e,dispatch:t})=>M(e,t),selectTextblockStart:()=>({state:e,dispatch:t})=>C(e,t),setContent:(e,t=!1,n={})=>({tr:r,editor:o,dispatch:i})=>{const{doc:s}=r,a=ke(e,o.schema,n);return i&&r.replaceWith(0,s.content.size,a).setMeta("preventUpdate",!t),!0},setMark:(e,t={})=>({tr:n,state:r,dispatch:o})=>{const{selection:i}=n,{empty:s,ranges:a}=i,l=de(e,r.schema);if(o)if(s){const e=Ce(r,l);n.addStoredMark(l.create({...e,...t}))}else a.forEach((e=>{const o=e.$from.pos,i=e.$to.pos;r.doc.nodesBetween(o,i,((e,r)=>{const s=Math.max(r,o),a=Math.min(r+e.nodeSize,i);e.marks.find((e=>e.type===l))?e.marks.forEach((e=>{l===e.type&&n.addMark(s,a,l.create({...e.attrs,...t}))})):n.addMark(s,a,l.create(t))}))}));return function(e,t,n){var r;const{selection:o}=t;let i=null;if(fe(o)&&(i=o.$cursor),i){const t=null!==(r=e.storedMarks)&&void 0!==r?r:i.marks();return!!n.isInSet(t)||!t.some((e=>e.type.excludes(n)))}const{ranges:s}=o;return s.some((({$from:t,$to:r})=>{let o=0===t.depth&&e.doc.inlineContent&&e.doc.type.allowsMarkType(n);return e.doc.nodesBetween(t.pos,r.pos,((e,t,r)=>{if(o)return!1;if(e.isInline){const t=!r||r.type.allowsMarkType(n),i=!!n.isInSet(e.marks)||!e.marks.some((e=>e.type.excludes(n)));o=t&&i}return!o})),o}))}(r,n,l)},setMeta:(e,t)=>({tr:n})=>(n.setMeta(e,t),!0),setNode:(e,t={})=>({state:n,dispatch:r,chain:o})=>{const i=F(e,n.schema);return i.isTextblock?o().command((({commands:e})=>!!O(i,t)(n)||e.clearNodes())).command((({state:e})=>O(i,t)(e,r))).run():(console.warn('[tiptap warn]: Currently "setNode()" only supports text block nodes.'),!1)},setNodeSelection:e=>({tr:t,dispatch:n})=>{if(n){const{doc:n}=t,o=pe(e,0,n.content.size),i=r.qv.create(n,o);t.setSelection(i)}return!0},setTextSelection:e=>({tr:t,dispatch:n})=>{if(n){const{doc:n}=t,{from:o,to:i}="number"==typeof e?{from:e,to:e}:e,s=r.Bs.atStart(n).from,a=r.Bs.atEnd(n).to,l=pe(o,s,a),c=pe(i,s,a),u=r.Bs.create(n,l,c);t.setSelection(u)}return!0},sinkListItem:e=>({state:t,dispatch:n})=>{const r=F(e,t.schema);return(o=r,function(e,t){let{$from:n,$to:r}=e.selection,i=n.blockRange(r,(e=>e.childCount>0&&e.firstChild.type==o));if(!i)return!1;let l=i.startIndex;if(0==l)return!1;let c=i.parent,u=c.child(l-1);if(u.type!=o)return!1;if(t){let n=u.lastChild&&u.lastChild.type==c.type,r=s.HY.from(n?o.create():null),l=new s.p2(s.HY.from(o.create(null,s.HY.from(c.type.create(null,r)))),n?3:1,0),h=i.start,d=i.end;t(e.tr.step(new a.FC(h-(n?3:1),d,h,d,l,1,!0)).scrollIntoView())}return!0})(t,n);var o},splitBlock:({keepMarks:e=!0}={})=>({tr:t,state:n,dispatch:o,editor:i})=>{const{selection:s,doc:l}=t,{$from:c,$to:u}=s,h=Re(i.extensionManager.attributes,c.node().type.name,c.node().attrs);if(s instanceof r.qv&&s.node.isBlock)return!(!c.parentOffset||!(0,a.Ax)(l,c.pos)||(o&&(e&&Le(n,i.extensionManager.splittableMarks),t.split(c.pos).scrollIntoView()),0));if(!c.parent.isBlock)return!1;if(o){const o=u.parentOffset===u.parent.content.size;s instanceof r.Bs&&t.deleteSelection();const l=0===c.depth?void 0:function(e){for(let t=0;t<e.edgeCount;t+=1){const{type:n}=e.edge(t);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}(c.node(-1).contentMatchAt(c.indexAfter(-1)));let d=o&&l?[{type:l,attrs:h}]:void 0,f=(0,a.Ax)(t.doc,t.mapping.map(c.pos),1,d);if(d||f||!(0,a.Ax)(t.doc,t.mapping.map(c.pos),1,l?[{type:l}]:void 0)||(f=!0,d=l?[{type:l,attrs:h}]:void 0),f&&(t.split(t.mapping.map(c.pos),1,d),l&&!o&&!c.parentOffset&&c.parent.type!==l)){const e=t.mapping.map(c.before()),n=t.doc.resolve(e);c.node(-1).canReplaceWith(n.index(),n.index()+1,l)&&t.setNodeMarkup(t.mapping.map(c.before()),l)}e&&Le(n,i.extensionManager.splittableMarks),t.scrollIntoView()}return!0},splitListItem:e=>({tr:t,state:n,dispatch:o,editor:i})=>{var l;const c=F(e,n.schema),{$from:u,$to:h}=n.selection,d=n.selection.node;if(d&&d.isBlock||u.depth<2||!u.sameParent(h))return!1;const f=u.node(-1);if(f.type!==c)return!1;const p=i.extensionManager.attributes;if(0===u.parent.content.size&&u.node(-1).childCount===u.indexAfter(-1)){if(2===u.depth||u.node(-3).type!==c||u.index(-2)!==u.node(-2).childCount-1)return!1;if(o){let e=s.HY.empty;const n=u.index(-1)?1:u.index(-2)?2:3;for(let t=u.depth-n;t>=u.depth-3;t-=1)e=s.HY.from(u.node(t).copy(e));const o=u.indexAfter(-1)<u.node(-2).childCount?1:u.indexAfter(-2)<u.node(-3).childCount?2:3,i=Re(p,u.node().type.name,u.node().attrs),a=(null===(l=c.contentMatch.defaultType)||void 0===l?void 0:l.createAndFill(i))||void 0;e=e.append(s.HY.from(c.createAndFill(null,a)||void 0));const h=u.before(u.depth-(n-1));t.replace(h,u.after(-o),new s.p2(e,4-n,0));let d=-1;t.doc.nodesBetween(h,t.doc.content.size,((e,t)=>{if(d>-1)return!1;e.isTextblock&&0===e.content.size&&(d=t+1)})),d>-1&&t.setSelection(r.Bs.near(t.doc.resolve(d))),t.scrollIntoView()}return!0}const m=h.pos===u.end()?f.contentMatchAt(0).defaultType:null,g=Re(p,f.type.name,f.attrs),y=Re(p,u.node().type.name,u.node().attrs);t.delete(u.pos,h.pos);const v=m?[{type:c,attrs:g},{type:m,attrs:y}]:[{type:c,attrs:g}];if(!(0,a.Ax)(t.doc,u.pos,2))return!1;if(o){const{selection:e,storedMarks:r}=n,{splittableMarks:s}=i.extensionManager,a=r||e.$to.parentOffset&&e.$from.marks();if(t.split(u.pos,2,v).scrollIntoView(),!a||!o)return!0;const l=a.filter((e=>s.includes(e.type.name)));t.ensureMarks(l)}return!0},toggleList:(e,t,n,r={})=>({editor:o,tr:i,state:s,dispatch:a,chain:l,commands:c,can:u})=>{const{extensions:h,splittableMarks:d}=o.extensionManager,f=F(e,s.schema),p=F(t,s.schema),{selection:m,storedMarks:g}=s,{$from:y,$to:v}=m,b=y.blockRange(v),w=g||m.$to.parentOffset&&m.$from.marks();if(!b)return!1;const x=Ae((e=>Pe(e.type.name,h)))(m);if(b.depth>=1&&x&&b.depth-x.depth<=1){if(x.node.type===f)return c.liftListItem(p);if(Pe(x.node.type.name,h)&&f.validContent(x.node.content)&&a)return l().command((()=>(i.setNodeMarkup(x.pos,f),!0))).command((()=>je(i,f))).command((()=>Fe(i,f))).run()}return n&&w&&a?l().command((()=>{const e=u().wrapInList(f,r),t=w.filter((e=>d.includes(e.type.name)));return i.ensureMarks(t),!!e||c.clearNodes()})).wrapInList(f,r).command((()=>je(i,f))).command((()=>Fe(i,f))).run():l().command((()=>!!u().wrapInList(f,r)||c.clearNodes())).wrapInList(f,r).command((()=>je(i,f))).command((()=>Fe(i,f))).run()},toggleMark:(e,t={},n={})=>({state:r,commands:o})=>{const{extendEmptyMarkRange:i=!1}=n,s=de(e,r.schema);return Ne(r,s,t)?o.unsetMark(s,{extendEmptyMarkRange:i}):o.setMark(s,t)},toggleNode:(e,t,n={})=>({state:r,commands:o})=>{const i=F(e,r.schema),s=F(t,r.schema);return we(r,i,n)?o.setNode(s):o.setNode(i,n)},toggleWrap:(e,t={})=>({state:n,commands:r})=>{const o=F(e,n.schema);return we(n,o,t)?r.lift(o):r.wrapIn(o,t)},undoInputRule:()=>({state:e,dispatch:t})=>{const n=e.plugins;for(let r=0;r<n.length;r+=1){const o=n[r];let i;if(o.spec.isInputRules&&(i=o.getState(e))){if(t){const t=e.tr,n=i.transform;for(let e=n.steps.length-1;e>=0;e-=1)t.step(n.steps[e].invert(n.docs[e]));if(i.text){const n=t.doc.resolve(i.from).marks();t.replaceWith(i.from,i.to,e.schema.text(i.text,n))}else t.delete(i.from,i.to)}return!0}}return!1},unsetAllMarks:()=>({tr:e,dispatch:t})=>{const{selection:n}=e,{empty:r,ranges:o}=n;return r||t&&o.forEach((t=>{e.removeMark(t.$from.pos,t.$to.pos)})),!0},unsetMark:(e,t={})=>({tr:n,state:r,dispatch:o})=>{var i;const{extendEmptyMarkRange:s=!1}=t,{selection:a}=n,l=de(e,r.schema),{$from:c,empty:u,ranges:h}=a;if(!o)return!0;if(u&&s){let{from:e,to:t}=a;const r=null===(i=c.marks().find((e=>e.type===l)))||void 0===i?void 0:i.attrs,o=he(c,l,r);o&&(e=o.from,t=o.to),n.removeMark(e,t,l)}else h.forEach((e=>{n.removeMark(e.$from.pos,e.$to.pos,l)}));return n.removeStoredMark(l),!0},updateAttributes:(e,t={})=>({tr:n,state:r,dispatch:o})=>{let i=null,s=null;const a=xe("string"==typeof e?e:e.name,r.schema);return!!a&&("node"===a&&(i=F(e,r.schema)),"mark"===a&&(s=de(e,r.schema)),o&&n.selection.ranges.forEach((e=>{const o=e.$from.pos,a=e.$to.pos;r.doc.nodesBetween(o,a,((e,r)=>{i&&i===e.type&&n.setNodeMarkup(r,void 0,{...e.attrs,...t}),s&&e.marks.length&&e.marks.forEach((i=>{if(s===i.type){const l=Math.max(r,o),c=Math.min(r+e.nodeSize,a);n.addMark(l,c,s.create({...i.attrs,...t}))}}))}))})),!0)},wrapIn:(e,t={})=>({state:n,dispatch:r})=>function(e,t=null){return function(n,r){let{$from:o,$to:i}=n.selection,s=o.blockRange(i),l=s&&(0,a.nd)(s,e,t);return!!l&&(r&&r(n.tr.wrap(s,l).scrollIntoView()),!0)}}(F(e,n.schema),t)(n,r),wrapInList:(e,t={})=>({state:n,dispatch:r})=>function(e,t=null){return function(n,r){let{$from:o,$to:i}=n.selection,l=o.blockRange(i),c=!1,u=l;if(!l)return!1;if(l.depth>=2&&o.node(l.depth-1).type.compatibleContent(e)&&0==l.startIndex){if(0==o.index(l.depth-1))return!1;let e=n.doc.resolve(l.start-2);u=new s.Ts(e,e,l.depth),l.endIndex<l.parent.childCount&&(l=new s.Ts(o,n.doc.resolve(i.end(l.depth)),l.depth)),c=!0}let h=(0,a.nd)(u,e,t,l);return!!h&&(r&&r(function(e,t,n,r,o){let i=s.HY.empty;for(let e=n.length-1;e>=0;e--)i=s.HY.from(n[e].type.create(n[e].attrs,i));e.step(new a.FC(t.start-(r?2:0),t.end,t.start,t.end,new s.p2(i,0,0),n.length,!0));let l=0;for(let e=0;e<n.length;e++)n[e].type==o&&(l=e+1);let c=n.length-l,u=t.start+n.length-(r?2:0),h=t.parent;for(let n=t.startIndex,r=t.endIndex,o=!0;n<r;n++,o=!1)!o&&(0,a.Ax)(e.doc,u,c)&&(e.split(u,c),u+=2*c),u+=h.child(n).nodeSize;return e}(n.tr,l,h,c,e).scrollIntoView()),!0)}}(F(e,n.schema),t)(n,r)});const ze=oe.create({name:"commands",addCommands:()=>({...Be})}),$e=oe.create({name:"editable",addProseMirrorPlugins(){return[new r.Sy({key:new r.H$("editable"),props:{editable:()=>this.editor.options.editable}})]}}),He=oe.create({name:"focusEvents",addProseMirrorPlugins(){const{editor:e}=this;return[new r.Sy({key:new r.H$("focusEvents"),props:{handleDOMEvents:{focus:(t,n)=>{e.isFocused=!0;const r=e.state.tr.setMeta("focus",{event:n}).setMeta("addToHistory",!1);return t.dispatch(r),!1},blur:(t,n)=>{e.isFocused=!1;const r=e.state.tr.setMeta("blur",{event:n}).setMeta("addToHistory",!1);return t.dispatch(r),!1}}}})]}}),We=oe.create({name:"keymap",addKeyboardShortcuts(){const e=()=>this.editor.commands.first((({commands:e})=>[()=>e.undoInputRule(),()=>e.command((({tr:t})=>{const{selection:n,doc:o}=t,{empty:i,$anchor:s}=n,{pos:a,parent:l}=s,c=s.parent.isTextblock?t.doc.resolve(a-1):s,u=c.parent.type.spec.isolating,h=s.pos-s.parentOffset,d=u&&1===c.parent.childCount?h===s.pos:r.Y1.atStart(o).from===a;return!(!(i&&d&&l.type.isTextblock)||l.textContent.length)&&e.clearNodes()})),()=>e.deleteSelection(),()=>e.joinBackward(),()=>e.selectNodeBackward()])),t=()=>this.editor.commands.first((({commands:e})=>[()=>e.deleteSelection(),()=>e.deleteCurrentNode(),()=>e.joinForward(),()=>e.selectNodeForward()])),n={Enter:()=>this.editor.commands.first((({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()])),"Mod-Enter":()=>this.editor.commands.exitCode(),Backspace:e,"Mod-Backspace":e,"Shift-Backspace":e,Delete:t,"Mod-Delete":t,"Mod-a":()=>this.editor.commands.selectAll()},o={...n},i={...n,"Ctrl-h":e,"Alt-Backspace":e,"Ctrl-d":t,"Ctrl-Alt-Backspace":t,"Alt-Delete":t,"Alt-d":t,"Ctrl-a":()=>this.editor.commands.selectTextblockStart(),"Ctrl-e":()=>this.editor.commands.selectTextblockEnd()};return ge()||be()?i:o},addProseMirrorPlugins(){return[new r.Sy({key:new r.H$("clearDocument"),appendTransaction:(e,t,n)=>{if(!e.some((e=>e.docChanged))||t.doc.eq(n.doc))return;const{empty:o,from:i,to:s}=t.selection,a=r.Y1.atStart(t.doc).from,l=r.Y1.atEnd(t.doc).to;if(o||i!==a||s!==l)return;if(0!==n.doc.textBetween(0,n.doc.content.size," "," ").length)return;const c=n.tr,u=R({state:n,transaction:c}),{commands:h}=new N({editor:this.editor,state:u});return h.clearNodes(),c.steps.length?c:void 0}})]}}),Ue=oe.create({name:"tabindex",addProseMirrorPlugins(){return[new r.Sy({key:new r.H$("tabindex"),props:{attributes:this.editor.isEditable?{tabindex:"0"}:{}}})]}});var Ve=Object.freeze({__proto__:null,ClipboardTextSerializer:ae,Commands:ze,Editable:$e,FocusEvents:He,Keymap:We,Tabindex:Ue});class qe extends P{constructor(e={}){super(),this.isFocused=!1,this.extensionStorage={},this.options={element:document.createElement("div"),content:"",injectCSS:!0,injectNonce:void 0,extensions:[],autofocus:!1,editable:!0,editorProps:{},parseOptions:{},enableInputRules:!0,enablePasteRules:!0,enableCoreExtensions:!0,onBeforeCreate:()=>null,onCreate:()=>null,onUpdate:()=>null,onSelectionUpdate:()=>null,onTransaction:()=>null,onFocus:()=>null,onBlur:()=>null,onDestroy:()=>null},this.isCapturingTransaction=!1,this.capturedTransaction=null,this.setOptions(e),this.createExtensionManager(),this.createCommandManager(),this.createSchema(),this.on("beforeCreate",this.options.onBeforeCreate),this.emit("beforeCreate",{editor:this}),this.createView(),this.injectCSS(),this.on("create",this.options.onCreate),this.on("update",this.options.onUpdate),this.on("selectionUpdate",this.options.onSelectionUpdate),this.on("transaction",this.options.onTransaction),this.on("focus",this.options.onFocus),this.on("blur",this.options.onBlur),this.on("destroy",this.options.onDestroy),window.setTimeout((()=>{this.isDestroyed||(this.commands.focus(this.options.autofocus),this.emit("create",{editor:this}))}),0)}get storage(){return this.extensionStorage}get commands(){return this.commandManager.commands}chain(){return this.commandManager.chain()}can(){return this.commandManager.can()}injectCSS(){this.options.injectCSS&&document&&(this.css=function(e,t,n){const r=document.querySelector("style[data-tiptap-style]");if(null!==r)return r;const o=document.createElement("style");return t&&o.setAttribute("nonce",t),o.setAttribute("data-tiptap-style",""),o.innerHTML='.ProseMirror {\n position: relative;\n}\n\n.ProseMirror {\n word-wrap: break-word;\n white-space: pre-wrap;\n white-space: break-spaces;\n -webkit-font-variant-ligatures: none;\n font-variant-ligatures: none;\n font-feature-settings: "liga" 0; /* the above doesn\'t seem to work in Edge */\n}\n\n.ProseMirror [contenteditable="false"] {\n white-space: normal;\n}\n\n.ProseMirror [contenteditable="false"] [contenteditable="true"] {\n white-space: pre-wrap;\n}\n\n.ProseMirror pre {\n white-space: pre-wrap;\n}\n\nimg.ProseMirror-separator {\n display: inline !important;\n border: none !important;\n margin: 0 !important;\n width: 1px !important;\n height: 1px !important;\n}\n\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n margin: 0;\n}\n\n.ProseMirror-gapcursor:after {\n content: "";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n\n.ProseMirror-hideselection *::selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection *::-moz-selection {\n background: transparent;\n}\n\n.ProseMirror-hideselection * {\n caret-color: transparent;\n}\n\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n\n.tippy-box[data-animation=fade][data-state=hidden] {\n opacity: 0\n}',document.getElementsByTagName("head")[0].appendChild(o),o}(0,this.options.injectNonce))}setOptions(e={}){this.options={...this.options,...e},this.view&&this.state&&!this.isDestroyed&&(this.options.editorProps&&this.view.setProps(this.options.editorProps),this.view.updateState(this.state))}setEditable(e,t=!0){this.setOptions({editable:e}),t&&this.emit("update",{editor:this,transaction:this.state.tr})}get isEditable(){return this.options.editable&&this.view&&this.view.editable}get state(){return this.view.state}registerPlugin(e,t){const n=$(t)?t(e,[...this.state.plugins]):[...this.state.plugins,e],r=this.state.reconfigure({plugins:n});this.view.updateState(r)}unregisterPlugin(e){if(this.isDestroyed)return;const t="string"==typeof e?`${e}$`:e.key,n=this.state.reconfigure({plugins:this.state.plugins.filter((e=>!e.key.startsWith(t)))});this.view.updateState(n)}createExtensionManager(){const e=[...this.options.enableCoreExtensions?Object.values(Ve):[],...this.options.extensions].filter((e=>["extension","node","mark"].includes(null==e?void 0:e.type)));this.extensionManager=new te(e,this)}createCommandManager(){this.commandManager=new N({editor:this})}createSchema(){this.schema=this.extensionManager.schema}createView(){const e=ke(this.options.content,this.schema,this.options.parseOptions),t=me(e,this.options.autofocus);this.view=new o.tk(this.options.element,{...this.options.editorProps,dispatchTransaction:this.dispatchTransaction.bind(this),state:r.yy.create({doc:e,selection:t||void 0})});const n=this.state.reconfigure({plugins:this.extensionManager.plugins});this.view.updateState(n),this.createNodeViews(),this.prependClass(),this.view.dom.editor=this}createNodeViews(){this.view.setProps({nodeViews:this.extensionManager.nodeViews})}prependClass(){this.view.dom.className=`tiptap ${this.view.dom.className}`}captureTransaction(e){this.isCapturingTransaction=!0,e(),this.isCapturingTransaction=!1;const t=this.capturedTransaction;return this.capturedTransaction=null,t}dispatchTransaction(e){if(this.view.isDestroyed)return;if(this.isCapturingTransaction)return this.capturedTransaction?void e.steps.forEach((e=>{var t;return null===(t=this.capturedTransaction)||void 0===t?void 0:t.step(e)})):void(this.capturedTransaction=e);const t=this.state.apply(e),n=!this.state.selection.eq(t.selection);this.view.updateState(t),this.emit("transaction",{editor:this,transaction:e}),n&&this.emit("selectionUpdate",{editor:this,transaction:e});const r=e.getMeta("focus"),o=e.getMeta("blur");r&&this.emit("focus",{editor:this,event:r.event,transaction:e}),o&&this.emit("blur",{editor:this,event:o.event,transaction:e}),e.docChanged&&!e.getMeta("preventUpdate")&&this.emit("update",{editor:this,transaction:e})}getAttributes(e){return Te(this.state,e)}isActive(e,t){const n="string"==typeof e?e:null,r="string"==typeof e?t:e;return function(e,t,n={}){if(!t)return we(e,null,n)||Ne(e,null,n);const r=xe(t,e.schema);return"node"===r?we(e,t,n):"mark"===r&&Ne(e,t,n)}(this.state,n,r)}getJSON(){return this.state.doc.toJSON()}getHTML(){return function(e,t){const n=s.PW.fromSchema(t).serializeFragment(e),r=document.implementation.createHTMLDocument().createElement("div");return r.appendChild(n),r.innerHTML}(this.state.doc.content,this.schema)}getText(e){const{blockSeparator:t="\n\n",textSerializers:n={}}=e||{};return function(e,t){return ie(e,{from:0,to:e.content.size},t)}(this.state.doc,{blockSeparator:t,textSerializers:{...se(this.schema),...n}})}get isEmpty(){return Ie(this.state.doc)}getCharacterCount(){return console.warn('[tiptap warn]: "editor.getCharacterCount()" is deprecated. Please use "editor.storage.characterCount.characters()" instead.'),this.state.doc.content.size-2}destroy(){this.emit("destroy"),this.view&&this.view.destroy(),this.removeAllListeners()}get isDestroyed(){var e;return!(null===(e=this.view)||void 0===e?void 0:e.docView)}}function Ke(e){return new G({find:e.find,handler:({state:t,range:n,match:r})=>{const o=H(e.getAttributes,void 0,r);if(!1===o||null===o)return null;const{tr:i}=t,s=r[r.length-1],a=r[0];if(s){const r=a.search(/\S/),l=n.from+a.indexOf(s),c=l+s.length;if(_e(n.from,n.to,t.doc).filter((t=>t.mark.type.excluded.find((n=>n===e.type&&n!==t.mark.type)))).filter((e=>e.to>l)).length)return null;c<n.to&&i.delete(c,n.to),l>n.from&&i.delete(n.from+r,l);const u=n.from+r+s.length;i.addMark(n.from+r,u,e.type.create(o||{})),i.removeStoredMark(e.type)}}})}function Ye(e){return new G({find:e.find,handler:({state:t,range:n,match:r})=>{const o=H(e.getAttributes,void 0,r)||{},{tr:i}=t,s=n.from;let a=n.to;const l=e.type.create(o);if(r[1]){let e=s+r[0].lastIndexOf(r[1]);e>a?e=a:a=e+r[1].length;const t=r[0][r[0].length-1];i.insertText(t,s+r[0].length-1),i.replaceWith(e,a,l)}else r[0]&&i.insert(s-1,e.type.create(o)).delete(i.mapping.map(s),i.mapping.map(a));i.scrollIntoView()}})}function Ge(e){return new G({find:e.find,handler:({state:t,range:n,match:r})=>{const o=t.doc.resolve(n.from),i=H(e.getAttributes,void 0,r)||{};if(!o.node(-1).canReplaceWith(o.index(-1),o.indexAfter(-1),e.type))return null;t.tr.delete(n.from,n.to).setBlockType(n.from,n.from,e.type,i)}})}function Je(e){return new G({find:e.find,handler:({state:t,range:n,match:r,chain:o})=>{const i=H(e.getAttributes,void 0,r)||{},s=t.tr.delete(n.from,n.to),l=s.doc.resolve(n.from).blockRange(),c=l&&(0,a.nd)(l,e.type,i);if(!c)return null;if(s.wrap(l,c),e.keepMarks&&e.editor){const{selection:n,storedMarks:r}=t,{splittableMarks:o}=e.editor.extensionManager,i=r||n.$to.parentOffset&&n.$from.marks();if(i){const e=i.filter((e=>o.includes(e.type.name)));s.ensureMarks(e)}}if(e.keepAttributes){const t="bulletList"===e.type.name||"orderedList"===e.type.name?"listItem":"taskList";o().updateAttributes(t,i).run()}const u=s.doc.resolve(n.from-1).nodeBefore;u&&u.type===e.type&&(0,a.Mn)(s.doc,n.from-1)&&(!e.joinPredicate||e.joinPredicate(r,u))&&s.join(n.from-1)}})}class Qe{constructor(e={}){this.type="mark",this.name="mark",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=H(I(this,"addOptions",{name:this.name}))),this.storage=H(I(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new Qe(e)}configure(e={}){const t=this.extend();return t.options=re(this.options,e),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}extend(e={}){const t=new Qe(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=H(I(t,"addOptions",{name:t.name})),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}static handleExit({editor:e,mark:t}){const{tr:n}=e.state,r=e.state.selection.$from;if(r.pos===r.end()){const o=r.marks();if(!o.find((e=>(null==e?void 0:e.type.name)===t.name)))return!1;const i=o.find((e=>(null==e?void 0:e.type.name)===t.name));return i&&n.removeStoredMark(i),n.insertText(" ",r.pos),e.view.dispatch(n),!0}return!1}}class Ze{constructor(e={}){this.type="node",this.name="node",this.parent=null,this.child=null,this.config={name:this.name,defaultOptions:{}},this.config={...this.config,...e},this.name=this.config.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${this.name}".`),this.options=this.config.defaultOptions,this.config.addOptions&&(this.options=H(I(this,"addOptions",{name:this.name}))),this.storage=H(I(this,"addStorage",{name:this.name,options:this.options}))||{}}static create(e={}){return new Ze(e)}configure(e={}){const t=this.extend();return t.options=re(this.options,e),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}extend(e={}){const t=new Ze(e);return t.parent=this,this.child=t,t.name=e.name?e.name:t.parent.name,e.defaultOptions&&console.warn(`[tiptap warn]: BREAKING CHANGE: "defaultOptions" is deprecated. Please use "addOptions" instead. Found in extension: "${t.name}".`),t.options=H(I(t,"addOptions",{name:t.name})),t.storage=H(I(t,"addStorage",{name:t.name,options:t.options})),t}}class Xe{constructor(e,t,n){this.isDragging=!1,this.component=e,this.editor=t.editor,this.options={stopEvent:null,ignoreMutation:null,...n},this.extension=t.extension,this.node=t.node,this.decorations=t.decorations,this.getPos=t.getPos,this.mount()}mount(){}get dom(){return this.editor.view.dom}get contentDOM(){return null}onDragStart(e){var t,n,o,i,s,a,l;const{view:c}=this.editor,u=e.target,h=3===u.nodeType?null===(t=u.parentElement)||void 0===t?void 0:t.closest("[data-drag-handle]"):u.closest("[data-drag-handle]");if(!this.dom||(null===(n=this.contentDOM)||void 0===n?void 0:n.contains(u))||!h)return;let d=0,f=0;if(this.dom!==h){const t=this.dom.getBoundingClientRect(),n=h.getBoundingClientRect(),r=null!==(o=e.offsetX)&&void 0!==o?o:null===(i=e.nativeEvent)||void 0===i?void 0:i.offsetX,l=null!==(s=e.offsetY)&&void 0!==s?s:null===(a=e.nativeEvent)||void 0===a?void 0:a.offsetY;d=n.x-t.x+r,f=n.y-t.y+l}null===(l=e.dataTransfer)||void 0===l||l.setDragImage(this.dom,d,f);const p=r.qv.create(c.state.doc,this.getPos()),m=c.state.tr.setSelection(p);c.dispatch(m)}stopEvent(e){var t;if(!this.dom)return!1;if("function"==typeof this.options.stopEvent)return this.options.stopEvent({event:e});const n=e.target;if(!this.dom.contains(n)||(null===(t=this.contentDOM)||void 0===t?void 0:t.contains(n)))return!1;const o=e.type.startsWith("drag"),i="drop"===e.type;if((["INPUT","BUTTON","SELECT","TEXTAREA"].includes(n.tagName)||n.isContentEditable)&&!i&&!o)return!0;const{isEditable:s}=this.editor,{isDragging:a}=this,l=!!this.node.type.spec.draggable,c=r.qv.isSelectable(this.node),u="copy"===e.type,h="paste"===e.type,d="cut"===e.type,f="mousedown"===e.type;if(!l&&c&&o&&e.preventDefault(),l&&o&&!a)return e.preventDefault(),!1;if(l&&s&&!a&&f){const e=n.closest("[data-drag-handle]");e&&(this.dom===e||this.dom.contains(e))&&(this.isDragging=!0,document.addEventListener("dragend",(()=>{this.isDragging=!1}),{once:!0}),document.addEventListener("drop",(()=>{this.isDragging=!1}),{once:!0}),document.addEventListener("mouseup",(()=>{this.isDragging=!1}),{once:!0}))}return!(a||i||u||h||d||f&&c)}ignoreMutation(e){return!this.dom||!this.contentDOM||("function"==typeof this.options.ignoreMutation?this.options.ignoreMutation({mutation:e}):!(!this.node.isLeaf&&!this.node.isAtom)||"selection"!==e.type&&(!(this.dom.contains(e.target)&&"childList"===e.type&&(ge()||"Android"===navigator.platform||/android/i.test(navigator.userAgent))&&this.editor.isFocused&&[...Array.from(e.addedNodes),...Array.from(e.removedNodes)].every((e=>e.isContentEditable)))&&(this.contentDOM===e.target&&"attributes"===e.type||!this.contentDOM.contains(e.target))))}updateAttributes(e){this.editor.commands.command((({tr:t})=>{const n=this.getPos();return t.setNodeMarkup(n,void 0,{...this.node.attrs,...e}),!0}))}deleteNode(){const e=this.getPos(),t=e+this.node.nodeSize;this.editor.commands.deleteRange({from:e,to:t})}}function et(e){return new X({find:e.find,handler:({state:t,range:n,match:r,pasteEvent:o})=>{const i=H(e.getAttributes,void 0,r,o);if(!1===i||null===i)return null;const{tr:s}=t,a=r[r.length-1],l=r[0];let c=n.to;if(a){const r=l.search(/\S/),o=n.from+l.indexOf(a),u=o+a.length;if(_e(n.from,n.to,t.doc).filter((t=>t.mark.type.excluded.find((n=>n===e.type&&n!==t.mark.type)))).filter((e=>e.to>o)).length)return null;u<n.to&&s.delete(u,n.to),o>n.from&&s.delete(n.from+r,o),c=n.from+r+a.length,s.addMark(n.from+r,c,e.type.create(i||{})),s.removeStoredMark(e.type)}}})}},9734:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>i});var r=n(3845);const o=/^\s*>\s$/,i=r.NB.create({name:"blockquote",addOptions:()=>({HTMLAttributes:{}}),content:"block+",group:"block",defining:!0,parseHTML:()=>[{tag:"blockquote"}],renderHTML({HTMLAttributes:e}){return["blockquote",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setBlockquote:()=>({commands:e})=>e.wrapIn(this.name),toggleBlockquote:()=>({commands:e})=>e.toggleWrap(this.name),unsetBlockquote:()=>({commands:e})=>e.lift(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-b":()=>this.editor.commands.toggleBlockquote()}},addInputRules(){return[(0,r.S0)({find:o,type:this.type})]}})},7937:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>l});var r=n(3845);const o=/(?:^|\s)((?:\*\*)((?:[^*]+))(?:\*\*))$/,i=/(?:^|\s)((?:\*\*)((?:[^*]+))(?:\*\*))/g,s=/(?:^|\s)((?:__)((?:[^__]+))(?:__))$/,a=/(?:^|\s)((?:__)((?:[^__]+))(?:__))/g,l=r.vc.create({name:"bold",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"strong"},{tag:"b",getAttrs:e=>"normal"!==e.style.fontWeight&&null},{style:"font-weight",getAttrs:e=>/^(bold(er)?|[5-9]\d{2,})$/.test(e)&&null}],renderHTML({HTMLAttributes:e}){return["strong",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setBold:()=>({commands:e})=>e.setMark(this.name),toggleBold:()=>({commands:e})=>e.toggleMark(this.name),unsetBold:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-b":()=>this.editor.commands.toggleBold(),"Mod-B":()=>this.editor.commands.toggleBold()}},addInputRules(){return[(0,r.Cf)({find:o,type:this.type}),(0,r.Cf)({find:s,type:this.type})]},addPasteRules(){return[(0,r.K9)({find:i,type:this.type}),(0,r.K9)({find:a,type:this.type})]}})},561:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>a});var r=n(3845);const o=r.NB.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",(0,r.P1)(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),i=r.vc.create({name:"textStyle",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"span",getAttrs:e=>!!e.hasAttribute("style")&&{}}],renderHTML({HTMLAttributes:e}){return["span",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:e,commands:t})=>{const n=(0,r.Jo)(e,this.type);return!!Object.entries(n).some((([,e])=>!!e))||t.unsetMark(this.name)}}}}),s=/^\s*([-+*])\s$/,a=r.NB.create({name:"bulletList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},parseHTML:()=>[{tag:"ul"}],renderHTML({HTMLAttributes:e}){return["ul",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleBulletList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(o.name,this.editor.getAttributes(i.name)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-8":()=>this.editor.commands.toggleBulletList()}},addInputRules(){let e=(0,r.S0)({find:s,type:this.type});return(this.options.keepMarks||this.options.keepAttributes)&&(e=(0,r.S0)({find:s,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:()=>this.editor.getAttributes(i.name),editor:this.editor})),[e]}})},353:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r}),n(3621);const r=n(3845).hj.create({name:"color",addOptions:()=>({types:["textStyle"]}),addGlobalAttributes(){return[{types:this.options.types,attributes:{color:{default:null,parseHTML:e=>{var t;return null===(t=e.style.color)||void 0===t?void 0:t.replace(/['"]+/g,"")},renderHTML:e=>e.color?{style:`color: ${e.color}`}:{}}}}]},addCommands:()=>({setColor:e=>({chain:t})=>t().setMark("textStyle",{color:e}).run(),unsetColor:()=>({chain:e})=>e().setMark("textStyle",{color:null}).removeEmptyTextStyle().run()})})},336:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=n(3845).NB.create({name:"doc",topNode:!0,content:"block+"})},9966:(e,t,n)=>{"use strict";n.d(t,{Z:()=>m});var r=n(3845),o=n(2337),i=n(2376),s=n(7823),a=n(4348);class l extends i.Y1{constructor(e){super(e,e)}map(e,t){let n=e.resolve(t.map(this.head));return l.valid(n)?new l(n):i.Y1.near(n)}content(){return s.p2.empty}eq(e){return e instanceof l&&e.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(e,t){if("number"!=typeof t.pos)throw new RangeError("Invalid input for GapCursor.fromJSON");return new l(e.resolve(t.pos))}getBookmark(){return new c(this.anchor)}static valid(e){let t=e.parent;if(t.isTextblock||!function(e){for(let t=e.depth;t>=0;t--){let n=e.index(t),r=e.node(t);if(0!=n)for(let e=r.child(n-1);;e=e.lastChild){if(0==e.childCount&&!e.inlineContent||e.isAtom||e.type.spec.isolating)return!0;if(e.inlineContent)return!1}else if(r.type.spec.isolating)return!0}return!0}(e)||!function(e){for(let t=e.depth;t>=0;t--){let n=e.indexAfter(t),r=e.node(t);if(n!=r.childCount)for(let e=r.child(n);;e=e.firstChild){if(0==e.childCount&&!e.inlineContent||e.isAtom||e.type.spec.isolating)return!0;if(e.inlineContent)return!1}else if(r.type.spec.isolating)return!0}return!0}(e))return!1;let n=t.type.spec.allowGapCursor;if(null!=n)return n;let r=t.contentMatchAt(e.index()).defaultType;return r&&r.isTextblock}static findGapCursorFrom(e,t,n=!1){e:for(;;){if(!n&&l.valid(e))return e;let r=e.pos,o=null;for(let n=e.depth;;n--){let i=e.node(n);if(t>0?e.indexAfter(n)<i.childCount:e.index(n)>0){o=i.child(t>0?e.indexAfter(n):e.index(n)-1);break}if(0==n)return null;r+=t;let s=e.doc.resolve(r);if(l.valid(s))return s}for(;;){let s=t>0?o.firstChild:o.lastChild;if(!s){if(o.isAtom&&!o.isText&&!i.qv.isSelectable(o)){e=e.doc.resolve(r+o.nodeSize*t),n=!1;continue e}break}o=s,r+=t;let a=e.doc.resolve(r);if(l.valid(a))return a}return null}}}l.prototype.visible=!1,l.findFrom=l.findGapCursorFrom,i.Y1.jsonID("gapcursor",l);class c{constructor(e){this.pos=e}map(e){return new c(e.map(this.pos))}resolve(e){let t=e.resolve(this.pos);return l.valid(t)?new l(t):i.Y1.near(t)}}const u=(0,o.$)({ArrowLeft:h("horiz",-1),ArrowRight:h("horiz",1),ArrowUp:h("vert",-1),ArrowDown:h("vert",1)});function h(e,t){const n="vert"==e?t>0?"down":"up":t>0?"right":"left";return function(e,r,o){let s=e.selection,a=t>0?s.$to:s.$from,c=s.empty;if(s instanceof i.Bs){if(!o.endOfTextblock(n)||0==a.depth)return!1;c=!1,a=e.doc.resolve(t>0?a.after():a.before())}let u=l.findGapCursorFrom(a,t,c);return!!u&&(r&&r(e.tr.setSelection(new l(u))),!0)}}function d(e,t,n){if(!e||!e.editable)return!1;let r=e.state.doc.resolve(t);if(!l.valid(r))return!1;let o=e.posAtCoords({left:n.clientX,top:n.clientY});return!(o&&o.inside>-1&&i.qv.isSelectable(e.state.doc.nodeAt(o.inside))||(e.dispatch(e.state.tr.setSelection(new l(r))),0))}function f(e,t){if("insertCompositionText"!=t.inputType||!(e.state.selection instanceof l))return!1;let{$from:n}=e.state.selection,r=n.parent.contentMatchAt(n.index()).findWrapping(e.state.schema.nodes.text);if(!r)return!1;let o=s.HY.empty;for(let e=r.length-1;e>=0;e--)o=s.HY.from(r[e].createAndFill(null,o));let a=e.state.tr.replace(n.pos,n.pos,new s.p2(o,0,0));return a.setSelection(i.Bs.near(a.doc.resolve(n.pos+1))),e.dispatch(a),!1}function p(e){if(!(e.selection instanceof l))return null;let t=document.createElement("div");return t.className="ProseMirror-gapcursor",a.EH.create(e.doc,[a.p.widget(e.selection.head,t,{key:"gapcursor"})])}const m=r.hj.create({name:"gapCursor",addProseMirrorPlugins:()=>[new i.Sy({props:{decorations:p,createSelectionBetween:(e,t,n)=>t.pos==n.pos&&l.valid(n)?new l(n):null,handleClick:d,handleKeyDown:u,handleDOMEvents:{beforeinput:f}}})],extendNodeSchema(e){var t;const n={name:e.name,options:e.options,storage:e.storage};return{allowGapCursor:null!==(t=(0,r.nU)((0,r.Nl)(e,"allowGapCursor",n)))&&void 0!==t?t:null}}})},5525:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"hardBreak",addOptions:()=>({keepMarks:!0,HTMLAttributes:{}}),inline:!0,group:"inline",selectable:!1,parseHTML:()=>[{tag:"br"}],renderHTML({HTMLAttributes:e}){return["br",(0,r.P1)(this.options.HTMLAttributes,e)]},renderText:()=>"\n",addCommands(){return{setHardBreak:()=>({commands:e,chain:t,state:n,editor:r})=>e.first([()=>e.exitCode(),()=>e.command((()=>{const{selection:e,storedMarks:o}=n;if(e.$from.parent.type.spec.isolating)return!1;const{keepMarks:i}=this.options,{splittableMarks:s}=r.extensionManager,a=o||e.$to.parentOffset&&e.$from.marks();return t().insertContent({type:this.name}).command((({tr:e,dispatch:t})=>{if(t&&a&&i){const t=a.filter((e=>s.includes(e.type.name)));e.ensureMarks(t)}return!0})).run()}))])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}})},7490:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"heading",addOptions:()=>({levels:[1,2,3,4,5,6],HTMLAttributes:{}}),content:"inline*",group:"block",defining:!0,addAttributes:()=>({level:{default:1,rendered:!1}}),parseHTML(){return this.options.levels.map((e=>({tag:`h${e}`,attrs:{level:e}})))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,(0,r.P1)(this.options.HTMLAttributes,t),0]},addCommands(){return{setHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.setNode(this.name,e),toggleHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.toggleNode(this.name,"paragraph",e)}},addKeyboardShortcuts(){return this.options.levels.reduce(((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})})),{})},addInputRules(){return this.options.levels.map((e=>(0,r.zK)({find:new RegExp(`^(#{1,${e}})\\s$`),type:this.type,getAttributes:{level:e}})))}})},8486:(e,t,n)=>{"use strict";n.d(t,{Z:()=>O});var r=n(3845),o=200,i=function(){};i.prototype.append=function(e){return e.length?(e=i.from(e),!this.length&&e||e.length<o&&this.leafAppend(e)||this.length<o&&e.leafPrepend(this)||this.appendInner(e)):this},i.prototype.prepend=function(e){return e.length?i.from(e).append(this):this},i.prototype.appendInner=function(e){return new a(this,e)},i.prototype.slice=function(e,t){return void 0===e&&(e=0),void 0===t&&(t=this.length),e>=t?i.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,t))},i.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)},i.prototype.forEach=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=this.length),t<=n?this.forEachInner(e,t,n,0):this.forEachInvertedInner(e,t,n,0)},i.prototype.map=function(e,t,n){void 0===t&&(t=0),void 0===n&&(n=this.length);var r=[];return this.forEach((function(t,n){return r.push(e(t,n))}),t,n),r},i.from=function(e){return e instanceof i?e:e&&e.length?new s(e):i.empty};var s=function(e){function t(t){e.call(this),this.values=t}e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t;var n={length:{configurable:!0},depth:{configurable:!0}};return t.prototype.flatten=function(){return this.values},t.prototype.sliceInner=function(e,n){return 0==e&&n==this.length?this:new t(this.values.slice(e,n))},t.prototype.getInner=function(e){return this.values[e]},t.prototype.forEachInner=function(e,t,n,r){for(var o=t;o<n;o++)if(!1===e(this.values[o],r+o))return!1},t.prototype.forEachInvertedInner=function(e,t,n,r){for(var o=t-1;o>=n;o--)if(!1===e(this.values[o],r+o))return!1},t.prototype.leafAppend=function(e){if(this.length+e.length<=o)return new t(this.values.concat(e.flatten()))},t.prototype.leafPrepend=function(e){if(this.length+e.length<=o)return new t(e.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(t.prototype,n),t}(i);i.empty=new s([]);var a=function(e){function t(t,n){e.call(this),this.left=t,this.right=n,this.length=t.length+n.length,this.depth=Math.max(t.depth,n.depth)+1}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},t.prototype.getInner=function(e){return e<this.left.length?this.left.get(e):this.right.get(e-this.left.length)},t.prototype.forEachInner=function(e,t,n,r){var o=this.left.length;return!(t<o&&!1===this.left.forEachInner(e,t,Math.min(n,o),r))&&!(n>o&&!1===this.right.forEachInner(e,Math.max(t-o,0),Math.min(this.length,n)-o,r+o))&&void 0},t.prototype.forEachInvertedInner=function(e,t,n,r){var o=this.left.length;return!(t>o&&!1===this.right.forEachInvertedInner(e,t-o,Math.max(n,o)-o,r+o))&&!(n<o&&!1===this.left.forEachInvertedInner(e,Math.min(t,o),n,r))&&void 0},t.prototype.sliceInner=function(e,t){if(0==e&&t==this.length)return this;var n=this.left.length;return t<=n?this.left.slice(e,t):e>=n?this.right.slice(e-n,t-n):this.left.slice(e,n).append(this.right.slice(0,t-n))},t.prototype.leafAppend=function(e){var n=this.right.leafAppend(e);if(n)return new t(this.left,n)},t.prototype.leafPrepend=function(e){var n=this.left.leafPrepend(e);if(n)return new t(n,this.right)},t.prototype.appendInner=function(e){return this.left.depth>=Math.max(this.right.depth,e.depth)+1?new t(this.left,new t(this.right,e)):new t(this,e)},t}(i);const l=i;var c=n(6560),u=n(2376);class h{constructor(e,t){this.items=e,this.eventCount=t}popEvent(e,t){if(0==this.eventCount)return null;let n,r,o=this.items.length;for(;;o--)if(this.items.get(o-1).selection){--o;break}t&&(n=this.remapping(o,this.items.length),r=n.maps.length);let i,s,a=e.tr,l=[],c=[];return this.items.forEach(((e,t)=>{if(!e.step)return n||(n=this.remapping(o,t+1),r=n.maps.length),r--,void c.push(e);if(n){c.push(new d(e.map));let t,o=e.step.map(n.slice(r));o&&a.maybeStep(o).doc&&(t=a.mapping.maps[a.mapping.maps.length-1],l.push(new d(t,void 0,void 0,l.length+c.length))),r--,t&&n.appendMap(t,r)}else a.maybeStep(e.step);return e.selection?(i=n?e.selection.map(n.slice(r)):e.selection,s=new h(this.items.slice(0,o).append(c.reverse().concat(l)),this.eventCount-1),!1):void 0}),this.items.length,0),{remaining:s,transform:a,selection:i}}addTransform(e,t,n,r){let o=[],i=this.eventCount,s=this.items,a=!r&&s.length?s.get(s.length-1):null;for(let n=0;n<e.steps.length;n++){let l,c=e.steps[n].invert(e.docs[n]),u=new d(e.mapping.maps[n],c,t);(l=a&&a.merge(u))&&(u=l,n?o.pop():s=s.slice(0,s.length-1)),o.push(u),t&&(i++,t=void 0),r||(a=u)}let l=i-n.depth;return l>p&&(s=function(e,t){let n;return e.forEach(((e,r)=>{if(e.selection&&0==t--)return n=r,!1})),e.slice(n)}(s,l),i-=l),new h(s.append(o),i)}remapping(e,t){let n=new c.vs;return this.items.forEach(((t,r)=>{let o=null!=t.mirrorOffset&&r-t.mirrorOffset>=e?n.maps.length-t.mirrorOffset:void 0;n.appendMap(t.map,o)}),e,t),n}addMaps(e){return 0==this.eventCount?this:new h(this.items.append(e.map((e=>new d(e)))),this.eventCount)}rebased(e,t){if(!this.eventCount)return this;let n=[],r=Math.max(0,this.items.length-t),o=e.mapping,i=e.steps.length,s=this.eventCount;this.items.forEach((e=>{e.selection&&s--}),r);let a=t;this.items.forEach((t=>{let r=o.getMirror(--a);if(null==r)return;i=Math.min(i,r);let l=o.maps[r];if(t.step){let i=e.steps[r].invert(e.docs[r]),c=t.selection&&t.selection.map(o.slice(a+1,r));c&&s++,n.push(new d(l,i,c))}else n.push(new d(l))}),r);let l=[];for(let e=t;e<i;e++)l.push(new d(o.maps[e]));let c=this.items.slice(0,r).append(l).append(n),u=new h(c,s);return u.emptyItemCount()>500&&(u=u.compress(this.items.length-n.length)),u}emptyItemCount(){let e=0;return this.items.forEach((t=>{t.step||e++})),e}compress(e=this.items.length){let t=this.remapping(0,e),n=t.maps.length,r=[],o=0;return this.items.forEach(((i,s)=>{if(s>=e)r.push(i),i.selection&&o++;else if(i.step){let e=i.step.map(t.slice(n)),s=e&&e.getMap();if(n--,s&&t.appendMap(s,n),e){let a=i.selection&&i.selection.map(t.slice(n));a&&o++;let l,c=new d(s.invert(),e,a),u=r.length-1;(l=r.length&&r[u].merge(c))?r[u]=l:r.push(c)}}else i.map&&n--}),this.items.length,0),new h(l.from(r.reverse()),o)}}h.empty=new h(l.empty,0);class d{constructor(e,t,n,r){this.map=e,this.step=t,this.selection=n,this.mirrorOffset=r}merge(e){if(this.step&&e.step&&!e.selection){let t=e.step.merge(this.step);if(t)return new d(t.getMap().invert(),t,this.selection)}}}class f{constructor(e,t,n,r,o){this.done=e,this.undone=t,this.prevRanges=n,this.prevTime=r,this.prevComposition=o}}const p=20;function m(e){let t=[];return e.forEach(((e,n,r,o)=>t.push(r,o))),t}function g(e,t){if(!e)return null;let n=[];for(let r=0;r<e.length;r+=2){let o=t.map(e[r],1),i=t.map(e[r+1],-1);o<=i&&n.push(o,i)}return n}function y(e,t,n,r){let o=w(t),i=x.get(t).spec.config,s=(r?e.undone:e.done).popEvent(t,o);if(!s)return;let a=s.selection.resolve(s.transform.doc),l=(r?e.done:e.undone).addTransform(s.transform,t.selection.getBookmark(),i,o),c=new f(r?l:s.remaining,r?s.remaining:l,null,0,-1);n(s.transform.setSelection(a).setMeta(x,{redo:r,historyState:c}).scrollIntoView())}let v=!1,b=null;function w(e){let t=e.plugins;if(b!=t){v=!1,b=t;for(let e=0;e<t.length;e++)if(t[e].spec.historyPreserveItems){v=!0;break}}return v}const x=new u.H$("history"),S=new u.H$("closeHistory");function k(e={}){return e={depth:e.depth||100,newGroupDelay:e.newGroupDelay||500},new u.Sy({key:x,state:{init:()=>new f(h.empty,h.empty,null,0,-1),apply:(t,n,r)=>function(e,t,n,r){let o,i=n.getMeta(x);if(i)return i.historyState;n.getMeta(S)&&(e=new f(e.done,e.undone,null,0,-1));let s=n.getMeta("appendedTransaction");if(0==n.steps.length)return e;if(s&&s.getMeta(x))return s.getMeta(x).redo?new f(e.done.addTransform(n,void 0,r,w(t)),e.undone,m(n.mapping.maps[n.steps.length-1]),e.prevTime,e.prevComposition):new f(e.done,e.undone.addTransform(n,void 0,r,w(t)),null,e.prevTime,e.prevComposition);if(!1===n.getMeta("addToHistory")||s&&!1===s.getMeta("addToHistory"))return(o=n.getMeta("rebased"))?new f(e.done.rebased(n,o),e.undone.rebased(n,o),g(e.prevRanges,n.mapping),e.prevTime,e.prevComposition):new f(e.done.addMaps(n.mapping.maps),e.undone.addMaps(n.mapping.maps),g(e.prevRanges,n.mapping),e.prevTime,e.prevComposition);{let o=n.getMeta("composition"),i=0==e.prevTime||!s&&e.prevComposition!=o&&(e.prevTime<(n.time||0)-r.newGroupDelay||!function(e,t){if(!t)return!1;if(!e.docChanged)return!0;let n=!1;return e.mapping.maps[0].forEach(((e,r)=>{for(let o=0;o<t.length;o+=2)e<=t[o+1]&&r>=t[o]&&(n=!0)})),n}(n,e.prevRanges)),a=s?g(e.prevRanges,n.mapping):m(n.mapping.maps[n.steps.length-1]);return new f(e.done.addTransform(n,i?t.selection.getBookmark():void 0,r,w(t)),h.empty,a,n.time,null==o?e.prevComposition:o)}}(n,r,t,e)},config:e,props:{handleDOMEvents:{beforeinput(e,t){let n=t.inputType,r="historyUndo"==n?C:"historyRedo"==n?M:null;return!!r&&(t.preventDefault(),r(e.state,e.dispatch))}}}})}const C=(e,t)=>{let n=x.getState(e);return!(!n||0==n.done.eventCount||(t&&y(n,e,t,!1),0))},M=(e,t)=>{let n=x.getState(e);return!(!n||0==n.undone.eventCount||(t&&y(n,e,t,!0),0))},O=r.hj.create({name:"history",addOptions:()=>({depth:100,newGroupDelay:500}),addCommands:()=>({undo:()=>({state:e,dispatch:t})=>C(e,t),redo:()=>({state:e,dispatch:t})=>M(e,t)}),addProseMirrorPlugins(){return[k(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Mod-Z":()=>this.editor.commands.undo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-Y":()=>this.editor.commands.redo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Shift-Mod-Z":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}})},6761:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>i});var r=n(3845);const o=/(?:^|\s)(!\[(.+|:?)]\((\S+)(?:(?:\s+)["'](\S+)["'])?\))$/,i=r.NB.create({name:"image",addOptions:()=>({inline:!1,allowBase64:!1,HTMLAttributes:{}}),inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},draggable:!0,addAttributes:()=>({src:{default:null},alt:{default:null},title:{default:null}}),parseHTML(){return[{tag:this.options.allowBase64?"img[src]":'img[src]:not([src^="data:"])'}]},renderHTML({HTMLAttributes:e}){return["img",(0,r.P1)(this.options.HTMLAttributes,e)]},addCommands(){return{setImage:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e})}},addInputRules(){return[(0,r.x2)({find:o,type:this.type,getAttributes:e=>{const[,,t,n,r]=e;return{src:n,alt:t,title:r}}})]}})},3582:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>l});var r=n(3845);const o=/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))$/,i=/(?:^|\s)((?:\*)((?:[^*]+))(?:\*))/g,s=/(?:^|\s)((?:_)((?:[^_]+))(?:_))$/,a=/(?:^|\s)((?:_)((?:[^_]+))(?:_))/g,l=r.vc.create({name:"italic",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"em"},{tag:"i",getAttrs:e=>"normal"!==e.style.fontStyle&&null},{style:"font-style=italic"}],renderHTML({HTMLAttributes:e}){return["em",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setItalic:()=>({commands:e})=>e.setMark(this.name),toggleItalic:()=>({commands:e})=>e.toggleMark(this.name),unsetItalic:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-i":()=>this.editor.commands.toggleItalic(),"Mod-I":()=>this.editor.commands.toggleItalic()}},addInputRules(){return[(0,r.Cf)({find:o,type:this.type}),(0,r.Cf)({find:s,type:this.type})]},addPasteRules(){return[(0,r.K9)({find:i,type:this.type}),(0,r.K9)({find:a,type:this.type})]}})},6484:(e,t,n)=>{"use strict";n.d(t,{Z:()=>Ue});var r=n(3845);const o="aaa1rp3barth4b0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0faromeo7ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4vianca6w0s2x0a2z0ure5ba0by2idu3namex3narepublic11d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2ntley5rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re2s2c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y0eats7k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0cast4mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking0channel11l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dabur3d1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t0isalat7u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0at2delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d0network8tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntdoor4ier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0ardian6cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5gtv3iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0eles2s3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6logistics9properties14fh2g1h1i0a1ds2m1nder2le4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3ncaster5ia3d0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4de2k2psy3ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0cys3drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7serati6ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic3tual5v1w1x1y1z2na0b1goya4me2tura4vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rthwesternmutual14on4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9dnavy5lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3ssagens7y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0america6xi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cher3ks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0a1b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp2w2ell3ia1ksha5oes2p0ping5uji3w0time7i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ffany5ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0channel7ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lkswagen7vo3te1ing3o2yage5u0elos6wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4finity6ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2",i="ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5تصالات6رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2",s=(e,t)=>{for(const n in t)e[n]=t[n];return e},a="numeric",l="ascii",c="alpha",u="asciinumeric",h="alphanumeric",d="domain",f="emoji",p="scheme",m="slashscheme",g="whitespace";function y(e,t){return e in t||(t[e]=[]),t[e]}function v(e,t,n){t[a]&&(t[u]=!0,t[h]=!0),t[l]&&(t[u]=!0,t[c]=!0),t[u]&&(t[h]=!0),t[c]&&(t[h]=!0),t[h]&&(t[d]=!0),t[f]&&(t[d]=!0);for(const r in t){const t=y(r,n);t.indexOf(e)<0&&t.push(e)}}function b(e){void 0===e&&(e=null),this.j={},this.jr=[],this.jd=null,this.t=e}b.groups={},b.prototype={accepts(){return!!this.t},go(e){const t=this,n=t.j[e];if(n)return n;for(let n=0;n<t.jr.length;n++){const r=t.jr[n][0],o=t.jr[n][1];if(o&&r.test(e))return o}return t.jd},has(e,t){return void 0===t&&(t=!1),t?e in this.j:!!this.go(e)},ta(e,t,n,r){for(let o=0;o<e.length;o++)this.tt(e[o],t,n,r)},tr(e,t,n,r){let o;return r=r||b.groups,t&&t.j?o=t:(o=new b(t),n&&r&&v(t,n,r)),this.jr.push([e,o]),o},ts(e,t,n,r){let o=this;const i=e.length;if(!i)return o;for(let t=0;t<i-1;t++)o=o.tt(e[t]);return o.tt(e[i-1],t,n,r)},tt(e,t,n,r){r=r||b.groups;const o=this;if(t&&t.j)return o.j[e]=t,t;const i=t;let a,l=o.go(e);if(l?(a=new b,s(a.j,l.j),a.jr.push.apply(a.jr,l.jr),a.jd=l.jd,a.t=l.t):a=new b,i){if(r)if(a.t&&"string"==typeof a.t){const e=s(function(e,t){const n={};for(const r in t)t[r].indexOf(e)>=0&&(n[r]=!0);return n}(a.t,r),n);v(i,e,r)}else n&&v(i,n,r);a.t=i}return o.j[e]=a,a}};const w=(e,t,n,r,o)=>e.ta(t,n,r,o),x=(e,t,n,r,o)=>e.tr(t,n,r,o),S=(e,t,n,r,o)=>e.ts(t,n,r,o),k=(e,t,n,r,o)=>e.tt(t,n,r,o),C="WORD",M="UWORD",O="LOCALHOST",E="TLD",A="UTLD",T="SCHEME",D="SLASH_SCHEME",_="NUM",R="WS",N="NL",P="OPENBRACE",I="OPENBRACKET",L="OPENANGLEBRACKET",j="OPENPAREN",F="CLOSEBRACE",B="CLOSEBRACKET",z="CLOSEANGLEBRACKET",$="CLOSEPAREN",H="AMPERSAND",W="APOSTROPHE",U="ASTERISK",V="AT",q="BACKSLASH",K="BACKTICK",Y="CARET",G="COLON",J="COMMA",Q="DOLLAR",Z="DOT",X="EQUALS",ee="EXCLAMATION",te="HYPHEN",ne="PERCENT",re="PIPE",oe="PLUS",ie="POUND",se="QUERY",ae="QUOTE",le="SEMI",ce="SLASH",ue="TILDE",he="UNDERSCORE",de="EMOJI",fe="SYM";var pe=Object.freeze({__proto__:null,WORD:C,UWORD:M,LOCALHOST:O,TLD:E,UTLD:A,SCHEME:T,SLASH_SCHEME:D,NUM:_,WS:R,NL:N,OPENBRACE:P,OPENBRACKET:I,OPENANGLEBRACKET:L,OPENPAREN:j,CLOSEBRACE:F,CLOSEBRACKET:B,CLOSEANGLEBRACKET:z,CLOSEPAREN:$,AMPERSAND:H,APOSTROPHE:W,ASTERISK:U,AT:V,BACKSLASH:q,BACKTICK:K,CARET:Y,COLON:G,COMMA:J,DOLLAR:Q,DOT:Z,EQUALS:X,EXCLAMATION:ee,HYPHEN:te,PERCENT:ne,PIPE:re,PLUS:oe,POUND:ie,QUERY:se,QUOTE:ae,SEMI:le,SLASH:ce,TILDE:ue,UNDERSCORE:he,EMOJI:de,SYM:fe});const me=/[a-z]/,ge=/\p{L}/u,ye=/\p{Emoji}/u,ve=/\d/,be=/\s/,we="\n",xe="️",Se="";let ke=null,Ce=null;function Me(e,t,n,r,o){let i;const s=t.length;for(let n=0;n<s-1;n++){const s=t[n];e.j[s]?i=e.j[s]:(i=new b(r),i.jr=o.slice(),e.j[s]=i),e=i}return i=new b(n),i.jr=o.slice(),e.j[t[s-1]]=i,i}function Oe(e){const t=[],n=[];let r=0;for(;r<e.length;){let o=0;for(;"0123456789".indexOf(e[r+o])>=0;)o++;if(o>0){t.push(n.join(""));for(let t=parseInt(e.substring(r,r+o),10);t>0;t--)n.pop();r+=o}else n.push(e[r]),r++}return t}const Ee={defaultProtocol:"http",events:null,format:Te,formatHref:Te,nl2br:!1,tagName:"a",target:null,rel:null,validate:!0,truncate:1/0,className:null,attributes:null,ignoreTags:[],render:null};function Ae(e,t){void 0===t&&(t=null);let n=s({},Ee);e&&(n=s(n,e instanceof Ae?e.o:e));const r=n.ignoreTags,o=[];for(let e=0;e<r.length;e++)o.push(r[e].toUpperCase());this.o=n,t&&(this.defaultRender=t),this.ignoreTags=o}function Te(e){return e}function De(e,t){this.t="token",this.v=e,this.tk=t}function _e(e,t){class n extends De{constructor(t,n){super(t,n),this.t=e}}for(const e in t)n.prototype[e]=t[e];return n.t=e,n}Ae.prototype={o:Ee,ignoreTags:[],defaultRender:e=>e,check(e){return this.get("validate",e.toString(),e)},get(e,t,n){const r=null!=t;let o=this.o[e];return o?("object"==typeof o?(o=n.t in o?o[n.t]:Ee[e],"function"==typeof o&&r&&(o=o(t,n))):"function"==typeof o&&r&&(o=o(t,n.t,n)),o):o},getObj(e,t,n){let r=this.o[e];return"function"==typeof r&&null!=t&&(r=r(t,n.t,n)),r},render(e){const t=e.render(this);return(this.get("render",null,e)||this.defaultRender)(t,e.t,e)}},De.prototype={isLink:!1,toString(){return this.v},toHref(e){return this.toString()},toFormattedString(e){const t=this.toString(),n=e.get("truncate",t,this),r=e.get("format",t,this);return n&&r.length>n?r.substring(0,n)+"…":r},toFormattedHref(e){return e.get("formatHref",this.toHref(e.get("defaultProtocol")),this)},startIndex(){return this.tk[0].s},endIndex(){return this.tk[this.tk.length-1].e},toObject(e){return void 0===e&&(e=Ee.defaultProtocol),{type:this.t,value:this.toString(),isLink:this.isLink,href:this.toHref(e),start:this.startIndex(),end:this.endIndex()}},toFormattedObject(e){return{type:this.t,value:this.toFormattedString(e),isLink:this.isLink,href:this.toFormattedHref(e),start:this.startIndex(),end:this.endIndex()}},validate(e){return e.get("validate",this.toString(),this)},render(e){const t=this,n=this.toHref(e.get("defaultProtocol")),r=e.get("formatHref",n,this),o=e.get("tagName",n,t),i=this.toFormattedString(e),a={},l=e.get("className",n,t),c=e.get("target",n,t),u=e.get("rel",n,t),h=e.getObj("attributes",n,t),d=e.getObj("events",n,t);return a.href=r,l&&(a.class=l),c&&(a.target=c),u&&(a.rel=u),h&&s(a,h),{tagName:o,attributes:a,content:i,eventListeners:d}}};const Re=_e("email",{isLink:!0,toHref(){return"mailto:"+this.toString()}}),Ne=_e("text"),Pe=_e("nl"),Ie=_e("url",{isLink:!0,toHref(e){return void 0===e&&(e=Ee.defaultProtocol),this.hasProtocol()?this.v:`${e}://${this.v}`},hasProtocol(){const e=this.tk;return e.length>=2&&e[0].t!==O&&e[1].t===G}}),Le=e=>new b(e);function je(e,t,n){const r=n[0].s,o=n[n.length-1].e;return new e(t.slice(r,o),n)}const Fe="undefined"!=typeof console&&console&&console.warn||(()=>{}),Be={scanner:null,parser:null,tokenQueue:[],pluginQueue:[],customSchemes:[],initialized:!1};function ze(e,t){if(void 0===t&&(t=!1),Be.initialized&&Fe(`linkifyjs: already initialized - will not register custom scheme "${e}" until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.`),!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(e))throw new Error('linkifyjs: incorrect scheme format.\n 1. Must only contain digits, lowercase ASCII letters or "-"\n 2. Cannot start or end with "-"\n 3. "-" cannot repeat');Be.customSchemes.push([e,t])}function $e(e){return Be.initialized||function(){Be.scanner=function(e){void 0===e&&(e=[]);const t={};b.groups=t;const n=new b;null==ke&&(ke=Oe(o)),null==Ce&&(Ce=Oe(i)),k(n,"'",W),k(n,"{",P),k(n,"[",I),k(n,"<",L),k(n,"(",j),k(n,"}",F),k(n,"]",B),k(n,">",z),k(n,")",$),k(n,"&",H),k(n,"*",U),k(n,"@",V),k(n,"`",K),k(n,"^",Y),k(n,":",G),k(n,",",J),k(n,"$",Q),k(n,".",Z),k(n,"=",X),k(n,"!",ee),k(n,"-",te),k(n,"%",ne),k(n,"|",re),k(n,"+",oe),k(n,"#",ie),k(n,"?",se),k(n,'"',ae),k(n,"/",ce),k(n,";",le),k(n,"~",ue),k(n,"_",he),k(n,"\\",q);const r=x(n,ve,_,{[a]:!0});x(r,ve,r);const h=x(n,me,C,{[l]:!0});x(h,me,h);const y=x(n,ge,M,{[c]:!0});x(y,me),x(y,ge,y);const w=x(n,be,R,{[g]:!0});k(n,we,N,{[g]:!0}),k(w,we),x(w,be,w);const Ee=x(n,ye,de,{[f]:!0});x(Ee,ye,Ee),k(Ee,xe,Ee);const Ae=k(Ee,Se);x(Ae,ye,Ee);const Te=[[me,h]],De=[[me,null],[ge,y]];for(let e=0;e<ke.length;e++)Me(n,ke[e],E,C,Te);for(let e=0;e<Ce.length;e++)Me(n,Ce[e],A,M,De);v(E,{tld:!0,ascii:!0},t),v(A,{utld:!0,alpha:!0},t),Me(n,"file",T,C,Te),Me(n,"mailto",T,C,Te),Me(n,"http",D,C,Te),Me(n,"https",D,C,Te),Me(n,"ftp",D,C,Te),Me(n,"ftps",D,C,Te),v(T,{scheme:!0,ascii:!0},t),v(D,{slashscheme:!0,ascii:!0},t),e=e.sort(((e,t)=>e[0]>t[0]?1:-1));for(let t=0;t<e.length;t++){const r=e[t][0],o=e[t][1]?{[p]:!0}:{[m]:!0};r.indexOf("-")>=0?o[d]=!0:me.test(r)?ve.test(r)?o[u]=!0:o[l]=!0:o[a]=!0,S(n,r,r,o)}return S(n,"localhost",O,{ascii:!0}),n.jd=new b(fe),{start:n,tokens:s({groups:t},pe)}}(Be.customSchemes);for(let e=0;e<Be.tokenQueue.length;e++)Be.tokenQueue[e][1]({scanner:Be.scanner});Be.parser=function(e){let{groups:t}=e;const n=t.domain.concat([H,U,V,q,K,Y,Q,X,te,_,ne,re,oe,ie,ce,fe,ue,he]),r=[W,z,F,B,$,G,J,Z,ee,L,P,I,j,se,ae,le],o=[H,W,U,q,K,Y,F,Q,X,te,P,ne,re,oe,ie,se,ce,fe,ue,he],i=Le(),s=k(i,ue);w(s,o,s),w(s,t.domain,s);const a=Le(),l=Le(),c=Le();w(i,t.domain,a),w(i,t.scheme,l),w(i,t.slashscheme,c),w(a,o,s),w(a,t.domain,a);const u=k(a,V);k(s,V,u),k(l,V,u),k(c,V,u);const h=k(s,Z);w(h,o,s),w(h,t.domain,s);const d=Le();w(u,t.domain,d),w(d,t.domain,d);const f=k(d,Z);w(f,t.domain,d);const p=Le(Re);w(f,t.tld,p),w(f,t.utld,p),k(u,O,p);const m=k(d,te);w(m,t.domain,d),w(p,t.domain,d),k(p,Z,f),k(p,te,m);const g=k(p,G);w(g,t.numeric,Re);const y=k(a,te),v=k(a,Z);w(y,t.domain,a),w(v,o,s),w(v,t.domain,a);const b=Le(Ie);w(v,t.tld,b),w(v,t.utld,b),w(b,t.domain,a),w(b,o,s),k(b,Z,v),k(b,te,y),k(b,V,u);const x=k(b,G),S=Le(Ie);w(x,t.numeric,S);const C=Le(Ie),M=Le();w(C,n,C),w(C,r,M),w(M,n,C),w(M,r,M),k(b,ce,C),k(S,ce,C);const E=k(l,G),A=k(c,G),T=k(A,ce),D=k(T,ce);w(l,t.domain,a),k(l,Z,v),k(l,te,y),w(c,t.domain,a),k(c,Z,v),k(c,te,y),w(E,t.domain,C),k(E,ce,C),w(D,t.domain,C),w(D,n,C),k(D,ce,C);const R=k(C,P),de=k(C,I),me=k(C,L),ge=k(C,j);k(M,P,R),k(M,I,de),k(M,L,me),k(M,j,ge),k(R,F,C),k(de,B,C),k(me,z,C),k(ge,$,C),k(R,F,C);const ye=Le(Ie),ve=Le(Ie),be=Le(Ie),we=Le(Ie);w(R,n,ye),w(de,n,ve),w(me,n,be),w(ge,n,we);const xe=Le(),Se=Le(),ke=Le(),Ce=Le();return w(R,r),w(de,r),w(me,r),w(ge,r),w(ye,n,ye),w(ve,n,ve),w(be,n,be),w(we,n,we),w(ye,r,ye),w(ve,r,ve),w(be,r,be),w(we,r,we),w(xe,n,xe),w(Se,n,ve),w(ke,n,be),w(Ce,n,we),w(xe,r,xe),w(Se,r,Se),w(ke,r,ke),w(Ce,r,Ce),k(ve,B,C),k(be,z,C),k(we,$,C),k(ye,F,C),k(Se,B,C),k(ke,z,C),k(Ce,$,C),k(xe,$,C),k(i,O,b),k(i,N,Pe),{start:i,tokens:pe}}(Be.scanner.tokens);for(let e=0;e<Be.pluginQueue.length;e++)Be.pluginQueue[e][1]({scanner:Be.scanner,parser:Be.parser});Be.initialized=!0}(),function(e,t,n){let r=n.length,o=0,i=[],s=[];for(;o<r;){let a=e,l=null,c=null,u=0,h=null,d=-1;for(;o<r&&!(l=a.go(n[o].t));)s.push(n[o++]);for(;o<r&&(c=l||a.go(n[o].t));)l=null,a=c,a.accepts()?(d=0,h=a):d>=0&&d++,o++,u++;if(d<0)o-=u,o<r&&(s.push(n[o]),o++);else{s.length>0&&(i.push(je(Ne,t,s)),s=[]),o-=d,u-=d;const e=h.t,r=n.slice(o-u,o);i.push(je(e,t,r))}}return s.length>0&&i.push(je(Ne,t,s)),i}(Be.parser.start,e,function(e,t){const n=function(e){const t=[],n=e.length;let r=0;for(;r<n;){let o,i=e.charCodeAt(r),s=i<55296||i>56319||r+1===n||(o=e.charCodeAt(r+1))<56320||o>57343?e[r]:e.slice(r,r+2);t.push(s),r+=s.length}return t}(t.replace(/[A-Z]/g,(e=>e.toLowerCase()))),r=n.length,o=[];let i=0,s=0;for(;s<r;){let a=e,l=null,c=0,u=null,h=-1,d=-1;for(;s<r&&(l=a.go(n[s]));)a=l,a.accepts()?(h=0,d=0,u=a):h>=0&&(h+=n[s].length,d++),c+=n[s].length,i+=n[s].length,s++;i-=h,s-=d,c-=h,o.push({t:u.t,v:t.slice(i-c,i),s:i-c,e:i})}return o}(Be.scanner.start,e))}function He(e,t,n){if(void 0===t&&(t=null),void 0===n&&(n=null),t&&"object"==typeof t){if(n)throw Error(`linkifyjs: Invalid link type ${t}; must be a string`);n=t,t=null}const r=new Ae(n),o=$e(e),i=[];for(let e=0;e<o.length;e++){const n=o[e];!n.isLink||t&&n.t!==t||i.push(n.toFormattedObject(r))}return i}var We=n(2376);const Ue=r.vc.create({name:"link",priority:1e3,keepOnSplit:!1,onCreate(){this.options.protocols.forEach((e=>{"string"!=typeof e?ze(e.scheme,e.optionalSlashes):ze(e)}))},onDestroy(){b.groups={},Be.scanner=null,Be.parser=null,Be.tokenQueue=[],Be.pluginQueue=[],Be.customSchemes=[],Be.initialized=!1},inclusive(){return this.options.autolink},addOptions:()=>({openOnClick:!0,linkOnPaste:!0,autolink:!0,protocols:[],HTMLAttributes:{target:"_blank",rel:"noopener noreferrer nofollow",class:null},validate:void 0}),addAttributes(){return{href:{default:null},target:{default:this.options.HTMLAttributes.target},rel:{default:this.options.HTMLAttributes.rel},class:{default:this.options.HTMLAttributes.class}}},parseHTML:()=>[{tag:'a[href]:not([href *= "javascript:" i])'}],renderHTML({HTMLAttributes:e}){return["a",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setLink:e=>({chain:t})=>t().setMark(this.name,e).setMeta("preventAutolink",!0).run(),toggleLink:e=>({chain:t})=>t().toggleMark(this.name,e,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run(),unsetLink:()=>({chain:e})=>e().unsetMark(this.name,{extendEmptyMarkRange:!0}).setMeta("preventAutolink",!0).run()}},addPasteRules(){return[(0,r.K9)({find:e=>He(e).filter((e=>!this.options.validate||this.options.validate(e.value))).filter((e=>e.isLink)).map((e=>({text:e.value,index:e.start,data:e}))),type:this.type,getAttributes:(e,t)=>{var n,r;const o=null===(n=null==t?void 0:t.clipboardData)||void 0===n?void 0:n.getData("text/html"),i=null==o?void 0:o.match(/href="([^"]*)"/);return i?{href:i[1]}:{href:null===(r=e.data)||void 0===r?void 0:r.href}}})]},addProseMirrorPlugins(){const e=[];return this.options.autolink&&e.push((t={type:this.type,validate:this.options.validate},new We.Sy({key:new We.H$("autolink"),appendTransaction:(e,n,o)=>{const i=e.some((e=>e.docChanged))&&!n.doc.eq(o.doc),s=e.some((e=>e.getMeta("preventAutolink")));if(!i||s)return;const{tr:a}=o,l=(0,r.XP)(n.doc,[...e]);return(0,r.QC)(l).forEach((({newRange:e})=>{const n=(0,r.b5)(o.doc,e,(e=>e.isTextblock));let i,s;if(n.length>1?(i=n[0],s=o.doc.textBetween(i.pos,i.pos+i.node.nodeSize,void 0," ")):n.length&&o.doc.textBetween(e.from,e.to," "," ").endsWith(" ")&&(i=n[0],s=o.doc.textBetween(i.pos,e.to,void 0," ")),i&&s){const e=s.split(" ").filter((e=>""!==e));if(e.length<=0)return!1;const n=e[e.length-1],l=i.pos+s.lastIndexOf(n);if(!n)return!1;He(n).filter((e=>e.isLink)).map((e=>({...e,from:l+e.start+1,to:l+e.end+1}))).filter((e=>!o.schema.marks.code||!o.doc.rangeHasMark(e.from,e.to,o.schema.marks.code))).filter((e=>!t.validate||t.validate(e.value))).forEach((e=>{(0,r.tI)(e.from,e.to,o.doc).some((e=>e.mark.type===t.type))||a.addMark(e.from,e.to,t.type.create({href:e.href}))}))}})),a.steps.length?a:void 0}}))),this.options.openOnClick&&e.push(function(e){return new We.Sy({key:new We.H$("handleClickLink"),props:{handleClick:(t,n,o)=>{var i,s;if(0!==o.button)return!1;if("A"!==o.target.nodeName)return!1;const a=(0,r.u9)(t.state,e.type.name),l=o.target,c=null!==(i=null==l?void 0:l.href)&&void 0!==i?i:a.href,u=null!==(s=null==l?void 0:l.target)&&void 0!==s?s:a.target;return!(!l||!c||(t.editable&&window.open(c,u),0))}}})}({type:this.type})),this.options.linkOnPaste&&e.push(function(e){return new We.Sy({key:new We.H$("handlePasteLink"),props:{handlePaste:(t,n,r)=>{var o;const{state:i}=t,{selection:s}=i,{empty:a}=s;if(a)return!1;let l="";r.content.forEach((e=>{l+=e.textContent}));const c=He(l).find((e=>e.isLink&&e.value===l));if(!l||!c)return!1;const u=null===(o=n.clipboardData)||void 0===o?void 0:o.getData("text/html"),h=null==u?void 0:u.match(/href="([^"]*)"/),d=h?h[1]:c.href;return e.editor.commands.setMark(e.type,{href:d}),!0}}})}({editor:this.editor,type:this.type})),e;var t}})},4565:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",(0,r.P1)(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}})},1575:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>a});var r=n(3845);const o=r.NB.create({name:"listItem",addOptions:()=>({HTMLAttributes:{},bulletListTypeName:"bulletList",orderedListTypeName:"orderedList"}),content:"paragraph block*",defining:!0,parseHTML:()=>[{tag:"li"}],renderHTML({HTMLAttributes:e}){return["li",(0,r.P1)(this.options.HTMLAttributes,e),0]},addKeyboardShortcuts(){return{Enter:()=>this.editor.commands.splitListItem(this.name),Tab:()=>this.editor.commands.sinkListItem(this.name),"Shift-Tab":()=>this.editor.commands.liftListItem(this.name)}}}),i=r.vc.create({name:"textStyle",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"span",getAttrs:e=>!!e.hasAttribute("style")&&{}}],renderHTML({HTMLAttributes:e}){return["span",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:e,commands:t})=>{const n=(0,r.Jo)(e,this.type);return!!Object.entries(n).some((([,e])=>!!e))||t.unsetMark(this.name)}}}}),s=/^(\d+)\.\s$/,a=r.NB.create({name:"orderedList",addOptions:()=>({itemTypeName:"listItem",HTMLAttributes:{},keepMarks:!1,keepAttributes:!1}),group:"block list",content(){return`${this.options.itemTypeName}+`},addAttributes:()=>({start:{default:1,parseHTML:e=>e.hasAttribute("start")?parseInt(e.getAttribute("start")||"",10):1}}),parseHTML:()=>[{tag:"ol"}],renderHTML({HTMLAttributes:e}){const{start:t,...n}=e;return 1===t?["ol",(0,r.P1)(this.options.HTMLAttributes,n),0]:["ol",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{toggleOrderedList:()=>({commands:e,chain:t})=>this.options.keepAttributes?t().toggleList(this.name,this.options.itemTypeName,this.options.keepMarks).updateAttributes(o.name,this.editor.getAttributes(i.name)).run():e.toggleList(this.name,this.options.itemTypeName,this.options.keepMarks)}},addKeyboardShortcuts(){return{"Mod-Shift-7":()=>this.editor.commands.toggleOrderedList()}},addInputRules(){let e=(0,r.S0)({find:s,type:this.type,getAttributes:e=>({start:+e[1]}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1]});return(this.options.keepMarks||this.options.keepAttributes)&&(e=(0,r.S0)({find:s,type:this.type,keepMarks:this.options.keepMarks,keepAttributes:this.options.keepAttributes,getAttributes:e=>({start:+e[1],...this.editor.getAttributes(i.name)}),joinPredicate:(e,t)=>t.childCount+t.attrs.start===+e[1],editor:this.editor})),[e]}})},6022:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"paragraph",priority:1e3,addOptions:()=>({HTMLAttributes:{}}),group:"block",content:"inline*",parseHTML:()=>[{tag:"p"}],renderHTML({HTMLAttributes:e}){return["p",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setParagraph:()=>({commands:e})=>e.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}})},3237:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(3845),o=n(2376),i=n(4348);const s=r.hj.create({name:"placeholder",addOptions:()=>({emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}),addProseMirrorPlugins(){return[new o.Sy({key:new o.H$("placeholder"),props:{decorations:({doc:e,selection:t})=>{const n=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:o}=t,s=[];if(!n)return null;const a=this.editor.isEmpty;return e.descendants(((e,t)=>{const n=o>=t&&o<=t+e.nodeSize,l=!e.isLeaf&&(0,r.bR)(e);if((n||!this.options.showOnlyCurrent)&&l){const r=[this.options.emptyNodeClass];a&&r.push(this.options.emptyEditorClass);const o=i.p.node(t,t+e.nodeSize,{class:r.join(" "),"data-placeholder":"function"==typeof this.options.placeholder?this.options.placeholder({editor:this.editor,node:e,pos:t,hasAnchor:n}):this.options.placeholder});s.push(o)}return this.options.includeChildren})),i.EH.create(e,s)}}})]}})},658:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"tableCell",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:e=>{const t=e.getAttribute("colwidth");return t?[parseInt(t,10)]:null}}}),tableRole:"cell",isolating:!0,parseHTML:()=>[{tag:"td"}],renderHTML({HTMLAttributes:e}){return["td",(0,r.P1)(this.options.HTMLAttributes,e),0]}})},3626:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"tableHeader",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:e=>{const t=e.getAttribute("colwidth");return t?[parseInt(t,10)]:null}}}),tableRole:"header_cell",isolating:!0,parseHTML:()=>[{tag:"th"}],renderHTML({HTMLAttributes:e}){return["th",(0,r.P1)(this.options.HTMLAttributes,e),0]}})},3991:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.NB.create({name:"tableRow",addOptions:()=>({HTMLAttributes:{}}),content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML:()=>[{tag:"tr"}],renderHTML({HTMLAttributes:e}){return["tr",(0,r.P1)(this.options.HTMLAttributes,e),0]}})},1347:(e,t,n)=>{"use strict";n.d(t,{ZP:()=>me});var r,o,i=n(3845),s=n(2376),a=n(7823),l=n(4348),c=n(2337),u=n(6560);if("undefined"!=typeof WeakMap){let e=new WeakMap;r=t=>e.get(t),o=(t,n)=>(e.set(t,n),n)}else{const e=[],t=10;let n=0;r=t=>{for(let n=0;n<e.length;n+=2)if(e[n]==t)return e[n+1]},o=(r,o)=>(n==t&&(n=0),e[n++]=r,e[n++]=o)}var h=class{constructor(e,t,n,r){this.width=e,this.height=t,this.map=n,this.problems=r}findCell(e){for(let t=0;t<this.map.length;t++){const n=this.map[t];if(n!=e)continue;const r=t%this.width,o=t/this.width|0;let i=r+1,s=o+1;for(let e=1;i<this.width&&this.map[t+e]==n;e++)i++;for(let e=1;s<this.height&&this.map[t+this.width*e]==n;e++)s++;return{left:r,top:o,right:i,bottom:s}}throw new RangeError(`No cell with offset ${e} found`)}colCount(e){for(let t=0;t<this.map.length;t++)if(this.map[t]==e)return t%this.width;throw new RangeError(`No cell with offset ${e} found`)}nextCell(e,t,n){const{left:r,right:o,top:i,bottom:s}=this.findCell(e);return"horiz"==t?(n<0?0==r:o==this.width)?null:this.map[i*this.width+(n<0?r-1:o)]:(n<0?0==i:s==this.height)?null:this.map[r+this.width*(n<0?i-1:s)]}rectBetween(e,t){const{left:n,right:r,top:o,bottom:i}=this.findCell(e),{left:s,right:a,top:l,bottom:c}=this.findCell(t);return{left:Math.min(n,s),top:Math.min(o,l),right:Math.max(r,a),bottom:Math.max(i,c)}}cellsInRect(e){const t=[],n={};for(let r=e.top;r<e.bottom;r++)for(let o=e.left;o<e.right;o++){const i=r*this.width+o,s=this.map[i];n[s]||(n[s]=!0,o==e.left&&o&&this.map[i-1]==s||r==e.top&&r&&this.map[i-this.width]==s||t.push(s))}return t}positionAt(e,t,n){for(let r=0,o=0;;r++){const i=o+n.child(r).nodeSize;if(r==e){let n=t+e*this.width;const r=(e+1)*this.width;for(;n<r&&this.map[n]<o;)n++;return n==r?i-1:this.map[n]}o=i}}static get(e){return r(e)||o(e,function(e){if("table"!=e.type.spec.tableRole)throw new RangeError("Not a table node: "+e.type.name);const t=function(e){let t=-1,n=!1;for(let r=0;r<e.childCount;r++){const o=e.child(r);let i=0;if(n)for(let t=0;t<r;t++){const n=e.child(t);for(let e=0;e<n.childCount;e++){const o=n.child(e);t+o.attrs.rowspan>r&&(i+=o.attrs.colspan)}}for(let e=0;e<o.childCount;e++){const t=o.child(e);i+=t.attrs.colspan,t.attrs.rowspan>1&&(n=!0)}-1==t?t=i:t!=i&&(t=Math.max(t,i))}return t}(e),n=e.childCount,r=[];let o=0,i=null;const s=[];for(let e=0,o=t*n;e<o;e++)r[e]=0;for(let a=0,l=0;a<n;a++){const c=e.child(a);l++;for(let e=0;;e++){for(;o<r.length&&0!=r[o];)o++;if(e==c.childCount)break;const u=c.child(e),{colspan:h,rowspan:d,colwidth:f}=u.attrs;for(let e=0;e<d;e++){if(e+a>=n){(i||(i=[])).push({type:"overlong_rowspan",pos:l,n:d-e});break}const c=o+e*t;for(let e=0;e<h;e++){0==r[c+e]?r[c+e]=l:(i||(i=[])).push({type:"collision",row:a,pos:l,n:h-e});const n=f&&f[e];if(n){const r=(c+e)%t*2,o=s[r];null==o||o!=n&&1==s[r+1]?(s[r]=n,s[r+1]=1):o==n&&s[r+1]++}}}o+=h,l+=u.nodeSize}const u=(a+1)*t;let h=0;for(;o<u;)0==r[o++]&&h++;h&&(i||(i=[])).push({type:"missing",row:a,n:h}),l++}const a=new h(t,n,r,i);let l=!1;for(let e=0;!l&&e<s.length;e+=2)null!=s[e]&&s[e+1]<n&&(l=!0);return l&&function(e,t,n){e.problems||(e.problems=[]);const r={};for(let o=0;o<e.map.length;o++){const i=e.map[o];if(r[i])continue;r[i]=!0;const s=n.nodeAt(i);if(!s)throw new RangeError(`No cell with offset ${i} found`);let a=null;const l=s.attrs;for(let n=0;n<l.colspan;n++){const r=t[(o+n)%e.width*2];null==r||l.colwidth&&l.colwidth[n]==r||((a||(a=d(l)))[n]=r)}a&&e.problems.unshift({type:"colwidth mismatch",pos:i,colwidth:a})}}(a,s,e),a}(e))}};function d(e){if(e.colwidth)return e.colwidth.slice();const t=[];for(let n=0;n<e.colspan;n++)t.push(0);return t}function f(e){let t=e.cached.tableNodeTypes;if(!t){t=e.cached.tableNodeTypes={};for(const n in e.nodes){const r=e.nodes[n],o=r.spec.tableRole;o&&(t[o]=r)}}return t}var p=new s.H$("selectingCells");function m(e){for(let t=e.depth-1;t>0;t--)if("row"==e.node(t).type.spec.tableRole)return e.node(0).resolve(e.before(t+1));return null}function g(e){const t=e.selection.$head;for(let e=t.depth;e>0;e--)if("row"==t.node(e).type.spec.tableRole)return!0;return!1}function y(e){const t=e.selection;if("$anchorCell"in t&&t.$anchorCell)return t.$anchorCell.pos>t.$headCell.pos?t.$anchorCell:t.$headCell;if("node"in t&&t.node&&"cell"==t.node.type.spec.tableRole)return t.$anchor;const n=m(t.$head)||function(e){for(let t=e.nodeAfter,n=e.pos;t;t=t.firstChild,n++){const r=t.type.spec.tableRole;if("cell"==r||"header_cell"==r)return e.doc.resolve(n)}for(let t=e.nodeBefore,n=e.pos;t;t=t.lastChild,n--){const r=t.type.spec.tableRole;if("cell"==r||"header_cell"==r)return e.doc.resolve(n-t.nodeSize)}}(t.$head);if(n)return n;throw new RangeError(`No cell found around position ${t.head}`)}function v(e){return"row"==e.parent.type.spec.tableRole&&!!e.nodeAfter}function b(e,t){return e.depth==t.depth&&e.pos>=t.start(-1)&&e.pos<=t.end(-1)}function w(e,t,n){const r=e.node(-1),o=h.get(r),i=e.start(-1),s=o.nextCell(e.pos-i,t,n);return null==s?null:e.node(0).resolve(i+s)}function x(e,t,n=1){const r={...e,colspan:e.colspan-n};return r.colwidth&&(r.colwidth=r.colwidth.slice(),r.colwidth.splice(t,n),r.colwidth.some((e=>e>0))||(r.colwidth=null)),r}function S(e,t,n=1){const r={...e,colspan:e.colspan+n};if(r.colwidth){r.colwidth=r.colwidth.slice();for(let e=0;e<n;e++)r.colwidth.splice(t,0,0)}return r}var k=class extends s.Y1{constructor(e,t=e){const n=e.node(-1),r=h.get(n),o=e.start(-1),i=r.rectBetween(e.pos-o,t.pos-o),a=e.node(0),l=r.cellsInRect(i).filter((e=>e!=t.pos-o));l.unshift(t.pos-o);const c=l.map((e=>{const t=n.nodeAt(e);if(!t)throw RangeError(`No cell with offset ${e} found`);const r=o+e+1;return new s.xm(a.resolve(r),a.resolve(r+t.content.size))}));super(c[0].$from,c[0].$to,c),this.$anchorCell=e,this.$headCell=t}map(e,t){const n=e.resolve(t.map(this.$anchorCell.pos)),r=e.resolve(t.map(this.$headCell.pos));if(v(n)&&v(r)&&b(n,r)){const e=this.$anchorCell.node(-1)!=n.node(-1);return e&&this.isRowSelection()?k.rowSelection(n,r):e&&this.isColSelection()?k.colSelection(n,r):new k(n,r)}return s.Bs.between(n,r)}content(){const e=this.$anchorCell.node(-1),t=h.get(e),n=this.$anchorCell.start(-1),r=t.rectBetween(this.$anchorCell.pos-n,this.$headCell.pos-n),o={},i=[];for(let n=r.top;n<r.bottom;n++){const s=[];for(let i=n*t.width+r.left,a=r.left;a<r.right;a++,i++){const n=t.map[i];if(o[n])continue;o[n]=!0;const a=t.findCell(n);let l=e.nodeAt(n);if(!l)throw RangeError(`No cell with offset ${n} found`);const c=r.left-a.left,u=a.right-r.right;if(c>0||u>0){let e=l.attrs;if(c>0&&(e=x(e,0,c)),u>0&&(e=x(e,e.colspan-u,u)),a.left<r.left){if(l=l.type.createAndFill(e),!l)throw RangeError(`Could not create cell with attrs ${JSON.stringify(e)}`)}else l=l.type.create(e,l.content)}if(a.top<r.top||a.bottom>r.bottom){const e={...l.attrs,rowspan:Math.min(a.bottom,r.bottom)-Math.max(a.top,r.top)};l=a.top<r.top?l.type.createAndFill(e):l.type.create(e,l.content)}s.push(l)}i.push(e.child(n).copy(a.HY.from(s)))}const s=this.isColSelection()&&this.isRowSelection()?e:i;return new a.p2(a.HY.from(s),1,1)}replace(e,t=a.p2.empty){const n=e.steps.length,r=this.ranges;for(let o=0;o<r.length;o++){const{$from:i,$to:s}=r[o],l=e.mapping.slice(n);e.replace(l.map(i.pos),l.map(s.pos),o?a.p2.empty:t)}const o=s.Y1.findFrom(e.doc.resolve(e.mapping.slice(n).map(this.to)),-1);o&&e.setSelection(o)}replaceWith(e,t){this.replace(e,new a.p2(a.HY.from(t),0,0))}forEachCell(e){const t=this.$anchorCell.node(-1),n=h.get(t),r=this.$anchorCell.start(-1),o=n.cellsInRect(n.rectBetween(this.$anchorCell.pos-r,this.$headCell.pos-r));for(let n=0;n<o.length;n++)e(t.nodeAt(o[n]),r+o[n])}isColSelection(){const e=this.$anchorCell.index(-1),t=this.$headCell.index(-1);if(Math.min(e,t)>0)return!1;const n=e+this.$anchorCell.nodeAfter.attrs.rowspan,r=t+this.$headCell.nodeAfter.attrs.rowspan;return Math.max(n,r)==this.$headCell.node(-1).childCount}static colSelection(e,t=e){const n=e.node(-1),r=h.get(n),o=e.start(-1),i=r.findCell(e.pos-o),s=r.findCell(t.pos-o),a=e.node(0);return i.top<=s.top?(i.top>0&&(e=a.resolve(o+r.map[i.left])),s.bottom<r.height&&(t=a.resolve(o+r.map[r.width*(r.height-1)+s.right-1]))):(s.top>0&&(t=a.resolve(o+r.map[s.left])),i.bottom<r.height&&(e=a.resolve(o+r.map[r.width*(r.height-1)+i.right-1]))),new k(e,t)}isRowSelection(){const e=this.$anchorCell.node(-1),t=h.get(e),n=this.$anchorCell.start(-1),r=t.colCount(this.$anchorCell.pos-n),o=t.colCount(this.$headCell.pos-n);if(Math.min(r,o)>0)return!1;const i=r+this.$anchorCell.nodeAfter.attrs.colspan,s=o+this.$headCell.nodeAfter.attrs.colspan;return Math.max(i,s)==t.width}eq(e){return e instanceof k&&e.$anchorCell.pos==this.$anchorCell.pos&&e.$headCell.pos==this.$headCell.pos}static rowSelection(e,t=e){const n=e.node(-1),r=h.get(n),o=e.start(-1),i=r.findCell(e.pos-o),s=r.findCell(t.pos-o),a=e.node(0);return i.left<=s.left?(i.left>0&&(e=a.resolve(o+r.map[i.top*r.width])),s.right<r.width&&(t=a.resolve(o+r.map[r.width*(s.top+1)-1]))):(s.left>0&&(t=a.resolve(o+r.map[s.top*r.width])),i.right<r.width&&(e=a.resolve(o+r.map[r.width*(i.top+1)-1]))),new k(e,t)}toJSON(){return{type:"cell",anchor:this.$anchorCell.pos,head:this.$headCell.pos}}static fromJSON(e,t){return new k(e.resolve(t.anchor),e.resolve(t.head))}static create(e,t,n=t){return new k(e.resolve(t),e.resolve(n))}getBookmark(){return new C(this.$anchorCell.pos,this.$headCell.pos)}};k.prototype.visible=!1,s.Y1.jsonID("cell",k);var C=class{constructor(e,t){this.anchor=e,this.head=t}map(e){return new C(e.map(this.anchor),e.map(this.head))}resolve(e){const t=e.resolve(this.anchor),n=e.resolve(this.head);return"row"==t.parent.type.spec.tableRole&&"row"==n.parent.type.spec.tableRole&&t.index()<t.parent.childCount&&n.index()<n.parent.childCount&&b(t,n)?new k(t,n):s.Y1.near(n,1)}};function M(e){if(!(e.selection instanceof k))return null;const t=[];return e.selection.forEachCell(((e,n)=>{t.push(l.p.node(n,n+e.nodeSize,{class:"selectedCell"}))})),l.EH.create(e.doc,t)}var O=new s.H$("fix-tables");function E(e,t,n,r){const o=e.childCount,i=t.childCount;e:for(let s=0,a=0;s<i;s++){const i=t.child(s);for(let t=a,r=Math.min(o,s+3);t<r;t++)if(e.child(t)==i){a=t+1,n+=i.nodeSize;continue e}r(i,n),a<o&&e.child(a).sameMarkup(i)?E(e.child(a),i,n+1,r):i.nodesBetween(0,i.content.size,r,n+1),n+=i.nodeSize}}function A(e,t){let n;const r=(t,r)=>{"table"==t.type.spec.tableRole&&(n=function(e,t,n,r){const o=h.get(t);if(!o.problems)return r;r||(r=e.tr);const i=[];for(let e=0;e<o.height;e++)i.push(0);for(let e=0;e<o.problems.length;e++){const s=o.problems[e];if("collision"==s.type){const e=t.nodeAt(s.pos);if(!e)continue;const o=e.attrs;for(let e=0;e<o.rowspan;e++)i[s.row+e]+=s.n;r.setNodeMarkup(r.mapping.map(n+1+s.pos),null,x(o,o.colspan-s.n,s.n))}else if("missing"==s.type)i[s.row]+=s.n;else if("overlong_rowspan"==s.type){const e=t.nodeAt(s.pos);if(!e)continue;r.setNodeMarkup(r.mapping.map(n+1+s.pos),null,{...e.attrs,rowspan:e.attrs.rowspan-s.n})}else if("colwidth mismatch"==s.type){const e=t.nodeAt(s.pos);if(!e)continue;r.setNodeMarkup(r.mapping.map(n+1+s.pos),null,{...e.attrs,colwidth:s.colwidth})}}let s,a;for(let e=0;e<i.length;e++)i[e]&&(null==s&&(s=e),a=e);for(let l=0,c=n+1;l<o.height;l++){const n=t.child(l),o=c+n.nodeSize,u=i[l];if(u>0){let t="cell";n.firstChild&&(t=n.firstChild.type.spec.tableRole);const i=[];for(let n=0;n<u;n++){const n=f(e.schema)[t].createAndFill();n&&i.push(n)}const h=0!=l&&s!=l-1||a!=l?o-1:c+1;r.insert(r.mapping.map(h),i)}c=o}return r.setMeta(O,{fixTables:!0})}(e,t,r,n))};return t?t.doc!=e.doc&&E(t.doc,e.doc,0,r):e.doc.descendants(r),n}function T(e,t){const n=e.createAndFill();return new u.wx(n).replace(0,n.content.size,t).doc}function D(e,t,n,r,o,i,s,a){if(0==s||s==t.height)return!1;let l=!1;for(let c=o;c<i;c++){const o=s*t.width+c,i=t.map[o];if(t.map[o-t.width]==i){l=!0;const o=n.nodeAt(i),{top:u,left:h}=t.findCell(i);e.setNodeMarkup(e.mapping.slice(a).map(i+r),null,{...o.attrs,rowspan:s-u}),e.insert(e.mapping.slice(a).map(t.positionAt(s,h,n)),o.type.createAndFill({...o.attrs,rowspan:u+o.attrs.rowspan-s})),c+=o.attrs.colspan-1}}return l}function _(e,t,n,r,o,i,s,a){if(0==s||s==t.width)return!1;let l=!1;for(let c=o;c<i;c++){const o=c*t.width+s,i=t.map[o];if(t.map[o-1]==i){l=!0;const o=n.nodeAt(i),u=t.colCount(i),h=e.mapping.slice(a).map(i+r);e.setNodeMarkup(h,null,x(o.attrs,s-u,o.attrs.colspan-(s-u))),e.insert(h+o.nodeSize,o.type.createAndFill(x(o.attrs,0,s-u))),c+=o.attrs.rowspan-1}}return l}function R(e,t,n,r,o){let i=n?e.doc.nodeAt(n-1):e.doc;if(!i)throw new Error("No table found");let s=h.get(i);const{top:l,left:c}=r,u=c+o.width,d=l+o.height,p=e.tr;let m=0;function g(){if(i=n?p.doc.nodeAt(n-1):p.doc,!i)throw new Error("No table found");s=h.get(i),m=p.mapping.maps.length}(function(e,t,n,r,o,i,s){const l=f(e.doc.type.schema);let c,u;if(o>t.width)for(let i=0,a=0;i<t.height;i++){const h=n.child(i);a+=h.nodeSize;const d=[];let f;f=null==h.lastChild||h.lastChild.type==l.cell?c||(c=l.cell.createAndFill()):u||(u=l.header_cell.createAndFill());for(let e=t.width;e<o;e++)d.push(f);e.insert(e.mapping.slice(s).map(a-1+r),d)}if(i>t.height){const h=[];for(let e=0,r=(t.height-1)*t.width;e<Math.max(t.width,o);e++){const o=!(e>=t.width)&&n.nodeAt(t.map[r+e]).type==l.header_cell;h.push(o?u||(u=l.header_cell.createAndFill()):c||(c=l.cell.createAndFill()))}const d=l.row.create(null,a.HY.from(h)),f=[];for(let e=t.height;e<i;e++)f.push(d);e.insert(e.mapping.slice(s).map(r+n.nodeSize-2),f)}return!(!c&&!u)})(p,s,i,n,u,d,m)&&g(),D(p,s,i,n,c,u,l,m)&&g(),D(p,s,i,n,c,u,d,m)&&g(),_(p,s,i,n,l,d,c,m)&&g(),_(p,s,i,n,l,d,u,m)&&g();for(let e=l;e<d;e++){const t=s.positionAt(e,c,i),r=s.positionAt(e,u,i);p.replace(p.mapping.slice(m).map(t+n),p.mapping.slice(m).map(r+n),new a.p2(o.rows[e-l],0,0))}g(),p.setSelection(new k(p.doc.resolve(n+s.positionAt(l,c,i)),p.doc.resolve(n+s.positionAt(d-1,u-1,i)))),t(p)}var N=(0,c.$)({ArrowLeft:I("horiz",-1),ArrowRight:I("horiz",1),ArrowUp:I("vert",-1),ArrowDown:I("vert",1),"Shift-ArrowLeft":L("horiz",-1),"Shift-ArrowRight":L("horiz",1),"Shift-ArrowUp":L("vert",-1),"Shift-ArrowDown":L("vert",1),Backspace:j,"Mod-Backspace":j,Delete:j,"Mod-Delete":j});function P(e,t,n){return!n.eq(e.selection)&&(t&&t(e.tr.setSelection(n).scrollIntoView()),!0)}function I(e,t){return(n,r,o)=>{if(!o)return!1;const i=n.selection;if(i instanceof k)return P(n,r,s.Y1.near(i.$headCell,t));if("horiz"!=e&&!i.empty)return!1;const a=$(o,e,t);if(null==a)return!1;if("horiz"==e)return P(n,r,s.Y1.near(n.doc.resolve(i.head+t),t));{const o=n.doc.resolve(a),i=w(o,e,t);let l;return l=i?s.Y1.near(i,1):t<0?s.Y1.near(n.doc.resolve(o.before(-1)),-1):s.Y1.near(n.doc.resolve(o.after(-1)),1),P(n,r,l)}}}function L(e,t){return(n,r,o)=>{if(!o)return!1;const i=n.selection;let s;if(i instanceof k)s=i;else{const r=$(o,e,t);if(null==r)return!1;s=new k(n.doc.resolve(r))}const a=w(s.$headCell,e,t);return!!a&&P(n,r,new k(s.$anchorCell,a))}}function j(e,t){const n=e.selection;if(!(n instanceof k))return!1;if(t){const r=e.tr,o=f(e.schema).cell.createAndFill().content;n.forEachCell(((e,t)=>{e.content.eq(o)||r.replace(r.mapping.map(t+1),r.mapping.map(t+e.nodeSize-1),new a.p2(o,0,0))})),r.docChanged&&t(r)}return!0}function F(e,t){const n=m(e.state.doc.resolve(t));return!!n&&(e.dispatch(e.state.tr.setSelection(new k(n))),!0)}function B(e,t,n){if(!g(e.state))return!1;let r=function(e){if(!e.size)return null;let{content:t,openStart:n,openEnd:r}=e;for(;1==t.childCount&&(n>0&&r>0||"table"==t.child(0).type.spec.tableRole);)n--,r--,t=t.child(0).content;const o=t.child(0),i=o.type.spec.tableRole,s=o.type.schema,l=[];if("row"==i)for(let e=0;e<t.childCount;e++){let o=t.child(e).content;const i=e?0:Math.max(0,n-1),c=e<t.childCount-1?0:Math.max(0,r-1);(i||c)&&(o=T(f(s).row,new a.p2(o,i,c)).content),l.push(o)}else{if("cell"!=i&&"header_cell"!=i)return null;l.push(n||r?T(f(s).row,new a.p2(t,n,r)).content:t)}return function(e,t){const n=[];for(let e=0;e<t.length;e++){const r=t[e];for(let t=r.childCount-1;t>=0;t--){const{rowspan:o,colspan:i}=r.child(t).attrs;for(let t=e;t<e+o;t++)n[t]=(n[t]||0)+i}}let r=0;for(let e=0;e<n.length;e++)r=Math.max(r,n[e]);for(let o=0;o<n.length;o++)if(o>=t.length&&t.push(a.HY.empty),n[o]<r){const i=f(e).cell.createAndFill(),s=[];for(let e=n[o];e<r;e++)s.push(i);t[o]=t[o].append(a.HY.from(s))}return{height:t.length,width:r,rows:t}}(s,l)}(n);const o=e.state.selection;if(o instanceof k){r||(r={width:1,height:1,rows:[a.HY.from(T(f(e.state.schema).cell,n))]});const t=o.$anchorCell.node(-1),i=o.$anchorCell.start(-1),s=h.get(t).rectBetween(o.$anchorCell.pos-i,o.$headCell.pos-i);return r=function({width:e,height:t,rows:n},r,o){if(e!=r){const t=[],o=[];for(let e=0;e<n.length;e++){const i=n[e],s=[];for(let n=t[e]||0,o=0;n<r;o++){let a=i.child(o%i.childCount);n+a.attrs.colspan>r&&(a=a.type.createChecked(x(a.attrs,a.attrs.colspan,n+a.attrs.colspan-r),a.content)),s.push(a),n+=a.attrs.colspan;for(let n=1;n<a.attrs.rowspan;n++)t[e+n]=(t[e+n]||0)+a.attrs.colspan}o.push(a.HY.from(s))}n=o,e=r}if(t!=o){const e=[];for(let r=0,i=0;r<o;r++,i++){const s=[],l=n[i%t];for(let e=0;e<l.childCount;e++){let t=l.child(e);r+t.attrs.rowspan>o&&(t=t.type.create({...t.attrs,rowspan:Math.max(1,o-t.attrs.rowspan)},t.content)),s.push(t)}e.push(a.HY.from(s))}n=e,t=o}return{width:e,height:t,rows:n}}(r,s.right-s.left,s.bottom-s.top),R(e.state,e.dispatch,i,s,r),!0}if(r){const t=y(e.state),n=t.start(-1);return R(e.state,e.dispatch,n,h.get(t.node(-1)).findCell(t.pos-n),r),!0}return!1}function z(e,t){var n;if(t.ctrlKey||t.metaKey)return;const r=H(e,t.target);let o;if(t.shiftKey&&e.state.selection instanceof k)i(e.state.selection.$anchorCell,t),t.preventDefault();else if(t.shiftKey&&r&&null!=(o=m(e.state.selection.$anchor))&&(null==(n=W(e,t))?void 0:n.pos)!=o.pos)i(o,t),t.preventDefault();else if(!r)return;function i(t,n){let r=W(e,n);const o=null==p.getState(e.state);if(!r||!b(t,r)){if(!o)return;r=t}const i=new k(t,r);if(o||!e.state.selection.eq(i)){const n=e.state.tr.setSelection(i);o&&n.setMeta(p,t.pos),e.dispatch(n)}}function s(){e.root.removeEventListener("mouseup",s),e.root.removeEventListener("dragstart",s),e.root.removeEventListener("mousemove",a),null!=p.getState(e.state)&&e.dispatch(e.state.tr.setMeta(p,-1))}function a(n){const o=n,a=p.getState(e.state);let l;if(null!=a)l=e.state.doc.resolve(a);else if(H(e,o.target)!=r&&(l=W(e,t),!l))return s();l&&i(l,o)}e.root.addEventListener("mouseup",s),e.root.addEventListener("dragstart",s),e.root.addEventListener("mousemove",a)}function $(e,t,n){if(!(e.state.selection instanceof s.Bs))return null;const{$head:r}=e.state.selection;for(let o=r.depth-1;o>=0;o--){const i=r.node(o);if((n<0?r.index(o):r.indexAfter(o))!=(n<0?0:i.childCount))return null;if("cell"==i.type.spec.tableRole||"header_cell"==i.type.spec.tableRole){const i=r.before(o),s="vert"==t?n>0?"down":"up":n>0?"right":"left";return e.endOfTextblock(s)?i:null}}return null}function H(e,t){for(;t&&t!=e.dom;t=t.parentNode)if("TD"==t.nodeName||"TH"==t.nodeName)return t;return null}function W(e,t){const n=e.posAtCoords({left:t.clientX,top:t.clientY});return n&&n?m(e.state.doc.resolve(n.pos)):null}var U=class{constructor(e,t){this.node=e,this.cellMinWidth=t,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table")),this.colgroup=this.table.appendChild(document.createElement("colgroup")),V(e,this.colgroup,this.table,t),this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(e){return e.type==this.node.type&&(this.node=e,V(e,this.colgroup,this.table,this.cellMinWidth),!0)}ignoreMutation(e){return"attributes"==e.type&&(e.target==this.table||this.colgroup.contains(e.target))}};function V(e,t,n,r,o,i){var s;let a=0,l=!0,c=t.firstChild;const u=e.firstChild;if(u){for(let e=0,n=0;e<u.childCount;e++){const{colspan:s,colwidth:h}=u.child(e).attrs;for(let e=0;e<s;e++,n++){const s=o==n?i:h&&h[e],u=s?s+"px":"";a+=s||r,s||(l=!1),c?(c.style.width!=u&&(c.style.width=u),c=c.nextSibling):t.appendChild(document.createElement("col")).style.width=u}}for(;c;){const e=c.nextSibling;null==(s=c.parentNode)||s.removeChild(c),c=e}l?(n.style.width=a+"px",n.style.minWidth=""):(n.style.width="",n.style.minWidth=a+"px")}}var q=new s.H$("tableColumnResizing");function K({handleWidth:e=5,cellMinWidth:t=25,View:n=U,lastColumnResizable:r=!0}={}){const o=new s.Sy({key:q,state:{init:(e,r)=>(o.spec.props.nodeViews[f(r.schema).table.name]=(e,r)=>new n(e,t,r),new Y(-1,!1)),apply:(e,t)=>t.apply(e)},props:{attributes:e=>{const t=q.getState(e);return t&&t.activeHandle>-1?{class:"resize-cursor"}:{}},handleDOMEvents:{mousemove:(t,n)=>{!function(e,t,n,r,o){const i=q.getState(e.state);if(i&&!i.dragging){const r=function(e){for(;e&&"TD"!=e.nodeName&&"TH"!=e.nodeName;)e=e.classList&&e.classList.contains("ProseMirror")?null:e.parentNode;return e}(t.target);let s=-1;if(r){const{left:o,right:i}=r.getBoundingClientRect();t.clientX-o<=n?s=G(e,t,"left",n):i-t.clientX<=n&&(s=G(e,t,"right",n))}if(s!=i.activeHandle){if(!o&&-1!==s){const t=e.state.doc.resolve(s),n=t.node(-1),r=h.get(n),o=t.start(-1);if(r.colCount(t.pos-o)+t.nodeAfter.attrs.colspan-1==r.width-1)return}Q(e,s)}}}(t,n,e,0,r)},mouseleave:e=>{!function(e){const t=q.getState(e.state);t&&t.activeHandle>-1&&!t.dragging&&Q(e,-1)}(e)},mousedown:(e,n)=>{!function(e,t,n){const r=q.getState(e.state);if(!r||-1==r.activeHandle||r.dragging)return!1;const o=e.state.doc.nodeAt(r.activeHandle),i=function(e,t,{colspan:n,colwidth:r}){const o=r&&r[r.length-1];if(o)return o;const i=e.domAtPos(t);let s=i.node.childNodes[i.offset].offsetWidth,a=n;if(r)for(let e=0;e<n;e++)r[e]&&(s-=r[e],a--);return s/a}(e,r.activeHandle,o.attrs);function s(t){window.removeEventListener("mouseup",s),window.removeEventListener("mousemove",a);const r=q.getState(e.state);(null==r?void 0:r.dragging)&&(function(e,t,n){const r=e.state.doc.resolve(t),o=r.node(-1),i=h.get(o),s=r.start(-1),a=i.colCount(r.pos-s)+r.nodeAfter.attrs.colspan-1,l=e.state.tr;for(let e=0;e<i.height;e++){const t=e*i.width+a;if(e&&i.map[t]==i.map[t-i.width])continue;const r=i.map[t],u=o.nodeAt(r).attrs,h=1==u.colspan?0:a-i.colCount(r);if(u.colwidth&&u.colwidth[h]==n)continue;const d=u.colwidth?u.colwidth.slice():(c=u.colspan,Array(c).fill(0));d[h]=n,l.setNodeMarkup(s+r,null,{...u,colwidth:d})}var c;l.docChanged&&e.dispatch(l)}(e,r.activeHandle,J(r.dragging,t,n)),e.dispatch(e.state.tr.setMeta(q,{setDragging:null})))}function a(t){if(!t.which)return s(t);const r=q.getState(e.state);if(r&&r.dragging){const o=J(r.dragging,t,n);!function(e,t,n,r){const o=e.state.doc.resolve(t),i=o.node(-1),s=o.start(-1),a=h.get(i).colCount(o.pos-s)+o.nodeAfter.attrs.colspan-1;let l=e.domAtPos(o.start(-1)).node;for(;l&&"TABLE"!=l.nodeName;)l=l.parentNode;l&&V(i,l.firstChild,l,r,a,n)}(e,r.activeHandle,o,n)}}e.dispatch(e.state.tr.setMeta(q,{setDragging:{startX:t.clientX,startWidth:i}})),window.addEventListener("mouseup",s),window.addEventListener("mousemove",a),t.preventDefault()}(e,n,t)}},decorations:e=>{const t=q.getState(e);if(t&&t.activeHandle>-1)return function(e,t){const n=[],r=e.doc.resolve(t),o=r.node(-1);if(!o)return l.EH.empty;const i=h.get(o),s=r.start(-1),a=i.colCount(r.pos-s)+r.nodeAfter.attrs.colspan;for(let e=0;e<i.height;e++){const t=a+e*i.width-1;if(!(a!=i.width&&i.map[t]==i.map[t+1]||0!=e&&i.map[t]==i.map[t-i.width])){const e=i.map[t],r=s+e+o.nodeAt(e).nodeSize-1,a=document.createElement("div");a.className="column-resize-handle",n.push(l.p.widget(r,a))}}return l.EH.create(e.doc,n)}(e,t.activeHandle)},nodeViews:{}}});return o}var Y=class{constructor(e,t){this.activeHandle=e,this.dragging=t}apply(e){const t=this,n=e.getMeta(q);if(n&&null!=n.setHandle)return new Y(n.setHandle,!1);if(n&&void 0!==n.setDragging)return new Y(t.activeHandle,n.setDragging);if(t.activeHandle>-1&&e.docChanged){let n=e.mapping.map(t.activeHandle,-1);return v(e.doc.resolve(n))||(n=-1),new Y(n,t.dragging)}return t}};function G(e,t,n,r){const o="right"==n?-r:r,i=e.posAtCoords({left:t.clientX+o,top:t.clientY});if(!i)return-1;const{pos:s}=i,a=m(e.state.doc.resolve(s));if(!a)return-1;if("right"==n)return a.pos;const l=h.get(a.node(-1)),c=a.start(-1),u=l.map.indexOf(a.pos-c);return u%l.width==0?-1:c+l.map[u-1]}function J(e,t,n){const r=t.clientX-e.startX;return Math.max(n,e.startWidth+r)}function Q(e,t){e.dispatch(e.state.tr.setMeta(q,{setHandle:t}))}function Z(e){const t=e.selection,n=y(e),r=n.node(-1),o=n.start(-1),i=h.get(r);return{...t instanceof k?i.rectBetween(t.$anchorCell.pos-o,t.$headCell.pos-o):i.findCell(n.pos-o),tableStart:o,map:i,table:r}}function X(e,{map:t,tableStart:n,table:r},o){let i=o>0?-1:0;(function(e,t,n){const r=f(t.type.schema).header_cell;for(let o=0;o<e.height;o++)if(t.nodeAt(e.map[n+o*e.width]).type!=r)return!1;return!0})(t,r,o+i)&&(i=0==o||o==t.width?null:0);for(let s=0;s<t.height;s++){const a=s*t.width+o;if(o>0&&o<t.width&&t.map[a-1]==t.map[a]){const i=t.map[a],l=r.nodeAt(i);e.setNodeMarkup(e.mapping.map(n+i),null,S(l.attrs,o-t.colCount(i))),s+=l.attrs.rowspan-1}else{const l=null==i?f(r.type.schema).cell:r.nodeAt(t.map[a+i]).type,c=t.positionAt(s,o,r);e.insert(e.mapping.map(n+c),l.createAndFill())}}return e}function ee(e,{map:t,table:n,tableStart:r},o){const i=e.mapping.maps.length;for(let s=0;s<t.height;){const a=s*t.width+o,l=t.map[a],c=n.nodeAt(l),u=c.attrs;if(o>0&&t.map[a-1]==l||o<t.width-1&&t.map[a+1]==l)e.setNodeMarkup(e.mapping.slice(i).map(r+l),null,x(u,o-t.colCount(l)));else{const t=e.mapping.slice(i).map(r+l);e.delete(t,t+c.nodeSize)}s+=u.rowspan}}function te(e,{map:t,tableStart:n,table:r},o){var i;let s=n;for(let e=0;e<o;e++)s+=r.child(e).nodeSize;const a=[];let l=o>0?-1:0;(function(e,t,n){var r;const o=f(t.type.schema).header_cell;for(let i=0;i<e.width;i++)if((null==(r=t.nodeAt(e.map[i+n*e.width]))?void 0:r.type)!=o)return!1;return!0})(t,r,o+l)&&(l=0==o||o==t.height?null:0);for(let s=0,c=t.width*o;s<t.width;s++,c++)if(o>0&&o<t.height&&t.map[c]==t.map[c-t.width]){const o=t.map[c],i=r.nodeAt(o).attrs;e.setNodeMarkup(n+o,null,{...i,rowspan:i.rowspan+1}),s+=i.colspan-1}else{const e=null==l?f(r.type.schema).cell:null==(i=r.nodeAt(t.map[c+l*t.width]))?void 0:i.type,n=null==e?void 0:e.createAndFill();n&&a.push(n)}return e.insert(s,f(r.type.schema).row.create(null,a)),e}function ne(e,{map:t,table:n,tableStart:r},o){let i=0;for(let e=0;e<o;e++)i+=n.child(e).nodeSize;const s=i+n.child(o).nodeSize,a=e.mapping.maps.length;e.delete(i+r,s+r);for(let i=0,s=o*t.width;i<t.width;i++,s++){const l=t.map[s];if(o>0&&l==t.map[s-t.width]){const t=n.nodeAt(l).attrs;e.setNodeMarkup(e.mapping.slice(a).map(l+r),null,{...t,rowspan:t.rowspan-1}),i+=t.colspan-1}else if(o<t.width&&l==t.map[s+t.width]){const s=n.nodeAt(l),c=s.attrs,u=s.type.create({...c,rowspan:s.attrs.rowspan-1},s.content),h=t.positionAt(o+1,i,n);e.insert(e.mapping.slice(a).map(r+h),u),i+=c.colspan-1}}}function re(e){const t=e.content;return 1==t.childCount&&t.child(0).isTextblock&&0==t.child(0).childCount}function oe(e,t){const n=e.selection;if(!(n instanceof k)||n.$anchorCell.pos==n.$headCell.pos)return!1;const r=Z(e),{map:o}=r;if(function({width:e,height:t,map:n},r){let o=r.top*e+r.left,i=o,s=(r.bottom-1)*e+r.left,a=o+(r.right-r.left-1);for(let t=r.top;t<r.bottom;t++){if(r.left>0&&n[i]==n[i-1]||r.right<e&&n[a]==n[a+1])return!0;i+=e,a+=e}for(let i=r.left;i<r.right;i++){if(r.top>0&&n[o]==n[o-e]||r.bottom<t&&n[s]==n[s+e])return!0;o++,s++}return!1}(o,r))return!1;if(t){const n=e.tr,i={};let s,l,c=a.HY.empty;for(let e=r.top;e<r.bottom;e++)for(let t=r.left;t<r.right;t++){const a=o.map[e*o.width+t],u=r.table.nodeAt(a);if(!i[a]&&u)if(i[a]=!0,null==s)s=a,l=u;else{re(u)||(c=c.append(u.content));const e=n.mapping.map(a+r.tableStart);n.delete(e,e+u.nodeSize)}}if(null==s||null==l)return!0;if(n.setNodeMarkup(s+r.tableStart,null,{...S(l.attrs,l.attrs.colspan,r.right-r.left-l.attrs.colspan),rowspan:r.bottom-r.top}),c.size){const e=s+1+l.content.size,t=re(l)?s+1:e;n.replaceWith(t+r.tableStart,e+r.tableStart,c)}n.setSelection(new k(n.doc.resolve(s+r.tableStart))),t(n)}return!0}function ie(e,t){const n=f(e.schema);return(r=({node:e})=>n[e.type.spec.tableRole],(e,t)=>{var n;const o=e.selection;let i,s;if(o instanceof k){if(o.$anchorCell.pos!=o.$headCell.pos)return!1;i=o.$anchorCell.nodeAfter,s=o.$anchorCell.pos}else{if(i=function(e){for(let t=e.depth;t>0;t--){const n=e.node(t).type.spec.tableRole;if("cell"===n||"header_cell"===n)return e.node(t)}return null}(o.$from),!i)return!1;s=null==(n=m(o.$from))?void 0:n.pos}if(null==i||null==s)return!1;if(1==i.attrs.colspan&&1==i.attrs.rowspan)return!1;if(t){let n=i.attrs;const a=[],l=n.colwidth;n.rowspan>1&&(n={...n,rowspan:1}),n.colspan>1&&(n={...n,colspan:1});const c=Z(e),u=e.tr;for(let e=0;e<c.right-c.left;e++)a.push(l?{...n,colwidth:l&&l[e]?[l[e]]:null}:n);let h;for(let e=c.top;e<c.bottom;e++){let t=c.map.positionAt(e,c.left,c.table);e==c.top&&(t+=i.nodeSize);for(let n=c.left,o=0;n<c.right;n++,o++)n==c.left&&e==c.top||u.insert(h=u.mapping.map(t+c.tableStart,1),r({node:i,row:e,col:n}).createAndFill(a[o]))}u.setNodeMarkup(s,r({node:i,row:c.top,col:c.left}),a[0]),o instanceof k&&u.setSelection(new k(u.doc.resolve(o.$anchorCell.pos),h?u.doc.resolve(h):void 0)),t(u)}return!0})(e,t);var r}function se(e,t,n){const r=t.map.cellsInRect({left:0,top:0,right:"row"==e?t.map.width:1,bottom:"column"==e?t.map.height:1});for(let e=0;e<r.length;e++){const o=t.table.nodeAt(r[e]);if(o&&o.type!==n.header_cell)return!1}return!0}function ae(e,t){return(t=t||{useDeprecatedLogic:!1}).useDeprecatedLogic?function(e){return function(t,n){if(!g(t))return!1;if(n){const r=f(t.schema),o=Z(t),i=t.tr,s=o.map.cellsInRect("column"==e?{left:o.left,top:0,right:o.right,bottom:o.map.height}:"row"==e?{left:0,top:o.top,right:o.map.width,bottom:o.bottom}:o),a=s.map((e=>o.table.nodeAt(e)));for(let e=0;e<s.length;e++)a[e].type==r.header_cell&&i.setNodeMarkup(o.tableStart+s[e],r.cell,a[e].attrs);if(0==i.steps.length)for(let e=0;e<s.length;e++)i.setNodeMarkup(o.tableStart+s[e],r.header_cell,a[e].attrs);n(i)}return!0}}(e):function(t,n){if(!g(t))return!1;if(n){const r=f(t.schema),o=Z(t),i=t.tr,s=se("row",o,r),a=se("column",o,r),l=("column"===e?s:"row"===e&&a)?1:0,c="column"==e?{left:0,top:l,right:1,bottom:o.map.height}:"row"==e?{left:l,top:0,right:o.map.width,bottom:1}:o,u="column"==e?a?r.cell:r.header_cell:"row"==e?s?r.cell:r.header_cell:r.cell;o.map.cellsInRect(c).forEach((e=>{const t=e+o.tableStart,n=i.doc.nodeAt(t);n&&i.setNodeMarkup(t,u,n.attrs)})),n(i)}return!0}}ae("row",{useDeprecatedLogic:!0}),ae("column",{useDeprecatedLogic:!0});var le=ae("cell",{useDeprecatedLogic:!0});function ce(e){return function(t,n){if(!g(t))return!1;const r=function(e,t){if(t<0){const t=e.nodeBefore;if(t)return e.pos-t.nodeSize;for(let t=e.index(-1)-1,n=e.before();t>=0;t--){const r=e.node(-1).child(t),o=r.lastChild;if(o)return n-1-o.nodeSize;n-=r.nodeSize}}else{if(e.index()<e.parent.childCount-1)return e.pos+e.nodeAfter.nodeSize;const t=e.node(-1);for(let n=e.indexAfter(-1),r=e.after();n<t.childCount;n++){const e=t.child(n);if(e.childCount)return r+1;r+=e.nodeSize}}return null}(y(t),e);if(null==r)return!1;if(n){const e=t.doc.resolve(r);n(t.tr.setSelection(s.Bs.between(e,(o=e,o.node(0).resolve(o.pos+o.nodeAfter.nodeSize)))).scrollIntoView())}var o;return!0}}function ue({allowTableNodeSelection:e=!1}={}){return new s.Sy({key:p,state:{init:()=>null,apply(e,t){const n=e.getMeta(p);if(null!=n)return-1==n?null:n;if(null==t||!e.docChanged)return t;const{deleted:r,pos:o}=e.mapping.mapResult(t);return r?null:o}},props:{decorations:M,handleDOMEvents:{mousedown:z},createSelectionBetween:e=>null!=p.getState(e.state)?e.state.selection:null,handleTripleClick:F,handleKeyDown:N,handlePaste:B},appendTransaction:(t,n,r)=>function(e,t,n){const r=(t||e).selection,o=(t||e).doc;let i,a;if(r instanceof s.qv&&(a=r.node.type.spec.tableRole)){if("cell"==a||"header_cell"==a)i=k.create(o,r.from);else if("row"==a){const e=o.resolve(r.from+1);i=k.rowSelection(e,e)}else if(!n){const e=h.get(r.node),t=r.from+1,n=t+e.map[e.width*e.height-1];i=k.create(o,t+1,n)}}else r instanceof s.Bs&&function({$from:e,$to:t}){if(e.pos==t.pos||e.pos<e.pos-6)return!1;let n=e.pos,r=t.pos,o=e.depth;for(;o>=0&&!(e.after(o+1)<e.end(o));o--,n++);for(let e=t.depth;e>=0&&!(t.before(e+1)>t.start(e));e--,r--);return n==r&&/row|table/.test(e.node(o).type.spec.tableRole)}(r)?i=s.Bs.create(o,r.from):r instanceof s.Bs&&function({$from:e,$to:t}){let n,r;for(let t=e.depth;t>0;t--){const r=e.node(t);if("cell"===r.type.spec.tableRole||"header_cell"===r.type.spec.tableRole){n=r;break}}for(let e=t.depth;e>0;e--){const n=t.node(e);if("cell"===n.type.spec.tableRole||"header_cell"===n.type.spec.tableRole){r=n;break}}return n!==r&&0===t.parentOffset}(r)&&(i=s.Bs.create(o,r.$from.start(),r.$from.end()));return i&&(t||(t=e.tr)).setSelection(i),t}(r,A(r,n),e)})}function he(e,t,n,r,o,i){let s=0,a=!0,l=t.firstChild;const c=e.firstChild;for(let e=0,n=0;e<c.childCount;e+=1){const{colspan:u,colwidth:h}=c.child(e).attrs;for(let e=0;e<u;e+=1,n+=1){const c=o===n?i:h&&h[e],u=c?`${c}px`:"";s+=c||r,c||(a=!1),l?(l.style.width!==u&&(l.style.width=u),l=l.nextSibling):t.appendChild(document.createElement("col")).style.width=u}}for(;l;){const e=l.nextSibling;l.parentNode.removeChild(l),l=e}a?(n.style.width=`${s}px`,n.style.minWidth=""):(n.style.width="",n.style.minWidth=`${s}px`)}class de{constructor(e,t){this.node=e,this.cellMinWidth=t,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table")),this.colgroup=this.table.appendChild(document.createElement("colgroup")),he(e,this.colgroup,this.table,t),this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(e){return e.type===this.node.type&&(this.node=e,he(e,this.colgroup,this.table,this.cellMinWidth),!0)}ignoreMutation(e){return"attributes"===e.type&&(e.target===this.table||this.colgroup.contains(e.target))}}function fe(e,t){return t?e.createChecked(null,t):e.createAndFill()}const pe=({editor:e})=>{const{selection:t}=e.state;if(!(t instanceof k))return!1;let n=0;const r=(0,i.qv)(t.ranges[0].$from,(e=>"table"===e.type.name));return null==r||r.node.descendants((e=>{if("table"===e.type.name)return!1;["tableCell","tableHeader"].includes(e.type.name)&&(n+=1)})),n===t.ranges.length&&(e.commands.deleteTable(),!0)},me=i.NB.create({name:"table",addOptions:()=>({HTMLAttributes:{},resizable:!1,handleWidth:5,cellMinWidth:25,View:de,lastColumnResizable:!0,allowTableNodeSelection:!1}),content:"tableRow+",tableRole:"table",isolating:!0,group:"block",parseHTML:()=>[{tag:"table"}],renderHTML({HTMLAttributes:e}){return["table",(0,i.P1)(this.options.HTMLAttributes,e),["tbody",0]]},addCommands:()=>({insertTable:({rows:e=3,cols:t=3,withHeaderRow:n=!0}={})=>({tr:r,dispatch:o,editor:i})=>{const a=function(e,t,n,r,o){const i=function(e){if(e.cached.tableNodeTypes)return e.cached.tableNodeTypes;const t={};return Object.keys(e.nodes).forEach((n=>{const r=e.nodes[n];r.spec.tableRole&&(t[r.spec.tableRole]=r)})),e.cached.tableNodeTypes=t,t}(e),s=[],a=[];for(let e=0;e<n;e+=1){const e=fe(i.cell,o);if(e&&a.push(e),r){const e=fe(i.header_cell,o);e&&s.push(e)}}const l=[];for(let e=0;e<t;e+=1)l.push(i.row.createChecked(null,r&&0===e?s:a));return i.table.createChecked(null,l)}(i.schema,e,t,n);if(o){const e=r.selection.anchor+1;r.replaceSelectionWith(a).scrollIntoView().setSelection(s.Bs.near(r.doc.resolve(e)))}return!0},addColumnBefore:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e);t(X(e.tr,n,n.left))}return!0}(e,t),addColumnAfter:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e);t(X(e.tr,n,n.right))}return!0}(e,t),deleteColumn:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e),r=e.tr;if(0==n.left&&n.right==n.map.width)return!1;for(let e=n.right-1;ee(r,n,e),e!=n.left;e--){const e=n.tableStart?r.doc.nodeAt(n.tableStart-1):r.doc;if(!e)throw RangeError("No table found");n.table=e,n.map=h.get(e)}t(r)}return!0}(e,t),addRowBefore:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e);t(te(e.tr,n,n.top))}return!0}(e,t),addRowAfter:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e);t(te(e.tr,n,n.bottom))}return!0}(e,t),deleteRow:()=>({state:e,dispatch:t})=>function(e,t){if(!g(e))return!1;if(t){const n=Z(e),r=e.tr;if(0==n.top&&n.bottom==n.map.height)return!1;for(let e=n.bottom-1;ne(r,n,e),e!=n.top;e--){const e=n.tableStart?r.doc.nodeAt(n.tableStart-1):r.doc;if(!e)throw RangeError("No table found");n.table=e,n.map=h.get(n.table)}t(r)}return!0}(e,t),deleteTable:()=>({state:e,dispatch:t})=>function(e,t){const n=e.selection.$anchor;for(let r=n.depth;r>0;r--)if("table"==n.node(r).type.spec.tableRole)return t&&t(e.tr.delete(n.before(r),n.after(r)).scrollIntoView()),!0;return!1}(e,t),mergeCells:()=>({state:e,dispatch:t})=>oe(e,t),splitCell:()=>({state:e,dispatch:t})=>ie(e,t),toggleHeaderColumn:()=>({state:e,dispatch:t})=>ae("column")(e,t),toggleHeaderRow:()=>({state:e,dispatch:t})=>ae("row")(e,t),toggleHeaderCell:()=>({state:e,dispatch:t})=>le(e,t),mergeOrSplit:()=>({state:e,dispatch:t})=>!!oe(e,t)||ie(e,t),setCellAttribute:(e,t)=>({state:n,dispatch:r})=>function(e,t){return function(n,r){if(!g(n))return!1;const o=y(n);if(o.nodeAfter.attrs[e]===t)return!1;if(r){const i=n.tr;n.selection instanceof k?n.selection.forEachCell(((n,r)=>{n.attrs[e]!==t&&i.setNodeMarkup(r,null,{...n.attrs,[e]:t})})):i.setNodeMarkup(o.pos,null,{...o.nodeAfter.attrs,[e]:t}),r(i)}return!0}}(e,t)(n,r),goToNextCell:()=>({state:e,dispatch:t})=>ce(1)(e,t),goToPreviousCell:()=>({state:e,dispatch:t})=>ce(-1)(e,t),fixTables:()=>({state:e,dispatch:t})=>(t&&A(e),!0),setCellSelection:e=>({tr:t,dispatch:n})=>{if(n){const n=k.create(t.doc,e.anchorCell,e.headCell);t.setSelection(n)}return!0}}),addKeyboardShortcuts(){return{Tab:()=>!!this.editor.commands.goToNextCell()||!!this.editor.can().addRowAfter()&&this.editor.chain().addRowAfter().goToNextCell().run(),"Shift-Tab":()=>this.editor.commands.goToPreviousCell(),Backspace:pe,"Mod-Backspace":pe,Delete:pe,"Mod-Delete":pe}},addProseMirrorPlugins(){return[...this.options.resizable&&this.editor.isEditable?[K({handleWidth:this.options.handleWidth,cellMinWidth:this.options.cellMinWidth,View:this.options.View,lastColumnResizable:this.options.lastColumnResizable})]:[],ue({allowTableNodeSelection:this.options.allowTableNodeSelection})]},extendNodeSchema(e){const t={name:e.name,options:e.options,storage:e.storage};return{tableRole:(0,i.nU)((0,i.Nl)(e,"tableRole",t))}}})},6279:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=n(3845).hj.create({name:"textAlign",addOptions:()=>({types:[],alignments:["left","center","right","justify"],defaultAlignment:"left"}),addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:e=>e.style.textAlign||this.options.defaultAlignment,renderHTML:e=>e.textAlign===this.options.defaultAlignment?{}:{style:`text-align: ${e.textAlign}`}}}}]},addCommands(){return{setTextAlign:e=>({commands:t})=>!!this.options.alignments.includes(e)&&this.options.types.every((n=>t.updateAttributes(n,{textAlign:e}))),unsetTextAlign:()=>({commands:e})=>this.options.types.every((t=>e.resetAttributes(t,"textAlign")))}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}})},3621:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.vc.create({name:"textStyle",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"span",getAttrs:e=>!!e.hasAttribute("style")&&{}}],renderHTML({HTMLAttributes:e}){return["span",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{removeEmptyTextStyle:()=>({state:e,commands:t})=>{const n=(0,r.Jo)(e,this.type);return!!Object.entries(n).some((([,e])=>!!e))||t.unsetMark(this.name)}}}})},2701:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=n(3845).NB.create({name:"text",group:"inline"})},8510:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3845);const o=r.vc.create({name:"underline",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"u"},{style:"text-decoration",consuming:!1,getAttrs:e=>!!e.includes("underline")&&{}}],renderHTML({HTMLAttributes:e}){return["u",(0,r.P1)(this.options.HTMLAttributes,e),0]},addCommands(){return{setUnderline:()=>({commands:e})=>e.setMark(this.name),toggleUnderline:()=>({commands:e})=>e.toggleMark(this.name),unsetUnderline:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-u":()=>this.editor.commands.toggleUnderline(),"Mod-U":()=>this.editor.commands.toggleUnderline()}}})},1284:(e,t,n)=>{"use strict";n.d(t,{T5:()=>d,fW:()=>m,jE:()=>u,kg:()=>l});var r=n(7294),o=n(3935),i=n(3845);const s=({renderers:e})=>r.createElement(r.Fragment,null,Object.entries(e).map((([e,t])=>o.createPortal(t.reactElement,t.element,e))));class a extends r.Component{constructor(e){super(e),this.editorContentRef=r.createRef(),this.initialized=!1,this.state={renderers:{}}}componentDidMount(){this.init()}componentDidUpdate(){this.init()}init(){const{editor:e}=this.props;if(e&&e.options.element){if(e.contentComponent)return;const t=this.editorContentRef.current;t.append(...e.options.element.childNodes),e.setOptions({element:t}),e.contentComponent=this,e.createNodeViews(),this.initialized=!0}}maybeFlushSync(e){this.initialized?(0,o.flushSync)(e):e()}setRenderer(e,t){this.maybeFlushSync((()=>{this.setState((({renderers:n})=>({renderers:{...n,[e]:t}})))}))}removeRenderer(e){this.maybeFlushSync((()=>{this.setState((({renderers:t})=>{const n={...t};return delete n[e],{renderers:n}}))}))}componentWillUnmount(){const{editor:e}=this.props;if(!e)return;if(this.initialized=!1,e.isDestroyed||e.view.setProps({nodeViews:{}}),e.contentComponent=null,!e.options.element.firstChild)return;const t=document.createElement("div");t.append(...e.options.element.childNodes),e.setOptions({element:t})}render(){const{editor:e,...t}=this.props;return r.createElement(r.Fragment,null,r.createElement("div",{ref:this.editorContentRef,...t}),r.createElement(s,{renderers:this.state.renderers}))}}const l=r.memo((e=>{const t=r.useMemo((()=>Math.floor(4294967295*Math.random()).toString()),[e.editor]);return r.createElement(a,{key:t,...e})}));class c extends i.ML{constructor(){super(...arguments),this.contentComponent=null}}const u=(e={},t=[])=>{const[n,o]=(0,r.useState)(null),i=function(){const[,e]=(0,r.useState)(0);return()=>e((e=>e+1))}(),{onBeforeCreate:s,onBlur:a,onCreate:l,onDestroy:u,onFocus:h,onSelectionUpdate:d,onTransaction:f,onUpdate:p}=e,m=(0,r.useRef)(s),g=(0,r.useRef)(a),y=(0,r.useRef)(l),v=(0,r.useRef)(u),b=(0,r.useRef)(h),w=(0,r.useRef)(d),x=(0,r.useRef)(f),S=(0,r.useRef)(p);return(0,r.useEffect)((()=>{n&&(s&&(n.off("beforeCreate",m.current),n.on("beforeCreate",s),m.current=s),a&&(n.off("blur",g.current),n.on("blur",a),g.current=a),l&&(n.off("create",y.current),n.on("create",l),y.current=l),u&&(n.off("destroy",v.current),n.on("destroy",u),v.current=u),h&&(n.off("focus",b.current),n.on("focus",h),b.current=h),d&&(n.off("selectionUpdate",w.current),n.on("selectionUpdate",d),w.current=d),f&&(n.off("transaction",x.current),n.on("transaction",f),x.current=f),p&&(n.off("update",S.current),n.on("update",p),S.current=p))}),[s,a,l,u,h,d,f,p,n]),(0,r.useEffect)((()=>{let t=!0;const n=new c(e);return o(n),n.on("transaction",(()=>{requestAnimationFrame((()=>{requestAnimationFrame((()=>{t&&i()}))}))})),()=>{t=!1}}),t),(0,r.useEffect)((()=>()=>{null==n||n.destroy()}),[n]),n},h=((0,r.createContext)({editor:null}).Consumer,(0,r.createContext)({onDragStart:void 0})),d=r.forwardRef(((e,t)=>{const{onDragStart:n}=(0,r.useContext)(h),o=e.as||"div";return r.createElement(o,{...e,ref:t,"data-node-view-wrapper":"",onDragStart:n,style:{whiteSpace:"normal",...e.style}})}));class f{constructor(e,{editor:t,props:n={},as:r="div",className:o="",attrs:i}){this.ref=null,this.id=Math.floor(4294967295*Math.random()).toString(),this.component=e,this.editor=t,this.props=n,this.element=document.createElement(r),this.element.classList.add("react-renderer"),o&&this.element.classList.add(...o.split(" ")),i&&Object.keys(i).forEach((e=>{this.element.setAttribute(e,i[e])})),this.render()}render(){var e,t;const n=this.component,o=this.props;(function(e){return!("function"!=typeof e||!e.prototype||!e.prototype.isReactComponent)}(n)||function(e){var t;return!("object"!=typeof e||"Symbol(react.forward_ref)"!==(null===(t=e.$$typeof)||void 0===t?void 0:t.toString()))}(n))&&(o.ref=e=>{this.ref=e}),this.reactElement=r.createElement(n,{...o}),null===(t=null===(e=this.editor)||void 0===e?void 0:e.contentComponent)||void 0===t||t.setRenderer(this.id,this)}updateProps(e={}){this.props={...this.props,...e},this.render()}destroy(){var e,t;null===(t=null===(e=this.editor)||void 0===e?void 0:e.contentComponent)||void 0===t||t.removeRenderer(this.id)}}class p extends i.DK{mount(){const e={editor:this.editor,node:this.node,decorations:this.decorations,selected:!1,extension:this.extension,getPos:()=>this.getPos(),updateAttributes:(e={})=>this.updateAttributes(e),deleteNode:()=>this.deleteNode()};if(!this.component.displayName){const e=e=>e.charAt(0).toUpperCase()+e.substring(1);this.component.displayName=e(this.extension.name)}const t=e=>{const t=this.component,n=this.onDragStart.bind(this);return r.createElement(r.Fragment,null,r.createElement(h.Provider,{value:{onDragStart:n,nodeViewContentRef:e=>{e&&this.contentDOMElement&&e.firstChild!==this.contentDOMElement&&e.appendChild(this.contentDOMElement)}}},r.createElement(t,{...e})))};t.displayName="ReactNodeView",this.contentDOMElement=this.node.isLeaf?null:document.createElement(this.node.isInline?"span":"div"),this.contentDOMElement&&(this.contentDOMElement.style.whiteSpace="inherit");let n=this.node.isInline?"span":"div";this.options.as&&(n=this.options.as);const{className:o=""}=this.options;this.handleSelectionUpdate=this.handleSelectionUpdate.bind(this),this.editor.on("selectionUpdate",this.handleSelectionUpdate),this.renderer=new f(t,{editor:this.editor,props:e,as:n,className:`node-${this.node.type.name} ${o}`.trim(),attrs:this.options.attrs})}get dom(){var e;if(this.renderer.element.firstElementChild&&!(null===(e=this.renderer.element.firstElementChild)||void 0===e?void 0:e.hasAttribute("data-node-view-wrapper")))throw Error("Please use the NodeViewWrapper component for your node view.");return this.renderer.element}get contentDOM(){return this.node.isLeaf?null:this.contentDOMElement}handleSelectionUpdate(){const{from:e,to:t}=this.editor.state.selection;e<=this.getPos()&&t>=this.getPos()+this.node.nodeSize?this.selectNode():this.deselectNode()}update(e,t){const n=e=>{this.renderer.updateProps(e)};if(e.type!==this.node.type)return!1;if("function"==typeof this.options.update){const r=this.node,o=this.decorations;return this.node=e,this.decorations=t,this.options.update({oldNode:r,oldDecorations:o,newNode:e,newDecorations:t,updateProps:()=>n({node:e,decorations:t})})}return e===this.node&&this.decorations===t||(this.node=e,this.decorations=t,n({node:e,decorations:t})),!0}selectNode(){this.renderer.updateProps({selected:!0}),this.renderer.element.classList.add("ProseMirror-selectednode")}deselectNode(){this.renderer.updateProps({selected:!1}),this.renderer.element.classList.remove("ProseMirror-selectednode")}destroy(){this.renderer.destroy(),this.editor.off("selectionUpdate",this.handleSelectionUpdate),this.contentDOMElement=null}}function m(e,t){return n=>n.editor.contentComponent?new p(e,n,t):{}}},2861:(e,t,n)=>{"use strict";function r(e,t){return function(){return e.apply(t,arguments)}}n.d(t,{Z:()=>Le});const{toString:o}=Object.prototype,{getPrototypeOf:i}=Object,s=(a=Object.create(null),e=>{const t=o.call(e);return a[t]||(a[t]=t.slice(8,-1).toLowerCase())});var a;const l=e=>(e=e.toLowerCase(),t=>s(t)===e),c=e=>t=>typeof t===e,{isArray:u}=Array,h=c("undefined"),d=l("ArrayBuffer"),f=c("string"),p=c("function"),m=c("number"),g=e=>null!==e&&"object"==typeof e,y=e=>{if("object"!==s(e))return!1;const t=i(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||Symbol.toStringTag in e||Symbol.iterator in e)},v=l("Date"),b=l("File"),w=l("Blob"),x=l("FileList"),S=l("URLSearchParams");function k(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),u(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let s;for(r=0;r<i;r++)s=o[r],t.call(null,e[s],s,e)}}function C(e,t){t=t.toLowerCase();const n=Object.keys(e);let r,o=n.length;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const M="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:global,O=e=>!h(e)&&e!==M,E=(A="undefined"!=typeof Uint8Array&&i(Uint8Array),e=>A&&e instanceof A);var A;const T=l("HTMLFormElement"),D=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),_=l("RegExp"),R=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};k(n,((n,o)=>{!1!==t(n,o,e)&&(r[o]=n)})),Object.defineProperties(e,r)},N="abcdefghijklmnopqrstuvwxyz",P="0123456789",I={DIGIT:P,ALPHA:N,ALPHA_DIGIT:N+N.toUpperCase()+P},L={isArray:u,isArrayBuffer:d,isBuffer:function(e){return null!==e&&!h(e)&&null!==e.constructor&&!h(e.constructor)&&p(e.constructor.isBuffer)&&e.constructor.isBuffer(e)},isFormData:e=>{const t="[object FormData]";return e&&("function"==typeof FormData&&e instanceof FormData||o.call(e)===t||p(e.toString)&&e.toString()===t)},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&d(e.buffer),t},isString:f,isNumber:m,isBoolean:e=>!0===e||!1===e,isObject:g,isPlainObject:y,isUndefined:h,isDate:v,isFile:b,isBlob:w,isRegExp:_,isFunction:p,isStream:e=>g(e)&&p(e.pipe),isURLSearchParams:S,isTypedArray:E,isFileList:x,forEach:k,merge:function e(){const{caseless:t}=O(this)&&this||{},n={},r=(r,o)=>{const i=t&&C(n,o)||o;y(n[i])&&y(r)?n[i]=e(n[i],r):y(r)?n[i]=e({},r):u(r)?n[i]=r.slice():n[i]=r};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&k(arguments[e],r);return n},extend:(e,t,n,{allOwnKeys:o}={})=>(k(t,((t,o)=>{n&&p(t)?e[o]=r(t,n):e[o]=t}),{allOwnKeys:o}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,a;const l={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],r&&!r(a,e,t)||l[a]||(t[a]=e[a],l[a]=!0);e=!1!==n&&i(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:s,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(u(e))return e;let t=e.length;if(!m(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[Symbol.iterator]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:T,hasOwnProperty:D,hasOwnProp:D,reduceDescriptors:R,freezeMethods:e=>{R(e,((t,n)=>{if(p(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];p(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return u(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>(e=+e,Number.isFinite(e)?e:t),findKey:C,global:M,isContextDefined:O,ALPHABET:I,generateString:(e=16,t=I.ALPHA_DIGIT)=>{let n="";const{length:r}=t;for(;e--;)n+=t[Math.random()*r|0];return n},isSpecCompliantForm:function(e){return!!(e&&p(e.append)&&"FormData"===e[Symbol.toStringTag]&&e[Symbol.iterator])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(g(e)){if(t.indexOf(e)>=0)return;if(!("toJSON"in e)){t[r]=e;const o=u(e)?[]:{};return k(e,((e,t)=>{const i=n(e,r+1);!h(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)}};function j(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o)}L.inherits(j,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:L.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});const F=j.prototype,B={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{B[e]={value:e}})),Object.defineProperties(j,B),Object.defineProperty(F,"isAxiosError",{value:!0}),j.from=(e,t,n,r,o,i)=>{const s=Object.create(F);return L.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e)),j.call(s,e.message,t,n,r,o),s.cause=e,s.name=e.name,i&&Object.assign(s,i),s};const z=j;function $(e){return L.isPlainObject(e)||L.isArray(e)}function H(e){return L.endsWith(e,"[]")?e.slice(0,-2):e}function W(e,t,n){return e?e.concat(t).map((function(e,t){return e=H(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const U=L.toFlatObject(L,{},null,(function(e){return/^is[A-Z]/.test(e)})),V=function(e,t,n){if(!L.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=L.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!L.isUndefined(t[e])}))).metaTokens,o=n.visitor||c,i=n.dots,s=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&L.isSpecCompliantForm(t);if(!L.isFunction(o))throw new TypeError("visitor must be a function");function l(e){if(null===e)return"";if(L.isDate(e))return e.toISOString();if(!a&&L.isBlob(e))throw new z("Blob is not supported. Use a Buffer instead.");return L.isArrayBuffer(e)||L.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function c(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(L.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(L.isArray(e)&&function(e){return L.isArray(e)&&!e.some($)}(e)||(L.isFileList(e)||L.endsWith(n,"[]"))&&(a=L.toArray(e)))return n=H(n),a.forEach((function(e,r){!L.isUndefined(e)&&null!==e&&t.append(!0===s?W([n],r,i):null===s?n:n+"[]",l(e))})),!1;return!!$(e)||(t.append(W(o,n,i),l(e)),!1)}const u=[],h=Object.assign(U,{defaultVisitor:c,convertValue:l,isVisitable:$});if(!L.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!L.isUndefined(n)){if(-1!==u.indexOf(n))throw Error("Circular reference detected in "+r.join("."));u.push(n),L.forEach(n,(function(n,i){!0===(!(L.isUndefined(n)||null===n)&&o.call(t,n,L.isString(i)?i.trim():i,r,h))&&e(n,r?r.concat(i):[i])})),u.pop()}}(e),t};function q(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function K(e,t){this._pairs=[],e&&V(e,this,t)}const Y=K.prototype;Y.append=function(e,t){this._pairs.push([e,t])},Y.toString=function(e){const t=e?function(t){return e.call(this,t,q)}:q;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};const G=K;function J(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function Q(e,t,n){if(!t)return e;const r=n&&n.encode||J,o=n&&n.serialize;let i;if(i=o?o(t,n):L.isURLSearchParams(t)?t.toString():new G(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}const Z=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){L.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},X={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ee={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:G,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},isStandardBrowserEnv:(()=>{let e;return("undefined"==typeof navigator||"ReactNative"!==(e=navigator.product)&&"NativeScript"!==e&&"NS"!==e)&&"undefined"!=typeof window&&"undefined"!=typeof document})(),isStandardBrowserWebWorkerEnv:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,protocols:["http","https","file","blob","url","data"]},te=function(e){function t(e,n,r,o){let i=e[o++];const s=Number.isFinite(+i),a=o>=e.length;return i=!i&&L.isArray(r)?r.length:i,a?(L.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!s):(r[i]&&L.isObject(r[i])||(r[i]=[]),t(e,n,r[i],o)&&L.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}(r[i])),!s)}if(L.isFormData(e)&&L.isFunction(e.entries)){const n={};return L.forEachEntry(e,((e,r)=>{t(function(e){return L.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null},ne={"Content-Type":void 0},re={transitional:X,adapter:["xhr","http"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=L.isObject(e);if(o&&L.isHTMLForm(e)&&(e=new FormData(e)),L.isFormData(e))return r&&r?JSON.stringify(te(e)):e;if(L.isArrayBuffer(e)||L.isBuffer(e)||L.isStream(e)||L.isFile(e)||L.isBlob(e))return e;if(L.isArrayBufferView(e))return e.buffer;if(L.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return V(e,new ee.classes.URLSearchParams,Object.assign({visitor:function(e,t,n,r){return ee.isNode&&L.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)}},t))}(e,this.formSerializer).toString();if((i=L.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return V(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(L.isString(e))try{return(0,JSON.parse)(e),L.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||re.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(e&&L.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e)}catch(e){if(n){if("SyntaxError"===e.name)throw z.from(e,z.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ee.classes.FormData,Blob:ee.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};L.forEach(["delete","get","head"],(function(e){re.headers[e]={}})),L.forEach(["post","put","patch"],(function(e){re.headers[e]=L.merge(ne)}));const oe=re,ie=L.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),se=Symbol("internals");function ae(e){return e&&String(e).trim().toLowerCase()}function le(e){return!1===e||null==e?e:L.isArray(e)?e.map(le):String(e)}function ce(e,t,n,r,o){return L.isFunction(r)?r.call(this,t,n):(o&&(t=n),L.isString(t)?L.isString(r)?-1!==t.indexOf(r):L.isRegExp(r)?r.test(t):void 0:void 0)}class ue{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=ae(t);if(!o)throw new Error("header name must be a non-empty string");const i=L.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=le(e))}const i=(e,t)=>L.forEach(e,((e,n)=>o(e,n,t)));return L.isPlainObject(e)||e instanceof this.constructor?i(e,t):L.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim())?i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&ie[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t):null!=e&&o(t,e,n),this}get(e,t){if(e=ae(e)){const n=L.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(L.isFunction(t))return t.call(this,e,n);if(L.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=ae(e)){const n=L.findKey(this,e);return!(!n||void 0===this[n]||t&&!ce(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=ae(e)){const o=L.findKey(n,e);!o||t&&!ce(0,n[o],o,t)||(delete n[o],r=!0)}}return L.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!ce(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return L.forEach(this,((r,o)=>{const i=L.findKey(n,o);if(i)return t[i]=le(r),void delete t[o];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();s!==o&&delete t[o],t[s]=le(r),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return L.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&L.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[se]=this[se]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=ae(e);t[r]||(function(e,t){const n=L.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return L.isArray(e)?e.forEach(r):r(e),this}}ue.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),L.freezeMethods(ue.prototype),L.freezeMethods(ue);const he=ue;function de(e,t){const n=this||oe,r=t||n,o=he.from(r.headers);let i=r.data;return L.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function fe(e){return!(!e||!e.__CANCEL__)}function pe(e,t,n){z.call(this,null==e?"canceled":e,z.ERR_CANCELED,t,n),this.name="CanceledError"}L.inherits(pe,z,{__CANCEL__:!0});const me=pe,ge=ee.isStandardBrowserEnv?{write:function(e,t,n,r,o,i){const s=[];s.push(e+"="+encodeURIComponent(t)),L.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),L.isString(r)&&s.push("path="+r),L.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read:function(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}};function ye(e,t){return e&&!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)?function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const ve=ee.isStandardBrowserEnv?function(){const e=/(msie|trident)/i.test(navigator.userAgent),t=document.createElement("a");let n;function r(n){let r=n;return e&&(t.setAttribute("href",r),r=t.href),t.setAttribute("href",r),{href:t.href,protocol:t.protocol?t.protocol.replace(/:$/,""):"",host:t.host,search:t.search?t.search.replace(/^\?/,""):"",hash:t.hash?t.hash.replace(/^#/,""):"",hostname:t.hostname,port:t.port,pathname:"/"===t.pathname.charAt(0)?t.pathname:"/"+t.pathname}}return n=r(window.location.href),function(e){const t=L.isString(e)?r(e):e;return t.protocol===n.protocol&&t.host===n.host}}():function(){return!0};function be(e,t){let n=0;const r=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,s=0;return t=void 0!==t?t:1e3,function(a){const l=Date.now(),c=r[s];o||(o=l),n[i]=a,r[i]=l;let u=s,h=0;for(;u!==i;)h+=n[u++],u%=e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),l-o<t)return;const d=c&&l-c;return d?Math.round(1e3*h/d):void 0}}(50,250);return o=>{const i=o.loaded,s=o.lengthComputable?o.total:void 0,a=i-n,l=r(a);n=i;const c={loaded:i,total:s,progress:s?i/s:void 0,bytes:a,rate:l||void 0,estimated:l&&s&&i<=s?(s-i)/l:void 0,event:o};c[t?"download":"upload"]=!0,e(c)}}const we={http:null,xhr:"undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){let r=e.data;const o=he.from(e.headers).normalize(),i=e.responseType;let s;function a(){e.cancelToken&&e.cancelToken.unsubscribe(s),e.signal&&e.signal.removeEventListener("abort",s)}L.isFormData(r)&&(ee.isStandardBrowserEnv||ee.isStandardBrowserWebWorkerEnv)&&o.setContentType(!1);let l=new XMLHttpRequest;if(e.auth){const t=e.auth.username||"",n=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";o.set("Authorization","Basic "+btoa(t+":"+n))}const c=ye(e.baseURL,e.url);function u(){if(!l)return;const r=he.from("getAllResponseHeaders"in l&&l.getAllResponseHeaders());!function(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new z("Request failed with status code "+n.status,[z.ERR_BAD_REQUEST,z.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}((function(e){t(e),a()}),(function(e){n(e),a()}),{data:i&&"text"!==i&&"json"!==i?l.response:l.responseText,status:l.status,statusText:l.statusText,headers:r,config:e,request:l}),l=null}if(l.open(e.method.toUpperCase(),Q(c,e.params,e.paramsSerializer),!0),l.timeout=e.timeout,"onloadend"in l?l.onloadend=u:l.onreadystatechange=function(){l&&4===l.readyState&&(0!==l.status||l.responseURL&&0===l.responseURL.indexOf("file:"))&&setTimeout(u)},l.onabort=function(){l&&(n(new z("Request aborted",z.ECONNABORTED,e,l)),l=null)},l.onerror=function(){n(new z("Network Error",z.ERR_NETWORK,e,l)),l=null},l.ontimeout=function(){let t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";const r=e.transitional||X;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),n(new z(t,r.clarifyTimeoutError?z.ETIMEDOUT:z.ECONNABORTED,e,l)),l=null},ee.isStandardBrowserEnv){const t=(e.withCredentials||ve(c))&&e.xsrfCookieName&&ge.read(e.xsrfCookieName);t&&o.set(e.xsrfHeaderName,t)}void 0===r&&o.setContentType(null),"setRequestHeader"in l&&L.forEach(o.toJSON(),(function(e,t){l.setRequestHeader(t,e)})),L.isUndefined(e.withCredentials)||(l.withCredentials=!!e.withCredentials),i&&"json"!==i&&(l.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&l.addEventListener("progress",be(e.onDownloadProgress,!0)),"function"==typeof e.onUploadProgress&&l.upload&&l.upload.addEventListener("progress",be(e.onUploadProgress)),(e.cancelToken||e.signal)&&(s=t=>{l&&(n(!t||t.type?new me(null,e,l):t),l.abort(),l=null)},e.cancelToken&&e.cancelToken.subscribe(s),e.signal&&(e.signal.aborted?s():e.signal.addEventListener("abort",s)));const h=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(c);h&&-1===ee.protocols.indexOf(h)?n(new z("Unsupported protocol "+h+":",z.ERR_BAD_REQUEST,e)):l.send(r||null)}))}};L.forEach(we,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));function xe(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new me(null,e)}function Se(e){return xe(e),e.headers=he.from(e.headers),e.data=de.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1),(e=>{e=L.isArray(e)?e:[e];const{length:t}=e;let n,r;for(let o=0;o<t&&(n=e[o],!(r=L.isString(n)?we[n.toLowerCase()]:n));o++);if(!r){if(!1===r)throw new z(`Adapter ${n} is not supported by the environment`,"ERR_NOT_SUPPORT");throw new Error(L.hasOwnProp(we,n)?`Adapter '${n}' is not available in the build`:`Unknown adapter '${n}'`)}if(!L.isFunction(r))throw new TypeError("adapter is not a function");return r})(e.adapter||oe.adapter)(e).then((function(t){return xe(e),t.data=de.call(e,e.transformResponse,t),t.headers=he.from(t.headers),t}),(function(t){return fe(t)||(xe(e),t&&t.response&&(t.response.data=de.call(e,e.transformResponse,t.response),t.response.headers=he.from(t.response.headers))),Promise.reject(t)}))}const ke=e=>e instanceof he?e.toJSON():e;function Ce(e,t){t=t||{};const n={};function r(e,t,n){return L.isPlainObject(e)&&L.isPlainObject(t)?L.merge.call({caseless:n},e,t):L.isPlainObject(t)?L.merge({},t):L.isArray(t)?t.slice():t}function o(e,t,n){return L.isUndefined(t)?L.isUndefined(e)?void 0:r(void 0,e,n):r(e,t,n)}function i(e,t){if(!L.isUndefined(t))return r(void 0,t)}function s(e,t){return L.isUndefined(t)?L.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const l={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t)=>o(ke(e),ke(t),!0)};return L.forEach(Object.keys(e).concat(Object.keys(t)),(function(r){const i=l[r]||o,s=i(e[r],t[r],r);L.isUndefined(s)&&i!==a||(n[r]=s)})),n}const Me={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{Me[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const Oe={};Me.transitional=function(e,t,n){function r(e,t){return"[Axios v1.3.5] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,i)=>{if(!1===e)throw new z(r(o," has been removed"+(t?" in "+t:"")),z.ERR_DEPRECATED);return t&&!Oe[o]&&(Oe[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,i)}};const Ee={assertOptions:function(e,t,n){if("object"!=typeof e)throw new z("options must be an object",z.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],s=t[i];if(s){const t=e[i],n=void 0===t||s(t,i,e);if(!0!==n)throw new z("option "+i+" must be "+n,z.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new z("Unknown option "+i,z.ERR_BAD_OPTION)}},validators:Me},Ae=Ee.validators;class Te{constructor(e){this.defaults=e,this.interceptors={request:new Z,response:new Z}}request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ce(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;let i;void 0!==n&&Ee.assertOptions(n,{silentJSONParsing:Ae.transitional(Ae.boolean),forcedJSONParsing:Ae.transitional(Ae.boolean),clarifyTimeoutError:Ae.transitional(Ae.boolean)},!1),null!=r&&(L.isFunction(r)?t.paramsSerializer={serialize:r}:Ee.assertOptions(r,{encode:Ae.function,serialize:Ae.function},!0)),t.method=(t.method||this.defaults.method||"get").toLowerCase(),i=o&&L.merge(o.common,o[t.method]),i&&L.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=he.concat(i,o);const s=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const l=[];let c;this.interceptors.response.forEach((function(e){l.push(e.fulfilled,e.rejected)}));let u,h=0;if(!a){const e=[Se.bind(this),void 0];for(e.unshift.apply(e,s),e.push.apply(e,l),u=e.length,c=Promise.resolve(t);h<u;)c=c.then(e[h++],e[h++]);return c}u=s.length;let d=t;for(h=0;h<u;){const e=s[h++],t=s[h++];try{d=e(d)}catch(e){t.call(this,e);break}}try{c=Se.call(this,d)}catch(e){return Promise.reject(e)}for(h=0,u=l.length;h<u;)c=c.then(l[h++],l[h++]);return c}getUri(e){return Q(ye((e=Ce(this.defaults,e)).baseURL,e.url),e.params,e.paramsSerializer)}}L.forEach(["delete","get","head","options"],(function(e){Te.prototype[e]=function(t,n){return this.request(Ce(n||{},{method:e,url:t,data:(n||{}).data}))}})),L.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,o){return this.request(Ce(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}Te.prototype[e]=t(),Te.prototype[e+"Form"]=t(!0)}));const De=Te;class _e{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new me(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}static source(){let e;return{token:new _e((function(t){e=t})),cancel:e}}}const Re=_e,Ne={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Ne).forEach((([e,t])=>{Ne[t]=e}));const Pe=Ne,Ie=function e(t){const n=new De(t),o=r(De.prototype.request,n);return L.extend(o,De.prototype,n,{allOwnKeys:!0}),L.extend(o,n,null,{allOwnKeys:!0}),o.create=function(n){return e(Ce(t,n))},o}(oe);Ie.Axios=De,Ie.CanceledError=me,Ie.CancelToken=Re,Ie.isCancel=fe,Ie.VERSION="1.3.5",Ie.toFormData=V,Ie.AxiosError=z,Ie.Cancel=Ie.CanceledError,Ie.all=function(e){return Promise.all(e)},Ie.spread=function(e){return function(t){return e.apply(null,t)}},Ie.isAxiosError=function(e){return L.isObject(e)&&!0===e.isAxiosError},Ie.mergeConfig=Ce,Ie.AxiosHeaders=he,Ie.formToJSON=e=>te(L.isHTMLForm(e)?new FormData(e):e),Ie.HttpStatusCode=Pe,Ie.default=Ie;const Le=Ie},2902:(e,t,n)=>{"use strict";function r(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];throw Error("[Immer] minified error nr: "+e+(n.length?" "+n.map((function(e){return"'"+e+"'"})).join(","):"")+". Find the full error at: https://bit.ly/3cXEKWf")}function o(e){return!!e&&!!e[U]}function i(e){var t;return!!e&&(function(e){if(!e||"object"!=typeof e)return!1;var t=Object.getPrototypeOf(e);if(null===t)return!0;var n=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;return n===Object||"function"==typeof n&&Function.toString.call(n)===V}(e)||Array.isArray(e)||!!e[W]||!!(null===(t=e.constructor)||void 0===t?void 0:t[W])||h(e)||d(e))}function s(e){return o(e)||r(23,e),e[U].t}function a(e,t,n){void 0===n&&(n=!1),0===l(e)?(n?Object.keys:q)(e).forEach((function(r){n&&"symbol"==typeof r||t(r,e[r],e)})):e.forEach((function(n,r){return t(r,n,e)}))}function l(e){var t=e[U];return t?t.i>3?t.i-4:t.i:Array.isArray(e)?1:h(e)?2:d(e)?3:0}function c(e,t){return 2===l(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function u(e,t,n){var r=l(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function h(e){return B&&e instanceof Map}function d(e){return z&&e instanceof Set}function f(e){return e.o||e.t}function p(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=K(e);delete t[U];for(var n=q(t),r=0;r<n.length;r++){var o=n[r],i=t[o];!1===i.writable&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(t[o]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[o]})}return Object.create(Object.getPrototypeOf(e),t)}function m(e,t){return void 0===t&&(t=!1),y(e)||o(e)||!i(e)||(l(e)>1&&(e.set=e.add=e.clear=e.delete=g),Object.freeze(e),t&&a(e,(function(e,t){return m(t,!0)}),!0)),e}function g(){r(2)}function y(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function v(e){var t=Y[e];return t||r(18,e),t}function b(){return j}function w(e,t){t&&(v("Patches"),e.u=[],e.s=[],e.v=t)}function x(e){S(e),e.p.forEach(C),e.p=null}function S(e){e===j&&(j=e.l)}function k(e){return j={p:[],l:j,h:e,m:!0,_:0}}function C(e){var t=e[U];0===t.i||1===t.i?t.j():t.g=!0}function M(e,t){t._=t.p.length;var n=t.p[0],o=void 0!==e&&e!==n;return t.h.O||v("ES5").S(t,e,o),o?(n[U].P&&(x(t),r(4)),i(e)&&(e=O(t,e),t.l||A(t,e)),t.u&&v("Patches").M(n[U].t,e,t.u,t.s)):e=O(t,n,[]),x(t),t.u&&t.v(t.u,t.s),e!==H?e:void 0}function O(e,t,n){if(y(t))return t;var r=t[U];if(!r)return a(t,(function(o,i){return E(e,r,t,o,i,n)}),!0),t;if(r.A!==e)return t;if(!r.P)return A(e,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var o=4===r.i||5===r.i?r.o=p(r.k):r.o,i=o,s=!1;3===r.i&&(i=new Set(o),o.clear(),s=!0),a(i,(function(t,i){return E(e,r,o,t,i,n,s)})),A(e,o,!1),n&&e.u&&v("Patches").N(r,n,e.u,e.s)}return r.o}function E(e,t,n,r,s,a,l){if(o(s)){var h=O(e,s,a&&t&&3!==t.i&&!c(t.R,r)?a.concat(r):void 0);if(u(n,r,h),!o(h))return;e.m=!1}else l&&n.add(s);if(i(s)&&!y(s)){if(!e.h.D&&e._<1)return;O(e,s),t&&t.A.l||A(e,s)}}function A(e,t,n){void 0===n&&(n=!1),!e.l&&e.h.D&&e.m&&m(t,n)}function T(e,t){var n=e[U];return(n?f(n):e)[t]}function D(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function _(e){e.P||(e.P=!0,e.l&&_(e.l))}function R(e){e.o||(e.o=p(e.t))}function N(e,t,n){var r=h(t)?v("MapSet").F(t,n):d(t)?v("MapSet").T(t,n):e.O?function(e,t){var n=Array.isArray(e),r={i:n?1:0,A:t?t.A:b(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=r,i=G;n&&(o=[r],i=J);var s=Proxy.revocable(o,i),a=s.revoke,l=s.proxy;return r.k=l,r.j=a,l}(t,n):v("ES5").J(t,n);return(n?n.A:b()).p.push(r),r}function P(e){return o(e)||r(22,e),function e(t){if(!i(t))return t;var n,r=t[U],o=l(t);if(r){if(!r.P&&(r.i<4||!v("ES5").K(r)))return r.t;r.I=!0,n=I(t,o),r.I=!1}else n=I(t,o);return a(n,(function(t,o){r&&function(e,t){return 2===l(e)?e.get(t):e[t]}(r.t,t)===o||u(n,t,e(o))})),3===o?new Set(n):n}(e)}function I(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return p(e)}n.d(t,{Fl:()=>ee,Js:()=>s,Uy:()=>X,ZP:()=>te,mv:()=>o});var L,j,F="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),B="undefined"!=typeof Map,z="undefined"!=typeof Set,$="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,H=F?Symbol.for("immer-nothing"):((L={})["immer-nothing"]=!0,L),W=F?Symbol.for("immer-draftable"):"__$immer_draftable",U=F?Symbol.for("immer-state"):"__$immer_state",V=("undefined"!=typeof Symbol&&Symbol.iterator,""+Object.prototype.constructor),q="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,K=Object.getOwnPropertyDescriptors||function(e){var t={};return q(e).forEach((function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)})),t},Y={},G={get:function(e,t){if(t===U)return e;var n=f(e);if(!c(n,t))return function(e,t,n){var r,o=D(t,n);return o?"value"in o?o.value:null===(r=o.get)||void 0===r?void 0:r.call(e.k):void 0}(e,n,t);var r=n[t];return e.I||!i(r)?r:r===T(e.t,t)?(R(e),e.o[t]=N(e.A.h,r,e)):r},has:function(e,t){return t in f(e)},ownKeys:function(e){return Reflect.ownKeys(f(e))},set:function(e,t,n){var r=D(f(e),t);if(null==r?void 0:r.set)return r.set.call(e.k,n),!0;if(!e.P){var o=T(f(e),t),i=null==o?void 0:o[U];if(i&&i.t===n)return e.o[t]=n,e.R[t]=!1,!0;if(function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}(n,o)&&(void 0!==n||c(e.t,t)))return!0;R(e),_(e)}return e.o[t]===n&&(void 0!==n||t in e.o)||Number.isNaN(n)&&Number.isNaN(e.o[t])||(e.o[t]=n,e.R[t]=!0),!0},deleteProperty:function(e,t){return void 0!==T(e.t,t)||t in e.t?(e.R[t]=!1,R(e),_(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var n=f(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:r.enumerable,value:n[t]}:r},defineProperty:function(){r(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){r(12)}},J={};a(G,(function(e,t){J[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),J.deleteProperty=function(e,t){return J.set.call(this,e,t,void 0)},J.set=function(e,t,n){return G.set.call(this,e[0],t,n,e[0])};var Q=function(){function e(e){var t=this;this.O=$,this.D=!0,this.produce=function(e,n,o){if("function"==typeof e&&"function"!=typeof n){var s=n;n=e;var a=t;return function(e){var t=this;void 0===e&&(e=s);for(var r=arguments.length,o=Array(r>1?r-1:0),i=1;i<r;i++)o[i-1]=arguments[i];return a.produce(e,(function(e){var r;return(r=n).call.apply(r,[t,e].concat(o))}))}}var l;if("function"!=typeof n&&r(6),void 0!==o&&"function"!=typeof o&&r(7),i(e)){var c=k(t),u=N(t,e,void 0),h=!0;try{l=n(u),h=!1}finally{h?x(c):S(c)}return"undefined"!=typeof Promise&&l instanceof Promise?l.then((function(e){return w(c,o),M(e,c)}),(function(e){throw x(c),e})):(w(c,o),M(l,c))}if(!e||"object"!=typeof e){if(void 0===(l=n(e))&&(l=e),l===H&&(l=void 0),t.D&&m(l,!0),o){var d=[],f=[];v("Patches").M(e,l,d,f),o(d,f)}return l}r(21,e)},this.produceWithPatches=function(e,n){if("function"==typeof e)return function(n){for(var r=arguments.length,o=Array(r>1?r-1:0),i=1;i<r;i++)o[i-1]=arguments[i];return t.produceWithPatches(n,(function(t){return e.apply(void 0,[t].concat(o))}))};var r,o,i=t.produce(e,n,(function(e,t){r=e,o=t}));return"undefined"!=typeof Promise&&i instanceof Promise?i.then((function(e){return[e,r,o]})):[i,r,o]},"boolean"==typeof(null==e?void 0:e.useProxies)&&this.setUseProxies(e.useProxies),"boolean"==typeof(null==e?void 0:e.autoFreeze)&&this.setAutoFreeze(e.autoFreeze)}var t=e.prototype;return t.createDraft=function(e){i(e)||r(8),o(e)&&(e=P(e));var t=k(this),n=N(this,e,void 0);return n[U].C=!0,S(t),n},t.finishDraft=function(e,t){var n=(e&&e[U]).A;return w(n,t),M(void 0,n)},t.setAutoFreeze=function(e){this.D=e},t.setUseProxies=function(e){e&&!$&&r(20),this.O=e},t.applyPatches=function(e,t){var n;for(n=t.length-1;n>=0;n--){var r=t[n];if(0===r.path.length&&"replace"===r.op){e=r.value;break}}n>-1&&(t=t.slice(n+1));var i=v("Patches").$;return o(e)?i(e,t):this.produce(e,(function(e){return i(e,t)}))},e}(),Z=new Q,X=Z.produce,ee=(Z.produceWithPatches.bind(Z),Z.setAutoFreeze.bind(Z));Z.setUseProxies.bind(Z),Z.applyPatches.bind(Z),Z.createDraft.bind(Z),Z.finishDraft.bind(Z);const te=X},2337:(e,t,n)=>{"use strict";n.d(t,{$:()=>p,h:()=>f});for(var r={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},o={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},i="undefined"!=typeof navigator&&/Mac/.test(navigator.platform),s="undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),a=0;a<10;a++)r[48+a]=r[96+a]=String(a);for(a=1;a<=24;a++)r[a+111]="F"+a;for(a=65;a<=90;a++)r[a]=String.fromCharCode(a+32),o[a]=String.fromCharCode(a);for(var l in r)o.hasOwnProperty(l)||(o[l]=r[l]);var c=n(2376);const u="undefined"!=typeof navigator&&/Mac|iP(hone|[oa]d)/.test(navigator.platform);function h(e){let t,n,r,o,i=e.split(/-(?!$)/),s=i[i.length-1];"Space"==s&&(s=" ");for(let e=0;e<i.length-1;e++){let s=i[e];if(/^(cmd|meta|m)$/i.test(s))o=!0;else if(/^a(lt)?$/i.test(s))t=!0;else if(/^(c|ctrl|control)$/i.test(s))n=!0;else if(/^s(hift)?$/i.test(s))r=!0;else{if(!/^mod$/i.test(s))throw new Error("Unrecognized modifier name: "+s);u?o=!0:n=!0}}return t&&(s="Alt-"+s),n&&(s="Ctrl-"+s),o&&(s="Meta-"+s),r&&(s="Shift-"+s),s}function d(e,t,n=!0){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),n&&t.shiftKey&&(e="Shift-"+e),e}function f(e){return new c.Sy({props:{handleKeyDown:p(e)}})}function p(e){let t=function(e){let t=Object.create(null);for(let n in e)t[h(n)]=e[n];return t}(e);return function(e,n){let a,l=function(e){var t=!(i&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||s&&e.shiftKey&&e.key&&1==e.key.length||"Unidentified"==e.key)&&e.key||(e.shiftKey?o:r)[e.keyCode]||e.key||"Unidentified";return"Esc"==t&&(t="Escape"),"Del"==t&&(t="Delete"),"Left"==t&&(t="ArrowLeft"),"Up"==t&&(t="ArrowUp"),"Right"==t&&(t="ArrowRight"),"Down"==t&&(t="ArrowDown"),t}(n),c=t[d(l,n)];if(c&&c(e.state,e.dispatch,e))return!0;if(1==l.length&&" "!=l){if(n.shiftKey){let r=t[d(l,n,!1)];if(r&&r(e.state,e.dispatch,e))return!0}if((n.shiftKey||n.altKey||n.metaKey||l.charCodeAt(0)>127)&&(a=r[n.keyCode])&&a!=l){let r=t[d(a,n)];if(r&&r(e.state,e.dispatch,e))return!0}}return!1}}},7823:(e,t,n)=>{"use strict";function r(e){this.content=e}n.d(t,{aw:()=>Q,PW:()=>ue,HY:()=>a,vc:()=>h,ZU:()=>Y,NB:()=>_,Ts:()=>T,e4:()=>d,V_:()=>G,p2:()=>f}),r.prototype={constructor:r,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return-1==t?void 0:this.content[t+1]},update:function(e,t,n){var o=n&&n!=e?this.remove(n):this,i=o.find(e),s=o.content.slice();return-1==i?s.push(n||e,t):(s[i+1]=t,n&&(s[i]=n)),new r(s)},remove:function(e){var t=this.find(e);if(-1==t)return this;var n=this.content.slice();return n.splice(t,2),new r(n)},addToStart:function(e,t){return new r([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new r(n)},addBefore:function(e,t,n){var o=this.remove(t),i=o.content.slice(),s=o.find(e);return i.splice(-1==s?i.length:s,0,t,n),new r(i)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return(e=r.from(e)).size?new r(e.content.concat(this.subtract(e).content)):this},append:function(e){return(e=r.from(e)).size?new r(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=r.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach((function(t,n){e[t]=n})),e},get size(){return this.content.length>>1}},r.from=function(e){if(e instanceof r)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new r(t)};const o=r;function i(e,t,n){for(let r=0;;r++){if(r==e.childCount||r==t.childCount)return e.childCount==t.childCount?null:n;let o=e.child(r),s=t.child(r);if(o!=s){if(!o.sameMarkup(s))return n;if(o.isText&&o.text!=s.text){for(let e=0;o.text[e]==s.text[e];e++)n++;return n}if(o.content.size||s.content.size){let e=i(o.content,s.content,n+1);if(null!=e)return e}n+=o.nodeSize}else n+=o.nodeSize}}function s(e,t,n,r){for(let o=e.childCount,i=t.childCount;;){if(0==o||0==i)return o==i?null:{a:n,b:r};let a=e.child(--o),l=t.child(--i),c=a.nodeSize;if(a!=l){if(!a.sameMarkup(l))return{a:n,b:r};if(a.isText&&a.text!=l.text){let e=0,t=Math.min(a.text.length,l.text.length);for(;e<t&&a.text[a.text.length-e-1]==l.text[l.text.length-e-1];)e++,n--,r--;return{a:n,b:r}}if(a.content.size||l.content.size){let e=s(a.content,l.content,n-1,r-1);if(e)return e}n-=c,r-=c}else n-=c,r-=c}}class a{constructor(e,t){if(this.content=e,this.size=t||0,null==t)for(let t=0;t<e.length;t++)this.size+=e[t].nodeSize}nodesBetween(e,t,n,r=0,o){for(let i=0,s=0;s<t;i++){let a=this.content[i],l=s+a.nodeSize;if(l>e&&!1!==n(a,r+s,o||null,i)&&a.content.size){let o=s+1;a.nodesBetween(Math.max(0,e-o),Math.min(a.content.size,t-o),n,r+o)}s=l}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,t,n,r){let o="",i=!0;return this.nodesBetween(e,t,((s,a)=>{s.isText?(o+=s.text.slice(Math.max(e,a)-a,t-a),i=!n):s.isLeaf?(r?o+="function"==typeof r?r(s):r:s.type.spec.leafText&&(o+=s.type.spec.leafText(s)),i=!n):!i&&s.isBlock&&(o+=n,i=!0)}),0),o}append(e){if(!e.size)return this;if(!this.size)return e;let t=this.lastChild,n=e.firstChild,r=this.content.slice(),o=0;for(t.isText&&t.sameMarkup(n)&&(r[r.length-1]=t.withText(t.text+n.text),o=1);o<e.content.length;o++)r.push(e.content[o]);return new a(r,this.size+e.size)}cut(e,t=this.size){if(0==e&&t==this.size)return this;let n=[],r=0;if(t>e)for(let o=0,i=0;i<t;o++){let s=this.content[o],a=i+s.nodeSize;a>e&&((i<e||a>t)&&(s=s.isText?s.cut(Math.max(0,e-i),Math.min(s.text.length,t-i)):s.cut(Math.max(0,e-i-1),Math.min(s.content.size,t-i-1))),n.push(s),r+=s.nodeSize),i=a}return new a(n,r)}cutByIndex(e,t){return e==t?a.empty:0==e&&t==this.content.length?this:new a(this.content.slice(e,t))}replaceChild(e,t){let n=this.content[e];if(n==t)return this;let r=this.content.slice(),o=this.size+t.nodeSize-n.nodeSize;return r[e]=t,new a(r,o)}addToStart(e){return new a([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new a(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let t=0;t<this.content.length;t++)if(!this.content[t].eq(e.content[t]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(e){let t=this.content[e];if(!t)throw new RangeError("Index "+e+" out of range for "+this);return t}maybeChild(e){return this.content[e]||null}forEach(e){for(let t=0,n=0;t<this.content.length;t++){let r=this.content[t];e(r,n,t),n+=r.nodeSize}}findDiffStart(e,t=0){return i(this,e,t)}findDiffEnd(e,t=this.size,n=e.size){return s(this,e,t,n)}findIndex(e,t=-1){if(0==e)return c(0,e);if(e==this.size)return c(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let n=0,r=0;;n++){let o=r+this.child(n).nodeSize;if(o>=e)return o==e||t>0?c(n+1,o):c(n,r);r=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map((e=>e.toJSON())):null}static fromJSON(e,t){if(!t)return a.empty;if(!Array.isArray(t))throw new RangeError("Invalid input for Fragment.fromJSON");return new a(t.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return a.empty;let t,n=0;for(let r=0;r<e.length;r++){let o=e[r];n+=o.nodeSize,r&&o.isText&&e[r-1].sameMarkup(o)?(t||(t=e.slice(0,r)),t[t.length-1]=o.withText(t[t.length-1].text+o.text)):t&&t.push(o)}return new a(t||e,n)}static from(e){if(!e)return a.empty;if(e instanceof a)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new a([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}a.empty=new a([],0);const l={index:0,offset:0};function c(e,t){return l.index=e,l.offset=t,l}function u(e,t){if(e===t)return!0;if(!e||"object"!=typeof e||!t||"object"!=typeof t)return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!u(e[n],t[n]))return!1}else{for(let n in e)if(!(n in t)||!u(e[n],t[n]))return!1;for(let n in t)if(!(n in e))return!1}return!0}class h{constructor(e,t){this.type=e,this.attrs=t}addToSet(e){let t,n=!1;for(let r=0;r<e.length;r++){let o=e[r];if(this.eq(o))return e;if(this.type.excludes(o.type))t||(t=e.slice(0,r));else{if(o.type.excludes(this.type))return e;!n&&o.type.rank>this.type.rank&&(t||(t=e.slice(0,r)),t.push(this),n=!0),t&&t.push(o)}}return t||(t=e.slice()),n||t.push(this),t}removeFromSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return e.slice(0,t).concat(e.slice(t+1));return e}isInSet(e){for(let t=0;t<e.length;t++)if(this.eq(e[t]))return!0;return!1}eq(e){return this==e||this.type==e.type&&u(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Mark.fromJSON");let n=e.marks[t.type];if(!n)throw new RangeError(`There is no mark type ${t.type} in this schema`);return n.create(t.attrs)}static sameSet(e,t){if(e==t)return!0;if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}static setFrom(e){if(!e||Array.isArray(e)&&0==e.length)return h.none;if(e instanceof h)return[e];let t=e.slice();return t.sort(((e,t)=>e.type.rank-t.type.rank)),t}}h.none=[];class d extends Error{}class f{constructor(e,t,n){this.content=e,this.openStart=t,this.openEnd=n}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,t){let n=m(this.content,e+this.openStart,t);return n&&new f(n,this.openStart,this.openEnd)}removeBetween(e,t){return new f(p(this.content,e+this.openStart,t+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,t){if(!t)return f.empty;let n=t.openStart||0,r=t.openEnd||0;if("number"!=typeof n||"number"!=typeof r)throw new RangeError("Invalid input for Slice.fromJSON");return new f(a.fromJSON(e,t.content),n,r)}static maxOpen(e,t=!0){let n=0,r=0;for(let r=e.firstChild;r&&!r.isLeaf&&(t||!r.type.spec.isolating);r=r.firstChild)n++;for(let n=e.lastChild;n&&!n.isLeaf&&(t||!n.type.spec.isolating);n=n.lastChild)r++;return new f(e,n,r)}}function p(e,t,n){let{index:r,offset:o}=e.findIndex(t),i=e.maybeChild(r),{index:s,offset:a}=e.findIndex(n);if(o==t||i.isText){if(a!=n&&!e.child(s).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(r!=s)throw new RangeError("Removing non-flat range");return e.replaceChild(r,i.copy(p(i.content,t-o-1,n-o-1)))}function m(e,t,n,r){let{index:o,offset:i}=e.findIndex(t),s=e.maybeChild(o);if(i==t||s.isText)return r&&!r.canReplace(o,o,n)?null:e.cut(0,t).append(n).append(e.cut(t));let a=m(s.content,t-i-1,n);return a&&e.replaceChild(o,s.copy(a))}function g(e,t,n){if(n.openStart>e.depth)throw new d("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new d("Inconsistent open depths");return y(e,t,n,0)}function y(e,t,n,r){let o=e.index(r),i=e.node(r);if(o==t.index(r)&&r<e.depth-n.openStart){let s=y(e,t,n,r+1);return i.copy(i.content.replaceChild(o,s))}if(n.content.size){if(n.openStart||n.openEnd||e.depth!=r||t.depth!=r){let{start:o,end:s}=function(e,t){let n=t.depth-e.openStart,r=t.node(n).copy(e.content);for(let e=n-1;e>=0;e--)r=t.node(e).copy(a.from(r));return{start:r.resolveNoCache(e.openStart+n),end:r.resolveNoCache(r.content.size-e.openEnd-n)}}(n,e);return S(i,k(e,o,s,t,r))}{let r=e.parent,o=r.content;return S(r,o.cut(0,e.parentOffset).append(n.content).append(o.cut(t.parentOffset)))}}return S(i,C(e,t,r))}function v(e,t){if(!t.type.compatibleContent(e.type))throw new d("Cannot join "+t.type.name+" onto "+e.type.name)}function b(e,t,n){let r=e.node(n);return v(r,t.node(n)),r}function w(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function x(e,t,n,r){let o=(t||e).node(n),i=0,s=t?t.index(n):o.childCount;e&&(i=e.index(n),e.depth>n?i++:e.textOffset&&(w(e.nodeAfter,r),i++));for(let e=i;e<s;e++)w(o.child(e),r);t&&t.depth==n&&t.textOffset&&w(t.nodeBefore,r)}function S(e,t){return e.type.checkContent(t),e.copy(t)}function k(e,t,n,r,o){let i=e.depth>o&&b(e,t,o+1),s=r.depth>o&&b(n,r,o+1),l=[];return x(null,e,o,l),i&&s&&t.index(o)==n.index(o)?(v(i,s),w(S(i,k(e,t,n,r,o+1)),l)):(i&&w(S(i,C(e,t,o+1)),l),x(t,n,o,l),s&&w(S(s,C(n,r,o+1)),l)),x(r,null,o,l),new a(l)}function C(e,t,n){let r=[];return x(null,e,n,r),e.depth>n&&w(S(b(e,t,n+1),C(e,t,n+1)),r),x(t,null,n,r),new a(r)}f.empty=new f(a.empty,0,0);class M{constructor(e,t,n){this.pos=e,this.path=t,this.parentOffset=n,this.depth=t.length/3-1}resolveDepth(e){return null==e?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[3*this.resolveDepth(e)]}index(e){return this.path[3*this.resolveDepth(e)+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e!=this.depth||this.textOffset?1:0)}start(e){return 0==(e=this.resolveDepth(e))?0:this.path[3*e-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]}after(e){if(!(e=this.resolveDepth(e)))throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[3*e-1]+this.path[3*e].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,t=this.index(this.depth);if(t==e.childCount)return null;let n=this.pos-this.path[this.path.length-1],r=e.child(t);return n?e.child(t).cut(n):r}get nodeBefore(){let e=this.index(this.depth),t=this.pos-this.path[this.path.length-1];return t?this.parent.child(e).cut(0,t):0==e?null:this.parent.child(e-1)}posAtIndex(e,t){t=this.resolveDepth(t);let n=this.path[3*t],r=0==t?0:this.path[3*t-1]+1;for(let t=0;t<e;t++)r+=n.child(t).nodeSize;return r}marks(){let e=this.parent,t=this.index();if(0==e.content.size)return h.none;if(this.textOffset)return e.child(t).marks;let n=e.maybeChild(t-1),r=e.maybeChild(t);if(!n){let e=n;n=r,r=e}let o=n.marks;for(var i=0;i<o.length;i++)!1!==o[i].type.spec.inclusive||r&&o[i].isInSet(r.marks)||(o=o[i--].removeFromSet(o));return o}marksAcross(e){let t=this.parent.maybeChild(this.index());if(!t||!t.isInline)return null;let n=t.marks,r=e.parent.maybeChild(e.index());for(var o=0;o<n.length;o++)!1!==n[o].type.spec.inclusive||r&&n[o].isInSet(r.marks)||(n=n[o--].removeFromSet(n));return n}sharedDepth(e){for(let t=this.depth;t>0;t--)if(this.start(t)<=e&&this.end(t)>=e)return t;return 0}blockRange(e=this,t){if(e.pos<this.pos)return e.blockRange(this);for(let n=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);n>=0;n--)if(e.pos<=this.end(n)&&(!t||t(this.node(n))))return new T(this,e,n);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let t=1;t<=this.depth;t++)e+=(e?"/":"")+this.node(t).type.name+"_"+this.index(t-1);return e+":"+this.parentOffset}static resolve(e,t){if(!(t>=0&&t<=e.content.size))throw new RangeError("Position "+t+" out of range");let n=[],r=0,o=t;for(let t=e;;){let{index:e,offset:i}=t.content.findIndex(o),s=o-i;if(n.push(t,e,r+i),!s)break;if(t=t.child(e),t.isText)break;o=s-1,r+=i+1}return new M(t,n,o)}static resolveCached(e,t){for(let n=0;n<O.length;n++){let r=O[n];if(r.pos==t&&r.doc==e)return r}let n=O[E]=M.resolve(e,t);return E=(E+1)%A,n}}let O=[],E=0,A=12;class T{constructor(e,t,n){this.$from=e,this.$to=t,this.depth=n}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const D=Object.create(null);class _{constructor(e,t,n,r=h.none){this.type=e,this.attrs=t,this.marks=r,this.content=n||a.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,t,n,r=0){this.content.nodesBetween(e,t,n,r,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,t,n,r){return this.content.textBetween(e,t,n,r)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,t,n){return this.type==e&&u(this.attrs,t||e.defaultAttrs||D)&&h.sameSet(this.marks,n||h.none)}copy(e=null){return e==this.content?this:new _(this.type,this.attrs,e,this.marks)}mark(e){return e==this.marks?this:new _(this.type,this.attrs,this.content,e)}cut(e,t=this.content.size){return 0==e&&t==this.content.size?this:this.copy(this.content.cut(e,t))}slice(e,t=this.content.size,n=!1){if(e==t)return f.empty;let r=this.resolve(e),o=this.resolve(t),i=n?0:r.sharedDepth(t),s=r.start(i),a=r.node(i).content.cut(r.pos-s,o.pos-s);return new f(a,r.depth-i,o.depth-i)}replace(e,t,n){return g(this.resolve(e),this.resolve(t),n)}nodeAt(e){for(let t=this;;){let{index:n,offset:r}=t.content.findIndex(e);if(t=t.maybeChild(n),!t)return null;if(r==e||t.isText)return t;e-=r+1}}childAfter(e){let{index:t,offset:n}=this.content.findIndex(e);return{node:this.content.maybeChild(t),index:t,offset:n}}childBefore(e){if(0==e)return{node:null,index:0,offset:0};let{index:t,offset:n}=this.content.findIndex(e);if(n<e)return{node:this.content.child(t),index:t,offset:n};let r=this.content.child(t-1);return{node:r,index:t-1,offset:n-r.nodeSize}}resolve(e){return M.resolveCached(this,e)}resolveNoCache(e){return M.resolve(this,e)}rangeHasMark(e,t,n){let r=!1;return t>e&&this.nodesBetween(e,t,(e=>(n.isInSet(e.marks)&&(r=!0),!r))),r}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),N(this.marks,e)}contentMatchAt(e){let t=this.type.contentMatch.matchFragment(this.content,0,e);if(!t)throw new Error("Called contentMatchAt on a node with invalid content");return t}canReplace(e,t,n=a.empty,r=0,o=n.childCount){let i=this.contentMatchAt(e).matchFragment(n,r,o),s=i&&i.matchFragment(this.content,t);if(!s||!s.validEnd)return!1;for(let e=r;e<o;e++)if(!this.type.allowsMarks(n.child(e).marks))return!1;return!0}canReplaceWith(e,t,n,r){if(r&&!this.type.allowsMarks(r))return!1;let o=this.contentMatchAt(e).matchType(n),i=o&&o.matchFragment(this.content,t);return!!i&&i.validEnd}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content);let e=h.none;for(let t=0;t<this.marks.length;t++)e=this.marks[t].addToSet(e);if(!h.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map((e=>e.type.name))}`);this.content.forEach((e=>e.check()))}toJSON(){let e={type:this.type.name};for(let t in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map((e=>e.toJSON()))),e}static fromJSON(e,t){if(!t)throw new RangeError("Invalid input for Node.fromJSON");let n=null;if(t.marks){if(!Array.isArray(t.marks))throw new RangeError("Invalid mark data for Node.fromJSON");n=t.marks.map(e.markFromJSON)}if("text"==t.type){if("string"!=typeof t.text)throw new RangeError("Invalid text node in JSON");return e.text(t.text,n)}let r=a.fromJSON(e,t.content);return e.nodeType(t.type).create(t.attrs,r,n)}}_.prototype.text=void 0;class R extends _{constructor(e,t,n,r){if(super(e,t,null,r),!n)throw new RangeError("Empty text nodes are not allowed");this.text=n}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):N(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,t){return this.text.slice(e,t)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new R(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new R(this.type,this.attrs,e,this.marks)}cut(e=0,t=this.text.length){return 0==e&&t==this.text.length?this:this.withText(this.text.slice(e,t))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function N(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}class P{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,t){let n=new I(e,t);if(null==n.next)return P.empty;let r=L(n);n.next&&n.err("Unexpected trailing text");let o=function(e){let t=Object.create(null);return function n(r){let o=[];r.forEach((t=>{e[t].forEach((({term:t,to:n})=>{if(!t)return;let r;for(let e=0;e<o.length;e++)o[e][0]==t&&(r=o[e][1]);H(e,n).forEach((e=>{r||o.push([t,r=[]]),-1==r.indexOf(e)&&r.push(e)}))}))}));let i=t[r.join(",")]=new P(r.indexOf(e.length-1)>-1);for(let e=0;e<o.length;e++){let r=o[e][1].sort($);i.next.push({type:o[e][0],next:t[r.join(",")]||n(r)})}return i}(H(e,0))}(function(e){let t=[[]];return o(function e(t,i){if("choice"==t.type)return t.exprs.reduce(((t,n)=>t.concat(e(n,i))),[]);if("seq"!=t.type){if("star"==t.type){let s=n();return r(i,s),o(e(t.expr,s),s),[r(s)]}if("plus"==t.type){let s=n();return o(e(t.expr,i),s),o(e(t.expr,s),s),[r(s)]}if("opt"==t.type)return[r(i)].concat(e(t.expr,i));if("range"==t.type){let s=i;for(let r=0;r<t.min;r++){let r=n();o(e(t.expr,s),r),s=r}if(-1==t.max)o(e(t.expr,s),s);else for(let i=t.min;i<t.max;i++){let i=n();r(s,i),o(e(t.expr,s),i),s=i}return[r(s)]}if("name"==t.type)return[r(i,void 0,t.value)];throw new Error("Unknown expr type")}for(let r=0;;r++){let s=e(t.exprs[r],i);if(r==t.exprs.length-1)return s;o(s,i=n())}}(e,0),n()),t;function n(){return t.push([])-1}function r(e,n,r){let o={term:r,to:n};return t[e].push(o),o}function o(e,t){e.forEach((e=>e.to=t))}}(r));return function(e,t){for(let n=0,r=[e];n<r.length;n++){let e=r[n],o=!e.validEnd,i=[];for(let t=0;t<e.next.length;t++){let{type:n,next:s}=e.next[t];i.push(n.name),!o||n.isText||n.hasRequiredAttrs()||(o=!1),-1==r.indexOf(s)&&r.push(s)}o&&t.err("Only non-generatable nodes ("+i.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}(o,n),o}matchType(e){for(let t=0;t<this.next.length;t++)if(this.next[t].type==e)return this.next[t].next;return null}matchFragment(e,t=0,n=e.childCount){let r=this;for(let o=t;r&&o<n;o++)r=r.matchType(e.child(o).type);return r}get inlineContent(){return 0!=this.next.length&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:t}=this.next[e];if(!t.isText&&!t.hasRequiredAttrs())return t}return null}compatible(e){for(let t=0;t<this.next.length;t++)for(let n=0;n<e.next.length;n++)if(this.next[t].type==e.next[n].type)return!0;return!1}fillBefore(e,t=!1,n=0){let r=[this];return function o(i,s){let l=i.matchFragment(e,n);if(l&&(!t||l.validEnd))return a.from(s.map((e=>e.createAndFill())));for(let e=0;e<i.next.length;e++){let{type:t,next:n}=i.next[e];if(!t.isText&&!t.hasRequiredAttrs()&&-1==r.indexOf(n)){r.push(n);let e=o(n,s.concat(t));if(e)return e}}return null}(this,[])}findWrapping(e){for(let t=0;t<this.wrapCache.length;t+=2)if(this.wrapCache[t]==e)return this.wrapCache[t+1];let t=this.computeWrapping(e);return this.wrapCache.push(e,t),t}computeWrapping(e){let t=Object.create(null),n=[{match:this,type:null,via:null}];for(;n.length;){let r=n.shift(),o=r.match;if(o.matchType(e)){let e=[];for(let t=r;t.type;t=t.via)e.push(t.type);return e.reverse()}for(let e=0;e<o.next.length;e++){let{type:i,next:s}=o.next[e];i.isLeaf||i.hasRequiredAttrs()||i.name in t||r.type&&!s.validEnd||(n.push({match:i.contentMatch,type:i,via:r}),t[i.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];return function t(n){e.push(n);for(let r=0;r<n.next.length;r++)-1==e.indexOf(n.next[r].next)&&t(n.next[r].next)}(this),e.map(((t,n)=>{let r=n+(t.validEnd?"*":" ")+" ";for(let n=0;n<t.next.length;n++)r+=(n?", ":"")+t.next[n].type.name+"->"+e.indexOf(t.next[n].next);return r})).join("\n")}}P.empty=new P(!0);class I{constructor(e,t){this.string=e,this.nodeTypes=t,this.inline=null,this.pos=0,this.tokens=e.split(/\s*(?=\b|\W|$)/),""==this.tokens[this.tokens.length-1]&&this.tokens.pop(),""==this.tokens[0]&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function L(e){let t=[];do{t.push(j(e))}while(e.eat("|"));return 1==t.length?t[0]:{type:"choice",exprs:t}}function j(e){let t=[];do{t.push(F(e))}while(e.next&&")"!=e.next&&"|"!=e.next);return 1==t.length?t[0]:{type:"seq",exprs:t}}function F(e){let t=function(e){if(e.eat("(")){let t=L(e);return e.eat(")")||e.err("Missing closing paren"),t}if(!/\W/.test(e.next)){let t=function(e,t){let n=e.nodeTypes,r=n[t];if(r)return[r];let o=[];for(let e in n){let r=n[e];r.groups.indexOf(t)>-1&&o.push(r)}return 0==o.length&&e.err("No node type or group '"+t+"' found"),o}(e,e.next).map((t=>(null==e.inline?e.inline=t.isInline:e.inline!=t.isInline&&e.err("Mixing inline and block content"),{type:"name",value:t})));return e.pos++,1==t.length?t[0]:{type:"choice",exprs:t}}e.err("Unexpected token '"+e.next+"'")}(e);for(;;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else{if(!e.eat("{"))break;t=z(e,t)}return t}function B(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let t=Number(e.next);return e.pos++,t}function z(e,t){let n=B(e),r=n;return e.eat(",")&&(r="}"!=e.next?B(e):-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:t}}function $(e,t){return t-e}function H(e,t){let n=[];return function t(r){let o=e[r];if(1==o.length&&!o[0].term)return t(o[0].to);n.push(r);for(let e=0;e<o.length;e++){let{term:r,to:i}=o[e];r||-1!=n.indexOf(i)||t(i)}}(t),n.sort($)}function W(e){let t=Object.create(null);for(let n in e){let r=e[n];if(!r.hasDefault)return null;t[n]=r.default}return t}function U(e,t){let n=Object.create(null);for(let r in e){let o=t&&t[r];if(void 0===o){let t=e[r];if(!t.hasDefault)throw new RangeError("No value supplied for attribute "+r);o=t.default}n[r]=o}return n}function V(e){let t=Object.create(null);if(e)for(let n in e)t[n]=new K(e[n]);return t}class q{constructor(e,t,n){this.name=e,this.schema=t,this.spec=n,this.markSet=null,this.groups=n.group?n.group.split(" "):[],this.attrs=V(n.attrs),this.defaultAttrs=W(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(n.inline||"text"==e),this.isText="text"==e}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==P.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:U(this.attrs,e)}create(e=null,t,n){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new _(this,this.computeAttrs(e),a.from(t),h.setFrom(n))}createChecked(e=null,t,n){return t=a.from(t),this.checkContent(t),new _(this,this.computeAttrs(e),t,h.setFrom(n))}createAndFill(e=null,t,n){if(e=this.computeAttrs(e),(t=a.from(t)).size){let e=this.contentMatch.fillBefore(t);if(!e)return null;t=e.append(t)}let r=this.contentMatch.matchFragment(t),o=r&&r.fillBefore(a.empty,!0);return o?new _(this,e,t.append(o),h.setFrom(n)):null}validContent(e){let t=this.contentMatch.matchFragment(e);if(!t||!t.validEnd)return!1;for(let t=0;t<e.childCount;t++)if(!this.allowsMarks(e.child(t).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}allowsMarkType(e){return null==this.markSet||this.markSet.indexOf(e)>-1}allowsMarks(e){if(null==this.markSet)return!0;for(let t=0;t<e.length;t++)if(!this.allowsMarkType(e[t].type))return!1;return!0}allowedMarks(e){if(null==this.markSet)return e;let t;for(let n=0;n<e.length;n++)this.allowsMarkType(e[n].type)?t&&t.push(e[n]):t||(t=e.slice(0,n));return t?t.length?t:h.none:e}static compile(e,t){let n=Object.create(null);e.forEach(((e,r)=>n[e]=new q(e,t,r)));let r=t.spec.topNode||"doc";if(!n[r])throw new RangeError("Schema is missing its top node type ('"+r+"')");if(!n.text)throw new RangeError("Every schema needs a 'text' type");for(let e in n.text.attrs)throw new RangeError("The text node type should not have attributes");return n}}class K{constructor(e){this.hasDefault=Object.prototype.hasOwnProperty.call(e,"default"),this.default=e.default}get isRequired(){return!this.hasDefault}}class Y{constructor(e,t,n,r){this.name=e,this.rank=t,this.schema=n,this.spec=r,this.attrs=V(r.attrs),this.excluded=null;let o=W(this.attrs);this.instance=o?new h(this,o):null}create(e=null){return!e&&this.instance?this.instance:new h(this,U(this.attrs,e))}static compile(e,t){let n=Object.create(null),r=0;return e.forEach(((e,o)=>n[e]=new Y(e,r++,t,o))),n}removeFromSet(e){for(var t=0;t<e.length;t++)e[t].type==this&&(e=e.slice(0,t).concat(e.slice(t+1)),t--);return e}isInSet(e){for(let t=0;t<e.length;t++)if(e[t].type==this)return e[t]}excludes(e){return this.excluded.indexOf(e)>-1}}class G{constructor(e){this.cached=Object.create(null);let t=this.spec={};for(let n in e)t[n]=e[n];t.nodes=o.from(e.nodes),t.marks=o.from(e.marks||{}),this.nodes=q.compile(this.spec.nodes,this),this.marks=Y.compile(this.spec.marks,this);let n=Object.create(null);for(let e in this.nodes){if(e in this.marks)throw new RangeError(e+" can not be both a node and a mark");let t=this.nodes[e],r=t.spec.content||"",o=t.spec.marks;t.contentMatch=n[r]||(n[r]=P.parse(r,this.nodes)),t.inlineContent=t.contentMatch.inlineContent,t.markSet="_"==o?null:o?J(this,o.split(" ")):""!=o&&t.inlineContent?null:[]}for(let e in this.marks){let t=this.marks[e],n=t.spec.excludes;t.excluded=null==n?[t]:""==n?[]:J(this,n.split(" "))}this.nodeFromJSON=this.nodeFromJSON.bind(this),this.markFromJSON=this.markFromJSON.bind(this),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(e,t=null,n,r){if("string"==typeof e)e=this.nodeType(e);else{if(!(e instanceof q))throw new RangeError("Invalid node type: "+e);if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}return e.createChecked(t,n,r)}text(e,t){let n=this.nodes.text;return new R(n,n.defaultAttrs,e,h.setFrom(t))}mark(e,t){return"string"==typeof e&&(e=this.marks[e]),e.create(t)}nodeFromJSON(e){return _.fromJSON(this,e)}markFromJSON(e){return h.fromJSON(this,e)}nodeType(e){let t=this.nodes[e];if(!t)throw new RangeError("Unknown node type: "+e);return t}}function J(e,t){let n=[];for(let r=0;r<t.length;r++){let o=t[r],i=e.marks[o],s=i;if(i)n.push(i);else for(let t in e.marks){let r=e.marks[t];("_"==o||r.spec.group&&r.spec.group.split(" ").indexOf(o)>-1)&&n.push(s=r)}if(!s)throw new SyntaxError("Unknown mark type: '"+t[r]+"'")}return n}class Q{constructor(e,t){this.schema=e,this.rules=t,this.tags=[],this.styles=[],t.forEach((e=>{e.tag?this.tags.push(e):e.style&&this.styles.push(e)})),this.normalizeLists=!this.tags.some((t=>{if(!/^(ul|ol)\b/.test(t.tag)||!t.node)return!1;let n=e.nodes[t.node];return n.contentMatch.matchType(n)}))}parse(e,t={}){let n=new se(this,t,!1);return n.addAll(e,t.from,t.to),n.finish()}parseSlice(e,t={}){let n=new se(this,t,!0);return n.addAll(e,t.from,t.to),f.maxOpen(n.finish())}matchTag(e,t,n){for(let r=n?this.tags.indexOf(n)+1:0;r<this.tags.length;r++){let n=this.tags[r];if(ae(e,n.tag)&&(void 0===n.namespace||e.namespaceURI==n.namespace)&&(!n.context||t.matchesContext(n.context))){if(n.getAttrs){let t=n.getAttrs(e);if(!1===t)continue;n.attrs=t||void 0}return n}}}matchStyle(e,t,n,r){for(let o=r?this.styles.indexOf(r)+1:0;o<this.styles.length;o++){let r=this.styles[o],i=r.style;if(!(0!=i.indexOf(e)||r.context&&!n.matchesContext(r.context)||i.length>e.length&&(61!=i.charCodeAt(e.length)||i.slice(e.length+1)!=t))){if(r.getAttrs){let e=r.getAttrs(t);if(!1===e)continue;r.attrs=e||void 0}return r}}}static schemaRules(e){let t=[];function n(e){let n=null==e.priority?50:e.priority,r=0;for(;r<t.length;r++){let e=t[r];if((null==e.priority?50:e.priority)<n)break}t.splice(r,0,e)}for(let t in e.marks){let r=e.marks[t].spec.parseDOM;r&&r.forEach((e=>{n(e=le(e)),e.mark||e.ignore||e.clearMark||(e.mark=t)}))}for(let t in e.nodes){let r=e.nodes[t].spec.parseDOM;r&&r.forEach((e=>{n(e=le(e)),e.node||e.ignore||e.mark||(e.node=t)}))}return t}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new Q(e,Q.schemaRules(e)))}}const Z={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},X={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},ee={ol:!0,ul:!0},te=1,ne=2,re=4;function oe(e,t,n){return null!=t?(t?te:0)|("full"===t?ne:0):e&&"pre"==e.whitespace?te|ne:n&~re}class ie{constructor(e,t,n,r,o,i,s){this.type=e,this.attrs=t,this.marks=n,this.pendingMarks=r,this.solid=o,this.options=s,this.content=[],this.activeMarks=h.none,this.stashMarks=[],this.match=i||(s&re?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let t=this.type.contentMatch.fillBefore(a.from(e));if(!t){let t,n=this.type.contentMatch;return(t=n.findWrapping(e.type))?(this.match=n,t):null}this.match=this.type.contentMatch.matchFragment(t)}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&te)){let e,t=this.content[this.content.length-1];if(t&&t.isText&&(e=/[ \t\r\n\u000c]+$/.exec(t.text))){let n=t;t.text.length==e[0].length?this.content.pop():this.content[this.content.length-1]=n.withText(n.text.slice(0,n.text.length-e[0].length))}}let t=a.from(this.content);return!e&&this.match&&(t=t.append(this.match.fillBefore(a.empty,!0))),this.type?this.type.create(this.attrs,t,this.marks):t}popFromStashMark(e){for(let t=this.stashMarks.length-1;t>=0;t--)if(e.eq(this.stashMarks[t]))return this.stashMarks.splice(t,1)[0]}applyPending(e){for(let t=0,n=this.pendingMarks;t<n.length;t++){let r=n[t];(this.type?this.type.allowsMarkType(r.type):ce(r.type,e))&&!r.isInSet(this.activeMarks)&&(this.activeMarks=r.addToSet(this.activeMarks),this.pendingMarks=r.removeFromSet(this.pendingMarks))}}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!Z.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class se{constructor(e,t,n){this.parser=e,this.options=t,this.isOpen=n,this.open=0;let r,o=t.topNode,i=oe(null,t.preserveWhitespace,0)|(n?re:0);r=o?new ie(o.type,o.attrs,h.none,h.none,!0,t.topMatch||o.type.contentMatch,i):new ie(n?null:e.schema.topNodeType,null,h.none,h.none,!0,null,i),this.nodes=[r],this.find=t.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e){3==e.nodeType?this.addTextNode(e):1==e.nodeType&&this.addElement(e)}withStyleRules(e,t){let n=e.getAttribute("style");if(!n)return t();let r=this.readStyles(function(e){let t,n=/\s*([\w-]+)\s*:\s*([^;]+)/g,r=[];for(;t=n.exec(e);)r.push(t[1],t[2].trim());return r}(n));if(!r)return;let[o,i]=r,s=this.top;for(let e=0;e<i.length;e++)this.removePendingMark(i[e],s);for(let e=0;e<o.length;e++)this.addPendingMark(o[e]);t();for(let e=0;e<o.length;e++)this.removePendingMark(o[e],s);for(let e=0;e<i.length;e++)this.addPendingMark(i[e])}addTextNode(e){let t=e.nodeValue,n=this.top;if(n.options&ne||n.inlineContext(e)||/[^ \t\r\n\u000c]/.test(t)){if(n.options&te)t=n.options&ne?t.replace(/\r\n?/g,"\n"):t.replace(/\r?\n|\r/g," ");else if(t=t.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(t)&&this.open==this.nodes.length-1){let r=n.content[n.content.length-1],o=e.previousSibling;(!r||o&&"BR"==o.nodeName||r.isText&&/[ \t\r\n\u000c]$/.test(r.text))&&(t=t.slice(1))}t&&this.insertNode(this.parser.schema.text(t)),this.findInText(e)}else this.findInside(e)}addElement(e,t){let n,r=e.nodeName.toLowerCase();ee.hasOwnProperty(r)&&this.parser.normalizeLists&&function(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let e=1==t.nodeType?t.nodeName.toLowerCase():null;e&&ee.hasOwnProperty(e)&&n?(n.appendChild(t),t=n):"li"==e?n=t:e&&(n=null)}}(e);let o=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(n=this.parser.matchTag(e,this,t));if(o?o.ignore:X.hasOwnProperty(r))this.findInside(e),this.ignoreFallback(e);else if(!o||o.skip||o.closeParent){o&&o.closeParent?this.open=Math.max(0,this.open-1):o&&o.skip.nodeType&&(e=o.skip);let t,n=this.top,i=this.needsBlock;if(Z.hasOwnProperty(r))n.content.length&&n.content[0].isInline&&this.open&&(this.open--,n=this.top),t=!0,n.type||(this.needsBlock=!0);else if(!e.firstChild)return void this.leafFallback(e);o&&o.skip?this.addAll(e):this.withStyleRules(e,(()=>this.addAll(e))),t&&this.sync(n),this.needsBlock=i}else this.withStyleRules(e,(()=>{this.addElementByRule(e,o,!1===o.consuming?n:void 0)}))}leafFallback(e){"BR"==e.nodeName&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode("\n"))}ignoreFallback(e){"BR"!=e.nodeName||this.top.type&&this.top.type.inlineContent||this.findPlace(this.parser.schema.text("-"))}readStyles(e){let t=h.none,n=h.none;for(let r=0;r<e.length;r+=2)for(let o;;){let i=this.parser.matchStyle(e[r],e[r+1],this,o);if(!i)break;if(i.ignore)return null;if(i.clearMark?this.top.pendingMarks.concat(this.top.activeMarks).forEach((e=>{i.clearMark(e)&&(n=e.addToSet(n))})):t=this.parser.schema.marks[i.mark].create(i.attrs).addToSet(t),!1!==i.consuming)break;o=i}return[t,n]}addElementByRule(e,t,n){let r,o,i;t.node?(o=this.parser.schema.nodes[t.node],o.isLeaf?this.insertNode(o.create(t.attrs))||this.leafFallback(e):r=this.enter(o,t.attrs||null,t.preserveWhitespace)):(i=this.parser.schema.marks[t.mark].create(t.attrs),this.addPendingMark(i));let s=this.top;if(o&&o.isLeaf)this.findInside(e);else if(n)this.addElement(e,n);else if(t.getContent)this.findInside(e),t.getContent(e,this.parser.schema).forEach((e=>this.insertNode(e)));else{let n=e;"string"==typeof t.contentElement?n=e.querySelector(t.contentElement):"function"==typeof t.contentElement?n=t.contentElement(e):t.contentElement&&(n=t.contentElement),this.findAround(e,n,!0),this.addAll(n)}r&&this.sync(s)&&this.open--,i&&this.removePendingMark(i,s)}addAll(e,t,n){let r=t||0;for(let o=t?e.childNodes[t]:e.firstChild,i=null==n?null:e.childNodes[n];o!=i;o=o.nextSibling,++r)this.findAtPoint(e,r),this.addDOM(o);this.findAtPoint(e,r)}findPlace(e){let t,n;for(let r=this.open;r>=0;r--){let o=this.nodes[r],i=o.findWrapping(e);if(i&&(!t||t.length>i.length)&&(t=i,n=o,!i.length))break;if(o.solid)break}if(!t)return!1;this.sync(n);for(let e=0;e<t.length;e++)this.enterInner(t[e],null,!1);return!0}insertNode(e){if(e.isInline&&this.needsBlock&&!this.top.type){let e=this.textblockFromContext();e&&this.enterInner(e)}if(this.findPlace(e)){this.closeExtra();let t=this.top;t.applyPending(e.type),t.match&&(t.match=t.match.matchType(e.type));let n=t.activeMarks;for(let r=0;r<e.marks.length;r++)t.type&&!t.type.allowsMarkType(e.marks[r].type)||(n=e.marks[r].addToSet(n));return t.content.push(e.mark(n)),!0}return!1}enter(e,t,n){let r=this.findPlace(e.create(t));return r&&this.enterInner(e,t,!0,n),r}enterInner(e,t=null,n=!1,r){this.closeExtra();let o=this.top;o.applyPending(e),o.match=o.match&&o.match.matchType(e);let i=oe(e,r,o.options);o.options&re&&0==o.content.length&&(i|=re),this.nodes.push(new ie(e,t,o.activeMarks,o.pendingMarks,n,null,i)),this.open++}closeExtra(e=!1){let t=this.nodes.length-1;if(t>this.open){for(;t>this.open;t--)this.nodes[t-1].content.push(this.nodes[t].finish(e));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(this.isOpen||this.options.topOpen)}sync(e){for(let t=this.open;t>=0;t--)if(this.nodes[t]==e)return this.open=t,!0;return!1}get currentPos(){this.closeExtra();let e=0;for(let t=this.open;t>=0;t--){let n=this.nodes[t].content;for(let t=n.length-1;t>=0;t--)e+=n[t].nodeSize;t&&e++}return e}findAtPoint(e,t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&this.find[n].offset==t&&(this.find[n].pos=this.currentPos)}findInside(e){if(this.find)for(let t=0;t<this.find.length;t++)null==this.find[t].pos&&1==e.nodeType&&e.contains(this.find[t].node)&&(this.find[t].pos=this.currentPos)}findAround(e,t,n){if(e!=t&&this.find)for(let r=0;r<this.find.length;r++)null==this.find[r].pos&&1==e.nodeType&&e.contains(this.find[r].node)&&t.compareDocumentPosition(this.find[r].node)&(n?2:4)&&(this.find[r].pos=this.currentPos)}findInText(e){if(this.find)for(let t=0;t<this.find.length;t++)this.find[t].node==e&&(this.find[t].pos=this.currentPos-(e.nodeValue.length-this.find[t].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let t=e.split("/"),n=this.options.context,r=!(this.isOpen||n&&n.parent.type!=this.nodes[0].type),o=-(n?n.depth+1:0)+(r?0:1),i=(e,s)=>{for(;e>=0;e--){let a=t[e];if(""==a){if(e==t.length-1||0==e)continue;for(;s>=o;s--)if(i(e-1,s))return!0;return!1}{let e=s>0||0==s&&r?this.nodes[s].type:n&&s>=o?n.node(s-o).type:null;if(!e||e.name!=a&&-1==e.groups.indexOf(a))return!1;s--}}return!0};return i(t.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let t=e.depth;t>=0;t--){let n=e.node(t).contentMatchAt(e.indexAfter(t)).defaultType;if(n&&n.isTextblock&&n.defaultAttrs)return n}for(let e in this.parser.schema.nodes){let t=this.parser.schema.nodes[e];if(t.isTextblock&&t.defaultAttrs)return t}}addPendingMark(e){let t=function(e,t){for(let n=0;n<t.length;n++)if(e.eq(t[n]))return t[n]}(e,this.top.pendingMarks);t&&this.top.stashMarks.push(t),this.top.pendingMarks=e.addToSet(this.top.pendingMarks)}removePendingMark(e,t){for(let n=this.open;n>=0;n--){let r=this.nodes[n];if(r.pendingMarks.lastIndexOf(e)>-1)r.pendingMarks=e.removeFromSet(r.pendingMarks);else{r.activeMarks=e.removeFromSet(r.activeMarks);let t=r.popFromStashMark(e);t&&r.type&&r.type.allowsMarkType(t.type)&&(r.activeMarks=t.addToSet(r.activeMarks))}if(r==t)break}}}function ae(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function le(e){let t={};for(let n in e)t[n]=e[n];return t}function ce(e,t){let n=t.schema.nodes;for(let r in n){let o=n[r];if(!o.allowsMarkType(e))continue;let i=[],s=e=>{i.push(e);for(let n=0;n<e.edgeCount;n++){let{type:r,next:o}=e.edge(n);if(r==t)return!0;if(i.indexOf(o)<0&&s(o))return!0}};if(s(o.contentMatch))return!0}}class ue{constructor(e,t){this.nodes=e,this.marks=t}serializeFragment(e,t={},n){n||(n=de(t).createDocumentFragment());let r=n,o=[];return e.forEach((e=>{if(o.length||e.marks.length){let n=0,i=0;for(;n<o.length&&i<e.marks.length;){let t=e.marks[i];if(this.marks[t.type.name]){if(!t.eq(o[n][0])||!1===t.type.spec.spanning)break;n++,i++}else i++}for(;n<o.length;)r=o.pop()[1];for(;i<e.marks.length;){let n=e.marks[i++],s=this.serializeMark(n,e.isInline,t);s&&(o.push([n,r]),r.appendChild(s.dom),r=s.contentDOM||s.dom)}}r.appendChild(this.serializeNodeInner(e,t))})),n}serializeNodeInner(e,t){let{dom:n,contentDOM:r}=ue.renderSpec(de(t),this.nodes[e.type.name](e));if(r){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,t,r)}return n}serializeNode(e,t={}){let n=this.serializeNodeInner(e,t);for(let r=e.marks.length-1;r>=0;r--){let o=this.serializeMark(e.marks[r],e.isInline,t);o&&((o.contentDOM||o.dom).appendChild(n),n=o.dom)}return n}serializeMark(e,t,n={}){let r=this.marks[e.type.name];return r&&ue.renderSpec(de(n),r(e,t))}static renderSpec(e,t,n=null){if("string"==typeof t)return{dom:e.createTextNode(t)};if(null!=t.nodeType)return{dom:t};if(t.dom&&null!=t.dom.nodeType)return t;let r,o=t[0],i=o.indexOf(" ");i>0&&(n=o.slice(0,i),o=o.slice(i+1));let s=n?e.createElementNS(n,o):e.createElement(o),a=t[1],l=1;if(a&&"object"==typeof a&&null==a.nodeType&&!Array.isArray(a)){l=2;for(let e in a)if(null!=a[e]){let t=e.indexOf(" ");t>0?s.setAttributeNS(e.slice(0,t),e.slice(t+1),a[e]):s.setAttribute(e,a[e])}}for(let o=l;o<t.length;o++){let i=t[o];if(0===i){if(o<t.length-1||o>l)throw new RangeError("Content hole must be the only child of its parent node");return{dom:s,contentDOM:s}}{let{dom:t,contentDOM:o}=ue.renderSpec(e,i,n);if(s.appendChild(t),o){if(r)throw new RangeError("Multiple content holes");r=o}}}return{dom:s,contentDOM:r}}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new ue(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let t=he(e.nodes);return t.text||(t.text=e=>e.text),t}static marksFromSchema(e){return he(e.marks)}}function he(e){let t={};for(let n in e){let r=e[n].spec.toDOM;r&&(t[n]=r)}return t}function de(e){return e.document||window.document}},2376:(e,t,n)=>{"use strict";n.d(t,{Bs:()=>u,C1:()=>p,H$:()=>A,Sy:()=>M,Y1:()=>s,qv:()=>d,xm:()=>a,yy:()=>k});var r=n(7823),o=n(6560);const i=Object.create(null);class s{constructor(e,t,n){this.$anchor=e,this.$head=t,this.ranges=n||[new a(e.min(t),e.max(t))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let e=this.ranges;for(let t=0;t<e.length;t++)if(e[t].$from.pos!=e[t].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,t=r.p2.empty){let n=t.content.lastChild,o=null;for(let e=0;e<t.openEnd;e++)o=n,n=n.lastChild;let i=e.steps.length,s=this.ranges;for(let a=0;a<s.length;a++){let{$from:l,$to:c}=s[a],u=e.mapping.slice(i);e.replaceRange(u.map(l.pos),u.map(c.pos),a?r.p2.empty:t),0==a&&y(e,i,(n?n.isInline:o&&o.isTextblock)?-1:1)}}replaceWith(e,t){let n=e.steps.length,r=this.ranges;for(let o=0;o<r.length;o++){let{$from:i,$to:s}=r[o],a=e.mapping.slice(n),l=a.map(i.pos),c=a.map(s.pos);o?e.deleteRange(l,c):(e.replaceRangeWith(l,c,t),y(e,n,t.isInline?-1:1))}}static findFrom(e,t,n=!1){let r=e.parent.inlineContent?new u(e):g(e.node(0),e.parent,e.pos,e.index(),t,n);if(r)return r;for(let r=e.depth-1;r>=0;r--){let o=t<0?g(e.node(0),e.node(r),e.before(r+1),e.index(r),t,n):g(e.node(0),e.node(r),e.after(r+1),e.index(r)+1,t,n);if(o)return o}return null}static near(e,t=1){return this.findFrom(e,t)||this.findFrom(e,-t)||new p(e.node(0))}static atStart(e){return g(e,e,0,0,1)||new p(e)}static atEnd(e){return g(e,e,e.content.size,e.childCount,-1)||new p(e)}static fromJSON(e,t){if(!t||!t.type)throw new RangeError("Invalid input for Selection.fromJSON");let n=i[t.type];if(!n)throw new RangeError(`No selection type ${t.type} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in i)throw new RangeError("Duplicate use of selection JSON ID "+e);return i[e]=t,t.prototype.jsonID=e,t}getBookmark(){return u.between(this.$anchor,this.$head).getBookmark()}}s.prototype.visible=!0;class a{constructor(e,t){this.$from=e,this.$to=t}}let l=!1;function c(e){l||e.parent.inlineContent||(l=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+e.parent.type.name+")"))}class u extends s{constructor(e,t=e){c(e),c(t),super(e,t)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,t){let n=e.resolve(t.map(this.head));if(!n.parent.inlineContent)return s.near(n);let r=e.resolve(t.map(this.anchor));return new u(r.parent.inlineContent?r:n,n)}replace(e,t=r.p2.empty){if(super.replace(e,t),t==r.p2.empty){let t=this.$from.marksAcross(this.$to);t&&e.ensureMarks(t)}}eq(e){return e instanceof u&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new h(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,t){if("number"!=typeof t.anchor||"number"!=typeof t.head)throw new RangeError("Invalid input for TextSelection.fromJSON");return new u(e.resolve(t.anchor),e.resolve(t.head))}static create(e,t,n=t){let r=e.resolve(t);return new this(r,n==t?r:e.resolve(n))}static between(e,t,n){let r=e.pos-t.pos;if(n&&!r||(n=r>=0?1:-1),!t.parent.inlineContent){let e=s.findFrom(t,n,!0)||s.findFrom(t,-n,!0);if(!e)return s.near(t,n);t=e.$head}return e.parent.inlineContent||(0==r||(e=(s.findFrom(e,-n,!0)||s.findFrom(e,n,!0)).$anchor).pos<t.pos!=r<0)&&(e=t),new u(e,t)}}s.jsonID("text",u);class h{constructor(e,t){this.anchor=e,this.head=t}map(e){return new h(e.map(this.anchor),e.map(this.head))}resolve(e){return u.between(e.resolve(this.anchor),e.resolve(this.head))}}class d extends s{constructor(e){let t=e.nodeAfter,n=e.node(0).resolve(e.pos+t.nodeSize);super(e,n),this.node=t}map(e,t){let{deleted:n,pos:r}=t.mapResult(this.anchor),o=e.resolve(r);return n?s.near(o):new d(o)}content(){return new r.p2(r.HY.from(this.node),0,0)}eq(e){return e instanceof d&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new f(this.anchor)}static fromJSON(e,t){if("number"!=typeof t.anchor)throw new RangeError("Invalid input for NodeSelection.fromJSON");return new d(e.resolve(t.anchor))}static create(e,t){return new d(e.resolve(t))}static isSelectable(e){return!e.isText&&!1!==e.type.spec.selectable}}d.prototype.visible=!1,s.jsonID("node",d);class f{constructor(e){this.anchor=e}map(e){let{deleted:t,pos:n}=e.mapResult(this.anchor);return t?new h(n,n):new f(n)}resolve(e){let t=e.resolve(this.anchor),n=t.nodeAfter;return n&&d.isSelectable(n)?new d(t):s.near(t)}}class p extends s{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,t=r.p2.empty){if(t==r.p2.empty){e.delete(0,e.doc.content.size);let t=s.atStart(e.doc);t.eq(e.selection)||e.setSelection(t)}else super.replace(e,t)}toJSON(){return{type:"all"}}static fromJSON(e){return new p(e)}map(e){return new p(e)}eq(e){return e instanceof p}getBookmark(){return m}}s.jsonID("all",p);const m={map(){return this},resolve:e=>new p(e)};function g(e,t,n,r,o,i=!1){if(t.inlineContent)return u.create(e,n);for(let s=r-(o>0?0:1);o>0?s<t.childCount:s>=0;s+=o){let r=t.child(s);if(r.isAtom){if(!i&&d.isSelectable(r))return d.create(e,n-(o<0?r.nodeSize:0))}else{let t=g(e,r,n+o,o<0?r.childCount:0,o,i);if(t)return t}n+=r.nodeSize*o}return null}function y(e,t,n){let r=e.steps.length-1;if(r<t)return;let i,a=e.steps[r];(a instanceof o.Pu||a instanceof o.FC)&&(e.mapping.maps[r].forEach(((e,t,n,r)=>{null==i&&(i=r)})),e.setSelection(s.near(e.doc.resolve(i),n)))}class v extends o.wx{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=-3&(1|this.updated),this.storedMarks=null,this}get selectionSet(){return(1&this.updated)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=2,this}ensureMarks(e){return r.vc.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(2&this.updated)>0}addStep(e,t){super.addStep(e,t),this.updated=-3&this.updated,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,t=!0){let n=this.selection;return t&&(e=e.mark(this.storedMarks||(n.empty?n.$from.marks():n.$from.marksAcross(n.$to)||r.vc.none))),n.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,t,n){let r=this.doc.type.schema;if(null==t)return e?this.replaceSelectionWith(r.text(e),!0):this.deleteSelection();{if(null==n&&(n=t),n=null==n?t:n,!e)return this.deleteRange(t,n);let o=this.storedMarks;if(!o){let e=this.doc.resolve(t);o=n==t?e.marks():e.marksAcross(this.doc.resolve(n))}return this.replaceRangeWith(t,n,r.text(e,o)),this.selection.empty||this.setSelection(s.near(this.selection.$to)),this}}setMeta(e,t){return this.meta["string"==typeof e?e:e.key]=t,this}getMeta(e){return this.meta["string"==typeof e?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=4,this}get scrolledIntoView(){return(4&this.updated)>0}}function b(e,t){return t&&e?e.bind(t):e}class w{constructor(e,t,n){this.name=e,this.init=b(t.init,n),this.apply=b(t.apply,n)}}const x=[new w("doc",{init:e=>e.doc||e.schema.topNodeType.createAndFill(),apply:e=>e.doc}),new w("selection",{init:(e,t)=>e.selection||s.atStart(t.doc),apply:e=>e.selection}),new w("storedMarks",{init:e=>e.storedMarks||null,apply:(e,t,n,r)=>r.selection.$cursor?e.storedMarks:null}),new w("scrollToSelection",{init:()=>0,apply:(e,t)=>e.scrolledIntoView?t+1:t})];class S{constructor(e,t){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=x.slice(),t&&t.forEach((e=>{if(this.pluginsByKey[e.key])throw new RangeError("Adding different instances of a keyed plugin ("+e.key+")");this.plugins.push(e),this.pluginsByKey[e.key]=e,e.spec.state&&this.fields.push(new w(e.key,e.spec.state,e))}))}}class k{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,t=-1){for(let n=0;n<this.config.plugins.length;n++)if(n!=t){let t=this.config.plugins[n];if(t.spec.filterTransaction&&!t.spec.filterTransaction.call(t,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let t=[e],n=this.applyInner(e),r=null;for(;;){let o=!1;for(let i=0;i<this.config.plugins.length;i++){let s=this.config.plugins[i];if(s.spec.appendTransaction){let a=r?r[i].n:0,l=r?r[i].state:this,c=a<t.length&&s.spec.appendTransaction.call(s,a?t.slice(a):t,l,n);if(c&&n.filterTransaction(c,i)){if(c.setMeta("appendedTransaction",e),!r){r=[];for(let e=0;e<this.config.plugins.length;e++)r.push(e<i?{state:n,n:t.length}:{state:this,n:0})}t.push(c),n=n.applyInner(c),o=!0}r&&(r[i]={state:n,n:t.length})}}if(!o)return{state:n,transactions:t}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let t=new k(this.config),n=this.config.fields;for(let r=0;r<n.length;r++){let o=n[r];t[o.name]=o.apply(e,this[o.name],this,t)}return t}get tr(){return new v(this)}static create(e){let t=new S(e.doc?e.doc.type.schema:e.schema,e.plugins),n=new k(t);for(let r=0;r<t.fields.length;r++)n[t.fields[r].name]=t.fields[r].init(e,n);return n}reconfigure(e){let t=new S(this.schema,e.plugins),n=t.fields,r=new k(t);for(let t=0;t<n.length;t++){let o=n[t].name;r[o]=this.hasOwnProperty(o)?this[o]:n[t].init(e,r)}return r}toJSON(e){let t={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(t.storedMarks=this.storedMarks.map((e=>e.toJSON()))),e&&"object"==typeof e)for(let n in e){if("doc"==n||"selection"==n)throw new RangeError("The JSON fields `doc` and `selection` are reserved");let r=e[n],o=r.spec.state;o&&o.toJSON&&(t[n]=o.toJSON.call(r,this[r.key]))}return t}static fromJSON(e,t,n){if(!t)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let o=new S(e.schema,e.plugins),i=new k(o);return o.fields.forEach((o=>{if("doc"==o.name)i.doc=r.NB.fromJSON(e.schema,t.doc);else if("selection"==o.name)i.selection=s.fromJSON(i.doc,t.selection);else if("storedMarks"==o.name)t.storedMarks&&(i.storedMarks=t.storedMarks.map(e.schema.markFromJSON));else{if(n)for(let r in n){let s=n[r],a=s.spec.state;if(s.key==o.name&&a&&a.fromJSON&&Object.prototype.hasOwnProperty.call(t,r))return void(i[o.name]=a.fromJSON.call(s,e,t[r],i))}i[o.name]=o.init(e,i)}})),i}}function C(e,t,n){for(let r in e){let o=e[r];o instanceof Function?o=o.bind(t):"handleDOMEvents"==r&&(o=C(o,t,{})),n[r]=o}return n}class M{constructor(e){this.spec=e,this.props={},e.props&&C(e.props,this,this.props),this.key=e.key?e.key.key:E("plugin")}getState(e){return e[this.key]}}const O=Object.create(null);function E(e){return e in O?e+"$"+ ++O[e]:(O[e]=0,e+"$")}class A{constructor(e="key"){this.key=E(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}},6560:(e,t,n)=>{"use strict";n.d(t,{Ax:()=>C,FC:()=>v,GJ:()=>E,Mn:()=>M,Pu:()=>y,dR:()=>T,k9:()=>x,nd:()=>S,nj:()=>A,vs:()=>l,wx:()=>H});var r=n(7823);const o=Math.pow(2,16);function i(e){return 65535&e}class s{constructor(e,t,n){this.pos=e,this.delInfo=t,this.recover=n}get deleted(){return(8&this.delInfo)>0}get deletedBefore(){return(5&this.delInfo)>0}get deletedAfter(){return(6&this.delInfo)>0}get deletedAcross(){return(4&this.delInfo)>0}}class a{constructor(e,t=!1){if(this.ranges=e,this.inverted=t,!e.length&&a.empty)return a.empty}recover(e){let t=0,n=i(e);if(!this.inverted)for(let e=0;e<n;e++)t+=this.ranges[3*e+2]-this.ranges[3*e+1];return this.ranges[3*n]+t+function(e){return(e-(65535&e))/o}(e)}mapResult(e,t=1){return this._map(e,t,!1)}map(e,t=1){return this._map(e,t,!0)}_map(e,t,n){let r=0,i=this.inverted?2:1,a=this.inverted?1:2;for(let l=0;l<this.ranges.length;l+=3){let c=this.ranges[l]-(this.inverted?r:0);if(c>e)break;let u=this.ranges[l+i],h=this.ranges[l+a],d=c+u;if(e<=d){let i=c+r+((u?e==c?-1:e==d?1:t:t)<0?0:h);if(n)return i;let a=e==c?2:e==d?1:4;return(t<0?e!=c:e!=d)&&(a|=8),new s(i,a,e==(t<0?c:d)?null:l/3+(e-c)*o)}r+=h-u}return n?e+r:new s(e+r,0,null)}touches(e,t){let n=0,r=i(t),o=this.inverted?2:1,s=this.inverted?1:2;for(let t=0;t<this.ranges.length;t+=3){let i=this.ranges[t]-(this.inverted?n:0);if(i>e)break;let a=this.ranges[t+o];if(e<=i+a&&t==3*r)return!0;n+=this.ranges[t+s]-a}return!1}forEach(e){let t=this.inverted?2:1,n=this.inverted?1:2;for(let r=0,o=0;r<this.ranges.length;r+=3){let i=this.ranges[r],s=i-(this.inverted?o:0),a=i+(this.inverted?0:o),l=this.ranges[r+t],c=this.ranges[r+n];e(s,s+l,a,a+c),o+=c-l}}invert(){return new a(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return 0==e?a.empty:new a(e<0?[0,-e,0]:[0,0,e])}}a.empty=new a([]);class l{constructor(e=[],t,n=0,r=e.length){this.maps=e,this.mirror=t,this.from=n,this.to=r}slice(e=0,t=this.maps.length){return new l(this.maps,this.mirror,e,t)}copy(){return new l(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(e,t){this.to=this.maps.push(e),null!=t&&this.setMirror(this.maps.length-1,t)}appendMapping(e){for(let t=0,n=this.maps.length;t<e.maps.length;t++){let r=e.getMirror(t);this.appendMap(e.maps[t],null!=r&&r<t?n+r:void 0)}}getMirror(e){if(this.mirror)for(let t=0;t<this.mirror.length;t++)if(this.mirror[t]==e)return this.mirror[t+(t%2?-1:1)]}setMirror(e,t){this.mirror||(this.mirror=[]),this.mirror.push(e,t)}appendMappingInverted(e){for(let t=e.maps.length-1,n=this.maps.length+e.maps.length;t>=0;t--){let r=e.getMirror(t);this.appendMap(e.maps[t].invert(),null!=r&&r>t?n-r-1:void 0)}}invert(){let e=new l;return e.appendMappingInverted(this),e}map(e,t=1){if(this.mirror)return this._map(e,t,!0);for(let n=this.from;n<this.to;n++)e=this.maps[n].map(e,t);return e}mapResult(e,t=1){return this._map(e,t,!1)}_map(e,t,n){let r=0;for(let n=this.from;n<this.to;n++){let o=this.maps[n].mapResult(e,t);if(null!=o.recover){let t=this.getMirror(n);if(null!=t&&t>n&&t<this.to){n=t,e=this.maps[t].recover(o.recover);continue}}r|=o.delInfo,e=o.pos}return n?e:new s(e,r,null)}}const c=Object.create(null);class u{getMap(){return a.empty}merge(e){return null}static fromJSON(e,t){if(!t||!t.stepType)throw new RangeError("Invalid input for Step.fromJSON");let n=c[t.stepType];if(!n)throw new RangeError(`No step type ${t.stepType} defined`);return n.fromJSON(e,t)}static jsonID(e,t){if(e in c)throw new RangeError("Duplicate use of step JSON ID "+e);return c[e]=t,t.prototype.jsonID=e,t}}class h{constructor(e,t){this.doc=e,this.failed=t}static ok(e){return new h(e,null)}static fail(e){return new h(null,e)}static fromReplace(e,t,n,o){try{return h.ok(e.replace(t,n,o))}catch(e){if(e instanceof r.e4)return h.fail(e.message);throw e}}}function d(e,t,n){let o=[];for(let r=0;r<e.childCount;r++){let i=e.child(r);i.content.size&&(i=i.copy(d(i.content,t,i))),i.isInline&&(i=t(i,n,r)),o.push(i)}return r.HY.fromArray(o)}class f extends u{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=e.resolve(this.from),o=n.node(n.sharedDepth(this.to)),i=new r.p2(d(t.content,((e,t)=>e.isAtom&&t.type.allowsMarkType(this.mark.type)?e.mark(this.mark.addToSet(e.marks)):e),o),t.openStart,t.openEnd);return h.fromReplace(e,this.from,this.to,i)}invert(){return new p(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new f(t.pos,n.pos,this.mark)}merge(e){return e instanceof f&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new f(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new f(t.from,t.to,e.markFromJSON(t.mark))}}u.jsonID("addMark",f);class p extends u{constructor(e,t,n){super(),this.from=e,this.to=t,this.mark=n}apply(e){let t=e.slice(this.from,this.to),n=new r.p2(d(t.content,(e=>e.mark(this.mark.removeFromSet(e.marks))),e),t.openStart,t.openEnd);return h.fromReplace(e,this.from,this.to,n)}invert(){return new f(this.from,this.to,this.mark)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deleted&&n.deleted||t.pos>=n.pos?null:new p(t.pos,n.pos,this.mark)}merge(e){return e instanceof p&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new p(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new p(t.from,t.to,e.markFromJSON(t.mark))}}u.jsonID("removeMark",p);class m extends u{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return h.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.addToSet(t.marks));return h.fromReplace(e,this.pos,this.pos+1,new r.p2(r.HY.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);if(t){let e=this.mark.addToSet(t.marks);if(e.length==t.marks.length){for(let n=0;n<t.marks.length;n++)if(!t.marks[n].isInSet(e))return new m(this.pos,t.marks[n]);return new m(this.pos,this.mark)}}return new g(this.pos,this.mark)}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new m(t.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if("number"!=typeof t.pos)throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new m(t.pos,e.markFromJSON(t.mark))}}u.jsonID("addNodeMark",m);class g extends u{constructor(e,t){super(),this.pos=e,this.mark=t}apply(e){let t=e.nodeAt(this.pos);if(!t)return h.fail("No node at mark step's position");let n=t.type.create(t.attrs,null,this.mark.removeFromSet(t.marks));return h.fromReplace(e,this.pos,this.pos+1,new r.p2(r.HY.from(n),0,t.isLeaf?0:1))}invert(e){let t=e.nodeAt(this.pos);return t&&this.mark.isInSet(t.marks)?new m(this.pos,this.mark):this}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new g(t.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,t){if("number"!=typeof t.pos)throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new g(t.pos,e.markFromJSON(t.mark))}}u.jsonID("removeNodeMark",g);class y extends u{constructor(e,t,n,r=!1){super(),this.from=e,this.to=t,this.slice=n,this.structure=r}apply(e){return this.structure&&b(e,this.from,this.to)?h.fail("Structure replace would overwrite content"):h.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new a([this.from,this.to-this.from,this.slice.size])}invert(e){return new y(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1);return t.deletedAcross&&n.deletedAcross?null:new y(t.pos,Math.max(t.pos,n.pos),this.slice)}merge(e){if(!(e instanceof y)||e.structure||this.structure)return null;if(this.from+this.slice.size!=e.from||this.slice.openEnd||e.slice.openStart){if(e.to!=this.from||this.slice.openStart||e.slice.openEnd)return null;{let t=this.slice.size+e.slice.size==0?r.p2.empty:new r.p2(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new y(e.from,this.to,t,this.structure)}}{let t=this.slice.size+e.slice.size==0?r.p2.empty:new r.p2(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new y(this.from,this.to+(e.to-e.from),t,this.structure)}}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to)throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new y(t.from,t.to,r.p2.fromJSON(e,t.slice),!!t.structure)}}u.jsonID("replace",y);class v extends u{constructor(e,t,n,r,o,i,s=!1){super(),this.from=e,this.to=t,this.gapFrom=n,this.gapTo=r,this.slice=o,this.insert=i,this.structure=s}apply(e){if(this.structure&&(b(e,this.from,this.gapFrom)||b(e,this.gapTo,this.to)))return h.fail("Structure gap-replace would overwrite content");let t=e.slice(this.gapFrom,this.gapTo);if(t.openStart||t.openEnd)return h.fail("Gap is not a flat range");let n=this.slice.insertAt(this.insert,t.content);return n?h.fromReplace(e,this.from,this.to,n):h.fail("Content does not fit in gap")}getMap(){return new a([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let t=this.gapTo-this.gapFrom;return new v(this.from,this.from+this.slice.size+t,this.from+this.insert,this.from+this.insert+t,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let t=e.mapResult(this.from,1),n=e.mapResult(this.to,-1),r=e.map(this.gapFrom,-1),o=e.map(this.gapTo,1);return t.deletedAcross&&n.deletedAcross||r<t.pos||o>n.pos?null:new v(t.pos,n.pos,r,o,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,t){if("number"!=typeof t.from||"number"!=typeof t.to||"number"!=typeof t.gapFrom||"number"!=typeof t.gapTo||"number"!=typeof t.insert)throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new v(t.from,t.to,t.gapFrom,t.gapTo,r.p2.fromJSON(e,t.slice),t.insert,!!t.structure)}}function b(e,t,n){let r=e.resolve(t),o=n-t,i=r.depth;for(;o>0&&i>0&&r.indexAfter(i)==r.node(i).childCount;)i--,o--;if(o>0){let e=r.node(i).maybeChild(r.indexAfter(i));for(;o>0;){if(!e||e.isLeaf)return!0;e=e.firstChild,o--}}return!1}function w(e,t,n){return(0==t||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function x(e){let t=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let n=e.depth;;--n){let r=e.$from.node(n),o=e.$from.index(n),i=e.$to.indexAfter(n);if(n<e.depth&&r.canReplace(o,i,t))return n;if(0==n||r.type.spec.isolating||!w(r,o,i))break}return null}function S(e,t,n=null,r=e){let o=function(e,t){let{parent:n,startIndex:r,endIndex:o}=e,i=n.contentMatchAt(r).findWrapping(t);if(!i)return null;let s=i.length?i[0]:t;return n.canReplaceWith(r,o,s)?i:null}(e,t),i=o&&function(e,t){let{parent:n,startIndex:r,endIndex:o}=e,i=n.child(r),s=t.contentMatch.findWrapping(i.type);if(!s)return null;let a=(s.length?s[s.length-1]:t).contentMatch;for(let e=r;a&&e<o;e++)a=a.matchType(n.child(e).type);return a&&a.validEnd?s:null}(r,t);return i?o.map(k).concat({type:t,attrs:n}).concat(i.map(k)):null}function k(e){return{type:e,attrs:null}}function C(e,t,n=1,r){let o=e.resolve(t),i=o.depth-n,s=r&&r[r.length-1]||o.parent;if(i<0||o.parent.type.spec.isolating||!o.parent.canReplace(o.index(),o.parent.childCount)||!s.type.validContent(o.parent.content.cutByIndex(o.index(),o.parent.childCount)))return!1;for(let e=o.depth-1,t=n-2;e>i;e--,t--){let n=o.node(e),i=o.index(e);if(n.type.spec.isolating)return!1;let s=n.content.cutByIndex(i,n.childCount),a=r&&r[t+1];a&&(s=s.replaceChild(0,a.type.create(a.attrs)));let l=r&&r[t]||n;if(!n.canReplace(i+1,n.childCount)||!l.type.validContent(s))return!1}let a=o.indexAfter(i),l=r&&r[0];return o.node(i).canReplaceWith(a,a,l?l.type:o.node(i+1).type)}function M(e,t){let n=e.resolve(t),r=n.index();return O(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function O(e,t){return!(!e||!t||e.isLeaf||!e.canAppend(t))}function E(e,t,n=-1){let r=e.resolve(t);for(let e=r.depth;;e--){let o,i,s=r.index(e);if(e==r.depth?(o=r.nodeBefore,i=r.nodeAfter):n>0?(o=r.node(e+1),s++,i=r.node(e).maybeChild(s)):(o=r.node(e).maybeChild(s-1),i=r.node(e+1)),o&&!o.isTextblock&&O(o,i)&&r.node(e).canReplace(s,s+1))return t;if(0==e)break;t=n<0?r.before(e):r.after(e)}}function A(e,t,n){let r=e.resolve(t);if(!n.content.size)return t;let o=n.content;for(let e=0;e<n.openStart;e++)o=o.firstChild.content;for(let e=1;e<=(0==n.openStart&&n.size?2:1);e++)for(let t=r.depth;t>=0;t--){let n=t==r.depth?0:r.pos<=(r.start(t+1)+r.end(t+1))/2?-1:1,i=r.index(t)+(n>0?1:0),s=r.node(t),a=!1;if(1==e)a=s.canReplace(i,i,o);else{let e=s.contentMatchAt(i).findWrapping(o.firstChild.type);a=e&&s.canReplaceWith(i,i,e[0])}if(a)return 0==n?r.pos:n<0?r.before(t+1):r.after(t+1)}return null}function T(e,t,n=t,o=r.p2.empty){if(t==n&&!o.size)return null;let i=e.resolve(t),s=e.resolve(n);return D(i,s,o)?new y(t,n,o):new _(i,s,o).fit()}function D(e,t,n){return!n.openStart&&!n.openEnd&&e.start()==t.start()&&e.parent.canReplace(e.index(),t.index(),n.content)}u.jsonID("replaceAround",v);class _{constructor(e,t,n){this.$from=e,this.$to=t,this.unplaced=n,this.frontier=[],this.placed=r.HY.empty;for(let t=0;t<=e.depth;t++){let n=e.node(t);this.frontier.push({type:n.type,match:n.contentMatchAt(e.indexAfter(t))})}for(let t=e.depth;t>0;t--)this.placed=r.HY.from(e.node(t).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let e=this.findFittable();e?this.placeNodes(e):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),t=this.placed.size-this.depth-this.$from.depth,n=this.$from,o=this.close(e<0?this.$to:n.doc.resolve(e));if(!o)return null;let i=this.placed,s=n.depth,a=o.depth;for(;s&&a&&1==i.childCount;)i=i.firstChild.content,s--,a--;let l=new r.p2(i,s,a);return e>-1?new v(n.pos,e,this.$to.pos,this.$to.end(),l,t):l.size||n.pos!=this.$to.pos?new y(n.pos,o.pos,l):null}findFittable(){let e=this.unplaced.openStart;for(let t=this.unplaced.content,n=0,r=this.unplaced.openEnd;n<e;n++){let o=t.firstChild;if(t.childCount>1&&(r=0),o.type.spec.isolating&&r<=n){e=n;break}t=o.content}for(let t=1;t<=2;t++)for(let n=1==t?e:this.unplaced.openStart;n>=0;n--){let e,o=null;n?(o=P(this.unplaced.content,n-1).firstChild,e=o.content):e=this.unplaced.content;let i=e.firstChild;for(let e=this.depth;e>=0;e--){let s,{type:a,match:l}=this.frontier[e],c=null;if(1==t&&(i?l.matchType(i.type)||(c=l.fillBefore(r.HY.from(i),!1)):o&&a.compatibleContent(o.type)))return{sliceDepth:n,frontierDepth:e,parent:o,inject:c};if(2==t&&i&&(s=l.findWrapping(i.type)))return{sliceDepth:n,frontierDepth:e,parent:o,wrap:s};if(o&&l.matchType(o.type))break}}}openMore(){let{content:e,openStart:t,openEnd:n}=this.unplaced,o=P(e,t);return!(!o.childCount||o.firstChild.isLeaf||(this.unplaced=new r.p2(e,t+1,Math.max(n,o.size+t>=e.size-n?t+1:0)),0))}dropNode(){let{content:e,openStart:t,openEnd:n}=this.unplaced,o=P(e,t);if(o.childCount<=1&&t>0){let i=e.size-t<=t+o.size;this.unplaced=new r.p2(R(e,t-1,1),t-1,i?t-1:n)}else this.unplaced=new r.p2(R(e,t,1),t,n)}placeNodes({sliceDepth:e,frontierDepth:t,parent:n,inject:o,wrap:i}){for(;this.depth>t;)this.closeFrontierNode();if(i)for(let e=0;e<i.length;e++)this.openFrontierNode(i[e]);let s=this.unplaced,a=n?n.content:s.content,l=s.openStart-e,c=0,u=[],{match:h,type:d}=this.frontier[t];if(o){for(let e=0;e<o.childCount;e++)u.push(o.child(e));h=h.matchFragment(o)}let f=a.size+e-(s.content.size-s.openEnd);for(;c<a.childCount;){let e=a.child(c),t=h.matchType(e.type);if(!t)break;c++,(c>1||0==l||e.content.size)&&(h=t,u.push(I(e.mark(d.allowedMarks(e.marks)),1==c?l:0,c==a.childCount?f:-1)))}let p=c==a.childCount;p||(f=-1),this.placed=N(this.placed,t,r.HY.from(u)),this.frontier[t].match=h,p&&f<0&&n&&n.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let e=0,t=a;e<f;e++){let e=t.lastChild;this.frontier.push({type:e.type,match:e.contentMatchAt(e.childCount)}),t=e.content}this.unplaced=p?0==e?r.p2.empty:new r.p2(R(s.content,e-1,1),e-1,f<0?s.openEnd:e-1):new r.p2(R(s.content,e,c),s.openStart,s.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e,t=this.frontier[this.depth];if(!t.type.isTextblock||!L(this.$to,this.$to.depth,t.type,t.match,!1)||this.$to.depth==this.depth&&(e=this.findCloseLevel(this.$to))&&e.depth==this.depth)return-1;let{depth:n}=this.$to,r=this.$to.after(n);for(;n>1&&r==this.$to.end(--n);)++r;return r}findCloseLevel(e){e:for(let t=Math.min(this.depth,e.depth);t>=0;t--){let{match:n,type:r}=this.frontier[t],o=t<e.depth&&e.end(t+1)==e.pos+(e.depth-(t+1)),i=L(e,t,r,n,o);if(i){for(let n=t-1;n>=0;n--){let{match:t,type:r}=this.frontier[n],o=L(e,n,r,t,!0);if(!o||o.childCount)continue e}return{depth:t,fit:i,move:o?e.doc.resolve(e.after(t+1)):e}}}}close(e){let t=this.findCloseLevel(e);if(!t)return null;for(;this.depth>t.depth;)this.closeFrontierNode();t.fit.childCount&&(this.placed=N(this.placed,t.depth,t.fit)),e=t.move;for(let n=t.depth+1;n<=e.depth;n++){let t=e.node(n),r=t.type.contentMatch.fillBefore(t.content,!0,e.index(n));this.openFrontierNode(t.type,t.attrs,r)}return e}openFrontierNode(e,t=null,n){let o=this.frontier[this.depth];o.match=o.match.matchType(e),this.placed=N(this.placed,this.depth,r.HY.from(e.create(t,n))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let e=this.frontier.pop().match.fillBefore(r.HY.empty,!0);e.childCount&&(this.placed=N(this.placed,this.frontier.length,e))}}function R(e,t,n){return 0==t?e.cutByIndex(n,e.childCount):e.replaceChild(0,e.firstChild.copy(R(e.firstChild.content,t-1,n)))}function N(e,t,n){return 0==t?e.append(n):e.replaceChild(e.childCount-1,e.lastChild.copy(N(e.lastChild.content,t-1,n)))}function P(e,t){for(let n=0;n<t;n++)e=e.firstChild.content;return e}function I(e,t,n){if(t<=0)return e;let o=e.content;return t>1&&(o=o.replaceChild(0,I(o.firstChild,t-1,1==o.childCount?n-1:0))),t>0&&(o=e.type.contentMatch.fillBefore(o).append(o),n<=0&&(o=o.append(e.type.contentMatch.matchFragment(o).fillBefore(r.HY.empty,!0)))),e.copy(o)}function L(e,t,n,r,o){let i=e.node(t),s=o?e.indexAfter(t):e.index(t);if(s==i.childCount&&!n.compatibleContent(i.type))return null;let a=r.fillBefore(i.content,!0,s);return a&&!function(e,t,n){for(let r=n;r<t.childCount;r++)if(!e.allowsMarks(t.child(r).marks))return!0;return!1}(n,i.content,s)?a:null}function j(e,t,n,o,i){if(t<n){let r=e.firstChild;e=e.replaceChild(0,r.copy(j(r.content,t+1,n,o,r)))}if(t>o){let t=i.contentMatchAt(0),n=t.fillBefore(e).append(e);e=n.append(t.matchFragment(n).fillBefore(r.HY.empty,!0))}return e}function F(e,t){let n=[];for(let r=Math.min(e.depth,t.depth);r>=0;r--){let o=e.start(r);if(o<e.pos-(e.depth-r)||t.end(r)>t.pos+(t.depth-r)||e.node(r).type.spec.isolating||t.node(r).type.spec.isolating)break;(o==t.start(r)||r==e.depth&&r==t.depth&&e.parent.inlineContent&&t.parent.inlineContent&&r&&t.start(r-1)==o-1)&&n.push(r)}return n}class B extends u{constructor(e,t,n){super(),this.pos=e,this.attr=t,this.value=n}apply(e){let t=e.nodeAt(this.pos);if(!t)return h.fail("No node at attribute step's position");let n=Object.create(null);for(let e in t.attrs)n[e]=t.attrs[e];n[this.attr]=this.value;let o=t.type.create(n,null,t.marks);return h.fromReplace(e,this.pos,this.pos+1,new r.p2(r.HY.from(o),0,t.isLeaf?0:1))}getMap(){return a.empty}invert(e){return new B(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let t=e.mapResult(this.pos,1);return t.deletedAfter?null:new B(t.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,t){if("number"!=typeof t.pos||"string"!=typeof t.attr)throw new RangeError("Invalid input for AttrStep.fromJSON");return new B(t.pos,t.attr,t.value)}}u.jsonID("attr",B);class z extends u{constructor(e,t){super(),this.attr=e,this.value=t}apply(e){let t=Object.create(null);for(let n in e.attrs)t[n]=e.attrs[n];t[this.attr]=this.value;let n=e.type.create(t,e.content,e.marks);return h.ok(n)}getMap(){return a.empty}invert(e){return new z(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,t){if("string"!=typeof t.attr)throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new z(t.attr,t.value)}}u.jsonID("docAttr",z);let $=class extends Error{};$=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n},($.prototype=Object.create(Error.prototype)).constructor=$,$.prototype.name="TransformError";class H{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new l}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let t=this.maybeStep(e);if(t.failed)throw new $(t.failed);return this}maybeStep(e){let t=e.apply(this.doc);return t.failed||this.addStep(e,t.doc),t}get docChanged(){return this.steps.length>0}addStep(e,t){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=t}replace(e,t=e,n=r.p2.empty){let o=T(this.doc,e,t,n);return o&&this.step(o),this}replaceWith(e,t,n){return this.replace(e,t,new r.p2(r.HY.from(n),0,0))}delete(e,t){return this.replace(e,t,r.p2.empty)}insert(e,t){return this.replaceWith(e,e,t)}replaceRange(e,t,n){return function(e,t,n,o){if(!o.size)return e.deleteRange(t,n);let i=e.doc.resolve(t),s=e.doc.resolve(n);if(D(i,s,o))return e.step(new y(t,n,o));let a=F(i,e.doc.resolve(n));0==a[a.length-1]&&a.pop();let l=-(i.depth+1);a.unshift(l);for(let e=i.depth,t=i.pos-1;e>0;e--,t--){let n=i.node(e).type.spec;if(n.defining||n.definingAsContext||n.isolating)break;a.indexOf(e)>-1?l=e:i.before(e)==t&&a.splice(1,0,-e)}let c=a.indexOf(l),u=[],h=o.openStart;for(let e=o.content,t=0;;t++){let n=e.firstChild;if(u.push(n),t==o.openStart)break;e=n.content}for(let e=h-1;e>=0;e--){let t=u[e],n=(d=t.type).spec.defining||d.spec.definingForContent;if(n&&!t.sameMarkup(i.node(Math.abs(l)-1)))h=e;else if(n||!t.type.isTextblock)break}var d;for(let t=o.openStart;t>=0;t--){let l=(t+h+1)%(o.openStart+1),d=u[l];if(d)for(let t=0;t<a.length;t++){let u=a[(t+c)%a.length],h=!0;u<0&&(h=!1,u=-u);let f=i.node(u-1),p=i.index(u-1);if(f.canReplaceWith(p,p,d.type,d.marks))return e.replace(i.before(u),h?s.after(u):n,new r.p2(j(o.content,0,o.openStart,l),l,o.openEnd))}}let f=e.steps.length;for(let r=a.length-1;r>=0&&(e.replace(t,n,o),!(e.steps.length>f));r--){let e=a[r];e<0||(t=i.before(e),n=s.after(e))}}(this,e,t,n),this}replaceRangeWith(e,t,n){return function(e,t,n,o){if(!o.isInline&&t==n&&e.doc.resolve(t).parent.content.size){let r=function(e,t,n){let r=e.resolve(t);if(r.parent.canReplaceWith(r.index(),r.index(),n))return t;if(0==r.parentOffset)for(let e=r.depth-1;e>=0;e--){let t=r.index(e);if(r.node(e).canReplaceWith(t,t,n))return r.before(e+1);if(t>0)return null}if(r.parentOffset==r.parent.content.size)for(let e=r.depth-1;e>=0;e--){let t=r.indexAfter(e);if(r.node(e).canReplaceWith(t,t,n))return r.after(e+1);if(t<r.node(e).childCount)return null}return null}(e.doc,t,o.type);null!=r&&(t=n=r)}e.replaceRange(t,n,new r.p2(r.HY.from(o),0,0))}(this,e,t,n),this}deleteRange(e,t){return function(e,t,n){let r=e.doc.resolve(t),o=e.doc.resolve(n),i=F(r,o);for(let t=0;t<i.length;t++){let n=i[t],s=t==i.length-1;if(s&&0==n||r.node(n).type.contentMatch.validEnd)return e.delete(r.start(n),o.end(n));if(n>0&&(s||r.node(n-1).canReplace(r.index(n-1),o.indexAfter(n-1))))return e.delete(r.before(n),o.after(n))}for(let i=1;i<=r.depth&&i<=o.depth;i++)if(t-r.start(i)==r.depth-i&&n>r.end(i)&&o.end(i)-n!=o.depth-i)return e.delete(r.before(i),n);e.delete(t,n)}(this,e,t),this}lift(e,t){return function(e,t,n){let{$from:o,$to:i,depth:s}=t,a=o.before(s+1),l=i.after(s+1),c=a,u=l,h=r.HY.empty,d=0;for(let e=s,t=!1;e>n;e--)t||o.index(e)>0?(t=!0,h=r.HY.from(o.node(e).copy(h)),d++):c--;let f=r.HY.empty,p=0;for(let e=s,t=!1;e>n;e--)t||i.after(e+1)<i.end(e)?(t=!0,f=r.HY.from(i.node(e).copy(f)),p++):u++;e.step(new v(c,u,a,l,new r.p2(h.append(f),d,p),h.size-d,!0))}(this,e,t),this}join(e,t=1){return function(e,t,n){let o=new y(t-n,t+n,r.p2.empty,!0);e.step(o)}(this,e,t),this}wrap(e,t){return function(e,t,n){let o=r.HY.empty;for(let e=n.length-1;e>=0;e--){if(o.size){let t=n[e].type.contentMatch.matchFragment(o);if(!t||!t.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}o=r.HY.from(n[e].type.create(n[e].attrs,o))}let i=t.start,s=t.end;e.step(new v(i,s,i,s,new r.p2(o,0,0),n.length,!0))}(this,e,t),this}setBlockType(e,t=e,n,o=null){return function(e,t,n,o,i){if(!o.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let s=e.steps.length;e.doc.nodesBetween(t,n,((t,n)=>{if(t.isTextblock&&!t.hasMarkup(o,i)&&function(e,t,n){let r=e.resolve(t),o=r.index();return r.parent.canReplaceWith(o,o+1,n)}(e.doc,e.mapping.slice(s).map(n),o)){e.clearIncompatible(e.mapping.slice(s).map(n,1),o);let a=e.mapping.slice(s),l=a.map(n,1),c=a.map(n+t.nodeSize,1);return e.step(new v(l,c,l+1,c-1,new r.p2(r.HY.from(o.create(i,null,t.marks)),0,0),1,!0)),!1}}))}(this,e,t,n,o),this}setNodeMarkup(e,t,n=null,o){return function(e,t,n,o,i){let s=e.doc.nodeAt(t);if(!s)throw new RangeError("No node at given position");n||(n=s.type);let a=n.create(o,null,i||s.marks);if(s.isLeaf)return e.replaceWith(t,t+s.nodeSize,a);if(!n.validContent(s.content))throw new RangeError("Invalid content for node type "+n.name);e.step(new v(t,t+s.nodeSize,t+1,t+s.nodeSize-1,new r.p2(r.HY.from(a),0,0),1,!0))}(this,e,t,n,o),this}setNodeAttribute(e,t,n){return this.step(new B(e,t,n)),this}setDocAttribute(e,t){return this.step(new z(e,t)),this}addNodeMark(e,t){return this.step(new m(e,t)),this}removeNodeMark(e,t){if(!(t instanceof r.vc)){let n=this.doc.nodeAt(e);if(!n)throw new RangeError("No node at position "+e);if(!(t=t.isInSet(n.marks)))return this}return this.step(new g(e,t)),this}split(e,t=1,n){return function(e,t,n=1,o){let i=e.doc.resolve(t),s=r.HY.empty,a=r.HY.empty;for(let e=i.depth,t=i.depth-n,l=n-1;e>t;e--,l--){s=r.HY.from(i.node(e).copy(s));let t=o&&o[l];a=r.HY.from(t?t.type.create(t.attrs,a):i.node(e).copy(a))}e.step(new y(t,t,new r.p2(s.append(a),n,n),!0))}(this,e,t,n),this}addMark(e,t,n){return function(e,t,n,r){let o,i,s=[],a=[];e.doc.nodesBetween(t,n,((e,l,c)=>{if(!e.isInline)return;let u=e.marks;if(!r.isInSet(u)&&c.type.allowsMarkType(r.type)){let c=Math.max(l,t),h=Math.min(l+e.nodeSize,n),d=r.addToSet(u);for(let e=0;e<u.length;e++)u[e].isInSet(d)||(o&&o.to==c&&o.mark.eq(u[e])?o.to=h:s.push(o=new p(c,h,u[e])));i&&i.to==c?i.to=h:a.push(i=new f(c,h,r))}})),s.forEach((t=>e.step(t))),a.forEach((t=>e.step(t)))}(this,e,t,n),this}removeMark(e,t,n){return function(e,t,n,o){let i=[],s=0;e.doc.nodesBetween(t,n,((e,a)=>{if(!e.isInline)return;s++;let l=null;if(o instanceof r.ZU){let t,n=e.marks;for(;t=o.isInSet(n);)(l||(l=[])).push(t),n=t.removeFromSet(n)}else o?o.isInSet(e.marks)&&(l=[o]):l=e.marks;if(l&&l.length){let r=Math.min(a+e.nodeSize,n);for(let e=0;e<l.length;e++){let n,o=l[e];for(let e=0;e<i.length;e++){let t=i[e];t.step==s-1&&o.eq(i[e].style)&&(n=t)}n?(n.to=r,n.step=s):i.push({style:o,from:Math.max(a,t),to:r,step:s})}}})),i.forEach((t=>e.step(new p(t.from,t.to,t.style))))}(this,e,t,n),this}clearIncompatible(e,t,n){return function(e,t,n,o=n.contentMatch){let i=e.doc.nodeAt(t),s=[],a=t+1;for(let t=0;t<i.childCount;t++){let l=i.child(t),c=a+l.nodeSize,u=o.matchType(l.type);if(u){o=u;for(let t=0;t<l.marks.length;t++)n.allowsMarkType(l.marks[t].type)||e.step(new p(a,c,l.marks[t]));if(l.isText&&!n.spec.code){let e,t,o=/\r?\n|\r/g;for(;e=o.exec(l.text);)t||(t=new r.p2(r.HY.from(n.schema.text(" ",n.allowedMarks(l.marks))),0,0)),s.push(new y(a+e.index,a+e.index+e[0].length,t))}}else s.push(new y(a,c,r.p2.empty));a=c}if(!o.validEnd){let t=o.fillBefore(r.HY.empty,!0);e.replace(a,a,new r.p2(t,0,0))}for(let t=s.length-1;t>=0;t--)e.step(s[t])}(this,e,t,n),this}}},4348:(e,t,n)=>{"use strict";n.d(t,{EH:()=>Bt,p:()=>Lt,tk:()=>an});var r=n(2376),o=n(7823),i=n(6560);const s=function(e){for(var t=0;;t++)if(!(e=e.previousSibling))return t},a=function(e){let t=e.assignedSlot||e.parentNode;return t&&11==t.nodeType?t.host:t};let l=null;const c=function(e,t,n){let r=l||(l=document.createRange());return r.setEnd(e,null==n?e.nodeValue.length:n),r.setStart(e,t||0),r},u=function(e,t,n,r){return n&&(d(e,t,n,r,-1)||d(e,t,n,r,1))},h=/^(img|br|input|textarea|hr)$/i;function d(e,t,n,r,o){for(;;){if(e==n&&t==r)return!0;if(t==(o<0?0:f(e))){let n=e.parentNode;if(!n||1!=n.nodeType||p(e)||h.test(e.nodeName)||"false"==e.contentEditable)return!1;t=s(e)+(o<0?0:1),e=n}else{if(1!=e.nodeType)return!1;if("false"==(e=e.childNodes[t+(o<0?-1:0)]).contentEditable)return!1;t=o<0?f(e):0}}}function f(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function p(e){let t;for(let n=e;n&&!(t=n.pmViewDesc);n=n.parentNode);return t&&t.node&&t.node.isBlock&&(t.dom==e||t.contentDOM==e)}const m=function(e){return e.focusNode&&u(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)};function g(e,t){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=e,n.key=n.code=t,n}const y="undefined"!=typeof navigator?navigator:null,v="undefined"!=typeof document?document:null,b=y&&y.userAgent||"",w=/Edge\/(\d+)/.exec(b),x=/MSIE \d/.exec(b),S=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(b),k=!!(x||S||w),C=x?document.documentMode:S?+S[1]:w?+w[1]:0,M=!k&&/gecko\/(\d+)/i.test(b);M&&(/Firefox\/(\d+)/.exec(b)||[0,0])[1];const O=!k&&/Chrome\/(\d+)/.exec(b),E=!!O,A=O?+O[1]:0,T=!k&&!!y&&/Apple Computer/.test(y.vendor),D=T&&(/Mobile\/\w+/.test(b)||!!y&&y.maxTouchPoints>2),_=D||!!y&&/Mac/.test(y.platform),R=!!y&&/Win/.test(y.platform),N=/Android \d/.test(b),P=!!v&&"webkitFontSmoothing"in v.documentElement.style,I=P?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function L(e){return{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function j(e,t){return"number"==typeof e?e:e[t]}function F(e){let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*n,top:t.top,bottom:t.top+e.clientHeight*r}}function B(e,t,n){let r=e.someProp("scrollThreshold")||0,o=e.someProp("scrollMargin")||5,i=e.dom.ownerDocument;for(let s=n||e.dom;s;s=a(s)){if(1!=s.nodeType)continue;let e=s,n=e==i.body,a=n?L(i):F(e),l=0,c=0;if(t.top<a.top+j(r,"top")?c=-(a.top-t.top+j(o,"top")):t.bottom>a.bottom-j(r,"bottom")&&(c=t.bottom-t.top>a.bottom-a.top?t.top+j(o,"top")-a.top:t.bottom-a.bottom+j(o,"bottom")),t.left<a.left+j(r,"left")?l=-(a.left-t.left+j(o,"left")):t.right>a.right-j(r,"right")&&(l=t.right-a.right+j(o,"right")),l||c)if(n)i.defaultView.scrollBy(l,c);else{let n=e.scrollLeft,r=e.scrollTop;c&&(e.scrollTop+=c),l&&(e.scrollLeft+=l);let o=e.scrollLeft-n,i=e.scrollTop-r;t={left:t.left-o,top:t.top-i,right:t.right-o,bottom:t.bottom-i}}if(n||/^(fixed|sticky)$/.test(getComputedStyle(s).position))break}}function z(e){let t=[],n=e.ownerDocument;for(let r=e;r&&(t.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),e!=n);r=a(r));return t}function $(e,t){for(let n=0;n<e.length;n++){let{dom:r,top:o,left:i}=e[n];r.scrollTop!=o+t&&(r.scrollTop=o+t),r.scrollLeft!=i&&(r.scrollLeft=i)}}let H=null;function W(e,t){let n,r,o,i,s=2e8,a=0,l=t.top,u=t.top;for(let h=e.firstChild,d=0;h;h=h.nextSibling,d++){let e;if(1==h.nodeType)e=h.getClientRects();else{if(3!=h.nodeType)continue;e=c(h).getClientRects()}for(let c=0;c<e.length;c++){let f=e[c];if(f.top<=l&&f.bottom>=u){l=Math.max(f.bottom,l),u=Math.min(f.top,u);let e=f.left>t.left?f.left-t.left:f.right<t.left?t.left-f.right:0;if(e<s){n=h,s=e,r=e&&3==n.nodeType?{left:f.right<t.left?f.right:f.left,top:t.top}:t,1==h.nodeType&&e&&(a=d+(t.left>=(f.left+f.right)/2?1:0));continue}}else f.top>t.top&&!o&&f.left<=t.left&&f.right>=t.left&&(o=h,i={left:Math.max(f.left,Math.min(f.right,t.left)),top:f.top});!n&&(t.left>=f.right&&t.top>=f.top||t.left>=f.left&&t.top>=f.bottom)&&(a=d+1)}}return!n&&o&&(n=o,r=i,s=0),n&&3==n.nodeType?function(e,t){let n=e.nodeValue.length,r=document.createRange();for(let o=0;o<n;o++){r.setEnd(e,o+1),r.setStart(e,o);let n=Y(r,1);if(n.top!=n.bottom&&U(t,n))return{node:e,offset:o+(t.left>=(n.left+n.right)/2?1:0)}}return{node:e,offset:0}}(n,r):!n||s&&1==n.nodeType?{node:e,offset:a}:W(n,r)}function U(e,t){return e.left>=t.left-1&&e.left<=t.right+1&&e.top>=t.top-1&&e.top<=t.bottom+1}function V(e,t,n){let r=e.childNodes.length;if(r&&n.top<n.bottom)for(let o=Math.max(0,Math.min(r-1,Math.floor(r*(t.top-n.top)/(n.bottom-n.top))-2)),i=o;;){let n=e.childNodes[i];if(1==n.nodeType){let e=n.getClientRects();for(let r=0;r<e.length;r++){let o=e[r];if(U(t,o))return V(n,t,o)}}if((i=(i+1)%r)==o)break}return e}function q(e,t){let n,r=e.dom.ownerDocument,o=0,i=function(e,t,n){if(e.caretPositionFromPoint)try{let r=e.caretPositionFromPoint(t,n);if(r)return{node:r.offsetNode,offset:r.offset}}catch(e){}if(e.caretRangeFromPoint){let r=e.caretRangeFromPoint(t,n);if(r)return{node:r.startContainer,offset:r.startOffset}}}(r,t.left,t.top);i&&({node:n,offset:o}=i);let s,l=(e.root.elementFromPoint?e.root:r).elementFromPoint(t.left,t.top);if(!l||!e.dom.contains(1!=l.nodeType?l.parentNode:l)){let n=e.dom.getBoundingClientRect();if(!U(t,n))return null;if(l=V(e.dom,t,n),!l)return null}if(T)for(let e=l;n&&e;e=a(e))e.draggable&&(n=void 0);if(l=function(e,t){let n=e.parentNode;return n&&/^li$/i.test(n.nodeName)&&t.left<e.getBoundingClientRect().left?n:e}(l,t),n){if(M&&1==n.nodeType&&(o=Math.min(o,n.childNodes.length),o<n.childNodes.length)){let e,r=n.childNodes[o];"IMG"==r.nodeName&&(e=r.getBoundingClientRect()).right<=t.left&&e.bottom>t.top&&o++}let r;P&&o&&1==n.nodeType&&1==(r=n.childNodes[o-1]).nodeType&&"false"==r.contentEditable&&r.getBoundingClientRect().top>=t.top&&o--,n==e.dom&&o==n.childNodes.length-1&&1==n.lastChild.nodeType&&t.top>n.lastChild.getBoundingClientRect().bottom?s=e.state.doc.content.size:0!=o&&1==n.nodeType&&"BR"==n.childNodes[o-1].nodeName||(s=function(e,t,n,r){let o=-1;for(let n=t,i=!1;n!=e.dom;){let t=e.docView.nearestDesc(n,!0);if(!t)return null;if(1==t.dom.nodeType&&(t.node.isBlock&&t.parent&&!i||!t.contentDOM)){let e=t.dom.getBoundingClientRect();if(t.node.isBlock&&t.parent&&!i&&(i=!0,e.left>r.left||e.top>r.top?o=t.posBefore:(e.right<r.left||e.bottom<r.top)&&(o=t.posAfter)),!t.contentDOM&&o<0&&!t.node.isText)return(t.node.isBlock?r.top<(e.top+e.bottom)/2:r.left<(e.left+e.right)/2)?t.posBefore:t.posAfter}n=t.dom.parentNode}return o>-1?o:e.docView.posFromDOM(t,n,-1)}(e,n,o,t))}null==s&&(s=function(e,t,n){let{node:r,offset:o}=W(t,n),i=-1;if(1==r.nodeType&&!r.firstChild){let e=r.getBoundingClientRect();i=e.left!=e.right&&n.left>(e.left+e.right)/2?1:-1}return e.docView.posFromDOM(r,o,i)}(e,l,t));let c=e.docView.nearestDesc(l,!0);return{pos:s,inside:c?c.posAtStart-c.border:-1}}function K(e){return e.top<e.bottom||e.left<e.right}function Y(e,t){let n=e.getClientRects();if(n.length){let e=n[t<0?0:n.length-1];if(K(e))return e}return Array.prototype.find.call(n,K)||e.getBoundingClientRect()}const G=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function J(e,t,n){let{node:r,offset:o,atom:i}=e.docView.domFromPos(t,n<0?-1:1),s=P||M;if(3==r.nodeType){if(!s||!G.test(r.nodeValue)&&(n<0?o:o!=r.nodeValue.length)){let e=o,t=o,i=n<0?1:-1;return n<0&&!o?(t++,i=-1):n>=0&&o==r.nodeValue.length?(e--,i=1):n<0?e--:t++,Q(Y(c(r,e,t),i),i<0)}{let e=Y(c(r,o,o),n);if(M&&o&&/\s/.test(r.nodeValue[o-1])&&o<r.nodeValue.length){let t=Y(c(r,o-1,o-1),-1);if(t.top==e.top){let n=Y(c(r,o,o+1),-1);if(n.top!=e.top)return Q(n,n.left<t.left)}}return e}}if(!e.state.doc.resolve(t-(i||0)).parent.inlineContent){if(null==i&&o&&(n<0||o==f(r))){let e=r.childNodes[o-1];if(1==e.nodeType)return Z(e.getBoundingClientRect(),!1)}if(null==i&&o<f(r)){let e=r.childNodes[o];if(1==e.nodeType)return Z(e.getBoundingClientRect(),!0)}return Z(r.getBoundingClientRect(),n>=0)}if(null==i&&o&&(n<0||o==f(r))){let e=r.childNodes[o-1],t=3==e.nodeType?c(e,f(e)-(s?0:1)):1!=e.nodeType||"BR"==e.nodeName&&e.nextSibling?null:e;if(t)return Q(Y(t,1),!1)}if(null==i&&o<f(r)){let e=r.childNodes[o];for(;e.pmViewDesc&&e.pmViewDesc.ignoreForCoords;)e=e.nextSibling;let t=e?3==e.nodeType?c(e,0,s?0:1):1==e.nodeType?e:null:null;if(t)return Q(Y(t,-1),!0)}return Q(Y(3==r.nodeType?c(r):r,-n),n>=0)}function Q(e,t){if(0==e.width)return e;let n=t?e.left:e.right;return{top:e.top,bottom:e.bottom,left:n,right:n}}function Z(e,t){if(0==e.height)return e;let n=t?e.top:e.bottom;return{top:n,bottom:n,left:e.left,right:e.right}}function X(e,t,n){let r=e.state,o=e.root.activeElement;r!=t&&e.updateState(t),o!=e.dom&&e.focus();try{return n()}finally{r!=t&&e.updateState(r),o!=e.dom&&o&&o.focus()}}const ee=/[\u0590-\u08ac]/;let te=null,ne=null,re=!1;class oe{constructor(e,t,n,r){this.parent=e,this.children=t,this.dom=n,this.contentDOM=r,this.dirty=0,n.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,t,n){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let t=0;t<this.children.length;t++)e+=this.children[t].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let t=0,n=this.posAtStart;;t++){let r=this.children[t];if(r==e)return n;n+=r.size}}get posBefore(){return this.parent.posBeforeChild(this)}get posAtStart(){return this.parent?this.parent.posBeforeChild(this)+this.border:0}get posAfter(){return this.posBefore+this.size}get posAtEnd(){return this.posAtStart+this.size-2*this.border}localPosFromDOM(e,t,n){if(this.contentDOM&&this.contentDOM.contains(1==e.nodeType?e:e.parentNode)){if(n<0){let n,r;if(e==this.contentDOM)n=e.childNodes[t-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.previousSibling}for(;n&&(!(r=n.pmViewDesc)||r.parent!=this);)n=n.previousSibling;return n?this.posBeforeChild(r)+r.size:this.posAtStart}{let n,r;if(e==this.contentDOM)n=e.childNodes[t];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;n=e.nextSibling}for(;n&&(!(r=n.pmViewDesc)||r.parent!=this);)n=n.nextSibling;return n?this.posBeforeChild(r):this.posAtEnd}}let r;if(e==this.dom&&this.contentDOM)r=t>s(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))r=2&e.compareDocumentPosition(this.contentDOM);else if(this.dom.firstChild){if(0==t)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!1;break}if(t.previousSibling)break}if(null==r&&t==e.childNodes.length)for(let t=e;;t=t.parentNode){if(t==this.dom){r=!0;break}if(t.nextSibling)break}}return(null==r?n>0:r)?this.posAtEnd:this.posAtStart}nearestDesc(e,t=!1){for(let n=!0,r=e;r;r=r.parentNode){let o,i=this.getDesc(r);if(i&&(!t||i.node)){if(!n||!(o=i.nodeDOM)||(1==o.nodeType?o.contains(1==e.nodeType?e:e.parentNode):o==e))return i;n=!1}}}getDesc(e){let t=e.pmViewDesc;for(let e=t;e;e=e.parent)if(e==this)return t}posFromDOM(e,t,n){for(let r=e;r;r=r.parentNode){let o=this.getDesc(r);if(o)return o.localPosFromDOM(e,t,n)}return-1}descAt(e){for(let t=0,n=0;t<this.children.length;t++){let r=this.children[t],o=n+r.size;if(n==e&&o!=n){for(;!r.border&&r.children.length;)r=r.children[0];return r}if(e<o)return r.descAt(e-n-r.border);n=o}}domFromPos(e,t){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let n=0,r=0;for(let t=0;n<this.children.length;n++){let o=this.children[n],i=t+o.size;if(i>e||o instanceof he){r=e-t;break}t=i}if(r)return this.children[n].domFromPos(r-this.children[n].border,t);for(let e;n&&!(e=this.children[n-1]).size&&e instanceof ie&&e.side>=0;n--);if(t<=0){let e,r=!0;for(;e=n?this.children[n-1]:null,e&&e.dom.parentNode!=this.contentDOM;n--,r=!1);return e&&t&&r&&!e.border&&!e.domAtom?e.domFromPos(e.size,t):{node:this.contentDOM,offset:e?s(e.dom)+1:0}}{let e,r=!0;for(;e=n<this.children.length?this.children[n]:null,e&&e.dom.parentNode!=this.contentDOM;n++,r=!1);return e&&r&&!e.border&&!e.domAtom?e.domFromPos(0,t):{node:this.contentDOM,offset:e?s(e.dom):this.contentDOM.childNodes.length}}}parseRange(e,t,n=0){if(0==this.children.length)return{node:this.contentDOM,from:e,to:t,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let r=-1,o=-1;for(let i=n,a=0;;a++){let n=this.children[a],l=i+n.size;if(-1==r&&e<=l){let o=i+n.border;if(e>=o&&t<=l-n.border&&n.node&&n.contentDOM&&this.contentDOM.contains(n.contentDOM))return n.parseRange(e,t,o);e=i;for(let t=a;t>0;t--){let n=this.children[t-1];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(1)){r=s(n.dom)+1;break}e-=n.size}-1==r&&(r=0)}if(r>-1&&(l>t||a==this.children.length-1)){t=l;for(let e=a+1;e<this.children.length;e++){let n=this.children[e];if(n.size&&n.dom.parentNode==this.contentDOM&&!n.emptyChildAt(-1)){o=s(n.dom);break}t+=n.size}-1==o&&(o=this.contentDOM.childNodes.length);break}i=l}return{node:this.contentDOM,from:e,to:t,fromOffset:r,toOffset:o}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let t=this.children[e<0?0:this.children.length-1];return 0==t.size||t.emptyChildAt(e)}domAfterPos(e){let{node:t,offset:n}=this.domFromPos(e,0);if(1!=t.nodeType||n==t.childNodes.length)throw new RangeError("No node after pos "+e);return t.childNodes[n]}setSelection(e,t,n,r=!1){let o=Math.min(e,t),i=Math.max(e,t);for(let s=0,a=0;s<this.children.length;s++){let l=this.children[s],c=a+l.size;if(o>a&&i<c)return l.setSelection(e-a-l.border,t-a-l.border,n,r);a=c}let a=this.domFromPos(e,e?-1:1),l=t==e?a:this.domFromPos(t,t?-1:1),c=n.getSelection(),h=!1;if((M||T)&&e==t){let{node:e,offset:t}=a;if(3==e.nodeType){if(h=!(!t||"\n"!=e.nodeValue[t-1]),h&&t==e.nodeValue.length)for(let t,n=e;n;n=n.parentNode){if(t=n.nextSibling){"BR"==t.nodeName&&(a=l={node:t.parentNode,offset:s(t)+1});break}let e=n.pmViewDesc;if(e&&e.node&&e.node.isBlock)break}}else{let n=e.childNodes[t-1];h=n&&("BR"==n.nodeName||"false"==n.contentEditable)}}if(M&&c.focusNode&&c.focusNode!=l.node&&1==c.focusNode.nodeType){let e=c.focusNode.childNodes[c.focusOffset];e&&"false"==e.contentEditable&&(r=!0)}if(!(r||h&&T)&&u(a.node,a.offset,c.anchorNode,c.anchorOffset)&&u(l.node,l.offset,c.focusNode,c.focusOffset))return;let d=!1;if((c.extend||e==t)&&!h){c.collapse(a.node,a.offset);try{e!=t&&c.extend(l.node,l.offset),d=!0}catch(e){}}if(!d){if(e>t){let e=a;a=l,l=e}let n=document.createRange();n.setEnd(l.node,l.offset),n.setStart(a.node,a.offset),c.removeAllRanges(),c.addRange(n)}}ignoreMutation(e){return!this.contentDOM&&"selection"!=e.type}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,t){for(let n=0,r=0;r<this.children.length;r++){let o=this.children[r],i=n+o.size;if(n==i?e<=i&&t>=n:e<i&&t>n){let r=n+o.border,s=i-o.border;if(e>=r&&t<=s)return this.dirty=e==n||t==i?2:1,void(e!=r||t!=s||!o.contentLost&&o.dom.parentNode==this.contentDOM?o.markDirty(e-r,t-r):o.dirty=3);o.dirty=o.dom!=o.contentDOM||o.dom.parentNode!=this.contentDOM||o.children.length?3:2}n=i}this.dirty=2}markParentsDirty(){let e=1;for(let t=this.parent;t;t=t.parent,e++){let n=1==e?2:1;t.dirty<n&&(t.dirty=n)}}get domAtom(){return!1}get ignoreForCoords(){return!1}}class ie extends oe{constructor(e,t,n,r){let o,i=t.type.toDOM;if("function"==typeof i&&(i=i(n,(()=>o?o.parent?o.parent.posBeforeChild(o):void 0:r))),!t.type.spec.raw){if(1!=i.nodeType){let e=document.createElement("span");e.appendChild(i),i=e}i.contentEditable="false",i.classList.add("ProseMirror-widget")}super(e,[],i,null),this.widget=t,this.widget=t,o=this}matchesWidget(e){return 0==this.dirty&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let t=this.widget.spec.stopEvent;return!!t&&t(e)}ignoreMutation(e){return"selection"!=e.type||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class se extends oe{constructor(e,t,n,r){super(e,[],t,null),this.textDOM=n,this.text=r}get size(){return this.text.length}localPosFromDOM(e,t){return e!=this.textDOM?this.posAtStart+(t?this.size:0):this.posAtStart+t}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return"characterData"===e.type&&e.target.nodeValue==e.oldValue}}class ae extends oe{constructor(e,t,n,r){super(e,[],n,r),this.mark=t}static create(e,t,n,r){let i=r.nodeViews[t.type.name],s=i&&i(t,r,n);return s&&s.dom||(s=o.PW.renderSpec(document,t.type.spec.toDOM(t,n))),new ae(e,t,s.dom,s.contentDOM||s.dom)}parseRule(){return 3&this.dirty||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return 3!=this.dirty&&this.mark.eq(e)}markDirty(e,t){if(super.markDirty(e,t),0!=this.dirty){let e=this.parent;for(;!e.node;)e=e.parent;e.dirty<this.dirty&&(e.dirty=this.dirty),this.dirty=0}}slice(e,t,n){let r=ae.create(this.parent,this.mark,!0,n),o=this.children,i=this.size;t<i&&(o=Ce(o,t,i,n)),e>0&&(o=Ce(o,0,e,n));for(let e=0;e<o.length;e++)o[e].parent=r;return r.children=o,r}}class le extends oe{constructor(e,t,n,r,o,i,s,a,l){super(e,[],o,i),this.node=t,this.outerDeco=n,this.innerDeco=r,this.nodeDOM=s}static create(e,t,n,r,i,s){let a,l=i.nodeViews[t.type.name],c=l&&l(t,i,(()=>a?a.parent?a.parent.posBeforeChild(a):void 0:s),n,r),u=c&&c.dom,h=c&&c.contentDOM;if(t.isText)if(u){if(3!=u.nodeType)throw new RangeError("Text must be rendered as a DOM text node")}else u=document.createTextNode(t.text);else u||({dom:u,contentDOM:h}=o.PW.renderSpec(document,t.type.spec.toDOM(t)));h||t.isText||"BR"==u.nodeName||(u.hasAttribute("contenteditable")||(u.contentEditable="false"),t.type.spec.draggable&&(u.draggable=!0));let d=u;return u=be(u,n,t),c?a=new de(e,t,n,r,u,h||null,d,c,i,s+1):t.isText?new ue(e,t,n,r,u,d,i):new le(e,t,n,r,u,h||null,d,i,s+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if("pre"==this.node.type.whitespace&&(e.preserveWhitespace="full"),this.contentDOM)if(this.contentLost){for(let t=this.children.length-1;t>=0;t--){let n=this.children[t];if(this.dom.contains(n.dom.parentNode)){e.contentElement=n.dom.parentNode;break}}e.contentElement||(e.getContent=()=>o.HY.empty)}else e.contentElement=this.contentDOM;else e.getContent=()=>this.node.content;return e}matchesNode(e,t,n){return 0==this.dirty&&e.eq(this.node)&&we(t,this.outerDeco)&&n.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,t){let n=this.node.inlineContent,r=t,i=e.composing?this.localCompositionInfo(e,t):null,s=i&&i.pos>-1?i:null,a=i&&i.pos<0,l=new Se(this,s&&s.node,e);!function(e,t,n,r){let o=t.locals(e),i=0;if(0==o.length){for(let n=0;n<e.childCount;n++){let s=e.child(n);r(s,o,t.forChild(i,s),n),i+=s.nodeSize}return}let s=0,a=[],l=null;for(let c=0;;){let u,h,d,f;for(;s<o.length&&o[s].to==i;){let e=o[s++];e.widget&&(u?(h||(h=[u])).push(e):u=e)}if(u)if(h){h.sort(ke);for(let e=0;e<h.length;e++)n(h[e],c,!!l)}else n(u,c,!!l);if(l)f=-1,d=l,l=null;else{if(!(c<e.childCount))break;f=c,d=e.child(c++)}for(let e=0;e<a.length;e++)a[e].to<=i&&a.splice(e--,1);for(;s<o.length&&o[s].from<=i&&o[s].to>i;)a.push(o[s++]);let p=i+d.nodeSize;if(d.isText){let e=p;s<o.length&&o[s].from<e&&(e=o[s].from);for(let t=0;t<a.length;t++)a[t].to<e&&(e=a[t].to);e<p&&(l=d.cut(e-i),d=d.cut(0,e-i),p=e,f=-1)}r(d,d.isInline&&!d.isLeaf?a.filter((e=>!e.inline)):a.slice(),t.forChild(i,d),f),i=p}}(this.node,this.innerDeco,((t,i,s)=>{t.spec.marks?l.syncToMarks(t.spec.marks,n,e):t.type.side>=0&&!s&&l.syncToMarks(i==this.node.childCount?o.vc.none:this.node.child(i).marks,n,e),l.placeWidget(t,e,r)}),((t,o,s,c)=>{let u;l.syncToMarks(t.marks,n,e),l.findNodeMatch(t,o,s,c)||a&&e.state.selection.from>r&&e.state.selection.to<r+t.nodeSize&&(u=l.findIndexWithChild(i.node))>-1&&l.updateNodeAt(t,o,s,u,e)||l.updateNextNode(t,o,s,e,c,r)||l.addNode(t,o,s,e,r),r+=t.nodeSize})),l.syncToMarks([],n,e),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||2==this.dirty)&&(s&&this.protectLocalComposition(e,s),fe(this.contentDOM,this.children,e),D&&function(e){if("UL"==e.nodeName||"OL"==e.nodeName){let t=e.style.cssText;e.style.cssText=t+"; list-style: square !important",window.getComputedStyle(e).listStyle,e.style.cssText=t}}(this.dom))}localCompositionInfo(e,t){let{from:n,to:o}=e.state.selection;if(!(e.state.selection instanceof r.Bs)||n<t||o>t+this.node.content.size)return null;let i=e.domSelectionRange(),s=function(e,t){for(;;){if(3==e.nodeType)return e;if(1==e.nodeType&&t>0){if(e.childNodes.length>t&&3==e.childNodes[t].nodeType)return e.childNodes[t];t=f(e=e.childNodes[t-1])}else{if(!(1==e.nodeType&&t<e.childNodes.length))return null;e=e.childNodes[t],t=0}}}(i.focusNode,i.focusOffset);if(!s||!this.dom.contains(s.parentNode))return null;if(this.node.inlineContent){let e=s.nodeValue,r=function(e,t,n,r){for(let o=0,i=0;o<e.childCount&&i<=r;){let s=e.child(o++),a=i;if(i+=s.nodeSize,!s.isText)continue;let l=s.text;for(;o<e.childCount;){let t=e.child(o++);if(i+=t.nodeSize,!t.isText)break;l+=t.text}if(i>=n){if(i>=r&&l.slice(r-t.length-a,r-a)==t)return r-t.length;let e=a<r?l.lastIndexOf(t,r-a-1):-1;if(e>=0&&e+t.length+a>=n)return a+e;if(n==r&&l.length>=r+t.length-a&&l.slice(r-a,r-a+t.length)==t)return r}}return-1}(this.node.content,e,n-t,o-t);return r<0?null:{node:s,pos:r,text:e}}return{node:s,pos:-1,text:""}}protectLocalComposition(e,{node:t,pos:n,text:r}){if(this.getDesc(t))return;let o=t;for(;o.parentNode!=this.contentDOM;o=o.parentNode){for(;o.previousSibling;)o.parentNode.removeChild(o.previousSibling);for(;o.nextSibling;)o.parentNode.removeChild(o.nextSibling);o.pmViewDesc&&(o.pmViewDesc=void 0)}let i=new se(this,o,t,r);e.input.compositionNodes.push(i),this.children=Ce(this.children,n,n+r.length,e,i)}update(e,t,n,r){return!(3==this.dirty||!e.sameMarkup(this.node)||(this.updateInner(e,t,n,r),0))}updateInner(e,t,n,r){this.updateOuterDeco(t),this.node=e,this.innerDeco=n,this.contentDOM&&this.updateChildren(r,this.posAtStart),this.dirty=0}updateOuterDeco(e){if(we(e,this.outerDeco))return;let t=1!=this.nodeDOM.nodeType,n=this.dom;this.dom=ye(this.dom,this.nodeDOM,ge(this.outerDeco,this.node,t),ge(e,this.node,t)),this.dom!=n&&(n.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.add("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||(this.dom.draggable=!0)}deselectNode(){1==this.nodeDOM.nodeType&&this.nodeDOM.classList.remove("ProseMirror-selectednode"),!this.contentDOM&&this.node.type.spec.draggable||this.dom.removeAttribute("draggable")}get domAtom(){return this.node.isAtom}}function ce(e,t,n,r,o){be(r,t,e);let i=new le(void 0,e,t,n,r,r,r,o,0);return i.contentDOM&&i.updateChildren(o,0),i}class ue extends le{constructor(e,t,n,r,o,i,s){super(e,t,n,r,o,null,i,s,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,t,n,r){return!(3==this.dirty||0!=this.dirty&&!this.inParent()||!e.sameMarkup(this.node)||(this.updateOuterDeco(t),0==this.dirty&&e.text==this.node.text||e.text==this.nodeDOM.nodeValue||(this.nodeDOM.nodeValue=e.text,r.trackWrites==this.nodeDOM&&(r.trackWrites=null)),this.node=e,this.dirty=0,0))}inParent(){let e=this.parent.contentDOM;for(let t=this.nodeDOM;t;t=t.parentNode)if(t==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,t,n){return e==this.nodeDOM?this.posAtStart+Math.min(t,this.node.text.length):super.localPosFromDOM(e,t,n)}ignoreMutation(e){return"characterData"!=e.type&&"selection"!=e.type}slice(e,t,n){let r=this.node.cut(e,t),o=document.createTextNode(r.text);return new ue(this.parent,r,this.outerDeco,this.innerDeco,o,o,n)}markDirty(e,t){super.markDirty(e,t),this.dom==this.nodeDOM||0!=e&&t!=this.nodeDOM.nodeValue.length||(this.dirty=3)}get domAtom(){return!1}}class he extends oe{parseRule(){return{ignore:!0}}matchesHack(e){return 0==this.dirty&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return"IMG"==this.dom.nodeName}}class de extends le{constructor(e,t,n,r,o,i,s,a,l,c){super(e,t,n,r,o,i,s,l,c),this.spec=a}update(e,t,n,r){if(3==this.dirty)return!1;if(this.spec.update){let o=this.spec.update(e,t,n);return o&&this.updateInner(e,t,n,r),o}return!(!this.contentDOM&&!e.isLeaf)&&super.update(e,t,n,r)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,t,n,r){this.spec.setSelection?this.spec.setSelection(e,t,n):super.setSelection(e,t,n,r)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return!!this.spec.stopEvent&&this.spec.stopEvent(e)}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function fe(e,t,n){let r=e.firstChild,o=!1;for(let i=0;i<t.length;i++){let s=t[i],a=s.dom;if(a.parentNode==e){for(;a!=r;)r=xe(r),o=!0;r=r.nextSibling}else o=!0,e.insertBefore(a,r);if(s instanceof ae){let t=r?r.previousSibling:e.lastChild;fe(s.contentDOM,s.children,n),r=t?t.nextSibling:e.firstChild}}for(;r;)r=xe(r),o=!0;o&&n.trackWrites==e&&(n.trackWrites=null)}const pe=function(e){e&&(this.nodeName=e)};pe.prototype=Object.create(null);const me=[new pe];function ge(e,t,n){if(0==e.length)return me;let r=n?me[0]:new pe,o=[r];for(let i=0;i<e.length;i++){let s=e[i].type.attrs;if(s){s.nodeName&&o.push(r=new pe(s.nodeName));for(let e in s){let i=s[e];null!=i&&(n&&1==o.length&&o.push(r=new pe(t.isInline?"span":"div")),"class"==e?r.class=(r.class?r.class+" ":"")+i:"style"==e?r.style=(r.style?r.style+";":"")+i:"nodeName"!=e&&(r[e]=i))}}}return o}function ye(e,t,n,r){if(n==me&&r==me)return t;let o=t;for(let t=0;t<r.length;t++){let i=r[t],s=n[t];if(t){let t;s&&s.nodeName==i.nodeName&&o!=e&&(t=o.parentNode)&&t.nodeName.toLowerCase()==i.nodeName||(t=document.createElement(i.nodeName),t.pmIsDeco=!0,t.appendChild(o),s=me[0]),o=t}ve(o,s||me[0],i)}return o}function ve(e,t,n){for(let r in t)"class"==r||"style"==r||"nodeName"==r||r in n||e.removeAttribute(r);for(let r in n)"class"!=r&&"style"!=r&&"nodeName"!=r&&n[r]!=t[r]&&e.setAttribute(r,n[r]);if(t.class!=n.class){let r=t.class?t.class.split(" ").filter(Boolean):[],o=n.class?n.class.split(" ").filter(Boolean):[];for(let t=0;t<r.length;t++)-1==o.indexOf(r[t])&&e.classList.remove(r[t]);for(let t=0;t<o.length;t++)-1==r.indexOf(o[t])&&e.classList.add(o[t]);0==e.classList.length&&e.removeAttribute("class")}if(t.style!=n.style){if(t.style){let n,r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g;for(;n=r.exec(t.style);)e.style.removeProperty(n[1])}n.style&&(e.style.cssText+=n.style)}}function be(e,t,n){return ye(e,e,me,ge(t,n,1!=e.nodeType))}function we(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].type.eq(t[n].type))return!1;return!0}function xe(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}class Se{constructor(e,t,n){this.lock=t,this.view=n,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=function(e,t){let n=t,r=n.children.length,o=e.childCount,i=new Map,s=[];e:for(;o>0;){let a;for(;;)if(r){let e=n.children[r-1];if(!(e instanceof ae)){a=e,r--;break}n=e,r=e.children.length}else{if(n==t)break e;r=n.parent.children.indexOf(n),n=n.parent}let l=a.node;if(l){if(l!=e.child(o-1))break;--o,i.set(a,o),s.push(a)}}return{index:o,matched:i,matches:s.reverse()}}(e.node.content,e)}destroyBetween(e,t){if(e!=t){for(let n=e;n<t;n++)this.top.children[n].destroy();this.top.children.splice(e,t-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,t,n){let r=0,o=this.stack.length>>1,i=Math.min(o,e.length);for(;r<i&&(r==o-1?this.top:this.stack[r+1<<1]).matchesMark(e[r])&&!1!==e[r].type.spec.spanning;)r++;for(;r<o;)this.destroyRest(),this.top.dirty=0,this.index=this.stack.pop(),this.top=this.stack.pop(),o--;for(;o<e.length;){this.stack.push(this.top,this.index+1);let r=-1;for(let t=this.index;t<Math.min(this.index+3,this.top.children.length);t++){let n=this.top.children[t];if(n.matchesMark(e[o])&&!this.isLocked(n.dom)){r=t;break}}if(r>-1)r>this.index&&(this.changed=!0,this.destroyBetween(this.index,r)),this.top=this.top.children[this.index];else{let r=ae.create(this.top,e[o],t,n);this.top.children.splice(this.index,0,r),this.top=r,this.changed=!0}this.index=0,o++}}findNodeMatch(e,t,n,r){let o,i=-1;if(r>=this.preMatch.index&&(o=this.preMatch.matches[r-this.preMatch.index]).parent==this.top&&o.matchesNode(e,t,n))i=this.top.children.indexOf(o,this.index);else for(let r=this.index,o=Math.min(this.top.children.length,r+5);r<o;r++){let o=this.top.children[r];if(o.matchesNode(e,t,n)&&!this.preMatch.matched.has(o)){i=r;break}}return!(i<0||(this.destroyBetween(this.index,i),this.index++,0))}updateNodeAt(e,t,n,r,o){let i=this.top.children[r];return 3==i.dirty&&i.dom==i.contentDOM&&(i.dirty=2),!!i.update(e,t,n,o)&&(this.destroyBetween(this.index,r),this.index++,!0)}findIndexWithChild(e){for(;;){let t=e.parentNode;if(!t)return-1;if(t==this.top.contentDOM){let t=e.pmViewDesc;if(t)for(let e=this.index;e<this.top.children.length;e++)if(this.top.children[e]==t)return e;return-1}e=t}}updateNextNode(e,t,n,r,o,i){for(let s=this.index;s<this.top.children.length;s++){let a=this.top.children[s];if(a instanceof le){let l=this.preMatch.matched.get(a);if(null!=l&&l!=o)return!1;let c,u=a.dom,h=this.isLocked(u)&&!(e.isText&&a.node&&a.node.isText&&a.nodeDOM.nodeValue==e.text&&3!=a.dirty&&we(t,a.outerDeco));if(!h&&a.update(e,t,n,r))return this.destroyBetween(this.index,s),a.dom!=u&&(this.changed=!0),this.index++,!0;if(!h&&(c=this.recreateWrapper(a,e,t,n,r,i)))return this.top.children[this.index]=c,c.contentDOM&&(c.dirty=2,c.updateChildren(r,i+1),c.dirty=0),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,t,n,r,o,i){if(e.dirty||t.isAtom||!e.children.length||!e.node.content.eq(t.content))return null;let s=le.create(this.top,t,n,r,o,i);if(s.contentDOM){s.children=e.children,e.children=[];for(let e of s.children)e.parent=s}return e.destroy(),s}addNode(e,t,n,r,o){let i=le.create(this.top,e,t,n,r,o);i.contentDOM&&i.updateChildren(r,o+1),this.top.children.splice(this.index++,0,i),this.changed=!0}placeWidget(e,t,n){let r=this.index<this.top.children.length?this.top.children[this.index]:null;if(!r||!r.matchesWidget(e)||e!=r.widget&&r.widget.type.toDOM.parentNode){let r=new ie(this.top,e,t,n);this.top.children.splice(this.index++,0,r),this.changed=!0}else this.index++}addTextblockHacks(){let e=this.top.children[this.index-1],t=this.top;for(;e instanceof ae;)t=e,e=t.children[t.children.length-1];(!e||!(e instanceof ue)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((T||E)&&e&&"false"==e.dom.contentEditable&&this.addHackNode("IMG",t),this.addHackNode("BR",this.top))}addHackNode(e,t){if(t==this.top&&this.index<t.children.length&&t.children[this.index].matchesHack(e))this.index++;else{let n=document.createElement(e);"IMG"==e&&(n.className="ProseMirror-separator",n.alt=""),"BR"==e&&(n.className="ProseMirror-trailingBreak");let r=new he(this.top,[],n,null);t!=this.top?t.children.push(r):t.children.splice(this.index++,0,r),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||1==e.nodeType&&e.contains(this.lock.parentNode))}}function ke(e,t){return e.type.side-t.type.side}function Ce(e,t,n,r,o){let i=[];for(let s=0,a=0;s<e.length;s++){let l=e[s],c=a,u=a+=l.size;c>=n||u<=t?i.push(l):(c<t&&i.push(l.slice(0,t-c,r)),o&&(i.push(o),o=void 0),u>n&&i.push(l.slice(n-c,l.size,r)))}return i}function Me(e,t=null){let n=e.domSelectionRange(),o=e.state.doc;if(!n.focusNode)return null;let i=e.docView.nearestDesc(n.focusNode),a=i&&0==i.size,l=e.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(l<0)return null;let c,u,h=o.resolve(l);if(m(n)){for(c=h;i&&!i.node;)i=i.parent;let e=i.node;if(i&&e.isAtom&&r.qv.isSelectable(e)&&i.parent&&(!e.isInline||!function(e,t,n){for(let r=0==t,o=t==f(e);r||o;){if(e==n)return!0;let t=s(e);if(!(e=e.parentNode))return!1;r=r&&0==t,o=o&&t==f(e)}}(n.focusNode,n.focusOffset,i.dom))){let e=i.posBefore;u=new r.qv(l==e?h:o.resolve(e))}}else{let t=e.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(t<0)return null;c=o.resolve(t)}return u||(u=Pe(e,c,h,"pointer"==t||e.state.selection.head<h.pos&&!a?1:-1)),u}function Oe(e){return e.editable?e.hasFocus():Le(e)&&document.activeElement&&document.activeElement.contains(e.dom)}function Ee(e,t=!1){let n=e.state.selection;if(Re(e,n),Oe(e)){if(!t&&e.input.mouseDown&&e.input.mouseDown.allowDefault&&E){let t=e.domSelectionRange(),n=e.domObserver.currentSelection;if(t.anchorNode&&n.anchorNode&&u(t.anchorNode,t.anchorOffset,n.anchorNode,n.anchorOffset))return e.input.mouseDown.delayedSelectionSync=!0,void e.domObserver.setCurSelection()}if(e.domObserver.disconnectSelection(),e.cursorWrapper)!function(e){let t=e.domSelection(),n=document.createRange(),r=e.cursorWrapper.dom,o="IMG"==r.nodeName;o?n.setEnd(r.parentNode,s(r)+1):n.setEnd(r,0),n.collapse(!1),t.removeAllRanges(),t.addRange(n),!o&&!e.state.selection.visible&&k&&C<=11&&(r.disabled=!0,r.disabled=!1)}(e);else{let o,i,{anchor:s,head:a}=n;!Ae||n instanceof r.Bs||(n.$from.parent.inlineContent||(o=Te(e,n.from)),n.empty||n.$from.parent.inlineContent||(i=Te(e,n.to))),e.docView.setSelection(s,a,e.root,t),Ae&&(o&&_e(o),i&&_e(i)),n.visible?e.dom.classList.remove("ProseMirror-hideselection"):(e.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&function(e){let t=e.dom.ownerDocument;t.removeEventListener("selectionchange",e.input.hideSelectionGuard);let n=e.domSelectionRange(),r=n.anchorNode,o=n.anchorOffset;t.addEventListener("selectionchange",e.input.hideSelectionGuard=()=>{n.anchorNode==r&&n.anchorOffset==o||(t.removeEventListener("selectionchange",e.input.hideSelectionGuard),setTimeout((()=>{Oe(e)&&!e.state.selection.visible||e.dom.classList.remove("ProseMirror-hideselection")}),20))})}(e))}e.domObserver.setCurSelection(),e.domObserver.connectSelection()}}const Ae=T||E&&A<63;function Te(e,t){let{node:n,offset:r}=e.docView.domFromPos(t,0),o=r<n.childNodes.length?n.childNodes[r]:null,i=r?n.childNodes[r-1]:null;if(T&&o&&"false"==o.contentEditable)return De(o);if(!(o&&"false"!=o.contentEditable||i&&"false"!=i.contentEditable)){if(o)return De(o);if(i)return De(i)}}function De(e){return e.contentEditable="true",T&&e.draggable&&(e.draggable=!1,e.wasDraggable=!0),e}function _e(e){e.contentEditable="false",e.wasDraggable&&(e.draggable=!0,e.wasDraggable=null)}function Re(e,t){if(t instanceof r.qv){let n=e.docView.descAt(t.from);n!=e.lastSelectedViewDesc&&(Ne(e),n&&n.selectNode(),e.lastSelectedViewDesc=n)}else Ne(e)}function Ne(e){e.lastSelectedViewDesc&&(e.lastSelectedViewDesc.parent&&e.lastSelectedViewDesc.deselectNode(),e.lastSelectedViewDesc=void 0)}function Pe(e,t,n,o){return e.someProp("createSelectionBetween",(r=>r(e,t,n)))||r.Bs.between(t,n,o)}function Ie(e){return!(e.editable&&!e.hasFocus())&&Le(e)}function Le(e){let t=e.domSelectionRange();if(!t.anchorNode)return!1;try{return e.dom.contains(3==t.anchorNode.nodeType?t.anchorNode.parentNode:t.anchorNode)&&(e.editable||e.dom.contains(3==t.focusNode.nodeType?t.focusNode.parentNode:t.focusNode))}catch(e){return!1}}function je(e,t){let{$anchor:n,$head:o}=e.selection,i=t>0?n.max(o):n.min(o),s=i.parent.inlineContent?i.depth?e.doc.resolve(t>0?i.after():i.before()):null:i;return s&&r.Y1.findFrom(s,t)}function Fe(e,t){return e.dispatch(e.state.tr.setSelection(t).scrollIntoView()),!0}function Be(e,t,n){let o=e.state.selection;if(!(o instanceof r.Bs)){if(o instanceof r.qv&&o.node.isInline)return Fe(e,new r.Bs(t>0?o.$to:o.$from));{let n=je(e.state,t);return!!n&&Fe(e,n)}}if(n.indexOf("s")>-1){let{$head:n}=o,i=n.textOffset?null:t<0?n.nodeBefore:n.nodeAfter;if(!i||i.isText||!i.isLeaf)return!1;let s=e.state.doc.resolve(n.pos+i.nodeSize*(t<0?-1:1));return Fe(e,new r.Bs(o.$anchor,s))}if(!o.empty)return!1;if(e.endOfTextblock(t>0?"forward":"backward")){let n=je(e.state,t);return!!(n&&n instanceof r.qv)&&Fe(e,n)}if(!(_&&n.indexOf("m")>-1)){let n,i=o.$head,s=i.textOffset?null:t<0?i.nodeBefore:i.nodeAfter;if(!s||s.isText)return!1;let a=t<0?i.pos-s.nodeSize:i.pos;return!!(s.isAtom||(n=e.docView.descAt(a))&&!n.contentDOM)&&(r.qv.isSelectable(s)?Fe(e,new r.qv(t<0?e.state.doc.resolve(i.pos-s.nodeSize):i)):!!P&&Fe(e,new r.Bs(e.state.doc.resolve(t<0?a:a+s.nodeSize))))}}function ze(e){return 3==e.nodeType?e.nodeValue.length:e.childNodes.length}function $e(e,t){let n=e.pmViewDesc;return n&&0==n.size&&(t<0||e.nextSibling||"BR"!=e.nodeName)}function He(e,t){return t<0?function(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let o,i,a=!1;for(M&&1==n.nodeType&&r<ze(n)&&$e(n.childNodes[r],-1)&&(a=!0);;)if(r>0){if(1!=n.nodeType)break;{let e=n.childNodes[r-1];if($e(e,-1))o=n,i=--r;else{if(3!=e.nodeType)break;n=e,r=n.nodeValue.length}}}else{if(We(n))break;{let t=n.previousSibling;for(;t&&$e(t,-1);)o=n.parentNode,i=s(t),t=t.previousSibling;if(t)n=t,r=ze(n);else{if(n=n.parentNode,n==e.dom)break;r=0}}}a?Ue(e,n,r):o&&Ue(e,o,i)}(e):function(e){let t=e.domSelectionRange(),n=t.focusNode,r=t.focusOffset;if(!n)return;let o,i,a=ze(n);for(;;)if(r<a){if(1!=n.nodeType)break;if(!$e(n.childNodes[r],1))break;o=n,i=++r}else{if(We(n))break;{let t=n.nextSibling;for(;t&&$e(t,1);)o=t.parentNode,i=s(t)+1,t=t.nextSibling;if(t)n=t,r=0,a=ze(n);else{if(n=n.parentNode,n==e.dom)break;r=a=0}}}o&&Ue(e,o,i)}(e)}function We(e){let t=e.pmViewDesc;return t&&t.node&&t.node.isBlock}function Ue(e,t,n){if(3!=t.nodeType){let e,r;(r=function(e,t){for(;e&&t==e.childNodes.length&&!p(e);)t=s(e)+1,e=e.parentNode;for(;e&&t<e.childNodes.length;){let n=e.childNodes[t];if(3==n.nodeType)return n;if(1==n.nodeType&&"false"==n.contentEditable)break;e=n,t=0}}(t,n))?(t=r,n=0):(e=function(e,t){for(;e&&!t&&!p(e);)t=s(e),e=e.parentNode;for(;e&&t;){let n=e.childNodes[t-1];if(3==n.nodeType)return n;if(1==n.nodeType&&"false"==n.contentEditable)break;t=(e=n).childNodes.length}}(t,n))&&(t=e,n=e.nodeValue.length)}let r=e.domSelection();if(m(r)){let e=document.createRange();e.setEnd(t,n),e.setStart(t,n),r.removeAllRanges(),r.addRange(e)}else r.extend&&r.extend(t,n);e.domObserver.setCurSelection();let{state:o}=e;setTimeout((()=>{e.state==o&&Ee(e)}),50)}function Ve(e,t){let n=e.state.doc.resolve(t);if(!E&&!R&&n.parent.inlineContent){let r=e.coordsAtPos(t);if(t>n.start()){let n=e.coordsAtPos(t-1),o=(n.top+n.bottom)/2;if(o>r.top&&o<r.bottom&&Math.abs(n.left-r.left)>1)return n.left<r.left?"ltr":"rtl"}if(t<n.end()){let n=e.coordsAtPos(t+1),o=(n.top+n.bottom)/2;if(o>r.top&&o<r.bottom&&Math.abs(n.left-r.left)>1)return n.left>r.left?"ltr":"rtl"}}return"rtl"==getComputedStyle(e.dom).direction?"rtl":"ltr"}function qe(e,t,n){let o=e.state.selection;if(o instanceof r.Bs&&!o.empty||n.indexOf("s")>-1)return!1;if(_&&n.indexOf("m")>-1)return!1;let{$from:i,$to:s}=o;if(!i.parent.inlineContent||e.endOfTextblock(t<0?"up":"down")){let n=je(e.state,t);if(n&&n instanceof r.qv)return Fe(e,n)}if(!i.parent.inlineContent){let n=t<0?i:s,a=o instanceof r.C1?r.Y1.near(n,t):r.Y1.findFrom(n,t);return!!a&&Fe(e,a)}return!1}function Ke(e,t){if(!(e.state.selection instanceof r.Bs))return!0;let{$head:n,$anchor:o,empty:i}=e.state.selection;if(!n.sameParent(o))return!0;if(!i)return!1;if(e.endOfTextblock(t>0?"forward":"backward"))return!0;let s=!n.textOffset&&(t<0?n.nodeBefore:n.nodeAfter);if(s&&!s.isText){let r=e.state.tr;return t<0?r.delete(n.pos-s.nodeSize,n.pos):r.delete(n.pos,n.pos+s.nodeSize),e.dispatch(r),!0}return!1}function Ye(e,t,n){e.domObserver.stop(),t.contentEditable=n,e.domObserver.start()}function Ge(e,t){e.someProp("transformCopied",(n=>{t=n(t,e)}));let n=[],{content:r,openStart:i,openEnd:s}=t;for(;i>1&&s>1&&1==r.childCount&&1==r.firstChild.childCount;){i--,s--;let e=r.firstChild;n.push(e.type.name,e.attrs!=e.type.defaultAttrs?e.attrs:null),r=e.content}let a=e.someProp("clipboardSerializer")||o.PW.fromSchema(e.state.schema),l=it(),c=l.createElement("div");c.appendChild(a.serializeFragment(r,{document:l}));let u,h=c.firstChild,d=0;for(;h&&1==h.nodeType&&(u=rt[h.nodeName.toLowerCase()]);){for(let e=u.length-1;e>=0;e--){let t=l.createElement(u[e]);for(;c.firstChild;)t.appendChild(c.firstChild);c.appendChild(t),d++}h=c.firstChild}return h&&1==h.nodeType&&h.setAttribute("data-pm-slice",`${i} ${s}${d?` -${d}`:""} ${JSON.stringify(n)}`),{dom:c,text:e.someProp("clipboardTextSerializer",(n=>n(t,e)))||t.content.textBetween(0,t.content.size,"\n\n")}}function Je(e,t,n,r,i){let s,a,l=i.parent.type.spec.code;if(!n&&!t)return null;let c=t&&(r||l||!n);if(c){if(e.someProp("transformPastedText",(n=>{t=n(t,l||r,e)})),l)return t?new o.p2(o.HY.from(e.state.schema.text(t.replace(/\r\n?/g,"\n"))),0,0):o.p2.empty;let n=e.someProp("clipboardTextParser",(n=>n(t,i,r,e)));if(n)a=n;else{let n=i.marks(),{schema:r}=e.state,a=o.PW.fromSchema(r);s=document.createElement("div"),t.split(/(?:\r\n?|\n)+/).forEach((e=>{let t=s.appendChild(document.createElement("p"));e&&t.appendChild(a.serializeNode(r.text(e,n)))}))}}else e.someProp("transformPastedHTML",(t=>{n=t(n,e)})),s=function(e){let t=/^(\s*<meta [^>]*>)*/.exec(e);t&&(e=e.slice(t[0].length));let n,r=it().createElement("div"),o=/<([a-z][^>\s]+)/i.exec(e);if((n=o&&rt[o[1].toLowerCase()])&&(e=n.map((e=>"<"+e+">")).join("")+e+n.map((e=>"</"+e+">")).reverse().join("")),r.innerHTML=e,n)for(let e=0;e<n.length;e++)r=r.querySelector(n[e])||r;return r}(n),P&&function(e){let t=e.querySelectorAll(E?"span:not([class]):not([style])":"span.Apple-converted-space");for(let n=0;n<t.length;n++){let r=t[n];1==r.childNodes.length&&" "==r.textContent&&r.parentNode&&r.parentNode.replaceChild(e.ownerDocument.createTextNode(" "),r)}}(s);let u=s&&s.querySelector("[data-pm-slice]"),h=u&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(u.getAttribute("data-pm-slice")||"");if(h&&h[3])for(let e=+h[3];e>0;e--){let e=s.firstChild;for(;e&&1!=e.nodeType;)e=e.nextSibling;if(!e)break;s=e}if(!a){let t=e.someProp("clipboardParser")||e.someProp("domParser")||o.aw.fromSchema(e.state.schema);a=t.parseSlice(s,{preserveWhitespace:!(!c&&!h),context:i,ruleFromNode:e=>"BR"!=e.nodeName||e.nextSibling||!e.parentNode||Qe.test(e.parentNode.nodeName)?null:{ignore:!0}})}if(h)a=function(e,t){if(!e.size)return e;let n,r=e.content.firstChild.type.schema;try{n=JSON.parse(t)}catch(t){return e}let{content:i,openStart:s,openEnd:a}=e;for(let e=n.length-2;e>=0;e-=2){let t=r.nodes[n[e]];if(!t||t.hasRequiredAttrs())break;i=o.HY.from(t.create(n[e+1],i)),s++,a++}return new o.p2(i,s,a)}(nt(a,+h[1],+h[2]),h[4]);else if(a=o.p2.maxOpen(function(e,t){if(e.childCount<2)return e;for(let n=t.depth;n>=0;n--){let r,i=t.node(n).contentMatchAt(t.index(n)),s=[];if(e.forEach((e=>{if(!s)return;let t,n=i.findWrapping(e.type);if(!n)return s=null;if(t=s.length&&r.length&&Xe(n,r,e,s[s.length-1],0))s[s.length-1]=t;else{s.length&&(s[s.length-1]=et(s[s.length-1],r.length));let t=Ze(e,n);s.push(t),i=i.matchType(t.type),r=n}})),s)return o.HY.from(s)}return e}(a.content,i),!0),a.openStart||a.openEnd){let e=0,t=0;for(let t=a.content.firstChild;e<a.openStart&&!t.type.spec.isolating;e++,t=t.firstChild);for(let e=a.content.lastChild;t<a.openEnd&&!e.type.spec.isolating;t++,e=e.lastChild);a=nt(a,e,t)}return e.someProp("transformPasted",(t=>{a=t(a,e)})),a}const Qe=/^(a|abbr|acronym|b|cite|code|del|em|i|ins|kbd|label|output|q|ruby|s|samp|span|strong|sub|sup|time|u|tt|var)$/i;function Ze(e,t,n=0){for(let r=t.length-1;r>=n;r--)e=t[r].create(null,o.HY.from(e));return e}function Xe(e,t,n,r,i){if(i<e.length&&i<t.length&&e[i]==t[i]){let s=Xe(e,t,n,r.lastChild,i+1);if(s)return r.copy(r.content.replaceChild(r.childCount-1,s));if(r.contentMatchAt(r.childCount).matchType(i==e.length-1?n.type:e[i+1]))return r.copy(r.content.append(o.HY.from(Ze(n,e,i+1))))}}function et(e,t){if(0==t)return e;let n=e.content.replaceChild(e.childCount-1,et(e.lastChild,t-1)),r=e.contentMatchAt(e.childCount).fillBefore(o.HY.empty,!0);return e.copy(n.append(r))}function tt(e,t,n,r,i,s){let a=t<0?e.firstChild:e.lastChild,l=a.content;return e.childCount>1&&(s=0),i<r-1&&(l=tt(l,t,n,r,i+1,s)),i>=n&&(l=t<0?a.contentMatchAt(0).fillBefore(l,s<=i).append(l):l.append(a.contentMatchAt(a.childCount).fillBefore(o.HY.empty,!0))),e.replaceChild(t<0?0:e.childCount-1,a.copy(l))}function nt(e,t,n){return t<e.openStart&&(e=new o.p2(tt(e.content,-1,t,e.openStart,0,e.openEnd),t,e.openEnd)),n<e.openEnd&&(e=new o.p2(tt(e.content,1,n,e.openEnd,0,0),e.openStart,n)),e}const rt={thead:["table"],tbody:["table"],tfoot:["table"],caption:["table"],colgroup:["table"],col:["table","colgroup"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","tbody","tr"]};let ot=null;function it(){return ot||(ot=document.implementation.createHTMLDocument("title"))}const st={},at={},lt={touchstart:!0,touchmove:!0};class ct{constructor(){this.shiftKey=!1,this.mouseDown=null,this.lastKeyCode=null,this.lastKeyCodeTime=0,this.lastClick={time:0,x:0,y:0,type:""},this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastIOSEnter=0,this.lastIOSEnterFallbackTimeout=-1,this.lastFocus=0,this.lastTouch=0,this.lastAndroidDelete=0,this.composing=!1,this.composingTimeout=-1,this.compositionNodes=[],this.compositionEndedAt=-2e8,this.compositionID=1,this.compositionPendingChanges=0,this.domChangeCount=0,this.eventHandlers=Object.create(null),this.hideSelectionGuard=null}}function ut(e,t){e.input.lastSelectionOrigin=t,e.input.lastSelectionTime=Date.now()}function ht(e){e.someProp("handleDOMEvents",(t=>{for(let n in t)e.input.eventHandlers[n]||e.dom.addEventListener(n,e.input.eventHandlers[n]=t=>dt(e,t))}))}function dt(e,t){return e.someProp("handleDOMEvents",(n=>{let r=n[t.type];return!!r&&(r(e,t)||t.defaultPrevented)}))}function ft(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n=t.target;n!=e.dom;n=n.parentNode)if(!n||11==n.nodeType||n.pmViewDesc&&n.pmViewDesc.stopEvent(t))return!1;return!0}function pt(e){return{left:e.clientX,top:e.clientY}}function mt(e,t,n,r,o){if(-1==r)return!1;let i=e.state.doc.resolve(r);for(let r=i.depth+1;r>0;r--)if(e.someProp(t,(t=>r>i.depth?t(e,n,i.nodeAfter,i.before(r),o,!0):t(e,n,i.node(r),i.before(r),o,!1))))return!0;return!1}function gt(e,t,n){e.focused||e.focus();let r=e.state.tr.setSelection(t);"pointer"==n&&r.setMeta("pointer",!0),e.dispatch(r)}function yt(e,t,n,r){return mt(e,"handleDoubleClickOn",t,n,r)||e.someProp("handleDoubleClick",(n=>n(e,t,r)))}function vt(e,t,n,o){return mt(e,"handleTripleClickOn",t,n,o)||e.someProp("handleTripleClick",(n=>n(e,t,o)))||function(e,t,n){if(0!=n.button)return!1;let o=e.state.doc;if(-1==t)return!!o.inlineContent&&(gt(e,r.Bs.create(o,0,o.content.size),"pointer"),!0);let i=o.resolve(t);for(let t=i.depth+1;t>0;t--){let n=t>i.depth?i.nodeAfter:i.node(t),s=i.before(t);if(n.inlineContent)gt(e,r.Bs.create(o,s+1,s+1+n.content.size),"pointer");else{if(!r.qv.isSelectable(n))continue;gt(e,r.qv.create(o,s),"pointer")}return!0}}(e,n,o)}function bt(e){return Ot(e)}at.keydown=(e,t)=>{let n=t;if(e.input.shiftKey=16==n.keyCode||n.shiftKey,!St(e,n)&&(e.input.lastKeyCode=n.keyCode,e.input.lastKeyCodeTime=Date.now(),!N||!E||13!=n.keyCode))if(229!=n.keyCode&&e.domObserver.forceFlush(),!D||13!=n.keyCode||n.ctrlKey||n.altKey||n.metaKey)e.someProp("handleKeyDown",(t=>t(e,n)))||function(e,t){let n=t.keyCode,r=function(e){let t="";return e.ctrlKey&&(t+="c"),e.metaKey&&(t+="m"),e.altKey&&(t+="a"),e.shiftKey&&(t+="s"),t}(t);if(8==n||_&&72==n&&"c"==r)return Ke(e,-1)||He(e,-1);if(46==n&&!t.shiftKey||_&&68==n&&"c"==r)return Ke(e,1)||He(e,1);if(13==n||27==n)return!0;if(37==n||_&&66==n&&"c"==r){let t=37==n?"ltr"==Ve(e,e.state.selection.from)?-1:1:-1;return Be(e,t,r)||He(e,t)}if(39==n||_&&70==n&&"c"==r){let t=39==n?"ltr"==Ve(e,e.state.selection.from)?1:-1:1;return Be(e,t,r)||He(e,t)}return 38==n||_&&80==n&&"c"==r?qe(e,-1,r)||He(e,-1):40==n||_&&78==n&&"c"==r?function(e){if(!T||e.state.selection.$head.parentOffset>0)return!1;let{focusNode:t,focusOffset:n}=e.domSelectionRange();if(t&&1==t.nodeType&&0==n&&t.firstChild&&"false"==t.firstChild.contentEditable){let n=t.firstChild;Ye(e,n,"true"),setTimeout((()=>Ye(e,n,"false")),20)}return!1}(e)||qe(e,1,r)||He(e,1):r==(_?"m":"c")&&(66==n||73==n||89==n||90==n)}(e,n)?n.preventDefault():ut(e,"key");else{let t=Date.now();e.input.lastIOSEnter=t,e.input.lastIOSEnterFallbackTimeout=setTimeout((()=>{e.input.lastIOSEnter==t&&(e.someProp("handleKeyDown",(t=>t(e,g(13,"Enter")))),e.input.lastIOSEnter=0)}),200)}},at.keyup=(e,t)=>{16==t.keyCode&&(e.input.shiftKey=!1)},at.keypress=(e,t)=>{let n=t;if(St(e,n)||!n.charCode||n.ctrlKey&&!n.altKey||_&&n.metaKey)return;if(e.someProp("handleKeyPress",(t=>t(e,n))))return void n.preventDefault();let o=e.state.selection;if(!(o instanceof r.Bs&&o.$from.sameParent(o.$to))){let t=String.fromCharCode(n.charCode);/[\r\n]/.test(t)||e.someProp("handleTextInput",(n=>n(e,o.$from.pos,o.$to.pos,t)))||e.dispatch(e.state.tr.insertText(t).scrollIntoView()),n.preventDefault()}};const wt=_?"metaKey":"ctrlKey";st.mousedown=(e,t)=>{let n=t;e.input.shiftKey=n.shiftKey;let r=bt(e),o=Date.now(),i="singleClick";o-e.input.lastClick.time<500&&function(e,t){let n=t.x-e.clientX,r=t.y-e.clientY;return n*n+r*r<100}(n,e.input.lastClick)&&!n[wt]&&("singleClick"==e.input.lastClick.type?i="doubleClick":"doubleClick"==e.input.lastClick.type&&(i="tripleClick")),e.input.lastClick={time:o,x:n.clientX,y:n.clientY,type:i};let s=e.posAtCoords(pt(n));s&&("singleClick"==i?(e.input.mouseDown&&e.input.mouseDown.done(),e.input.mouseDown=new xt(e,s,n,!!r)):("doubleClick"==i?yt:vt)(e,s.pos,s.inside,n)?n.preventDefault():ut(e,"pointer"))};class xt{constructor(e,t,n,o){let i,s;if(this.view=e,this.pos=t,this.event=n,this.flushed=o,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!n[wt],this.allowDefault=n.shiftKey,t.inside>-1)i=e.state.doc.nodeAt(t.inside),s=t.inside;else{let n=e.state.doc.resolve(t.pos);i=n.parent,s=n.depth?n.before():0}const a=o?null:n.target,l=a?e.docView.nearestDesc(a,!0):null;this.target=l?l.dom:null;let{selection:c}=e.state;(0==n.button&&i.type.spec.draggable&&!1!==i.type.spec.selectable||c instanceof r.qv&&c.from<=s&&c.to>s)&&(this.mightDrag={node:i,pos:s,addAttr:!(!this.target||this.target.draggable),setUneditable:!(!this.target||!M||this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout((()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")}),20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),ut(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout((()=>Ee(this.view))),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let t=this.pos;this.view.state.doc!=this.startDoc&&(t=this.view.posAtCoords(pt(e))),this.updateAllowDefault(e),this.allowDefault||!t?ut(this.view,"pointer"):function(e,t,n,o,i){return mt(e,"handleClickOn",t,n,o)||e.someProp("handleClick",(n=>n(e,t,o)))||(i?function(e,t){if(-1==t)return!1;let n,o,i=e.state.selection;i instanceof r.qv&&(n=i.node);let s=e.state.doc.resolve(t);for(let e=s.depth+1;e>0;e--){let t=e>s.depth?s.nodeAfter:s.node(e);if(r.qv.isSelectable(t)){o=n&&i.$from.depth>0&&e>=i.$from.depth&&s.before(i.$from.depth+1)==i.$from.pos?s.before(i.$from.depth):s.before(e);break}}return null!=o&&(gt(e,r.qv.create(e.state.doc,o),"pointer"),!0)}(e,n):function(e,t){if(-1==t)return!1;let n=e.state.doc.resolve(t),o=n.nodeAfter;return!!(o&&o.isAtom&&r.qv.isSelectable(o))&&(gt(e,new r.qv(n),"pointer"),!0)}(e,n))}(this.view,t.pos,t.inside,e,this.selectNode)?e.preventDefault():0==e.button&&(this.flushed||T&&this.mightDrag&&!this.mightDrag.node.isAtom||E&&!this.view.state.selection.visible&&Math.min(Math.abs(t.pos-this.view.state.selection.from),Math.abs(t.pos-this.view.state.selection.to))<=2)?(gt(this.view,r.Y1.near(this.view.state.doc.resolve(t.pos)),"pointer"),e.preventDefault()):ut(this.view,"pointer")}move(e){this.updateAllowDefault(e),ut(this.view,"pointer"),0==e.buttons&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}function St(e,t){return!!e.composing||!!(T&&Math.abs(t.timeStamp-e.input.compositionEndedAt)<500)&&(e.input.compositionEndedAt=-2e8,!0)}st.touchstart=e=>{e.input.lastTouch=Date.now(),bt(e),ut(e,"pointer")},st.touchmove=e=>{e.input.lastTouch=Date.now(),ut(e,"pointer")},st.contextmenu=e=>bt(e);const kt=N?5e3:-1;function Ct(e,t){clearTimeout(e.input.composingTimeout),t>-1&&(e.input.composingTimeout=setTimeout((()=>Ot(e)),t))}function Mt(e){for(e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=function(){let e=document.createEvent("Event");return e.initEvent("event",!0,!0),e.timeStamp}());e.input.compositionNodes.length>0;)e.input.compositionNodes.pop().markParentsDirty()}function Ot(e,t=!1){if(!(N&&e.domObserver.flushingSoon>=0)){if(e.domObserver.forceFlush(),Mt(e),t||e.docView&&e.docView.dirty){let t=Me(e);return t&&!t.eq(e.state.selection)?e.dispatch(e.state.tr.setSelection(t)):e.updateState(e.state),!0}return!1}}at.compositionstart=at.compositionupdate=e=>{if(!e.composing){e.domObserver.flush();let{state:t}=e,n=t.selection.$from;if(t.selection.empty&&(t.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some((e=>!1===e.type.spec.inclusive))))e.markCursor=e.state.storedMarks||n.marks(),Ot(e,!0),e.markCursor=null;else if(Ot(e),M&&t.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let t=e.domSelectionRange();for(let n=t.focusNode,r=t.focusOffset;n&&1==n.nodeType&&0!=r;){let t=r<0?n.lastChild:n.childNodes[r-1];if(!t)break;if(3==t.nodeType){e.domSelection().collapse(t,t.nodeValue.length);break}n=t,r=-1}}e.input.composing=!0}Ct(e,kt)},at.compositionend=(e,t)=>{e.composing&&(e.input.composing=!1,e.input.compositionEndedAt=t.timeStamp,e.input.compositionPendingChanges=e.domObserver.pendingRecords().length?e.input.compositionID:0,e.input.compositionPendingChanges&&Promise.resolve().then((()=>e.domObserver.flush())),e.input.compositionID++,Ct(e,20))};const Et=k&&C<15||D&&I<604;function At(e,t,n,r,i){let s=Je(e,t,n,r,e.state.selection.$from);if(e.someProp("handlePaste",(t=>t(e,i,s||o.p2.empty))))return!0;if(!s)return!1;let a=function(e){return 0==e.openStart&&0==e.openEnd&&1==e.content.childCount?e.content.firstChild:null}(s),l=a?e.state.tr.replaceSelectionWith(a,r):e.state.tr.replaceSelection(s);return e.dispatch(l.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Tt(e){let t=e.getData("text/html")||e.getData("Text");if(t)return t;let n=e.getData("text/uri-list");return n?n.replace(/\r?\n/g," "):""}st.copy=at.cut=(e,t)=>{let n=t,r=e.state.selection,o="cut"==n.type;if(r.empty)return;let i=Et?null:n.clipboardData,s=r.content(),{dom:a,text:l}=Ge(e,s);i?(n.preventDefault(),i.clearData(),i.setData("text/html",a.innerHTML),i.setData("text/plain",l)):function(e,t){if(!e.dom.parentNode)return;let n=e.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(t),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),o=document.createRange();o.selectNodeContents(t),e.dom.blur(),r.removeAllRanges(),r.addRange(o),setTimeout((()=>{n.parentNode&&n.parentNode.removeChild(n),e.focus()}),50)}(e,a),o&&e.dispatch(e.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))},at.paste=(e,t)=>{let n=t;if(e.composing&&!N)return;let r=Et?null:n.clipboardData,o=e.input.shiftKey&&45!=e.input.lastKeyCode;r&&At(e,Tt(r),r.getData("text/html"),o,n)?n.preventDefault():function(e,t){if(!e.dom.parentNode)return;let n=e.input.shiftKey||e.state.selection.$from.parent.type.spec.code,r=e.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let o=e.input.shiftKey&&45!=e.input.lastKeyCode;setTimeout((()=>{e.focus(),r.parentNode&&r.parentNode.removeChild(r),n?At(e,r.value,null,o,t):At(e,r.textContent,r.innerHTML,o,t)}),50)}(e,n)};class Dt{constructor(e,t){this.slice=e,this.move=t}}const _t=_?"altKey":"ctrlKey";st.dragstart=(e,t)=>{let n=t,o=e.input.mouseDown;if(o&&o.done(),!n.dataTransfer)return;let i=e.state.selection,s=i.empty?null:e.posAtCoords(pt(n));if(s&&s.pos>=i.from&&s.pos<=(i instanceof r.qv?i.to-1:i.to));else if(o&&o.mightDrag)e.dispatch(e.state.tr.setSelection(r.qv.create(e.state.doc,o.mightDrag.pos)));else if(n.target&&1==n.target.nodeType){let t=e.docView.nearestDesc(n.target,!0);t&&t.node.type.spec.draggable&&t!=e.docView&&e.dispatch(e.state.tr.setSelection(r.qv.create(e.state.doc,t.posBefore)))}let a=e.state.selection.content(),{dom:l,text:c}=Ge(e,a);n.dataTransfer.clearData(),n.dataTransfer.setData(Et?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",Et||n.dataTransfer.setData("text/plain",c),e.dragging=new Dt(a,!n[_t])},st.dragend=e=>{let t=e.dragging;window.setTimeout((()=>{e.dragging==t&&(e.dragging=null)}),50)},at.dragover=at.dragenter=(e,t)=>t.preventDefault(),at.drop=(e,t)=>{let n=t,s=e.dragging;if(e.dragging=null,!n.dataTransfer)return;let a=e.posAtCoords(pt(n));if(!a)return;let l=e.state.doc.resolve(a.pos),c=s&&s.slice;c?e.someProp("transformPasted",(t=>{c=t(c,e)})):c=Je(e,Tt(n.dataTransfer),Et?null:n.dataTransfer.getData("text/html"),!1,l);let u=!(!s||n[_t]);if(e.someProp("handleDrop",(t=>t(e,n,c||o.p2.empty,u))))return void n.preventDefault();if(!c)return;n.preventDefault();let h=c?(0,i.nj)(e.state.doc,l.pos,c):l.pos;null==h&&(h=l.pos);let d=e.state.tr;u&&d.deleteSelection();let f=d.mapping.map(h),p=0==c.openStart&&0==c.openEnd&&1==c.content.childCount,m=d.doc;if(p?d.replaceRangeWith(f,f,c.content.firstChild):d.replaceRange(f,f,c),d.doc.eq(m))return;let g=d.doc.resolve(f);if(p&&r.qv.isSelectable(c.content.firstChild)&&g.nodeAfter&&g.nodeAfter.sameMarkup(c.content.firstChild))d.setSelection(new r.qv(g));else{let t=d.mapping.map(h);d.mapping.maps[d.mapping.maps.length-1].forEach(((e,n,r,o)=>t=o)),d.setSelection(Pe(e,g,d.doc.resolve(t)))}e.focus(),e.dispatch(d.setMeta("uiEvent","drop"))},st.focus=e=>{e.input.lastFocus=Date.now(),e.focused||(e.domObserver.stop(),e.dom.classList.add("ProseMirror-focused"),e.domObserver.start(),e.focused=!0,setTimeout((()=>{e.docView&&e.hasFocus()&&!e.domObserver.currentSelection.eq(e.domSelectionRange())&&Ee(e)}),20))},st.blur=(e,t)=>{let n=t;e.focused&&(e.domObserver.stop(),e.dom.classList.remove("ProseMirror-focused"),e.domObserver.start(),n.relatedTarget&&e.dom.contains(n.relatedTarget)&&e.domObserver.currentSelection.clear(),e.focused=!1)},st.beforeinput=(e,t)=>{if(E&&N&&"deleteContentBackward"==t.inputType){e.domObserver.flushSoon();let{domChangeCount:t}=e.input;setTimeout((()=>{if(e.input.domChangeCount!=t)return;if(e.dom.blur(),e.focus(),e.someProp("handleKeyDown",(t=>t(e,g(8,"Backspace")))))return;let{$cursor:n}=e.state.selection;n&&n.pos>0&&e.dispatch(e.state.tr.delete(n.pos-1,n.pos).scrollIntoView())}),50)}};for(let e in at)st[e]=at[e];function Rt(e,t){if(e==t)return!0;for(let n in e)if(e[n]!==t[n])return!1;for(let n in t)if(!(n in e))return!1;return!0}class Nt{constructor(e,t){this.toDOM=e,this.spec=t||Ft,this.side=this.spec.side||0}map(e,t,n,r){let{pos:o,deleted:i}=e.mapResult(t.from+r,this.side<0?-1:1);return i?null:new Lt(o-n,o-n,this)}valid(){return!0}eq(e){return this==e||e instanceof Nt&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&Rt(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class Pt{constructor(e,t){this.attrs=e,this.spec=t||Ft}map(e,t,n,r){let o=e.map(t.from+r,this.spec.inclusiveStart?-1:1)-n,i=e.map(t.to+r,this.spec.inclusiveEnd?1:-1)-n;return o>=i?null:new Lt(o,i,this)}valid(e,t){return t.from<t.to}eq(e){return this==e||e instanceof Pt&&Rt(this.attrs,e.attrs)&&Rt(this.spec,e.spec)}static is(e){return e.type instanceof Pt}destroy(){}}class It{constructor(e,t){this.attrs=e,this.spec=t||Ft}map(e,t,n,r){let o=e.mapResult(t.from+r,1);if(o.deleted)return null;let i=e.mapResult(t.to+r,-1);return i.deleted||i.pos<=o.pos?null:new Lt(o.pos-n,i.pos-n,this)}valid(e,t){let n,{index:r,offset:o}=e.content.findIndex(t.from);return o==t.from&&!(n=e.child(r)).isText&&o+n.nodeSize==t.to}eq(e){return this==e||e instanceof It&&Rt(this.attrs,e.attrs)&&Rt(this.spec,e.spec)}destroy(){}}class Lt{constructor(e,t,n){this.from=e,this.to=t,this.type=n}copy(e,t){return new Lt(e,t,this.type)}eq(e,t=0){return this.type.eq(e.type)&&this.from+t==e.from&&this.to+t==e.to}map(e,t,n){return this.type.map(e,this,t,n)}static widget(e,t,n){return new Lt(e,e,new Nt(t,n))}static inline(e,t,n,r){return new Lt(e,t,new Pt(n,r))}static node(e,t,n,r){return new Lt(e,t,new It(n,r))}get spec(){return this.type.spec}get inline(){return this.type instanceof Pt}get widget(){return this.type instanceof Nt}}const jt=[],Ft={};class Bt{constructor(e,t){this.local=e.length?e:jt,this.children=t.length?t:jt}static create(e,t){return t.length?Vt(t,e,0,Ft):zt}find(e,t,n){let r=[];return this.findInner(null==e?0:e,null==t?1e9:t,r,0,n),r}findInner(e,t,n,r,o){for(let i=0;i<this.local.length;i++){let s=this.local[i];s.from<=t&&s.to>=e&&(!o||o(s.spec))&&n.push(s.copy(s.from+r,s.to+r))}for(let i=0;i<this.children.length;i+=3)if(this.children[i]<t&&this.children[i+1]>e){let s=this.children[i]+1;this.children[i+2].findInner(e-s,t-s,n,r+s,o)}}map(e,t,n){return this==zt||0==e.maps.length?this:this.mapInner(e,t,0,0,n||Ft)}mapInner(e,t,n,r,o){let i;for(let s=0;s<this.local.length;s++){let a=this.local[s].map(e,n,r);a&&a.type.valid(t,a)?(i||(i=[])).push(a):o.onRemove&&o.onRemove(this.local[s].spec)}return this.children.length?function(e,t,n,r,o,i,s){let a=e.slice();for(let e=0,t=i;e<n.maps.length;e++){let r=0;n.maps[e].forEach(((e,n,i,s)=>{let l=s-i-(n-e);for(let s=0;s<a.length;s+=3){let c=a[s+1];if(c<0||e>c+t-r)continue;let u=a[s]+t-r;n>=u?a[s+1]=e<=u?-2:-1:i>=o&&l&&(a[s]+=l,a[s+1]+=l)}r+=l})),t=n.maps[e].map(t,-1)}let l=!1;for(let t=0;t<a.length;t+=3)if(a[t+1]<0){if(-2==a[t+1]){l=!0,a[t+1]=-1;continue}let c=n.map(e[t]+i),u=c-o;if(u<0||u>=r.content.size){l=!0;continue}let h=n.map(e[t+1]+i,-1)-o,{index:d,offset:f}=r.content.findIndex(u),p=r.maybeChild(d);if(p&&f==u&&f+p.nodeSize==h){let r=a[t+2].mapInner(n,p,c+1,e[t]+i+1,s);r!=zt?(a[t]=u,a[t+1]=h,a[t+2]=r):(a[t+1]=-2,l=!0)}else l=!0}if(l){let l=function(e,t,n,r,o,i,s){function a(e,t){for(let i=0;i<e.local.length;i++){let a=e.local[i].map(r,o,t);a?n.push(a):s.onRemove&&s.onRemove(e.local[i].spec)}for(let n=0;n<e.children.length;n+=3)a(e.children[n+2],e.children[n]+t+1)}for(let n=0;n<e.length;n+=3)-1==e[n+1]&&a(e[n+2],t[n]+i+1);return n}(a,e,t,n,o,i,s),c=Vt(l,r,0,s);t=c.local;for(let e=0;e<a.length;e+=3)a[e+1]<0&&(a.splice(e,3),e-=3);for(let e=0,t=0;e<c.children.length;e+=3){let n=c.children[e];for(;t<a.length&&a[t]<n;)t+=3;a.splice(t,0,c.children[e],c.children[e+1],c.children[e+2])}}return new Bt(t.sort(qt),a)}(this.children,i||[],e,t,n,r,o):i?new Bt(i.sort(qt),jt):zt}add(e,t){return t.length?this==zt?Bt.create(e,t):this.addInner(e,t,0):this}addInner(e,t,n){let r,o=0;e.forEach(((e,i)=>{let s,a=i+n;if(s=Wt(t,e,a)){for(r||(r=this.children.slice());o<r.length&&r[o]<i;)o+=3;r[o]==i?r[o+2]=r[o+2].addInner(e,s,a+1):r.splice(o,0,i,i+e.nodeSize,Vt(s,e,a+1,Ft)),o+=3}}));let i=Ht(o?Ut(t):t,-n);for(let t=0;t<i.length;t++)i[t].type.valid(e,i[t])||i.splice(t--,1);return new Bt(i.length?this.local.concat(i).sort(qt):this.local,r||this.children)}remove(e){return 0==e.length||this==zt?this:this.removeInner(e,0)}removeInner(e,t){let n=this.children,r=this.local;for(let r=0;r<n.length;r+=3){let o,i=n[r]+t,s=n[r+1]+t;for(let t,n=0;n<e.length;n++)(t=e[n])&&t.from>i&&t.to<s&&(e[n]=null,(o||(o=[])).push(t));if(!o)continue;n==this.children&&(n=this.children.slice());let a=n[r+2].removeInner(o,i+1);a!=zt?n[r+2]=a:(n.splice(r,3),r-=3)}if(r.length)for(let n,o=0;o<e.length;o++)if(n=e[o])for(let e=0;e<r.length;e++)r[e].eq(n,t)&&(r==this.local&&(r=this.local.slice()),r.splice(e--,1));return n==this.children&&r==this.local?this:r.length||n.length?new Bt(r,n):zt}forChild(e,t){if(this==zt)return this;if(t.isLeaf)return Bt.empty;let n,r;for(let t=0;t<this.children.length;t+=3)if(this.children[t]>=e){this.children[t]==e&&(n=this.children[t+2]);break}let o=e+1,i=o+t.content.size;for(let e=0;e<this.local.length;e++){let t=this.local[e];if(t.from<i&&t.to>o&&t.type instanceof Pt){let e=Math.max(o,t.from)-o,n=Math.min(i,t.to)-o;e<n&&(r||(r=[])).push(t.copy(e,n))}}if(r){let e=new Bt(r.sort(qt),jt);return n?new $t([e,n]):e}return n||zt}eq(e){if(this==e)return!0;if(!(e instanceof Bt)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let t=0;t<this.local.length;t++)if(!this.local[t].eq(e.local[t]))return!1;for(let t=0;t<this.children.length;t+=3)if(this.children[t]!=e.children[t]||this.children[t+1]!=e.children[t+1]||!this.children[t+2].eq(e.children[t+2]))return!1;return!0}locals(e){return Kt(this.localsInner(e))}localsInner(e){if(this==zt)return jt;if(e.inlineContent||!this.local.some(Pt.is))return this.local;let t=[];for(let e=0;e<this.local.length;e++)this.local[e].type instanceof Pt||t.push(this.local[e]);return t}}Bt.empty=new Bt([],[]),Bt.removeOverlap=Kt;const zt=Bt.empty;class $t{constructor(e){this.members=e}map(e,t){const n=this.members.map((n=>n.map(e,t,Ft)));return $t.from(n)}forChild(e,t){if(t.isLeaf)return Bt.empty;let n=[];for(let r=0;r<this.members.length;r++){let o=this.members[r].forChild(e,t);o!=zt&&(o instanceof $t?n=n.concat(o.members):n.push(o))}return $t.from(n)}eq(e){if(!(e instanceof $t)||e.members.length!=this.members.length)return!1;for(let t=0;t<this.members.length;t++)if(!this.members[t].eq(e.members[t]))return!1;return!0}locals(e){let t,n=!0;for(let r=0;r<this.members.length;r++){let o=this.members[r].localsInner(e);if(o.length)if(t){n&&(t=t.slice(),n=!1);for(let e=0;e<o.length;e++)t.push(o[e])}else t=o}return t?Kt(n?t:t.sort(qt)):jt}static from(e){switch(e.length){case 0:return zt;case 1:return e[0];default:return new $t(e.every((e=>e instanceof Bt))?e:e.reduce(((e,t)=>e.concat(t instanceof Bt?t:t.members)),[]))}}}function Ht(e,t){if(!t||!e.length)return e;let n=[];for(let r=0;r<e.length;r++){let o=e[r];n.push(new Lt(o.from+t,o.to+t,o.type))}return n}function Wt(e,t,n){if(t.isLeaf)return null;let r=n+t.nodeSize,o=null;for(let t,i=0;i<e.length;i++)(t=e[i])&&t.from>n&&t.to<r&&((o||(o=[])).push(t),e[i]=null);return o}function Ut(e){let t=[];for(let n=0;n<e.length;n++)null!=e[n]&&t.push(e[n]);return t}function Vt(e,t,n,r){let o=[],i=!1;t.forEach(((t,s)=>{let a=Wt(e,t,s+n);if(a){i=!0;let e=Vt(a,t,n+s+1,r);e!=zt&&o.push(s,s+t.nodeSize,e)}}));let s=Ht(i?Ut(e):e,-n).sort(qt);for(let e=0;e<s.length;e++)s[e].type.valid(t,s[e])||(r.onRemove&&r.onRemove(s[e].spec),s.splice(e--,1));return s.length||o.length?new Bt(s,o):zt}function qt(e,t){return e.from-t.from||e.to-t.to}function Kt(e){let t=e;for(let n=0;n<t.length-1;n++){let r=t[n];if(r.from!=r.to)for(let o=n+1;o<t.length;o++){let i=t[o];if(i.from!=r.from){i.from<r.to&&(t==e&&(t=e.slice()),t[n]=r.copy(r.from,i.from),Yt(t,o,r.copy(i.from,r.to)));break}i.to!=r.to&&(t==e&&(t=e.slice()),t[o]=i.copy(i.from,r.to),Yt(t,o+1,i.copy(r.to,i.to)))}}return t}function Yt(e,t,n){for(;t<e.length&&qt(n,e[t])>0;)t++;e.splice(t,0,n)}function Gt(e){let t=[];return e.someProp("decorations",(n=>{let r=n(e.state);r&&r!=zt&&t.push(r)})),e.cursorWrapper&&t.push(Bt.create(e.state.doc,[e.cursorWrapper.deco])),$t.from(t)}const Jt={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},Qt=k&&C<=11;class Zt{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class Xt{constructor(e,t){this.view=e,this.handleDOMChange=t,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new Zt,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.observer=window.MutationObserver&&new window.MutationObserver((e=>{for(let t=0;t<e.length;t++)this.queue.push(e[t]);k&&C<=11&&e.some((e=>"childList"==e.type&&e.removedNodes.length||"characterData"==e.type&&e.oldValue.length>e.target.nodeValue.length))?this.flushSoon():this.flush()})),Qt&&(this.onCharData=e=>{this.queue.push({target:e.target,type:"characterData",oldValue:e.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout((()=>{this.flushingSoon=-1,this.flush()}),20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,Jt)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let t=0;t<e.length;t++)this.queue.push(e[t]);window.setTimeout((()=>this.flush()),20)}this.observer.disconnect()}this.onCharData&&this.view.dom.removeEventListener("DOMCharacterDataModified",this.onCharData),this.disconnectSelection()}connectSelection(){this.view.dom.ownerDocument.addEventListener("selectionchange",this.onSelectionChange)}disconnectSelection(){this.view.dom.ownerDocument.removeEventListener("selectionchange",this.onSelectionChange)}suppressSelectionUpdates(){this.suppressingSelectionUpdates=!0,setTimeout((()=>this.suppressingSelectionUpdates=!1),50)}onSelectionChange(){if(Ie(this.view)){if(this.suppressingSelectionUpdates)return Ee(this.view);if(k&&C<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&u(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let t,n=new Set;for(let t=e.focusNode;t;t=a(t))n.add(t);for(let r=e.anchorNode;r;r=a(r))if(n.has(r)){t=r;break}let r=t&&this.view.docView.nearestDesc(t);return r&&r.ignoreMutation({type:"selection",target:3==t.nodeType?t.parentNode:t})?(this.setCurSelection(),!0):void 0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let t=this.pendingRecords();t.length&&(this.queue=[]);let n=e.domSelectionRange(),o=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(n)&&Ie(e)&&!this.ignoreSelectionChange(n),i=-1,s=-1,a=!1,l=[];if(e.editable)for(let e=0;e<t.length;e++){let n=this.registerMutation(t[e],l);n&&(i=i<0?n.from:Math.min(n.from,i),s=s<0?n.to:Math.max(n.to,s),n.typeOver&&(a=!0))}if(M&&l.length>1){let e=l.filter((e=>"BR"==e.nodeName));if(2==e.length){let t=e[0],n=e[1];t.parentNode&&t.parentNode.parentNode==n.parentNode?n.remove():t.remove()}}let c=null;i<0&&o&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&m(n)&&(c=Me(e))&&c.eq(r.Y1.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,Ee(e),this.currentSelection.set(n),e.scrollToSelection()):(i>-1||o)&&(i>-1&&(e.docView.markDirty(i,s),function(e){if(!en.has(e)&&(en.set(e,null),-1!==["normal","nowrap","pre-line"].indexOf(getComputedStyle(e.dom).whiteSpace))){if(e.requiresGeckoHackNode=M,tn)return;console.warn("ProseMirror expects the CSS white-space property to be set, preferably to 'pre-wrap'. It is recommended to load style/prosemirror.css from the prosemirror-view package."),tn=!0}}(e)),this.handleDOMChange(i,s,a,l),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(n)||Ee(e),this.currentSelection.set(n))}registerMutation(e,t){if(t.indexOf(e.target)>-1)return null;let n=this.view.docView.nearestDesc(e.target);if("attributes"==e.type&&(n==this.view.docView||"contenteditable"==e.attributeName||"style"==e.attributeName&&!e.oldValue&&!e.target.getAttribute("style")))return null;if(!n||n.ignoreMutation(e))return null;if("childList"==e.type){for(let n=0;n<e.addedNodes.length;n++)t.push(e.addedNodes[n]);if(n.contentDOM&&n.contentDOM!=n.dom&&!n.contentDOM.contains(e.target))return{from:n.posBefore,to:n.posAfter};let r=e.previousSibling,o=e.nextSibling;if(k&&C<=11&&e.addedNodes.length)for(let t=0;t<e.addedNodes.length;t++){let{previousSibling:n,nextSibling:i}=e.addedNodes[t];(!n||Array.prototype.indexOf.call(e.addedNodes,n)<0)&&(r=n),(!i||Array.prototype.indexOf.call(e.addedNodes,i)<0)&&(o=i)}let i=r&&r.parentNode==e.target?s(r)+1:0,a=n.localPosFromDOM(e.target,i,-1),l=o&&o.parentNode==e.target?s(o):e.target.childNodes.length;return{from:a,to:n.localPosFromDOM(e.target,l,1)}}return"attributes"==e.type?{from:n.posAtStart-n.border,to:n.posAtEnd+n.border}:{from:n.posAtStart,to:n.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}}}let en=new WeakMap,tn=!1;function nn(e){let t=e.pmViewDesc;if(t)return t.parseRule();if("BR"==e.nodeName&&e.parentNode){if(T&&/^(ul|ol)$/i.test(e.parentNode.nodeName)){let e=document.createElement("div");return e.appendChild(document.createElement("li")),{skip:e}}if(e.parentNode.lastChild==e||T&&/^(tr|table)$/i.test(e.parentNode.nodeName))return{ignore:!0}}else if("IMG"==e.nodeName&&e.getAttribute("mark-placeholder"))return{ignore:!0};return null}const rn=/^(a|abbr|acronym|b|bd[io]|big|br|button|cite|code|data(list)?|del|dfn|em|i|ins|kbd|label|map|mark|meter|output|q|ruby|s|samp|small|span|strong|su[bp]|time|u|tt|var)$/i;function on(e,t,n){return Math.max(n.anchor,n.head)>t.content.size?null:Pe(e,t.resolve(n.anchor),t.resolve(n.head))}function sn(e,t,n){let r=e.depth,o=t?e.end():e.pos;for(;r>0&&(t||e.indexAfter(r)==e.node(r).childCount);)r--,o++,t=!1;if(n){let t=e.node(r).maybeChild(e.indexAfter(r));for(;t&&!t.isLeaf;)t=t.firstChild,o++}return o}class an{constructor(e,t){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new ct,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=t,this.state=t.state,this.directPlugins=t.plugins||[],this.directPlugins.forEach(dn),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):"function"==typeof e?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=un(this),cn(this),this.nodeViews=hn(this),this.docView=ce(this.state.doc,ln(this),Gt(this),this.dom,this),this.domObserver=new Xt(this,((e,t,n,i)=>function(e,t,n,i,s){let a=e.input.compositionPendingChanges||(e.composing?e.input.compositionID:0);if(e.input.compositionPendingChanges=0,t<0){let t=e.input.lastSelectionTime>Date.now()-50?e.input.lastSelectionOrigin:null,n=Me(e,t);if(n&&!e.state.selection.eq(n)){if(E&&N&&13===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime&&e.someProp("handleKeyDown",(t=>t(e,g(13,"Enter")))))return;let r=e.state.tr.setSelection(n);"pointer"==t?r.setMeta("pointer",!0):"key"==t&&r.scrollIntoView(),a&&r.setMeta("composition",a),e.dispatch(r)}return}let l=e.state.doc.resolve(t),c=l.sharedDepth(n);t=l.before(c+1),n=e.state.doc.resolve(n).after(c+1);let u,h,d=e.state.selection,f=function(e,t,n){let r,{node:i,fromOffset:s,toOffset:a,from:l,to:c}=e.docView.parseRange(t,n),u=e.domSelectionRange(),h=u.anchorNode;if(h&&e.dom.contains(1==h.nodeType?h:h.parentNode)&&(r=[{node:h,offset:u.anchorOffset}],m(u)||r.push({node:u.focusNode,offset:u.focusOffset})),E&&8===e.input.lastKeyCode)for(let e=a;e>s;e--){let t=i.childNodes[e-1],n=t.pmViewDesc;if("BR"==t.nodeName&&!n){a=e;break}if(!n||n.size)break}let d=e.state.doc,f=e.someProp("domParser")||o.aw.fromSchema(e.state.schema),p=d.resolve(l),g=null,y=f.parse(i,{topNode:p.parent,topMatch:p.parent.contentMatchAt(p.index()),topOpen:!0,from:s,to:a,preserveWhitespace:"pre"!=p.parent.type.whitespace||"full",findPositions:r,ruleFromNode:nn,context:p});if(r&&null!=r[0].pos){let e=r[0].pos,t=r[1]&&r[1].pos;null==t&&(t=e),g={anchor:e+l,head:t+l}}return{doc:y,sel:g,from:l,to:c}}(e,t,n),p=e.state.doc,y=p.slice(f.from,f.to);8===e.input.lastKeyCode&&Date.now()-100<e.input.lastKeyCodeTime?(u=e.state.selection.to,h="end"):(u=e.state.selection.from,h="start"),e.input.lastKeyCode=null;let v=function(e,t,n,r,o){let i=e.findDiffStart(t,n);if(null==i)return null;let{a:s,b:a}=e.findDiffEnd(t,n+e.size,n+t.size);return"end"==o&&(r-=s+Math.max(0,i-Math.min(s,a))-i),s<i&&e.size<t.size?(i-=r<=i&&r>=s?i-r:0,a=i+(a-s),s=i):a<i&&(i-=r<=i&&r>=a?i-r:0,s=i+(s-a),a=i),{start:i,endA:s,endB:a}}(y.content,f.doc.content,f.from,u,h);if((D&&e.input.lastIOSEnter>Date.now()-225||N)&&s.some((e=>1==e.nodeType&&!rn.test(e.nodeName)))&&(!v||v.endA>=v.endB)&&e.someProp("handleKeyDown",(t=>t(e,g(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(!v){if(!(i&&d instanceof r.Bs&&!d.empty&&d.$head.sameParent(d.$anchor))||e.composing||f.sel&&f.sel.anchor!=f.sel.head){if(f.sel){let t=on(e,e.state.doc,f.sel);if(t&&!t.eq(e.state.selection)){let n=e.state.tr.setSelection(t);a&&n.setMeta("composition",a),e.dispatch(n)}}return}v={start:d.from,endA:d.to,endB:d.to}}if(E&&e.cursorWrapper&&f.sel&&f.sel.anchor==e.cursorWrapper.deco.from&&f.sel.head==f.sel.anchor){let e=v.endB-v.start;f.sel={anchor:f.sel.anchor+e,head:f.sel.anchor+e}}e.input.domChangeCount++,e.state.selection.from<e.state.selection.to&&v.start==v.endB&&e.state.selection instanceof r.Bs&&(v.start>e.state.selection.from&&v.start<=e.state.selection.from+2&&e.state.selection.from>=f.from?v.start=e.state.selection.from:v.endA<e.state.selection.to&&v.endA>=e.state.selection.to-2&&e.state.selection.to<=f.to&&(v.endB+=e.state.selection.to-v.endA,v.endA=e.state.selection.to)),k&&C<=11&&v.endB==v.start+1&&v.endA==v.start&&v.start>f.from&&" "==f.doc.textBetween(v.start-f.from-1,v.start-f.from+1)&&(v.start--,v.endA--,v.endB--);let b,w=f.doc.resolveNoCache(v.start-f.from),x=f.doc.resolveNoCache(v.endB-f.from),S=p.resolve(v.start),M=w.sameParent(x)&&w.parent.inlineContent&&S.end()>=v.endA;if((D&&e.input.lastIOSEnter>Date.now()-225&&(!M||s.some((e=>"DIV"==e.nodeName||"P"==e.nodeName)))||!M&&w.pos<f.doc.content.size&&!w.sameParent(x)&&(b=r.Y1.findFrom(f.doc.resolve(w.pos+1),1,!0))&&b.head==x.pos)&&e.someProp("handleKeyDown",(t=>t(e,g(13,"Enter")))))return void(e.input.lastIOSEnter=0);if(e.state.selection.anchor>v.start&&function(e,t,n,r,o){if(!r.parent.isTextblock||n-t<=o.pos-r.pos||sn(r,!0,!1)<o.pos)return!1;let i=e.resolve(t);if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;let s=e.resolve(sn(i,!0,!0));return!(!s.parent.isTextblock||s.pos>n||sn(s,!0,!1)<n)&&r.parent.content.cut(r.parentOffset).eq(s.parent.content)}(p,v.start,v.endA,w,x)&&e.someProp("handleKeyDown",(t=>t(e,g(8,"Backspace")))))return void(N&&E&&e.domObserver.suppressSelectionUpdates());E&&N&&v.endB==v.start&&(e.input.lastAndroidDelete=Date.now()),N&&!M&&w.start()!=x.start()&&0==x.parentOffset&&w.depth==x.depth&&f.sel&&f.sel.anchor==f.sel.head&&f.sel.head==v.endA&&(v.endB-=2,x=f.doc.resolveNoCache(v.endB-f.from),setTimeout((()=>{e.someProp("handleKeyDown",(function(t){return t(e,g(13,"Enter"))}))}),20));let O,A,T,_=v.start,R=v.endA;if(M)if(w.pos==x.pos)k&&C<=11&&0==w.parentOffset&&(e.domObserver.suppressSelectionUpdates(),setTimeout((()=>Ee(e)),20)),O=e.state.tr.delete(_,R),A=p.resolve(v.start).marksAcross(p.resolve(v.endA));else if(v.endA==v.endB&&(T=function(e,t){let n,r,i,s=e.firstChild.marks,a=t.firstChild.marks,l=s,c=a;for(let e=0;e<a.length;e++)l=a[e].removeFromSet(l);for(let e=0;e<s.length;e++)c=s[e].removeFromSet(c);if(1==l.length&&0==c.length)r=l[0],n="add",i=e=>e.mark(r.addToSet(e.marks));else{if(0!=l.length||1!=c.length)return null;r=c[0],n="remove",i=e=>e.mark(r.removeFromSet(e.marks))}let u=[];for(let e=0;e<t.childCount;e++)u.push(i(t.child(e)));if(o.HY.from(u).eq(e))return{mark:r,type:n}}(w.parent.content.cut(w.parentOffset,x.parentOffset),S.parent.content.cut(S.parentOffset,v.endA-S.start()))))O=e.state.tr,"add"==T.type?O.addMark(_,R,T.mark):O.removeMark(_,R,T.mark);else if(w.parent.child(w.index()).isText&&w.index()==x.index()-(x.textOffset?0:1)){let t=w.parent.textBetween(w.parentOffset,x.parentOffset);if(e.someProp("handleTextInput",(n=>n(e,_,R,t))))return;O=e.state.tr.insertText(t,_,R)}if(O||(O=e.state.tr.replace(_,R,f.doc.slice(v.start-f.from,v.endB-f.from))),f.sel){let t=on(e,O.doc,f.sel);t&&!(E&&N&&e.composing&&t.empty&&(v.start!=v.endB||e.input.lastAndroidDelete<Date.now()-100)&&(t.head==_||t.head==O.mapping.map(R)-1)||k&&t.empty&&t.head==_)&&O.setSelection(t)}A&&O.ensureMarks(A),a&&O.setMeta("composition",a),e.dispatch(O.scrollIntoView())}(this,e,t,n,i))),this.domObserver.start(),function(e){for(let t in st){let n=st[t];e.dom.addEventListener(t,e.input.eventHandlers[t]=t=>{!ft(e,t)||dt(e,t)||!e.editable&&t.type in at||n(e,t)},lt[t]?{passive:!0}:void 0)}T&&e.dom.addEventListener("input",(()=>null)),ht(e)}(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let t in e)this._props[t]=e[t];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&ht(this);let t=this._props;this._props=e,e.plugins&&(e.plugins.forEach(dn),this.directPlugins=e.plugins),this.updateStateInner(e.state,t)}setProps(e){let t={};for(let e in this._props)t[e]=this._props[e];t.state=this.state;for(let n in e)t[n]=e[n];this.update(t)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,t){let n=this.state,r=!1,o=!1;e.storedMarks&&this.composing&&(Mt(this),o=!0),this.state=e;let i=n.plugins!=e.plugins||this._props.plugins!=t.plugins;if(i||this._props.plugins!=t.plugins||this._props.nodeViews!=t.nodeViews){let e=hn(this);(function(e,t){let n=0,r=0;for(let r in e){if(e[r]!=t[r])return!0;n++}for(let e in t)r++;return n!=r})(e,this.nodeViews)&&(this.nodeViews=e,r=!0)}(i||t.handleDOMEvents!=this._props.handleDOMEvents)&&ht(this),this.editable=un(this),cn(this);let s=Gt(this),a=ln(this),l=n.plugins==e.plugins||n.doc.eq(e.doc)?e.scrollToSelection>n.scrollToSelection?"to selection":"preserve":"reset",c=r||!this.docView.matchesNode(e.doc,a,s);!c&&e.selection.eq(n.selection)||(o=!0);let h="preserve"==l&&o&&null==this.dom.style.overflowAnchor&&function(e){let t,n,r=e.dom.getBoundingClientRect(),o=Math.max(0,r.top);for(let i=(r.left+r.right)/2,s=o+1;s<Math.min(innerHeight,r.bottom);s+=5){let r=e.root.elementFromPoint(i,s);if(!r||r==e.dom||!e.dom.contains(r))continue;let a=r.getBoundingClientRect();if(a.top>=o-20){t=r,n=a.top;break}}return{refDOM:t,refTop:n,stack:z(e.dom)}}(this);if(o){this.domObserver.stop();let t=c&&(k||E)&&!this.composing&&!n.selection.empty&&!e.selection.empty&&function(e,t){let n=Math.min(e.$anchor.sharedDepth(e.head),t.$anchor.sharedDepth(t.head));return e.$anchor.start(n)!=t.$anchor.start(n)}(n.selection,e.selection);if(c){let n=E?this.trackWrites=this.domSelectionRange().focusNode:null;!r&&this.docView.update(e.doc,a,s,this)||(this.docView.updateOuterDeco([]),this.docView.destroy(),this.docView=ce(e.doc,a,s,this.dom,this)),n&&!this.trackWrites&&(t=!0)}t||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&function(e){let t=e.docView.domFromPos(e.state.selection.anchor,0),n=e.domSelectionRange();return u(t.node,t.offset,n.anchorNode,n.anchorOffset)}(this))?Ee(this,t):(Re(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(n),"reset"==l?this.dom.scrollTop=0:"to selection"==l?this.scrollToSelection():h&&function({refDOM:e,refTop:t,stack:n}){let r=e?e.getBoundingClientRect().top:0;$(n,0==r?0:r-t)}(h)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(this.someProp("handleScrollToSelection",(e=>e(this))));else if(this.state.selection instanceof r.qv){let t=this.docView.domAfterPos(this.state.selection.from);1==t.nodeType&&B(this,t.getBoundingClientRect(),e)}else B(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(e&&e.plugins==this.state.plugins&&this.directPlugins==this.prevDirectPlugins)for(let t=0;t<this.pluginViews.length;t++){let n=this.pluginViews[t];n.update&&n.update(this,e)}else{this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let e=0;e<this.directPlugins.length;e++){let t=this.directPlugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}for(let e=0;e<this.state.plugins.length;e++){let t=this.state.plugins[e];t.spec.view&&this.pluginViews.push(t.spec.view(this))}}}someProp(e,t){let n,r=this._props&&this._props[e];if(null!=r&&(n=t?t(r):r))return n;for(let r=0;r<this.directPlugins.length;r++){let o=this.directPlugins[r].props[e];if(null!=o&&(n=t?t(o):o))return n}let o=this.state.plugins;if(o)for(let r=0;r<o.length;r++){let i=o[r].props[e];if(null!=i&&(n=t?t(i):i))return n}}hasFocus(){if(k){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if("false"==e.contentEditable)return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&function(e){if(e.setActive)return e.setActive();if(H)return e.focus(H);let t=z(e);e.focus(null==H?{get preventScroll(){return H={preventScroll:!0},!0}}:void 0),H||(H=!1,$(t,0))}(this.dom),Ee(this),this.domObserver.start()}get root(){let e=this._root;if(null==e)for(let e=this.dom.parentNode;e;e=e.parentNode)if(9==e.nodeType||11==e.nodeType&&e.host)return e.getSelection||(Object.getPrototypeOf(e).getSelection=()=>e.ownerDocument.getSelection()),this._root=e;return e||document}updateRoot(){this._root=null}posAtCoords(e){return q(this,e)}coordsAtPos(e,t=1){return J(this,e,t)}domAtPos(e,t=0){return this.docView.domFromPos(e,t)}nodeDOM(e){let t=this.docView.descAt(e);return t?t.nodeDOM:null}posAtDOM(e,t,n=-1){let r=this.docView.posFromDOM(e,t,n);if(null==r)throw new RangeError("DOM position not inside the editor");return r}endOfTextblock(e,t){return function(e,t,n){return te==t&&ne==n?re:(te=t,ne=n,re="up"==n||"down"==n?function(e,t,n){let r=t.selection,o="up"==n?r.$from:r.$to;return X(e,t,(()=>{let{node:t}=e.docView.domFromPos(o.pos,"up"==n?-1:1);for(;;){let n=e.docView.nearestDesc(t,!0);if(!n)break;if(n.node.isBlock){t=n.contentDOM||n.dom;break}t=n.dom.parentNode}let r=J(e,o.pos,1);for(let e=t.firstChild;e;e=e.nextSibling){let t;if(1==e.nodeType)t=e.getClientRects();else{if(3!=e.nodeType)continue;t=c(e,0,e.nodeValue.length).getClientRects()}for(let e=0;e<t.length;e++){let o=t[e];if(o.bottom>o.top+1&&("up"==n?r.top-o.top>2*(o.bottom-r.top):o.bottom-r.bottom>2*(r.bottom-o.top)))return!1}}return!0}))}(e,t,n):function(e,t,n){let{$head:r}=t.selection;if(!r.parent.isTextblock)return!1;let o=r.parentOffset,i=!o,s=o==r.parent.content.size,a=e.domSelection();return ee.test(r.parent.textContent)&&a.modify?X(e,t,(()=>{let{focusNode:t,focusOffset:o,anchorNode:i,anchorOffset:s}=e.domSelectionRange(),l=a.caretBidiLevel;a.modify("move",n,"character");let c=r.depth?e.docView.domAfterPos(r.before()):e.dom,{focusNode:u,focusOffset:h}=e.domSelectionRange(),d=u&&!c.contains(1==u.nodeType?u:u.parentNode)||t==u&&o==h;try{a.collapse(i,s),t&&(t!=i||o!=s)&&a.extend&&a.extend(t,o)}catch(e){}return null!=l&&(a.caretBidiLevel=l),d})):"left"==n||"backward"==n?i:s}(e,t,n))}(this,t||this.state,e)}pasteHTML(e,t){return At(this,"",e,!1,t||new ClipboardEvent("paste"))}pasteText(e,t){return At(this,e,null,!0,t||new ClipboardEvent("paste"))}destroy(){this.docView&&(function(e){e.domObserver.stop();for(let t in e.input.eventHandlers)e.dom.removeEventListener(t,e.input.eventHandlers[t]);clearTimeout(e.input.composingTimeout),clearTimeout(e.input.lastIOSEnterFallbackTimeout)}(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],Gt(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null)}get isDestroyed(){return null==this.docView}dispatchEvent(e){return function(e,t){dt(e,t)||!st[t.type]||!e.editable&&t.type in at||st[t.type](e,t)}(this,e)}dispatch(e){let t=this._props.dispatchTransaction;t?t.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){return T&&11===this.root.nodeType&&function(e){let t=e.activeElement;for(;t&&t.shadowRoot;)t=t.shadowRoot.activeElement;return t}(this.dom.ownerDocument)==this.dom?function(e){let t;function n(e){e.preventDefault(),e.stopImmediatePropagation(),t=e.getTargetRanges()[0]}e.dom.addEventListener("beforeinput",n,!0),document.execCommand("indent"),e.dom.removeEventListener("beforeinput",n,!0);let r=t.startContainer,o=t.startOffset,i=t.endContainer,s=t.endOffset,a=e.domAtPos(e.state.selection.anchor);return u(a.node,a.offset,i,s)&&([r,o,i,s]=[i,s,r,o]),{anchorNode:r,anchorOffset:o,focusNode:i,focusOffset:s}}(this):this.domSelection()}domSelection(){return this.root.getSelection()}}function ln(e){let t=Object.create(null);return t.class="ProseMirror",t.contenteditable=String(e.editable),e.someProp("attributes",(n=>{if("function"==typeof n&&(n=n(e.state)),n)for(let e in n)"class"==e?t.class+=" "+n[e]:"style"==e?t.style=(t.style?t.style+";":"")+n[e]:t[e]||"contenteditable"==e||"nodeName"==e||(t[e]=String(n[e]))})),t.translate||(t.translate="no"),[Lt.node(0,e.state.doc.content.size,t)]}function cn(e){if(e.markCursor){let t=document.createElement("img");t.className="ProseMirror-separator",t.setAttribute("mark-placeholder","true"),t.setAttribute("alt",""),e.cursorWrapper={dom:t,deco:Lt.widget(e.state.selection.head,t,{raw:!0,marks:e.markCursor})}}else e.cursorWrapper=null}function un(e){return!e.someProp("editable",(t=>!1===t(e.state)))}function hn(e){let t=Object.create(null);function n(e){for(let n in e)Object.prototype.hasOwnProperty.call(t,n)||(t[n]=e[n])}return e.someProp("nodeViews",n),e.someProp("markViews",n),t}function dn(e){if(e.spec.state||e.spec.filterTransaction||e.spec.appendTransaction)throw new RangeError("Plugins passed directly to the view must not have a state component")}},5651:(e,t,n)=>{"use strict";n.d(t,{Jg:()=>A});var r=n(7294);function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function i(e,t){if(null==e)return{};var n,r,o={},i=Object.keys(e);for(r=0;r<i.length;r++)t.indexOf(n=i[r])>=0||(o[n]=e[n]);return o}function s(e){var t=(0,r.useRef)(e),n=(0,r.useRef)((function(e){t.current&&t.current(e)}));return t.current=e,n.current}var a=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),e>n?n:e<t?t:e},l=function(e){return"touches"in e},c=function(e){return e&&e.ownerDocument.defaultView||self},u=function(e,t,n){var r=e.getBoundingClientRect(),o=l(t)?function(e,t){for(var n=0;n<e.length;n++)if(e[n].identifier===t)return e[n];return e[0]}(t.touches,n):t;return{left:a((o.pageX-(r.left+c(e).pageXOffset))/r.width),top:a((o.pageY-(r.top+c(e).pageYOffset))/r.height)}},h=function(e){!l(e)&&e.preventDefault()},d=r.memo((function(e){var t=e.onMove,n=e.onKey,a=i(e,["onMove","onKey"]),d=(0,r.useRef)(null),f=s(t),p=s(n),m=(0,r.useRef)(null),g=(0,r.useRef)(!1),y=(0,r.useMemo)((function(){var e=function(e){h(e),(l(e)?e.touches.length>0:e.buttons>0)&&d.current?f(u(d.current,e,m.current)):n(!1)},t=function(){return n(!1)};function n(n){var r=g.current,o=c(d.current),i=n?o.addEventListener:o.removeEventListener;i(r?"touchmove":"mousemove",e),i(r?"touchend":"mouseup",t)}return[function(e){var t=e.nativeEvent,r=d.current;if(r&&(h(t),!function(e,t){return t&&!l(e)}(t,g.current)&&r)){if(l(t)){g.current=!0;var o=t.changedTouches||[];o.length&&(m.current=o[0].identifier)}r.focus(),f(u(r,t,m.current)),n(!0)}},function(e){var t=e.which||e.keyCode;t<37||t>40||(e.preventDefault(),p({left:39===t?.05:37===t?-.05:0,top:40===t?.05:38===t?-.05:0}))},n]}),[p,f]),v=y[0],b=y[1],w=y[2];return(0,r.useEffect)((function(){return w}),[w]),r.createElement("div",o({},a,{onTouchStart:v,onMouseDown:v,className:"react-colorful__interactive",ref:d,onKeyDown:b,tabIndex:0,role:"slider"}))})),f=function(e){return e.filter(Boolean).join(" ")},p=function(e){var t=e.color,n=e.left,o=e.top,i=void 0===o?.5:o,s=f(["react-colorful__pointer",e.className]);return r.createElement("div",{className:s,style:{top:100*i+"%",left:100*n+"%"}},r.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:t}}))},m=function(e,t,n){return void 0===t&&(t=0),void 0===n&&(n=Math.pow(10,t)),Math.round(n*e)/n},g=(Math.PI,function(e){var t=e.s,n=e.v,r=e.a,o=(200-t)*n/100;return{h:m(e.h),s:m(o>0&&o<200?t*n/100/(o<=100?o:200-o)*100:0),l:m(o/2),a:m(r,2)}}),y=function(e){var t=g(e);return"hsl("+t.h+", "+t.s+"%, "+t.l+"%)"},v=function(e){var t=g(e);return"hsla("+t.h+", "+t.s+"%, "+t.l+"%, "+t.a+")"},b=r.memo((function(e){var t=e.hue,n=e.onChange,o=f(["react-colorful__hue",e.className]);return r.createElement("div",{className:o},r.createElement(d,{onMove:function(e){n({h:360*e.left})},onKey:function(e){n({h:a(t+360*e.left,0,360)})},"aria-label":"Hue","aria-valuenow":m(t),"aria-valuemax":"360","aria-valuemin":"0"},r.createElement(p,{className:"react-colorful__hue-pointer",left:t/360,color:y({h:t,s:100,v:100,a:1})})))})),w=r.memo((function(e){var t=e.hsva,n=e.onChange,o={backgroundColor:y({h:t.h,s:100,v:100,a:1})};return r.createElement("div",{className:"react-colorful__saturation",style:o},r.createElement(d,{onMove:function(e){n({s:100*e.left,v:100-100*e.top})},onKey:function(e){n({s:a(t.s+100*e.left,0,100),v:a(t.v-100*e.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+m(t.s)+"%, Brightness "+m(t.v)+"%"},r.createElement(p,{className:"react-colorful__saturation-pointer",top:1-t.v/100,left:t.s/100,color:y(t)})))})),x=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0};function S(e,t,n){var o=s(n),i=(0,r.useState)((function(){return e.toHsva(t)})),a=i[0],l=i[1],c=(0,r.useRef)({color:t,hsva:a});(0,r.useEffect)((function(){if(!e.equal(t,c.current.color)){var n=e.toHsva(t);c.current={hsva:n,color:t},l(n)}}),[t,e]),(0,r.useEffect)((function(){var t;x(a,c.current.hsva)||e.equal(t=e.fromHsva(a),c.current.color)||(c.current={hsva:a,color:t},o(t))}),[a,e,o]);var u=(0,r.useCallback)((function(e){l((function(t){return Object.assign({},t,e)}))}),[]);return[a,u]}var k="undefined"!=typeof window?r.useLayoutEffect:r.useEffect,C=new Map,M=function(e){var t=e.className,n=e.hsva,o=e.onChange,i={backgroundImage:"linear-gradient(90deg, "+v(Object.assign({},n,{a:0}))+", "+v(Object.assign({},n,{a:1}))+")"},s=f(["react-colorful__alpha",t]),l=m(100*n.a);return r.createElement("div",{className:s},r.createElement("div",{className:"react-colorful__alpha-gradient",style:i}),r.createElement(d,{onMove:function(e){o({a:e.left})},onKey:function(e){o({a:a(n.a+e.left)})},"aria-label":"Alpha","aria-valuetext":l+"%","aria-valuenow":l,"aria-valuemin":"0","aria-valuemax":"100"},r.createElement(p,{className:"react-colorful__alpha-pointer",left:n.a,color:v(n)})))},O=function(e){var t,s=e.className,a=e.colorModel,l=e.color,c=void 0===l?a.defaultColor:l,u=e.onChange,h=i(e,["className","colorModel","color","onChange"]),d=(0,r.useRef)(null);t=d,k((function(){var e=t.current?t.current.ownerDocument:document;if(void 0!==e&&!C.has(e)){var r=e.createElement("style");r.innerHTML='.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url(\'data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill-opacity=".05"><path d="M8 0h8v8H8zM0 8h8v8H0z"/></svg>\')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}',C.set(e,r);var o=n.nc;o&&r.setAttribute("nonce",o),e.head.appendChild(r)}}),[]);var p=S(a,c,u),m=p[0],g=p[1],y=f(["react-colorful",s]);return r.createElement("div",o({},h,{ref:d,className:y}),r.createElement(w,{hsva:m,onChange:g}),r.createElement(b,{hue:m.h,onChange:g}),r.createElement(M,{hsva:m,onChange:g,className:"react-colorful__last-control"}))},E={defaultColor:{r:0,g:0,b:0,a:1},toHsva:function(e){var t=e.r,n=e.g,r=e.b,o=e.a,i=Math.max(t,n,r),s=i-Math.min(t,n,r),a=s?i===t?(n-r)/s:i===n?2+(r-t)/s:4+(t-n)/s:0;return{h:m(60*(a<0?a+6:a)),s:m(i?s/i*100:0),v:m(i/255*100),a:o}},fromHsva:function(e){var t=e.h,n=e.s,r=e.v,o=e.a;t=t/360*6,n/=100,r/=100;var i=Math.floor(t),s=r*(1-n),a=r*(1-(t-i)*n),l=r*(1-(1-t+i)*n),c=i%6;return{r:m(255*[r,a,s,s,l,r][c]),g:m(255*[l,r,r,a,s,s][c]),b:m(255*[s,s,l,r,r,a][c]),a:m(o,2)}},equal:x},A=function(e){return r.createElement(O,o({},e,{colorModel:E}))}},2960:(e,t,n)=>{"use strict";n.d(t,{_W:()=>Et});var r={};n.r(r),n.d(r,{Button:()=>le,CaptionLabel:()=>ce,Chevron:()=>ue,Day:()=>he,DayButton:()=>de,Dropdown:()=>fe,DropdownNav:()=>pe,Footer:()=>me,Month:()=>ge,MonthCaption:()=>ye,MonthGrid:()=>ve,Months:()=>be,MonthsDropdown:()=>Se,Nav:()=>ke,NextMonthButton:()=>Ce,Option:()=>Me,PreviousMonthButton:()=>Oe,Root:()=>Ee,Select:()=>Ae,Week:()=>Te,WeekNumber:()=>Re,WeekNumberHeader:()=>Ne,Weekday:()=>De,Weekdays:()=>_e,Weeks:()=>Pe,YearsDropdown:()=>Ie});var o={};n.r(o),n.d(o,{formatCaption:()=>je,formatDay:()=>Be,formatMonthCaption:()=>Fe,formatMonthDropdown:()=>ze,formatWeekNumber:()=>$e,formatWeekNumberHeader:()=>He,formatWeekdayName:()=>We,formatYearCaption:()=>Ve,formatYearDropdown:()=>Ue});var i={};n.r(i),n.d(i,{labelCaption:()=>rt,labelDay:()=>st,labelDayButton:()=>it,labelGrid:()=>nt,labelGridcell:()=>ot,labelMonthDropdown:()=>lt,labelNav:()=>at,labelNext:()=>ct,labelPrevious:()=>ut,labelWeekNumber:()=>dt,labelWeekNumberHeader:()=>ft,labelWeekday:()=>ht,labelYearDropdown:()=>pt});var s,a,l,c=n(7294);!function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"}(s||(s={})),function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"}(a||(a={})),function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"}(l||(l={})),Math.pow(10,8);const u=6048e5,h=864e5,d=Symbol.for("constructDateFrom");function f(e,t){return"function"==typeof e?e(t):e&&"object"==typeof e&&d in e?e[d](t):e instanceof Date?new e.constructor(t):new Date(t)}function p(e,t){return f(t||e,e)}function m(e,t,n){const r=p(e,n?.in);return isNaN(t)?f(n?.in||e,NaN):t?(r.setDate(r.getDate()+t),r):r}function g(e,t,n){const r=p(e,n?.in);if(isNaN(t))return f(n?.in||e,NaN);if(!t)return r;const o=r.getDate(),i=f(n?.in||e,r.getTime());return i.setMonth(r.getMonth()+t+1,0),o>=i.getDate()?i:(r.setFullYear(i.getFullYear(),i.getMonth(),o),r)}function y(e){const t=p(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function v(e,...t){const n=f.bind(null,e||t.find((e=>"object"==typeof e)));return t.map(n)}function b(e,t){const n=p(e,t?.in);return n.setHours(0,0,0,0),n}function w(e,t,n){const[r,o]=v(n?.in,e,t),i=b(r),s=b(o),a=+i-y(i),l=+s-y(s);return Math.round((a-l)/h)}let x={};function S(){return x}function k(e,t){const n=S(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,o=p(e,t?.in),i=o.getDay(),s=6+(i<r?-7:0)-(i-r);return o.setDate(o.getDate()+s),o.setHours(23,59,59,999),o}const C={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function M(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const O={date:M({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:M({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:M({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},E={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function A(e){return(t,n)=>{let r;if("formatting"===(n?.context?String(n.context):"standalone")&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth,o=n?.width?String(n.width):t;r=e.formattingValues[o]||e.formattingValues[t]}else{const t=e.defaultWidth,o=n?.width?String(n.width):e.defaultWidth;r=e.values[o]||e.values[t]}return r[e.argumentCallback?e.argumentCallback(t):t]}}function T(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],i=t.match(o);if(!i)return null;const s=i[0],a=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(a)?function(e,t){for(let t=0;t<e.length;t++)if(e[t].test(s))return t}(a):function(e,t){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&e[t].test(s))return t}(a);let c;return c=e.valueCallback?e.valueCallback(l):l,c=n.valueCallback?n.valueCallback(c):c,{value:c,rest:t.slice(s.length)}}}var D;const _={code:"en-US",formatDistance:(e,t,n)=>{let r;const o=C[e];return r="string"==typeof o?o:1===t?o.one:o.other.replace("{{count}}",t.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r},formatLong:O,formatRelative:(e,t,n,r)=>E[e],localize:{ordinalNumber:(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:A({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:A({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:A({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:A({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:A({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(D={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,t={})=>{const n=e.match(D.matchPattern);if(!n)return null;const r=n[0],o=e.match(D.parsePattern);if(!o)return null;let i=D.valueCallback?D.valueCallback(o[0]):o[0];return i=t.valueCallback?t.valueCallback(i):i,{value:i,rest:e.slice(r.length)}}),era:T({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:T({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:T({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:T({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:T({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function R(e,t){const n=p(e,t?.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}function N(e,t){const n=S(),r=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0,o=p(e,t?.in),i=o.getDay(),s=(i<r?7:0)+i-r;return o.setDate(o.getDate()-s),o.setHours(0,0,0,0),o}function P(e,t){return N(e,{...t,weekStartsOn:1})}function I(e,t){const n=p(e,t?.in),r=n.getFullYear(),o=f(n,0);o.setFullYear(r+1,0,4),o.setHours(0,0,0,0);const i=P(o),s=f(n,0);s.setFullYear(r,0,4),s.setHours(0,0,0,0);const a=P(s);return n.getTime()>=i.getTime()?r+1:n.getTime()>=a.getTime()?r:r-1}function L(e,t){const n=p(e,t?.in),r=+P(n)-+function(e,t){const n=I(e,t),r=f(t?.in||e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),P(r)}(n);return Math.round(r/u)+1}function j(e,t){const n=p(e,t?.in),r=n.getFullYear(),o=S(),i=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??o.firstWeekContainsDate??o.locale?.options?.firstWeekContainsDate??1,s=f(t?.in||e,0);s.setFullYear(r+1,0,i),s.setHours(0,0,0,0);const a=N(s,t),l=f(t?.in||e,0);l.setFullYear(r,0,i),l.setHours(0,0,0,0);const c=N(l,t);return+n>=+a?r+1:+n>=+c?r:r-1}function F(e,t){const n=p(e,t?.in),r=+N(n,t)-+function(e,t){const n=S(),r=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1,o=j(e,t),i=f(t?.in||e,0);return i.setFullYear(o,0,r),i.setHours(0,0,0,0),N(i,t)}(n,t);return Math.round(r/u)+1}function B(e,t){return(e<0?"-":"")+Math.abs(e).toString().padStart(t,"0")}const z={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return B("yy"===t?r%100:r,t.length)},M(e,t){const n=e.getMonth();return"M"===t?String(n+1):B(n+1,2)},d:(e,t)=>B(e.getDate(),t.length),a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return"am"===n?"a.m.":"p.m."}},h:(e,t)=>B(e.getHours()%12||12,t.length),H:(e,t)=>B(e.getHours(),t.length),m:(e,t)=>B(e.getMinutes(),t.length),s:(e,t)=>B(e.getSeconds(),t.length),S(e,t){const n=t.length,r=e.getMilliseconds();return B(Math.trunc(r*Math.pow(10,n-3)),t.length)}},$={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if("yo"===t){const t=e.getFullYear(),r=t>0?t:1-t;return n.ordinalNumber(r,{unit:"year"})}return z.y(e,t)},Y:function(e,t,n,r){const o=j(e,r),i=o>0?o:1-o;return"YY"===t?B(i%100,2):"Yo"===t?n.ordinalNumber(i,{unit:"year"}):B(i,t.length)},R:function(e,t){return B(I(e),t.length)},u:function(e,t){return B(e.getFullYear(),t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return B(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return B(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return z.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return B(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const o=F(e,r);return"wo"===t?n.ordinalNumber(o,{unit:"week"}):B(o,t.length)},I:function(e,t,n){const r=L(e);return"Io"===t?n.ordinalNumber(r,{unit:"week"}):B(r,t.length)},d:function(e,t,n){return"do"===t?n.ordinalNumber(e.getDate(),{unit:"date"}):z.d(e,t)},D:function(e,t,n){const r=function(e,t){const n=p(e,t?.in);return w(n,R(n))+1}(e);return"Do"===t?n.ordinalNumber(r,{unit:"dayOfYear"}):B(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const o=e.getDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(i);case"ee":return B(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const o=e.getDay(),i=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(i);case"cc":return B(i,t.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),o=0===r?7:r;switch(t){case"i":return String(o);case"ii":return B(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(r,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(r,{width:"narrow",context:"formatting"});default:return n.dayPeriod(r,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let o;switch(o=12===r?"noon":0===r?"midnight":r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(o,{width:"narrow",context:"formatting"});default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let o;switch(o=r>=17?"evening":r>=12?"afternoon":r>=4?"morning":"night",t){case"B":case"BB":case"BBB":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(o,{width:"narrow",context:"formatting"});default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,n){if("ho"===t){let t=e.getHours()%12;return 0===t&&(t=12),n.ordinalNumber(t,{unit:"hour"})}return z.h(e,t)},H:function(e,t,n){return"Ho"===t?n.ordinalNumber(e.getHours(),{unit:"hour"}):z.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return"Ko"===t?n.ordinalNumber(r,{unit:"hour"}):B(r,t.length)},k:function(e,t,n){let r=e.getHours();return 0===r&&(r=24),"ko"===t?n.ordinalNumber(r,{unit:"hour"}):B(r,t.length)},m:function(e,t,n){return"mo"===t?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):z.m(e,t)},s:function(e,t,n){return"so"===t?n.ordinalNumber(e.getSeconds(),{unit:"second"}):z.s(e,t)},S:function(e,t){return z.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(0===r)return"Z";switch(t){case"X":return W(r);case"XXXX":case"XX":return U(r);default:return U(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return W(r);case"xxxx":case"xx":return U(r);default:return U(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+H(r,":");default:return"GMT"+U(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+H(r,":");default:return"GMT"+U(r,":")}},t:function(e,t,n){return B(Math.trunc(+e/1e3),t.length)},T:function(e,t,n){return B(+e,t.length)}};function H(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=Math.trunc(r/60),i=r%60;return 0===i?n+String(o):n+String(o)+t+B(i,2)}function W(e,t){return e%60==0?(e>0?"-":"+")+B(Math.abs(e)/60,2):U(e,t)}function U(e,t=""){const n=e>0?"-":"+",r=Math.abs(e);return n+B(Math.trunc(r/60),2)+t+B(r%60,2)}const V=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});default:return t.date({width:"full"})}},q=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});default:return t.time({width:"full"})}},K={p:q,P:(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],o=n[2];if(!o)return V(e,t);let i;switch(r){case"P":i=t.dateTime({width:"short"});break;case"PP":i=t.dateTime({width:"medium"});break;case"PPP":i=t.dateTime({width:"long"});break;default:i=t.dateTime({width:"full"})}return i.replace("{{date}}",V(r,t)).replace("{{time}}",q(o,t))}},Y=/^D+$/,G=/^Y+$/,J=["D","DD","YY","YYYY"];function Q(e){return e instanceof Date||"object"==typeof e&&"[object Date]"===Object.prototype.toString.call(e)}const Z=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,X=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,ee=/^'([^]*?)'?$/,te=/''/g,ne=/[a-zA-Z]/;function re(e,t,n){const r=S(),o=n?.locale??r.locale??_,i=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1,s=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0,a=p(e,n?.in);if(!function(e){return!(!Q(e)&&"number"!=typeof e||isNaN(+p(e)))}(a))throw new RangeError("Invalid time value");let l=t.match(X).map((e=>{const t=e[0];return"p"===t||"P"===t?(0,K[t])(e,o.formatLong):e})).join("").match(Z).map((e=>{if("''"===e)return{isToken:!1,value:"'"};const t=e[0];if("'"===t)return{isToken:!1,value:oe(e)};if($[t])return{isToken:!0,value:e};if(t.match(ne))throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`");return{isToken:!1,value:e}}));o.localize.preprocessor&&(l=o.localize.preprocessor(a,l));const c={firstWeekContainsDate:i,weekStartsOn:s,locale:o};return l.map((r=>{if(!r.isToken)return r.value;const i=r.value;return(!n?.useAdditionalWeekYearTokens&&function(e){return G.test(e)}(i)||!n?.useAdditionalDayOfYearTokens&&function(e){return Y.test(e)}(i))&&function(e,t,n){const r=function(e,t,n){const r="Y"===e[0]?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(e,t,n);if(console.warn(r),J.includes(e))throw new RangeError(r)}(i,t,String(e)),(0,$[i[0]])(a,i,o.localize,c)})).join("")}function oe(e){const t=e.match(ee);return t?t[1].replace(te,"'"):e}function ie(e,t,n){const r=p(e,n?.in),o=r.getFullYear(),i=r.getDate(),s=f(n?.in||e,0);s.setFullYear(o,t,15),s.setHours(0,0,0,0);const a=function(e,t){const n=p(e,t?.in),r=n.getFullYear(),o=n.getMonth(),i=f(n,0);return i.setFullYear(r,o+1,0),i.setHours(0,0,0,0),i.getDate()}(s);return r.setMonth(t,Math.min(i,a)),r}class se{constructor(e,t){this.Date=Date,this.addDays=(e,t)=>this.overrides?.addDays?this.overrides.addDays(e,t):m(e,t),this.addMonths=(e,t)=>this.overrides?.addMonths?this.overrides.addMonths(e,t):g(e,t),this.addWeeks=(e,t)=>this.overrides?.addWeeks?this.overrides.addWeeks(e,t):function(e,t,n){return m(e,7*t,n)}(e,t),this.addYears=(e,t)=>this.overrides?.addYears?this.overrides.addYears(e,t):function(e,t,n){return g(e,12*t,n)}(e,t),this.differenceInCalendarDays=(e,t)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(e,t):w(e,t),this.differenceInCalendarMonths=(e,t)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(e,t):function(e,t,n){const[r,o]=v(n?.in,e,t);return 12*(r.getFullYear()-o.getFullYear())+(r.getMonth()-o.getMonth())}(e,t),this.endOfISOWeek=e=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(e):function(e,t){return k(e,{...t,weekStartsOn:1})}(e),this.endOfMonth=e=>this.overrides?.endOfMonth?this.overrides.endOfMonth(e):function(e,t){const n=p(e,t?.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}(e),this.endOfWeek=e=>this.overrides?.endOfWeek?this.overrides.endOfWeek(e,this.options):k(e,this.options),this.endOfYear=e=>this.overrides?.endOfYear?this.overrides.endOfYear(e):function(e,t){const n=p(e,t?.in),r=n.getFullYear();return n.setFullYear(r+1,0,0),n.setHours(23,59,59,999),n}(e),this.format=(e,t)=>this.overrides?.format?this.overrides.format(e,t,this.options):re(e,t,this.options),this.getISOWeek=e=>this.overrides?.getISOWeek?this.overrides.getISOWeek(e):L(e),this.getWeek=e=>this.overrides?.getWeek?this.overrides.getWeek(e,this.options):F(e,this.options),this.isAfter=(e,t)=>this.overrides?.isAfter?this.overrides.isAfter(e,t):function(e,t){return+p(e)>+p(t)}(e,t),this.isBefore=(e,t)=>this.overrides?.isBefore?this.overrides.isBefore(e,t):function(e,t){return+p(e)<+p(t)}(e,t),this.isDate=e=>this.overrides?.isDate?this.overrides.isDate(e):Q(e),this.isSameDay=(e,t)=>this.overrides?.isSameDay?this.overrides.isSameDay(e,t):function(e,t,n){const[r,o]=v(n?.in,e,t);return+b(r)==+b(o)}(e,t),this.isSameMonth=(e,t)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(e,t):function(e,t,n){const[r,o]=v(n?.in,e,t);return r.getFullYear()===o.getFullYear()&&r.getMonth()===o.getMonth()}(e,t),this.isSameYear=(e,t)=>this.overrides?.isSameYear?this.overrides.isSameYear(e,t):function(e,t,n){const[r,o]=v(n?.in,e,t);return r.getFullYear()===o.getFullYear()}(e,t),this.max=e=>this.overrides?.max?this.overrides.max(e):function(e,t){let n,r=t?.in;return e.forEach((e=>{r||"object"!=typeof e||(r=f.bind(null,e));const t=p(e,r);(!n||n<t||isNaN(+t))&&(n=t)})),f(r,n||NaN)}(e),this.min=e=>this.overrides?.min?this.overrides.min(e):function(e,t){let n,r=t?.in;return e.forEach((e=>{r||"object"!=typeof e||(r=f.bind(null,e));const t=p(e,r);(!n||n>t||isNaN(+t))&&(n=t)})),f(r,n||NaN)}(e),this.setMonth=(e,t)=>this.overrides?.setMonth?this.overrides.setMonth(e,t):ie(e,t),this.setYear=(e,t)=>this.overrides?.setYear?this.overrides.setYear(e,t):function(e,t,n){const r=p(e,n?.in);return isNaN(+r)?f(n?.in||e,NaN):(r.setFullYear(t),r)}(e,t),this.startOfDay=e=>this.overrides?.startOfDay?this.overrides.startOfDay(e):b(e),this.startOfISOWeek=e=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(e):P(e),this.startOfMonth=e=>this.overrides?.startOfMonth?this.overrides.startOfMonth(e):function(e,t){const n=p(e,t?.in);return n.setDate(1),n.setHours(0,0,0,0),n}(e),this.startOfWeek=e=>this.overrides?.startOfWeek?this.overrides.startOfWeek(e,this.options):N(e,this.options),this.startOfYear=e=>this.overrides?.startOfYear?this.overrides.startOfYear(e):R(e),this.options={locale:_,...e},this.overrides=t}}const ae=new se;function le(e){return c.createElement("button",{...e})}function ce(e){return c.createElement("span",{...e})}function ue(e){const{size:t=24,orientation:n="left",className:r}=e;return c.createElement("svg",{className:r,width:t,height:t,viewBox:"0 0 24 24"},"up"===n&&c.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),"down"===n&&c.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),"left"===n&&c.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),"right"===n&&c.createElement("polygon",{points:"8 18.612 14.1888889 12.5 8 6.37733333 9.91111111 4.5 18 12.5 9.91111111 20.5"}))}function he(e){const{day:t,modifiers:n,...r}=e;return c.createElement("td",{...r})}function de(e){const{day:t,modifiers:n,...r}=e,o=c.useRef(null);return c.useEffect((()=>{n.focused&&o.current?.focus()}),[n.focused]),c.createElement("button",{ref:o,...r})}function fe(e){const{options:t,className:n,components:r,classNames:o,...i}=e,a=[o[s.Dropdown],n].join(" "),l=t?.find((({value:e})=>e===i.value));return c.createElement("span",{"data-disabled":i.disabled,className:o[s.DropdownRoot]},c.createElement(r.Select,{className:a,...i},t?.map((({value:e,label:t,disabled:n})=>c.createElement(r.Option,{key:e,value:e,disabled:n},t)))),c.createElement("span",{className:o[s.CaptionLabel],"aria-hidden":!0},l?.label,c.createElement(r.Chevron,{orientation:"down",size:18,className:o[s.Chevron]})))}function pe(e){return c.createElement("div",{...e})}function me(e){return c.createElement("div",{...e})}function ge(e){const{calendarMonth:t,displayIndex:n,...r}=e;return c.createElement("div",{...r},e.children)}function ye(e){const{calendarMonth:t,displayIndex:n,...r}=e;return c.createElement("div",{...r})}function ve(e){return c.createElement("table",{...e})}function be(e){return c.createElement("div",{...e})}const we=(0,c.createContext)(void 0);function xe(){const e=(0,c.useContext)(we);if(void 0===e)throw new Error("useDayPicker() must be used within a custom component.");return e}function Se(e){const{components:t}=xe();return c.createElement(t.Dropdown,{...e})}function ke(e){const{onPreviousClick:t,onNextClick:n,previousMonth:r,nextMonth:o,...i}=e,{components:a,classNames:l,labels:{labelPrevious:u,labelNext:h}}=xe();return c.createElement("nav",{...i},c.createElement(a.PreviousMonthButton,{type:"button",className:l[s.PreviousMonthButton],tabIndex:r?void 0:-1,disabled:!r||void 0,"aria-label":u(r),onClick:e.onPreviousClick},c.createElement(a.Chevron,{disabled:!r||void 0,className:l[s.Chevron],orientation:"left"})),c.createElement(a.NextMonthButton,{type:"button",className:l[s.NextMonthButton],tabIndex:o?void 0:-1,disabled:!o||void 0,"aria-label":h(o),onClick:e.onNextClick},c.createElement(a.Chevron,{disabled:!o||void 0,orientation:"right",className:l[s.Chevron]})))}function Ce(e){const{components:t}=xe();return c.createElement(t.Button,{...e})}function Me(e){return c.createElement("option",{...e})}function Oe(e){const{components:t}=xe();return c.createElement(t.Button,{...e})}function Ee(e){return c.createElement("div",{...e})}function Ae(e){return c.createElement("select",{...e})}function Te(e){const{week:t,...n}=e;return c.createElement("tr",{...n})}function De(e){return c.createElement("th",{...e})}function _e(e){return c.createElement("thead",null,c.createElement("tr",{...e}))}function Re(e){const{week:t,...n}=e;return c.createElement("th",{...n})}function Ne(e){return c.createElement("th",{...e})}function Pe(e){return c.createElement("tbody",{...e})}function Ie(e){const{components:t}=xe();return c.createElement(t.Dropdown,{...e})}function Le(){const e={};for(const t in s)e[s[t]]=`rdp-${s[t]}`;for(const t in a)e[a[t]]=`rdp-${a[t]}`;for(const t in l)e[l[t]]=`rdp-${l[t]}`;return e}function je(e,t,n){return(n??new se(t)).format(e,"LLLL y")}const Fe=je;function Be(e,t,n){return(n??new se(t)).format(e,"d")}function ze(e,t=_){return t.localize?.month(e)}function $e(e){return e<10?`0${e.toLocaleString()}`:`${e.toLocaleString()}`}function He(){return""}function We(e,t,n){return(n??new se(t)).format(e,"cccccc")}function Ue(e){return e.toString()}const Ve=Ue;Symbol.for("constructDateFrom");const qe={},Ke={};function Ye(e,t){try{const n=(qe[e]||=new Intl.DateTimeFormat("en-GB",{timeZone:e,hour:"numeric",timeZoneName:"longOffset"}).format)(t).split("GMT")[1]||"";return n in Ke?Ke[n]:Je(n,n.split(":"))}catch{if(e in Ke)return Ke[e];const t=e?.match(Ge);return t?Je(e,t.slice(1)):NaN}}const Ge=/([+-]\d\d):?(\d\d)?/;function Je(e,t){const n=+t[0],r=+(t[1]||0);return Ke[e]=n>0?60*n+r:60*n-r}class Qe extends Date{constructor(...e){super(),e.length>1&&"string"==typeof e[e.length-1]&&(this.timeZone=e.pop()),this.internal=new Date,isNaN(Ye(this.timeZone,this))?this.setTime(NaN):e.length?"number"==typeof e[0]&&(1===e.length||2===e.length&&"number"!=typeof e[1])?this.setTime(e[0]):"string"==typeof e[0]?this.setTime(+new Date(e[0])):e[0]instanceof Date?this.setTime(+e[0]):(this.setTime(+new Date(...e)),et(this),Xe(this)):this.setTime(Date.now())}static tz(e,...t){return t.length?new Qe(...t,e):new Qe(Date.now(),e)}withTimeZone(e){return new Qe(+this,e)}getTimezoneOffset(){return-Ye(this.timeZone,this)}setTime(e){return Date.prototype.setTime.apply(this,arguments),Xe(this),+this}[Symbol.for("constructDateFrom")](e){return new Qe(+new Date(e),this.timeZone)}}const Ze=/^(get|set)(?!UTC)/;function Xe(e){e.internal.setTime(+e),e.internal.setUTCMinutes(e.internal.getUTCMinutes()-e.getTimezoneOffset())}function et(e){const t=Ye(e.timeZone,e),n=new Date(+e);n.setUTCHours(n.getUTCHours()-1);const r=-new Date(+e).getTimezoneOffset(),o=r- -new Date(+n).getTimezoneOffset(),i=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();o&&i&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+o);const s=r-t;s&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+s);const a=Ye(e.timeZone,e),l=-new Date(+e).getTimezoneOffset()-a-s;if(a!==t&&l){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+l);const t=a-Ye(e.timeZone,e);t&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+t),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+t))}}Object.getOwnPropertyNames(Date.prototype).forEach((e=>{if(!Ze.test(e))return;const t=e.replace(Ze,"$1UTC");Qe.prototype[t]&&(e.startsWith("get")?Qe.prototype[e]=function(){return this.internal[t]()}:(Qe.prototype[e]=function(){var e;return Date.prototype[t].apply(this.internal,arguments),e=this,Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),et(e),+this},Qe.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),Xe(this),+this}))}));class tt extends Qe{static tz(e,...t){return t.length?new tt(...t,e):new tt(Date.now(),e)}toISOString(){const[e,t,n]=this.tzComponents(),r=`${e}${t}:${n}`;return this.internal.toISOString().slice(0,-1)+r}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[e,t,n,r]=this.internal.toUTCString().split(" ");return`${e?.slice(0,-1)} ${n} ${t} ${r}`}toTimeString(){const e=this.internal.toUTCString().split(" ")[4],[t,n,r]=this.tzComponents();return`${e} GMT${t}${n}${r} (${o=this.timeZone,i=this,new Intl.DateTimeFormat("en-GB",{timeZone:o,timeZoneName:"long"}).format(i).slice(12)})`;var o,i}toLocaleString(e,t){return Date.prototype.toLocaleString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleDateString(e,t){return Date.prototype.toLocaleDateString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}toLocaleTimeString(e,t){return Date.prototype.toLocaleTimeString.call(this,e,{...t,timeZone:t?.timeZone||this.timeZone})}tzComponents(){const e=this.getTimezoneOffset();return[e>0?"-":"+",String(Math.floor(Math.abs(e)/60)).padStart(2,"0"),String(Math.abs(e)%60).padStart(2,"0")]}withTimeZone(e){return new tt(+this,e)}[Symbol.for("constructDateFrom")](e){return new tt(+new Date(e),this.timeZone)}}function nt(e,t,n){return(n??new se(t)).format(e,"LLLL y")}const rt=nt;function ot(e,t,n,r){let o=(r??new se(n)).format(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o}function it(e,t,n,r){let o=(r??new se(n)).format(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o}const st=it;function at(){return""}function lt(e){return"Choose the Month"}function ct(e){return"Go to the Next Month"}function ut(e){return"Go to the Previous Month"}function ht(e,t,n){return(n??new se(t)).format(e,"cccc")}function dt(e,t){return`Week ${e}`}function ft(e){return"Week Number"}function pt(e){return"Choose the Year"}const mt=42;function gt(e,t){const{month:n,defaultMonth:r,today:o=(e.timeZone?tt.tz(e.timeZone):t.Date?new t.Date:new Date),numberOfMonths:i=1,endMonth:s,startMonth:a}=e;let l=n||r||o;const{differenceInCalendarMonths:c,addMonths:u,startOfMonth:h}=t;return s&&c(s,l)<0&&(l=u(s,-1*(i-1))),a&&c(l,a)<0&&(l=a),h(l)}class yt{constructor(e,t,n=ae){this.date=e,this.displayMonth=t,this.outside=Boolean(t&&!n.isSameMonth(e,t)),this.dateLib=n}isEqualTo(e){return this.dateLib.isSameDay(e.date,this.date)&&this.dateLib.isSameMonth(e.displayMonth,this.displayMonth)}}class vt{constructor(e,t){this.date=e,this.weeks=t}}class bt{constructor(e,t){this.days=t,this.weekNumber=e}}function wt(e,t){const[n,r]=(0,c.useState)(e);return[void 0===t?n:t,r]}function xt(e,t,n=!1,r=ae){let{from:o,to:i}=e;const{differenceInCalendarDays:s,isSameDay:a}=r;return o&&i?(s(i,o)<0&&([o,i]=[i,o]),s(t,o)>=(n?1:0)&&s(i,t)>=(n?1:0)):!n&&i?a(i,t):!(n||!o)&&a(o,t)}function St(e){return Boolean(e&&"object"==typeof e&&"from"in e)}function kt(e,t,n=ae){const r=Array.isArray(t)?t:[t],{isSameDay:o,differenceInCalendarDays:i,isAfter:s}=n;return r.some((t=>{if("boolean"==typeof t)return t;if(n.isDate(t))return o(e,t);if(function(e,t){return Array.isArray(e)&&e.every(t.isDate)}(t,n))return t.includes(e);if(St(t))return xt(t,e,!1,n);if(r=t,Boolean(r&&"object"==typeof r&&"dayOfWeek"in r))return Array.isArray(t.dayOfWeek)?t.dayOfWeek.includes(e.getDay()):t.dayOfWeek===e.getDay();var r;if(function(e){return Boolean(e&&"object"==typeof e&&"before"in e&&"after"in e)}(t)){const n=i(t.before,e)>0,r=i(t.after,e)<0;return s(t.before,t.after)?r&&n:n||r}return function(e){return Boolean(e&&"object"==typeof e&&"after"in e)}(t)?i(e,t.after)>0:function(e){return Boolean(e&&"object"==typeof e&&"before"in e)}(t)?i(t.before,e)>0:"function"==typeof t&&t(e)}))}function Ct(e,t,n,r,o,i,s,a=0){if(a>365)return;const l=function(e,t,n,r,o,i,s){const{ISOWeek:a}=i,{addDays:l,addMonths:c,addYears:u,addWeeks:h,startOfISOWeek:d,endOfISOWeek:f,startOfWeek:p,endOfWeek:m,max:g,min:y}=s;let v={day:l,week:h,month:c,year:u,startOfWeek:e=>a?d(e):p(e),endOfWeek:e=>a?f(e):m(e)}[e](n,"after"===t?1:-1);return"before"===t&&r?v=g([r,v]):"after"===t&&o&&(v=y([o,v])),v}(e,t,n.date,r,o,i,s),c=Boolean(i.disabled&&kt(l,i.disabled,s)),u=Boolean(i.hidden&&kt(l,i.hidden,s)),h=new yt(l,l,s);return c||u?Ct(e,t,h,r,o,i,s,a+1):h}function Mt(e,t,n,r,o){const{autoFocus:i}=e,[s,l]=(0,c.useState)(),u=function(e,t,n,r){let o,i=0,s=!1;for(;i<e.length&&!s;){const l=e[i],c=t(l);c[a.disabled]||c[a.hidden]||c[a.outside]||(c[a.focused]||r?.isEqualTo(l)||n(l.date)||c[a.today])&&(o=l,s=!0),i++}return o||(o=e.find((e=>{const n=t(e);return!n[a.disabled]&&!n[a.hidden]&&!n[a.outside]}))),o}(t.days,n,r||(()=>!1),s),[h,d]=(0,c.useState)(i?u:void 0);return{isFocusTarget:e=>Boolean(u?.isEqualTo(e)),setFocused:d,focused:h,blur:()=>{l(h),d(void 0)},moveFocus:(n,r)=>{if(!h)return;const i=Ct(n,r,h,t.navStart,t.navEnd,e,o);i&&(t.goToDay(i),d(i))}}}function Ot(e,t){const n=function(e,t){const{selected:n,required:r,onSelect:o}=e,[i,s]=wt(n,o?n:void 0),a=o?n:i,{isSameDay:l}=t;return{selected:a,select:(e,t,n)=>{let i=e;return!r&&a&&a&&l(e,a)&&(i=void 0),o||s(i),o?.(i,e,t,n),i},isSelected:e=>!!a&&l(a,e)}}(e,t),r=function(e,t){const{selected:n,required:r,onSelect:o}=e,[i,s]=wt(n,o?n:void 0),a=o?n:i,{isSameDay:l}=t,c=e=>a?.some((t=>l(t,e)))??!1,{min:u,max:h}=e;return{selected:a,select:(e,t,n)=>{let i=[...a??[]];if(c(e)){if(a?.length===u)return;if(r&&1===a?.length)return;i=a?.filter((t=>!l(t,e)))}else i=a?.length===h?[e]:[...i,e];return o||s(i),o?.(i,e,t,n),i},isSelected:c}}(e,t),o=function(e,t){const{disabled:n,excludeDisabled:r,selected:o,required:i,onSelect:s}=e,[a,l]=wt(o,s?o:void 0),c=s?o:a;return{selected:c,select:(o,a,u)=>{const{min:h,max:d}=e,f=o?function(e,t,n=0,r=0,o=!1,i=ae){const{from:s,to:a}=t||{},{isSameDay:l,isAfter:c,isBefore:u}=i;let h;if(s||a){if(s&&!a)h=l(s,e)?o?{from:s,to:void 0}:void 0:u(e,s)?{from:e,to:s}:{from:s,to:e};else if(s&&a)if(l(s,e)&&l(a,e))h=o?{from:s,to:a}:void 0;else if(l(s,e))h={from:s,to:n>0?void 0:e};else if(l(a,e))h={from:e,to:n>0?void 0:e};else if(u(e,s))h={from:e,to:a};else if(c(e,s))h={from:s,to:e};else{if(!c(e,a))throw new Error("Invalid range");h={from:s,to:e}}}else h={from:e,to:n>0?void 0:e};if(h?.from&&h?.to){const t=i.differenceInCalendarDays(h.to,h.from);(r>0&&t>r||n>1&&t<n)&&(h={from:e,to:void 0})}return h}(o,c,h,d,i,t):void 0;if(f?.from&&f.to){let e=f.from;const i=t.differenceInCalendarDays(f.to,e);for(let s=0;s<i;s++)if(e=t.addDays(e,1),r&&n&&kt(e,n,t)){f.from=o,f.to=void 0;break}}return s||l(f),s?.(f,o,a,u),f},isSelected:e=>c&&xt(c,e,!1,t)}}(e,t);switch(e.mode){case"single":return n;case"multiple":return r;case"range":return o;default:return}}function Et(e){const{components:t,formatters:n,labels:u,dateLib:h,locale:d,classNames:f}=(0,c.useMemo)((()=>{const t={..._,...e.locale};return{dateLib:new se({locale:t,weekStartsOn:e.weekStartsOn,firstWeekContainsDate:e.firstWeekContainsDate,useAdditionalWeekYearTokens:e.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:e.useAdditionalDayOfYearTokens},e.dateLib),components:(s=e.components,{...r,...s}),formatters:(n=e.formatters,n?.formatMonthCaption&&!n.formatCaption&&(n.formatCaption=n.formatMonthCaption),n?.formatYearCaption&&!n.formatYearDropdown&&(n.formatYearDropdown=n.formatYearCaption),{...o,...n}),labels:{...i,...e.labels},locale:t,classNames:{...Le(),...e.classNames}};var n,s}),[e.classNames,e.components,e.dateLib,e.firstWeekContainsDate,e.formatters,e.labels,e.locale,e.useAdditionalDayOfYearTokens,e.useAdditionalWeekYearTokens,e.weekStartsOn]),{captionLayout:p,mode:m,onDayBlur:g,onDayClick:y,onDayFocus:v,onDayKeyDown:b,onDayMouseEnter:w,onDayMouseLeave:x,onNextClick:S,onPrevClick:k,showWeekNumber:C,styles:M}=e,{formatCaption:O,formatDay:E,formatMonthDropdown:A,formatWeekNumber:T,formatWeekNumberHeader:D,formatWeekdayName:R,formatYearDropdown:N}=n,P=function(e,t){const[n,r]=function(e,t){let{startMonth:n,endMonth:r}=e;const{startOfYear:o,startOfDay:i,startOfMonth:s,endOfMonth:a,addYears:l,endOfYear:c}=t,{fromYear:u,toYear:h,fromMonth:d,toMonth:f}=e;!n&&d&&(n=d),!n&&u&&(n=new Date(u,0,1)),!r&&f&&(r=f),!r&&h&&(r=new Date(h,11,31));const p=e.captionLayout?.startsWith("dropdown");return n?n=s(n):u?n=new Date(u,0,1):!n&&p&&(n=o(l(e.today??(e.timeZone?tt.tz(e.timeZone):t.Date?new t.Date:new Date),-100))),r?r=a(r):h?r=new Date(h,11,31):!r&&p&&(r=c(e.today??(e.timeZone?tt.tz(e.timeZone):t.Date?new t.Date:new Date))),[n?i(n):n,r?i(r):r]}(e,t),{startOfMonth:o,endOfMonth:i}=t,s=gt(e,t),[a,l]=wt(s,e.month?o(e.month):void 0);(0,c.useEffect)((()=>{const n=gt(e,t);l(n)}),[e.timeZone]);const u=function(e,t,n,r){const{numberOfMonths:o=1}=n,i=[];for(let n=0;n<o;n++){const o=r.addMonths(e,n);if(t&&o>t)break;i.push(o)}return i}(a,r,e,t),h=function(e,t,n,r){const o=e[0],i=e[e.length-1],{ISOWeek:s,fixedWeeks:a}=n??{},{startOfWeek:l,endOfWeek:c,startOfISOWeek:u,endOfISOWeek:h,addDays:d,differenceInCalendarDays:f,differenceInCalendarMonths:p,isAfter:m,endOfMonth:g}=r,y=s?u(o):l(o),v=f(s?h(g(i)):c(g(i)),y),b=p(i,o)+1,w=[];for(let e=0;e<=v;e++){const n=d(y,e);if(t&&m(n,t))break;w.push(n)}const x=mt*b;if(a&&w.length<x)for(let e=0;e<7;e++){const e=d(w[w.length-1],1);w.push(e)}return w}(u,e.endMonth?i(e.endMonth):void 0,e,t),d=function(e,t,n,r){const{startOfWeek:o,endOfWeek:i,startOfISOWeek:s,endOfISOWeek:a,endOfMonth:l,addDays:c,getWeek:u,getISOWeek:h}=r,d=e.reduce(((e,d)=>{const f=n.ISOWeek?s(d):o(d),p=n.ISOWeek?a(l(d)):i(l(d)),m=t.filter((e=>e>=f&&e<=p));if(n.fixedWeeks&&m.length<42){const e=t.filter((e=>e>p&&e<=c(p,7)));m.push(...e)}const g=m.reduce(((e,t)=>{const o=n.ISOWeek?h(t):u(t),i=e.find((e=>e.weekNumber===o)),s=new yt(t,d,r);return i?i.days.push(s):e.push(new bt(o,[s])),e}),[]),y=new vt(d,g);return e.push(y),e}),[]);return n.reverseMonths?d.reverse():d}(u,h,e,t),f=function(e){return e.reduce(((e,t)=>[...e,...t.weeks]),[])}(d),p=d.reduce(((e,t)=>[...e,...t.weeks.reduce(((e,t)=>[...e,...t.days]),[])]),[]),m=function(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:i}=n,{startOfMonth:s,addMonths:a,differenceInCalendarMonths:l}=r,c=o?i??1:1,u=s(e);return t&&l(u,t)<=0?void 0:a(u,-c)}(a,n,e,t),g=function(e,t,n,r){if(n.disableNavigation)return;const{pagedNavigation:o,numberOfMonths:i=1}=n,{startOfMonth:s,addMonths:a,differenceInCalendarMonths:l}=r,c=o?i:1,u=s(e);return t&&l(t,e)<i?void 0:a(u,c)}(a,r,e,t),{disableNavigation:y,onMonthChange:v}=e,b=e=>{if(y)return;let t=o(e);n&&t<o(n)&&(t=o(n)),r&&t>o(r)&&(t=o(r)),l(t),v?.(t)};return{months:d,weeks:f,days:p,navStart:n,navEnd:r,previousMonth:m,nextMonth:g,goToMonth:b,goToDay:e=>{(e=>f.some((t=>t.days.some((t=>t.isEqualTo(e))))))(e)||b(e.date)}}}(e,h),{days:I,months:L,navStart:j,navEnd:F,previousMonth:B,nextMonth:z,goToMonth:$}=P,H=function(e,t,n){const{disabled:r,hidden:o,modifiers:i,showOutsideDays:s,today:c}=t,{isSameDay:u,isSameMonth:h}=n,d={[a.focused]:[],[a.outside]:[],[a.disabled]:[],[a.hidden]:[],[a.today]:[]},f={},p={[l.range_end]:[],[l.range_middle]:[],[l.range_start]:[],[l.selected]:[]};for(const a of e){const{date:e,displayMonth:l}=a,p=Boolean(l&&!h(e,l)),m=Boolean(r&&kt(e,r,n)),g=Boolean(o&&kt(e,o,n))||!s&&p,y=u(e,c??(t.timeZone?tt.tz(t.timeZone):n.Date?new n.Date:new Date));p&&d.outside.push(a),m&&d.disabled.push(a),g&&d.hidden.push(a),y&&d.today.push(a),i&&Object.keys(i).forEach((t=>{const r=i?.[t];r&&kt(e,r,n)&&(f[t]?f[t].push(a):f[t]=[a])}))}return e=>{const t={[a.focused]:!1,[a.disabled]:!1,[a.hidden]:!1,[a.outside]:!1,[a.today]:!1},n={[l.range_end]:!1,[l.range_middle]:!1,[l.range_start]:!1,[l.selected]:!1},r={};for(const n in d){const r=d[n];t[n]=r.some((t=>t===e))}for(const t in p){const r=p[t];n[t]=r.some((t=>t===e))}for(const t in f)r[t]=f[t].some((t=>t===e));return{...n,...t,...r}}}(I,e,h),{isSelected:W,select:U,selected:V}=Ot(e,h)??{},{blur:q,focused:K,isFocusTarget:Y,moveFocus:G,setFocused:J}=Mt(e,P,H,W??(()=>!1),h),{labelDayButton:Q,labelGridcell:Z,labelGrid:X,labelMonthDropdown:ee,labelNav:te,labelWeekday:ne,labelWeekNumber:re,labelWeekNumberHeader:oe,labelYearDropdown:ie}=u,ae=(0,c.useMemo)((()=>function(e,t,n){const r=n?tt.tz(n):e.Date?new e.Date:new Date,o=t?e.startOfISOWeek(r):e.startOfWeek(r),i=[];for(let t=0;t<7;t++){const n=e.addDays(o,t);i.push(n)}return i}(h,e.ISOWeek,e.timeZone)),[h,e.ISOWeek,e.timeZone]),le=void 0!==m||void 0!==y,ce=(0,c.useCallback)((()=>{B&&($(B),k?.(B))}),[B,$,k]),ue=(0,c.useCallback)((()=>{z&&($(z),S?.(z))}),[$,z,S]),he=(0,c.useCallback)(((e,t)=>n=>{n.preventDefault(),n.stopPropagation(),J(e),U?.(e.date,t,n),y?.(e.date,t,n)}),[U,y,J]),de=(0,c.useCallback)(((e,t)=>n=>{J(e),v?.(e.date,t,n)}),[v,J]),fe=(0,c.useCallback)(((e,t)=>n=>{q(),g?.(e.date,t,n)}),[q,g]),pe=(0,c.useCallback)(((t,n)=>r=>{const o={ArrowLeft:["day","rtl"===e.dir?"after":"before"],ArrowRight:["day","rtl"===e.dir?"before":"after"],ArrowDown:["week","after"],ArrowUp:["week","before"],PageUp:[r.shiftKey?"year":"month","before"],PageDown:[r.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(o[r.key]){r.preventDefault(),r.stopPropagation();const[e,t]=o[r.key];G(e,t)}b?.(t.date,n,r)}),[G,b,e.dir]),me=(0,c.useCallback)(((e,t)=>n=>{w?.(e.date,t,n)}),[w]),ge=(0,c.useCallback)(((e,t)=>n=>{x?.(e.date,t,n)}),[x]),{className:ye,style:ve}=(0,c.useMemo)((()=>({className:[f[s.Root],e.className].filter(Boolean).join(" "),style:{...M?.[s.Root],...e.style}})),[f,e.className,e.style,M]),be=function(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0};return Object.entries(e).forEach((([e,n])=>{e.startsWith("data-")&&(t[e]=n)})),t}(e),xe={selected:V,select:U,isSelected:W,months:L,nextMonth:z,previousMonth:B,goToMonth:$,getModifiers:H,components:t,classNames:f,styles:M,labels:u,formatters:n};return c.createElement(we.Provider,{value:xe},c.createElement(t.Root,{className:ye,style:ve,dir:e.dir,id:e.id,lang:e.lang,nonce:e.nonce,title:e.title,...be},c.createElement(t.Months,{className:f[s.Months],style:M?.[s.Months]},!e.hideNavigation&&c.createElement(t.Nav,{className:f[s.Nav],style:M?.[s.Nav],"aria-label":te(),onPreviousClick:ce,onNextClick:ue,previousMonth:B,nextMonth:z}),L.map(((r,o)=>{const i=function(e,t,n,r,o){if(!t)return;if(!n)return;const{addMonths:i,startOfMonth:s,isBefore:a}=o,l=e.getFullYear(),c=[];let u=t;for(;c.length<12&&a(u,i(n,1));)c.push(u.getMonth()),u=i(u,1);const h=c.sort(((e,t)=>e-t)).map((e=>{const i=r.formatMonthDropdown(e,o.options.locale),a=o.Date?new o.Date(l,e):new Date(l,e);return{value:e,label:i,disabled:t&&a<s(t)||n&&a>s(n)||!1}}));return h}(r.date,j,F,n,h),u=function(e,t,n,r,o){if(!t)return;if(!n)return;const{startOfMonth:i,startOfYear:s,endOfYear:a,addYears:l,isBefore:c,isSameYear:u}=o,h=e.getMonth(),d=s(t),f=a(n),p=[];let m=d;for(;c(m,f)||u(m,f);)p.push(m.getFullYear()),m=l(m,1);return p.map((e=>{const s=o.Date?new o.Date(e,h):new Date(e,h),a=t&&s<i(t)||h&&n&&s>i(n)||!1;return{value:e,label:r.formatYearDropdown(e),disabled:a}}))}(L[0].date,j,F,n,h);return c.createElement(t.Month,{className:f[s.Month],style:M?.[s.Month],key:o,displayIndex:o,calendarMonth:r},c.createElement(t.MonthCaption,{className:f[s.MonthCaption],style:M?.[s.MonthCaption],calendarMonth:r,displayIndex:o},p?.startsWith("dropdown")?c.createElement(t.DropdownNav,{className:f[s.Dropdowns],style:M?.[s.Dropdowns]},"dropdown"===p||"dropdown-months"===p?c.createElement(t.MonthsDropdown,{className:f[s.MonthsDropdown],"aria-label":ee(),classNames:f,components:t,disabled:Boolean(e.disableNavigation),onChange:e=>{const t=Number(e.target.value),n=h.setMonth(h.startOfMonth(r.date),t);$(n)},options:i,style:M?.[s.Dropdown],value:r.date.getMonth()}):c.createElement("span",{role:"status","aria-live":"polite"},A(r.date.getMonth(),d)),"dropdown"===p||"dropdown-years"===p?c.createElement(t.YearsDropdown,{className:f[s.YearsDropdown],"aria-label":ie(h.options),classNames:f,components:t,disabled:Boolean(e.disableNavigation),onChange:e=>{const t=h.setYear(h.startOfMonth(r.date),Number(e.target.value));$(t)},options:u,style:M?.[s.Dropdown],value:r.date.getFullYear()}):c.createElement("span",{role:"status","aria-live":"polite"},N(r.date.getFullYear()))):c.createElement(t.CaptionLabel,{className:f[s.CaptionLabel],role:"status","aria-live":"polite"},O(r.date,h.options,h))),c.createElement(t.MonthGrid,{role:"grid","aria-multiselectable":"multiple"===m||"range"===m,"aria-label":X(r.date,h.options,h)||void 0,className:f[s.MonthGrid],style:M?.[s.MonthGrid]},!e.hideWeekdays&&c.createElement(t.Weekdays,{className:f[s.Weekdays],style:M?.[s.Weekdays]},C&&c.createElement(t.WeekNumberHeader,{"aria-label":oe(h.options),className:f[s.WeekNumberHeader],style:M?.[s.WeekNumberHeader],scope:"col"},D()),ae.map(((e,n)=>c.createElement(t.Weekday,{"aria-label":ne(e,h.options,h),className:f[s.Weekday],key:n,style:M?.[s.Weekday],scope:"col"},R(e,h.options,h))))),c.createElement(t.Weeks,{className:f[s.Weeks],style:M?.[s.Weeks]},r.weeks.map(((n,r)=>c.createElement(t.Week,{className:f[s.Week],key:n.weekNumber,style:M?.[s.Week],week:n},C&&c.createElement(t.WeekNumber,{week:n,style:M?.[s.WeekNumber],"aria-label":re(n.weekNumber,{locale:d}),className:f[s.WeekNumber],scope:"row"},T(n.weekNumber)),n.days.map((n=>{const{date:r}=n,o=H(n);if(o[a.focused]=!o.hidden&&Boolean(K?.isEqualTo(n)),o[l.selected]=!o.disabled&&(W?.(r)||o.selected),St(V)){const{from:e,to:t}=V;o[l.range_start]=Boolean(e&&t&&h.isSameDay(r,e)),o[l.range_end]=Boolean(e&&t&&h.isSameDay(r,t)),o[l.range_middle]=xt(V,r,!0,h)}const i=function(e,t={},n={}){let r={...t?.[s.Day]};return Object.entries(e).filter((([,e])=>!0===e)).forEach((([e])=>{r={...r,...n?.[e]}})),r}(o,M,e.modifiersStyles),u=function(e,t,n={}){return Object.entries(e).filter((([,e])=>!0===e)).reduce(((e,[r])=>(n[r]?e.push(n[r]):t[a[r]]?e.push(t[a[r]]):t[l[r]]&&e.push(t[l[r]]),e)),[t[s.Day]])}(o,f,e.modifiersClassNames),d=le?void 0:Z(r,o,h.options,h);return c.createElement(t.Day,{key:`${h.format(r,"yyyy-MM-dd")}_${h.format(n.displayMonth,"yyyy-MM")}`,day:n,modifiers:o,className:u.join(" "),style:i,"aria-hidden":o.hidden||void 0,"aria-selected":o.selected||void 0,"aria-label":d,"data-day":h.format(r,"yyyy-MM-dd"),"data-month":n.outside?h.format(r,"yyyy-MM"):void 0,"data-selected":o.selected||void 0,"data-disabled":o.disabled||void 0,"data-hidden":o.hidden||void 0,"data-outside":n.outside||void 0,"data-focused":o.focused||void 0,"data-today":o.today||void 0},le?c.createElement(t.DayButton,{className:f[s.DayButton],style:M?.[s.DayButton],type:"button",day:n,modifiers:o,disabled:o.disabled||void 0,tabIndex:Y(n)?0:-1,"aria-label":Q(r,o,h.options,h),onClick:he(n,o),onBlur:fe(n,o),onFocus:de(n,o),onKeyDown:pe(n,o),onMouseEnter:me(n,o),onMouseLeave:ge(n,o)},E(r,h.options,h)):E(n.date,h.options,h))}))))))))}))),e.footer&&c.createElement(t.Footer,{className:f[s.Footer],style:M?.[s.Footer],role:"status","aria-live":"polite"},e.footer)))}},7536:(e,t,n)=>{"use strict";n.d(t,{Dq:()=>pe,Gc:()=>S,Qr:()=>L,RV:()=>k,cI:()=>Ie,qo:()=>R});var r=n(7294),o=e=>"checkbox"===e.type,i=e=>e instanceof Date,s=e=>null==e;const a=e=>"object"==typeof e;var l=e=>!s(e)&&!Array.isArray(e)&&a(e)&&!i(e),c=e=>l(e)&&e.target?o(e.target)?e.target.checked:e.target.value:e,u=(e,t)=>e.has((e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e)(t)),h=e=>{const t=e.constructor&&e.constructor.prototype;return l(t)&&t.hasOwnProperty("isPrototypeOf")},d="undefined"!=typeof window&&void 0!==window.HTMLElement&&"undefined"!=typeof document;function f(e){let t;const n=Array.isArray(e);if(e instanceof Date)t=new Date(e);else if(e instanceof Set)t=new Set(e);else{if(d&&(e instanceof Blob||e instanceof FileList)||!n&&!l(e))return e;if(t=n?[]:{},Array.isArray(e)||h(e))for(const n in e)t[n]=f(e[n]);else t=e}return t}var p=e=>Array.isArray(e)?e.filter(Boolean):[],m=e=>void 0===e,g=(e,t,n)=>{if(!t||!l(e))return n;const r=p(t.split(/[,[\].]+?/)).reduce(((e,t)=>s(e)?e:e[t]),e);return m(r)||r===e?m(e[t])?n:e[t]:r};const y={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},v={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},b="pattern",w="required",x=r.createContext(null),S=()=>r.useContext(x),k=e=>{const{children:t,...n}=e;return r.createElement(x.Provider,{value:n},t)};var C=(e,t,n,r=!0)=>{const o={defaultValues:t._defaultValues};for(const i in e)Object.defineProperty(o,i,{get:()=>{const o=i;return t._proxyFormState[o]!==v.all&&(t._proxyFormState[o]=!r||v.all),n&&(n[o]=!0),e[o]}});return o},M=e=>l(e)&&!Object.keys(e).length,O=(e,t,n,r)=>{n(e);const{name:o,...i}=e;return M(i)||Object.keys(i).length>=Object.keys(t).length||Object.keys(i).find((e=>t[e]===(!r||v.all)))},E=e=>Array.isArray(e)?e:[e],A=(e,t,n)=>n&&t?e===t:!e||!t||e===t||E(e).some((e=>e&&(e.startsWith(t)||t.startsWith(e))));function T(e){const t=r.useRef(e);t.current=e,r.useEffect((()=>{const n=!e.disabled&&t.current.subject&&t.current.subject.subscribe({next:t.current.next});return()=>{n&&n.unsubscribe()}}),[e.disabled])}var D=e=>"string"==typeof e,_=(e,t,n,r,o)=>D(e)?(r&&t.watch.add(e),g(n,e,o)):Array.isArray(e)?e.map((e=>(r&&t.watch.add(e),g(n,e)))):(r&&(t.watchAll=!0),n);function R(e){const t=S(),{control:n=t.control,name:o,defaultValue:i,disabled:s,exact:a}=e||{},l=r.useRef(o);l.current=o,T({disabled:s,subject:n._subjects.values,next:e=>{A(l.current,e.name,a)&&u(f(_(l.current,n._names,e.values||n._formValues,!1,i)))}});const[c,u]=r.useState(n._getWatch(o,i));return r.useEffect((()=>n._removeUnmounted())),c}var N=e=>/^\w*$/.test(e),P=e=>p(e.replace(/["|']|\]/g,"").split(/\.|\[/));function I(e,t,n){let r=-1;const o=N(t)?[t]:P(t),i=o.length,s=i-1;for(;++r<i;){const t=o[r];let i=n;if(r!==s){const n=e[t];i=l(n)||Array.isArray(n)?n:isNaN(+o[r+1])?{}:[]}e[t]=i,e=e[t]}return e}const L=e=>e.render(function(e){const t=S(),{name:n,control:o=t.control,shouldUnregister:i}=e,s=u(o._names.array,n),a=R({control:o,name:n,defaultValue:g(o._formValues,n,g(o._defaultValues,n,e.defaultValue)),exact:!0}),l=function(e){const t=S(),{control:n=t.control,disabled:o,name:i,exact:s}=e||{},[a,l]=r.useState(n._formState),c=r.useRef(!0),u=r.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1}),h=r.useRef(i);return h.current=i,T({disabled:o,next:e=>c.current&&A(h.current,e.name,s)&&O(e,u.current,n._updateFormState)&&l({...n._formState,...e}),subject:n._subjects.state}),r.useEffect((()=>(c.current=!0,u.current.isValid&&n._updateValid(!0),()=>{c.current=!1})),[n]),C(a,n,u.current,!1)}({control:o,name:n}),h=r.useRef(o.register(n,{...e.rules,value:a}));return r.useEffect((()=>{const e=o._options.shouldUnregister||i,t=(e,t)=>{const n=g(o._fields,e);n&&(n._f.mount=t)};if(t(n,!0),e){const e=f(g(o._options.defaultValues,n));I(o._defaultValues,n,e),m(g(o._formValues,n))&&I(o._formValues,n,e)}return()=>{(s?e&&!o._state.action:e)?o.unregister(n):t(n,!1)}}),[n,o,s,i]),{field:{name:n,value:a,onChange:r.useCallback((e=>h.current.onChange({target:{value:c(e),name:n},type:y.CHANGE})),[n]),onBlur:r.useCallback((()=>h.current.onBlur({target:{value:g(o._formValues,n),name:n},type:y.BLUR})),[n,o]),ref:e=>{const t=g(o._fields,n);t&&e&&(t._f.ref={focus:()=>e.focus(),select:()=>e.select(),setCustomValidity:t=>e.setCustomValidity(t),reportValidity:()=>e.reportValidity()})}},formState:l,fieldState:Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!g(l.errors,n)},isDirty:{enumerable:!0,get:()=>!!g(l.dirtyFields,n)},isTouched:{enumerable:!0,get:()=>!!g(l.touchedFields,n)},error:{enumerable:!0,get:()=>g(l.errors,n)}})}}(e));var j=(e,t,n,r,o)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:o||!0}}:{};const F=(e,t,n)=>{for(const r of n||Object.keys(e)){const n=g(e,r);if(n){const{_f:e,...r}=n;if(e&&t(e.name)){if(e.ref.focus){e.ref.focus();break}if(e.refs&&e.refs[0].focus){e.refs[0].focus();break}}else l(r)&&F(r,t)}}};var B=()=>{const e="undefined"==typeof performance?Date.now():1e3*performance.now();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(t=>{const n=(16*Math.random()+e)%16|0;return("x"==t?n:3&n|8).toString(16)}))},z=(e,t,n={})=>n.shouldFocus||m(n.shouldFocus)?n.focusName||`${e}.${m(n.focusIndex)?t:n.focusIndex}.`:"",$=e=>({isOnSubmit:!e||e===v.onSubmit,isOnBlur:e===v.onBlur,isOnChange:e===v.onChange,isOnAll:e===v.all,isOnTouch:e===v.onTouched}),H=(e,t,n)=>!n&&(t.watchAll||t.watch.has(e)||[...t.watch].some((t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))))),W=(e,t,n)=>{const r=p(g(e,n));return I(r,"root",t[n]),I(e,n,r),e},U=e=>"boolean"==typeof e,V=e=>"file"===e.type,q=e=>"function"==typeof e,K=e=>{if(!d)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},Y=e=>D(e),G=e=>"radio"===e.type,J=e=>e instanceof RegExp;const Q={value:!1,isValid:!1},Z={value:!0,isValid:!0};var X=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter((e=>e&&e.checked&&!e.disabled)).map((e=>e.value));return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!m(e[0].attributes.value)?m(e[0].value)||""===e[0].value?Z:{value:e[0].value,isValid:!0}:Z:Q}return Q};const ee={isValid:!1,value:null};var te=e=>Array.isArray(e)?e.reduce(((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e),ee):ee;function ne(e,t,n="validate"){if(Y(e)||Array.isArray(e)&&e.every(Y)||U(e)&&!e)return{type:n,message:Y(e)?e:"",ref:t}}var re=e=>l(e)&&!J(e)?e:{value:e,message:""},oe=async(e,t,n,r,i)=>{const{ref:a,refs:c,required:u,maxLength:h,minLength:d,min:f,max:p,pattern:y,validate:v,name:x,valueAsNumber:S,mount:k,disabled:C}=e._f,O=g(t,x);if(!k||C)return{};const E=c?c[0]:a,A=e=>{r&&E.reportValidity&&(E.setCustomValidity(U(e)?"":e||""),E.reportValidity())},T={},_=G(a),R=o(a),N=_||R,P=(S||V(a))&&m(a.value)&&m(O)||K(a)&&""===a.value||""===O||Array.isArray(O)&&!O.length,I=j.bind(null,x,n,T),L=(e,t,n,r="maxLength",o="minLength")=>{const i=e?t:n;T[x]={type:e?r:o,message:i,ref:a,...I(e?r:o,i)}};if(i?!Array.isArray(O)||!O.length:u&&(!N&&(P||s(O))||U(O)&&!O||R&&!X(c).isValid||_&&!te(c).isValid)){const{value:e,message:t}=Y(u)?{value:!!u,message:u}:re(u);if(e&&(T[x]={type:w,message:t,ref:E,...I(w,t)},!n))return A(t),T}if(!(P||s(f)&&s(p))){let e,t;const r=re(p),o=re(f);if(s(O)||isNaN(O)){const n=a.valueAsDate||new Date(O),i=e=>new Date((new Date).toDateString()+" "+e),s="time"==a.type,l="week"==a.type;D(r.value)&&O&&(e=s?i(O)>i(r.value):l?O>r.value:n>new Date(r.value)),D(o.value)&&O&&(t=s?i(O)<i(o.value):l?O<o.value:n<new Date(o.value))}else{const n=a.valueAsNumber||(O?+O:O);s(r.value)||(e=n>r.value),s(o.value)||(t=n<o.value)}if((e||t)&&(L(!!e,r.message,o.message,"max","min"),!n))return A(T[x].message),T}if((h||d)&&!P&&(D(O)||i&&Array.isArray(O))){const e=re(h),t=re(d),r=!s(e.value)&&O.length>+e.value,o=!s(t.value)&&O.length<+t.value;if((r||o)&&(L(r,e.message,t.message),!n))return A(T[x].message),T}if(y&&!P&&D(O)){const{value:e,message:t}=re(y);if(J(e)&&!O.match(e)&&(T[x]={type:b,message:t,ref:a,...I(b,t)},!n))return A(t),T}if(v)if(q(v)){const e=ne(await v(O,t),E);if(e&&(T[x]={...e,...I("validate",e.message)},!n))return A(e.message),T}else if(l(v)){let e={};for(const r in v){if(!M(e)&&!n)break;const o=ne(await v[r](O,t),E,r);o&&(e={...o,...I(r,o.message)},A(o.message),n&&(T[x]=e))}if(!M(e)&&(T[x]={ref:E,...e},!n))return T}return A(!0),T};function ie(e,t){return[...e,...E(t)]}var se=e=>Array.isArray(e)?e.map((()=>{})):void 0;function ae(e,t,n){return[...e.slice(0,t),...E(n),...e.slice(t)]}var le=(e,t,n)=>Array.isArray(e)?(m(e[n])&&(e[n]=void 0),e.splice(n,0,e.splice(t,1)[0]),e):[];function ce(e,t){return[...E(t),...E(e)]}var ue=(e,t)=>m(t)?[]:function(e,t){let n=0;const r=[...e];for(const e of t)r.splice(e-n,1),n++;return p(r).length?r:[]}(e,E(t).sort(((e,t)=>e-t))),he=(e,t,n)=>{e[t]=[e[n],e[n]=e[t]][0]};function de(e,t){const n=Array.isArray(t)?t:N(t)?[t]:P(t),r=1===n.length?e:function(e,t){const n=t.slice(0,-1).length;let r=0;for(;r<n;)e=m(e)?r++:e[t[r++]];return e}(e,n),o=n.length-1,i=n[o];return r&&delete r[i],0!==o&&(l(r)&&M(r)||Array.isArray(r)&&function(e){for(const t in e)if(!m(e[t]))return!1;return!0}(r))&&de(e,n.slice(0,-1)),e}var fe=(e,t,n)=>(e[t]=n,e);function pe(e){const t=S(),{control:n=t.control,name:o,keyName:i="id",shouldUnregister:s}=e,[a,l]=r.useState(n._getFieldArray(o)),c=r.useRef(n._getFieldArray(o).map(B)),u=r.useRef(a),h=r.useRef(o),d=r.useRef(!1);h.current=o,u.current=a,n._names.array.add(o),e.rules&&n.register(o,e.rules),T({next:({values:e,name:t})=>{if(t===h.current||!t){const t=g(e,h.current);Array.isArray(t)&&(l(t),c.current=t.map(B))}},subject:n._subjects.array});const p=r.useCallback((e=>{d.current=!0,n._updateFieldArray(o,e)}),[n,o]);return r.useEffect((()=>{if(n._state.action=!1,H(o,n._names)&&n._subjects.state.next({...n._formState}),d.current&&(!$(n._options.mode).isOnSubmit||n._formState.isSubmitted))if(n._options.resolver)n._executeSchema([o]).then((e=>{const t=g(e.errors,o),r=g(n._formState.errors,o);(r?!t&&r.type:t&&t.type)&&(t?I(n._formState.errors,o,t):de(n._formState.errors,o),n._subjects.state.next({errors:n._formState.errors}))}));else{const e=g(n._fields,o);e&&e._f&&oe(e,n._formValues,n._options.criteriaMode===v.all,n._options.shouldUseNativeValidation,!0).then((e=>!M(e)&&n._subjects.state.next({errors:W(n._formState.errors,e,o)})))}n._subjects.values.next({name:o,values:{...n._formValues}}),n._names.focus&&F(n._fields,(e=>!!e&&e.startsWith(n._names.focus||""))),n._names.focus="",n._updateValid()}),[a,o,n]),r.useEffect((()=>(!g(n._formValues,o)&&n._updateFieldArray(o),()=>{(n._options.shouldUnregister||s)&&n.unregister(o)})),[o,n,i,s]),{swap:r.useCallback(((e,t)=>{const r=n._getFieldArray(o);he(r,e,t),he(c.current,e,t),p(r),l(r),n._updateFieldArray(o,r,he,{argA:e,argB:t},!1)}),[p,o,n]),move:r.useCallback(((e,t)=>{const r=n._getFieldArray(o);le(r,e,t),le(c.current,e,t),p(r),l(r),n._updateFieldArray(o,r,le,{argA:e,argB:t},!1)}),[p,o,n]),prepend:r.useCallback(((e,t)=>{const r=E(f(e)),i=ce(n._getFieldArray(o),r);n._names.focus=z(o,0,t),c.current=ce(c.current,r.map(B)),p(i),l(i),n._updateFieldArray(o,i,ce,{argA:se(e)})}),[p,o,n]),append:r.useCallback(((e,t)=>{const r=E(f(e)),i=ie(n._getFieldArray(o),r);n._names.focus=z(o,i.length-1,t),c.current=ie(c.current,r.map(B)),p(i),l(i),n._updateFieldArray(o,i,ie,{argA:se(e)})}),[p,o,n]),remove:r.useCallback((e=>{const t=ue(n._getFieldArray(o),e);c.current=ue(c.current,e),p(t),l(t),n._updateFieldArray(o,t,ue,{argA:e})}),[p,o,n]),insert:r.useCallback(((e,t,r)=>{const i=E(f(t)),s=ae(n._getFieldArray(o),e,i);n._names.focus=z(o,e,r),c.current=ae(c.current,e,i.map(B)),p(s),l(s),n._updateFieldArray(o,s,ae,{argA:e,argB:se(t)})}),[p,o,n]),update:r.useCallback(((e,t)=>{const r=f(t),i=fe(n._getFieldArray(o),e,r);c.current=[...i].map(((t,n)=>t&&n!==e?c.current[n]:B())),p(i),l([...i]),n._updateFieldArray(o,i,fe,{argA:e,argB:r},!0,!1)}),[p,o,n]),replace:r.useCallback((e=>{const t=E(f(e));c.current=t.map(B),p([...t]),l([...t]),n._updateFieldArray(o,[...t],(e=>e),{},!0,!1)}),[p,o,n]),fields:r.useMemo((()=>a.map(((e,t)=>({...e,[i]:c.current[t]||B()})))),[a,i])}}function me(){let e=[];return{get observers(){return e},next:t=>{for(const n of e)n.next&&n.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter((e=>e!==t))}}),unsubscribe:()=>{e=[]}}}var ge=e=>s(e)||!a(e);function ye(e,t){if(ge(e)||ge(t))return e===t;if(i(e)&&i(t))return e.getTime()===t.getTime();const n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(const o of n){const n=e[o];if(!r.includes(o))return!1;if("ref"!==o){const e=t[o];if(i(n)&&i(e)||l(n)&&l(e)||Array.isArray(n)&&Array.isArray(e)?!ye(n,e):n!==e)return!1}}return!0}var ve=e=>"select-multiple"===e.type,be=e=>G(e)||o(e),we=e=>K(e)&&e.isConnected,xe=e=>{for(const t in e)if(q(e[t]))return!0;return!1};function Se(e,t={}){const n=Array.isArray(e);if(l(e)||n)for(const n in e)Array.isArray(e[n])||l(e[n])&&!xe(e[n])?(t[n]=Array.isArray(e[n])?[]:{},Se(e[n],t[n])):s(e[n])||(t[n]=!0);return t}function ke(e,t,n){const r=Array.isArray(e);if(l(e)||r)for(const r in e)Array.isArray(e[r])||l(e[r])&&!xe(e[r])?m(t)||ge(n[r])?n[r]=Array.isArray(e[r])?Se(e[r],[]):{...Se(e[r])}:ke(e[r],s(t)?{}:t[r],n[r]):n[r]=!ye(e[r],t[r]);return n}var Ce=(e,t)=>ke(e,t,Se(t)),Me=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>m(e)?e:t?""===e?NaN:e?+e:e:n&&D(e)?new Date(e):r?r(e):e;function Oe(e){const t=e.ref;if(!(e.refs?e.refs.every((e=>e.disabled)):t.disabled))return V(t)?t.files:G(t)?te(e.refs).value:ve(t)?[...t.selectedOptions].map((({value:e})=>e)):o(t)?X(e.refs).value:Me(m(t.value)?e.ref.value:t.value,e)}var Ee=(e,t,n,r)=>{const o={};for(const n of e){const e=g(t,n);e&&I(o,n,e._f)}return{criteriaMode:n,names:[...e],fields:o,shouldUseNativeValidation:r}},Ae=e=>m(e)?e:J(e)?e.source:l(e)?J(e.value)?e.value.source:e.value:e,Te=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function De(e,t,n){const r=g(e,n);if(r||N(n))return{error:r,name:n};const o=n.split(".");for(;o.length;){const r=o.join("."),i=g(t,r),s=g(e,r);if(i&&!Array.isArray(i)&&n!==r)return{name:n};if(s&&s.type)return{name:r,error:s};o.pop()}return{name:n}}var _e=(e,t,n,r,o)=>!o.isOnAll&&(!n&&o.isOnTouch?!(t||e):(n?r.isOnBlur:o.isOnBlur)?!e:!(n?r.isOnChange:o.isOnChange)||e),Re=(e,t)=>!p(g(e,t)).length&&de(e,t);const Ne={mode:v.onSubmit,reValidateMode:v.onChange,shouldFocusError:!0};function Pe(e={},t){let n,r={...Ne,...e},a={submitCount:0,isDirty:!1,isLoading:q(r.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},errors:{}},h={},b=(l(r.defaultValues)||l(r.values))&&f(r.defaultValues||r.values)||{},w=r.shouldUnregister?{}:f(b),x={action:!1,mount:!1,watch:!1},S={mount:new Set,unMount:new Set,array:new Set,watch:new Set},k=0;const C={isDirty:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},O={values:me(),array:me(),state:me()},A=e.resetOptions&&e.resetOptions.keepDirtyValues,T=$(r.mode),R=$(r.reValidateMode),N=r.criteriaMode===v.all,P=async e=>{if(C.isValid||e){const e=r.resolver?M((await z()).errors):await Y(h,!0);e!==a.isValid&&O.state.next({isValid:e})}},L=e=>C.isValidating&&O.state.next({isValidating:e}),j=(e,t,n,r)=>{const o=g(h,e);if(o){const i=g(w,e,m(n)?g(b,e):n);m(i)||r&&r.defaultChecked||t?I(w,e,t?i:Oe(o._f)):Q(e,i),x.mount&&P()}},B=(e,t,n,r,o)=>{let i=!1,s=!1;const l={name:e};if(!n||r){C.isDirty&&(s=a.isDirty,a.isDirty=l.isDirty=G(),i=s!==l.isDirty);const n=ye(g(b,e),t);s=g(a.dirtyFields,e),n?de(a.dirtyFields,e):I(a.dirtyFields,e,!0),l.dirtyFields=a.dirtyFields,i=i||C.dirtyFields&&s!==!n}if(n){const t=g(a.touchedFields,e);t||(I(a.touchedFields,e,n),l.touchedFields=a.touchedFields,i=i||C.touchedFields&&t!==n)}return i&&o&&O.state.next(l),i?l:{}},z=async e=>r.resolver(w,r.context,Ee(e||S.mount,h,r.criteriaMode,r.shouldUseNativeValidation)),Y=async(e,t,n={valid:!0})=>{for(const o in e){const i=e[o];if(i){const{_f:e,...o}=i;if(e){const o=S.array.has(e.name),s=await oe(i,w,N,r.shouldUseNativeValidation&&!t,o);if(s[e.name]&&(n.valid=!1,t))break;!t&&(g(s,e.name)?o?W(a.errors,s,e.name):I(a.errors,e.name,s[e.name]):de(a.errors,e.name))}o&&await Y(o,t,n)}}return n.valid},G=(e,t)=>(e&&t&&I(w,e,t),!ye(ne(),b)),J=(e,t,n)=>_(e,S,{...x.mount?w:m(t)?b:D(e)?{[e]:t}:t},n,t),Q=(e,t,n={})=>{const r=g(h,e);let i=t;if(r){const n=r._f;n&&(!n.disabled&&I(w,e,Me(t,n)),i=K(n.ref)&&s(t)?"":t,ve(n.ref)?[...n.ref.options].forEach((e=>e.selected=i.includes(e.value))):n.refs?o(n.ref)?n.refs.length>1?n.refs.forEach((e=>(!e.defaultChecked||!e.disabled)&&(e.checked=Array.isArray(i)?!!i.find((t=>t===e.value)):i===e.value))):n.refs[0]&&(n.refs[0].checked=!!i):n.refs.forEach((e=>e.checked=e.value===i)):V(n.ref)?n.ref.value="":(n.ref.value=i,n.ref.type||O.values.next({name:e,values:{...w}})))}(n.shouldDirty||n.shouldTouch)&&B(e,i,n.shouldTouch,n.shouldDirty,!0),n.shouldValidate&&te(e)},Z=(e,t,n)=>{for(const r in t){const o=t[r],s=`${e}.${r}`,a=g(h,s);!S.array.has(e)&&ge(o)&&(!a||a._f)||i(o)?Q(s,o,n):Z(s,o,n)}},X=(e,n,r={})=>{const o=g(h,e),i=S.array.has(e),l=f(n);I(w,e,l),i?(O.array.next({name:e,values:{...w}}),(C.isDirty||C.dirtyFields)&&r.shouldDirty&&O.state.next({name:e,dirtyFields:Ce(b,w),isDirty:G(e,l)})):!o||o._f||s(l)?Q(e,l,r):Z(e,l,r),H(e,S)&&O.state.next({...a}),O.values.next({name:e,values:{...w}}),!x.mount&&t()},ee=async t=>{const o=t.target;let i=o.name,s=!0;const l=g(h,i);if(l){let u,d;const f=o.type?Oe(l._f):c(t),p=t.type===y.BLUR||t.type===y.FOCUS_OUT,m=!Te(l._f)&&!r.resolver&&!g(a.errors,i)&&!l._f.deps||_e(p,g(a.touchedFields,i),a.isSubmitted,R,T),v=H(i,S,p);I(w,i,f),p?(l._f.onBlur&&l._f.onBlur(t),n&&n(0)):l._f.onChange&&l._f.onChange(t);const b=B(i,f,p,!1),x=!M(b)||v;if(!p&&O.values.next({name:i,type:t.type,values:{...w}}),m)return C.isValid&&P(),x&&O.state.next({name:i,...v?{}:b});if(!p&&v&&O.state.next({...a}),L(!0),r.resolver){const{errors:e}=await z([i]),t=De(a.errors,h,i),n=De(e,h,t.name||i);u=n.error,i=n.name,d=M(e)}else u=(await oe(l,w,N,r.shouldUseNativeValidation))[i],s=isNaN(f)||f===g(w,i,f),s&&(u?d=!1:C.isValid&&(d=await Y(h,!0)));s&&(l._f.deps&&te(l._f.deps),((t,r,o,i)=>{const s=g(a.errors,t),l=C.isValid&&U(r)&&a.isValid!==r;var c;if(e.delayError&&o?(c=()=>((e,t)=>{I(a.errors,e,t),O.state.next({errors:a.errors})})(t,o),n=e=>{clearTimeout(k),k=setTimeout(c,e)},n(e.delayError)):(clearTimeout(k),n=null,o?I(a.errors,t,o):de(a.errors,t)),(o?!ye(s,o):s)||!M(i)||l){const e={...i,...l&&U(r)?{isValid:r}:{},errors:a.errors,name:t};a={...a,...e},O.state.next(e)}L(!1)})(i,d,u,b))}},te=async(e,t={})=>{let n,o;const i=E(e);if(L(!0),r.resolver){const t=await(async e=>{const{errors:t}=await z();if(e)for(const n of e){const e=g(t,n);e?I(a.errors,n,e):de(a.errors,n)}else a.errors=t;return t})(m(e)?e:i);n=M(t),o=e?!i.some((e=>g(t,e))):n}else e?(o=(await Promise.all(i.map((async e=>{const t=g(h,e);return await Y(t&&t._f?{[e]:t}:t)})))).every(Boolean),(o||a.isValid)&&P()):o=n=await Y(h);return O.state.next({...!D(e)||C.isValid&&n!==a.isValid?{}:{name:e},...r.resolver||!e?{isValid:n}:{},errors:a.errors,isValidating:!1}),t.shouldFocus&&!o&&F(h,(e=>e&&g(a.errors,e)),e?i:S.mount),o},ne=e=>{const t={...b,...x.mount?w:{}};return m(e)?t:D(e)?g(t,e):e.map((e=>g(t,e)))},re=(e,t)=>({invalid:!!g((t||a).errors,e),isDirty:!!g((t||a).dirtyFields,e),isTouched:!!g((t||a).touchedFields,e),error:g((t||a).errors,e)}),ie=(e,t={})=>{for(const n of e?E(e):S.mount)S.mount.delete(n),S.array.delete(n),t.keepValue||(de(h,n),de(w,n)),!t.keepError&&de(a.errors,n),!t.keepDirty&&de(a.dirtyFields,n),!t.keepTouched&&de(a.touchedFields,n),!r.shouldUnregister&&!t.keepDefaultValue&&de(b,n);O.values.next({values:{...w}}),O.state.next({...a,...t.keepDirty?{isDirty:G()}:{}}),!t.keepIsValid&&P()},se=(e,t={})=>{let n=g(h,e);const o=U(t.disabled);return I(h,e,{...n||{},_f:{...n&&n._f?n._f:{ref:{name:e}},name:e,mount:!0,...t}}),S.mount.add(e),n?o&&I(w,e,t.disabled?void 0:g(w,e,Oe(n._f))):j(e,!0,t.value),{...o?{disabled:t.disabled}:{},...r.shouldUseNativeValidation?{required:!!t.required,min:Ae(t.min),max:Ae(t.max),minLength:Ae(t.minLength),maxLength:Ae(t.maxLength),pattern:Ae(t.pattern)}:{},name:e,onChange:ee,onBlur:ee,ref:o=>{if(o){se(e,t),n=g(h,e);const r=m(o.value)&&o.querySelectorAll&&o.querySelectorAll("input,select,textarea")[0]||o,i=be(r),s=n._f.refs||[];if(i?s.find((e=>e===r)):r===n._f.ref)return;I(h,e,{_f:{...n._f,...i?{refs:[...s.filter(we),r,...Array.isArray(g(b,e))?[{}]:[]],ref:{type:r.type,name:e}}:{ref:r}}}),j(e,!1,void 0,r)}else n=g(h,e,{}),n._f&&(n._f.mount=!1),(r.shouldUnregister||t.shouldUnregister)&&(!u(S.array,e)||!x.action)&&S.unMount.add(e)}}},ae=()=>r.shouldFocusError&&F(h,(e=>e&&g(a.errors,e)),S.mount),le=(n,r={})=>{const o=n||b,i=f(o),s=n&&!M(n)?i:b;if(r.keepDefaultValues||(b=o),!r.keepValues){if(r.keepDirtyValues||A)for(const e of S.mount)g(a.dirtyFields,e)?I(s,e,g(w,e)):X(e,g(s,e));else{if(d&&m(n))for(const e of S.mount){const t=g(h,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(K(e)){const t=e.closest("form");if(t){t.reset();break}}}}h={}}w=e.shouldUnregister?r.keepDefaultValues?f(b):{}:i,O.array.next({values:{...s}}),O.values.next({values:{...s}})}S={mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},!x.mount&&t(),x.mount=!C.isValid||!!r.keepIsValid,x.watch=!!e.shouldUnregister,O.state.next({submitCount:r.keepSubmitCount?a.submitCount:0,isDirty:r.keepDirty?a.isDirty:!(!r.keepDefaultValues||ye(n,b)),isSubmitted:!!r.keepIsSubmitted&&a.isSubmitted,dirtyFields:r.keepDirtyValues?a.dirtyFields:r.keepDefaultValues&&n?Ce(b,n):{},touchedFields:r.keepTouched?a.touchedFields:{},errors:r.keepErrors?a.errors:{},isSubmitting:!1,isSubmitSuccessful:!1})},ce=(e,t)=>le(q(e)?e(w):e,t);return{control:{register:se,unregister:ie,getFieldState:re,_executeSchema:z,_getWatch:J,_getDirty:G,_updateValid:P,_removeUnmounted:()=>{for(const e of S.unMount){const t=g(h,e);t&&(t._f.refs?t._f.refs.every((e=>!we(e))):!we(t._f.ref))&&ie(e)}S.unMount=new Set},_updateFieldArray:(e,t=[],n,r,o=!0,i=!0)=>{if(r&&n){if(x.action=!0,i&&Array.isArray(g(h,e))){const t=n(g(h,e),r.argA,r.argB);o&&I(h,e,t)}if(i&&Array.isArray(g(a.errors,e))){const t=n(g(a.errors,e),r.argA,r.argB);o&&I(a.errors,e,t),Re(a.errors,e)}if(C.touchedFields&&i&&Array.isArray(g(a.touchedFields,e))){const t=n(g(a.touchedFields,e),r.argA,r.argB);o&&I(a.touchedFields,e,t)}C.dirtyFields&&(a.dirtyFields=Ce(b,w)),O.state.next({name:e,isDirty:G(e,t),dirtyFields:a.dirtyFields,errors:a.errors,isValid:a.isValid})}else I(w,e,t)},_getFieldArray:t=>p(g(x.mount?w:b,t,e.shouldUnregister?g(b,t,[]):[])),_reset:le,_resetDefaultValues:()=>q(r.defaultValues)&&r.defaultValues().then((e=>{ce(e,r.resetOptions),O.state.next({isLoading:!1})})),_updateFormState:e=>{a={...a,...e}},_subjects:O,_proxyFormState:C,get _fields(){return h},get _formValues(){return w},get _state(){return x},set _state(e){x=e},get _defaultValues(){return b},get _names(){return S},set _names(e){S=e},get _formState(){return a},set _formState(e){a=e},get _options(){return r},set _options(e){r={...r,...e}}},trigger:te,register:se,handleSubmit:(e,t)=>async n=>{n&&(n.preventDefault&&n.preventDefault(),n.persist&&n.persist());let o=f(w);if(O.state.next({isSubmitting:!0}),r.resolver){const{errors:e,values:t}=await z();a.errors=e,o=t}else await Y(h);de(a.errors,"root"),M(a.errors)?(O.state.next({errors:{}}),await e(o,n)):(t&&await t({...a.errors},n),ae(),setTimeout(ae)),O.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:M(a.errors),submitCount:a.submitCount+1,errors:a.errors})},watch:(e,t)=>q(e)?O.values.subscribe({next:n=>e(J(void 0,t),n)}):J(e,t,!0),setValue:X,getValues:ne,reset:ce,resetField:(e,t={})=>{g(h,e)&&(m(t.defaultValue)?X(e,g(b,e)):(X(e,t.defaultValue),I(b,e,t.defaultValue)),t.keepTouched||de(a.touchedFields,e),t.keepDirty||(de(a.dirtyFields,e),a.isDirty=t.defaultValue?G(e,g(b,e)):G()),t.keepError||(de(a.errors,e),C.isValid&&P()),O.state.next({...a}))},clearErrors:e=>{e&&E(e).forEach((e=>de(a.errors,e))),O.state.next({errors:e?a.errors:{}})},unregister:ie,setError:(e,t,n)=>{const r=(g(h,e,{_f:{}})._f||{}).ref;I(a.errors,e,{...t,ref:r}),O.state.next({name:e,errors:a.errors,isValid:!1}),n&&n.shouldFocus&&r&&r.focus&&r.focus()},setFocus:(e,t={})=>{const n=g(h,e),r=n&&n._f;if(r){const e=r.refs?r.refs[0]:r.ref;e.focus&&(e.focus(),t.shouldSelect&&e.select())}},getFieldState:re}}function Ie(e={}){const t=r.useRef(),[n,o]=r.useState({isDirty:!1,isValidating:!1,isLoading:q(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},errors:{},defaultValues:q(e.defaultValues)?void 0:e.defaultValues});t.current||(t.current={...Pe(e,(()=>o((e=>({...e}))))),formState:n});const i=t.current.control;return i._options=e,T({subject:i._subjects.state,next:e=>{O(e,i._proxyFormState,i._updateFormState,!0)&&o({...i._formState})}}),r.useEffect((()=>{e.values&&!ye(e.values,i._defaultValues)?i._reset(e.values,i._options.resetOptions):i._resetDefaultValues()}),[e.values,i]),r.useEffect((()=>{i._state.mount||(i._updateValid(),i._state.mount=!0),i._state.watch&&(i._state.watch=!1,i._subjects.state.next({...i._formState})),i._removeUnmounted()})),t.current.formState=C(n,i),t.current}},8699:(e,t,n)=>{"use strict";n.d(t,{V:()=>s});const r="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),o="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),i="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:{};class s{constructor(e,t){this.rules=[];let{finish:n}=t||{};function r(e){return/^@/.test(e)?[e]:e.split(/,\s*/)}function o(e,t,i,s){let a=[],l=/^@(\w+)\b/.exec(e[0]),c=l&&"keyframes"==l[1];if(l&&null==t)return i.push(e[0]+";");for(let n in t){let s=t[n];if(/&/.test(n))o(n.split(/,\s*/).map((t=>e.map((e=>t.replace(/&/,e))))).reduce(((e,t)=>e.concat(t))),s,i);else if(s&&"object"==typeof s){if(!l)throw new RangeError("The value of a property ("+n+") should be a primitive value.");o(r(n),s,a,c)}else null!=s&&a.push(n.replace(/_.*/,"").replace(/[A-Z]/g,(e=>"-"+e.toLowerCase()))+": "+s+";")}(a.length||c)&&i.push((!n||l||s?e:e.map(n)).join(", ")+" {"+a.join(" ")+"}")}for(let t in e)o(r(t),e[t],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let e=i[r]||1;return i[r]=e+1,"ͼ"+e.toString(36)}static mount(e,t){(e[o]||new l(e)).mount(Array.isArray(t)?t:[t])}}let a=null;class l{constructor(e){if(!e.head&&e.adoptedStyleSheets&&"undefined"!=typeof CSSStyleSheet){if(a)return e.adoptedStyleSheets=[a.sheet,...e.adoptedStyleSheets],e[o]=a;this.sheet=new CSSStyleSheet,e.adoptedStyleSheets=[this.sheet,...e.adoptedStyleSheets],a=this}else{this.styleTag=(e.ownerDocument||e).createElement("style");let t=e.head||e;t.insertBefore(this.styleTag,t.firstChild)}this.modules=[],e[o]=this}mount(e){let t=this.sheet,n=0,r=0;for(let o=0;o<e.length;o++){let i=e[o],s=this.modules.indexOf(i);if(s<r&&s>-1&&(this.modules.splice(s,1),r--,s=-1),-1==s){if(this.modules.splice(r++,0,i),t)for(let e=0;e<i.rules.length;e++)t.insertRule(i.rules[e],n++)}else{for(;r<s;)n+=this.modules[r++].rules.length;n+=i.rules.length,r++}}if(!t){let e="";for(let t=0;t<this.modules.length;t++)e+=this.modules[t].getRules()+"\n";this.styleTag.textContent=e}}}},7563:(e,t,n)=>{"use strict";n.d(t,{Ab:()=>s,Fr:()=>a,G$:()=>i,K$:()=>u,MS:()=>r,QY:()=>h,h5:()=>l,iD:()=>c,lK:()=>d,uj:()=>o});var r="-ms-",o="-moz-",i="-webkit-",s="comm",a="rule",l="decl",c="@media",u="@import",h="@supports",d="@keyframes"},2190:(e,t,n)=>{"use strict";n.d(t,{MY:()=>s});var r=n(7563),o=n(6686),i=n(6411);function s(e){return(0,i.cE)(a("",null,null,null,[""],e=(0,i.un)(e),0,[0],e))}function a(e,t,n,r,s,h,d,f,p){for(var m=0,g=0,y=d,v=0,b=0,w=0,x=1,S=1,k=1,C=0,M="",O=s,E=h,A=r,T=M;S;)switch(w=C,C=(0,i.lp)()){case 40:if(108!=w&&58==(0,o.uO)(T,y-1)){-1!=(0,o.Cw)(T+=(0,o.gx)((0,i.iF)(C),"&","&\f"),"&\f")&&(k=-1);break}case 34:case 39:case 91:T+=(0,i.iF)(C);break;case 9:case 10:case 13:case 32:T+=(0,i.Qb)(w);break;case 92:T+=(0,i.kq)((0,i.Ud)()-1,7);continue;case 47:switch((0,i.fj)()){case 42:case 47:(0,o.R3)(c((0,i.q6)((0,i.lp)(),(0,i.Ud)()),t,n),p);break;default:T+="/"}break;case 123*x:f[m++]=(0,o.to)(T)*k;case 125*x:case 59:case 0:switch(C){case 0:case 125:S=0;case 59+g:b>0&&(0,o.to)(T)-y&&(0,o.R3)(b>32?u(T+";",r,n,y-1):u((0,o.gx)(T," ","")+";",r,n,y-2),p);break;case 59:T+=";";default:if((0,o.R3)(A=l(T,t,n,m,g,s,f,M,O=[],E=[],y),h),123===C)if(0===g)a(T,t,A,A,O,h,y,f,E);else switch(99===v&&110===(0,o.uO)(T,3)?100:v){case 100:case 109:case 115:a(e,A,A,r&&(0,o.R3)(l(e,A,A,0,0,s,f,M,s,O=[],y),E),s,E,y,f,r?O:E);break;default:a(T,A,A,A,[""],E,0,f,E)}}m=g=b=0,x=k=1,M=T="",y=d;break;case 58:y=1+(0,o.to)(T),b=w;default:if(x<1)if(123==C)--x;else if(125==C&&0==x++&&125==(0,i.mp)())continue;switch(T+=(0,o.Dp)(C),C*x){case 38:k=g>0?1:(T+="\f",-1);break;case 44:f[m++]=((0,o.to)(T)-1)*k,k=1;break;case 64:45===(0,i.fj)()&&(T+=(0,i.iF)((0,i.lp)())),v=(0,i.fj)(),g=y=(0,o.to)(M=T+=(0,i.QU)((0,i.Ud)())),C++;break;case 45:45===w&&2==(0,o.to)(T)&&(x=0)}}return h}function l(e,t,n,s,a,l,c,u,h,d,f){for(var p=a-1,m=0===a?l:[""],g=(0,o.Ei)(m),y=0,v=0,b=0;y<s;++y)for(var w=0,x=(0,o.tb)(e,p+1,p=(0,o.Wn)(v=c[y])),S=e;w<g;++w)(S=(0,o.fy)(v>0?m[w]+" "+x:(0,o.gx)(x,/&\f/g,m[w])))&&(h[b++]=S);return(0,i.dH)(e,t,n,0===a?r.Fr:u,h,d,f)}function c(e,t,n){return(0,i.dH)(e,t,n,r.Ab,(0,o.Dp)((0,i.Tb)()),(0,o.tb)(e,2,-2),0)}function u(e,t,n,s){return(0,i.dH)(e,t,n,r.h5,(0,o.tb)(e,0,s),(0,o.tb)(e,s+1,-1),s)}},211:(e,t,n)=>{"use strict";n.d(t,{P:()=>s,q:()=>i});var r=n(7563),o=n(6686);function i(e,t){for(var n="",r=(0,o.Ei)(e),i=0;i<r;i++)n+=t(e[i],i,e,t)||"";return n}function s(e,t,n,s){switch(e.type){case r.K$:case r.h5:return e.return=e.return||e.value;case r.Ab:return"";case r.lK:return e.return=e.value+"{"+i(e.children,s)+"}";case r.Fr:e.value=e.props.join(",")}return(0,o.to)(n=i(e.children,s))?e.return=e.value+"{"+n+"}":""}},6411:(e,t,n)=>{"use strict";n.d(t,{FK:()=>a,JG:()=>h,QU:()=>O,Qb:()=>S,Tb:()=>d,Ud:()=>g,cE:()=>w,dH:()=>u,fj:()=>m,iF:()=>x,kq:()=>k,lp:()=>p,mp:()=>f,q6:()=>M,r:()=>v,tP:()=>y,un:()=>b});var r=n(6686),o=1,i=1,s=0,a=0,l=0,c="";function u(e,t,n,r,s,a,l){return{value:e,root:t,parent:n,type:r,props:s,children:a,line:o,column:i,length:l,return:""}}function h(e,t){return(0,r.f0)(u("",null,null,"",null,null,0),e,{length:-e.length},t)}function d(){return l}function f(){return l=a>0?(0,r.uO)(c,--a):0,i--,10===l&&(i=1,o--),l}function p(){return l=a<s?(0,r.uO)(c,a++):0,i++,10===l&&(i=1,o++),l}function m(){return(0,r.uO)(c,a)}function g(){return a}function y(e,t){return(0,r.tb)(c,e,t)}function v(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function b(e){return o=i=1,s=(0,r.to)(c=e),a=0,[]}function w(e){return c="",e}function x(e){return(0,r.fy)(y(a-1,C(91===e?e+2:40===e?e+1:e)))}function S(e){for(;(l=m())&&l<33;)p();return v(e)>2||v(l)>3?"":" "}function k(e,t){for(;--t&&p()&&!(l<48||l>102||l>57&&l<65||l>70&&l<97););return y(e,g()+(t<6&&32==m()&&32==p()))}function C(e){for(;p();)switch(l){case e:return a;case 34:case 39:34!==e&&39!==e&&C(l);break;case 40:41===e&&C(e);break;case 92:p()}return a}function M(e,t){for(;p()&&e+l!==57&&(e+l!==84||47!==m()););return"/*"+y(t,a-1)+"*"+(0,r.Dp)(47===e?e:p())}function O(e){for(;!v(m());)p();return y(e,a)}},6686:(e,t,n)=>{"use strict";n.d(t,{$e:()=>g,Cw:()=>u,Dp:()=>o,EQ:()=>l,Ei:()=>p,R3:()=>m,Wn:()=>r,f0:()=>i,fy:()=>a,gx:()=>c,tb:()=>d,to:()=>f,uO:()=>h,vp:()=>s});var r=Math.abs,o=String.fromCharCode,i=Object.assign;function s(e,t){return 45^h(e,0)?(((t<<2^h(e,0))<<2^h(e,1))<<2^h(e,2))<<2^h(e,3):0}function a(e){return e.trim()}function l(e,t){return(e=t.exec(e))?e[0]:e}function c(e,t,n){return e.replace(t,n)}function u(e,t){return e.indexOf(t)}function h(e,t){return 0|e.charCodeAt(t)}function d(e,t,n){return e.slice(t,n)}function f(e){return e.length}function p(e){return e.length}function m(e,t){return t.push(e),e}function g(e,t){return e.map(t).join("")}},270:(e,t,n)=>{"use strict";n.d(t,{Ue:()=>l});const r=e=>{let t;const n=new Set,r=(e,r)=>{const o="function"==typeof e?e(t):e;if(!Object.is(o,t)){const e=t;t=(null!=r?r:"object"!=typeof o)?o:Object.assign({},t,o),n.forEach((n=>n(t,e)))}},o=()=>t,i={setState:r,getState:o,subscribe:e=>(n.add(e),()=>n.delete(e)),destroy:()=>{console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}};return t=e(r,o,i),i};var o=n(7294),i=n(2798);const{useSyncExternalStoreWithSelector:s}=i,a=e=>{"function"!=typeof e&&console.warn("[DEPRECATED] Passing a vanilla store will be unsupported in a future version. Instead use `import { useStore } from 'zustand'`.");const t="function"==typeof e?(e=>e?r(e):r)(e):e,n=(e,n)=>function(e,t=e.getState,n){const r=s(e.subscribe,e.getState,e.getServerState||e.getState,t,n);return(0,o.useDebugValue)(r),r}(t,e,n);return Object.assign(n,t),n},l=e=>e?a(e):a},782:(e,t,n)=>{"use strict";n.d(t,{mW:()=>i});const r=new Map,o=e=>{const t=r.get(e);return t?Object.fromEntries(Object.entries(t.stores).map((([e,t])=>[e,t.getState()]))):{}},i=(e,t={})=>(n,i,a)=>{const{enabled:l,anonymousActionType:c,store:u,...h}=t;let d;try{d=(null==l||l)&&window.__REDUX_DEVTOOLS_EXTENSION__}catch(e){}if(!d)return l&&console.warn("[zustand devtools middleware] Please install/enable Redux devtools extension"),e(n,i,a);const{connection:f,...p}=((e,t,n)=>{if(void 0===e)return{type:"untracked",connection:t.connect(n)};const o=r.get(n.name);if(o)return{type:"tracked",store:e,...o};const i={connection:t.connect(n),stores:{}};return r.set(n.name,i),{type:"tracked",store:e,...i}})(u,d,h);let m=!0;a.setState=(e,t,r)=>{const s=n(e,t);if(!m)return s;const l=void 0===r?{type:c||"anonymous"}:"string"==typeof r?{type:r}:r;return void 0===u?(null==f||f.send(l,i()),s):(null==f||f.send({...l,type:`${u}/${l.type}`},{...o(h.name),[u]:a.getState()}),s)};const g=(...e)=>{const t=m;m=!1,n(...e),m=t},y=e(a.setState,i,a);if("untracked"===p.type?null==f||f.init(y):(p.stores[p.store]=a,null==f||f.init(Object.fromEntries(Object.entries(p.stores).map((([e,t])=>[e,e===p.store?y:t.getState()]))))),a.dispatchFromDevtools&&"function"==typeof a.dispatch){let e=!1;const t=a.dispatch;a.dispatch=(...n)=>{"__setState"!==n[0].type||e||(console.warn('[zustand devtools middleware] "__setState" action type is reserved to set state from the devtools. Avoid using it.'),e=!0),t(...n)}}return f.subscribe((e=>{var t;switch(e.type){case"ACTION":return"string"!=typeof e.payload?void console.error("[zustand devtools middleware] Unsupported action format"):s(e.payload,(e=>{if("__setState"!==e.type)a.dispatchFromDevtools&&"function"==typeof a.dispatch&&a.dispatch(e);else{if(void 0===u)return void g(e.state);1!==Object.keys(e.state).length&&console.error('\n [zustand devtools middleware] Unsupported __setState action format. \n When using \'store\' option in devtools(), the \'state\' should have only one key, which is a value of \'store\' that was passed in devtools(),\n and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }\n ');const t=e.state[u];if(null==t)return;JSON.stringify(a.getState())!==JSON.stringify(t)&&g(t)}}));case"DISPATCH":switch(e.payload.type){case"RESET":return g(y),void 0===u?null==f?void 0:f.init(a.getState()):null==f?void 0:f.init(o(h.name));case"COMMIT":return void 0===u?void(null==f||f.init(a.getState())):null==f?void 0:f.init(o(h.name));case"ROLLBACK":return s(e.state,(e=>{if(void 0===u)return g(e),void(null==f||f.init(a.getState()));g(e[u]),null==f||f.init(o(h.name))}));case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return s(e.state,(e=>{void 0!==u?JSON.stringify(a.getState())!==JSON.stringify(e[u])&&g(e[u]):g(e)}));case"IMPORT_STATE":{const{nextLiftedState:n}=e.payload,r=null==(t=n.computedStates.slice(-1)[0])?void 0:t.state;if(!r)return;return g(void 0===u?r:r[u]),void(null==f||f.send(null,n))}case"PAUSE_RECORDING":return m=!m}return}})),y},s=(e,t)=>{let n;try{n=JSON.parse(e)}catch(e){console.error("[zustand devtools middleware] Could not parse the received json",e)}void 0!==n&&t(n)}},8753:(e,t,n)=>{"use strict";n.d(t,{n:()=>o});var r=n(2902);const o=e=>(t,n,o)=>(o.setState=(e,n,...o)=>{const i="function"==typeof e?(0,r.Uy)(e):e;return t(i,n,...o)},e(o.setState,n,o))},6248:(e,t,n)=>{"use strict";function r(e,t){if(Object.is(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[n,r]of e)if(!Object.is(r,t.get(n)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r=0;r<n.length;r++)if(!Object.prototype.hasOwnProperty.call(t,n[r])||!Object.is(e[n[r]],t[n[r]]))return!1;return!0}n.d(t,{X:()=>r})}}]);PKCA#]#��kJkJRcomponents/com_sppagebuilder/assets/editor/dist/js/254.e3d84935825c1693bda8.min.jsnu�[���/*! For license information please see 254.e3d84935825c1693bda8.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[254],{3254:(t,e,n)=>{n.d(e,{Z:()=>I});var r=n(6626),o=n(3871),i=n(7264),a=n(824),l=n(4185),c=n(917),s=n(1234),u=n(680),f=n(4101),d=n(5944),p={100:"Thin",200:"ExtraLight",300:"Light",400:"Regular",500:"Medium",600:"SemiBold",700:"Bold",800:"ExtraBold",900:"Black"};const h=function(t){var e=t.font,n=t.variant,f=t.isSelected,h=t.isInstalled,v=t.onChange,g=t.onRemove,m=(0,s.$)(),b=m("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_CONTENT_TEXT"),w=(0,u.vn)(n),_=w.weight,O=void 0===_?400:_,E=w.style,x=[O];return 400!==O&&x.push(E),p[O]&&x.unshift(p[O]),(0,d.BX)("div",{css:y.wrapper(f),children:[(0,d.tZ)("div",{css:y.contentWrapper,children:(0,d.BX)("div",{css:y.content,children:[(0,d.BX)("div",{css:(0,c.iv)("display:flex;gap:",a.W0[4],";align-items:center;;label:FontVariantCard;"),children:[(0,d.tZ)("span",{css:l.c.caption("medium"),children:x.join(" ")}),h&&(0,d.tZ)(r.Z,{variation:"success",badgeCss:(0,c.iv)(l.c.tiny(),";color:",a.qo.text.hover,";;label:FontVariantCard;"),children:"Added"})]}),(0,d.tZ)("h4",{css:y.fontText(e.family,O,E),children:b})]})}),(0,d.tZ)(o.Z,{variant:"secondary",buttonCss:y.selectDeselectButton({isSelected:f,isInstalled:h}),onClick:function(t){t.stopPropagation(),h?g():v()},children:h||f?(0,d.BX)("div",{css:y.selectButton,children:[(0,d.tZ)(i.Z,{name:"minus"})," ",(0,d.tZ)("span",{children:m("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_DESELECT")})]}):(0,d.BX)("div",{css:y.selectButton,children:[(0,d.tZ)(i.Z,{name:"plus"})," ",m("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_SELECT")]})})]})};var v={name:"a3qq9n-selectDeselectButton",styles:"visibility:hidden;label:selectDeselectButton;"},y={wrapper:function(t){return(0,c.iv)("padding:",a.W0[16]," ",a.W0[24],";background-color:",a.qo.background.white,";border-radius:",a.E0[6],";display:flex;justify-content:space-between;align-items:center;:hover{button{visibility:visible;}}",!t&&(0,c.iv)(":hover{background-color:",a.qo.background.active,";};label:wrapper;")," ",t&&(0,c.iv)("background-color:",(0,f.m4)(a.qo.base.highlight,.2),";;label:wrapper;"),";;label:wrapper;")},contentWrapper:(0,c.iv)("display:flex;align-items:start;gap:",a.W0[12],";;label:contentWrapper;"),content:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[8],";;label:content;"),fontText:function(t,e,n){return(0,c.iv)(l.c.heading4()," color:",a.qo.text.default,";font-family:",t,";font-size:",a.W0[20],";",e&&(0,c.iv)("font-weight:",e,";;label:fontText;")," ",n&&(0,c.iv)("font-style:",n,";;label:fontText;"),";;label:fontText;")},selectButton:(0,c.iv)("display:flex;gap:",a.W0[6],";color:",a.qo.text.default,";span{color:",a.qo.icon.default,";};label:selectButton;"),selectDeselectButton:function(t){var e=t.isSelected,n=t.isInstalled;return(0,c.iv)("svg{color:",a.qo.icon.default,";}",(e||n)&&v,";;label:selectDeselectButton;")}},g=n(7839),m=n(1921),b=n(7294),w=n(1709),_=n(9781);function O(t){return O="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},O(t)}function E(){E=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,r=Object.defineProperty||function(t,e,n){t[e]=n.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",l=o.toStringTag||"@@toStringTag";function c(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{c({},"")}catch(t){c=function(t,e,n){return t[e]=n}}function s(t,e,n,o){var i=e&&e.prototype instanceof d?e:d,a=Object.create(i.prototype),l=new T(o||[]);return r(a,"_invoke",{value:_(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=s;var f={};function d(){}function p(){}function h(){}var v={};c(v,i,(function(){return this}));var y=Object.getPrototypeOf,g=y&&y(y(B([])));g&&g!==e&&n.call(g,i)&&(v=g);var m=h.prototype=d.prototype=Object.create(v);function b(t){["next","throw","return"].forEach((function(e){c(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(r,i,a,l){var c=u(t[r],t,i);if("throw"!==c.type){var s=c.arg,f=s.value;return f&&"object"==O(f)&&n.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,l)}),(function(t){o("throw",t,a,l)})):e.resolve(f).then((function(t){s.value=t,a(s)}),(function(t){return o("throw",t,a,l)}))}l(c.arg)}var i;r(this,"_invoke",{value:function(t,n){function r(){return new e((function(e,r){o(t,n,e,r)}))}return i=i?i.then(r,r):r()}})}function _(t,e,n){var r="suspendedStart";return function(o,i){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===o)throw i;return{value:void 0,done:!0}}for(n.method=o,n.arg=i;;){var a=n.delegate;if(a){var l=x(a,n);if(l){if(l===f)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===r)throw r="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);r="executing";var c=u(t,e,n);if("normal"===c.type){if(r=n.done?"completed":"suspendedYield",c.arg===f)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(r="completed",n.method="throw",n.arg=c.arg)}}}function x(t,e){var n=e.method,r=t.iterator[n];if(void 0===r)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),f;var o=u(r,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function L(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function S(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function T(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(L,this),this.reset(!0)}function B(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var r=-1,o=function e(){for(;++r<t.length;)if(n.call(t,r))return e.value=t[r],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:C}}function C(){return{value:void 0,done:!0}}return p.prototype=h,r(m,"constructor",{value:h,configurable:!0}),r(h,"constructor",{value:p,configurable:!0}),p.displayName=c(h,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,c(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},b(w.prototype),c(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,n,r,o,i){void 0===i&&(i=Promise);var a=new w(s(e,n,r,o),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(m),c(m,l,"Generator"),c(m,i,(function(){return this})),c(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var r in e)n.push(r);return n.reverse(),function t(){for(;n.length;){var r=n.pop();if(r in e)return t.value=r,t.done=!1,t}return t.done=!0,t}},t.values=B,T.prototype={constructor:T,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(S),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function r(n,r){return a.type="throw",a.arg=t,e.next=n,r&&(e.method="next",e.arg=void 0),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return r("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),c=n.call(i,"finallyLoc");if(l&&c){if(this.prev<i.catchLoc)return r(i.catchLoc,!0);if(this.prev<i.finallyLoc)return r(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return r(i.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return r(i.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),S(n),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var r=n.completion;if("throw"===r.type){var o=r.arg;S(n)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:B(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),f}},t}function x(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function L(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?x(Object(n),!0).forEach((function(e){S(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):x(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function S(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==O(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var r=n.call(t,"string");if("object"!==O(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===O(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function T(t,e,n,r,o,i,a){try{var l=t[i](a),c=l.value}catch(t){return void n(t)}l.done?e(c):Promise.resolve(c).then(r,o)}function B(t){return function(){var e=this,n=arguments;return new Promise((function(r,o){var i=t.apply(e,n);function a(t){T(i,r,o,a,l,"next",t)}function l(t){T(i,r,o,a,l,"throw",t)}a(void 0)}))}}function C(t){return function(t){if(Array.isArray(t))return W(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||D(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function P(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,o,i,a,l=[],c=!0,s=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=i.call(n)).done)&&(l.push(r.value),l.length!==e);c=!0);}catch(t){s=!0,o=t}finally{try{if(!c&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(s)throw o}}return l}}(t,e)||D(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function D(t,e){if(t){if("string"==typeof t)return W(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?W(t,e):void 0}}function W(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var A=function(t){var e=t.closeModal,n=t.title,r=t.font,i=P((0,b.useState)([]),2),a=i[0],c=i[1],f=P((0,b.useState)(r.installed_variants),2),p=f[0],v=f[1],y=(0,s.$)(),m=(0,g.nZ)(),w=0===a.length,O=new Set([].concat(C(a),C(p))).size>=r.variants.length;return(0,d.tZ)(_.Z,{onClose:function(){return e({action:"CLOSE"})},title:n,wrapperCss:j.modalWrapperCss,contentCss:j.contentCss,children:(0,d.BX)("div",{css:j.wrapper,children:[(0,d.BX)("div",{css:j.headerAndVariants(a.length>0),children:[(0,d.BX)("div",{css:j.header,children:[(0,d.tZ)("h1",{css:j.familyName(r.family),children:"AaLl"}),(0,d.BX)("div",{css:j.content,children:[(0,d.tZ)("h3",{css:l.c.heading2("medium"),children:r.family}),(0,d.tZ)("p",{css:l.c.body(),children:y("COM_SPPAGEBUILDER_EDITOR_FONT_DESCRIPTION")})]})]}),(0,d.tZ)("div",{css:j.variantList,children:r.variants.map((function(t){return(0,d.tZ)(h,{font:r,variant:t,isInstalled:!!p.includes(t),isSelected:a.includes(t),onChange:function(){c((function(e){return e.includes(t)?e.filter((function(e){return e!==t})):[].concat(C(e),[t])}))},onRemove:function(){v((function(e){return e.includes(t)?e.filter((function(e){return e!==t})):[].concat(C(e),[t])}))}},t)}))})]}),(0,d.BX)("div",{css:j.footerWrapper,children:[(0,d.BX)("div",{css:j.selectionAction,children:[(0,d.tZ)(o.Z,{variant:"secondary",disabled:O,onClick:function(){c(r.variants)},children:y("COM_SPPAGEBUILDER_EDITOR_SELECT_ALL_FONTS")}),(0,d.tZ)(o.Z,{variant:"text",disabled:w,onClick:function(){c([])},children:y("COM_SPPAGEBUILDER_EDITOR_DESELECT_ALL_FONTS")})]}),(a.length>0||p.length!==r.installed_variants.length)&&(0,d.tZ)("div",{children:(0,d.tZ)(o.Z,{onClick:B(E().mark((function t(){return E().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,m.mutateAsync({family_name:r.family,data:JSON.stringify(L(L({},r),{},{variants:C(new Set([].concat(C(p),C(a))))})),type:"google",url:(0,u.Js)(r)});case 2:e();case 3:case"end":return t.stop()}}),t)}))),loading:m.isLoading,children:y(r.installed_variants.length?"COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_UPDATE_FONT_STYLES":"COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_ADD_FONT_STYLES",{count:a.length},a.length)})})]})]})})},j={modalWrapperCss:{name:"1v69jya-modalWrapperCss",styles:"max-width:934px;label:modalWrapperCss;"},contentCss:{name:"cozuwt-contentCss",styles:"width:934px;display:flex;label:contentCss;"},wrapper:{name:"1smul8y-wrapper",styles:"width:100%;position:relative;label:wrapper;"},selectionAction:(0,c.iv)("display:flex;justify-content:end;gap:",a.W0[8],";align-items:center;;label:selectionAction;"),headerAndVariants:function(t){return(0,c.iv)("padding:",a.W0[32]," ",a.W0[24],";height:min(70vh, 700px);",m.iZ.overflowYAuto," margin-bottom:",a.W0[32],";",t&&(0,c.iv)("padding-bottom:",a.W0[72],";;label:headerAndVariants;"),";;label:headerAndVariants;")},header:(0,c.iv)("padding:",a.W0[32],";display:grid;grid-template-columns:repeat(2, 1fr);;label:header;"),familyName:function(t){return(0,c.iv)("font-family:",t,";font-style:normal;font-weight:400;font-size:120px;line-height:58px;color:",a.qo.text.neutral,";display:flex;justify-content:center;align-items:center;;label:familyName;")},content:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[16],";;label:content;"),variantList:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[16],";;label:variantList;"),footerWrapper:(0,c.iv)("display:flex;justify-content:space-between;align-items:center;gap:",a.W0[8],";padding:",a.W0[8]," ",a.W0[24],";background-color:",a.qo.background.white,";border-top:1px solid ",a.qo.stroke.neutral,";position:absolute;bottom:0;left:0;width:100%;;label:footerWrapper;")};const I=function(t){var e,n=t.font,i=t.isChecked,f=t.installed,p=void 0!==f&&f,h=n.family,v=n.variants,y=(0,s.$)(),m=(0,g.nZ)(),b=(0,g.a4)(),_=y("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_CONTENT_TEXT"),O=(e=(0,w.d)().showModal,function(t){return e({component:A,props:t})}),E=(0,u.Js)(n),x="@import url(".concat(E,");");return(0,d.tZ)(d.HY,{children:(0,d.BX)("div",{css:k.wrapper(i),children:[!p&&(0,d.tZ)("style",{children:x}),(0,d.BX)("div",{css:k.contentWrapper,children:[(0,d.tZ)("div",{css:k.familyWrapper,children:(0,d.tZ)("span",{css:l.c.caption("medium"),children:h})}),(0,d.tZ)("div",{css:k.fontText(h),children:_})]}),(0,d.BX)("div",{css:k.footerWrapper,children:[v.length>0&&(0,d.BX)("div",{css:k.styleCount,children:[v.length," styles"]}),(0,d.tZ)(o.Z,{buttonCss:k.installButton(!!n.installed_variants.length),variant:p?"error":"primary",loading:m.isLoading||b.isLoading,onClick:function(t){t.stopPropagation(),p?b.mutate({type:n.type,family_name:n.family}):O({title:y("COM_SPPAGEBUILDER_EDITOR_FONT_STYLES"),font:n})},children:y(p?"COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_UNINSTALL":"COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_ADD")}),!!n.installed_variants.length&&(0,d.tZ)("div",{"data-badge":!0,children:(0,d.tZ)(r.Z,{variation:"success",badgeCss:(0,c.iv)(l.c.tiny(),";color:",a.qo.text.hover,";;label:FontCard;"),children:y("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_N_ITEMS_ADDED",{count:n.installed_variants.length})})})]})]})})};var Z={name:"94jt3m-installButton",styles:"display:none;label:installButton;"},k={wrapper:function(t){return(0,c.iv)(m.iZ.resetButton," background-color:",a.qo.background.white,";padding:",a.W0[12]," ",a.W0[8]," ",a.W0[8]," ",a.W0[12],";border-radius:",a.E0[5],";box-shadow:",a.AF.base,";width:100%;height:220px;display:flex;flex-direction:column;justify-content:space-between;cursor:default;position:relative;&::before{content:'';position:absolute;inset:0;transition:background-color 0.3s ease-in-out;}&:hover{button{display:inline;opacity:1;}[data-badge]{display:none;}}",t&&(0,c.iv)("background-color:",(0,f.m4)(a.qo.base.highlight,.2),";;label:wrapper;"),";;label:wrapper;")},contentWrapper:(0,c.iv)("display:flex;flex-direction:column;gap:",a.W0[16],";;label:contentWrapper;"),familyWrapper:(0,c.iv)("display:flex;gap:",a.W0[8],";align-items:center;;label:familyWrapper;"),fontText:function(t){return(0,c.iv)(l.c.heading4()," color:",a.qo.text.default,";font-family:",t,";font-size:",a.W0[20],";max-height:135px;overflow:hidden;;label:fontText;")},styleCount:(0,c.iv)(l.c.tiny()," color:",a.qo.text.neutral,";;label:styleCount;"),footerWrapper:{name:"6sdu0t-footerWrapper",styles:"width:100%;display:flex;justify-content:space-between;align-items:center;min-height:32px;label:footerWrapper;"},installButton:function(t){return(0,c.iv)("margin-left:auto;opacity:0;",t&&Z,";;label:installButton;")}}}}]);PKCA#]��W_��Rcomponents/com_sppagebuilder/assets/editor/dist/js/513.9113795fa95de10af269.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[513],{7513:(e,t,n)=>{n.r(t),n.d(t,{default:()=>C});var r=n(6626),a=n(3871),i=n(2847),o=n(824),s=n(4185),u=n(917),c=n(1234),l=n(3417),p=n(1731),d=n(6537),g=n(6492),_=n(5945),b=n(4469),E=n(5501),f=n(7602);function m(e){return m="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},m(e)}function y(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function v(e,t,n){return(t=function(e){var t=function(e,t){if("object"!==m(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!==m(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===m(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var A=function(e){return E.u.put(d.H.LANGUAGE,function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?y(Object(n),!0).forEach((function(t){v(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):y(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}({},e))},h=function(e){return E.u.delete(d.H.LANGUAGE,{data:e})},S=n(5944);const G=function(e){var t=e.language,n=e.index,o=(0,c.$)(),s=function(){var e=(0,p.p)().showToast,t=(0,_.NL)(),n=(0,c.$)();return(0,b.D)({mutationFn:A,onSuccess:function(){t.invalidateQueries(["Languages"]),e({type:"success",message:n("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_SUCCESS_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})}(),u=function(){var e=(0,p.p)().showToast,t=(0,_.NL)(),n=(0,c.$)();return(0,b.D)({mutationFn:h,onSuccess:function(){t.invalidateQueries(["Languages"]),e({type:"success",message:n("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_UNINSTALL_SUCCESS_MESSAGE")})},onError:function(t){e({type:"danger",message:t.message})}})}();return(0,S.tZ)(l.Z,{children:(0,S.BX)("div",{css:O.languageItem,children:[(0,S.BX)("div",{css:O.title,children:[(0,S.tZ)("span",{children:"".concat(n+1,". ")}),(0,S.tZ)("img",{src:t.thumbnail,alt:t.title}),t.title]}),(0,S.tZ)("div",{css:O.statusWrapper,children:(0,S.tZ)(r.Z,{variation:-1!==t.state?"success":"default",children:t.status})}),(0,S.tZ)("div",{css:O.version,children:t.version}),(0,S.tZ)("div",{css:O.buttonWrapper,children:f.Eu?(0,S.tZ)(i.Z,{}):-1===t.state?(0,S.tZ)(a.Z,{buttonCss:O.buttonCss(!1),loading:s.isLoading,onClick:function(){s.mutate({languageCode:t.lang_key})},children:o("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_BUTTON_TEXT_INSTALL")}):!0===t.updatable?(0,S.tZ)(a.Z,{buttonCss:O.buttonCss(!1),variant:"secondary",loading:s.isLoading,onClick:function(){s.mutate({languageCode:t.lang_key})},children:o("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_BUTTON_TEXT_UPDATE")}):(0,S.tZ)(a.Z,{buttonCss:O.buttonCss(!1,!0),onClick:function(){return u.mutate({languageCode:t.lang_tag})},loading:u.isLoading,variant:"text",children:(0,S.tZ)("strong",{children:o("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_BUTTON_TEXT_UNINSTALL")})})})]})},t.id)};var O={languageItem:(0,u.iv)("display:grid;grid-template-columns:auto repeat(3, 150px);align-items:center;gap:",o.W0[8],";padding:",o.W0[16]," ",o.W0[24],";",o.Uo.tablet,"{grid-template-columns:auto repeat(3, 130px);};label:languageItem;"),title:(0,u.iv)(s.c.heading6("medium"),";line-height:",o.Nv[20],";display:flex;align-items:center;gap:",o.W0[12],";img{height:14px;width:24px;}span{",s.c.heading6(),";};label:title;"),version:(0,u.iv)(s.c.heading6(),";text-align:center;;label:version;"),buttonWrapper:{name:"btkeff-buttonWrapper",styles:"display:grid;place-items:end;label:buttonWrapper;"},buttonCss:function(e,t){return(0,u.iv)("display:flex;justify-content:center;align-items:center;padding:",o.W0[6]," ",o.W0[24],";width:102px;",e?"pointer-events: none;":""," ",t&&(0,u.iv)("&:hover{color:",o.qo.text.error,";svg{color:",o.qo.icon.error,";}};label:buttonCss;"),";;label:buttonCss;")},statusWrapper:{name:"18ch49o-statusWrapper",styles:"display:grid;place-items:center;label:statusWrapper;"}},P=n(7579),L=n(3039),T=n(7894),U=n(6511);const C=function(){var e,t=(0,c.$)(),n=(e=(0,p.p)().showToast,(0,g.a)({queryKey:["Languages"],queryFn:function(){return E.u.get(d.H.LANGUAGE).then((function(e){return(0,f.zt)(e.data)}))},onError:function(t){e({type:"danger",message:t.message})}})),r=n.data;return(0,S.BX)(L.Z,{children:[(0,S.tZ)(T.Z,{title:t("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_TITLE"),subtitle:t("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_SUB_TITLE")}),(0,S.tZ)(P.Z,{children:(0,S.tZ)(U.Z,{query:n,children:(0,S.BX)("div",{css:D.wrapper,children:[0===(null==r?void 0:r.length)&&(0,S.tZ)("div",{css:D.noDataFoundWrapper,children:t("COM_SPPAGEBUILDER_EDITOR_LANGUAGES_PAGE_NO_DATA_FOUND")}),null==r?void 0:r.map((function(e,t){return(0,S.tZ)(G,{language:e,index:t},e.id)}))]})})})]})};var D={wrapper:(0,u.iv)("display:flex;flex-direction:column;gap:",o.W0[16],";padding:",o.W0[24]," 0;;label:wrapper;"),noDataFoundWrapper:{name:"mwc949-noDataFoundWrapper",styles:"display:grid;place-items:center;label:noDataFoundWrapper;"}}}}]);PKCA#]��i���\components/com_sppagebuilder/assets/editor/dist/js/4.cc64a22516ca6d64a880.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]���(=(=Pcomponents/com_sppagebuilder/assets/editor/dist/js/4.e21cee9be6286f430bce.min.jsnu�[���/*! For license information please see 4.e21cee9be6286f430bce.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[4],{1004:(t,e,n)=>{n.r(e),n.d(e,{default:()=>sr});var o=n(7264),r=n(3106),i=n(824),a=n(4185),l=n(9752),d=n(917),c=n(1234),u=n(7230),s=n(3891),p=n(2967),f=n(7602);function v(t){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v(t)}var y=function(t){return"object"===v(t)&&null!==t&&!("id"in t)&&"name"in t},b=n(1921),h=n(3935),m=n(5944),g={sideEffects:(0,l.Ai)({styles:{active:{opacity:"0.5"}}})},I=[r.t.Section,r.t.NestedRow];const x=function(t){var e=t.content,n=(0,c.$)(),i=(0,u.x)((function(t){return t.addonStructure}));return e?(0,h.createPortal)((0,m.tZ)(l.y9,{dropAnimation:g,children:function(){if(y(e))return(0,m.BX)("div",{css:S.addonItem,children:[(0,m.tZ)("span",{dangerouslySetInnerHTML:{__html:e.icon}}),(0,m.tZ)("span",{children:e.title})]});if((0,s.$F)(e)&&e.type===r.Dw.SavedAddonElement)return(0,m.BX)("div",{css:S.savedAddon,children:[(0,m.tZ)("span",{"data-drag-icon":!0,children:(0,m.tZ)(o.Z,{name:"dragger",height:24,width:24})}),(0,m.tZ)("span",{"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:(t=e,a=(0,f.Rx)(t.code).name,i[a].icon)}}),(0,m.tZ)("span",{"data-addon-title":!0,children:e.title})]});var t,a;if(e.type===r.Dw.SavedSectionElement)return(0,m.BX)("div",{css:S.savedAddon,children:[(0,m.tZ)("span",{"data-drag-icon":!0,children:(0,m.tZ)(o.Z,{name:"dragger",height:24,width:24})}),(0,m.tZ)("span",{"data-addon-icon":!0,children:(0,m.tZ)(o.Z,{name:"blocksDuo"})}),(0,m.tZ)("span",{"data-addon-title":!0,children:e.title})]});if((0,p.L)(e)&&e.type===r.Dw.BlockElement)return(0,m.BX)("div",{css:S.sectionThumb,children:[(0,m.tZ)("div",{css:S.thumbImage,children:(0,m.tZ)("img",{src:e.thumb,alt:e.title,draggable:!1})}),(0,m.tZ)("div",{css:S.thumbFooter,children:e.title})]});if((0,f.r3)(I,e.type)){var l=e.type===r.t.NestedRow?"COM_SPPAGEBUILDER_EDITOR_OVERLAY_NESTED_ROW_TITLE":"COM_SPPAGEBUILDER_EDITOR_OVERLAY_SECTION_TITLE";return(0,m.BX)("div",{css:S.placedAddon(e.type),children:[(0,m.BX)("div",{css:S.iconAndTitle(e.type),children:[(0,m.tZ)(o.Z,{name:"dragger"}),(0,m.tZ)("span",{children:n(l)})]}),(0,m.tZ)("span",{css:S.settingsButton,children:(0,m.tZ)(o.Z,{name:"sliders"})})]})}return e.type===r.t.Column?(0,m.BX)("div",{css:S.placedAddon(e.type),children:[(0,m.BX)("div",{css:S.iconAndTitle(e.type),children:[(0,m.tZ)(o.Z,{name:"columnsAlt"}),(0,m.tZ)("span",{children:n("COM_SPPAGEBUILDER_EDITOR_OVERLAY_COLUMN_TITLE")})]}),(0,m.tZ)("button",{type:"button",css:S.dragHandler(e.type),"data-addon-drag-handler":!0,children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})})]}):(0,m.BX)("div",{css:S.placedAddon(e.type),children:[(0,m.BX)("div",{css:S.iconAndTitle(e.type),children:[(0,m.tZ)("span",{dangerouslySetInnerHTML:{__html:e.icon}}),(0,m.tZ)("span",{children:e.title})]}),(0,m.tZ)("button",{type:"button",css:S.dragHandler(e.type),"data-addon-drag-handler":!0,children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})})]})}()}),document.body):null};var E={name:"ebhkkd-placedAddon",styles:"border-top-left-radius:0;label:placedAddon;"},S={addonItem:(0,d.iv)("display:flex;align-items:center;background-color:",i.qo.base.white,";border-radius:",i.E0[5],";box-shadow:",i.AF.dropzone,";padding:",i.W0[8],";gap:",i.W0[8],";cursor:grab;&>span:first-of-type{svg,img{width:18px;height:18px;}}&>span:last-of-type{",a.c.caption(),";",b.iZ.textEllipsis,";};label:addonItem;"),savedAddon:(0,d.iv)("display:flex;align-items:center;background-color:",i.qo.base.white,";border-radius:",i.E0[5],";box-shadow:",i.AF.addon,";padding:",i.W0[6]," ",i.W0[6]," ",i.W0[6]," ",i.W0[24],";gap:",i.W0[8],";cursor:grab;position:relative;svg{color:",i.qo.icon.default,";}[data-addon-icon]{line-height:1;>svg{height:16px;width:16px;}}[data-drag-icon]{position:absolute;left:",i.W0[2],";top:0;height:100%;display:flex;align-items:center;}[data-addon-title]{",a.c.body(),";",b.iZ.textEllipsis,";color:",i.qo.text.default,";};label:savedAddon;"),placedAddon:function(t){return(0,d.iv)("width:250px;height:40px;background-color:",i.qo.base.white,";border:1px solid ",i.qo.stroke.success,";border-radius:",i.E0[2],";position:relative;padding:",i.W0[16],";box-shadow:",i.AF.dropzone,";display:flex;justify-content:space-between;align-items:center;",!(0,f.r3)(I,t)&&E," ",(0,f.r3)(I,t)&&(0,d.iv)("width:100%;border-color:",i.qo.stroke.primary,";border-radius:",i.E0[6],";height:80px;;label:placedAddon;")," ",t===r.t.Column&&(0,d.iv)("border-color:",i.qo.stroke.primary,";height:42px;;label:placedAddon;")," ",t===r.t.Div&&(0,d.iv)("border-color:",i.qo.alternate.div,";;label:placedAddon;"),";;label:placedAddon;")},dragHandler:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",i.qo.base.success,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);cursor:grab!important;",t===r.t.Column&&(0,d.iv)("background-color:",i.qo.stroke.primary,";;label:dragHandler;")," ",t===r.t.Div&&(0,d.iv)("background-color:",i.qo.alternate.div,";;label:dragHandler;"),";;label:dragHandler;")},iconAndTitle:function(t){return(0,d.iv)("display:flex;gap:",i.W0[8],";width:100%;height:100%;align-items:center;cursor:grab;svg{width:18px;height:18px;color:",i.qo.stroke.success,";",(0,f.r3)(I,t)&&(0,d.iv)(":first-of-type{color:",i.qo.icon.default,";height:32px;width:32px;};label:iconAndTitle;")," ",((0,f.r3)(I,t)||t===r.t.Column)&&(0,d.iv)("color:",i.qo.stroke.primary,";;label:iconAndTitle;")," ",t===r.t.Div&&(0,d.iv)("color:",i.qo.alternate.div,";;label:iconAndTitle;"),";}&>span{",a.c.caption(),";",(0,f.r3)(I,t)&&(0,d.iv)(a.c.heading5(),";;label:iconAndTitle;"),";};label:iconAndTitle;")},settingsButton:(0,d.iv)(b.iZ.centeredFlex,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[6],";width:32px;height:32px;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;};label:settingsButton;"),sectionThumb:(0,d.iv)("background-color:",i.qo.background.white,";border-radius:",i.E0[4],";box-shadow:",i.AF.addonHover,";cursor:grab;;label:sectionThumb;"),thumbImage:(0,d.iv)("height:80px;width:100%;background-color:",i.qo.background.neutral,";img{width:100%;height:100%;object-fit:contain;};label:thumbImage;"),thumbFooter:(0,d.iv)(a.c.tiny(),";padding:",i.W0[2]," ",i.W0[8],";;label:thumbFooter;")},O=n(2811),w=n(2739),D=n(3896),A=n(2238),_=n(4285),P=function(t){var e=t.disable,n=void 0!==e&&e,o=t.isDragging,r=t.transition,i=t.transform;return n?null:{transform:_.ux.Transform.toString(i),transition:r,opacity:o?.5:void 0}},C=function(t){return(0,f.Kn)(t)&&(0,f.nr)(t,"id")&&(0,f.nr)(t,"settings")},T=n(7294);function L(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function j(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?L(Object(n),!0).forEach((function(e){R(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):L(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function R(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==k(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==k(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===k(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function B(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Z(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Z(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function k(t){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},k(t)}var W=function(t){var e,n,o,i,a,l,d,c,u,s,p,v=t.active,b=t.over,h=null==v?void 0:v.data.current,m=null==b?void 0:b.data.current,g=null;if([r.t.DCCollectionItemAddon,r.t.DCCollectionAddonEmptyChild].includes(null==m?void 0:m.type))return!(r.LP[r.t.DCCollectionItemAddon].rejected.includes(null==h||null===(d=h.content)||void 0===d?void 0:d.name)||r.LP[r.t.DCCollectionAddonEmptyChild].rejected.includes(null==h||null===(c=h.content)||void 0===c?void 0:c.name)||null!=h&&null!==(u=h.content)&&void 0!==u&&null!==(s=u.name)&&void 0!==s&&s.startsWith("easystore_"));if((null==m?void 0:m.type)===r.t.TableItem&&y(null==h?void 0:h.content)){var I,x=(null!==(I=null==h?void 0:h.content)&&void 0!==I?I:{}).name;if((0,f.r3)(["accordion","tab","table_advanced"],x))return!1}if(y(null==h?void 0:h.content)&&(p=null!==(e=null==h||null===(n=h.content)||void 0===n?void 0:n.name)&&void 0!==e?e:"",(0,f.$K)(p)&&p.startsWith(r.HZ.prefix))&&(null==m?void 0:m.type)===r.t.CollectionItemAddon){var E,S,O,w,_=D.o.getState().page,P=m.sectionIndex,T=m.columnIndex,L=m.addonIndex,j=null==_||null===(E=_[P])||void 0===E||null===(S=E.columns)||void 0===S||null===(O=S[T])||void 0===O||null===(w=O.addons)||void 0===w?void 0:w[L];return!!j&&j.name!==r.G2}if(y(null==h?void 0:h.content)&&function(t){return(0,f.$K)(t)&&t.startsWith(r.du.prefix)}(null!==(o=null==h||null===(i=h.content)||void 0===i?void 0:i.name)&&void 0!==o?o:"")&&(null==m?void 0:m.type)===r.t.CollectionItemAddon){var R,B,Z,W,N=D.o.getState().page,U=m.sectionIndex,q=m.columnIndex,G=m.addonIndex,$=null==N||null===(R=N[U])||void 0===R||null===(B=R.columns)||void 0===B||null===(Z=B[q])||void 0===Z||null===(W=Z.addons)||void 0===W?void 0:W[G];return!!$&&$.name!==r.oA.productList}if((0,f.$K)(m)){var M=m.type;(0,f.r3)([r.t.Addon,r.t.Div,r.t.DeepAddon],M)&&C(m.content)&&m.content.parent&&(M=r.t.EmptyDivChild),g=(0,f.r3)((0,f.zt)(r.Dw),null==h?void 0:h.type)?r.LP[M]:r.IR[M]}if(!(0,f.$K)(g))return!1;if(y(null==h?void 0:h.content)&&(0,A.a4)(null!==(a=null==h?void 0:h.content.name)&&void 0!==a?a:"")&&(null==m?void 0:m.type)===r.t.CollectionItemAddon)return!1;if(y(null==h?void 0:h.content)&&(0,A.K0)(null!==(l=null==h?void 0:h.content.name)&&void 0!==l?l:"")&&(null==m?void 0:m.type)!==r.t.CollectionItemAddon)return!1;var K=function(t){return"object"===k(t)&&null!==t&&"name"in t},V=g.accepted.length>0&&((0,f.r3)(g.accepted,null==h?void 0:h.type)||K(null==h?void 0:h.content)&&(0,f.r3)(g.accepted,null==h?void 0:h.content.name)),F=g.rejected.length>0&&!(0,f.r3)(g.rejected,null==h?void 0:h.type)&&(!K(null==h?void 0:h.content)||K(null==h?void 0:h.content)&&!(0,f.r3)(g.rejected,null==h?void 0:h.content.name));return V||F||r.Eb in g};const N=function(t){var e,n=t.id,o=t.data,r=t.disabled,i=void 0!==r&&r,a=t.isHidden,d=void 0!==a&&a,u=t.children,s=t.customStyle,p=(0,c.$)(),f=(0,l.Zj)({id:n,data:o,disabled:i}),v=f.setNodeRef,y=f.isOver,b=f.active,h=f.over,g=W({active:b,over:h});return(0,m.tZ)("div",{css:[s,U.container(y,d,g),";label:Droppable;"],ref:v,children:!g&&y?(0,m.tZ)("div",{css:U.notAllowed(null==h||null===(e=h.data.current)||void 0===e?void 0:e.type),children:(0,m.tZ)("span",{children:p("COM_SPPAGEBUILDER_EDITOR_ADDON_NOT_ALLOWED")})}):u})};var U={container:function(t,e,n){return(0,d.iv)(t&&!e&&n&&(0,d.iv)("background-color:",i.qo.base.surface,";;label:container;")," ",t&&!e&&!n&&(0,d.iv)("background-color:",i.qo.background.error,";;label:container;"),";;label:container;")},notAllowed:function(t){var e=t===r.t.TableItem?"40px":"100px";return(0,d.iv)("height:",e,";",b.iZ.flexCenter(),";span{",a.c.caption("medium")," padding:",i.W0[4]," ",i.W0[8],";background-color:",i.qo.base.error,";border-radius:",i.E0[2],";color:",i.qo.base.white,";};label:notAllowed;")}},q=n(3871),G=n(1731),$=n(7855),M=n(1593),K=n(1709),V=n(802),F=n(1954),H=n(1073),Y=n(7536),X=n(5350);function z(t){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},z(t)}function J(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Q(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?J(Object(n),!0).forEach((function(e){tt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function tt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==z(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==z(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===z(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var et=[{id:0,size:"12",icon:"layoutDesign1"},{id:1,size:"6+6",icon:"layoutDesign2"},{id:2,size:"4+4+4",icon:"layoutDesign3"},{id:3,size:"3+3+3+3",icon:"layoutDesign4"},{id:4,size:"4+8",icon:"layoutDesign5"},{id:5,size:"3+9",icon:"layoutDesign6"},{id:6,size:"3+6+3",icon:"layoutDesign7"},{id:7,size:"2+6+4",icon:"layoutDesign8"},{id:8,size:"2+10",icon:"layoutDesign9"},{id:10,size:"2+3+7",icon:"layoutDesign10"}];const nt=function(t){var e=t.isOpen,n=t.defaultLayout,r=t.nestedRowData,i=t.handleClose,a=t.position,l=t.popoverRef,d=t.index,u=(0,c.$)(),s=(0,V.O)(),p=s.control,v=s.setValue,y=s.getValues,b=s.watch;(0,T.useEffect)((function(){(0,f.$K)(n)&&v("layout",n.replaceAll(",","+"))}),[n,v]);var h=(0,D.o)((function(t){return t.addNewSection})),g=b("layout"),I=(0,D.o)((function(t){return t.addNestedRow})),x=(0,D.o)((function(t){return t.updateSectionLayout})),E=(0,H.j)((function(t){return t.setActiveAction})),S=function(){v("layout",""),i()},O=function(t){(0,f.$K)(n)?x({index:d,layout:t}):(0,f.$K)(r)?I(Q(Q({},r),{},{layout:t,isTop:!1})):h({layout:t,index:d+1}),S()};return(0,m.tZ)(F.h,{isOpen:e,onClickOutside:S,children:(0,m.tZ)("div",{css:[ot.popoverWrapper,{left:a.left,top:a.top},";label:SectionPopover;"],ref:l,children:(0,m.BX)("div",{css:ot.wrapper,children:[(0,m.BX)("div",{css:ot.importLayout,children:[(0,m.BX)("div",{css:ot.importLayoutIcons,children:[(0,m.tZ)(o.Z,{name:"layoutsDuo"}),(0,m.tZ)(o.Z,{name:"blocksDuo"}),(0,m.tZ)(o.Z,{name:"cubeDuo"})]}),(0,m.tZ)("p",{css:ot.importLayoutText,children:u("COM_SPPAGEBUILDER_EDITOR_IMPORT_LAYOUT_DESCRIPTION")}),(0,m.tZ)(q.Z,{variant:"secondary",buttonCss:ot.importLayoutButton,onClick:function(){i(),E("section-library")},children:"Explore"})]}),(0,m.BX)("div",{css:ot.selectLayout,children:[(0,m.tZ)("button",{css:ot.closeButton,onClick:S,children:(0,m.tZ)(o.Z,{name:"cross",width:20,height:20})}),(0,m.tZ)("div",{css:ot.layoutOptions,children:et.map((function(t){return(0,m.BX)("button",{type:"button",css:ot.layoutButton,onClick:function(){O(t.size)},children:[(0,m.tZ)(o.Z,{name:t.icon,width:50,height:20}),(0,m.tZ)("div",{children:t.size})]},t.id)}))}),(0,m.BX)("div",{css:ot.generateLayout,children:[(0,m.tZ)("p",{css:ot.customRows,children:u("COM_SPPAGEBUILDER_EDITOR_CREATE_CUSTOM_LAYOUT")}),(0,m.BX)("div",{css:ot.generateForm,children:[(0,m.tZ)(Y.Qr,{control:p,name:"layout",render:function(t){return(0,m.tZ)(X.Z,Q(Q({},t),{},{placeholder:"e.g. 8+4"}))}}),(0,m.tZ)(q.Z,{variant:"primary",disabled:!g,onClick:function(){var t=y("layout");O(t)},children:(0,f.$K)(n)?u("COM_SPPAGEBUILDER_EDITOR_UPDATE"):u("COM_SPPAGEBUILDER_EDITOR_GENERATE")})]})]})]})]})})})};var ot={popoverWrapper:{name:"127z30k-popoverWrapper",styles:"position:absolute;width:100%;max-width:622px;label:popoverWrapper;"},wrapper:(0,d.iv)("z-index:",i.W5.dropdown,";background-color:",i.qo.base.white,";box-shadow:",i.AF.popover,";border-radius:",i.E0[6],";display:grid;grid-template-columns:196px auto;;label:wrapper;"),importLayout:(0,d.iv)("border-right:1px solid ",i.qo.stroke.neutral,";display:flex;flex-direction:column;justify-content:center;align-items:center;padding:",i.W0[24],";;label:importLayout;"),importLayoutIcons:(0,d.iv)("display:flex;gap:",i.W0[16],";color:",i.qo.icon.default,";;label:importLayoutIcons;"),importLayoutText:(0,d.iv)("color:",i.qo.text.neutral,";font-size:",i.JB[12],";line-height:",i.Nv[18],";text-align:center;margin-top:",i.W0[16],";margin-bottom:",i.W0[24],";;label:importLayoutText;"),importLayoutButton:(0,d.iv)("svg{color:",i.qo.icon.default,";}&:hover{svg{color:",i.qo.icon.primary,";}};label:importLayoutButton;"),selectLayout:{name:"fgypav-selectLayout",styles:"position:relative;label:selectLayout;"},closeButton:(0,d.iv)(b.iZ.resetButton,";position:absolute;top:",i.W0[8],";right:",i.W0[8],";padding:",i.W0[2],";background-color:",i.qo.background.neutral,";color:",i.qo.icon.default,";border-radius:",i.E0[2],";;label:closeButton;"),layoutOptions:(0,d.iv)("display:grid;grid-template-columns:repeat(5, 1fr);padding:",i.W0[40]," ",i.W0[48]," ",i.W0[32]," ",i.W0[32],";gap:",i.W0[24],";;label:layoutOptions;"),layoutButton:(0,d.iv)(b.iZ.resetButton,";",a.c.caption(),";color:",i.qo.text.neutral,";display:flex;flex-direction:column;align-items:center;gap:",i.W0[8],";transition:color 0.3s ease-out;svg{color:",i.qo.icon.neutral,";transition:color 0.3s ease-out;}&:hover{color:",i.qo.text.primary,";svg{color:",i.qo.text.primary,";}};label:layoutButton;"),generateLayout:(0,d.iv)("border-top:1px solid ",i.qo.stroke.neutral,";position:relative;;label:generateLayout;"),customRows:(0,d.iv)("position:absolute;width:60%;top:0;left:50%;transform:translateX(-50%) translateY(-50%);background-color:",i.qo.background.white,";color:",i.qo.text.neutral,";font-size:",i.JB[12],";line-height:",i.Nv[18],";text-align:center;;label:customRows;"),generateForm:(0,d.iv)("display:flex;gap:",i.W0[16],";padding:",i.W0[28]," ",i.W0[32]," ",i.W0[24],";>div{flex:1;};label:generateForm;")},rt=n(2614),it=n(9194);function at(t){return at="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},at(t)}var lt=["attribs"],dt=["attribs"];function ct(){ct=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new w(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==at(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;O(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function ut(t,e){if(null==t)return{};var n,o,r=function(t,e){if(null==t)return{};var n,o,r={},i=Object.keys(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function st(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function pt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?st(Object(n),!0).forEach((function(e){ft(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):st(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function ft(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==at(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==at(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===at(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function vt(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}function yt(t){return function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){vt(i,o,r,a,l,"next",t)}function l(t){vt(i,o,r,a,l,"throw",t)}a(void 0)}))}}function bt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const ht=function(t){var e,n,r=t.isPopup,i=(0,T.useRef)(null),l=(0,c.$)(),d=(0,K.d)().showModal,u=(e=(0,T.useState)(!1),n=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(e,n)||function(t,e){if(t){if("string"==typeof t)return bt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bt(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=u[0],p=u[1],v=(0,Y.Gc)(),y=(0,Y.Gc)(),b=(0,G.p)().showToast,h=(0,it.HX)(),g=(0,rt.x)((function(t){return t.setIsLoading})),I=(0,F.l)({isOpen:s,isDropdown:!0,arrow:"middle"}),x=I.triggerRef,E=I.position,S=I.popoverRef;return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{css:mt.wrapper,ref:x,children:[(0,m.tZ)("h4",{css:[a.c.heading4("medium"),";label:EmptyLayout;"],children:l(r?"COM_SPPAGEBUILDER_EDITOR_POPUP_START_CREATING":"COM_SPPAGEBUILDER_EDITOR_START_CREATING")}),(0,m.BX)("div",{css:mt.buttonWrapper,children:[(0,m.tZ)(q.Z,{variant:"secondary",icon:(0,m.tZ)(o.Z,{name:"layout"}),onClick:function(){d({component:r?M.Z:$.Z,props:{title:l("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LAYOUTS"),form:v},closeOnOutsideClick:!0})},children:l("COM_SPPAGEBUILDER_EDITOR_LAYOUT_BUNDLES")}),(0,m.tZ)(q.Z,{variant:"primary",icon:(0,m.tZ)(o.Z,{name:"plus"}),onClick:function(){return p(!0)},children:l("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_SECTION")})]}),(0,m.BX)("p",{css:mt.importLayout,children:[l("COM_SPPAGEBUILDER_EDITOR_OR"),(0,m.tZ)("button",{type:"button",onClick:function(){var t;return null===(t=i.current)||void 0===t?void 0:t.click()},children:l("COM_SPPAGEBUILDER_EDITOR_IMPORT_LAYOUT")}),r?(0,m.tZ)("input",{ref:i,type:"file",hidden:!0,onChange:function(){var t=yt(ct().mark((function t(e){var n,o,i,a,l,d,c,u,s,p,m,I,x,E,S,O,w,D,A,_,P,C,T,L,j;return ct().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.target.files){t.next=17;break}return t.prev=1,g(!0),t.next=5,h.mutateAsync(e.target.files[0]);case 5:n=t.sent,o=JSON.parse(n.data.seo),i=o.meta_description,a=void 0===i?"":i,l=o.meta_keywords,d=void 0===l?"":l,c=o.og_type,u=void 0===c?"":c,s=o.robots,p=void 0===s?"":s,m=o.seo_spacer,I=void 0===m?"":m,x=o.og_title,E=void 0===x?"":x,S=o.og_description,O=void 0===S?"":S,w=o.og_image,D=void 0===w?{src:""}:w,A=o.author,_={attribs:{meta_description:a,meta_keywords:d,og_type:u,robots:p,seo_spacer:I,author:void 0===A?"":A},og_title:E,og_description:O,og_image:pt({},D)},r?(C=JSON.parse(null!==(P=n.data.attribs)&&void 0!==P?P:""),(0,f.$K)(n.data)&&y.reset(pt(pt({},y.getValues()),{},{css:n.data.css,attribs:C}))):(0,f.$K)(n.data)&&(T=v.getValues(),L=_.attribs,j=ut(_,lt),v.reset(pt(pt(pt({},T),{},{css:n.data.css},j),{},{attribs:pt(pt({},T.attribs),L)}))),t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),(0,f.VZ)(t.t0)&&b({type:"danger",message:t.t0.message});case 14:return t.prev=14,g(!1),t.finish(14);case 17:e.target.value="";case 18:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})));return function(e){return t.apply(this,arguments)}}()}):(0,m.tZ)("input",{ref:i,type:"file",hidden:!0,onChange:function(){var t=yt(ct().mark((function t(e){var n,o,r,i,a,l,d,c,u,s,p,y,m,I,x,E,S,O,w,D,A,_,P;return ct().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.target.files){t.next=18;break}return t.prev=1,g(!0),t.next=5,h.mutateAsync(e.target.files[0]);case 5:n=t.sent,o=JSON.parse(n.data.seo),r=o.meta_description,i=void 0===r?"":r,a=o.meta_keywords,l=void 0===a?"":a,d=o.og_type,c=void 0===d?"":d,u=o.robots,s=void 0===u?"":u,p=o.seo_spacer,y=void 0===p?"":p,m=o.og_title,I=void 0===m?"":m,x=o.og_description,E=void 0===x?"":x,S=o.og_image,O=void 0===S?{src:""}:S,w=o.author,D={attribs:{meta_description:i,meta_keywords:l,og_type:c,robots:s,seo_spacer:y,author:void 0===w?"":w},og_title:I,og_description:E,og_image:pt({},O)},(0,f.$K)(n.data)&&(A=v.getValues(),_=D.attribs,P=ut(D,dt),v.reset(pt(pt(pt({},A),{},{css:n.data.css},P),{},{attribs:pt(pt({},A.attribs),_)}))),t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),(0,f.VZ)(t.t0)&&b({type:"danger",message:t.t0.message});case 14:return t.prev=14,g(!1),t.finish(14);case 17:e.target.value="";case 18:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})));return function(e){return t.apply(this,arguments)}}()})]})]}),(0,m.tZ)(nt,{isOpen:s,handleClose:function(){return p(!1)},position:E,popoverRef:S,index:0})]})};var mt={wrapper:(0,d.iv)("background-color:",i.qo.background.white,";text-align:center;padding:",i.W0[72]," 0;border-radius:",i.E0[6],";position:relative;;label:wrapper;"),buttonWrapper:(0,d.iv)("display:flex;justify-content:center;gap:",i.W0[16],";margin-top:",i.W0[40],";margin-bottom:",i.W0[32],";;label:buttonWrapper;"),importLayout:(0,d.iv)(a.c.body(),";color:",i.qo.text.neutral,";button{",b.iZ.resetButton,";color:",i.qo.action.primary.default,";padding:0;};label:importLayout;")},gt=n(8138),It=n(2447),xt=n(2328),Et=n(7679);function St(t){return St="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},St(t)}function Ot(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function wt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Ot(Object(n),!0).forEach((function(e){Dt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Ot(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Dt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==St(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==St(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===St(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function At(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const _t=function(t){var e,n,i,a=t.isPopup,l=void 0!==a&&a,d=(0,c.$)(),u=(0,Y.Gc)(),s=(n=(0,T.useState)(!1),i=2,function(t){if(Array.isArray(t))return t}(n)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(n,i)||function(t,e){if(t){if("string"==typeof t)return At(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?At(t,e):void 0}}(n,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),p=s[0],f=s[1],v=u.getValues("title"),y=(0,It.Z)(gt.F.PageEditor).id,b=(0,Et.z1)(y,l?"popup":""),h=(0,xt.v)((function(t){return t.appConfig}));(0,T.useEffect)((function(){var t;(null===(t=b.data)||void 0===t?void 0:t.extension)===r.HZ.extension&&f(!0)}),[b.data]);var g=(0,T.useMemo)((function(){return b.data?b.data.url:""}),[b.data]);return(0,m.BX)("div",{css:Lt.wrapper(p),children:[(0,m.BX)("div",{css:Lt.fieldAndButton(p),children:[(0,m.tZ)("div",{css:Lt.inputWrapper(p),children:(0,m.tZ)(Y.Qr,{control:u.control,name:"title",render:function(t){return(0,m.tZ)(X.Z,wt(wt({},t),{},{label:d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME"),placeholder:d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME")}))}})}),p&&(0,m.tZ)("div",{css:Lt.pageName,children:v||d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME")}),!!h.enable_frontend_editing&&(0,m.BX)("a",{css:Lt.frontendEditorButton(p),href:g,target:"_blank",rel:"noreferrer",children:[(0,m.tZ)(o.Z,{name:"parmaLink",width:16,height:16}),(0,m.tZ)("span",{children:d("COM_SPPAGEBUILDER_EDITOR_FRONTEND_EDITOR")})]})]}),r.HZ.extension!==(null===(e=b.data)||void 0===e?void 0:e.extension)&&(0,m.tZ)("button",{type:"button",css:Lt.drawerHook(p),onClick:function(){return f((function(t){return!t}))},"data-drawer":!0,children:(0,m.tZ)(o.Z,{name:"angleUp"})})]})};var Pt={name:"g85fjd-drawerHook",styles:"svg{transform:rotate(-180deg);};label:drawerHook;"},Ct={name:"1n6ug0d-fieldAndButton",styles:"align-items:center;label:fieldAndButton;"},Tt={name:"1dw40py-inputWrapper",styles:"overflow:hidden;opacity:0;width:0;height:0;label:inputWrapper;"},Lt={wrapper:function(t){return(0,d.iv)("background-color:",i.qo.base.surface,";padding:",i.W0[24]," ",i.W0[36],";border-bottom:1px solid ",i.qo.stroke.neutral,";position:relative;overflow:hidden;transition:padding 0.3s ease;",t&&(0,d.iv)("padding:",i.W0[6]," ",i.W0[36],";&:hover{&>[data-drawer]{bottom:0;}};label:wrapper;"),";;label:wrapper;")},inputWrapper:function(t){return(0,d.iv)("width:100%;opacity:1;transition:opacity 0.3s ease-in-out,height 0.3s ease-in-out;",t&&Tt,";;label:inputWrapper;")},pageName:(0,d.iv)(a.c.body("medium"),";width:100%;;label:pageName;"),fieldAndButton:function(t){return(0,d.iv)("width:100%;display:flex;gap:",i.W0[16],";align-items:end;",t&&Ct,";;label:fieldAndButton;")},frontendEditorButton:function(t){return(0,d.iv)(a.c.body(),";background-color:",i.qo.base.white,";border-radius:",i.E0[24],";padding:",i.W0[4]," ",i.W0[12],";display:flex;align-items:center;gap:",i.W0[8],";color:",i.qo.text.neutral,";flex-shrink:0;svg{fill:none;}",!t&&(0,d.iv)("margin-bottom:",i.W0[2],";;label:frontendEditorButton;")," &:hover{color:",i.qo.text.hover,";}&::before,&::after{content:''!important;all:unset!important;};label:frontendEditorButton;")},drawerHook:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.centeredFlex,";width:64px;height:16px;background:#fff;position:absolute;bottom:0;left:50%;transform:translateX(-50%);border-top-left-radius:6px;border-top-right-radius:6px;transition:opacity 0.3s ease-in-out,bottom 0.3s ease-in-out;",t&&(0,d.iv)("&:not(:focus){bottom:-",i.W0[16],";}&:hover{bottom:0;};label:drawerHook;")," svg{color:",i.qo.icon.default,";transition:transform 0.3s ease-in-out;}",t&&Pt,";;label:drawerHook;")}},jt=n(7025);function Rt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Bt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Bt(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Bt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const Zt=function(t){var e,n,r,i=t.text,a=t.updateAdminLabel,l=t.suffix,d=t.truncate,u=t.isEditable,s=t.onIsEditableChange,p=(0,c.$)(),f=Rt((0,T.useState)(!1),2),v=f[0],y=f[1],b=Rt((0,T.useState)(i),2),h=b[0],g=b[1],I=(0,O.T)().closeSettingPanel,x=(0,T.useRef)(null),E=null!=u?u:v,S=null!=s?s:y;return(0,m.tZ)("div",{css:kt.wrapper,ref:x,children:E?(0,m.tZ)(m.HY,{children:(0,m.tZ)("div",{css:kt.textInputWrapper,children:(0,m.tZ)(jt.Z,{value:h,onChange:function(t){return g(t)},onKeyDown:function(t,e){e.stopPropagation(),"Escape"===t&&S(!1),"Enter"===t&&(a(h),I(),S(!1))},onBlur:function(){return S(!1)},focusOnMount:!0})})}):(0,m.BX)(m.HY,{children:[(0,m.BX)("span",{css:kt.truncate(null!=d&&d,(e=x.current,n=null==e?void 0:e.parentElement,r=null==n?void 0:n.parentElement,r?r.offsetWidth:0)),children:[i,l&&(0,m.BX)("span",{css:kt.suffix,children:[" (",l,")"]})]}),(0,m.tZ)(q.Z,{title:p("COM_SPPAGEBUILDER_EDITOR_CLICK_EDIT_NAME"),variant:"text",icon:(0,m.tZ)(o.Z,{name:"pencil",height:10,width:10}),onClick:function(t){t.stopPropagation(),S(!0)}})]})})};var kt={wrapper:(0,d.iv)("display:flex;justify-content:start;align-items:center;gap:",i.W0[10],";>button{padding:0;opacity:0;transition:opacity 0.3s ease;svg{color:",i.qo.icon.default,";transition:color 0.3s ease;}}:hover{>button{opacity:1;}};label:wrapper;"),textInputWrapper:{name:"ksdv16-textInputWrapper",styles:"max-width:150px;label:textInputWrapper;"},suffix:(0,d.iv)(a.c.caption("medium"),";color:",i.qo.text.default,";;label:suffix;"),truncate:function(t,e){return(0,d.iv)(t&&(0,d.iv)("max-width:",.5*e,"px;",b.iZ.textEllipsis,";;label:truncate;"),";;label:truncate;")}},Wt=n(5587),Nt=n(9101),Ut=n(3722),qt=n(6731),Gt=n(1030);function $t(t){return $t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$t(t)}function Mt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Kt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Mt(Object(n),!0).forEach((function(e){Vt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Mt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Vt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==$t(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==$t(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===$t(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Ft(){Ft=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new w(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==$t(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;O(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function Ht(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}var Yt=(0,T.forwardRef)((function(t,e){var n=t.type,r=t.dataToSave,i=t.closePopover,a=(0,c.$)(),l=(0,V.O)({defaultValues:{title:""}}),d=!!r,u=(0,F.l)({isOpen:d,triggerRef:e,arrow:"top"}),p=u.position,v=u.popoverRef,y=(0,s._s)(),h=(0,s.E4)(),g=(0,Ut.u)(),I="addon"===n&&"save_preset"===(null==r?void 0:r.action),x="addon"===n&&"save"===(null==r?void 0:r.action),E=function(){var t,e=(t=Ft().mark((function t(){var e,o;return Ft().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=l.getValues("title"),(0,f.$K)(r)&&(0,f.$K)(e)){t.next=3;break}return t.abrupt("return");case 3:if("addon"!==n||"save_preset"!==r.action){t.next=8;break}return t.next=6,g.mutateAsync({title:e,preset:r.data,addon_name:null!==(o=r.addonName)&&void 0!==o?o:""});case 6:t.next=15;break;case 8:if("addon"!==n){t.next=13;break}return t.next=11,y.mutateAsync({title:e,code:r.data});case 11:t.next=15;break;case 13:return t.next=15,h.mutateAsync({title:e,section:r.data});case 15:S();case 16:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){Ht(i,o,r,a,l,"next",t)}function l(t){Ht(i,o,r,a,l,"throw",t)}a(void 0)}))});return function(){return e.apply(this,arguments)}}(),S=function(){l.setValue("title",""),i()},O=I?{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET")}:x?{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON")}:{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION")};return(0,m.tZ)(F.h,{isOpen:d,children:(0,m.BX)("div",{css:[zt.container,{position:"absolute",left:p.left,top:p.top},";label:SavePopover;"],ref:v,children:[(0,m.BX)("div",{css:zt.header,children:[(0,m.tZ)("span",{children:O.title}),(0,m.tZ)("button",{type:"button",css:b.iZ.resetButton,onClick:S,children:(0,m.tZ)(o.Z,{name:"cross",height:24,width:24})})]}),(0,m.BX)("form",{css:zt.wrapper,onSubmit:l.handleSubmit((0,qt.GI)(l,E)),children:[(0,m.tZ)("div",{css:zt.fieldWrapper,children:(0,m.tZ)(Y.Qr,{name:"title",control:l.control,rules:Kt({},(0,Gt.n)()),render:function(t){return(0,m.tZ)(X.Z,Kt(Kt({},t),{},{label:O.label,hasAutoFocus:!0}))}})}),(0,m.BX)("div",{css:zt.buttonWrapper,children:[(0,m.tZ)(q.Z,{variant:"secondary",onClick:S,children:a("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_CANCEL")}),(0,m.tZ)(q.Z,{type:"submit",loading:y.isLoading||h.isLoading,children:O.button})]})]})]})})}));const Xt=Yt;var zt={container:(0,d.iv)("display:flex;flex-direction:column;background-color:",i.qo.background.white,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[10],";box-shadow:",i.AF.popover,";;label:container;"),wrapper:{name:"if42pu-wrapper",styles:"width:400px;label:wrapper;"},fieldWrapper:(0,d.iv)("padding:",i.W0[20],";display:flex;flex-direction:column;gap:",i.W0[12],";background-color:",i.qo.base.white,";;label:fieldWrapper;"),header:(0,d.iv)("padding:",i.W0[12]," ",i.W0[16]," ",i.W0[12]," ",i.W0[24],";border-bottom:1px solid ",i.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",a.c.heading5("medium"),";}button{color:",i.qo.icon.default,";&:hover{color:",i.qo.icon.hover,";}};label:header;"),buttonWrapper:(0,d.iv)("border-top:1px solid ",i.qo.stroke.neutral,";padding:",i.W0[12]," ",i.W0[16],";display:flex;justify-content:end;gap:",i.W0[8],";;label:buttonWrapper;")},Jt=n(2445),Qt=function(t){var e,n,o,i,a,l,d,c=t.position,u=t.active,s=t.over,p=t.contentId,v=t.type,y=null==u?void 0:u.data.current,b=null==s?void 0:s.data.current;if((null==s?void 0:s.id)!==p||(null==b?void 0:b.type)!==v)return null;if(!c||!W({active:u,over:s}))return null;if((null==y?void 0:y.type)===r.t.Section&&y.type===b.type)return null;if(b.type===r.t.Column&&(null==y?void 0:y.type)!==r.Dw.ColumnsElement)return null;var h=[r.t.Addon,r.t.Div,r.t.DeepAddon];return h.includes(b.type)&&b.content.parent&&(0,f.r3)([r.Dw.RowElement,r.Dw.SavedSectionElement],null==y?void 0:y.type)||(0,f.r3)(h,null==y?void 0:y.type)&&(0,f.r3)(h,b.type)&&(null==y?void 0:y.sectionIndex)===b.sectionIndex&&y.columnIndex===b.columnIndex&&y.content.parent===b.content.parent||(null==y?void 0:y.type)===r.t.NestedRow&&(0,f.r3)(h,b.type)&&(null===(e=y.nestedRowData)||void 0===e?void 0:e.sectionIndex)===b.sectionIndex&&y.nestedRowData.columnIndex===b.columnIndex||b.type===r.t.NestedRow&&(0,f.r3)(h,null==y?void 0:y.type)&&(null==y?void 0:y.sectionIndex)===(null===(n=b.nestedRowData)||void 0===n?void 0:n.sectionIndex)&&(null==y?void 0:y.columnIndex)===(null===(o=b.nestedRowData)||void 0===o?void 0:o.columnIndex)||(null==y?void 0:y.type)===r.t.NestedRow&&b.type===r.t.NestedRow&&(null===(i=y.nestedRowData)||void 0===i?void 0:i.sectionIndex)===(null===(a=b.nestedRowData)||void 0===a?void 0:a.sectionIndex)&&(null===(l=y.nestedRowData)||void 0===l?void 0:l.columnIndex)===(null===(d=b.nestedRowData)||void 0===d?void 0:d.columnIndex)||(null==y?void 0:y.type)===r.t.CollectionItemAddon&&b.type===r.t.CollectionItemAddon&&(0,f.$K)(y.itemIndex)&&y.itemIndex===b.itemIndex&&y.content.parent===b.content.parent?null:te(c,v)},te=function(t,e){var n=i.W0[10];return e===r.t.Section&&(n=i.W0[16]),e===r.t.TableItem&&(n=i.W0[6]),(0,d.iv)("position:relative;&::after{content:'';background-color:",i.qo.background.placeholder,";position:absolute;",ee(t,e,n),";};label:styles;")},ee=function(t,e,n){return"column"===e?(0,d.iv)("top:0;bottom:0;width:2px;height:100%;",t.isLeft&&(0,d.iv)("left:-",n,";;label:positionStyle;")," ",!t.isLeft&&(0,d.iv)("right:-",n,";;label:positionStyle;"),";;label:positionStyle;"):(0,d.iv)("left:0;right:0;height:2px;width:100%;",t.isTop&&(0,d.iv)("top:-",n,";;label:positionStyle;")," ",!t.isTop&&(0,d.iv)("bottom:-",n,";;label:positionStyle;"),";;label:positionStyle;")},ne=n(4101),oe=n(6216),re=n(6651),ie=n(6795),ae=n(1245),le=n.n(ae),de=n(6248),ce=n(4999),ue=n(765);function se(t){return se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},se(t)}function pe(t){return function(t){if(Array.isArray(t))return ge(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||me(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fe(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=me(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function ve(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function ye(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ve(Object(n),!0).forEach((function(e){be(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ve(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function be(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==se(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==se(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===se(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function he(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||me(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function me(t,e){if(t){if("string"==typeof t)return ge(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ge(t,e):void 0}}function ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var Ie=new Set(["advancedcolor","advancedslider","alignment","boxshadow","buttons","color","margin","fonts","fontstyle","gradient","padding","slider","select","typography","radio"]),xe=["h1","h2","h3","h4","h5","h6","p","div","span","br","section","strong"],Ee=function(t){var e,n=t.content,o=t.parentVisibility,r=t.sectionIndex,i=t.columnIndex,a=t.index,l=(0,c.$)(),d=he((0,T.useState)(null),2),s=d[0],p=d[1],v=(0,G.p)().showToast,y=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload}}),de.X),b=y.type,h=y.payload,m=(0,Jt.F)((function(t){return t.setSettings})),g=(0,O.T)().closeSettingPanel,I=(0,u.x)((function(t){return t.addonStructure})),x=(0,D.o)((function(t){return t.copiedData})),E=(0,u.x)((function(t){return t.globalSettings})),S=(0,D.o)((function(t){return t.deleteDynamicContentAddon})),w=(0,D.o)((function(t){return t.copyDynamicContentAddon})),A=(0,D.o)((function(t){return t.pasteOrInsertDynamicContentAddon})),_=(0,D.o)((function(t){return t.changeVisibilityOfDynamicContentAddon})),P=(0,D.o)((function(t){return t.duplicateDynamicContentAddon})),C=(0,ue.F)().getDynamicContentCollectionItemAddon,L=(0,Y.Gc)(),j=(0,f.$K)(n.visibility)&&!n.visibility,R=o&&n.visibility;return{isEditing:"dynamic_content_collection_item_addon"===b&&(null==h||null===(e=h.addon)||void 0===e?void 0:e.id)===n.id,isHidden:j,isVisible:R,addonDataToSave:s,resetAddonDataToSave:function(){return p(null)},handleActions:function(t){switch(t){case"copy":w({sectionIndex:r,columnIndex:i,addon:n});break;case"pasteAbove":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!0}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"paste":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!1,pasteInside:!0}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"pasteBelow":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!1}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"pasteStyle":var e,o,a;if(g(),!(0,f.$K)(x.addon))return;var d=he(x.addon.addons,1)[0],c=d.name,u=d.settings,s=I[c];if(n.name!==c||!(0,f.$K)(s)||!(0,f.$K)(u))return;var y=s.settings;if(!(0,f.$K)(y))return;var b=function t(e,n,o){var r,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=fe((0,f.zt)(e));try{for(l.s();!(r=l.n()).done;){var d,c=r.value.fields,u=fe((0,f.J0)(c));try{var s=function(){var e=he(d.value,2),r=e[0],l=e[1];if((0,f.$K)(o[r])&&!(0,f.r3)(xe,o[r])&&(Ie.has(l.type)||i))a[r]=o[r];else if("repeatable"===l.type){var c=(0,f.kJ)(n[r])?n[r]:[],u=c.length,s=(0,f.kJ)(o[r])?o[r]:[],p=s.length;a[r]=s.slice(0,u).flatMap((function(e,n){var o;return ye(ye({},c[n]),t(null!==(o=l.attr)&&void 0!==o?o:{},c[n],e,!1,{}))})),u>p&&(a[r]=[].concat(pe(a[r]),pe(c.slice(p))))}};for(u.s();!(d=u.n()).done;)s()}catch(t){u.e(t)}finally{u.f()}}}catch(t){l.e(t)}finally{l.f()}return a},h=b(y,null!==(e=n.settings)&&void 0!==e?e:{},u),m=b(E.style,null!==(o=n.settings)&&void 0!==o?o:{},u,!0);null!==(a=n.settings)&&void 0!==a||(n.settings={}),n.settings=ye(ye(ye({},n.settings),h),m);break;case"hide":g(),_({sectionIndex:r,columnIndex:i,addon:n,visibility:!!n.visibility}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":P({sectionIndex:r,columnIndex:i,addon:n}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"save":var O=le()(n);(0,ce.oY)(O,(function(t){t.id=(0,f.x0)()}));var D={name:O.name,addons:[O],sections:[]};p({action:"save",data:JSON.stringify((0,f.M9)(D))});break;case"remove":S({sectionIndex:r,columnIndex:i,addon:n})}},handleSetSettings:function(){var t;if("dynamic_content_collection_item_addon"!==b||(null==h||null===(t=h.addon)||void 0===t?void 0:t.id)!==n.id){m("dynamic_content_collection_item_addon",{sectionIndex:r,columnIndex:i,addonIndex:a,addon:n});var e=C({sectionIndex:r,columnIndex:i,addon:n}),o=(0,f.$K)(e)?e.settings:{};L.reset(ye(ye({},L.getValues()),{},{settings:null!=o?o:{}}))}}}},Se=n(653),Oe=n(4632),we=n(1518);function De(t){return function(t){if(Array.isArray(t))return Ae(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Ae(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ae(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var _e=function(t){var e,n,o,i,a,l=t.addonName,d=t.copiedData,c=t.isTableItem,u=t.isProductList,s=t.isNotFoundAddon,p=t.isEmptyParentAddon,f=c&&(r.Hh.includes(null!==(e=null===(n=d.addon)||void 0===n?void 0:n.name)&&void 0!==e?e:"")||(null!==(o=null===(i=d.addon)||void 0===i?void 0:i.sections.length)&&void 0!==o?o:0)>0);return[{id:"copy",icon:"copy",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_COPY",isDisabled:s},{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_RENAME",hide:c,isDisabled:s},{id:"pasteAbove",icon:"clipboardAbove",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_ABOVE",isDisabled:!d.addon||s,hide:f},{id:"paste",icon:"clipboard",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_INSIDE",isDisabled:!d.addon||s,hide:!p},{id:"pasteBelow",icon:"clipboardBelow",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_BELOW",isDisabled:!d.addon||s,hide:f},{id:"pasteStyle",icon:"clipboardBelow",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_STYLE_PASTE",isDisabled:!d.addon||s,hide:l!==(null===(a=d.addon)||void 0===a?void 0:a.name)},{id:"hide",icon:"eye",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_HIDE",isProFeature:!0,isDisabled:s},{id:"duplicate",icon:"clone",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_DUPLICATE",isDisabled:s},{id:"save",icon:"saveLine",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_SAVE",isProFeature:!0,hide:c,isDisabled:s},{id:"save_preset",icon:"saveLine",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PRESET",isProFeature:!0,hide:!u,isDisabled:s},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_COLUMN_REMOVE",variant:"critical"}]};const Pe=function(t){var e=t.addonWidth,n=t.addonName,i=t.addonType,a=t.copiedData,l=t.handleActions,d=t.isNotFoundAddon,u=void 0!==d&&d,s=t.isEmptyParentAddon,p=void 0!==s&&s,v=(0,c.$)();return(0,m.tZ)(Nt.Z,{actions:[].concat(De((0,f.$K)(e)&&e<=40?[{id:"settings",icon:"pencilOnBox",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_SETTINGS"}]:[]),De(_e({addonName:n,copiedData:a,isTableItem:i===r.t.TableItem,isProductList:n===r.oA.productList||n===r.oA.categoryList,isNotFoundAddon:u,isEmptyParentAddon:p}))),title:v("COM_SPPAGEBUILDER_EDITOR_ADDON_ACTIONS"),triggerButtonContent:(0,m.tZ)(o.Z,{name:"ellipsisY",width:16,height:16}),triggerButtonStyle:Ce.actionButton(),onSelect:l})};var Ce={actionButton:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.iv)(b.iZ.resetButton,";color:",i.qo.text.default,";display:flex;gap:",i.W0[8],";svg{color:",i.qo.icon.default,";}",!t&&(0,d.iv)(":hover{svg{color:",i.qo.icon.hover,";}};label:actionButton;"),";;label:actionButton;")}};const Te=function(t){var e=t.id,n=void 0===e?(0,f.x0)():e,r=t.setNodeRef,i=t.isHidden,a=t.disabled,l=t.colors,d=t.placeholderStyle,u=t.sortableStyle,s=t.addonWidth,p=t.addonType,v=t.addonName,y=t.copiedData,b=t.handleActions,h=(0,c.$)(),g=(0,T.useRef)(null);return(0,m.tZ)(m.HY,{children:(0,m.tZ)("div",{id:n.toString(),css:[Be.addon({isEditing:!1,isHidden:i,disabled:!0,colors:l}),d,u,";label:AddonNotFound;"],ref:r,children:(0,m.BX)("div",{css:Be.addonTitleWrapper(a,s),children:[(0,m.tZ)(o.Z,{name:"exclamationTriangle",style:Be.notFoundIcon}),(0,m.tZ)("span",{css:Be.addonTitle,"data-addon-title":!0,children:h("COM_SPPAGEBUILDER_EDITOR_ADDON_NOT_FOUND")}),(0,m.tZ)("div",{ref:g,css:Be.actionButtonWrapper(s),"data-action-button-wrapper":!0,children:(0,m.tZ)(Pe,{addonWidth:s,addonType:p,addonName:v,copiedData:y,handleActions:b,isNotFoundAddon:!0})})]})})})};var Le={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},je={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},Re={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},Be={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem;return(0,d.iv)("border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[4],";width:100%;position:relative;z-index:",i.W5.dropdown,";",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&Re," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",n===r.t.DeepAddon&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&je," ",(0,f.$K)(e)&&e<=80&&Le,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;;label:addonTitle;"),actionButtonWrapper:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[10],";position:absolute;right:",i.W0[16],";top:50%;transform:translateY(-50%);transition:opacity 0.3s ease-in-out;opacity:0;visibility:hidden;",(0,f.$K)(t)&&t<=220&&(0,d.iv)("right:",i.W0[8],";;label:actionButtonWrapper;")," ",(0,f.$K)(t)&&t<=80&&(0,d.iv)("gap:",i.W0[4],";right:50%;transform:translateY(-50%) translateX(50%);;label:actionButtonWrapper;"),";;label:actionButtonWrapper;")},notFoundIcon:(0,d.iv)("color:",i.qo.base.warning,";width:18px;height:18px;;label:notFoundIcon;")};function Ze(t){return Ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ze(t)}function ke(t){return function(t){if(Array.isArray(t))return Me(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||$e(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function We(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=$e(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function Ne(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Ue(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Ne(Object(n),!0).forEach((function(e){qe(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Ne(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function qe(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ze(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ze(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ze(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Ge(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||$e(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function $e(t,e){if(t){if("string"==typeof t)return Me(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Me(t,e):void 0}}function Me(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var Ke=new Set(["advancedcolor","advancedslider","alignment","boxshadow","buttons","color","margin","fonts","fontstyle","gradient","padding","slider","select","typography","radio"]),Ve=["h1","h2","h3","h4","h5","h6","p","div","span","br","section","strong"];function Fe(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var He=function(t){var e,n,o=t.sectionIndex,r=t.columnIndex,i=(0,T.useRef)(null),a=(e=(0,T.useState)(),n=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(e,n)||function(t,e){if(t){if("string"==typeof t)return Fe(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],d=a[1],c=(0,H.j)((function(t){return t.activeAction})),u=(0,D.o)((function(t){return t.page}))[o].columns[r];return(0,T.useEffect)((function(){setTimeout((function(){var t,e=null===(t=i.current)||void 0===t?void 0:t.getBoundingClientRect().width;d(e)}),300)}),[c,u.settings.width]),{addonWidth:l,addonTitleRef:i}};function Ye(t){return Ye="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ye(t)}function Xe(){Xe=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new w(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==Ye(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;O(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function ze(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}function Je(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Qe(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Je(Object(n),!0).forEach((function(e){tn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Je(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function tn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ye(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ye(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ye(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function en(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return nn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?nn(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function nn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var on=function(t){var e,n,o,i,a;return"div"===(null==t||null===(e=t.data.current)||void 0===e?void 0:e.type)||(null==t||null===(n=t.data.current)||void 0===n||null===(o=n.content)||void 0===o?void 0:o.name)===r.oA.productList||(null==t||null===(i=t.data.current)||void 0===i||null===(a=i.content)||void 0===a?void 0:a.name)===r.oA.categoryList};const rn=function(t){var e,n,a,l=t.children,d=t.content,s=t.sectionIndex,p=t.columnIndex,v=t.index,y=t.childIndex,b=t.placeholderPosition,h=t.disabled,g=t.tableItem,I=t.addonType,x=void 0===I?r.t.Addon:I,E=t.colors,S=void 0===E?{addon:i.qo.alternate.addon,background:i.qo.background.lightGreen}:E,_=t.isCollapsible,C=void 0!==_&&_,L=t.isRegularDivChild,j=void 0!==L&&L,R=t.isDynamicContentChild,B=void 0!==R&&R,Z=(0,c.$)(),k=(0,K.d)().showModal,N=(0,D.o)((function(t){return t.copiedData})),U=(0,D.o)((function(t){return t.changeAddonVisibility})),q=(0,D.o)((function(t){return t.changeVisibilityOfDynamicContentAddon})),$=(0,D.o)((function(t){return t.updateAdminLabel})),M=function(t){var e,n=t.content,o=t.parentVisibility,r=t.tableItem,i=t.sectionIndex,a=t.columnIndex,l=t.index,d=t.childIndex,s=(0,c.$)(),p=Ge((0,T.useState)(null),2),v=p[0],y=p[1],b=(0,O.T)().closeSettingPanel,h=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload}}),de.X),m=(h.type,h.payload),g=(0,Jt.F)((function(t){return t.setSettings})),I=(0,D.o)((function(t){return t.page})),x=(0,D.o)((function(t){return t.copyAddon})),E=(0,D.o)((function(t){return t.copyTableItemAddon})),S=(0,D.o)((function(t){return t.pasteOrInsertAddon})),_=(0,D.o)((function(t){return t.pasteTableItemAddon})),P=(0,D.o)((function(t){return t.pasteAddonStyle})),C=(0,D.o)((function(t){return t.pasteTableItemAddonStyle})),L=(0,u.x)((function(t){return t.globalSettings})),j=(0,D.o)((function(t){return t.duplicateAddon})),R=(0,D.o)((function(t){return t.duplicateTableItemAddon})),B=(0,D.o)((function(t){return t.copiedData})),Z=(0,D.o)((function(t){return t.deleteAddon})),k=(0,D.o)((function(t){return t.deleteTableItemAddon})),W=(0,D.o)((function(t){return t.changeAddonVisibility})),N=(0,D.o)((function(t){return t.page})),U=(0,w._)(),q=U.getAddon,$=U.getTableItem,M=(0,Y.Gc)(),K=(0,u.x)((function(t){return t.addonStructure})),V=(0,G.p)().showToast,F=(0,f.$K)(n.visibility)&&!n.visibility,H=o&&n.visibility,X=(null===(e=m.addon)||void 0===e?void 0:e.id)===n.id,z=q({sectionIndex:i,columnIndex:a,addonIndex:l}),J=function(){var t;if((null===(t=m.addon)||void 0===t?void 0:t.id)!==n.id){var e,o,d,c=I[i].columns[a].addons,u=(0,ce.k3)(c,n),s=!!u&&"div"===n.name&&(0,ce.X2)(u,(function(t){return"dynamic_content_collection"===t.name}));if(n&&((0,Se.Lx)(n.name)||s))return g("dynamic_content_collection_item_addon",{sectionIndex:i,columnIndex:a,addonIndex:l,addon:n}),void M.reset(Ue(Ue({},M.getValues()),{},{settings:null!==(e=n.settings)&&void 0!==e?e:{}}));g("addon",{sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,addon:n}),(0,f.$K)(r)&&(o=null===(d=$({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}))||void 0===d?void 0:d.settings);var p=(0,f.$K)(o)?o:null==z?void 0:z.settings;M.reset(Ue(Ue({},M.getValues()),{},{settings:p||{}}))}};return{isEditing:X,isHidden:F,isVisible:H,addonDataToSave:v,resetAddonDataToSave:function(){return y(null)},handleActions:function(t){switch(t){case"settings":J();break;case"copy":(0,f.$K)(r)?E({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):x({sectionIndex:i,columnIndex:a,addonIndex:l}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_COPIED_SUCCESSFULLY")});break;case"pasteAbove":b(),(0,f.$K)(B.addon)&&((0,f.$K)(r)?_({addonData:B.addon,sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,isAbove:!0}):S({addonData:B.addon,sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d,parentId:n.parent,isAbove:!0}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"paste":b(),(0,f.$K)(B.addon)&&(S({addonData:B.addon,sectionIndex:i,columnIndex:a,addonIndex:0,childIndex:-1,parentId:n.id,isAbove:!1}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteBelow":b(),(0,f.$K)(B.addon)&&((0,f.$K)(r)?_({addonData:B.addon,sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,isAbove:!1}):S({addonData:B.addon,sectionIndex:i,columnIndex:a,addonIndex:l,parentId:n.parent,childIndex:d}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteStyle":var e,o;if(!(0,f.$K)(B.addon))return;var c=Ge(B.addon.addons,1)[0],u=c.name,p=c.settings,v=K[u];if(n.name!==u||!(0,f.$K)(v)||!(0,f.$K)(p))return;var h=v.settings;if(!(0,f.$K)(h))return;var m=function t(e,n,o){var r,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=We((0,f.zt)(e));try{for(l.s();!(r=l.n()).done;){var d,c=r.value.fields,u=We((0,f.J0)(c));try{var s=function(){var e=Ge(d.value,2),r=e[0],l=e[1];if((0,f.$K)(o[r])&&!(0,f.r3)(Ve,o[r])&&(Ke.has(l.type)||i))a[r]=o[r];else if("repeatable"===l.type){var c=(0,f.kJ)(n[r])?n[r]:[],u=c.length,s=(0,f.kJ)(o[r])?o[r]:[],p=s.length;a[r]=s.slice(0,u).flatMap((function(e,n){var o;return Ue(Ue({},c[n]),t(null!==(o=l.attr)&&void 0!==o?o:{},c[n],e,!1,{}))})),u>p&&(a[r]=[].concat(ke(a[r]),ke(c.slice(p))))}};for(u.s();!(d=u.n()).done;)s()}catch(t){u.e(t)}finally{u.f()}}}catch(t){l.e(t)}finally{l.f()}return a},g=m(h,null!==(e=n.settings)&&void 0!==e?e:{},p),I=m(L.style,null!==(o=n.settings)&&void 0!==o?o:{},p,!0);(0,f.$K)(r)?C({styleSettings:g,globalStyleSettings:I,sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):P({styleSettings:g,globalStyleSettings:I,sectionIndex:i,columnIndex:a,addonIndex:l}),b();break;case"hide":b(),W({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,visibility:!!n.visibility}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":(0,f.$K)(r)?R({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):j({sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"remove":b(),(0,f.$K)(r)?k({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):Z({sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d}),V({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_REMOVED_SUCCESSFULLY")});break;case"save":var O=N[i],w=O.columns[a],D=w.addons,T=(0,A.DV)({sections:N,rowId:O.id,columnId:w.id,addonList:D,addon:n});(0,f.$K)(T)&&y({data:JSON.stringify((0,f.M9)(T)),action:"save"});break;case"save_preset":var U,q,G=N[i].columns[a].addons[l],$={items:null!==(q=(null!==(U=G.items)&&void 0!==U?U:[])[0])&&void 0!==q?q:[],settings:G.settings};y({action:"save_preset",addonName:G.name,data:JSON.stringify($)})}},handleSetSettings:J}}(t),V=M.isEditing,F=M.isHidden,H=M.isVisible,X=M.handleActions,z=M.handleSetSettings,J=M.addonDataToSave,Q=M.resetAddonDataToSave,tt=Ee(t),et=tt.handleActions,nt=tt.addonDataToSave,ot=tt.resetAddonDataToSave,rt=(0,T.useRef)(null),it=(0,u.x)((function(t){return t.addonStructure})),at=en((0,T.useState)(!0),2),lt=at[0],dt=at[1],ct=(0,T.useRef)(lt),ut=en((0,T.useState)(!1),2),st=ut[0],pt=ut[1],ft=(0,xt.v)((function(t){return t.appConfig})),vt=(0,T.useMemo)((function(){var t,e;if("dynamic_content_collection"!==d.name)return"";var n=null==d||null===(t=d.settings)||void 0===t?void 0:t.source;return(0,f.$K)(n)?n===we.u.ARTICLES?Z("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_ARTICLES"):n===we.u.TAGS?Z("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_TAGS"):null!==(e=ft.collections[n])&&void 0!==e?e:"":""}),[ft,d.settings]),yt=He({sectionIndex:s,columnIndex:p}),bt=yt.addonWidth,ht=yt.addonTitleRef,mt=(0,Wt.nB)({id:d.id,data:{type:x,isVisible:H,sectionIndex:s,columnIndex:p,addonIndex:v,childIndex:y,tableItem:g,content:d,isRegularDivChild:j,isDynamicContentChild:B}}),gt=mt.attributes,It=mt.listeners,Et=mt.setNodeRef,St=mt.active,Ot=mt.over,wt=mt.isDragging,Dt=mt.isOver,At=mt.transform,_t=mt.transition,Pt=W({active:St,over:Ot}),Ct=it[d.name],Tt=Qt({position:b,contentId:d.id,active:St,over:Ot,type:x}),Lt=P({disable:on(Ot),transform:At,transition:_t,isDragging:wt});(0,T.useEffect)((function(){ct.current&&dt(!wt)}),[wt]),(0,T.useEffect)((function(){dt(!F),ct.current=!F}),[F]);var jt=x!==r.t.TableItem,Rt=(0,Se.Lx)(d.name)||(0,Se.dW)(d,s,p),Bt=function(t){(0,f.$K)(g)?$({label:t,tableAddonItem:Qe({sectionIndex:s,columnIndex:p,addonIndex:v},g)}):$(B?{label:t,dynamicCollectionItemAddon:{addon:d}}:{label:t,addon:{sectionIndex:s,columnIndex:p,addonIndex:v}})},kt=function(t){var e,n,o;"rename"===t&&k({component:Oe.Z,props:{title:Z("COM_SPPAGEBUILDER_EDITOR_RENAME_ADDON"),placeholder:Z("COM_SPPAGEBUILDER_EDITOR_ADDON_NAME_PLACEHOLDER"),currentName:(null===(e=d.settings)||void 0===e?void 0:e.admin_label)||"",onSave:(n=Xe().mark((function t(e){return Xe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Bt(e);case 2:case"end":return t.stop()}}),t)})),o=function(){var t=this,e=arguments;return new Promise((function(o,r){var i=n.apply(t,e);function a(t){ze(i,o,r,a,l,"next",t)}function l(t){ze(i,o,r,a,l,"throw",t)}a(void 0)}))},function(t){return o.apply(this,arguments)})}}),!Rt||j?X(t):et(t)};if(!(0,f.$K)(Ct))return(0,m.tZ)(Te,{id:d.id,setNodeRef:Et,isHidden:F,disabled:h,colors:S,placeholderStyle:Tt,sortableStyle:Lt,addonWidth:bt,addonType:x,addonName:d.name,copiedData:N,handleActions:kt});var Nt=(0,f.$K)(Ct.title)?Ct.title:"",Ut=(0,f.$K)(Ct.icon)?Ct.icon:"",qt=(null===(e=d.settings)||void 0===e?void 0:e.admin_label)||Nt,Gt=h||wt||Dt,$t=d.name===r.t.Div&&!(null!==(n=d.children)&&void 0!==n&&n.length),Mt=Rt&&!(null!==(a=d.child_nodes)&&void 0!==a&&a.length);return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{id:d.id.toString(),css:[sn.addon({isEditing:V,isHidden:F,disabled:Gt,colors:S,isTableItem:(0,f.$K)(g),droppable:!Dt||Pt}),Tt,Lt,";label:Addon;"],ref:Et,children:[(0,m.BX)("div",Qe(Qe(Qe({ref:ht,css:sn.addonTitleWrapper(h,bt,x,lt),title:Z("COM_SPPAGEBUILDER_EDITOR_ADDON_CLICK_TITLE"),onClick:function(){z()},onKeyDown:f.ZT},gt),x!==r.t.TableItem&&Qe({},It)),{},{role:"button",tabIndex:-1,children:[(0,m.tZ)("span",{css:sn.addonIcon,"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:Ut}}),(0,m.tZ)("span",{css:sn.addonTitle,"data-addon-title":!0,children:(0,m.tZ)(Zt,{text:qt,truncate:!0,suffix:vt,isEditable:st,onIsEditableChange:pt,updateAdminLabel:function(t){(0,f.$K)(g)?$({label:t,tableAddonItem:Qe({sectionIndex:s,columnIndex:p,addonIndex:v},g)}):$(B?{label:t,dynamicCollectionItemAddon:{addon:d}}:{label:t,addon:{sectionIndex:s,columnIndex:p,addonIndex:v}})}})}),!1,(0,m.tZ)("div",{ref:rt,css:sn.actionButtonWrapper(bt),"data-action-button-wrapper":!0,children:F?(0,m.BX)("button",{type:"button",css:sn.actionButton(),onClick:function(t){t.stopPropagation(),Rt?q({sectionIndex:s,columnIndex:p,addon:d,visibility:!!d.visibility}):U({sectionIndex:s,columnIndex:p,addonIndex:v,tableItem:g,visibility:d.visibility})},children:[(0,m.tZ)(o.Z,{name:"eyeSlash"}),(0,f.$K)(bt)&&bt>80&&Z("COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_SHOW")]}):(0,m.BX)(m.HY,{children:[C&&(0,m.tZ)("button",{type:"button",css:sn.toggleButton(lt),title:Z("COM_SPPAGEBUILDER_EDITOR_EXPAND"),onClick:function(t){t.stopPropagation(),dt((function(t){return!t})),ct.current=!ct.current},children:(0,m.tZ)(o.Z,{name:"angleUp",width:20,height:20})}),(0,f.$K)(bt)&&bt>40&&(0,m.tZ)("button",{type:"button",css:sn.actionButton(),children:(0,m.tZ)(o.Z,{name:"pencilOnBox"})}),(0,m.tZ)(Pe,{addonWidth:bt,addonType:x,addonName:d.name,copiedData:N,handleActions:kt,isEmptyParentAddon:$t||Mt})]})})]})),(0,f.$K)(l)&&(0,m.tZ)("div",{css:sn.contents(lt),children:l}),jt&&(0,m.tZ)("button",Qe(Qe(Qe({type:"button",css:sn.addonDragHandler(S.addon),"data-addon-drag-handler":!0},gt),It),{},{children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})}))]}),(0,m.tZ)(Xt,{ref:rt,type:"addon",dataToSave:Rt?nt:J,closePopover:Rt?ot:Q})]})};var an={name:"sxudyk-contents",styles:"display:none;height:0;opacity:0;padding:0;overflow:hidden;label:contents;"},ln={name:"1bpgz68-toggleButton",styles:"transform:rotate(-180deg);label:toggleButton;"},dn={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},cn={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},un={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},sn={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem,l=t.droppable;return(0,d.iv)("border:1px solid ",l?i.qo.stroke.neutral:i.qo.stroke.error,";border-radius:",i.E0[4],";width:100%;position:relative;",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&un," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",(n===r.t.DeepAddon||n===r.t.Div)&&o&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&cn," ",(0,f.$K)(e)&&e<=80&&dn,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonIcon:(0,d.iv)("line-height:0;transition:opacity 0.3s ease-in-out;svg{width:20px;height:20px;color:",i.qo.icon.default,";}img{width:20px;height:20px;};label:addonIcon;"),addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;display:flex;align-items:center;;label:addonTitle;"),actionButtonWrapper:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[10],";position:absolute;right:",i.W0[16],";top:50%;transform:translateY(-50%);transition:opacity 0.3s ease-in-out;opacity:0;visibility:hidden;",(0,f.$K)(t)&&t<=220&&(0,d.iv)("right:",i.W0[8],";;label:actionButtonWrapper;")," ",(0,f.$K)(t)&&t<=80&&(0,d.iv)("gap:",i.W0[4],";right:50%;transform:translateY(-50%) translateX(50%);;label:actionButtonWrapper;"),";;label:actionButtonWrapper;")},actionButton:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.iv)(b.iZ.resetButton,";color:",i.qo.text.default,";display:flex;gap:",i.W0[8],";svg{color:",i.qo.icon.default,";}",!t&&(0,d.iv)(":hover{svg{color:",i.qo.icon.hover,";}};label:actionButton;"),";;label:actionButton;")},addonDragHandler:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",t,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);opacity:0;cursor:grab!important;;label:addonDragHandler;")},toggleButton:function(t){return(0,d.iv)(b.iZ.resetButton,";padding:",i.W0[2],";transition:transform 0.3s ease,opacity 0.3s ease;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}:hover{svg{color:",i.qo.icon.hover,";border-color:",i.qo.stroke.hover,";}}:active{svg{color:",i.qo.icon.primary,";}}",!t&&ln,";;label:toggleButton;")},contents:function(t){return(0,d.iv)(!t&&an,";;label:contents;")}};function pn(t){return pn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},pn(t)}function fn(t){return function(t){if(Array.isArray(t))return In(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||gn(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function vn(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=gn(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function yn(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function bn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?yn(Object(n),!0).forEach((function(e){hn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):yn(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function hn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==pn(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==pn(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===pn(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function mn(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||gn(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function gn(t,e){if(t){if("string"==typeof t)return In(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?In(t,e):void 0}}function In(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var xn=new Set(["advancedcolor","advancedslider","alignment","boxshadow","buttons","color","margin","fonts","fontstyle","gradient","padding","slider","select","typography","radio"]),En=["h1","h2","h3","h4","h5","h6","p","div","span","br","section","strong"];function Sn(t){return Sn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Sn(t)}function On(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function wn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?On(Object(n),!0).forEach((function(e){Dn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):On(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Dn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Sn(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Sn(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Sn(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function An(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const _n=function(t){var e,n,a,l,d=t.children,s=t.content,p=t.sectionIndex,v=t.columnIndex,y=t.index,b=t.collectionItem,h=t.childIndex,g=t.placeholderPosition,I=t.disabled,x=t.tableItem,E=t.addonType,S=void 0===E?r.t.CollectionItemAddon:E,_=t.colors,C=void 0===_?{addon:i.qo.alternate.addon,background:i.qo.background.lightGreen}:_,L=t.isCollapsible,j=void 0!==L&&L,R=(0,c.$)(),B=(0,D.o)((function(t){return t.copiedData})),Z=(0,D.o)((function(t){return t.changeCollectionItemAddonVisibility})),k=(0,D.o)((function(t){return t.updateAdminLabel})),N=function(t){var e,n=t.content,o=t.parentVisibility,r=t.sectionIndex,i=t.columnIndex,a=t.index,l=t.collectionItem,d=t.childIndex,s=(0,c.$)(),p=mn((0,T.useState)(null),2),v=p[0],y=p[1],b=(0,O.T)().closeSettingPanel,h=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload}}),de.X),m=h.type,g=h.payload,I=(0,Jt.F)((function(t){return t.setSettings})),x=(0,D.o)((function(t){return t.copyCollectionItemAddon})),E=(0,D.o)((function(t){return t.pasteOrInsertCollectionItemAddon})),S=(0,D.o)((function(t){return t.pasteCollectionItemAddonStyle})),_=(0,u.x)((function(t){return t.globalSettings})),P=(0,D.o)((function(t){return t.duplicateCollectionItemAddon})),C=(0,D.o)((function(t){return t.copiedData})),L=(0,D.o)((function(t){return t.deleteCollectionItemAddon})),j=(0,D.o)((function(t){return t.changeCollectionItemAddonVisibility})),R=(0,D.o)((function(t){return t.page})),B=(0,w._)().getCollectionItemAddon,Z=(0,Y.Gc)(),k=(0,u.x)((function(t){return t.addonStructure})),W=(0,G.p)().showToast,N=(0,f.$K)(n.visibility)&&!n.visibility,U=o&&n.visibility,q="addon"===m&&g.sectionIndex===r&&g.columnIndex===i&&g.addonIndex===a&&(0,f.$K)(g.collectionItem)===(0,f.$K)(l);return(0,f.$K)(l)&&(q=q&&(null===(e=g.collectionItem)||void 0===e?void 0:e.itemIndex)===l.itemIndex&&g.collectionItem.itemAddonIndex===l.itemAddonIndex),{isEditing:q,isHidden:N,isVisible:U,addonDataToSave:v,resetAddonDataToSave:function(){return y(null)},handleActions:function(t){switch(t){case"copy":x(bn({sectionIndex:r,columnIndex:i,addonIndex:a},l)),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_COPIED_SUCCESSFULLY")});break;case"pasteAbove":b(),(0,f.$K)(C.addon)&&(E(bn(bn({addonData:C.addon,sectionIndex:r,columnIndex:i,addonIndex:a},l),{},{childIndex:d,parentId:n.parent,isAbove:!0})),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteBelow":b(),(0,f.$K)(C.addon)&&(E(bn(bn({addonData:C.addon,sectionIndex:r,columnIndex:i,addonIndex:a},l),{},{childIndex:d,parentId:n.parent})),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteStyle":var e,o;if(!(0,f.$K)(C.addon))return;var c=mn(C.addon.addons,1)[0],u=c.name,p=c.settings,v=k[u];if(n.name!==u||!(0,f.$K)(v)||!(0,f.$K)(p))return;var h=v.settings;if(!(0,f.$K)(h))return;var m=function t(e,n,o){var r,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=vn((0,f.zt)(e));try{for(l.s();!(r=l.n()).done;){var d,c=r.value.fields,u=vn((0,f.J0)(c));try{var s=function(){var e=mn(d.value,2),r=e[0],l=e[1];if((0,f.$K)(o[r])&&!(0,f.r3)(En,o[r])&&(xn.has(l.type)||i))a[r]=o[r];else if("repeatable"===l.type){var c=(0,f.kJ)(n[r])?n[r]:[],u=c.length,s=(0,f.kJ)(o[r])?o[r]:[],p=s.length;a[r]=s.slice(0,u).flatMap((function(e,n){var o;return bn(bn({},c[n]),t(null!==(o=l.attr)&&void 0!==o?o:{},c[n],e,!1,{}))})),u>p&&(a[r]=[].concat(fn(a[r]),fn(c.slice(p))))}};for(u.s();!(d=u.n()).done;)s()}catch(t){u.e(t)}finally{u.f()}}}catch(t){l.e(t)}finally{l.f()}return a},g=m(h,null!==(e=n.settings)&&void 0!==e?e:{},p),I=m(_.style,null!==(o=n.settings)&&void 0!==o?o:{},p,!0);S(bn({styleSettings:g,globalStyleSettings:I,sectionIndex:r,columnIndex:i,addonIndex:a},l)),b();break;case"hide":b(),j(bn(bn({sectionIndex:r,columnIndex:i,addonIndex:a},l),{},{visibility:!!n.visibility})),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":P(bn({sectionIndex:r,columnIndex:i,addonIndex:a,childIndex:d},l)),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"remove":b(),L(bn({sectionIndex:r,columnIndex:i,addonIndex:a},l)),W({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_REMOVED_SUCCESSFULLY")});break;case"save":var O,w,D=null!==(w=(null!==(O=R[r].columns[i].addons[a].items)&&void 0!==O?O:[])[l.itemIndex])&&void 0!==w?w:[],T=D[l.itemAddonIndex],B=null,Z=le()(T);if("div"===T.name){var N=(0,A.vH)({addon:Z,addonList:D}),U=N.divAddon,q=N.children;B={name:U.name,addons:[U].concat(fn(q)),sections:[]}}else B={name:Z.name,addons:[Z],sections:[]};(0,f.$K)(B)&&y({action:"save",data:JSON.stringify((0,f.M9)(B))})}},handleSetSettings:function(){var t,e;if("addon"!==m||g.sectionIndex!==r||g.columnIndex!==i||g.addonIndex!==a||(null===(t=g.collectionItem)||void 0===t?void 0:t.itemIndex)!==l.itemIndex||g.collectionItem.itemAddonIndex!==l.itemAddonIndex){I("collection_item_addon",{sectionIndex:r,columnIndex:i,addonIndex:a,collectionItem:l,addon:n});var o=null===(e=B({sectionIndex:r,columnIndex:i,addonIndex:a,collectionItem:l}))||void 0===e?void 0:e.settings;Z.reset(bn(bn({},Z.getValues()),{},{settings:o||{}}))}}}}(t),U=N.isEditing,q=N.isHidden,$=N.isVisible,M=N.handleActions,K=N.handleSetSettings,V=N.addonDataToSave,F=N.resetAddonDataToSave,H=(0,T.useRef)(null),X=(0,u.x)((function(t){return t.addonStructure})),z=(a=(0,T.useState)(!0),l=2,function(t){if(Array.isArray(t))return t}(a)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(a,l)||function(t,e){if(t){if("string"==typeof t)return An(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?An(t,e):void 0}}(a,l)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),J=z[0],Q=z[1],tt=(0,T.useRef)(J),et=He({sectionIndex:p,columnIndex:v}),nt=et.addonWidth,ot=et.addonTitleRef,rt=(0,Wt.nB)({id:s.id,data:{type:r.t.CollectionItemAddon,isVisible:$,sectionIndex:p,columnIndex:v,addonIndex:y,itemIndex:b.itemIndex,itemAddonIndex:b.itemAddonIndex,childIndex:h,content:s}}),it=rt.attributes,at=rt.listeners,lt=rt.setNodeRef,dt=rt.active,ct=rt.over,ut=rt.isDragging,st=rt.isOver,pt=rt.transform,ft=rt.transition,vt=W({active:dt,over:ct}),yt=X[s.name],bt=Qt({position:g,contentId:s.id,active:dt,over:ct,type:S}),ht=P({disable:"div"===(null==ct||null===(e=ct.data.current)||void 0===e?void 0:e.type),transform:pt,transition:ft,isDragging:ut});(0,T.useEffect)((function(){tt.current&&Q(!ut)}),[ut]),(0,T.useEffect)((function(){Q(!q),tt.current=!q}),[q]);var mt=S!==r.t.TableItem;if(!(0,f.$K)(yt))return(0,m.tZ)(Te,{id:s.id,setNodeRef:lt,isHidden:q,disabled:I,colors:C,placeholderStyle:bt,sortableStyle:ht,addonWidth:nt,addonType:S,addonName:s.name,copiedData:B,handleActions:M});var gt=(0,f.$K)(yt.title)?yt.title:"",It=(0,f.$K)(yt.icon)?yt.icon:"",xt=(null===(n=s.settings)||void 0===n?void 0:n.admin_label)||gt,Et=I||ut||st;return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{id:s.id.toString(),css:[Rn.addon({isEditing:U,isHidden:q,disabled:Et,colors:C,isTableItem:(0,f.$K)(x),droppable:!st||vt}),bt,ht,";label:CollectionItemAddon;"],ref:lt,children:[(0,m.BX)("div",wn(wn(wn({ref:ot,css:Rn.addonTitleWrapper(I,nt,S,J),title:R("COM_SPPAGEBUILDER_EDITOR_ADDON_CLICK_TITLE"),onClick:function(){K()},onKeyDown:f.ZT},it),S!==r.t.TableItem&&wn({},at)),{},{role:"button",tabIndex:-1,children:[(0,m.tZ)("span",{css:Rn.addonIcon,"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:It}}),(0,m.tZ)("span",{css:Rn.addonTitle,"data-addon-title":!0,children:(0,m.tZ)(Zt,{text:xt,updateAdminLabel:function(t){k({label:t,collectionItemAddon:{sectionIndex:p,columnIndex:v,addonIndex:y,itemIndex:b.itemIndex,itemAddonIndex:b.itemAddonIndex,childIndex:h}})}})}),(0,m.tZ)("div",{ref:H,css:Rn.actionButtonWrapper(nt),"data-action-button-wrapper":!0,children:q?(0,m.BX)("button",{type:"button",css:Rn.actionButton(),onClick:function(t){t.stopPropagation(),Z(wn(wn({sectionIndex:p,columnIndex:v,addonIndex:y},b),{},{visibility:!!s.visibility}))},children:[(0,m.tZ)(o.Z,{name:"eyeSlash"}),(0,f.$K)(nt)&&nt>80&&R("COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_SHOW")]}):(0,m.BX)(m.HY,{children:[j&&(0,m.tZ)("button",{type:"button",css:Rn.toggleButton(J),title:R("COM_SPPAGEBUILDER_EDITOR_EXPAND"),onClick:function(t){t.stopPropagation(),Q((function(t){return!t})),tt.current=!tt.current},children:(0,m.tZ)(o.Z,{name:"angleUp",width:20,height:20})}),(0,f.$K)(nt)&&nt>40&&(0,m.tZ)("button",{type:"button",css:Rn.actionButton(),children:(0,m.tZ)(o.Z,{name:"pencilOnBox"})}),(0,m.tZ)(Pe,{addonWidth:nt,addonType:S,addonName:s.name,copiedData:B,handleActions:M})]})})]})),(0,f.$K)(d)&&(0,m.tZ)("div",{css:Rn.contents(J),children:d}),mt&&(0,m.tZ)("button",wn(wn(wn({type:"button",css:Rn.addonDragHandler(C.addon),"data-addon-drag-handler":!0},it),at),{},{children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})}))]}),(0,m.tZ)(Xt,{ref:H,type:"addon",dataToSave:V,closePopover:F})]})};var Pn={name:"sxudyk-contents",styles:"display:none;height:0;opacity:0;padding:0;overflow:hidden;label:contents;"},Cn={name:"1bpgz68-toggleButton",styles:"transform:rotate(-180deg);label:toggleButton;"},Tn={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},Ln={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},jn={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},Rn={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem,l=t.droppable;return(0,d.iv)("border:1px solid ",l?i.qo.stroke.neutral:i.qo.stroke.error,";border-radius:",i.E0[4],";width:100%;position:relative;",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&jn," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",(n===r.t.DeepAddon||n===r.t.Div)&&o&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&Ln," ",(0,f.$K)(e)&&e<=80&&Tn,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonIcon:(0,d.iv)("line-height:0;transition:opacity 0.3s ease-in-out;svg{width:20px;height:20px;color:",i.qo.icon.default,";}img{width:20px;height:20px;};label:addonIcon;"),addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;;label:addonTitle;"),actionButtonWrapper:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[10],";position:absolute;right:",i.W0[16],";top:50%;transform:translateY(-50%);transition:opacity 0.3s ease-in-out;opacity:0;visibility:hidden;",(0,f.$K)(t)&&t<=220&&(0,d.iv)("right:",i.W0[8],";;label:actionButtonWrapper;")," ",(0,f.$K)(t)&&t<=80&&(0,d.iv)("gap:",i.W0[4],";right:50%;transform:translateY(-50%) translateX(50%);;label:actionButtonWrapper;"),";;label:actionButtonWrapper;")},actionButton:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.iv)(b.iZ.resetButton,";color:",i.qo.text.default,";display:flex;gap:",i.W0[8],";svg{color:",i.qo.icon.default,";}",!t&&(0,d.iv)(":hover{svg{color:",i.qo.icon.hover,";}};label:actionButton;"),";;label:actionButton;")},addonDragHandler:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",t,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);opacity:0;cursor:grab!important;;label:addonDragHandler;")},notFoundIcon:(0,d.iv)("color:",i.qo.base.warning,";width:18px;height:18px;;label:notFoundIcon;"),toggleButton:function(t){return(0,d.iv)(b.iZ.resetButton,";padding:",i.W0[2],";transition:transform 0.3s ease,opacity 0.3s ease;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}:hover{svg{color:",i.qo.icon.hover,";border-color:",i.qo.stroke.hover,";}}:active{svg{color:",i.qo.icon.primary,";}}",!t&&Cn,";;label:toggleButton;")},contents:function(t){return(0,d.iv)(!t&&Pn,";;label:contents;")}};function Bn(t){return Bn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bn(t)}function Zn(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function kn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Zn(Object(n),!0).forEach((function(e){Wn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Zn(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Wn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Bn(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Bn(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Bn(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Nn={addon:i.qo.alternate.div,background:i.qo.background.lightRoyalBlue};const Un=function t(e){var n=e.content,i=e.sectionIndex,a=e.columnIndex,l=e.index,d=e.collectionItem,u=e.placeholderPosition,s=e.disabled,p=e.parentVisibility,v=(0,c.$)(),y=(0,w._)().getCollectionItemAddonChildAddonById,b=(0,H.j)((function(t){return t.setActiveAction})),h=p&&n.visibility;return(0,m.tZ)(_n,kn(kn({},e),{},{addonType:r.t.CollectionItemAddon,colors:Nn,isCollapsible:!0,children:(0,f.$K)(n)&&((0,f.$K)(n.children)&&n.children.length?(0,m.tZ)(Wt.Fo,{id:n.id.toString(),items:n.children,strategy:Wt.qw,children:(0,m.tZ)("div",{css:qn.childrenWrapper,children:n.children.map((function(e,o){var r=y({sectionIndex:i,columnIndex:a,addonIndex:l,collectionItem:d,itemAddonId:e}),c=r.index,v=r.content;return(0,f.$K)(v)?"div"===v.name?(0,m.tZ)(t,{content:v,sectionIndex:i,columnIndex:a,index:l,collectionItem:{itemIndex:d.itemIndex,itemAddonIndex:c},childIndex:o,placeholderPosition:u,disabled:!n.visibility||s,parentVisibility:p&&n.visibility},e):(0,m.tZ)(_n,{content:v,sectionIndex:i,columnIndex:a,index:l,collectionItem:{itemIndex:d.itemIndex,itemAddonIndex:c},childIndex:o,placeholderPosition:u,disabled:!n.visibility||s,parentVisibility:p&&n.visibility},e):null}))})}):(0,m.tZ)(N,{id:"".concat(n.id,"-empty-child"),customStyle:qn.emptyChildren,isHidden:!h,data:{type:r.t.CollectionItemAddon,isVisible:h,sectionIndex:i,columnIndex:a,addonIndex:l,itemIndex:d.itemIndex,itemAddonIndex:d.itemAddonIndex,childIndex:0,content:n,isEmptyChild:!0},children:(0,m.tZ)("button",{disabled:!h,title:v("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(){return b("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})}))}))};var qn={childrenWrapper:(0,d.iv)("display:flex;flex-direction:column;gap:",i.W0[16],";padding:",i.W0[16],";margin:0 ",i.W0[16]," ",i.W0[16],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";;label:childrenWrapper;"),emptyChildren:(0,d.iv)("height:100%;border:1px dashed ",i.qo.stroke.neutral,";border-radius:0 0 ",i.E0[2],";margin:0 ",i.W0[16]," ",i.W0[16],";button{",b.iZ.resetButton,";width:100%;height:100px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";};label:emptyChildren;")};function Gn(t){return Gn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Gn(t)}function $n(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Mn(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?$n(Object(n),!0).forEach((function(e){Kn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):$n(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Kn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Gn(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Gn(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Gn(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Vn(){Vn=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new w(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==Gn(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;O(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function Fn(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}var Hn={addon:i.qo.alternate.div,background:i.qo.background.lightRoyalBlue};const Yn=function(t){var e=t.content,n=t.sectionIndex,i=t.columnIndex,a=t.index,l=t.placeholderPosition,d=t.disabled,u=t.parentVisibility,s=(0,c.$)(),p=(0,H.j)((function(t){return t.setActiveAction})),v=u&&e.visibility,y=(0,D.o)((function(t){return t.addCollectionItems})),b=(0,Ut.b)();(0,T.useEffect)((function(){var t;(t=Vn().mark((function t(){var o,r,l,d;return Vn().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r=null===(o=e.settings)||void 0===o?void 0:o.presets,l=Number(r),!Number.isNaN(l)){t.next=4;break}return t.abrupt("return");case 4:return t.next=6,b.mutateAsync(l);case 6:d=t.sent,(0,f.$K)(d)&&y({sectionIndex:n,columnIndex:i,addonIndex:a,preset:d.preset});case 8:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){Fn(i,o,r,a,l,"next",t)}function l(t){Fn(i,o,r,a,l,"throw",t)}a(void 0)}))})()}),[i,a,n]);var h=function(t,c){return t.length?(0,m.tZ)(Wt.Fo,{id:e.id.toString(),items:t.filter((function(t){return!t.parent})),strategy:Wt.qw,children:(0,m.tZ)("div",{css:Xn.childrenWrapper,children:t.map((function(t,o){return"parent"in t&&t.parent?null:"div"===t.name?(0,m.tZ)(Un,{content:t,sectionIndex:n,columnIndex:i,index:a,collectionItem:{itemIndex:c,itemAddonIndex:o},placeholderPosition:l,disabled:!e.visibility||d,parentVisibility:u&&e.visibility},t.id):(0,m.tZ)(_n,{sectionIndex:n,columnIndex:i,index:a,collectionItem:{itemIndex:c,itemAddonIndex:o},content:t,placeholderPosition:l,disabled:!e.visibility||d,parentVisibility:u&&e.visibility,addonType:r.t.CollectionItemAddon},t.id)}))})},c):(0,m.tZ)(N,{id:"".concat(e.id,"-empty-child"),customStyle:Xn.emptyChildren,isHidden:!v,data:{type:r.t.CollectionItemAddon,isVisible:v,sectionIndex:n,columnIndex:i,addonIndex:a,content:e},children:(0,m.tZ)("button",{disabled:!v,title:s("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(){return p("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})},c)};return(0,m.tZ)(rn,Mn(Mn({},t),{},{colors:Hn,isCollapsible:!0,children:(0,f.$K)(e)&&((0,f.$K)(e.items)?(0,m.tZ)("div",{css:Xn.grid(1),children:e.items.slice(0,1).map((function(t,e){return(0,f.$K)(t)?h(t,e):null}))}):null)}))};var Xn={grid:function(t){return(0,d.iv)("display:",1===t?"block":"grid",";grid-template-columns:repeat(",t,", 1fr);grid-template-rows:auto;overflow-x:auto;;label:grid;")},childrenWrapper:(0,d.iv)("display:flex;flex-direction:column;gap:",i.W0[10],";padding:",i.W0[10],";margin:0 ",i.W0[12]," ",i.W0[12],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";;label:childrenWrapper;"),emptyChildren:(0,d.iv)("height:100%;border:1px dashed ",i.qo.stroke.neutral,";border-radius:0 0 ",i.E0[2],";margin:0 ",i.W0[16]," ",i.W0[16],";button{",b.iZ.resetButton,";width:100%;height:100px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";};label:emptyChildren;")};function zn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const Jn=function(t){var e,n,i,a,l=t.content,d=t.isVisible,c=t.placeholderPosition,u=(i=(0,T.useState)(0),a=2,function(t){if(Array.isArray(t))return t}(i)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(i,a)||function(t,e){if(t){if("string"==typeof t)return zn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?zn(t,e):void 0}}(i,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=u[0],p=u[1],v=(0,w._)().getSectionById,y=null!==(e=null===(n=l.settings)||void 0===n?void 0:n[r.RI[l.name].key])&&void 0!==e?e:[],b=function(){if(!(0,f.$K)(s))return null;var t=y[s],e=(0,f.$K)(t)?t.content:[];return(0,m.tZ)("div",{css:to.body(d),children:e.map((function(t){var e=v(t.id),n=e.index,o=e.content;return(0,f.$K)(o)?(0,m.tZ)(ir,{index:n,content:o,placeholderPosition:c,disabled:!d,parentVisibility:d,sectionType:r.t.DeepAddonRow},t.id):null}))})};return(0,m.tZ)("div",{css:to.wrapper,children:y.map((function(t,e){return(0,m.BX)("div",{css:to.accordionItem,children:[(0,m.BX)("button",{css:to.navItem(s===e,d),onClick:function(){return p(s===e?null:e)},children:[(0,m.tZ)(o.Z,{name:"caretRight",height:16,width:16}),(0,m.tZ)("div",{css:to.title,children:t.title})]}),s===e&&b()]},"".concat(t.title).concat(e))}))})};var Qn={name:"1jmy1n7-navItem",styles:"transform:rotate(90deg);label:navItem;"},to={wrapper:(0,d.iv)("margin:0 ",i.W0[16]," ",i.W0[16],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";;label:wrapper;"),accordionItem:(0,d.iv)("&:not(:first-of-type){border-top:1px solid ",i.qo.stroke.neutral,";};label:accordionItem;"),navItem:function(t,e){return(0,d.iv)("width:100%;display:flex;gap:",i.W0[12],";",b.iZ.resetButton," padding:",i.W0[16],";",t&&e&&(0,d.iv)("color:",i.qo.text.primary,";background-color:",i.qo.background.primary,";;label:navItem;")," svg{color:",i.qo.icon.default,";transition:transform 0.3s ease-out;",t&&Qn,";};label:navItem;")},title:(0,d.iv)("font-family:",i.I8.sansSerif,";font-style:normal;font-weight:400;font-size:",i.JB[12],";line-height:",i.Nv[18],";text-align:justify;color:",i.qo.text.default,";;label:title;"),body:function(t){return(0,d.iv)("padding:0 ",i.W0[16]," ",i.W0[16],";",t&&(0,d.iv)("background-color:",i.qo.background.primary,";;label:body;"),";;label:body;")}};function eo(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return no(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?no(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function no(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function oo(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const ro=function(t){var e,n,i,a,l=t.content,d=t.isVisible,u=t.placeholderPosition,s=(0,c.$)(),p=(i=(0,T.useState)(0),a=2,function(t){if(Array.isArray(t))return t}(i)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(i,a)||function(t,e){if(t){if("string"==typeof t)return oo(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?oo(t,e):void 0}}(i,a)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),v=p[0],y=p[1],b=(0,w._)().getSectionById,h=null!==(e=null===(n=l.settings)||void 0===n?void 0:n[r.RI[l.name].key])&&void 0!==e?e:[],g=h[v],I=(0,f.$K)(g)?g.content:[],x=function(t){var e=t.itemsLength,n=(0,T.useRef)(null),o=eo((0,T.useState)(0),2),r=o[0],i=o[1],a=eo((0,T.useState)(!1),2),l=a[0],d=a[1];return(0,T.useEffect)((function(){n.current&&n.current.addEventListener("scrollend",(function(){if(n.current){var t=Math.min(n.current.scrollLeft,n.current.scrollWidth-n.current.clientWidth);i(t),d(t===n.current.scrollWidth-n.current.clientWidth)}}))}),[]),(0,T.useEffect)((function(){n.current&&d(r===n.current.scrollWidth-n.current.clientWidth)}),[e]),{scrollContainerRef:n,handleScroll:function(t){var e=t.direction;if(n.current){var o=n.current.scrollWidth-n.current.clientWidth,r=Math.min(o,n.current.scrollLeft+100);"left"===e&&(r=Math.max(0,n.current.scrollLeft-100)),i(r),d(r===n.current.scrollWidth-n.current.clientWidth),n.current.scrollLeft=r}},scrollLeftAmount:r,isScrolledToEnd:l}}({itemsLength:h.length}),E=x.scrollContainerRef,S=x.scrollLeftAmount,O=x.isScrolledToEnd,D=x.handleScroll;return(0,m.BX)("div",{css:io.wrapper,children:[(0,m.BX)("div",{css:io.nav,children:[S>0&&(0,m.tZ)("div",{css:io.navButtonWrapper({direction:"left"}),children:(0,m.tZ)("button",{type:"button",css:io.navButtonStyle,onClick:function(){return D({direction:"left"})},children:(0,m.tZ)("span",{css:io.navButtonContentStyle,title:s("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS"),children:(0,m.tZ)(o.Z,{name:"chevronLeft",height:20,width:20})})})}),(0,m.tZ)("div",{ref:E,css:io.navItemsWrapper,children:h.map((function(t,e){return(0,m.BX)("button",{css:io.navItem(v===e,d),onClick:function(){return y(e)},children:[(0,m.tZ)("div",{children:t.title}),t.subtitle&&(0,m.tZ)("span",{children:t.subtitle})]},"".concat(t.title).concat(e))}))}),!O&&(0,m.tZ)("div",{css:io.navButtonWrapper({direction:"right"}),children:(0,m.tZ)("button",{type:"button",css:io.navButtonStyle,onClick:function(){return D({direction:"right"})},children:(0,m.tZ)("span",{css:io.navButtonContentStyle,title:s("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS"),children:(0,m.tZ)(o.Z,{name:"chevronRight",height:20,width:20})})})})]}),(0,m.tZ)("div",{css:io.body(d),children:I.map((function(t){var e=b(t.id),n=e.index,o=e.content;return(0,f.$K)(o)?(0,m.tZ)(ir,{index:n,content:o,placeholderPosition:u,disabled:!d,parentVisibility:d,sectionType:r.t.DeepAddonRow},t.id):null}))})]})};var io={wrapper:(0,d.iv)("display:flex;flex-direction:column;border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[4],";margin:0 ",i.W0[16]," ",i.W0[16],";overflow:hidden;;label:wrapper;"),nav:{name:"1yhlv30-nav",styles:"display:flex;position:relative;label:nav;"},navItemsWrapper:function(){return(0,d.iv)("display:flex;border-bottom:1px solid ",i.qo.stroke.neutral,";overflow-x:auto;scroll-behavior:smooth;&::-webkit-scrollbar{display:none;}&{-ms-overflow-style:none;scrollbar-width:none;};label:navItemsWrapper;")},navItem:function(t,e){return(0,d.iv)(b.iZ.resetButton," font-size:",i.JB[14],";padding:",i.W0[16],";border-right:1px solid ",i.qo.stroke.neutral,";min-height:52px;max-width:160px;position:relative;>div{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;word-wrap:break-word;}",t&&(0,d.iv)("color:",i.qo.text.primary,";",e&&(0,d.iv)("background-color:",i.qo.background.primary,";;label:navItem;")," &::before{content:'';width:100%;height:1px;position:absolute;left:0;bottom:-1px;",e&&(0,d.iv)("background-color:",i.qo.background.primary,";;label:navItem;"),";};label:navItem;"),";;label:navItem;")},navButtonWrapper:function(t){var e=t.direction;return(0,d.iv)("height:100%;width:120px;padding:",i.W0[4],";display:flex;align-items:center;position:absolute;top:0;","left"===e&&(0,d.iv)("left:0;justify-content:left;background:linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, #fff 66.67%);padding-left:",i.W0[16],";z-index:",i.W5.positive,";;label:navButtonWrapper;")," ","right"===e&&(0,d.iv)("right:0;justify-content:right;background:linear-gradient(270deg, #fff 32.32%, rgba(255, 255, 255, 0) 100%);padding-right:",i.W0[16],";;label:navButtonWrapper;"),";;label:navButtonWrapper;")},navButtonStyle:(0,d.iv)(b.iZ.flexCenter(),";",b.iZ.resetButton,";border-radius:",i.E0.circle,";;label:navButtonStyle;"),navButtonContentStyle:(0,d.iv)(b.iZ.centeredFlex,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[6],";width:24px;height:24px;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;};label:navButtonContentStyle;"),body:function(t){return(0,d.iv)("padding:",i.W0[16],";",t&&(0,d.iv)("background-color:",i.qo.background.primary,";;label:body;"),";;label:body;")}};const ao=function(t){var e,n,i,a,l,d,u=t.content,s=t.sectionIndex,p=t.columnIndex,v=t.index,y=t.isVisible,b=t.placeholderPosition,h=(0,H.j)((function(t){return t.setActiveAction})),g=(0,c.$)(),I=null!==(e=null===(n=u.settings)||void 0===n?void 0:n[r.pb.headerItemsKey])&&void 0!==e?e:[],x=null!==(i=null===(a=u.settings)||void 0===a?void 0:a[r.pb.bodyItemsKey])&&void 0!==i?i:[];return(0,m.BX)("div",{css:lo.wrapper,children:[!(0,f.$K)(null===(l=u.settings)||void 0===l?void 0:l.turn_off_heading)||!(null!==(d=u.settings)&&void 0!==d&&d.turn_off_heading)&&(0,m.tZ)("div",{css:lo.headerWrapper,children:I.map((function(t,e){if(0===t.content.length){var n="empty-table-header-item-".concat(e);return(0,m.tZ)(N,{id:n,customStyle:lo.emptyItem,isHidden:!y,data:{type:r.t.TableItem,sectionIndex:s,columnIndex:p,addonIndex:v,tableItem:{itemIdx:e,contentItemIdx:0},content:u,isVisible:y},children:(0,m.tZ)("button",{disabled:!y,title:g("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(){return h("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})},n)}return(0,m.tZ)("div",{css:lo.headerItem,children:t.content.map((function(t,n){return(0,m.tZ)(rn,{content:t,sectionIndex:s,columnIndex:p,index:v,placeholderPosition:b,disabled:!y,parentVisibility:y,tableItem:{itemIdx:e,contentItemIdx:n},addonType:r.t.TableItem},t.id)}))},e)}))}),(0,m.tZ)("div",{css:lo.bodyWrapper,children:x.map((function(t,e){return(0,m.tZ)("div",{css:lo.bodyRowWrapper,children:(0,f.$K)(t.table_advanced_item)&&t.table_advanced_item.map((function(t,n){if(0===t.content.length){var i="empty-table-body-item-".concat(e,"-").concat(n);return(0,m.tZ)(N,{id:i,customStyle:lo.emptyItem,isHidden:!y,data:{type:r.t.TableItem,sectionIndex:s,columnIndex:p,addonIndex:v,tableItem:{itemIdx:e,rowItemIdx:n,contentItemIdx:0},content:u,isVisible:y},children:(0,m.tZ)("button",{disabled:!y,title:g("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(t){t.stopPropagation(),h("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})},i)}return(0,m.tZ)("div",{css:lo.bodyItem,children:t.content.map((function(t,o){return(0,m.tZ)(rn,{content:t,sectionIndex:s,columnIndex:p,index:v,placeholderPosition:b,disabled:!y,parentVisibility:y,tableItem:{itemIdx:e,rowItemIdx:n,contentItemIdx:o},addonType:r.t.TableItem},t.id)}))},n)}))},e)}))})]})};var lo={wrapper:(0,d.iv)("margin:0 ",i.W0[16]," ",i.W0[16],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";overflow-x:auto;;label:wrapper;"),headerWrapper:(0,d.iv)("display:flex;gap:",i.W0[6],";padding:",i.W0[6],";border-bottom:1px solid ",i.qo.stroke.neutral,";background-color:",i.qo.background.primary,";min-width:fit-content;;label:headerWrapper;"),bodyWrapper:(0,d.iv)("display:flex;flex-direction:column;gap:",i.W0[6],";padding:",i.W0[6],";min-width:fit-content;;label:bodyWrapper;"),headerItem:(0,d.iv)("width:100%;display:flex;flex-direction:column;gap:",i.W0[6],";;label:headerItem;"),bodyRowWrapper:(0,d.iv)("display:flex;gap:",i.W0[6],";;label:bodyRowWrapper;"),bodyItem:(0,d.iv)("width:100%;display:flex;flex-direction:column;gap:",i.W0[6],";;label:bodyItem;"),emptyItem:(0,d.iv)("width:100%;height:100%;border:1px dashed ",i.qo.stroke.neutral,";border-radius:0 0 ",i.E0[2],";button{",b.iZ.resetButton,";width:100%;height:40px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";width:",i.W0[24],";height:",i.W0[24],";};label:emptyItem;")};function co(t){return co="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},co(t)}function uo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function so(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?uo(Object(n),!0).forEach((function(e){po(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):uo(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function po(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==co(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==co(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===co(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var fo={addon:i.qo.alternate.div,background:i.qo.background.white};const vo=function(t){var e=t.content,n=t.sectionIndex,o=t.columnIndex,i=t.index,a=t.placeholderPosition,l=t.parentVisibility&&e.visibility;return(0,m.tZ)(rn,so(so({},t),{},{addonType:r.t.DeepAddon,colors:fo,isCollapsible:!0,children:(0,f.$K)(e)&&(e.name===r.pb.name?(0,m.tZ)(ao,{content:e,sectionIndex:n,columnIndex:o,index:i,isVisible:l,placeholderPosition:a}):e.name===r.RI.accordion.name?(0,m.tZ)(Jn,{content:e,placeholderPosition:a,isVisible:l}):e.name===r.RI.tab.name?(0,m.tZ)(ro,{content:e,placeholderPosition:a,isVisible:l}):null)}))};function yo(t){return yo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},yo(t)}function bo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function ho(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?bo(Object(n),!0).forEach((function(e){mo(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):bo(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function mo(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==yo(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==yo(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===yo(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function go(){go=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new w(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==yo(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function w(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,w.prototype={constructor:w,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),O(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;O(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function Io(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}function xo(t){return function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){Io(i,o,r,a,l,"next",t)}function l(t){Io(i,o,r,a,l,"throw",t)}a(void 0)}))}}function Eo(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return So(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?So(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function So(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const Oo=function(t){var e,n,a=t.children,l=t.content,d=t.sectionIndex,s=t.columnIndex,p=t.index,v=t.childIndex,y=t.placeholderPosition,b=t.disabled,h=t.addonType,g=void 0===h?r.t.CollectionItemAddon:h,I=t.colors,x=void 0===I?{addon:i.qo.alternate.addon,background:i.qo.background.lightGreen}:I,E=t.isCollapsible,S=void 0!==E&&E,O=t.isDynamicContentChild,w=void 0!==O&&O,A=(t.collectionItem,(0,c.$)()),_=(0,K.d)().showModal,C=(0,D.o)((function(t){return t.copiedData})),L=(0,D.o)((function(t){return t.changeVisibilityOfDynamicContentAddon})),j=(0,D.o)((function(t){return t.updateAdminLabel})),R=Ee(t),B=R.isEditing,Z=R.isHidden,k=R.isVisible,N=R.handleActions,U=R.handleSetSettings,q=R.addonDataToSave,G=R.resetAddonDataToSave,$=Eo((0,T.useState)(!1),2),M=$[0],V=$[1],F=function(){var t=xo(go().mark((function t(e){return go().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,j({label:e,dynamicCollectionItemAddon:{addon:l}});case 2:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),H=function(t){var e,n;"rename"===t&&_({component:Oe.Z,props:{title:A("COM_SPPAGEBUILDER_EDITOR_RENAME_ADDON"),placeholder:A("COM_SPPAGEBUILDER_EDITOR_ADDON_NAME_PLACEHOLDER"),currentName:(null===(e=l.settings)||void 0===e?void 0:e.admin_label)||"",onSave:(n=xo(go().mark((function t(e){return go().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,F(e);case 2:case"end":return t.stop()}}),t)}))),function(t){return n.apply(this,arguments)})}}),N(t)},Y=(0,T.useRef)(null),X=(0,u.x)((function(t){return t.addonStructure})),z=Eo((0,T.useState)(!0),2),J=z[0],Q=z[1],tt=(0,T.useRef)(J),et=He({sectionIndex:d,columnIndex:s}),nt=et.addonWidth,ot=et.addonTitleRef,rt=(0,Wt.nB)({id:l.id,data:{type:r.t.DCCollectionItemAddon,isVisible:k,sectionIndex:d,columnIndex:s,addonIndex:p,childIndex:v,content:l,isDynamicContentChild:w}}),it=rt.attributes,at=rt.listeners,lt=rt.setNodeRef,dt=rt.active,ct=rt.over,ut=rt.isDragging,st=rt.isOver,pt=rt.transform,ft=rt.transition,vt=W({active:dt,over:ct}),yt=X[l.name],bt=Qt({position:y,contentId:l.id,active:dt,over:ct,type:g}),ht=P({disable:"div"===(null==ct||null===(e=ct.data.current)||void 0===e?void 0:e.type),transform:pt,transition:ft,isDragging:ut});(0,T.useEffect)((function(){tt.current&&Q(!ut)}),[ut]),(0,T.useEffect)((function(){Q(!Z),tt.current=!Z}),[Z]);var mt=g!==r.t.TableItem;if(!(0,f.$K)(yt))return(0,m.tZ)(Te,{id:l.id,setNodeRef:lt,isHidden:Z,disabled:b,colors:x,placeholderStyle:bt,sortableStyle:ht,addonWidth:nt,addonType:g,addonName:l.name,copiedData:C,handleActions:H});var gt=(0,f.$K)(yt.title)?yt.title:"",It=(0,f.$K)(yt.icon)?yt.icon:"",xt=(null===(n=l.settings)||void 0===n?void 0:n.admin_label)||gt,Et=b||ut||st,St=(0,T.useMemo)((function(){var t,e;if("dynamic_content_text"!==l.name&&"dynamic_content_image"!==l.name)return"";var n=null===(t=l.settings)||void 0===t||null===(e=t.attribute)||void 0===e?void 0:e.name;return(0,f.$K)(n)?n:""}),[l.name,l.settings]);return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{id:l.id.toString(),css:[Co.addon({isEditing:B,isHidden:Z,disabled:Et,colors:x,isTableItem:!1,droppable:!st||vt}),bt,ht,";label:DCCollectionItemAddon;"],ref:lt,children:[(0,m.BX)("div",ho(ho(ho({ref:ot,css:Co.addonTitleWrapper(b,nt,g,J),title:A("COM_SPPAGEBUILDER_EDITOR_ADDON_CLICK_TITLE"),onClick:function(){U()},onKeyDown:f.ZT},it),g!==r.t.TableItem&&ho({},at)),{},{role:"button",tabIndex:-1,children:[(0,m.tZ)("span",{css:Co.addonIcon,"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:It}}),(0,m.tZ)("span",{css:Co.addonTitle,"data-addon-title":!0,children:(0,m.tZ)(Zt,{text:xt,suffix:St,isEditable:M,onIsEditableChange:V,updateAdminLabel:function(t){j({label:t,dynamicCollectionItemAddon:{addon:l}})}})}),!1,(0,m.tZ)("div",{ref:Y,css:Co.actionButtonWrapper(nt),"data-action-button-wrapper":!0,children:Z?(0,m.BX)("button",{type:"button",css:Co.actionButton(),onClick:function(t){t.stopPropagation(),L({sectionIndex:d,columnIndex:s,addon:l,visibility:!!l.visibility})},children:[(0,m.tZ)(o.Z,{name:"eyeSlash"}),(0,f.$K)(nt)&&nt>80&&A("COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_SHOW")]}):(0,m.BX)(m.HY,{children:[S&&(0,m.tZ)("button",{type:"button",css:Co.toggleButton(J),title:A("COM_SPPAGEBUILDER_EDITOR_EXPAND"),onClick:function(t){t.stopPropagation(),Q((function(t){return!t})),tt.current=!tt.current},children:(0,m.tZ)(o.Z,{name:"angleUp",width:20,height:20})}),(0,f.$K)(nt)&&nt>40&&(0,m.tZ)("button",{type:"button",css:Co.actionButton(),children:(0,m.tZ)(o.Z,{name:"pencilOnBox"})}),(0,m.tZ)(Pe,{addonWidth:nt,addonType:g,addonName:l.name,copiedData:C,handleActions:H})]})})]})),(0,f.$K)(a)&&(0,m.tZ)("div",{css:Co.contents(J),children:a}),mt&&(0,m.tZ)("button",ho(ho(ho({type:"button",css:Co.addonDragHandler(x.addon),"data-addon-drag-handler":!0},it),at),{},{children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})}))]}),(0,m.tZ)(Xt,{ref:Y,type:"addon",dataToSave:q,closePopover:G})]})};var wo={name:"sxudyk-contents",styles:"display:none;height:0;opacity:0;padding:0;overflow:hidden;label:contents;"},Do={name:"1bpgz68-toggleButton",styles:"transform:rotate(-180deg);label:toggleButton;"},Ao={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},_o={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},Po={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},Co={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem,l=t.droppable;return(0,d.iv)("border:1px solid ",l?i.qo.stroke.neutral:i.qo.stroke.error,";border-radius:",i.E0[4],";width:100%;position:relative;",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&Po," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",(n===r.t.DeepAddon||n===r.t.Div)&&o&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&_o," ",(0,f.$K)(e)&&e<=80&&Ao,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonIcon:(0,d.iv)("line-height:0;transition:opacity 0.3s ease-in-out;svg{width:20px;height:20px;color:",i.qo.icon.default,";}img{width:20px;height:20px;};label:addonIcon;"),addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;;label:addonTitle;"),actionButtonWrapper:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[10],";position:absolute;right:",i.W0[16],";top:50%;transform:translateY(-50%);transition:opacity 0.3s ease-in-out;opacity:0;visibility:hidden;",(0,f.$K)(t)&&t<=220&&(0,d.iv)("right:",i.W0[8],";;label:actionButtonWrapper;")," ",(0,f.$K)(t)&&t<=80&&(0,d.iv)("gap:",i.W0[4],";right:50%;transform:translateY(-50%) translateX(50%);;label:actionButtonWrapper;"),";;label:actionButtonWrapper;")},actionButton:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.iv)(b.iZ.resetButton,";color:",i.qo.text.default,";display:flex;gap:",i.W0[8],";svg{color:",i.qo.icon.default,";}",!t&&(0,d.iv)(":hover{svg{color:",i.qo.icon.hover,";}};label:actionButton;"),";;label:actionButton;")},addonDragHandler:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",t,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);opacity:0;cursor:grab!important;;label:addonDragHandler;")},toggleButton:function(t){return(0,d.iv)(b.iZ.resetButton,";padding:",i.W0[2],";transition:transform 0.3s ease,opacity 0.3s ease;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}:hover{svg{color:",i.qo.icon.hover,";border-color:",i.qo.stroke.hover,";}}:active{svg{color:",i.qo.icon.primary,";}}",!t&&Do,";;label:toggleButton;")},contents:function(t){return(0,d.iv)(!t&&wo,";;label:contents;")}};function To(t){return To="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},To(t)}function Lo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function jo(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Lo(Object(n),!0).forEach((function(e){Ro(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Lo(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Ro(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==To(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==To(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===To(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Bo={addon:i.qo.alternate.div,background:i.qo.background.lightRoyalBlue};const Zo=function t(e){var n,i,a=e.content,l=e.sectionIndex,d=e.columnIndex,u=e.index,s=(e.childIndex,e.placeholderPosition),p=e.disabled,v=e.parentVisibility,y=(e.isRegularDivChild,e.isDynamicContentChild,(0,c.$)()),b=(0,H.j)((function(t){return t.setActiveAction})),h=v&&a.visibility;return(0,m.tZ)(rn,jo(jo({},e),{},{colors:Bo,isCollapsible:!0,children:(0,f.$K)(a)&&(0,m.tZ)("div",{css:ko.grid(1),children:(0,f.$K)(a.child_nodes)&&(n=a.child_nodes,i=u,n.length?(0,m.tZ)(Wt.Fo,{id:a.id.toString(),items:n,strategy:Wt.qw,children:(0,m.tZ)("div",{css:ko.childrenWrapper,children:n.map((function(e,n){return(0,Se.Lx)(e.name)||"div"===e.name?(0,m.tZ)(t,{content:e,sectionIndex:l,columnIndex:d,index:i,placeholderPosition:s,disabled:!a.visibility||p,parentVisibility:v&&a.visibility,addonType:r.t.DCCollectionItemAddon,isDynamicContentChild:!0},e.id):(0,m.tZ)(Oo,{sectionIndex:l,columnIndex:d,index:u,content:e,placeholderPosition:s,disabled:!a.visibility||p,parentVisibility:v&&a.visibility,addonType:r.t.DCCollectionItemAddon,isDynamicContentChild:!0,collectionItem:{itemIndex:i,itemAddonIndex:n}},e.id)}))})},i):(0,m.tZ)(N,{id:"".concat(a.id,"-empty-child"),customStyle:ko.emptyChildren,isHidden:!h,data:{type:r.t.DCCollectionAddonEmptyChild,isVisible:h,sectionIndex:l,columnIndex:d,addonIndex:u,content:a,isRegularDivChild:!1,isDynamicContentChild:!0},children:(0,m.tZ)("button",{disabled:!h,title:y("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(){return b("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})},i))})}))};var ko={grid:function(t){return(0,d.iv)("display:",1===t?"block":"grid",";grid-template-columns:repeat(",t,", 1fr);grid-template-rows:auto;overflow-x:auto;;label:grid;")},childrenWrapper:(0,d.iv)("display:flex;flex-direction:column;gap:",i.W0[10],";padding:",i.W0[10],";margin:0 ",i.W0[12]," ",i.W0[12],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";;label:childrenWrapper;"),emptyChildren:(0,d.iv)("height:100%;border:1px dashed ",i.qo.stroke.neutral,";border-radius:0 0 ",i.E0[2],";margin:0 ",i.W0[16]," ",i.W0[16],";button{",b.iZ.resetButton,";width:100%;height:100px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";};label:emptyChildren;")};function Wo(t){return Wo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Wo(t)}function No(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Uo(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?No(Object(n),!0).forEach((function(e){qo(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):No(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function qo(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Wo(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Wo(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Wo(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Go={addon:i.qo.alternate.div,background:i.qo.background.lightRoyalBlue};const $o=function t(e){var n=e.content,i=e.sectionIndex,a=e.columnIndex,l=e.index,d=e.childIndex,u=e.tableItem,s=e.placeholderPosition,p=e.disabled,v=e.parentVisibility,y=(e.isRegularDivChild,(0,c.$)()),b=(0,w._)().getChildAddonById,h=(0,H.j)((function(t){return t.setActiveAction})),g=v&&n.visibility;return(0,m.tZ)(rn,Uo(Uo({},e),{},{addonType:r.t.Div,colors:Go,isCollapsible:!0,children:(0,f.$K)(n)&&((0,f.$K)(n.children)&&n.children.length?(0,m.tZ)(Wt.Fo,{id:n.id.toString(),items:n.children,strategy:Wt.qw,children:(0,m.tZ)("div",{css:Mo.childrenWrapper,children:n.children.map((function(e,o){var l=b({sectionIndex:i,columnIndex:a,id:e}),d=l.index,c=l.content;return(0,f.$K)(c)?"div"===c.name?(0,m.tZ)(t,{content:c,sectionIndex:i,columnIndex:a,index:d,childIndex:o,placeholderPosition:s,disabled:!n.visibility||p,parentVisibility:v&&n.visibility,isRegularDivChild:!0},e):(0,Se.Lx)(c.name)?(0,m.tZ)(Zo,{content:c,sectionIndex:i,columnIndex:a,index:d,childIndex:o,placeholderPosition:s,disabled:!n.visibility||p,parentVisibility:v&&n.visibility,addonType:r.t.DCCollectionItemAddon,isRegularDivChild:!0},c.id):Object.keys(r.RI).includes(c.name)||c.name===r.pb.name?(0,m.tZ)(vo,{content:c,sectionIndex:i,columnIndex:a,index:d,childIndex:o,placeholderPosition:s,disabled:!n.visibility||p,parentVisibility:v&&n.visibility,isRegularDivChild:!0},c.id):(0,f.dA)(c.name)?(0,m.tZ)(Yn,{content:c,sectionIndex:i,columnIndex:a,index:d,childIndex:o,placeholderPosition:s,disabled:!n.visibility||p,parentVisibility:v&&n.visibility,isRegularDivChild:!0},c.id):(0,m.tZ)(rn,{sectionIndex:i,columnIndex:a,content:c,index:d,childIndex:o,placeholderPosition:s,disabled:!n.visibility||p,parentVisibility:v&&n.visibility,isRegularDivChild:!0},e):null}))})}):(0,m.tZ)(N,{id:"".concat(n.id,"-empty-child"),customStyle:Mo.emptyChildren,isHidden:!g,data:{type:r.t.EmptyDivChild,isVisible:g,sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d,tableItem:u,content:n,isRegularDivChild:!0},children:(0,m.tZ)("button",{disabled:!g,title:y("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(){return h("add-elements")},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})}))}))};var Mo={childrenWrapper:(0,d.iv)("display:flex;flex-direction:column;gap:",i.W0[16],";padding:",i.W0[16],";margin:0 ",i.W0[16]," ",i.W0[16],";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";;label:childrenWrapper;"),emptyChildren:(0,d.iv)("height:100%;border:1px dashed ",i.qo.stroke.neutral,";border-radius:0 0 ",i.E0[2],";margin:0 ",i.W0[16]," ",i.W0[16],";button{",b.iZ.resetButton,";width:100%;height:100px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";};label:emptyChildren;")};function Ko(t){return Ko="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ko(t)}function Vo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Fo(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Vo(Object(n),!0).forEach((function(e){Ho(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Vo(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Ho(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ko(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ko(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ko(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var Yo=function(t){var e=t.isHidden,n=t.isDeepAddonColumn,o=t.totalColumns;return[{id:"settings",icon:"cog",title:"COM_SPPAGEBUILDER_EDITOR_COLUMN_SETTINGS",isDisabled:e},{id:"visibility",icon:"eyeSlash",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_HIDE",isProFeature:!0},{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_COLUMN_DUPLICATE",isDisabled:e},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_COLUMN_REMOVE",variant:"critical",isDisabled:e,hide:n&&1===o}]};const Xo=function(t){var e=t.content,n=t.sectionIndex,i=t.index,a=t.placeholderPosition,l=t.parentVisibility,d=t.isDeepAddonColumn,u=void 0!==d&&d,s=t.totalColumns,p=(0,c.$)(),v=(0,D.o)((function(t){return t.changeColumnVisibility})),y=(0,D.o)((function(t){return t.duplicateColumn})),b=(0,D.o)((function(t){return t.deleteColumn})),h=(0,D.o)((function(t){return t.copiedData})),g=(0,D.o)((function(t){return t.pasteOrInsertAddon})),I=(0,D.o)((function(t){return t.page})),x=(0,re.y)((function(t){return t.activeColumn})),E=(0,re.y)((function(t){return t.setActiveColumn})),S=(0,T.useRef)({element:null}),A=(0,w._)().getNestedRowById,_=(0,H.j)((function(t){return t.setActiveAction})),C=(0,H.j)((function(t){return t.activeAction})),L=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload,setSettings:t.setSettings}})),j=L.type,R=L.payload,B=L.setSettings,Z=l&&e.visibility,k=(0,Wt.nB)({id:e.id,data:{type:r.t.Column,isVisible:Z,sectionIndex:n,columnIndex:i,content:e}}),W=k.attributes,N=k.listeners,U=k.setNodeRef,q=k.isDragging,$=k.active,M=k.over,K=k.isOver,V=k.transition,F=k.transform,X=function(t){t&&(U(t),S.current.element=t)},z=(0,G.p)().showToast,J=!e.visibility,Q=P({transform:F,transition:V,isDragging:q}),tt=Qt({position:a,contentId:e.id,active:$,over:M,type:"column"}),et=(0,O.T)().closeSettingPanel;(0,T.useEffect)((function(){C||E(null)}),[C,E]);var nt=(0,Y.Gc)(),ot=nt.getValues,rt=nt.reset,it=(0,w._)().getColumnSettings,at=function(t){"settings"===t&&(rt(Fo(Fo({},ot()),{},{settings:it({sectionIndex:n,columnIndex:i})})),B("column",{sectionIndex:n,columnIndex:i,addonIndex:null})),"visibility"===t&&(et(),v({sectionIndex:n,columnIndex:i,visibility:e.visibility}),z({type:"success",message:p("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")})),"duplicate"===t&&(y({sectionIndex:n,columnIndex:i}),z({type:"success",message:p("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")})),"remove"===t&&(et(),b({sectionIndex:n,columnIndex:i}),z({type:"success",message:p("COM_SPPAGEBUILDER_EDITOR_REMOVED_SUCCESSFULLY")}))},lt="column"===j&&R.sectionIndex===n&&R.columnIndex===i,dt=q||K,ct=x==="".concat(n,"-").concat(i),ut=function(){return(0,m.BX)(m.HY,{children:[(0,m.tZ)(Nt.Z,{actions:Yo({isHidden:J,isDeepAddonColumn:u,totalColumns:s}),triggerButtonContent:(0,m.tZ)(o.Z,{name:"ellipsisX",width:10}),triggerButtonStyle:zo.columnSettings,onSelect:at,visibilityStatus:!J,title:p("COM_SPPAGEBUILDER_EDITOR_COLUMN_ACTIONS")}),(0,m.tZ)("button",Fo(Fo(Fo({type:"button",css:zo.columnDragHandler,"data-column-drag-handler":!0},W),N),{},{children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})})),!!h.addon&&Z&&(0,m.tZ)("button",{type:"button",css:zo.clipboardButton,"data-addon-paste-button":!0,title:p("COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE"),onClick:function(t){if(t.stopPropagation(),(0,f.$K)(h.addon)){et();var e=I[n].columns[i].addons.length;g({addonData:h.addon,sectionIndex:n,columnIndex:i,addonIndex:e}),z({type:"success",message:p("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")})}},children:(0,m.tZ)(o.Z,{name:"clipboard",height:16,width:16})})]})};return 0===e.addons.length?(0,m.tZ)("div",{css:zo.columnWrap({width:e.settings.width}),children:(0,m.BX)("div",{css:[zo.emptyColumnWrap({isOver:K,isEditing:lt,isHidden:J,hideOutline:dt,isActiveColumn:ct}),tt,Q,";label:Column;"],ref:X,tabIndex:-1,role:"button",onKeyDown:function(){},title:p("COM_SPPAGEBUILDER_EDITOR_COLUMN_CLICK_TITLE"),onClick:function(t){t.target===S.current.element&&(B("column",{sectionIndex:n,columnIndex:i,addonIndex:null}),rt(Fo(Fo({},ot()),{},{settings:it({sectionIndex:n,columnIndex:i})})))},children:[(0,m.tZ)("button",{type:"button",id:e.id.toString(),css:zo.emptyColumnButton({isActiveColumn:ct}),disabled:!Z,title:p("COM_SPPAGEBUILDER_EDITOR_ADDON_PLUS_ICON"),onClick:function(t){t.stopPropagation(),_(ct?void 0:"add-elements"),E(ct?null:"".concat(n,"-").concat(i))},children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})}),ut()]})}):(0,m.tZ)(Wt.Fo,{id:e.id.toString(),items:e.addons.filter((function(t){return!t.parent})),strategy:Wt.qw,children:(0,m.tZ)("div",{css:zo.columnWrap({width:e.settings.width}),tabIndex:-1,role:"button",onKeyDown:f.ZT,title:p("COM_SPPAGEBUILDER_EDITOR_COLUMN_CLICK_TITLE"),onClick:function(t){t.target===S.current.element&&(B("column",{sectionIndex:n,columnIndex:i,addonIndex:null}),rt(Fo(Fo({},ot()),{},{settings:it({sectionIndex:n,columnIndex:i})})))},children:(0,m.BX)("div",{id:e.id.toString(),css:[zo.column({isEditing:lt,isHidden:!Z,hideOutline:dt}),tt,Q,";label:Column;"],ref:X,children:[e.addons.map((function(t,o){if("parent"in t&&t.parent)return null;if((0,ie.m5)(t)){var l=A({id:t.id,rowId:I[n].id,columnId:e.id}),d=l.index,c=l.content;return(0,f.$K)(c)?(0,m.tZ)(ir,{index:d,content:c,nestedRowData:{sectionIndex:n,columnIndex:i,addonIndex:o},placeholderPosition:a,disabled:J,parentVisibility:e.visibility,sectionType:r.t.NestedRow},t.id):null}return"div"===t.name?(0,m.tZ)($o,{content:t,sectionIndex:n,columnIndex:i,index:o,placeholderPosition:a,disabled:J,parentVisibility:e.visibility},t.id):(0,f.dA)(t.name)?(0,m.tZ)(Yn,{content:t,sectionIndex:n,columnIndex:i,index:o,placeholderPosition:a,disabled:J,parentVisibility:e.visibility},t.id):(0,Se.Lx)(t.name)?(0,m.tZ)(Zo,{content:t,sectionIndex:n,columnIndex:i,index:o,placeholderPosition:a,disabled:J,parentVisibility:e.visibility},t.id):Object.keys(r.RI).includes(t.name)||t.name===r.pb.name?(0,m.tZ)(vo,{content:t,sectionIndex:n,columnIndex:i,index:o,placeholderPosition:a,disabled:J,parentVisibility:e.visibility},t.id):(0,m.tZ)(rn,{content:t,sectionIndex:n,columnIndex:i,index:o,placeholderPosition:a,disabled:J,parentVisibility:e.visibility},t.id)})),ut()]})})})};var zo={columnWrap:function(t){var e=t.width;return(0,d.iv)("width:",e[r.zu],";height:100%;padding:",i.W0[8],";;label:columnWrap;")},column:function(t){var e=t.isEditing,n=t.isHidden,o=t.hideOutline;return(0,d.iv)("display:flex;flex-direction:column;align-items:center;gap:",i.W0[16],";padding:",i.W0[16],";background-color:",i.qo.base.white,";border-radius:",i.E0[2],";border:1px solid ",i.qo.stroke.neutral,";position:relative;",!o&&(0,d.iv)(":hover,:focus-within{border:1px solid ",i.qo.base.primary,";border-top-left-radius:0;border-top-right-radius:0;&>[data-column-drag-handler],&>[data-addon-paste-button]{opacity:1;}>button:first-of-type{opacity:1;}};label:column;")," ",e&&(0,d.iv)("border:1px solid ",i.qo.base.primary,";background-color:",(0,ne.m4)(i.qo.background.primary,.4),";;label:column;")," ",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:column;"),";;label:column;")},emptyColumnWrap:function(t){var e=t.isEditing,n=t.isHidden,o=t.hideOutline,r=t.isActiveColumn,a=t.isOver;return(0,d.iv)("position:relative;border:1px dashed ",i.qo.stroke.neutral,";border-radius:",i.E0[2],";",b.iZ.flexCenter(),";min-height:144px;width:100%;cursor:pointer;",!o&&(0,d.iv)(":hover,:focus-within{border:1px solid ",i.qo.base.primary,";border-top-left-radius:0;border-top-right-radius:0;&>[data-column-drag-handler],&>[data-addon-paste-button]{opacity:1;}>button:nth-of-type(2){opacity:1;}};label:emptyColumnWrap;")," ",e&&(0,d.iv)("border:1px solid ",i.qo.base.primary,";background-color:",(0,ne.m4)(i.qo.background.primary,.4),";;label:emptyColumnWrap;")," ",n&&(0,d.iv)("background-color:",i.qo.base.surface,";background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:emptyColumnWrap;")," ",r&&(0,d.iv)("background-color:",i.qo.background.neutral,";;label:emptyColumnWrap;")," ",a&&(0,d.iv)("background-color:",i.qo.background.hover,";;label:emptyColumnWrap;"),";;label:emptyColumnWrap;")},emptyColumnButton:function(t){var e=t.isActiveColumn;return(0,d.iv)(b.iZ.resetButton,";position:absolute;inset:",i.W0[16],";",b.iZ.flexCenter(),";cursor:pointer;svg{color:",i.qo.icon.default,";}:hover{svg{color:",i.qo.icon.hover,";}}",e&&(0,d.iv)("svg{color:",i.qo.icon.default,";};label:emptyColumnButton;"),";;label:emptyColumnButton;")},columnSettings:(0,d.iv)(b.iZ.flexCenter(),";border-radius:",i.E0.circle,";width:16px;height:16px;background-color:",i.qo.base.primary,";color:",i.qo.base.white,";position:absolute;top:-8px;right:-8px;opacity:0;;label:columnSettings;"),clipboardButton:(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-radius:",i.E0[4],";background-color:",i.qo.base.white,";padding:",i.W0[4],";position:absolute;top:-1px;left:50%;transform:translate(-50%, -50%);opacity:0;box-shadow:",i.AF.card,";z-index:",i.W5.modal,";svg{color:",i.qo.icon.default,";transition:color 0.3s ease;}:hover{svg{color:",i.qo.icon.primary,";}};label:clipboardButton;"),columnDragHandler:(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",i.qo.base.primary,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);opacity:0;cursor:grab!important;;label:columnDragHandler;")};function Jo(t){return Jo="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Jo(t)}function Qo(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function tr(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Qo(Object(n),!0).forEach((function(e){er(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Qo(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function er(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Jo(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Jo(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Jo(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function nr(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return or(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?or(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function or(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var rr=function(t){var e=t.copiedData,n=t.isHidden,o=t.isDeepAddonRow;return[{id:"settings",icon:"cog",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS",isDisabled:n},{id:"visibility",icon:"eyeSlash",title:"COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_HIDE",isProFeature:!0},{id:"columns",icon:"verticalBars",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_COLUMNS_UPDATE",isDisabled:n},{id:"reset",icon:"update",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_RESET",isDisabled:n},{id:"save",icon:"saveLine",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_SAVE",isDisabled:n,isProFeature:!0},{id:"duplicate",icon:"cloneLine",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_DUPLICATE",isDisabled:n,hide:o},{id:"copy",icon:"copy",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_COPY",isDisabled:n,isProFeature:!0},{id:"paste",icon:"clipboard",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_PASTE_TO_REPLACE",isDisabled:!e.section||n,isProFeature:!0},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_SECTION_REMOVE",variant:"critical",isDisabled:n,hide:o}]};const ir=function(t){var e,n,i=t.content,l=t.index,d=t.placeholderPosition,u=t.nestedRowData,s=t.disabled,p=void 0!==s&&s,v=t.parentVisibility,y=void 0===v||v,b=t.sectionType,h=void 0===b?r.t.Section:b,g=(0,D.o)((function(t){return t.changeSectionVisibility})),I=(0,D.o)((function(t){return t.duplicateSection})),x=(0,D.o)((function(t){return t.duplicateNestedSection})),E=(0,D.o)((function(t){return t.copySection})),S=(0,D.o)((function(t){return t.pasteOrInsertSection})),_=(0,D.o)((function(t){return t.pasteOrInsertAsNestedSection})),C=(0,D.o)((function(t){return t.deleteSection})),L=(0,D.o)((function(t){return t.resetColumnWidth})),j=(0,D.o)((function(t){return t.deleteNestedSection})),R=(0,D.o)((function(t){return t.updateAdminLabel})),B=(0,D.o)((function(t){return t.page})),Z=(0,D.o)((function(t){return t.copiedData})),k=(0,O.T)().closeSettingPanel,W=(0,T.useRef)(null),N=(0,T.useRef)(null),U=(0,T.useRef)(null),$=nr((0,T.useState)(null),2),M=$[0],K=$[1],V=(0,c.$)(),H=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload,setSettings:t.setSettings}})),X=H.type,z=H.payload,J=H.setSettings,Q=(0,w._)().getSectionSettings,tt=(0,Y.Gc)(),et=tt.reset,ot=tt.getValues,rt=!!i.parent,it=y&&i.visibility,at=h===r.t.DeepAddonRow,lt=ot("id"),dt=i.id,ct=(0,Wt.nB)({id:i.id,data:{type:h,isVisible:it,sectionIndex:l,content:i,nestedRowData:u},disabled:at}),ut=ct.attributes,st=ct.listeners,pt=ct.setNodeRef,ft=ct.isDragging,vt=ct.isOver,yt=ct.transform,bt=ct.transition,ht=ct.active,mt=ct.over,gt=nr((0,T.useState)((function(){var t=(0,oe.ns)(r.dR.SECTION_EXPANDED_LOCAL_STORAGE_KEY,"".concat(dt,"-").concat(lt));return!(0,f.$K)(t)||t})),2),It=gt[0],xt=gt[1],Et=(0,T.useRef)(It),St=nr((0,T.useState)({isOpen:!1,reason:""}),2),Ot=St[0],wt=St[1],Dt=(0,G.p)().showToast,At=(0,F.l)({isOpen:Ot.isOpen,isDropdown:!0,arrow:"bottom"}),_t=At.triggerRef,Pt=At.position,Ct=At.popoverRef,Tt=!it||p;(0,T.useEffect)((function(){Et.current&&xt(!ft)}),[ft]),(0,T.useEffect)((function(){Tt&&(xt(!1),Et.current=!1)}),[Tt]);var Lt=function(){J("section",{sectionIndex:l,columnIndex:null,addonIndex:null});var t=Q(l);et(tr(tr({},ot()),{},{settings:t}))},jt=Qt({position:d,contentId:i.id,active:ht,over:mt,type:h}),Rt=P({transform:yt,transition:bt,isDragging:ft}),Bt="section"===X&&z.sectionIndex===l,kt=p||ft||vt,Ut=(null==mt||null===(e=mt.data.current)||void 0===e?void 0:e.type)===r.t.Section&&(null==ht||null===(n=ht.data.current)||void 0===n?void 0:n.type)===r.t.NestedRow;return(0,m.BX)("div",{css:ur.wrapper(Bt,kt),children:[(0,m.BX)("div",{css:[ur.section(Bt,Tt,p),jt,Ut?null:Rt,";label:Section;"],ref:pt,children:[(0,m.BX)("div",tr(tr(tr({css:ur.actionBar(Tt),ref:W,title:V("COM_SPPAGEBUILDER_EDITOR_SECTION_CLICK_TITLE"),onKeyDown:f.ZT,onClick:function(t){t.target===W.current&&Lt()}},ut),st),{},{role:"button",tabIndex:-1,children:[(0,m.BX)("div",{css:ur.titleBar(at),title:"",children:[!at&&(0,m.tZ)(o.Z,{name:"dragger",width:32,height:32}),(0,m.tZ)("h5",{css:a.c.heading5(),children:(0,m.tZ)(Zt,{text:i.settings.admin_label||i.settings.title||(rt?"Row":"Section"),updateAdminLabel:function(t){R({label:t,row:{sectionIndex:l}})}})})]}),(0,m.BX)("div",{ref:U,css:ur.actionButtons,children:[(0,m.tZ)("button",{type:"button",css:ur.toggleButton(It),title:V(It?"COM_SPPAGEBUILDER_EDITOR_COLLAPSE":"COM_SPPAGEBUILDER_EDITOR_EXPAND"),onClick:function(){xt((function(t){var e=!t;return Et.current=e,(0,oe.hJ)(r.dR.SECTION_EXPANDED_LOCAL_STORAGE_KEY,"".concat(dt,"-").concat(lt),e),e}))},children:(0,m.tZ)(o.Z,{name:"angleUp",width:28,height:28})}),(0,m.tZ)(Nt.Z,{actions:rr({copiedData:Z,isHidden:Tt,isDeepAddonRow:at}),width:180,triggerButtonContent:(0,m.tZ)("span",{css:ur.settingsButton(p),title:V("COM_SPPAGEBUILDER_EDITOR_SECTION_SETTINGS"),children:(0,m.tZ)(o.Z,{name:"sliders"})}),onSelect:function(t){switch(t){case"settings":Lt();break;case"visibility":k(),!1===i.visibility&&(xt(!0),Et.current=!0,(0,oe.hJ)(r.dR.SECTION_EXPANDED_LOCAL_STORAGE_KEY,"".concat(dt,"-").concat(lt),!0)),g({sectionIndex:l,visibility:i.visibility}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":(0,f.$K)(u)?x(tr({nestedSectionIndex:l},u)):I({sectionIndex:l}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"copy":E({sectionIndex:l}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_COPIED_SUCCESSFULLY")});break;case"paste":var e,n;k(),(0,f.$K)(u)?_(tr(tr({nestedSectionIndex:l},u),{},{sectionData:null!==(e=Z.section)&&void 0!==e?e:[],replace:!0})):S({sectionIndex:l,sectionData:null!==(n=Z.section)&&void 0!==n?n:[],replace:!0}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"reset":k(),L({sectionIndex:l});break;case"remove":k(),(0,f.$K)(u)?j(tr({nestedSectionIndex:l},u)):C({sectionIndex:l}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_REMOVED_SUCCESSFULLY")});break;case"save":var o=(0,A.Nk)({sections:B,sectionIndex:l});(0,f.$K)(o)&&K({action:"save",data:JSON.stringify(o)});break;case"columns":wt({isOpen:!0,reason:"update"})}},visibilityStatus:i.visibility,disabled:p})]})]})),(0,m.tZ)(Wt.Fo,{id:i.id.toString(),items:i.columns,strategy:Wt.PG,children:(0,m.tZ)("div",{css:ur.contents(It),ref:N,title:V("COM_SPPAGEBUILDER_EDITOR_SECTION_CLICK_TITLE"),role:"button",tabIndex:-1,onKeyDown:f.ZT,onClick:function(t){t.target===N.current&&Lt()},children:(0,m.tZ)("div",{title:"",children:i.columns.map((function(t,e){return(0,m.tZ)(Xo,{content:t,sectionIndex:l,index:e,totalColumns:i.columns.length,placeholderPosition:d,parentVisibility:it,isDeepAddonColumn:at},t.id)}))})})})]}),(0,m.BX)("div",{css:ur.bottomActionButtonsWrapper,"data-bottom-wrapper":!0,children:[at&&rt&&(0,m.tZ)("span",{ref:_t}),!at&&(0,m.tZ)(q.Z,{ref:_t,type:"button",onClick:function(){return wt({isOpen:!0,reason:"insert"})},icon:(0,m.tZ)(o.Z,{name:"plus"}),children:V(rt?"COM_SPPAGEBUILDER_EDITOR_ADD_ROW":"COM_SPPAGEBUILDER_EDITOR_ADD_SECTION")}),!rt&&!!Z.section&&(0,m.tZ)(q.Z,{ref:_t,type:"button",variant:"secondary",buttonCss:ur.pasteSectionButton,onClick:function(){(0,f.$K)(Z.section)&&(k(),S({sectionIndex:l,sectionData:Z.section,replace:!1}),Dt({type:"success",message:V("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}))},icon:(0,m.tZ)(o.Z,{name:"clipboard"}),children:V("COM_SPPAGEBUILDER_EDITOR_SECTION_PASTE_SECTION")})]}),(0,m.tZ)(nt,{isOpen:Ot.isOpen,defaultLayout:"update"===Ot.reason?i.layout:null,nestedRowData:u,handleClose:function(){return wt({isOpen:!1,reason:""})},position:Pt,popoverRef:Ct,index:l}),(0,m.tZ)(Xt,{ref:U,type:"section",dataToSave:M,closePopover:function(){return K(null)}})]})};var ar={name:"sxudyk-contents",styles:"display:none;height:0;opacity:0;padding:0;overflow:hidden;label:contents;"},lr={name:"1bpgz68-toggleButton",styles:"transform:rotate(-180deg);label:toggleButton;"},dr={name:"1nwp2q0-actionBar",styles:":hover{button:first-of-type{visibility:visible;opacity:1;}};label:actionBar;"},cr={name:"1o7rgfq-section",styles:"background-color:transparent;label:section;"},ur={wrapper:function(t,e){return(0,d.iv)("width:100%;position:relative;border:1px solid transparent;border-radius:",i.E0[6],";transition:border 0.3s ease-in-out;",!e&&(0,d.iv)(":hover{border:1px solid ",i.qo.base.primary,";&>[data-bottom-wrapper]{opacity:1;}};label:wrapper;")," ",t&&(0,d.iv)("border:1px solid ",i.qo.base.primary,";;label:wrapper;"),";;label:wrapper;")},section:function(t,e,n){return(0,d.iv)("width:100%;border-radius:",i.E0[6],";background-color:",i.qo.base.white,";position:relative;box-shadow:",i.AF.card,";",t&&(0,d.iv)("background-color:",(0,ne.m4)(i.qo.background.primary,.4),";;label:section;")," ",e&&!n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:section;")," ",n&&cr,";;label:section;")},bottomActionButtonsWrapper:(0,d.iv)("display:flex;justify-content:center;align-items:center;gap:",i.W0[8],";position:absolute;bottom:0;left:50%;transform:translate(-50%, 50%);opacity:0;transition:opacity 0.3s ease-in-out;;label:bottomActionButtonsWrapper;"),pasteSectionButton:(0,d.iv)("background-color:",i.qo.background.white,";svg{color:",i.qo.icon.default,";}:hover{svg{color:",i.qo.icon.primary,";}};label:pasteSectionButton;"),addSectionButton:(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter("row"),";",b.iZ.textEllipsis,";gap:",i.W0[8],";padding:",i.W0[6]," ",i.W0[16],";background-color:",i.qo.base.primary,";border-radius:",i.E0.button,";color:",i.qo.base.white,";line-height:",i.Nv[18],";;label:addSectionButton;"),actionBar:function(t){return(0,d.iv)("display:flex;justify-content:space-between;padding:",i.W0[24]," ",i.W0[24]," ",i.W0[24]," ",i.W0[12],";cursor:pointer;",!t&&dr,";;label:actionBar;")},titleBar:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[4],";padding-left:",i.W0[2],";cursor:grab;",t&&(0,d.iv)("padding-left:",i.W0[10],";cursor:initial;;label:titleBar;")," svg{color:",i.qo.icon.hints,";};label:titleBar;")},actionButtons:(0,d.iv)("display:flex;gap:",i.W0[16],";;label:actionButtons;"),toggleButton:function(t){return(0,d.iv)(b.iZ.resetButton,";padding:",i.W0[2],";transition:transform 0.3s ease,opacity 0.3s ease;visibility:hidden;opacity:0;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}:hover{svg{color:",i.qo.icon.hover,";border-color:",i.qo.stroke.hover,";}}:active{svg{color:",i.qo.icon.primary,";}}",!t&&lr,";;label:toggleButton;")},settingsButton:function(t){return(0,d.iv)(b.iZ.centeredFlex,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[6],";width:32px;height:32px;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;}",t&&(0,d.iv)("color:",i.qo.icon.disabled,";cursor:initial;;label:settingsButton;")," ",!t&&(0,d.iv)("background-color:",i.qo.background.white,";:hover{svg{color:",i.qo.icon.hover,";border-color:",i.qo.stroke.hover,";}};label:settingsButton;")," :active{svg{color:",i.qo.icon.primary,";}};label:settingsButton;")},contents:function(t){return(0,d.iv)("padding:0 ",i.W0[24]," ",i.W0[24],";cursor:pointer;>div{display:flex;flex-wrap:wrap;margin:-",i.W0[8],";cursor:initial;}",!t&&ar,";;label:contents;")}};const sr=function(t){var e=t.isPopup,n=void 0!==e&&e,i=(0,D.o)((function(t){return t.page})),a=(0,O.T)().closeSettingPanel,d=(0,H.j)((function(t){return t.activeAction})),c=(0,H.j)((function(t){return t.setActiveAction})),v=function(){var t=(0,D.o)((function(t){return t.addNewAddon})),e=(0,D.o)((function(t){return t.addNewTableItemAddon})),n=(0,D.o)((function(t){return t.pasteOrInsertAddon})),o=(0,D.o)((function(t){return t.pasteOrInsertSection})),i=(0,D.o)((function(t){return t.pasteOrInsertAsNestedSection})),a=(0,D.o)((function(t){return t.addNewSection})),d=(0,D.o)((function(t){return t.addNestedRow})),c=(0,D.o)((function(t){return t.addNewColumn})),v=(0,D.o)((function(t){return t.sortSection})),y=(0,D.o)((function(t){return t.sortColumn})),b=(0,D.o)((function(t){return t.sortAddon})),h=(0,D.o)((function(t){return t.sortCollectionItemAddon})),m=(0,D.o)((function(t){return t.sortAddonWithCollectionItemAddon})),g=(0,D.o)((function(t){return t.addNewCollectionItemAddon})),I=(0,u.x)((function(t){return t.addonGroups})),x=(0,D.o)((function(t){return t.sortDCCollectionItemAddon})),E=(0,D.o)((function(t){return t.addNewDCCollectionItemAddon})),S=B((0,T.useState)(null),2),A=S[0],_=S[1],P=B((0,T.useState)(null),2),L=P[0],R=P[1],Z=(0,w._)().getSectionById,k=(0,O.T)().closeSettingPanel,N=function(){_(null),R(null)};(0,l.IJ)({onDragStart:function(t){var e,n=t.active,o=null===(e=n.data.current)||void 0===e?void 0:e.content;if(n.data.current&&o){var r=Object.values(I).flat().find((function(t){return t.name===o.name}));_(j(j(j(j({},o),!("icon"in o)&&(0,f.$K)(r)&&{icon:r.icon}),!("title"in o)&&(0,f.$K)(r)&&{title:r.title}),{},{type:n.data.current.type}))}else _(null)},onDragMove:function(t){var e,n,o,r=t.over,i=t.active.rect.current.translated,a=null==r?void 0:r.rect;if(!i||!a||null===(e=r.data.current)||void 0===e||!e.isVisible||(n=i,(o=a).left>n.right||o.right<n.left||o.top>n.bottom||o.bottom<n.top))return R(null);var l=i.top+i.height/2<a.top+a.height/2,d=i.left+i.width/2<a.left+a.width/2;R({isTop:l,isLeft:d})},onDragEnd:function(t){var e=t.active,n=t.over,o=e.data.current,i=null==n?void 0:n.data.current;o&&i&&e.id!==(null==n?void 0:n.id)&&W({active:e,over:n})?((0,f.r3)((0,f.zt)(r.Dw),o.type)?q({activeCurrent:o,overCurrent:i}):U({activeCurrent:o,overCurrent:i}),N(),k()):N()},onDragCancel:function(){N()}});var U=function(t){var e=t.activeCurrent,n=t.overCurrent;switch(n.type){case r.t.NestedRow:var o,i=n.nestedRowData;if(!(0,f.$K)(i))return;if((0,f.r3)([r.t.Addon,r.t.Div,r.t.DeepAddon],e.type))b({sourceSectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,sourceAddonIndex:e.addonIndex,sourceChildIndex:e.childIndex,destinationSectionIndex:i.sectionIndex,destinationColumnIndex:i.columnIndex,destinationAddonIndex:i.addonIndex,isAbove:null!==(o=null==L?void 0:L.isTop)&&void 0!==o&&o});else if(r.t.NestedRow===e.type){var a,l=e.nestedRowData;if(!(0,f.$K)(l))return;b({sourceSectionIndex:l.sectionIndex,sourceColumnIndex:l.columnIndex,sourceAddonIndex:l.addonIndex,destinationSectionIndex:i.sectionIndex,destinationColumnIndex:i.columnIndex,destinationAddonIndex:i.addonIndex,isAbove:null!==(a=null==L?void 0:L.isTop)&&void 0!==a&&a})}break;case r.t.Section:e.type===r.t.Section&&v({sourceSectionIndex:e.sectionIndex,destinationSectionIndex:n.sectionIndex});break;case r.t.Column:if(e.type===r.t.Column)y({sectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,destinationColumnIndex:n.columnIndex});else if((0,f.r3)([r.t.Addon,r.t.Div,r.t.DeepAddon],e.type))b({sourceSectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,sourceAddonIndex:e.addonIndex,sourceChildIndex:e.childIndex,destinationSectionIndex:n.sectionIndex,destinationColumnIndex:n.columnIndex,destinationAddonIndex:0,isAbove:!0});else if(r.t.NestedRow===e.type){var d=e.nestedRowData;if(!(0,f.$K)(d))return;b({sourceSectionIndex:d.sectionIndex,sourceColumnIndex:d.columnIndex,sourceAddonIndex:d.addonIndex,destinationSectionIndex:n.sectionIndex,destinationColumnIndex:n.columnIndex,destinationAddonIndex:0,isAbove:!0})}break;case r.t.Addon:case r.t.DeepAddon:case r.t.Div:case r.t.DCCollectionItemAddon:case r.t.DCCollectionAddonEmptyChild:case r.t.EmptyDivChild:var c,u=e,s=n;if(u.isRegularDivChild&&s.isDynamicContentChild||u.isDynamicContentChild&&s.isRegularDivChild||u.isDynamicContentChild&&s.isDynamicContentChild){var p;x({source:u,destination:s,isAbove:null!==(p=null==L?void 0:L.isTop)&&void 0!==p&&p,isEmptyState:r.t.DCCollectionAddonEmptyChild===n.type||r.t.EmptyDivChild===n.type});break}if((0,f.r3)([r.t.Addon,r.t.Div,r.t.DeepAddon,r.t.DCCollectionItemAddon],e.type))b({sourceSectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,sourceAddonIndex:e.addonIndex,sourceChildIndex:e.childIndex,destinationSectionIndex:n.sectionIndex,destinationColumnIndex:n.columnIndex,destinationAddonIndex:n.addonIndex,destinationChildIndex:n.childIndex,isAbove:null!==(c=null==L?void 0:L.isTop)&&void 0!==c&&c,emptyDivChild:r.t.EmptyDivChild===n.type});else if(r.t.NestedRow===e.type){var g,I=e.nestedRowData;if(!(0,f.$K)(I))return;b({sourceSectionIndex:I.sectionIndex,sourceColumnIndex:I.columnIndex,sourceAddonIndex:I.addonIndex,destinationSectionIndex:n.sectionIndex,destinationColumnIndex:n.columnIndex,destinationAddonIndex:n.addonIndex,isAbove:null!==(g=null==L?void 0:L.isTop)&&void 0!==g&&g})}break;case r.t.CollectionItemAddon:var E,S;if((!C(e.content)||!e.content.name.includes("_single_")&&!e.content.name.includes("_common_"))&&e.type===r.t.Addon||e.type===r.t.Div)return void m({sourceSectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,sourceAddonIndex:e.addonIndex,destinationSectionIndex:n.sectionIndex,destinationColumnIndex:n.columnIndex,destinationAddonIndex:n.addonIndex,destinationItemAddonIndex:n.itemAddonIndex,isAbove:null!==(S=null==L?void 0:L.isTop)&&void 0!==S&&S});if(e.itemIndex!==n.itemIndex||!(0,f.$K)(e.itemAddonIndex)||!(0,f.$K)(n.itemAddonIndex))return;h({sourceSectionIndex:e.sectionIndex,sourceColumnIndex:e.columnIndex,sourceAddonIndex:e.addonIndex,sourceItemAddonIndex:e.itemAddonIndex,destinationItemAddonIndex:n.itemAddonIndex,sourceChildIndex:e.childIndex,destinationChildIndex:n.childIndex,isAbove:null!==(E=null==L?void 0:L.isTop)&&void 0!==E&&E,isEmptyChild:n.isEmptyChild})}},q=function(l){var u=l.activeCurrent,v=l.overCurrent;switch(v.type){case r.t.NestedRow:var y,b=v.nestedRowData;if(!(0,f.$K)(b))return;if((0,f.r3)([r.Dw.AddonElement,r.Dw.DivElement],u.type))t({sectionIndex:b.sectionIndex,columnIndex:b.columnIndex,addonIndex:b.addonIndex,addon:u.content,isAbove:null===(y=null==L?void 0:L.isTop)||void 0===y||y});else if((0,f.r3)([r.Dw.RowElement],u.type)){var h;d({sectionIndex:b.sectionIndex,columnIndex:b.columnIndex,addonIndex:b.addonIndex,isTop:null===(h=null==L?void 0:L.isTop)||void 0===h||h})}else if((0,f.r3)([r.Dw.BlockElement,r.Dw.SavedSectionElement],u.type)){var m,I=null;if((0,s.fp)(u.content)){var x=u.content.section;I=(0,f.Rx)(x)}if((0,p.L)(u.content)){var S=u.content.json;I=(0,f.Rx)(S)}if(!(0,f.$K)(I))return;var O=Z(I[0].id).index;i({sectionData:I,sectionIndex:b.sectionIndex,columnIndex:b.columnIndex,addonIndex:b.addonIndex,nestedSectionIndex:O,isAbove:null===(m=null==L?void 0:L.isTop)||void 0===m||m})}else if(r.Dw.SavedAddonElement===u.type&&(0,s.$F)(u.content)){var w,D=u.content.code,A=(0,f.Rx)(D);if(!(0,f.$K)(A))return;var _=(0,f.gX)(A)?{name:A.name,sections:A.rows,addons:A.addon}:A;n({addonData:_,sectionIndex:b.sectionIndex,columnIndex:b.columnIndex,addonIndex:b.addonIndex,isAbove:null===(w=null==L?void 0:L.isTop)||void 0===w||w})}break;case r.t.Section:if(r.Dw.RowElement===u.type){var P,C=null===(P=null==L?void 0:L.isTop)||void 0===P||P;a({layout:"6+6",index:C?v.sectionIndex:v.sectionIndex+1})}else if((0,f.r3)([r.Dw.BlockElement,r.Dw.SavedSectionElement],u.type)){var T,j=null;if((0,s.fp)(u.content)){var R=u.content.section;j=(0,f.Rx)(R)}if((0,p.L)(u.content)){var B=u.content.json;j=(0,f.Rx)(B)}if(!(0,f.$K)(j))return;o({sectionData:j,sectionIndex:v.sectionIndex,isAbove:null===(T=null==L?void 0:L.isTop)||void 0===T||T})}break;case r.t.Column:if(r.Dw.ColumnsElement===u.type){var k,W=null===(k=null==L?void 0:L.isLeft)||void 0===k||k;c({sectionIndex:v.sectionIndex,index:W?v.columnIndex:v.columnIndex+1})}else if((0,f.r3)([r.Dw.RowElement],u.type))d({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:0,isTop:!0});else if((0,f.r3)([r.Dw.BlockElement,r.Dw.SavedSectionElement],u.type)){var N,U=null;if((0,s.fp)(u.content)){var q=u.content.section;U=(0,f.Rx)(q)}if((0,p.L)(u.content)){var G=u.content.json;U=(0,f.Rx)(G)}if(!(0,f.$K)(U))return;var $=Z(U[0].id).index;i({sectionData:U,sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:(0,f.$K)(v.addonIndex)?v.addonIndex:0,nestedSectionIndex:$,isAbove:null===(N=null==L?void 0:L.isTop)||void 0===N||N})}else if((0,f.r3)([r.Dw.AddonElement,r.Dw.DivElement,r.Dw.CommonAddonElement,r.Dw.SingleAddonElement],u.type)||[r.oA.filter,r.oA.pagination].includes(u.content.name)){var M,K=u.content;t({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:v.childIndex,addon:K,isAbove:null===(M=null==L?void 0:L.isTop)||void 0===M||M})}else if(r.Dw.SavedAddonElement===u.type&&(0,s.$F)(u.content)){var V=u.content.code,F=(0,f.Rx)(V);if(!(0,f.$K)(F))return;var H=(0,f.gX)(F)?{name:F.name,sections:F.rows,addons:F.addon}:F;n({addonData:H,sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:0,isAbove:!0})}break;case r.t.EmptyDivChild:if((0,f.r3)([r.Dw.AddonElement,r.Dw.DivElement,r.Dw.ProductListAddonElement,r.Dw.CategoryListAddonElement,r.Dw.SingleAddonElement,r.Dw.CommonAddonElement],u.type)||[r.oA.filter,r.oA.productList,r.oA.categoryList,r.oA.pagination].includes(u.content.name)){var Y=u.content;t({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:0,emptyDivChild:!0,addon:Y,isAbove:!0})}else if(r.Dw.SavedAddonElement===u.type&&(0,s.$F)(u.content)){var X=u.content.code,z=(0,f.Rx)(X);if(!(0,f.$K)(z))return;var J={name:z.name,sections:z.rows,addons:z.addon};n({addonData:J,sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:0,parentId:v.content.id,isAbove:!0})}break;case r.t.Addon:case r.t.DeepAddon:case r.t.Div:var Q;if((0,f.r3)([r.Dw.AddonElement,r.Dw.DivElement,r.Dw.SingleAddonElement,r.Dw.CommonAddonElement],u.type)||[r.oA.filter,r.oA.pagination].includes(u.content.name))t({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:v.childIndex,addon:u.content,isAbove:null===(Q=null==L?void 0:L.isTop)||void 0===Q||Q});else if((0,f.r3)([r.Dw.RowElement],u.type)&&!v.content.parent){var tt;d({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,isTop:null===(tt=null==L?void 0:L.isTop)||void 0===tt||tt})}else if(r.Dw.SavedAddonElement===u.type&&(0,s.$F)(u.content)){var et,nt=u.content.code,ot=(0,f.Rx)(nt);if(!(0,f.$K)(ot))return;var rt={name:ot.name,sections:ot.rows,addons:ot.addon};n({addonData:rt,sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:v.childIndex,isAbove:null===(et=null==L?void 0:L.isTop)||void 0===et||et})}else if((0,f.r3)([r.Dw.BlockElement,r.Dw.SavedSectionElement],u.type)){var it,at=null;if((0,s.fp)(u.content)){var lt=u.content.section;at=(0,f.Rx)(lt)}if((0,p.L)(u.content)){var dt=u.content.json;at=(0,f.Rx)(dt)}if(!(0,f.$K)(at))return;var ct=Z(at[0].id).index;i({sectionData:at,sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,nestedSectionIndex:ct,isAbove:null===(it=null==L?void 0:L.isTop)||void 0===it||it})}break;case r.t.TableItem:if((0,f.r3)([r.Dw.AddonElement],u.type)&&(0,f.$K)(v.tableItem)){var ut,st=u.content;e({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:v.childIndex,tableItem:v.tableItem,addon:st,isAbove:null===(ut=null==L?void 0:L.isTop)||void 0===ut||ut})}break;case r.t.CollectionItemAddon:var pt;g({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,itemAddonIndex:(0,f.$K)(v.itemAddonIndex)?v.itemAddonIndex:0,childIndex:v.childIndex,addon:u.content,isAbove:null===(pt=null==L?void 0:L.isTop)||void 0===pt||pt});break;case r.t.DCCollectionAddonEmptyChild:case r.t.DCDivAddonEmptyChild:var ft;E({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addon:u.content,isAbove:null===(ft=null==L?void 0:L.isTop)||void 0===ft||ft,overItem:v.content,isEmptyState:[r.t.DCCollectionAddonEmptyChild,r.t.DCDivAddonEmptyChild].includes(v.type)});break;case r.t.DCCollectionItemAddon:var vt,yt;if(null!==(vt=v.content)&&void 0!==vt&&vt.parent){var bt;t({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addonIndex:v.addonIndex,childIndex:v.childIndex,addon:u.content,isAbove:null===(bt=null==L?void 0:L.isTop)||void 0===bt||bt});break}E({sectionIndex:v.sectionIndex,columnIndex:v.columnIndex,addon:u.content,isAbove:null===(yt=null==L?void 0:L.isTop)||void 0===yt||yt,overItem:v.content,isEmptyState:[r.t.DCCollectionAddonEmptyChild,r.t.DCDivAddonEmptyChild].includes(v.type)});break;case r.XA:if((0,f.r3)([r.Dw.BlockElement,r.Dw.SavedSectionElement],u.type)){var ht,mt=null;if((0,s.fp)(u.content)){var gt=u.content.section;mt=(0,f.Rx)(gt)}if((0,p.L)(u.content)){var It=u.content.json;mt=(0,f.Rx)(It)}if(!(0,f.$K)(mt))return;o({sectionData:mt,sectionIndex:v.sectionIndex,isAbove:null===(ht=null==L?void 0:L.isTop)||void 0===ht||ht})}}};return{dragElement:A,placeholderPosition:L}}(),y=v.dragElement,b=v.placeholderPosition;return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{css:pr.contentWrapper,children:[(0,m.tZ)(_t,{isPopup:n}),(0,m.tZ)("div",{css:pr.content,children:i.length>0?(0,m.tZ)(Wt.Fo,{id:"page",items:i,strategy:Wt.qw,children:(0,m.tZ)("div",{css:pr.sectionWrapper,role:"button",tabIndex:-1,onKeyDown:f.ZT,onClick:function(t){t.currentTarget===t.target&&((0,f.$K)(d)?c(void 0):a())},children:i.map((function(t,e){return t.parent?null:(0,m.tZ)(ir,{content:t,index:e,placeholderPosition:b},t.id)}))})}):(0,m.tZ)("div",{css:pr.emptyLayoutWrapper,role:"button",tabIndex:-1,onKeyDown:f.ZT,onClick:function(t){t.currentTarget===t.target&&((0,f.$K)(d)?c(void 0):a())},children:!(0,f.$K)(y)||y.type!==r.Dw.BlockElement&&y.type!==r.Dw.SavedSectionElement?(0,m.tZ)(ht,{isPopup:n}):(0,m.tZ)(N,{id:(0,f.x0)(),customStyle:pr.emptyChildren,data:{type:r.XA,isVisible:!0,sectionIndex:0},children:(0,m.tZ)("button",{children:(0,m.tZ)(o.Z,{name:"plus",width:32,height:32})})})})})]}),(0,m.tZ)(x,{content:y})]})};var pr={contentWrapper:{name:"4t0hh5-contentWrapper",styles:"height:100%;label:contentWrapper;"},content:{name:"tdw2b0-content",styles:"height:calc(100% - 101px);label:content;"},sectionWrapper:(0,d.iv)("height:100%;padding:",i.W0[32],";display:flex;flex-direction:column;gap:",i.W0[32],";position:relative;cursor:default;;label:sectionWrapper;"),emptyLayoutWrapper:(0,d.iv)("height:100%;padding:",i.W0[32],";cursor:default;;label:emptyLayoutWrapper;"),emptyChildren:(0,d.iv)("background-color:",i.qo.background.white,";border:1px dashed ",i.qo.stroke.neutral,";border-radius:",i.E0[6],";button{",b.iZ.resetButton,";width:100%;height:300px;",b.iZ.flexCenter(),";}svg{color:",i.qo.icon.default,";};label:emptyChildren;")}}}]);PKCA#]�5�<h,h,Rcomponents/com_sppagebuilder/assets/editor/dist/js/556.c2641d791f45d205d563.min.jsnu�[���/*! For license information please see 556.c2641d791f45d205d563.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[556],{556:(t,e,r)=>{r.r(e),r.d(e,{default:()=>j});var n=r(935),o=r(2847),i=r(3169),a=r(5791),c=r(824),u=r(4185),l=r(917),s=r(3417),f=r(1731),p=r(6537),h=r(1234),d=r(6492),y=r(5945),v=r(4469),g=r(5501),m=function(t){return g.u.patch(p.H.INTEGRATIONS,t)},b=r(7602),w=r(7294),E=r(5944);function _(t){return _="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_(t)}function L(){L=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),c=new x(o||[]);return n(a,"_invoke",{value:E(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function p(){}function h(){}function d(){}var y={};u(y,i,(function(){return this}));var v=Object.getPrototypeOf,g=v&&v(v(T([])));g&&g!==e&&r.call(g,i)&&(y=g);var m=d.prototype=p.prototype=Object.create(y);function b(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==_(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function E(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=I(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function I(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,I(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function O(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function x(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function T(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:A}}function A(){return{value:void 0,done:!0}}return h.prototype=d,n(m,"constructor",{value:d,configurable:!0}),n(d,"constructor",{value:h,configurable:!0}),h.displayName=u(d,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===h||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,d):(t.__proto__=d,u(t,c,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},b(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},b(m),u(m,c,"Generator"),u(m,i,(function(){return this})),u(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=T,x.prototype={constructor:x,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(O),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),O(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;O(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:T(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function I(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function S(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){I(i,n,o,a,c,"next",t)}function c(t){I(i,n,o,a,c,"throw",t)}a(void 0)}))}}function O(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}const x=function(t){var e,r,c,u,l,p=t.integration,d=(e=(0,h.$)(),r=(0,f.p)().showToast,c=(0,y.NL)(),(0,v.D)({mutationFn:m,onSuccess:function(){r({type:"success",message:e("COM_SPPAGEBUILDER_EDITOR_INTEGRATION_TOGGLE_SUCCESS")}),c.invalidateQueries(["Integrations"])},onError:function(t){r({type:"danger",message:t.message})}})),g=(u=(0,w.useState)(p.enabled),l=2,function(t){if(Array.isArray(t))return t}(u)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(u,l)||function(t,e){if(t){if("string"==typeof t)return O(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?O(t,e):void 0}}(u,l)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),_=g[0],I=g[1];return(0,E.BX)(s.Z,{wrapperCss:T.wrapperCss,children:[(0,E.tZ)(i.Z,{enabled:b.Eu,children:(0,E.tZ)("img",{src:p.thumbnail,alt:p.title,css:T.integrationItemImage})}),(0,E.BX)("div",{css:T.integrationItemActionWrapper,children:[(0,E.tZ)("h6",{children:p.title}),d.isLoading?(0,E.tZ)(n.ZP,{size:20}):(0,E.tZ)(a.Z,{checked:_,onChange:S(L().mark((function t(){return L().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,d.mutateAsync({integration:p.group});case 2:I(!_);case 3:case"end":return t.stop()}}),t)}))),disabled:b.Eu})]}),b.Eu&&(0,E.tZ)(o.Z,{css:T.proLabel})]})};var T={wrapperCss:{name:"2u6yam-wrapperCss",styles:"position:relative;label:wrapperCss;"},proLabel:(0,l.iv)("position:absolute;top:",c.W0[4],";right:",c.W0[4],";;label:proLabel;"),integrationItemImage:(0,l.iv)("width:100%;height:160px;object-fit:cover;border-radius:",c.E0[5]," ",c.E0[5]," 0 0;;label:integrationItemImage;"),integrationItemActionWrapper:(0,l.iv)("display:flex;justify-content:space-between;align-items:center;gap:",c.W0[8],";padding:",c.W0[10]," ",c.W0[16],";h6{",u.c.heading6("medium"),";line-height:",c.Nv[20],";};label:integrationItemActionWrapper;")},A=r(7579),G=r(3039),N=r(7894),P=r(6511);const j=function(){var t,e=(0,h.$)(),r=(t=(0,f.p)().showToast,(0,d.a)({queryKey:["Integrations"],queryFn:function(){return g.u.get(p.H.INTEGRATIONS).then((function(t){return Object.values(t.data)}))},onError:function(e){t({type:"danger",message:e.message})}})),n=r.data;return(0,E.BX)(G.Z,{children:[(0,E.tZ)(N.Z,{title:e("COM_SPPAGEBUILDER_EDITOR_INTEGRATIONS_PAGE_TITLE"),subtitle:e("COM_SPPAGEBUILDER_EDITOR_INTEGRATIONS_PAGE_SUB_TITLE")}),(0,E.tZ)(A.Z,{children:(0,E.tZ)(P.Z,{query:r,children:(0,E.BX)("div",{css:Z.wrapper,children:[!(null!=n&&n.length)&&(0,E.tZ)("div",{children:e("COM_SPPAGEBUILDER_EDITOR_INTEGRATIONS_PAGE_EMPTY_MESSAGE")}),null==n?void 0:n.map((function(t,e){return(0,E.tZ)(x,{integration:t},e)}))]})})})]})};var Z={wrapper:(0,l.iv)("display:grid;grid-template-columns:repeat(4, 1fr);gap:",c.W0[32],";padding-top:",c.W0[24],";",c.Uo.tablet,"{grid-template-columns:repeat(3, 1fr);}",c.Uo.smallTablet,"{grid-template-columns:repeat(2, 1fr);};label:wrapper;"),loadingSpinnerWrapper:{name:"1v1biie-loadingSpinnerWrapper",styles:"display:grid;place-items:center;label:loadingSpinnerWrapper;"}}}}]);PKCA#]��i���Lcomponents/com_sppagebuilder/assets/editor/dist/js/bundle.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]���#�#Rcomponents/com_sppagebuilder/assets/editor/dist/js/680.30f9af3175ffa9ed93c7.min.jsnu�[���"use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[680],{8178:(e,t,r)=>{r.r(t),r.d(t,{default:()=>x});var n=r(3871),i=r(935),a=r(7264),o=r(288),l=r(3254),c=r(8122),u=r(5350),s=r(2899),f=r(824),p=r(4185),d=r(917),y=r(36),_=r(802),m=r(4411),E=r(7839),b=r(680),h=r(7294);function v(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var g=r(1234),O=r(3425);const T=r.p+"images/5177696f1319ef80cb4b.svg";var A=r(1921),P=r(7602),S=r(7536),I=r(5944);function D(e){return D="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},D(e)}function L(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?L(Object(r),!0).forEach((function(t){Z(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):L(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Z(e,t,r){return(t=function(e){var t=function(e,t){if("object"!==D(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,"string");if("object"!==D(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===D(t)?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function w(e,t){if(e){if("string"==typeof e)return M(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?M(e,t):void 0}}function M(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}const x=function(){var e,t,r,f=(0,g.$)(),p=(t=(0,h.useState)([]),r=2,function(e){if(Array.isArray(e))return e}(t)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,i,a,o,l=[],c=!0,u=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;c=!1}else for(;!(c=(n=a.call(r)).done)&&(l.push(n.value),l.length!==t);c=!0);}catch(e){u=!0,i=e}finally{try{if(!c&&null!=r.return&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return l}}(t,r)||w(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),d=p[0],A=p[1],D=(0,E.Sh)(),L=(0,s.n)(),Z=(0,_.O)({defaultValues:{search:"",filter:void 0}}),x=Z.watch(),C=x.search,j=x.filter,W=function(e){var t,r=(0,E.A6)(e),n=(0,m.Z)(),i=n.intersectionEntry,a=n.intersectionElementRef,o=(0,h.useMemo)((function(){var e,t;return null!==(e=null===(t=r.data)||void 0===t?void 0:t.pages.flatMap((function(e){return e.results})))&&void 0!==e?e:[]}),[null===(t=r.data)||void 0===t?void 0:t.pages]);(0,h.useEffect)((function(){null!=i&&i.isIntersecting&&r.fetchNextPage()}),[null==i?void 0:i.isIntersecting,r]),(0,h.useEffect)((function(){if(o.length){var e,t=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return v(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?v(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,i=function(){};return{s:i,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:i}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,o=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){l=!0,a=e},f:function(){try{o||null==r.return||r.return()}finally{if(l)throw a}}}}(o);try{for(t.s();!(e=t.n()).done;){var r=e.value;(0,b.pE)(r.data,r.type)}}catch(e){t.e(e)}finally{t.f()}}}),[o]);var l=r.isLoading,c=r.hasNextPage,u=r.data;return{fonts:o,isLoading:l,hasNextPage:c,intersectionElementRef:a,data:u}}({search:(0,y.N)(C),type:j}),B=W.fonts,F=W.isLoading,U=W.hasNextPage,G=W.intersectionElementRef;return D.isLoading?(0,I.tZ)(i.fz,{}):null!==(e=D.data)&&void 0!==e&&e.length?(0,I.BX)("div",{css:N.rightSideWrapper,children:[(0,I.BX)("div",{css:N.filterWrapper,children:[(0,I.tZ)("div",{css:N.textInputWrapper,children:(0,I.tZ)(S.Qr,{control:Z.control,name:"search",render:function(e){return(0,I.tZ)(u.Z,R(R({},e),{},{variant:"search",placeholder:f("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_SEARCH_PLACEHOLDER"),isClearable:!0}))}})}),(0,I.tZ)("div",{css:N.selectWrapper,children:(0,I.tZ)(S.Qr,{control:Z.control,name:"filter",render:function(e){return(0,I.tZ)(c.Z,R(R({},e),{},{options:[{label:"Google",value:"google"},{label:"Local",value:"local"}],placeholder:"Types",isClearable:!0}))}})})]}),(0,I.BX)("div",{css:N.topPanel,children:[(0,I.tZ)(o.Z,{routes:[{link:null,text:f("COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_ALL_ITEMS")},{link:null,text:f("COM_SPPAGEBUILDER_EDITOR_FONT_MANAGER_INSTALLED_FONTS")}],onFilterChange:P.ZT}),d.length>0&&(0,I.BX)("div",{css:N.topPanelActionsWrapper,children:[(0,I.tZ)("p",{children:f(d.length>1?"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEMS_SELECTED":"COM_SPPAGEBUILDER_EDITOR_MEDIA_ITEM_SELECTED",{numberOfItems:d.length})}),(0,I.tZ)("div",{children:(0,I.tZ)(n.Z,{variant:"error",icon:(0,I.tZ)(a.Z,{name:"trash",height:16,width:16}),onClick:function(){console.log("uninstall font")},children:f("COM_SPPAGEBUILDER_EDITOR_FONT_BOOK_UNINSTALL")})})]})]}),F||B.length?(0,I.BX)("div",{css:N.wrapper,children:[F?(0,I.tZ)(i.g4,{}):(0,I.tZ)("div",{css:N.fontsWrapper,children:B.map((function(e){return(0,I.tZ)(l.Z,{type:"google",font:{type:e.type,family:e.family_name,variants:e.data.variants,is_installed:!1,installed_variants:[],category:""},isChecked:d.includes(e.family_name),installed:!0,onChange:function(){return A((function(t){return t.includes(e.family_name)?t.filter((function(t){return t!==e.family_name})):[].concat(function(e){return function(e){if(Array.isArray(e))return M(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||w(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(t),[e.family_name])}))}},e.family_name)}))}),(0,I.tZ)("div",{ref:G,css:N.infiniteLoader({isVisible:!F&&U}),children:(0,I.tZ)(i.ZP,{})})]}):(0,I.tZ)(O.Z,{orientation:"vertical",emptyStateImage:T,imageAltText:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_IMAGE_ALT"),title:f("COM_SPPAGEBUILDER_EDITOR_FONT_NO_FONT_FOUND_TITLE"),content:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_CONTENT")})]}):(0,I.tZ)(O.Z,{orientation:"vertical",emptyStateImage:T,imageAltText:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_IMAGE_ALT"),title:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_TITLE"),content:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_CONTENT"),action:(0,I.tZ)(n.Z,{icon:(0,I.tZ)(a.Z,{name:"upload"}),onClick:function(){L({title:f("COM_SPPAGEBUILDER_EDITOR_FONT_UPLOAD_MODAL_TITLE")})},children:f("COM_SPPAGEBUILDER_EDITOR_FONT_EMPTY_STATE_UPLOAD_BUTTON")})})};var C={name:"1tbj5j9-infiniteLoader",styles:"display:block;label:infiniteLoader;"},N={wrapper:(0,d.iv)(A.iZ.overflowYAuto,";max-height:calc(90vh - 180px);padding-right:",f.W0[24],";;label:wrapper;"),fontsWrapper:(0,d.iv)("display:grid;grid-template-columns:repeat(5, minmax(120px, 1fr));gap:",f.W0[24],";",f.Uo.tablet,"{grid-template-columns:repeat(4, minmax(120px, 1fr));};label:fontsWrapper;"),noFontsFound:{name:"171xl1-noFontsFound",styles:"text-align:center;width:100%;label:noFontsFound;"},rightSideWrapper:{name:"idves2-rightSideWrapper",styles:"width:100%;display:flex;flex-direction:column;label:rightSideWrapper;"},filterWrapper:(0,d.iv)("display:flex;justify-content:center;gap:",f.W0[16],";;label:filterWrapper;"),textInputWrapper:{name:"1r9fuqm-textInputWrapper",styles:"flex:1;label:textInputWrapper;"},selectWrapper:{name:"1u54jb-selectWrapper",styles:"width:160px;label:selectWrapper;"},topPanel:(0,d.iv)("display:flex;justify-content:space-between;align-items:center;gap:",f.W0[8],";height:32px;margin-top:",f.W0[32],";margin-bottom:",f.W0[20],";;label:topPanel;"),topPanelActionsWrapper:(0,d.iv)("display:flex;justify-content:center;gap:",f.W0[16],";p{",p.c.body("medium"),";margin:auto 0;};label:topPanelActionsWrapper;"),infiniteLoader:function(e){var t=e.isVisible,r=void 0!==t&&t;return(0,d.iv)("display:none;text-align:center;height:40px;margin-top:",f.W0[16],";",r&&C,";;label:infiniteLoader;")}}}}]);PKCA#]��i���^components/com_sppagebuilder/assets/editor/dist/js/357.ba2ff23da0a6a64639a1.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]��i���^components/com_sppagebuilder/assets/editor/dist/js/254.e3d84935825c1693bda8.min.js.LICENSE.txtnu�[���/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ PKCA#]�:f2:2:Pcomponents/com_sppagebuilder/assets/editor/dist/js/4.cc64a22516ca6d64a880.min.jsnu�[���/*! For license information please see 4.cc64a22516ca6d64a880.min.js.LICENSE.txt */ "use strict";(self.webpackChunkreact_typescript_webpack_backend_editor=self.webpackChunkreact_typescript_webpack_backend_editor||[]).push([[4],{1004:(t,e,n)=>{n.r(e),n.d(e,{default:()=>sr});var o=n(7264),r=n(3106),i=n(824),a=n(4185),l=n(9752),d=n(917),c=n(1234),u=n(7230),s=n(3891),p=n(2967),f=n(7602);function v(t){return v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v(t)}var y=function(t){return"object"===v(t)&&null!==t&&!("id"in t)&&"name"in t},b=n(1921),h=n(3935),m=n(5944),g={sideEffects:(0,l.Ai)({styles:{active:{opacity:"0.5"}}})},I=[r.t.Section,r.t.NestedRow];const x=function(t){var e=t.content,n=(0,c.$)(),i=(0,u.x)((function(t){return t.addonStructure}));return e?(0,h.createPortal)((0,m.tZ)(l.y9,{dropAnimation:g,children:function(){if(y(e))return(0,m.BX)("div",{css:O.addonItem,children:[(0,m.tZ)("span",{dangerouslySetInnerHTML:{__html:e.icon}}),(0,m.tZ)("span",{children:e.title})]});if((0,s.$F)(e)&&e.type===r.Dw.SavedAddonElement)return(0,m.BX)("div",{css:O.savedAddon,children:[(0,m.tZ)("span",{"data-drag-icon":!0,children:(0,m.tZ)(o.Z,{name:"dragger",height:24,width:24})}),(0,m.tZ)("span",{"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:(t=e,a=(0,f.Rx)(t.code).name,i[a].icon)}}),(0,m.tZ)("span",{"data-addon-title":!0,children:e.title})]});var t,a;if(e.type===r.Dw.SavedSectionElement)return(0,m.BX)("div",{css:O.savedAddon,children:[(0,m.tZ)("span",{"data-drag-icon":!0,children:(0,m.tZ)(o.Z,{name:"dragger",height:24,width:24})}),(0,m.tZ)("span",{"data-addon-icon":!0,children:(0,m.tZ)(o.Z,{name:"blocksDuo"})}),(0,m.tZ)("span",{"data-addon-title":!0,children:e.title})]});if((0,p.L)(e)&&e.type===r.Dw.BlockElement)return(0,m.BX)("div",{css:O.sectionThumb,children:[(0,m.tZ)("div",{css:O.thumbImage,children:(0,m.tZ)("img",{src:e.thumb,alt:e.title,draggable:!1})}),(0,m.tZ)("div",{css:O.thumbFooter,children:e.title})]});if((0,f.r3)(I,e.type)){var l=e.type===r.t.NestedRow?"COM_SPPAGEBUILDER_EDITOR_OVERLAY_NESTED_ROW_TITLE":"COM_SPPAGEBUILDER_EDITOR_OVERLAY_SECTION_TITLE";return(0,m.BX)("div",{css:O.placedAddon(e.type),children:[(0,m.BX)("div",{css:O.iconAndTitle(e.type),children:[(0,m.tZ)(o.Z,{name:"dragger"}),(0,m.tZ)("span",{children:n(l)})]}),(0,m.tZ)("span",{css:O.settingsButton,children:(0,m.tZ)(o.Z,{name:"sliders"})})]})}return e.type===r.t.Column?(0,m.BX)("div",{css:O.placedAddon(e.type),children:[(0,m.BX)("div",{css:O.iconAndTitle(e.type),children:[(0,m.tZ)(o.Z,{name:"columnsAlt"}),(0,m.tZ)("span",{children:n("COM_SPPAGEBUILDER_EDITOR_OVERLAY_COLUMN_TITLE")})]}),(0,m.tZ)("button",{type:"button",css:O.dragHandler(e.type),"data-addon-drag-handler":!0,children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})})]}):(0,m.BX)("div",{css:O.placedAddon(e.type),children:[(0,m.BX)("div",{css:O.iconAndTitle(e.type),children:[(0,m.tZ)("span",{dangerouslySetInnerHTML:{__html:e.icon}}),(0,m.tZ)("span",{children:e.title})]}),(0,m.tZ)("button",{type:"button",css:O.dragHandler(e.type),"data-addon-drag-handler":!0,children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})})]})}()}),document.body):null};var E={name:"ebhkkd-placedAddon",styles:"border-top-left-radius:0;label:placedAddon;"},O={addonItem:(0,d.iv)("display:flex;align-items:center;background-color:",i.qo.base.white,";border-radius:",i.E0[5],";box-shadow:",i.AF.dropzone,";padding:",i.W0[8],";gap:",i.W0[8],";cursor:grab;&>span:first-of-type{svg,img{width:18px;height:18px;}}&>span:last-of-type{",a.c.caption(),";",b.iZ.textEllipsis,";};label:addonItem;"),savedAddon:(0,d.iv)("display:flex;align-items:center;background-color:",i.qo.base.white,";border-radius:",i.E0[5],";box-shadow:",i.AF.addon,";padding:",i.W0[6]," ",i.W0[6]," ",i.W0[6]," ",i.W0[24],";gap:",i.W0[8],";cursor:grab;position:relative;svg{color:",i.qo.icon.default,";}[data-addon-icon]{line-height:1;>svg{height:16px;width:16px;}}[data-drag-icon]{position:absolute;left:",i.W0[2],";top:0;height:100%;display:flex;align-items:center;}[data-addon-title]{",a.c.body(),";",b.iZ.textEllipsis,";color:",i.qo.text.default,";};label:savedAddon;"),placedAddon:function(t){return(0,d.iv)("width:250px;height:40px;background-color:",i.qo.base.white,";border:1px solid ",i.qo.stroke.success,";border-radius:",i.E0[2],";position:relative;padding:",i.W0[16],";box-shadow:",i.AF.dropzone,";display:flex;justify-content:space-between;align-items:center;",!(0,f.r3)(I,t)&&E," ",(0,f.r3)(I,t)&&(0,d.iv)("width:100%;border-color:",i.qo.stroke.primary,";border-radius:",i.E0[6],";height:80px;;label:placedAddon;")," ",t===r.t.Column&&(0,d.iv)("border-color:",i.qo.stroke.primary,";height:42px;;label:placedAddon;")," ",t===r.t.Div&&(0,d.iv)("border-color:",i.qo.alternate.div,";;label:placedAddon;"),";;label:placedAddon;")},dragHandler:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.flexCenter(),";border-top-left-radius:",i.E0[4],";border-bottom-left-radius:",i.E0[4],";background-color:",i.qo.base.success,";color:",i.qo.base.white,";width:12px;height:18px;position:absolute;top:-1px;left:0;transform:translateX(-100%);cursor:grab!important;",t===r.t.Column&&(0,d.iv)("background-color:",i.qo.stroke.primary,";;label:dragHandler;")," ",t===r.t.Div&&(0,d.iv)("background-color:",i.qo.alternate.div,";;label:dragHandler;"),";;label:dragHandler;")},iconAndTitle:function(t){return(0,d.iv)("display:flex;gap:",i.W0[8],";width:100%;height:100%;align-items:center;cursor:grab;svg{width:18px;height:18px;color:",i.qo.stroke.success,";",(0,f.r3)(I,t)&&(0,d.iv)(":first-of-type{color:",i.qo.icon.default,";height:32px;width:32px;};label:iconAndTitle;")," ",((0,f.r3)(I,t)||t===r.t.Column)&&(0,d.iv)("color:",i.qo.stroke.primary,";;label:iconAndTitle;")," ",t===r.t.Div&&(0,d.iv)("color:",i.qo.alternate.div,";;label:iconAndTitle;"),";}&>span{",a.c.caption(),";",(0,f.r3)(I,t)&&(0,d.iv)(a.c.heading5(),";;label:iconAndTitle;"),";};label:iconAndTitle;")},settingsButton:(0,d.iv)(b.iZ.centeredFlex,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[6],";width:32px;height:32px;svg{color:",i.qo.icon.default,";transition:color 0.3s ease-in-out;};label:settingsButton;"),sectionThumb:(0,d.iv)("background-color:",i.qo.background.white,";border-radius:",i.E0[4],";box-shadow:",i.AF.addonHover,";cursor:grab;;label:sectionThumb;"),thumbImage:(0,d.iv)("height:80px;width:100%;background-color:",i.qo.background.neutral,";img{width:100%;height:100%;object-fit:contain;};label:thumbImage;"),thumbFooter:(0,d.iv)(a.c.tiny(),";padding:",i.W0[2]," ",i.W0[8],";;label:thumbFooter;")},w=n(2811),S=n(2739),D=n(3896),A=n(2238),_=n(4285),P=function(t){var e=t.disable,n=void 0!==e&&e,o=t.isDragging,r=t.transition,i=t.transform;return n?null:{transform:_.ux.Transform.toString(i),transition:r,opacity:o?.5:void 0}},C=function(t){return(0,f.Kn)(t)&&(0,f.nr)(t,"id")&&(0,f.nr)(t,"settings")},T=n(7294);function L(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function j(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?L(Object(n),!0).forEach((function(e){R(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):L(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function R(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==k(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==k(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===k(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function B(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Z(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Z(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}function k(t){return k="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},k(t)}var W=function(t){var e,n,o,i,a,l,d,c,u,s,p=t.active,v=t.over,b=null==p?void 0:p.data.current,h=null==v?void 0:v.data.current,m=null;if([r.t.DCCollectionItemAddon,r.t.DCCollectionAddonEmptyChild].includes(null==h?void 0:h.type))return!(r.LP[r.t.DCCollectionItemAddon].rejected.includes(null==b||null===(d=b.content)||void 0===d?void 0:d.name)||r.LP[r.t.DCCollectionAddonEmptyChild].rejected.includes(null==b||null===(c=b.content)||void 0===c?void 0:c.name)||null!=b&&null!==(u=b.content)&&void 0!==u&&u.name.startsWith("easystore_"));if((null==h?void 0:h.type)===r.t.TableItem&&y(null==b?void 0:b.content)){var g,I=(null!==(g=null==b?void 0:b.content)&&void 0!==g?g:{}).name;if((0,f.r3)(["accordion","tab","table_advanced"],I))return!1}if(y(null==b?void 0:b.content)&&(s=null!==(e=null==b||null===(n=b.content)||void 0===n?void 0:n.name)&&void 0!==e?e:"",(0,f.$K)(s)&&s.startsWith(r.HZ.prefix))&&(null==h?void 0:h.type)===r.t.CollectionItemAddon){var x,E,O,w,S=D.o.getState().page,_=h.sectionIndex,P=h.columnIndex,T=h.addonIndex,L=null==S||null===(x=S[_])||void 0===x||null===(E=x.columns)||void 0===E||null===(O=E[P])||void 0===O||null===(w=O.addons)||void 0===w?void 0:w[T];return!!L&&L.name!==r.G2}if(y(null==b?void 0:b.content)&&function(t){return(0,f.$K)(t)&&t.startsWith(r.du.prefix)}(null!==(o=null==b||null===(i=b.content)||void 0===i?void 0:i.name)&&void 0!==o?o:"")&&(null==h?void 0:h.type)===r.t.CollectionItemAddon){var j,R,B,Z,W=D.o.getState().page,N=h.sectionIndex,U=h.columnIndex,q=h.addonIndex,G=null==W||null===(j=W[N])||void 0===j||null===(R=j.columns)||void 0===R||null===(B=R[U])||void 0===B||null===(Z=B.addons)||void 0===Z?void 0:Z[q];return!!G&&G.name!==r.oA.productList}if((0,f.$K)(h)){var M=h.type;(0,f.r3)([r.t.Addon,r.t.Div,r.t.DeepAddon],M)&&C(h.content)&&h.content.parent&&(M=r.t.EmptyDivChild),m=(0,f.r3)((0,f.zt)(r.Dw),null==b?void 0:b.type)?r.LP[M]:r.IR[M]}if(!(0,f.$K)(m))return!1;if(y(null==b?void 0:b.content)&&(0,A.a4)(null!==(a=null==b?void 0:b.content.name)&&void 0!==a?a:"")&&(null==h?void 0:h.type)===r.t.CollectionItemAddon)return!1;if(y(null==b?void 0:b.content)&&(0,A.K0)(null!==(l=null==b?void 0:b.content.name)&&void 0!==l?l:"")&&(null==h?void 0:h.type)!==r.t.CollectionItemAddon)return!1;var $=function(t){return"object"===k(t)&&null!==t&&"name"in t},K=m.accepted.length>0&&((0,f.r3)(m.accepted,null==b?void 0:b.type)||$(null==b?void 0:b.content)&&(0,f.r3)(m.accepted,null==b?void 0:b.content.name)),V=m.rejected.length>0&&!(0,f.r3)(m.rejected,null==b?void 0:b.type)&&(!$(null==b?void 0:b.content)||$(null==b?void 0:b.content)&&!(0,f.r3)(m.rejected,null==b?void 0:b.content.name));return K||V||r.Eb in m};const N=function(t){var e,n=t.id,o=t.data,r=t.disabled,i=void 0!==r&&r,a=t.isHidden,d=void 0!==a&&a,u=t.children,s=t.customStyle,p=(0,c.$)(),f=(0,l.Zj)({id:n,data:o,disabled:i}),v=f.setNodeRef,y=f.isOver,b=f.active,h=f.over,g=W({active:b,over:h});return(0,m.tZ)("div",{css:[s,U.container(y,d,g),";label:Droppable;"],ref:v,children:!g&&y?(0,m.tZ)("div",{css:U.notAllowed(null==h||null===(e=h.data.current)||void 0===e?void 0:e.type),children:(0,m.tZ)("span",{children:p("COM_SPPAGEBUILDER_EDITOR_ADDON_NOT_ALLOWED")})}):u})};var U={container:function(t,e,n){return(0,d.iv)(t&&!e&&n&&(0,d.iv)("background-color:",i.qo.base.surface,";;label:container;")," ",t&&!e&&!n&&(0,d.iv)("background-color:",i.qo.background.error,";;label:container;"),";;label:container;")},notAllowed:function(t){var e=t===r.t.TableItem?"40px":"100px";return(0,d.iv)("height:",e,";",b.iZ.flexCenter(),";span{",a.c.caption("medium")," padding:",i.W0[4]," ",i.W0[8],";background-color:",i.qo.base.error,";border-radius:",i.E0[2],";color:",i.qo.base.white,";};label:notAllowed;")}},q=n(3871),G=n(1731),M=n(7855),$=n(1593),K=n(1709),V=n(802),F=n(1954),H=n(1073),Y=n(7536),X=n(5350);function z(t){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},z(t)}function J(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Q(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?J(Object(n),!0).forEach((function(e){tt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):J(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function tt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==z(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==z(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===z(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var et=[{id:0,size:"12",icon:"layoutDesign1"},{id:1,size:"6+6",icon:"layoutDesign2"},{id:2,size:"4+4+4",icon:"layoutDesign3"},{id:3,size:"3+3+3+3",icon:"layoutDesign4"},{id:4,size:"4+8",icon:"layoutDesign5"},{id:5,size:"3+9",icon:"layoutDesign6"},{id:6,size:"3+6+3",icon:"layoutDesign7"},{id:7,size:"2+6+4",icon:"layoutDesign8"},{id:8,size:"2+10",icon:"layoutDesign9"},{id:10,size:"2+3+7",icon:"layoutDesign10"}];const nt=function(t){var e=t.isOpen,n=t.defaultLayout,r=t.nestedRowData,i=t.handleClose,a=t.position,l=t.popoverRef,d=t.index,u=(0,c.$)(),s=(0,V.O)(),p=s.control,v=s.setValue,y=s.getValues,b=s.watch;(0,T.useEffect)((function(){(0,f.$K)(n)&&v("layout",n.replaceAll(",","+"))}),[n,v]);var h=(0,D.o)((function(t){return t.addNewSection})),g=b("layout"),I=(0,D.o)((function(t){return t.addNestedRow})),x=(0,D.o)((function(t){return t.updateSectionLayout})),E=(0,H.j)((function(t){return t.setActiveAction})),O=function(){v("layout",""),i()},w=function(t){(0,f.$K)(n)?x({index:d,layout:t}):(0,f.$K)(r)?I(Q(Q({},r),{},{layout:t,isTop:!1})):h({layout:t,index:d+1}),O()};return(0,m.tZ)(F.h,{isOpen:e,onClickOutside:O,children:(0,m.tZ)("div",{css:[ot.popoverWrapper,{left:a.left,top:a.top},";label:SectionPopover;"],ref:l,children:(0,m.BX)("div",{css:ot.wrapper,children:[(0,m.BX)("div",{css:ot.importLayout,children:[(0,m.BX)("div",{css:ot.importLayoutIcons,children:[(0,m.tZ)(o.Z,{name:"layoutsDuo"}),(0,m.tZ)(o.Z,{name:"blocksDuo"}),(0,m.tZ)(o.Z,{name:"cubeDuo"})]}),(0,m.tZ)("p",{css:ot.importLayoutText,children:u("COM_SPPAGEBUILDER_EDITOR_IMPORT_LAYOUT_DESCRIPTION")}),(0,m.tZ)(q.Z,{variant:"secondary",buttonCss:ot.importLayoutButton,onClick:function(){i(),E("section-library")},children:"Explore"})]}),(0,m.BX)("div",{css:ot.selectLayout,children:[(0,m.tZ)("button",{css:ot.closeButton,onClick:O,children:(0,m.tZ)(o.Z,{name:"cross",width:20,height:20})}),(0,m.tZ)("div",{css:ot.layoutOptions,children:et.map((function(t){return(0,m.BX)("button",{type:"button",css:ot.layoutButton,onClick:function(){w(t.size)},children:[(0,m.tZ)(o.Z,{name:t.icon,width:50,height:20}),(0,m.tZ)("div",{children:t.size})]},t.id)}))}),(0,m.BX)("div",{css:ot.generateLayout,children:[(0,m.tZ)("p",{css:ot.customRows,children:u("COM_SPPAGEBUILDER_EDITOR_CREATE_CUSTOM_LAYOUT")}),(0,m.BX)("div",{css:ot.generateForm,children:[(0,m.tZ)(Y.Qr,{control:p,name:"layout",render:function(t){return(0,m.tZ)(X.Z,Q(Q({},t),{},{placeholder:"e.g. 8+4"}))}}),(0,m.tZ)(q.Z,{variant:"primary",disabled:!g,onClick:function(){var t=y("layout");w(t)},children:(0,f.$K)(n)?u("COM_SPPAGEBUILDER_EDITOR_UPDATE"):u("COM_SPPAGEBUILDER_EDITOR_GENERATE")})]})]})]})]})})})};var ot={popoverWrapper:{name:"127z30k-popoverWrapper",styles:"position:absolute;width:100%;max-width:622px;label:popoverWrapper;"},wrapper:(0,d.iv)("z-index:",i.W5.dropdown,";background-color:",i.qo.base.white,";box-shadow:",i.AF.popover,";border-radius:",i.E0[6],";display:grid;grid-template-columns:196px auto;;label:wrapper;"),importLayout:(0,d.iv)("border-right:1px solid ",i.qo.stroke.neutral,";display:flex;flex-direction:column;justify-content:center;align-items:center;padding:",i.W0[24],";;label:importLayout;"),importLayoutIcons:(0,d.iv)("display:flex;gap:",i.W0[16],";color:",i.qo.icon.default,";;label:importLayoutIcons;"),importLayoutText:(0,d.iv)("color:",i.qo.text.neutral,";font-size:",i.JB[12],";line-height:",i.Nv[18],";text-align:center;margin-top:",i.W0[16],";margin-bottom:",i.W0[24],";;label:importLayoutText;"),importLayoutButton:(0,d.iv)("svg{color:",i.qo.icon.default,";}&:hover{svg{color:",i.qo.icon.primary,";}};label:importLayoutButton;"),selectLayout:{name:"fgypav-selectLayout",styles:"position:relative;label:selectLayout;"},closeButton:(0,d.iv)(b.iZ.resetButton,";position:absolute;top:",i.W0[8],";right:",i.W0[8],";padding:",i.W0[2],";background-color:",i.qo.background.neutral,";color:",i.qo.icon.default,";border-radius:",i.E0[2],";;label:closeButton;"),layoutOptions:(0,d.iv)("display:grid;grid-template-columns:repeat(5, 1fr);padding:",i.W0[40]," ",i.W0[48]," ",i.W0[32]," ",i.W0[32],";gap:",i.W0[24],";;label:layoutOptions;"),layoutButton:(0,d.iv)(b.iZ.resetButton,";",a.c.caption(),";color:",i.qo.text.neutral,";display:flex;flex-direction:column;align-items:center;gap:",i.W0[8],";transition:color 0.3s ease-out;svg{color:",i.qo.icon.neutral,";transition:color 0.3s ease-out;}&:hover{color:",i.qo.text.primary,";svg{color:",i.qo.text.primary,";}};label:layoutButton;"),generateLayout:(0,d.iv)("border-top:1px solid ",i.qo.stroke.neutral,";position:relative;;label:generateLayout;"),customRows:(0,d.iv)("position:absolute;width:60%;top:0;left:50%;transform:translateX(-50%) translateY(-50%);background-color:",i.qo.background.white,";color:",i.qo.text.neutral,";font-size:",i.JB[12],";line-height:",i.Nv[18],";text-align:center;;label:customRows;"),generateForm:(0,d.iv)("display:flex;gap:",i.W0[16],";padding:",i.W0[28]," ",i.W0[32]," ",i.W0[24],";>div{flex:1;};label:generateForm;")},rt=n(2614),it=n(9194);function at(t){return at="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},at(t)}var lt=["attribs"],dt=["attribs"];function ct(){ct=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new S(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==at(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function w(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),w(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;w(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function ut(t,e){if(null==t)return{};var n,o,r=function(t,e){if(null==t)return{};var n,o,r={},i=Object.keys(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],e.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function st(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function pt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?st(Object(n),!0).forEach((function(e){ft(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):st(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function ft(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==at(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==at(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===at(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function vt(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}function yt(t){return function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){vt(i,o,r,a,l,"next",t)}function l(t){vt(i,o,r,a,l,"throw",t)}a(void 0)}))}}function bt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const ht=function(t){var e,n,r=t.isPopup,i=(0,T.useRef)(null),l=(0,c.$)(),d=(0,K.d)().showModal,u=(e=(0,T.useState)(!1),n=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(e,n)||function(t,e){if(t){if("string"==typeof t)return bt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?bt(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),s=u[0],p=u[1],v=(0,Y.Gc)(),y=(0,Y.Gc)(),b=(0,G.p)().showToast,h=(0,it.HX)(),g=(0,rt.x)((function(t){return t.setIsLoading})),I=(0,F.l)({isOpen:s,isDropdown:!0,arrow:"middle"}),x=I.triggerRef,E=I.position,O=I.popoverRef;return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{css:mt.wrapper,ref:x,children:[(0,m.tZ)("h4",{css:[a.c.heading4("medium"),";label:EmptyLayout;"],children:l(r?"COM_SPPAGEBUILDER_EDITOR_POPUP_START_CREATING":"COM_SPPAGEBUILDER_EDITOR_START_CREATING")}),(0,m.BX)("div",{css:mt.buttonWrapper,children:[(0,m.tZ)(q.Z,{variant:"secondary",icon:(0,m.tZ)(o.Z,{name:"layout"}),onClick:function(){d({component:r?$.Z:M.Z,props:{title:l("COM_SPPAGEBUILDER_EDITOR_LAYOUT_MODAL_LAYOUTS"),form:v},closeOnOutsideClick:!0})},children:l("COM_SPPAGEBUILDER_EDITOR_LAYOUT_BUNDLES")}),(0,m.tZ)(q.Z,{variant:"primary",icon:(0,m.tZ)(o.Z,{name:"plus"}),onClick:function(){return p(!0)},children:l("COM_SPPAGEBUILDER_EDITOR_ADD_NEW_SECTION")})]}),(0,m.BX)("p",{css:mt.importLayout,children:[l("COM_SPPAGEBUILDER_EDITOR_OR"),(0,m.tZ)("button",{type:"button",onClick:function(){var t;return null===(t=i.current)||void 0===t?void 0:t.click()},children:l("COM_SPPAGEBUILDER_EDITOR_IMPORT_LAYOUT")}),r?(0,m.tZ)("input",{ref:i,type:"file",hidden:!0,onChange:function(){var t=yt(ct().mark((function t(e){var n,o,i,a,l,d,c,u,s,p,m,I,x,E,O,w,S,D,A,_,P,C,T,L,j;return ct().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.target.files){t.next=17;break}return t.prev=1,g(!0),t.next=5,h.mutateAsync(e.target.files[0]);case 5:n=t.sent,o=JSON.parse(n.data.seo),i=o.meta_description,a=void 0===i?"":i,l=o.meta_keywords,d=void 0===l?"":l,c=o.og_type,u=void 0===c?"":c,s=o.robots,p=void 0===s?"":s,m=o.seo_spacer,I=void 0===m?"":m,x=o.og_title,E=void 0===x?"":x,O=o.og_description,w=void 0===O?"":O,S=o.og_image,D=void 0===S?{src:""}:S,A=o.author,_={attribs:{meta_description:a,meta_keywords:d,og_type:u,robots:p,seo_spacer:I,author:void 0===A?"":A},og_title:E,og_description:w,og_image:pt({},D)},r?(C=JSON.parse(null!==(P=n.data.attribs)&&void 0!==P?P:""),(0,f.$K)(n.data)&&y.reset(pt(pt({},y.getValues()),{},{css:n.data.css,attribs:C}))):(0,f.$K)(n.data)&&(T=v.getValues(),L=_.attribs,j=ut(_,lt),v.reset(pt(pt(pt({},T),{},{css:n.data.css},j),{},{attribs:pt(pt({},T.attribs),L)}))),t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),(0,f.VZ)(t.t0)&&b({type:"danger",message:t.t0.message});case 14:return t.prev=14,g(!1),t.finish(14);case 17:e.target.value="";case 18:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})));return function(e){return t.apply(this,arguments)}}()}):(0,m.tZ)("input",{ref:i,type:"file",hidden:!0,onChange:function(){var t=yt(ct().mark((function t(e){var n,o,r,i,a,l,d,c,u,s,p,y,m,I,x,E,O,w,S,D,A,_,P;return ct().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e.target.files){t.next=18;break}return t.prev=1,g(!0),t.next=5,h.mutateAsync(e.target.files[0]);case 5:n=t.sent,o=JSON.parse(n.data.seo),r=o.meta_description,i=void 0===r?"":r,a=o.meta_keywords,l=void 0===a?"":a,d=o.og_type,c=void 0===d?"":d,u=o.robots,s=void 0===u?"":u,p=o.seo_spacer,y=void 0===p?"":p,m=o.og_title,I=void 0===m?"":m,x=o.og_description,E=void 0===x?"":x,O=o.og_image,w=void 0===O?{src:""}:O,S=o.author,D={attribs:{meta_description:i,meta_keywords:l,og_type:c,robots:s,seo_spacer:y,author:void 0===S?"":S},og_title:I,og_description:E,og_image:pt({},w)},(0,f.$K)(n.data)&&(A=v.getValues(),_=D.attribs,P=ut(D,dt),v.reset(pt(pt(pt({},A),{},{css:n.data.css},P),{},{attribs:pt(pt({},A.attribs),_)}))),t.next=14;break;case 11:t.prev=11,t.t0=t.catch(1),(0,f.VZ)(t.t0)&&b({type:"danger",message:t.t0.message});case 14:return t.prev=14,g(!1),t.finish(14);case 17:e.target.value="";case 18:case"end":return t.stop()}}),t,null,[[1,11,14,17]])})));return function(e){return t.apply(this,arguments)}}()})]})]}),(0,m.tZ)(nt,{isOpen:s,handleClose:function(){return p(!1)},position:E,popoverRef:O,index:0})]})};var mt={wrapper:(0,d.iv)("background-color:",i.qo.background.white,";text-align:center;padding:",i.W0[72]," 0;border-radius:",i.E0[6],";position:relative;;label:wrapper;"),buttonWrapper:(0,d.iv)("display:flex;justify-content:center;gap:",i.W0[16],";margin-top:",i.W0[40],";margin-bottom:",i.W0[32],";;label:buttonWrapper;"),importLayout:(0,d.iv)(a.c.body(),";color:",i.qo.text.neutral,";button{",b.iZ.resetButton,";color:",i.qo.action.primary.default,";padding:0;};label:importLayout;")},gt=n(8138),It=n(2447),xt=n(2328),Et=n(7679);function Ot(t){return Ot="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ot(t)}function wt(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function St(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?wt(Object(n),!0).forEach((function(e){Dt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):wt(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Dt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ot(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ot(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ot(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function At(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const _t=function(t){var e,n,i,a=t.isPopup,l=void 0!==a&&a,d=(0,c.$)(),u=(0,Y.Gc)(),s=(n=(0,T.useState)(!1),i=2,function(t){if(Array.isArray(t))return t}(n)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(n,i)||function(t,e){if(t){if("string"==typeof t)return At(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?At(t,e):void 0}}(n,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),p=s[0],f=s[1],v=u.getValues("title"),y=(0,It.Z)(gt.F.PageEditor).id,b=(0,Et.z1)(y,l?"popup":""),h=(0,xt.v)((function(t){return t.appConfig}));(0,T.useEffect)((function(){var t;(null===(t=b.data)||void 0===t?void 0:t.extension)===r.HZ.extension&&f(!0)}),[b.data]);var g=(0,T.useMemo)((function(){return b.data?b.data.url:""}),[b.data]);return(0,m.BX)("div",{css:Lt.wrapper(p),children:[(0,m.BX)("div",{css:Lt.fieldAndButton(p),children:[(0,m.tZ)("div",{css:Lt.inputWrapper(p),children:(0,m.tZ)(Y.Qr,{control:u.control,name:"title",render:function(t){return(0,m.tZ)(X.Z,St(St({},t),{},{label:d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME"),placeholder:d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME")}))}})}),p&&(0,m.tZ)("div",{css:Lt.pageName,children:v||d("COM_SPPAGEBUILDER_EDITOR_PAGE_NAME")}),!!h.enable_frontend_editing&&(0,m.BX)("a",{css:Lt.frontendEditorButton(p),href:g,target:"_blank",rel:"noreferrer",children:[(0,m.tZ)(o.Z,{name:"parmaLink",width:16,height:16}),(0,m.tZ)("span",{children:d("COM_SPPAGEBUILDER_EDITOR_FRONTEND_EDITOR")})]})]}),r.HZ.extension!==(null===(e=b.data)||void 0===e?void 0:e.extension)&&(0,m.tZ)("button",{type:"button",css:Lt.drawerHook(p),onClick:function(){return f((function(t){return!t}))},"data-drawer":!0,children:(0,m.tZ)(o.Z,{name:"angleUp"})})]})};var Pt={name:"g85fjd-drawerHook",styles:"svg{transform:rotate(-180deg);};label:drawerHook;"},Ct={name:"1n6ug0d-fieldAndButton",styles:"align-items:center;label:fieldAndButton;"},Tt={name:"1dw40py-inputWrapper",styles:"overflow:hidden;opacity:0;width:0;height:0;label:inputWrapper;"},Lt={wrapper:function(t){return(0,d.iv)("background-color:",i.qo.base.surface,";padding:",i.W0[24]," ",i.W0[36],";border-bottom:1px solid ",i.qo.stroke.neutral,";position:relative;overflow:hidden;transition:padding 0.3s ease;",t&&(0,d.iv)("padding:",i.W0[6]," ",i.W0[36],";&:hover{&>[data-drawer]{bottom:0;}};label:wrapper;"),";;label:wrapper;")},inputWrapper:function(t){return(0,d.iv)("width:100%;opacity:1;transition:opacity 0.3s ease-in-out,height 0.3s ease-in-out;",t&&Tt,";;label:inputWrapper;")},pageName:(0,d.iv)(a.c.body("medium"),";width:100%;;label:pageName;"),fieldAndButton:function(t){return(0,d.iv)("width:100%;display:flex;gap:",i.W0[16],";align-items:end;",t&&Ct,";;label:fieldAndButton;")},frontendEditorButton:function(t){return(0,d.iv)(a.c.body(),";background-color:",i.qo.base.white,";border-radius:",i.E0[24],";padding:",i.W0[4]," ",i.W0[12],";display:flex;align-items:center;gap:",i.W0[8],";color:",i.qo.text.neutral,";flex-shrink:0;svg{fill:none;}",!t&&(0,d.iv)("margin-bottom:",i.W0[2],";;label:frontendEditorButton;")," &:hover{color:",i.qo.text.hover,";}&::before,&::after{content:''!important;all:unset!important;};label:frontendEditorButton;")},drawerHook:function(t){return(0,d.iv)(b.iZ.resetButton,";",b.iZ.centeredFlex,";width:64px;height:16px;background:#fff;position:absolute;bottom:0;left:50%;transform:translateX(-50%);border-top-left-radius:6px;border-top-right-radius:6px;transition:opacity 0.3s ease-in-out,bottom 0.3s ease-in-out;",t&&(0,d.iv)("&:not(:focus){bottom:-",i.W0[16],";}&:hover{bottom:0;};label:drawerHook;")," svg{color:",i.qo.icon.default,";transition:transform 0.3s ease-in-out;}",t&&Pt,";;label:drawerHook;")}},jt=n(7025);function Rt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Bt(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Bt(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Bt(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}const Zt=function(t){var e,n,r,i=t.text,a=t.updateAdminLabel,l=t.suffix,d=t.truncate,u=t.isEditable,s=t.onIsEditableChange,p=(0,c.$)(),f=Rt((0,T.useState)(!1),2),v=f[0],y=f[1],b=Rt((0,T.useState)(i),2),h=b[0],g=b[1],I=(0,w.T)().closeSettingPanel,x=(0,T.useRef)(null),E=null!=u?u:v,O=null!=s?s:y;return(0,m.tZ)("div",{css:kt.wrapper,ref:x,children:E?(0,m.tZ)(m.HY,{children:(0,m.tZ)("div",{css:kt.textInputWrapper,children:(0,m.tZ)(jt.Z,{value:h,onChange:function(t){return g(t)},onKeyDown:function(t,e){e.stopPropagation(),"Escape"===t&&O(!1),"Enter"===t&&(a(h),I(),O(!1))},onBlur:function(){return O(!1)},focusOnMount:!0})})}):(0,m.BX)(m.HY,{children:[(0,m.BX)("span",{css:kt.truncate(null!=d&&d,(e=x.current,n=null==e?void 0:e.parentElement,r=null==n?void 0:n.parentElement,r?r.offsetWidth:0)),children:[i,l&&(0,m.BX)("span",{css:kt.suffix,children:[" (",l,")"]})]}),(0,m.tZ)(q.Z,{title:p("COM_SPPAGEBUILDER_EDITOR_CLICK_EDIT_NAME"),variant:"text",icon:(0,m.tZ)(o.Z,{name:"pencil",height:10,width:10}),onClick:function(t){t.stopPropagation(),O(!0)}})]})})};var kt={wrapper:(0,d.iv)("display:flex;justify-content:start;align-items:center;gap:",i.W0[10],";>button{padding:0;opacity:0;transition:opacity 0.3s ease;svg{color:",i.qo.icon.default,";transition:color 0.3s ease;}}:hover{>button{opacity:1;}};label:wrapper;"),textInputWrapper:{name:"ksdv16-textInputWrapper",styles:"max-width:150px;label:textInputWrapper;"},suffix:(0,d.iv)(a.c.caption("medium"),";color:",i.qo.text.default,";;label:suffix;"),truncate:function(t,e){return(0,d.iv)(t&&(0,d.iv)("max-width:",.5*e,"px;",b.iZ.textEllipsis,";;label:truncate;"),";;label:truncate;")}},Wt=n(5587),Nt=n(9101),Ut=n(3722),qt=n(6731),Gt=n(1030);function Mt(t){return Mt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Mt(t)}function $t(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Kt(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?$t(Object(n),!0).forEach((function(e){Vt(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):$t(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function Vt(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Mt(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Mt(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Mt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Ft(){Ft=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new S(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==Mt(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function w(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),w(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;w(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function Ht(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}var Yt=(0,T.forwardRef)((function(t,e){var n=t.type,r=t.dataToSave,i=t.closePopover,a=(0,c.$)(),l=(0,V.O)({defaultValues:{title:""}}),d=!!r,u=(0,F.l)({isOpen:d,triggerRef:e,arrow:"top"}),p=u.position,v=u.popoverRef,y=(0,s._s)(),h=(0,s.E4)(),g=(0,Ut.u)(),I="addon"===n&&"save_preset"===(null==r?void 0:r.action),x="addon"===n&&"save"===(null==r?void 0:r.action),E=function(){var t,e=(t=Ft().mark((function t(){var e,o;return Ft().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(e=l.getValues("title"),(0,f.$K)(r)&&(0,f.$K)(e)){t.next=3;break}return t.abrupt("return");case 3:if("addon"!==n||"save_preset"!==r.action){t.next=8;break}return t.next=6,g.mutateAsync({title:e,preset:r.data,addon_name:null!==(o=r.addonName)&&void 0!==o?o:""});case 6:t.next=15;break;case 8:if("addon"!==n){t.next=13;break}return t.next=11,y.mutateAsync({title:e,code:r.data});case 11:t.next=15;break;case 13:return t.next=15,h.mutateAsync({title:e,section:r.data});case 15:O();case 16:case"end":return t.stop()}}),t)})),function(){var e=this,n=arguments;return new Promise((function(o,r){var i=t.apply(e,n);function a(t){Ht(i,o,r,a,l,"next",t)}function l(t){Ht(i,o,r,a,l,"throw",t)}a(void 0)}))});return function(){return e.apply(this,arguments)}}(),O=function(){l.setValue("title",""),i()},w=I?{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_PRESET")}:x?{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_ADDON")}:{title:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION_TITLE"),label:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION"),button:a("COM_SPPAGEBUILDER_EDITOR_SAVE_SECTION")};return(0,m.tZ)(F.h,{isOpen:d,children:(0,m.BX)("div",{css:[zt.container,{position:"absolute",left:p.left,top:p.top},";label:SavePopover;"],ref:v,children:[(0,m.BX)("div",{css:zt.header,children:[(0,m.tZ)("span",{children:w.title}),(0,m.tZ)("button",{type:"button",css:b.iZ.resetButton,onClick:O,children:(0,m.tZ)(o.Z,{name:"cross",height:24,width:24})})]}),(0,m.BX)("form",{css:zt.wrapper,onSubmit:l.handleSubmit((0,qt.GI)(l,E)),children:[(0,m.tZ)("div",{css:zt.fieldWrapper,children:(0,m.tZ)(Y.Qr,{name:"title",control:l.control,rules:Kt({},(0,Gt.n)()),render:function(t){return(0,m.tZ)(X.Z,Kt(Kt({},t),{},{label:w.label,hasAutoFocus:!0}))}})}),(0,m.BX)("div",{css:zt.buttonWrapper,children:[(0,m.tZ)(q.Z,{variant:"secondary",onClick:O,children:a("COM_SPPAGEBUILDER_EDITOR_CREATE_PAGE_CANCEL")}),(0,m.tZ)(q.Z,{type:"submit",loading:y.isLoading||h.isLoading,children:w.button})]})]})]})})}));const Xt=Yt;var zt={container:(0,d.iv)("display:flex;flex-direction:column;background-color:",i.qo.background.white,";border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[10],";box-shadow:",i.AF.popover,";;label:container;"),wrapper:{name:"if42pu-wrapper",styles:"width:400px;label:wrapper;"},fieldWrapper:(0,d.iv)("padding:",i.W0[20],";display:flex;flex-direction:column;gap:",i.W0[12],";background-color:",i.qo.base.white,";;label:fieldWrapper;"),header:(0,d.iv)("padding:",i.W0[12]," ",i.W0[16]," ",i.W0[12]," ",i.W0[24],";border-bottom:1px solid ",i.qo.stroke.neutral,";display:flex;justify-content:space-between;align-items:center;span{",a.c.heading5("medium"),";}button{color:",i.qo.icon.default,";&:hover{color:",i.qo.icon.hover,";}};label:header;"),buttonWrapper:(0,d.iv)("border-top:1px solid ",i.qo.stroke.neutral,";padding:",i.W0[12]," ",i.W0[16],";display:flex;justify-content:end;gap:",i.W0[8],";;label:buttonWrapper;")},Jt=n(2445),Qt=function(t){var e,n,o,i,a,l,d,c=t.position,u=t.active,s=t.over,p=t.contentId,v=t.type,y=null==u?void 0:u.data.current,b=null==s?void 0:s.data.current;if((null==s?void 0:s.id)!==p||(null==b?void 0:b.type)!==v)return null;if(!c||!W({active:u,over:s}))return null;if((null==y?void 0:y.type)===r.t.Section&&y.type===b.type)return null;if(b.type===r.t.Column&&(null==y?void 0:y.type)!==r.Dw.ColumnsElement)return null;var h=[r.t.Addon,r.t.Div,r.t.DeepAddon];return h.includes(b.type)&&b.content.parent&&(0,f.r3)([r.Dw.RowElement,r.Dw.SavedSectionElement],null==y?void 0:y.type)||(0,f.r3)(h,null==y?void 0:y.type)&&(0,f.r3)(h,b.type)&&(null==y?void 0:y.sectionIndex)===b.sectionIndex&&y.columnIndex===b.columnIndex&&y.content.parent===b.content.parent||(null==y?void 0:y.type)===r.t.NestedRow&&(0,f.r3)(h,b.type)&&(null===(e=y.nestedRowData)||void 0===e?void 0:e.sectionIndex)===b.sectionIndex&&y.nestedRowData.columnIndex===b.columnIndex||b.type===r.t.NestedRow&&(0,f.r3)(h,null==y?void 0:y.type)&&(null==y?void 0:y.sectionIndex)===(null===(n=b.nestedRowData)||void 0===n?void 0:n.sectionIndex)&&(null==y?void 0:y.columnIndex)===(null===(o=b.nestedRowData)||void 0===o?void 0:o.columnIndex)||(null==y?void 0:y.type)===r.t.NestedRow&&b.type===r.t.NestedRow&&(null===(i=y.nestedRowData)||void 0===i?void 0:i.sectionIndex)===(null===(a=b.nestedRowData)||void 0===a?void 0:a.sectionIndex)&&(null===(l=y.nestedRowData)||void 0===l?void 0:l.columnIndex)===(null===(d=b.nestedRowData)||void 0===d?void 0:d.columnIndex)||(null==y?void 0:y.type)===r.t.CollectionItemAddon&&b.type===r.t.CollectionItemAddon&&(0,f.$K)(y.itemIndex)&&y.itemIndex===b.itemIndex&&y.content.parent===b.content.parent?null:te(c,v)},te=function(t,e){var n=i.W0[10];return e===r.t.Section&&(n=i.W0[16]),e===r.t.TableItem&&(n=i.W0[6]),(0,d.iv)("position:relative;&::after{content:'';background-color:",i.qo.background.placeholder,";position:absolute;",ee(t,e,n),";};label:styles;")},ee=function(t,e,n){return"column"===e?(0,d.iv)("top:0;bottom:0;width:2px;height:100%;",t.isLeft&&(0,d.iv)("left:-",n,";;label:positionStyle;")," ",!t.isLeft&&(0,d.iv)("right:-",n,";;label:positionStyle;"),";;label:positionStyle;"):(0,d.iv)("left:0;right:0;height:2px;width:100%;",t.isTop&&(0,d.iv)("top:-",n,";;label:positionStyle;")," ",!t.isTop&&(0,d.iv)("bottom:-",n,";;label:positionStyle;"),";;label:positionStyle;")},ne=n(4101),oe=n(6216),re=n(6651),ie=n(6795),ae=n(1245),le=n.n(ae),de=n(6248),ce=n(4999),ue=n(765);function se(t){return se="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},se(t)}function pe(t){return function(t){if(Array.isArray(t))return ge(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||me(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function fe(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=me(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function ve(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function ye(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?ve(Object(n),!0).forEach((function(e){be(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):ve(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function be(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==se(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==se(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===se(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function he(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||me(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function me(t,e){if(t){if("string"==typeof t)return ge(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?ge(t,e):void 0}}function ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var Ie=new Set(["advancedcolor","advancedslider","alignment","boxshadow","buttons","color","margin","fonts","fontstyle","gradient","padding","slider","select","typography","radio"]),xe=["h1","h2","h3","h4","h5","h6","p","div","span","br","section","strong"],Ee=function(t){var e,n=t.content,o=t.parentVisibility,r=t.sectionIndex,i=t.columnIndex,a=t.index,l=(0,c.$)(),d=he((0,T.useState)(null),2),s=d[0],p=d[1],v=(0,G.p)().showToast,y=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload}}),de.X),b=y.type,h=y.payload,m=(0,Jt.F)((function(t){return t.setSettings})),g=(0,w.T)().closeSettingPanel,I=(0,u.x)((function(t){return t.addonStructure})),x=(0,D.o)((function(t){return t.copiedData})),E=(0,u.x)((function(t){return t.globalSettings})),O=(0,D.o)((function(t){return t.deleteDynamicContentAddon})),S=(0,D.o)((function(t){return t.copyDynamicContentAddon})),A=(0,D.o)((function(t){return t.pasteOrInsertDynamicContentAddon})),_=(0,D.o)((function(t){return t.changeVisibilityOfDynamicContentAddon})),P=(0,D.o)((function(t){return t.duplicateDynamicContentAddon})),C=(0,ue.F)().getDynamicContentCollectionItemAddon,L=(0,Y.Gc)(),j=(0,f.$K)(n.visibility)&&!n.visibility,R=o&&n.visibility;return{isEditing:"dynamic_content_collection_item_addon"===b&&(null==h||null===(e=h.addon)||void 0===e?void 0:e.id)===n.id,isHidden:j,isVisible:R,addonDataToSave:s,resetAddonDataToSave:function(){return p(null)},handleActions:function(t){switch(t){case"copy":S({sectionIndex:r,columnIndex:i,addon:n});break;case"pasteAbove":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!0}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"paste":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!1,pasteInside:!0}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"pasteBelow":g(),A({sectionIndex:r,columnIndex:i,addon:n,isAbove:!1}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")});break;case"pasteStyle":var e,o,a;if(g(),!(0,f.$K)(x.addon))return;var d=he(x.addon.addons,1)[0],c=d.name,u=d.settings,s=I[c];if(n.name!==c||!(0,f.$K)(s)||!(0,f.$K)(u))return;var y=s.settings;if(!(0,f.$K)(y))return;var b=function t(e,n,o){var r,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=fe((0,f.zt)(e));try{for(l.s();!(r=l.n()).done;){var d,c=r.value.fields,u=fe((0,f.J0)(c));try{var s=function(){var e=he(d.value,2),r=e[0],l=e[1];if((0,f.$K)(o[r])&&!(0,f.r3)(xe,o[r])&&(Ie.has(l.type)||i))a[r]=o[r];else if("repeatable"===l.type){var c=(0,f.kJ)(n[r])?n[r]:[],u=c.length,s=(0,f.kJ)(o[r])?o[r]:[],p=s.length;a[r]=s.slice(0,u).flatMap((function(e,n){var o;return ye(ye({},c[n]),t(null!==(o=l.attr)&&void 0!==o?o:{},c[n],e,!1,{}))})),u>p&&(a[r]=[].concat(pe(a[r]),pe(c.slice(p))))}};for(u.s();!(d=u.n()).done;)s()}catch(t){u.e(t)}finally{u.f()}}}catch(t){l.e(t)}finally{l.f()}return a},h=b(y,null!==(e=n.settings)&&void 0!==e?e:{},u),m=b(E.style,null!==(o=n.settings)&&void 0!==o?o:{},u,!0);null!==(a=n.settings)&&void 0!==a||(n.settings={}),n.settings=ye(ye(ye({},n.settings),h),m);break;case"hide":g(),_({sectionIndex:r,columnIndex:i,addon:n,visibility:!!n.visibility}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":P({sectionIndex:r,columnIndex:i,addon:n}),v({type:"success",message:l("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"save":var w=le()(n);(0,ce.oY)(w,(function(t){t.id=(0,f.x0)()}));var D={name:w.name,addons:[w],sections:[]};p({action:"save",data:JSON.stringify((0,f.M9)(D))});break;case"remove":O({sectionIndex:r,columnIndex:i,addon:n})}},handleSetSettings:function(){var t;if("dynamic_content_collection_item_addon"!==b||(null==h||null===(t=h.addon)||void 0===t?void 0:t.id)!==n.id){m("dynamic_content_collection_item_addon",{sectionIndex:r,columnIndex:i,addonIndex:a,addon:n});var e=C({sectionIndex:r,columnIndex:i,addon:n}),o=(0,f.$K)(e)?e.settings:{};L.reset(ye(ye({},L.getValues()),{},{settings:null!=o?o:{}}))}}}},Oe=n(653),we=n(4632),Se=n(1518);function De(t){return function(t){if(Array.isArray(t))return Ae(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return Ae(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Ae(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ae(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var _e=function(t){var e,n=t.addonName,o=t.copiedData,r=t.isTableItem,i=t.isProductList,a=t.isNotFoundAddon,l=t.isEmptyParentAddon;return[{id:"copy",icon:"copy",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_COPY",hide:r,isDisabled:a},{id:"rename",icon:"pencil",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_RENAME",hide:r,isDisabled:a},{id:"pasteAbove",icon:"clipboardAbove",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_ABOVE",isDisabled:!o.addon||a,hide:r},{id:"paste",icon:"clipboard",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_INSIDE",isDisabled:!o.addon||a,hide:!l},{id:"pasteBelow",icon:"clipboardBelow",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PASTE_BELOW",isDisabled:!o.addon||a,hide:r},{id:"pasteStyle",icon:"clipboardBelow",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_STYLE_PASTE",isDisabled:!o.addon||a,hide:r||n!==(null===(e=o.addon)||void 0===e?void 0:e.name)},{id:"hide",icon:"eye",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_HIDE",isProFeature:!0,isDisabled:a},{id:"duplicate",icon:"clone",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_DUPLICATE",isDisabled:a},{id:"save",icon:"saveLine",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_SAVE",isProFeature:!0,hide:r,isDisabled:a},{id:"save_preset",icon:"saveLine",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_PRESET",isProFeature:!0,hide:!i,isDisabled:a},{id:"remove",icon:"trash",title:"COM_SPPAGEBUILDER_EDITOR_COLUMN_REMOVE",variant:"critical"}]};const Pe=function(t){var e=t.addonWidth,n=t.addonName,i=t.addonType,a=t.copiedData,l=t.handleActions,d=t.isNotFoundAddon,u=void 0!==d&&d,s=t.isEmptyParentAddon,p=void 0!==s&&s,v=(0,c.$)();return(0,m.tZ)(Nt.Z,{actions:[].concat(De((0,f.$K)(e)&&e<=40?[{id:"settings",icon:"pencilOnBox",title:"COM_SPPAGEBUILDER_EDITOR_ADDON_SETTINGS"}]:[]),De(_e({addonName:n,copiedData:a,isTableItem:i===r.t.TableItem,isProductList:n===r.oA.productList||n===r.oA.categoryList,isNotFoundAddon:u,isEmptyParentAddon:p}))),title:v("COM_SPPAGEBUILDER_EDITOR_ADDON_ACTIONS"),triggerButtonContent:(0,m.tZ)(o.Z,{name:"ellipsisY",width:16,height:16}),triggerButtonStyle:Ce.actionButton(),onSelect:l})};var Ce={actionButton:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return(0,d.iv)(b.iZ.resetButton,";color:",i.qo.text.default,";display:flex;gap:",i.W0[8],";svg{color:",i.qo.icon.default,";}",!t&&(0,d.iv)(":hover{svg{color:",i.qo.icon.hover,";}};label:actionButton;"),";;label:actionButton;")}};const Te=function(t){var e=t.id,n=void 0===e?(0,f.x0)():e,r=t.setNodeRef,i=t.isHidden,a=t.disabled,l=t.colors,d=t.placeholderStyle,u=t.sortableStyle,s=t.addonWidth,p=t.addonType,v=t.addonName,y=t.copiedData,b=t.handleActions,h=(0,c.$)(),g=(0,T.useRef)(null);return(0,m.tZ)(m.HY,{children:(0,m.tZ)("div",{id:n.toString(),css:[Be.addon({isEditing:!1,isHidden:i,disabled:!0,colors:l}),d,u,";label:AddonNotFound;"],ref:r,children:(0,m.BX)("div",{css:Be.addonTitleWrapper(a,s),children:[(0,m.tZ)(o.Z,{name:"exclamationTriangle",style:Be.notFoundIcon}),(0,m.tZ)("span",{css:Be.addonTitle,"data-addon-title":!0,children:h("COM_SPPAGEBUILDER_EDITOR_ADDON_NOT_FOUND")}),(0,m.tZ)("div",{ref:g,css:Be.actionButtonWrapper(s),"data-action-button-wrapper":!0,children:(0,m.tZ)(Pe,{addonWidth:s,addonType:p,addonName:v,copiedData:y,handleActions:b,isNotFoundAddon:!0})})]})})})};var Le={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},je={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},Re={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},Be={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem;return(0,d.iv)("border:1px solid ",i.qo.stroke.neutral,";border-radius:",i.E0[4],";width:100%;position:relative;z-index:",i.W5.dropdown,";",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&Re," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0;return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",n===r.t.DeepAddon&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&je," ",(0,f.$K)(e)&&e<=80&&Le,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;;label:addonTitle;"),actionButtonWrapper:function(t){return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[10],";position:absolute;right:",i.W0[16],";top:50%;transform:translateY(-50%);transition:opacity 0.3s ease-in-out;opacity:0;visibility:hidden;",(0,f.$K)(t)&&t<=220&&(0,d.iv)("right:",i.W0[8],";;label:actionButtonWrapper;")," ",(0,f.$K)(t)&&t<=80&&(0,d.iv)("gap:",i.W0[4],";right:50%;transform:translateY(-50%) translateX(50%);;label:actionButtonWrapper;"),";;label:actionButtonWrapper;")},notFoundIcon:(0,d.iv)("color:",i.qo.base.warning,";width:18px;height:18px;;label:notFoundIcon;")};function Ze(t){return Ze="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ze(t)}function ke(t){return function(t){if(Array.isArray(t))return $e(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||Me(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function We(t,e){var n="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!n){if(Array.isArray(t)||(n=Me(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var o=0,r=function(){};return{s:r,n:function(){return o>=t.length?{done:!0}:{done:!1,value:t[o++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,l=!1;return{s:function(){n=n.call(t)},n:function(){var t=n.next();return a=t.done,t},e:function(t){l=!0,i=t},f:function(){try{a||null==n.return||n.return()}finally{if(l)throw i}}}}function Ne(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Ue(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Ne(Object(n),!0).forEach((function(e){qe(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Ne(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function qe(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ze(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ze(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ze(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function Ge(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||Me(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Me(t,e){if(t){if("string"==typeof t)return $e(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?$e(t,e):void 0}}function $e(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var Ke=new Set(["advancedcolor","advancedslider","alignment","boxshadow","buttons","color","margin","fonts","fontstyle","gradient","padding","slider","select","typography","radio"]),Ve=["h1","h2","h3","h4","h5","h6","p","div","span","br","section","strong"];function Fe(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var He=function(t){var e,n,o=t.sectionIndex,r=t.columnIndex,i=(0,T.useRef)(null),a=(e=(0,T.useState)(),n=2,function(t){if(Array.isArray(t))return t}(e)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(e,n)||function(t,e){if(t){if("string"==typeof t)return Fe(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Fe(t,e):void 0}}(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),l=a[0],d=a[1],c=(0,H.j)((function(t){return t.activeAction})),u=(0,D.o)((function(t){return t.page}))[o].columns[r];return(0,T.useEffect)((function(){setTimeout((function(){var t,e=null===(t=i.current)||void 0===t?void 0:t.getBoundingClientRect().width;d(e)}),300)}),[c,u.settings.width]),{addonWidth:l,addonTitleRef:i}};function Ye(t){return Ye="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ye(t)}function Xe(){Xe=function(){return t};var t={},e=Object.prototype,n=e.hasOwnProperty,o=Object.defineProperty||function(t,e,n){t[e]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",a=r.asyncIterator||"@@asyncIterator",l=r.toStringTag||"@@toStringTag";function d(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{d({},"")}catch(t){d=function(t,e,n){return t[e]=n}}function c(t,e,n,r){var i=e&&e.prototype instanceof p?e:p,a=Object.create(i.prototype),l=new S(r||[]);return o(a,"_invoke",{value:x(t,n,l)}),a}function u(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var s={};function p(){}function f(){}function v(){}var y={};d(y,i,(function(){return this}));var b=Object.getPrototypeOf,h=b&&b(b(D([])));h&&h!==e&&n.call(h,i)&&(y=h);var m=v.prototype=p.prototype=Object.create(y);function g(t){["next","throw","return"].forEach((function(e){d(t,e,(function(t){return this._invoke(e,t)}))}))}function I(t,e){function r(o,i,a,l){var d=u(t[o],t,i);if("throw"!==d.type){var c=d.arg,s=c.value;return s&&"object"==Ye(s)&&n.call(s,"__await")?e.resolve(s.__await).then((function(t){r("next",t,a,l)}),(function(t){r("throw",t,a,l)})):e.resolve(s).then((function(t){c.value=t,a(c)}),(function(t){return r("throw",t,a,l)}))}l(d.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function x(t,e,n){var o="suspendedStart";return function(r,i){if("executing"===o)throw new Error("Generator is already running");if("completed"===o){if("throw"===r)throw i;return{value:void 0,done:!0}}for(n.method=r,n.arg=i;;){var a=n.delegate;if(a){var l=E(a,n);if(l){if(l===s)continue;return l}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===o)throw o="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o="executing";var d=u(t,e,n);if("normal"===d.type){if(o=n.done?"completed":"suspendedYield",d.arg===s)continue;return{value:d.arg,done:n.done}}"throw"===d.type&&(o="completed",n.method="throw",n.arg=d.arg)}}}function E(t,e){var n=e.method,o=t.iterator[n];if(void 0===o)return e.delegate=null,"throw"===n&&t.iterator.return&&(e.method="return",e.arg=void 0,E(t,e),"throw"===e.method)||"return"!==n&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+n+"' method")),s;var r=u(o,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,s;var i=r.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,s):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,s)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function w(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function S(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function D(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,r=function e(){for(;++o<t.length;)if(n.call(t,o))return e.value=t[o],e.done=!1,e;return e.value=void 0,e.done=!0,e};return r.next=r}}return{next:A}}function A(){return{value:void 0,done:!0}}return f.prototype=v,o(m,"constructor",{value:v,configurable:!0}),o(v,"constructor",{value:f,configurable:!0}),f.displayName=d(v,l,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===f||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,v):(t.__proto__=v,d(t,l,"GeneratorFunction")),t.prototype=Object.create(m),t},t.awrap=function(t){return{__await:t}},g(I.prototype),d(I.prototype,a,(function(){return this})),t.AsyncIterator=I,t.async=function(e,n,o,r,i){void 0===i&&(i=Promise);var a=new I(c(e,n,o,r),i);return t.isGeneratorFunction(n)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(m),d(m,l,"Generator"),d(m,i,(function(){return this})),d(m,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),n=[];for(var o in e)n.push(o);return n.reverse(),function t(){for(;n.length;){var o=n.pop();if(o in e)return t.value=o,t.done=!1,t}return t.done=!0,t}},t.values=D,S.prototype={constructor:S,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function o(n,o){return a.type="throw",a.arg=t,e.next=n,o&&(e.method="next",e.arg=void 0),!!o}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],a=i.completion;if("root"===i.tryLoc)return o("end");if(i.tryLoc<=this.prev){var l=n.call(i,"catchLoc"),d=n.call(i,"finallyLoc");if(l&&d){if(this.prev<i.catchLoc)return o(i.catchLoc,!0);if(this.prev<i.finallyLoc)return o(i.finallyLoc)}else if(l){if(this.prev<i.catchLoc)return o(i.catchLoc,!0)}else{if(!d)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return o(i.finallyLoc)}}}},abrupt:function(t,e){for(var o=this.tryEntries.length-1;o>=0;--o){var r=this.tryEntries[o];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var i=r;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,s):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),s},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),w(n),s}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var o=n.completion;if("throw"===o.type){var r=o.arg;w(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:D(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),s}},t}function ze(t,e,n,o,r,i,a){try{var l=t[i](a),d=l.value}catch(t){return void n(t)}l.done?e(d):Promise.resolve(d).then(o,r)}function Je(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);e&&(o=o.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,o)}return n}function Qe(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{};e%2?Je(Object(n),!0).forEach((function(e){tn(t,e,n[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):Je(Object(n)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}))}return t}function tn(t,e,n){return(e=function(t){var e=function(t,e){if("object"!==Ye(t)||null===t)return t;var n=t[Symbol.toPrimitive];if(void 0!==n){var o=n.call(t,"string");if("object"!==Ye(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ye(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function en(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var o,r,i,a,l=[],d=!0,c=!1;try{if(i=(n=n.call(t)).next,0===e){if(Object(n)!==n)return;d=!1}else for(;!(d=(o=i.call(n)).done)&&(l.push(o.value),l.length!==e);d=!0);}catch(t){c=!0,r=t}finally{try{if(!d&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(c)throw r}}return l}}(t,e)||function(t,e){if(t){if("string"==typeof t)return nn(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?nn(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function nn(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,o=new Array(e);n<e;n++)o[n]=t[n];return o}var on=function(t){var e,n,o,i,a;return"div"===(null==t||null===(e=t.data.current)||void 0===e?void 0:e.type)||(null==t||null===(n=t.data.current)||void 0===n||null===(o=n.content)||void 0===o?void 0:o.name)===r.oA.productList||(null==t||null===(i=t.data.current)||void 0===i||null===(a=i.content)||void 0===a?void 0:a.name)===r.oA.categoryList};const rn=function(t){var e,n,a,l=t.children,d=t.content,s=t.sectionIndex,p=t.columnIndex,v=t.index,y=t.childIndex,b=t.placeholderPosition,h=t.disabled,g=t.tableItem,I=t.addonType,x=void 0===I?r.t.Addon:I,E=t.colors,O=void 0===E?{addon:i.qo.alternate.addon,background:i.qo.background.lightGreen}:E,_=t.isCollapsible,C=void 0!==_&&_,L=t.isRegularDivChild,j=void 0!==L&&L,R=t.isDynamicContentChild,B=void 0!==R&&R,Z=(0,c.$)(),k=(0,K.d)().showModal,N=(0,D.o)((function(t){return t.copiedData})),U=(0,D.o)((function(t){return t.changeAddonVisibility})),q=(0,D.o)((function(t){return t.changeVisibilityOfDynamicContentAddon})),M=(0,D.o)((function(t){return t.updateAdminLabel})),$=function(t){var e,n=t.content,o=t.parentVisibility,r=t.tableItem,i=t.sectionIndex,a=t.columnIndex,l=t.index,d=t.childIndex,s=(0,c.$)(),p=Ge((0,T.useState)(null),2),v=p[0],y=p[1],b=(0,w.T)().closeSettingPanel,h=(0,Jt.F)((function(t){return{type:t.type,payload:t.payload}}),de.X),m=(h.type,h.payload),g=(0,Jt.F)((function(t){return t.setSettings})),I=(0,D.o)((function(t){return t.page})),x=(0,D.o)((function(t){return t.copyAddon})),E=(0,D.o)((function(t){return t.pasteOrInsertAddon})),O=(0,D.o)((function(t){return t.pasteAddonStyle})),_=(0,u.x)((function(t){return t.globalSettings})),P=(0,D.o)((function(t){return t.duplicateAddon})),C=(0,D.o)((function(t){return t.duplicateTableItemAddon})),L=(0,D.o)((function(t){return t.copiedData})),j=(0,D.o)((function(t){return t.deleteAddon})),R=(0,D.o)((function(t){return t.deleteTableItemAddon})),B=(0,D.o)((function(t){return t.changeAddonVisibility})),Z=(0,D.o)((function(t){return t.page})),k=(0,S._)(),W=k.getAddon,N=k.getTableItem,U=(0,Y.Gc)(),q=(0,u.x)((function(t){return t.addonStructure})),M=(0,G.p)().showToast,$=(0,f.$K)(n.visibility)&&!n.visibility,K=o&&n.visibility,V=(null===(e=m.addon)||void 0===e?void 0:e.id)===n.id,F=W({sectionIndex:i,columnIndex:a,addonIndex:l}),H=function(){var t;if((null===(t=m.addon)||void 0===t?void 0:t.id)!==n.id){var e,o,d,c=I[i].columns[a].addons,u=(0,ce.k3)(c,n),s=!!u&&"div"===n.name&&(0,ce.X2)(u,(function(t){return"dynamic_content_collection"===t.name}));if(n&&((0,Oe.Lx)(n.name)||s))return g("dynamic_content_collection_item_addon",{sectionIndex:i,columnIndex:a,addonIndex:l,addon:n}),void U.reset(Ue(Ue({},U.getValues()),{},{settings:null!==(e=n.settings)&&void 0!==e?e:{}}));g("addon",{sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,addon:n}),(0,f.$K)(r)&&(o=null===(d=N({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}))||void 0===d?void 0:d.settings);var p=(0,f.$K)(o)?o:null==F?void 0:F.settings;U.reset(Ue(Ue({},U.getValues()),{},{settings:p||{}}))}};return{isEditing:V,isHidden:$,isVisible:K,addonDataToSave:v,resetAddonDataToSave:function(){return y(null)},handleActions:function(t){switch(t){case"settings":H();break;case"copy":x({sectionIndex:i,columnIndex:a,addonIndex:l}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_COPIED_SUCCESSFULLY")});break;case"pasteAbove":b(),(0,f.$K)(L.addon)&&(E({addonData:L.addon,sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d,parentId:n.parent,isAbove:!0}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"paste":b(),(0,f.$K)(L.addon)&&(E({addonData:L.addon,sectionIndex:i,columnIndex:a,addonIndex:0,childIndex:-1,parentId:n.id,isAbove:!1}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteBelow":b(),(0,f.$K)(L.addon)&&(E({addonData:L.addon,sectionIndex:i,columnIndex:a,addonIndex:l,parentId:n.parent,childIndex:d}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_PASTED_SUCCESSFULLY")}));break;case"pasteStyle":var e,o;if(!(0,f.$K)(L.addon))return;var c=Ge(L.addon.addons,1)[0],u=c.name,p=c.settings,v=q[u];if(n.name!==u||!(0,f.$K)(v)||!(0,f.$K)(p))return;var h=v.settings;if(!(0,f.$K)(h))return;var m=function t(e,n,o){var r,i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},l=We((0,f.zt)(e));try{for(l.s();!(r=l.n()).done;){var d,c=r.value.fields,u=We((0,f.J0)(c));try{var s=function(){var e=Ge(d.value,2),r=e[0],l=e[1];if((0,f.$K)(o[r])&&!(0,f.r3)(Ve,o[r])&&(Ke.has(l.type)||i))a[r]=o[r];else if("repeatable"===l.type){var c=(0,f.kJ)(n[r])?n[r]:[],u=c.length,s=(0,f.kJ)(o[r])?o[r]:[],p=s.length;a[r]=s.slice(0,u).flatMap((function(e,n){var o;return Ue(Ue({},c[n]),t(null!==(o=l.attr)&&void 0!==o?o:{},c[n],e,!1,{}))})),u>p&&(a[r]=[].concat(ke(a[r]),ke(c.slice(p))))}};for(u.s();!(d=u.n()).done;)s()}catch(t){u.e(t)}finally{u.f()}}}catch(t){l.e(t)}finally{l.f()}return a},g=m(h,null!==(e=n.settings)&&void 0!==e?e:{},p),I=m(_.style,null!==(o=n.settings)&&void 0!==o?o:{},p,!0);O({styleSettings:g,globalStyleSettings:I,sectionIndex:i,columnIndex:a,addonIndex:l}),b();break;case"hide":b(),B({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r,visibility:!!n.visibility}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_VISIBILITY_CHANGED_SUCCESSFULLY")});break;case"duplicate":(0,f.$K)(r)?C({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):P({sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_DUPLICATED_SUCCESSFULLY")});break;case"remove":b(),(0,f.$K)(r)?R({sectionIndex:i,columnIndex:a,addonIndex:l,tableItem:r}):j({sectionIndex:i,columnIndex:a,addonIndex:l,childIndex:d}),M({type:"success",message:s("COM_SPPAGEBUILDER_EDITOR_REMOVED_SUCCESSFULLY")});break;case"save":var w=Z[i],S=w.columns[a],D=S.addons,T=(0,A.DV)({sections:Z,rowId:w.id,columnId:S.id,addonList:D,addon:n});(0,f.$K)(T)&&y({data:JSON.stringify((0,f.M9)(T)),action:"save"});break;case"save_preset":var k,W,N=Z[i].columns[a].addons[l],U={items:null!==(W=(null!==(k=N.items)&&void 0!==k?k:[])[0])&&void 0!==W?W:[],settings:N.settings};y({action:"save_preset",addonName:N.name,data:JSON.stringify(U)})}},handleSetSettings:H}}(t),V=$.isEditing,F=$.isHidden,H=$.isVisible,X=$.handleActions,z=$.handleSetSettings,J=$.addonDataToSave,Q=$.resetAddonDataToSave,tt=Ee(t),et=tt.handleActions,nt=tt.addonDataToSave,ot=tt.resetAddonDataToSave,rt=(0,T.useRef)(null),it=(0,u.x)((function(t){return t.addonStructure})),at=en((0,T.useState)(!0),2),lt=at[0],dt=at[1],ct=(0,T.useRef)(lt),ut=en((0,T.useState)(!1),2),st=ut[0],pt=ut[1],ft=(0,xt.v)((function(t){return t.appConfig})),vt=(0,T.useMemo)((function(){var t,e;if("dynamic_content_collection"!==d.name)return"";var n=null==d||null===(t=d.settings)||void 0===t?void 0:t.source;return(0,f.$K)(n)?n===Se.u.ARTICLES?Z("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_ARTICLES"):n===Se.u.TAGS?Z("COM_SPPAGEBUILDER_EDITOR_DYNAMIC_CONTENT_COLLECTION_TAGS"):null!==(e=ft.collections[n])&&void 0!==e?e:"":""}),[ft,d.settings]),yt=He({sectionIndex:s,columnIndex:p}),bt=yt.addonWidth,ht=yt.addonTitleRef,mt=(0,Wt.nB)({id:d.id,data:{type:x,isVisible:H,sectionIndex:s,columnIndex:p,addonIndex:v,childIndex:y,tableItem:g,content:d,isRegularDivChild:j,isDynamicContentChild:B}}),gt=mt.attributes,It=mt.listeners,Et=mt.setNodeRef,Ot=mt.active,wt=mt.over,St=mt.isDragging,Dt=mt.isOver,At=mt.transform,_t=mt.transition,Pt=W({active:Ot,over:wt}),Ct=it[d.name],Tt=Qt({position:b,contentId:d.id,active:Ot,over:wt,type:x}),Lt=P({disable:on(wt),transform:At,transition:_t,isDragging:St});(0,T.useEffect)((function(){ct.current&&dt(!St)}),[St]),(0,T.useEffect)((function(){dt(!F),ct.current=!F}),[F]);var jt=x!==r.t.TableItem,Rt=(0,Oe.Lx)(d.name)||(0,Oe.dW)(d,s,p),Bt=function(t){(0,f.$K)(g)?M({label:t,tableAddonItem:Qe({sectionIndex:s,columnIndex:p,addonIndex:v},g)}):M(B?{label:t,dynamicCollectionItemAddon:{addon:d}}:{label:t,addon:{sectionIndex:s,columnIndex:p,addonIndex:v}})},kt=function(t){var e,n,o;"rename"===t&&k({component:we.Z,props:{title:Z("COM_SPPAGEBUILDER_EDITOR_RENAME_ADDON"),placeholder:Z("COM_SPPAGEBUILDER_EDITOR_ADDON_NAME_PLACEHOLDER"),currentName:(null===(e=d.settings)||void 0===e?void 0:e.admin_label)||"",onSave:(n=Xe().mark((function t(e){return Xe().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,Bt(e);case 2:case"end":return t.stop()}}),t)})),o=function(){var t=this,e=arguments;return new Promise((function(o,r){var i=n.apply(t,e);function a(t){ze(i,o,r,a,l,"next",t)}function l(t){ze(i,o,r,a,l,"throw",t)}a(void 0)}))},function(t){return o.apply(this,arguments)})}}),!Rt||j?X(t):et(t)};if(!(0,f.$K)(Ct))return(0,m.tZ)(Te,{id:d.id,setNodeRef:Et,isHidden:F,disabled:h,colors:O,placeholderStyle:Tt,sortableStyle:Lt,addonWidth:bt,addonType:x,addonName:d.name,copiedData:N,handleActions:kt});var Nt=(0,f.$K)(Ct.title)?Ct.title:"",Ut=(0,f.$K)(Ct.icon)?Ct.icon:"",qt=(null===(e=d.settings)||void 0===e?void 0:e.admin_label)||Nt,Gt=h||St||Dt,Mt=d.name===r.t.Div&&!(null!==(n=d.children)&&void 0!==n&&n.length),$t=Rt&&!(null!==(a=d.child_nodes)&&void 0!==a&&a.length);return(0,m.BX)(m.HY,{children:[(0,m.BX)("div",{id:d.id.toString(),css:[sn.addon({isEditing:V,isHidden:F,disabled:Gt,colors:O,isTableItem:(0,f.$K)(g),droppable:!Dt||Pt}),Tt,Lt,";label:Addon;"],ref:Et,children:[(0,m.BX)("div",Qe(Qe(Qe({ref:ht,css:sn.addonTitleWrapper(h,bt,x,lt),title:Z("COM_SPPAGEBUILDER_EDITOR_ADDON_CLICK_TITLE"),onClick:function(){z()},onKeyDown:f.ZT},gt),x!==r.t.TableItem&&Qe({},It)),{},{role:"button",tabIndex:-1,children:[(0,m.tZ)("span",{css:sn.addonIcon,"data-addon-icon":!0,dangerouslySetInnerHTML:{__html:Ut}}),(0,m.tZ)("span",{css:sn.addonTitle,"data-addon-title":!0,children:(0,m.tZ)(Zt,{text:qt,truncate:!0,suffix:vt,isEditable:st,onIsEditableChange:pt,updateAdminLabel:function(t){(0,f.$K)(g)?M({label:t,tableAddonItem:Qe({sectionIndex:s,columnIndex:p,addonIndex:v},g)}):M(B?{label:t,dynamicCollectionItemAddon:{addon:d}}:{label:t,addon:{sectionIndex:s,columnIndex:p,addonIndex:v}})}})}),!1,(0,m.tZ)("div",{ref:rt,css:sn.actionButtonWrapper(bt),"data-action-button-wrapper":!0,children:F?(0,m.BX)("button",{type:"button",css:sn.actionButton(),onClick:function(t){t.stopPropagation(),Rt?q({sectionIndex:s,columnIndex:p,addon:d,visibility:!!d.visibility}):U({sectionIndex:s,columnIndex:p,addonIndex:v,tableItem:g,visibility:d.visibility})},children:[(0,m.tZ)(o.Z,{name:"eyeSlash"}),(0,f.$K)(bt)&&bt>80&&Z("COM_SPPAGEBUILDER_EDITOR_ACTION_VISIBILITY_SHOW")]}):(0,m.BX)(m.HY,{children:[C&&(0,m.tZ)("button",{type:"button",css:sn.toggleButton(lt),title:Z("COM_SPPAGEBUILDER_EDITOR_EXPAND"),onClick:function(t){t.stopPropagation(),dt((function(t){return!t})),ct.current=!ct.current},children:(0,m.tZ)(o.Z,{name:"angleUp",width:20,height:20})}),(0,f.$K)(bt)&&bt>40&&(0,m.tZ)("button",{type:"button",css:sn.actionButton(),children:(0,m.tZ)(o.Z,{name:"pencilOnBox"})}),(0,m.tZ)(Pe,{addonWidth:bt,addonType:x,addonName:d.name,copiedData:N,handleActions:kt,isEmptyParentAddon:Mt||$t})]})})]})),(0,f.$K)(l)&&(0,m.tZ)("div",{css:sn.contents(lt),children:l}),jt&&(0,m.tZ)("button",Qe(Qe(Qe({type:"button",css:sn.addonDragHandler(O.addon),"data-addon-drag-handler":!0},gt),It),{},{children:(0,m.tZ)(o.Z,{name:"ellipsisDoubleY"})}))]}),(0,m.tZ)(Xt,{ref:rt,type:"addon",dataToSave:Rt?nt:J,closePopover:Rt?ot:Q})]})};var an={name:"sxudyk-contents",styles:"display:none;height:0;opacity:0;padding:0;overflow:hidden;label:contents;"},ln={name:"1bpgz68-toggleButton",styles:"transform:rotate(-180deg);label:toggleButton;"},dn={name:"1f0vbk0-addonTitleWrapper",styles:"&>[data-addon-icon]{opacity:0;};label:addonTitleWrapper;"},cn={name:"tm5uzc-addonTitleWrapper",styles:"&>[data-addon-title]{opacity:0;};label:addonTitleWrapper;"},un={name:"1dqdmrn-addon",styles:"border-top-left-radius:0;label:addon;"},sn={addon:function(t){var e=t.isEditing,n=t.isHidden,o=t.disabled,r=t.colors,a=t.isTableItem,l=t.droppable;return(0,d.iv)("border:1px solid ",l?i.qo.stroke.neutral:i.qo.stroke.error,";border-radius:",i.E0[4],";width:100%;position:relative;",n&&(0,d.iv)("background-image:repeating-linear-gradient(-45deg, transparent 0 4px, ",i.qo.stroke.disabled," 4px 5px);;label:addon;")," ",!o&&(0,d.iv)("background-color:",i.qo.base.white,";:hover{border:1px solid ",r.addon,";",!a&&un," &>[data-addon-drag-handler]{opacity:1;}};label:addon;")," ",e&&(0,d.iv)("border:1px solid ",r.addon,";background-color:",(0,ne.m4)(r.background,.2),";;label:addon;"),";;label:addon;")},addonTitleWrapper:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0],e=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,o=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return(0,d.iv)("display:flex;align-items:center;gap:",i.W0[8],";padding:",i.W0[10]," ",i.W0[12],";position:relative;overflow:hidden;cursor:pointer;",(n===r.t.DeepAddon||n===r.t.Div)&&o&&(0,d.iv)("padding:",i.W0[16],";;label:addonTitleWrapper;")," ",(0,f.$K)(e)&&e<=40&&(0,d.iv)("justify-content:center;padding:",i.W0[10]," 0;[data-addon-title]{display:none;};label:addonTitleWrapper;")," ",!t&&(0,d.iv)(":hover,:focus-within{",(0,f.$K)(e)&&e<=220&&cn," ",(0,f.$K)(e)&&e<=80&&dn,";&>[data-action-button-wrapper]{opacity:1;visibility:visible;}};label:addonTitleWrapper;"),";;label:addonTitleWrapper;")},addonIcon:(0,d.iv)("line-height:0;transition:opacity 0.3s ease-in-out;svg{width:20px;height:20px;color:",i.qo.icon.default,";}img{width:20px;height:20px;};label:addonIcon;"),addonTitle:(0,d.iv)(a.c.caption(),";white-space:nowrap;overflow:hidden;transition:opacity 0.3s ease-in-out;display:flex;align-items:center;;label:addonTitle;"